@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap";:root{color:#302d2a;font-synthesis:none;text-rendering:optimizelegibility;--ink:#302d2a;--muted:#706b64;--paper:#fffdf9;--line:#ded7cc;--sage:#637362;--rose:#a65f5a;background:#f4f0e9;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #caa59d}h1,h2,h3,h4,p{margin-top:0}h1,h2{color:var(--ink);font-family:Fraunces,serif}.app-shell{min-height:100vh}.site-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f4f0e9e0;justify-content:space-between;align-items:center;height:72px;padding:0 max(24px,50vw - 590px);display:flex}.site-header p{color:var(--muted);margin:0;font-size:13px}.site-header nav{align-items:center;gap:6px;display:flex}.site-header nav button{color:var(--muted);background:0 0;border:0;border-radius:999px;padding:8px 12px}.site-header nav button.active{background:var(--paper);color:var(--ink);box-shadow:0 1px 5px #32281e14}.wordmark{color:var(--ink);background:0 0;border:0;padding:0;font:600 25px Fraunces,serif}.wordmark span{color:var(--rose)}.workspace{width:min(1180px,100% - 40px);margin:0 auto}.dashboard{padding:64px 0 80px}.hero-copy{justify-content:space-between;align-items:end;gap:24px;margin-bottom:42px;display:flex}.hero-copy h1,.review h1{letter-spacing:-.035em;margin:8px 0 18px;font-size:clamp(42px,6vw,72px);line-height:.98}.lede{color:var(--muted);max-width:640px;font-size:18px;line-height:1.55}.vendors-page{padding:58px 0 80px}.page-intro{margin-bottom:34px}.page-intro h1{margin:7px 0 14px;font-size:clamp(40px,5vw,62px)}.eyebrow{color:var(--rose);text-transform:uppercase;letter-spacing:.14em;margin-bottom:7px;font-size:11px;font-weight:600}.meta{color:var(--muted);font-size:13px}.primary,.quiet{border:1px solid var(--ink);color:var(--ink);background:0 0;border-radius:999px;padding:11px 18px}.primary{background:var(--ink);color:#fff}.primary:disabled{opacity:.5;cursor:wait}.quiet{border-color:var(--line)}.panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 9px 30px #3c32280a}.section-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:22px;display:flex}.section-heading h2{margin:0;font-size:27px;line-height:1.1}.inbox{margin-bottom:20px}.inbox-row{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;justify-content:space-between;width:100%;padding:14px 0;display:flex}.inbox-row span:first-child{gap:3px;display:grid}.inbox-row small{color:var(--muted);text-transform:capitalize}.status{color:var(--rose);align-self:center}.status.failed{color:#9a3d35}.dashboard-grid{grid-template-columns:1.25fr .75fr;align-items:start;gap:20px;display:grid}.vendors{grid-column:1/-1}.task-row,.update-row,.dated-row,.vendor-card{border-top:1px solid var(--line);padding:18px 0}.task-row{justify-content:space-between;gap:18px;display:flex}.task-row h3,.update-row h3,.dated-row h3,.vendor-card h3{margin:0 0 7px;font-size:16px}.task-row p:not(.eyebrow),.dated-row p{color:var(--muted);margin-bottom:8px;font-size:14px}.task-row time{color:var(--rose);font-size:13px;display:block}.complete{border:1px solid var(--line);width:34px;height:34px;color:var(--sage);background:0 0;border-radius:50%;flex:0 0 34px}.complete:hover{background:#edf1ea}.evidence{color:var(--sage);text-underline-offset:3px;background:0 0;border:0;padding:5px 0 0;font-size:12px;text-decoration:underline}.dated-row{grid-template-columns:115px 1fr;gap:15px;display:grid}.dated-row time{color:var(--rose);font-size:12px}.vendor-card{grid-template-columns:220px 1fr;gap:28px;display:grid}.vendor-card dl{grid-template-columns:repeat(2,1fr);gap:16px;margin:0;display:grid}.vendor-card dl div{background:#f6f2ec;border-radius:10px;padding:12px}.vendor-card dt{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:10px}.vendor-card dd{margin:5px 0 0;font-size:13px;line-height:1.45}.empty{color:var(--muted);line-height:1.5}.form-panel{max-width:850px;margin-top:48px;padding:34px}.form-panel form{gap:20px;margin-top:30px;display:grid}.form-panel label,.review-card label{gap:8px;font-size:13px;font-weight:600;display:grid}.form-panel label span{color:var(--muted);font-weight:400}.field-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:9px;padding:11px 12px}textarea{resize:vertical;line-height:1.55}.form-actions{justify-content:end;gap:10px;display:flex}.review{padding:55px 0 120px}.review-overview{grid-template-columns:1.2fr .8fr;align-items:start;gap:18px;margin:30px 0;display:grid}.review-overview-section{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:24px}.review-overview-section.compact{grid-column:1/-1}.review-overview-section h2{margin:0 0 16px;font-size:25px}.review-vendors{color:var(--ink);background:#eee9e1;border-radius:999px;margin:-8px 0 18px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-block}.learned-list{margin:0;padding-left:20px;line-height:1.55}.learned-list li+li{margin-top:9px}.overview-task-list{gap:12px;display:grid}.overview-task{border-top:1px solid var(--line);padding-top:14px}.overview-task:first-child{border-top:0;padding-top:0}.overview-task h3{margin:0 0 6px;font-size:16px}.overview-task p{color:var(--muted);font-size:13px}.overview-task time{color:var(--rose);font-size:12px}.review-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0 40px;padding:18px 0}.review-details>summary{cursor:pointer;color:var(--sage);font-weight:600}.review-details>p{color:var(--muted);margin:12px 0 0;font-size:13px}.review-details .review-group{margin:28px 0}.review-group{margin:34px 0}.review-group>h2{font-size:25px}.review-group>h2 span{color:var(--muted);font:400 13px DM Sans,sans-serif}.review-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.review-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:19px;transition:opacity .2s}.review-card.excluded{opacity:.42}.review-card-heading{justify-content:space-between;gap:12px;display:flex}.review-card h3{font-size:15px;line-height:1.4}.include{white-space:nowrap;color:var(--muted);grid-auto-flow:column;align-items:center;font-weight:400!important;display:flex!important}.include input{width:auto}.review-card blockquote{border-left:2px solid var(--line);color:var(--muted);margin:12px 0 0;padding-left:12px;font-size:13px;line-height:1.5}.sticky-actions{background:var(--paper);border:1px solid var(--line);z-index:5;border-radius:999px;justify-content:space-between;align-items:center;width:min(620px,100% - 40px);padding:10px 10px 10px 20px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 15px 50px #32281e26}.error-banner{color:#fff;background:#762f2b;justify-content:space-between;padding:12px max(24px,50vw - 590px);display:flex}.error-banner button{color:#fff;background:0 0;border:0;text-decoration:underline}.loading{min-height:60vh;color:var(--muted);place-items:center;display:grid}.modal-backdrop{z-index:10;background:#231f1b8c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.source-modal{background:var(--paper);border-radius:18px;width:min(760px,100%);max-height:88vh;padding:28px;overflow:auto}.source-modal pre{white-space:pre-wrap;background:#f6f2ec;border-radius:10px;padding:18px;font:13px/1.6 DM Sans,sans-serif}.run-history{border-top:1px solid var(--line);margin:20px 0;padding-top:15px}.run-history p{color:var(--muted);font-size:12px}@media (width<=760px){.site-header p{display:none}.site-header{padding-inline:16px}.workspace{width:min(100% - 24px,1180px)}.dashboard{padding-top:36px}.hero-copy{flex-direction:column;align-items:start}.dashboard-grid,.review-grid,.review-overview,.field-row{grid-template-columns:1fr}.review-overview-section.compact,.vendors{grid-column:auto}.vendor-card,.vendor-card dl{grid-template-columns:1fr}.dated-row{grid-template-columns:95px 1fr}.form-panel{padding:22px}.review{padding-top:35px}.review>.section-heading{flex-direction:column-reverse}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.sticky-actions{width:min(700px,100% - 40px)}.sticky-actions>div{gap:8px;display:flex}.task-meta{align-items:baseline;gap:9px;display:flex}.urgency{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;background:#eee9e1;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:600}.urgency.overdue{color:#8c3831;background:#f4deda}.urgency.today{color:#76521b;background:#f3e4c8}.urgency.soon{color:#4c624b;background:#e5ece1}.more-items{border-top:1px solid var(--line);color:var(--muted);margin:16px 0 0;padding-top:15px;font-size:12px}.text-button{color:var(--sage);text-underline-offset:3px;background:0 0;border:0;padding:5px 0;font-size:12px;text-decoration:underline}.panel-list-action{border-top:1px solid var(--line);text-align:center;padding-top:15px}.update-group{border-top:1px solid var(--line);padding:18px 0}.update-group>button{width:100%;color:var(--sage);text-align:left;background:0 0;border:0;justify-content:space-between;gap:16px;padding:0;display:flex}.update-group>button span:first-child{color:var(--ink);gap:3px;display:grid}.update-group small{color:var(--muted)}.update-group ul{color:var(--muted);margin:12px 0 0;padding-left:20px;font-size:14px;line-height:1.5}.vendor-headline{color:#4c624b;background:#e5ece1;border-radius:999px;margin:2px 0 0;padding:5px 9px;font-size:12px;font-weight:600;display:inline-block}.proposed-timing{color:var(--rose);margin:12px 0 0;font-size:12px}.timing-editor{border:1px solid var(--line);border-radius:10px;gap:12px;margin:16px 0 0;padding:14px;display:grid}.timing-editor legend{color:var(--muted);padding:0 5px;font-size:12px;font-weight:600}.timing-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.timing-warning,.validation-message{color:#8c3831;font-size:12px}.validation-message{align-self:center;margin-right:4px}.site-header .sign-out{margin-left:auto}.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{width:min(100%,460px);padding:36px}.auth-panel form{gap:18px;display:grid}.auth-panel label{gap:8px;font-weight:600;display:grid}.form-error{color:#8b302b}
