:root{color:#13243a;font-synthesis:none;text-rendering:optimizelegibility;--navy:#0d2136;--navy-soft:#17344e;--cream:#f8f5ed;--paper:#fff;--ink:#13243a;--muted:#66727d;--line:#d8ddd8;--gold:#c99438;--gold-pale:#f4e7c9;--green:#1e7155;--red:#a4493d;background:#edf0eb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,.link-button{border:1px solid var(--line);cursor:pointer;border-radius:8px;min-height:44px;padding:.72rem 1rem;font-weight:700}button:focus-visible,input:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #69aee3}.app-shell{grid-template-columns:280px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--navy);color:#f7f4ea;flex-direction:column;gap:2.5rem;height:100vh;padding:2.1rem 1.8rem;display:flex;position:sticky;top:0}.sidebar h1{margin:.45rem 0 .8rem;font-family:Georgia,serif;font-size:1.75rem;line-height:1.05}.app-version{color:#d9e1e5;letter-spacing:.05em;border:1px solid #496176;border-radius:999px;width:fit-content;margin:-.35rem 0 .8rem;padding:.2rem .45rem;font-size:.68rem;font-weight:800}.sidebar-copy{color:#b9c5cc;font-size:.9rem;line-height:1.55}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--gold);margin:0;font-size:.7rem;font-weight:800}.sidebar nav{gap:.4rem;display:grid}.sidebar nav a{color:#aebcc6;border-left:2px solid #0000;padding:.8rem .9rem;text-decoration:none}.sidebar nav a.active{color:#fff;border-left-color:var(--gold);background:#17344e}.boundary-note{border-top:1px solid #355067;gap:.7rem;margin-top:auto;padding-top:1.2rem;display:flex}.boundary-note div{gap:.25rem;display:grid}.boundary-note small{color:#aebcc6;line-height:1.4}.status-dot{background:#65c79e;border-radius:50%;width:9px;height:9px;margin-top:.3rem;box-shadow:0 0 0 4px #214c46}.session-bar{color:#315c4b;background:#e5f2ec;border-bottom:1px solid #b8d9ca;justify-content:flex-end;align-items:center;gap:1rem;min-height:48px;padding:.55rem 1rem;font-size:.8rem;display:flex}.session-bar button{min-height:34px;color:var(--navy);background:#fff;padding:.35rem .7rem}.auth-shell{background:radial-gradient(circle at 0 0,#f8f5ed,#dfe7e2);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(100%,580px);padding:clamp(1.5rem,5vw,3rem);box-shadow:0 24px 70px #0d21361f}.auth-version{color:var(--muted);letter-spacing:.05em;margin:.45rem 0 0;font-size:.72rem;font-weight:800}.auth-card h1{color:var(--navy);margin:.55rem 0 .9rem;font-family:Georgia,serif;font-size:clamp(2rem,6vw,3.2rem);line-height:1.02}.auth-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.uid-block{border:1px solid var(--line);overflow-wrap:anywhere;background:#f2f4f2;border-radius:8px;gap:.35rem;margin:1rem 0;padding:.85rem;display:grid}.uid-block small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.auth-instruction code{overflow-wrap:anywhere;color:var(--navy);font-weight:700}.auth-actions{flex-wrap:wrap;gap:.65rem;margin-top:1.2rem;display:flex}.auth-error{border-left:3px solid var(--red);background:#fff5f2;padding:.8rem;color:var(--red)!important}main{min-width:0}.workspace{max-width:1380px;margin:auto;padding:2.6rem clamp(1.2rem,4vw,4rem) 5rem}.page-header{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:2rem;display:flex}.page-header h2{color:var(--navy);margin:.45rem 0 .7rem;font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.3rem);line-height:1.03}.page-header p:not(.eyebrow){color:var(--muted);max-width:690px;margin:0}.phase-chip{background:var(--gold-pale);color:#72531f;white-space:nowrap;border:1px solid #dfc98e;border-radius:999px;padding:.55rem .8rem;font-size:.78rem;font-weight:800}.workspace-grid{grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:1.5rem;display:grid}.intake-card,.review-rail{background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 45px #0d213612}.intake-card section{border-bottom:1px solid var(--line);padding:1.7rem}.section-heading{gap:.9rem;margin-bottom:1.25rem;display:flex}.section-heading>span,.panel-number{color:var(--gold);font-family:Georgia,serif;font-weight:700}.section-heading h3,.review-rail h3,.preview-panels h3{color:var(--navy);margin:0 0 .25rem}.section-heading p{color:var(--muted);margin:0;font-size:.9rem}.field-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}label{color:#31475a;gap:.45rem;font-size:.82rem;font-weight:800;display:grid}input{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #b8c2c7;border-radius:7px;padding:.65rem .75rem}em{color:var(--red);font-size:.78rem;font-style:normal}.source-banner{background:#eef7f3;border:1px solid #b8d9ca;border-radius:9px;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:1rem;display:flex}.source-banner p{color:#476759;margin:.2rem 0 0;font-size:.85rem}.secondary-button{color:var(--navy);background:#fff}.primary-button,.form-actions>button[type=submit]{background:var(--navy);color:#fff;border-color:var(--navy)}.coverage-list{gap:.45rem;margin-top:.8rem;display:grid}.coverage-list>div{background:#f7f8f6;border-radius:7px;grid-template-columns:54px 80px 1fr;align-items:center;gap:.8rem;padding:.65rem .8rem;display:grid}.coverage-list span{text-transform:uppercase;font-size:.72rem;font-weight:900}.coverage-list .complete{color:var(--green)}.coverage-list .partial{color:var(--red)}.coverage-list small{color:var(--muted)}.module-grid{grid-template-columns:repeat(2,1fr);gap:.65rem;display:grid}.check-card{border:1px solid var(--line);border-radius:8px;align-items:center;gap:.65rem;min-height:48px;padding:.65rem .8rem;display:flex}.check-card input{width:17px;height:17px;min-height:auto}.form-actions{justify-content:flex-end;align-items:center;gap:.65rem;padding:1.25rem 1.7rem;display:flex}.form-actions>div{gap:.2rem;margin-right:auto;font-size:.78rem;display:grid}.form-actions small{color:var(--muted)}.review-rail{padding:1.4rem;position:sticky;top:1.5rem}.review-rail h3{margin-top:.45rem;font-family:Georgia,serif;font-size:1.5rem}.review-rail dl{margin:1.3rem 0}.review-rail dl div{border-bottom:1px solid var(--line);padding:.75rem 0}.review-rail dt{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.review-rail dd{margin:.2rem 0 0;font-weight:800}.warning-note{border-left:3px solid var(--gold);background:#fff7e8;padding:.9rem}.warning-note p{color:#695936;margin:.35rem 0 0;font-size:.83rem;line-height:1.5}.link-button{align-items:center;text-decoration:none;display:inline-flex}.preview-hero{background:var(--navy);color:#fff;border-radius:16px;justify-content:space-between;align-items:end;gap:2rem;padding:clamp(1.6rem,4vw,3rem);display:flex}.preview-hero h3{margin:.5rem 0;font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.5rem)}.preview-hero p:not(.eyebrow){color:#bdcbd4;max-width:620px}.score-card{background:#17344e;border:1px solid #39546a;border-radius:10px;gap:.35rem;min-width:210px;padding:1.2rem;display:grid}.score-card strong{font-family:Georgia,serif;font-size:1.8rem}.score-card span,.score-card small{color:#bdcbd4}.preview-panels{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem;display:grid}.preview-panels article{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:165px;padding:1.35rem}.preview-panels p{color:var(--muted);line-height:1.5}.preview-panels .partial-panel{background:#fff9f7;border-color:#ddb5aa}@media (width<=980px){.app-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;height:auto;padding:1.2rem;position:static}.sidebar-copy,.boundary-note{display:none}.sidebar nav{margin-left:auto;display:flex}.workspace-grid{grid-template-columns:1fr}.review-rail{position:static}}@media (width<=680px){.sidebar{flex-direction:column;align-items:flex-start;gap:.8rem}.sidebar nav{width:100%;margin-left:0}.workspace{padding:1.5rem 1rem 3rem}.page-header,.source-banner,.preview-hero{flex-direction:column}.field-grid,.module-grid,.preview-panels{grid-template-columns:1fr}.form-actions{flex-direction:column;align-items:stretch}.form-actions>div{margin-right:0}.coverage-list>div{grid-template-columns:50px 70px 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
