:root{color:#1f2937;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"SFMono-Regular", "Cascadia Mono", Consolas, monospace;--color-bg:#f6f8fb;--color-surface:#fff;--color-soft:#f8fafc;--color-border:#e5e7eb;--color-border-strong:#cbd5e1;--color-text:#334155;--color-heading:#0f172a;--color-muted:#64748b;--color-subtle:#94a3b8;--color-accent:#2563eb;background:#f6f8fb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}html{background:var(--color-bg);min-width:320px}body{background:var(--color-bg);min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,select{-webkit-tap-highlight-color:transparent}textarea,input{min-width:0}a{color:inherit}#root{min-height:100vh}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.workspace-shell{background:var(--color-bg);width:100%;min-height:100vh;color:var(--color-text);grid-template-rows:auto 1fr;grid-template-columns:280px minmax(0,1fr) 380px;display:grid;overflow-x:clip}.mobile-panel-switcher{display:none}.storage-recovery-banner{color:#78350f;background:#fffbeb;border-bottom:1px solid #f59e0b;grid-area:1/1/auto/-1;justify-content:space-between;align-items:center;gap:20px;padding:14px 20px;display:flex}.storage-recovery-banner__content{min-width:0}.storage-recovery-banner h2,.storage-recovery-banner p{margin:0}.storage-recovery-banner h2{color:#78350f;font-size:1rem}.storage-recovery-banner p{margin-top:4px;font-size:.84rem}.storage-recovery-banner__actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;display:flex}.storage-recovery-banner__actions button{padding:0 12px}.sidebar,.inspector{background:var(--color-surface);grid-row:2;min-width:0;height:100vh;position:sticky;top:0;overflow:auto}.sidebar{border-right:1px solid var(--color-border);flex-direction:column;grid-column:1;gap:20px;padding:20px;display:flex}.inspector{border-left:1px solid var(--color-border);grid-column:3;padding:16px}.mission-workspace{grid-area:2/2;align-content:start;gap:16px;min-width:0;padding:20px;display:grid}.brand-row{align-items:center;gap:12px;display:flex}.brand-mark{color:#fff;width:38px;height:38px;font-family:var(--font-mono);background:#111827;border-radius:8px;place-items:center;font-size:.78rem;font-weight:700;display:grid}.brand-row strong,.brand-row span,.mission-row span,.mission-row small,.section-label,.muted-copy{display:block}.brand-row strong{font-size:1rem}.brand-row span,.mission-row small,.muted-copy{color:var(--color-muted);font-size:.82rem}.section-label{color:var(--color-subtle);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.72rem;font-weight:700}.primary-action,.secondary-button,.subtle-button,.icon-button,.approval-toggle,.handoff-actions button,.finding-box button{cursor:pointer;min-height:36px;font:inherit;border:1px solid #0000;border-radius:8px;font-size:.88rem;font-weight:700;transition:background-color .14s,border-color .14s,color .14s,transform .14s}.primary-action{background:var(--color-accent);color:#fff;width:100%}.secondary-button,.handoff-actions button,.finding-box button{border-color:var(--color-border-strong);color:var(--color-heading);background:#fff}.subtle-button,.icon-button{background:var(--color-soft);border-color:var(--color-border);color:var(--color-heading)}button:hover:not(:disabled){transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #2563eb2e}.sidebar-section{gap:10px;display:grid}.sidebar-section--bottom{border-top:1px solid var(--color-border);margin-top:auto;padding-top:16px}.local-data-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.local-data-actions .subtle-button{min-width:0;padding:0 8px}.file-input{display:none}.guidance-toggle{align-items:center;gap:8px;display:flex}.guidance-toggle input{width:auto}.mission-list{gap:8px;display:grid}.mission-filter{margin-bottom:2px}.mission-row-card{border:1px solid var(--color-border);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr);gap:6px;padding:8px;display:grid}.mission-row-card--active{background:#eff6ff;border-color:#2563eb80}.mission-row{width:100%;min-height:76px;color:var(--color-text);text-align:left;background:0 0;border:0;border-radius:8px;padding:4px}.mission-row-card select{background:#fff;min-height:34px;font-size:.78rem}.mission-row span{color:var(--color-heading);margin-bottom:6px;font-weight:700}.topbar{border:1px solid var(--color-border);background:#fff;border-radius:10px;justify-content:space-between;align-items:flex-start;gap:20px;min-height:116px;padding:18px;display:flex}.topbar h1{max-width:880px;color:var(--color-heading);margin:0;font-size:clamp(1.6rem,2.6vw,2.45rem);line-height:1.05}.topbar p,.stage-summary p,.lane-card p,.evidence-item p,.approval-card p{color:var(--color-muted);margin:0}.topbar-actions{gap:10px;min-width:210px;display:grid}.readiness{color:#92400e;background:#fffbeb;border-radius:999px;justify-content:center;padding:8px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.readiness--ready{color:#047857;background:#ecfdf5}.context-strip{grid-template-columns:2fr 1fr 1fr 1fr;gap:10px;display:grid}.context-strip div,.stage-summary,.lane-card,.inspector-panel,.gate-banner{border:1px solid var(--color-border);background:#fff;border-radius:10px}.context-strip div{min-width:0;padding:12px}.context-strip span,.confidence-row span,.panel-title span{color:var(--color-subtle);font-family:var(--font-mono);text-transform:uppercase;font-size:.72rem}.context-strip strong{color:var(--color-heading);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;display:block;overflow:hidden}.health-panel{border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:160px minmax(0,1fr);gap:12px;padding:14px;display:grid}.health-score{color:#047857;text-align:center;background:#ecfdf5;border-radius:8px;place-content:center;display:grid}.health-score span,.health-panel p span,.health-items span{color:var(--color-subtle);font-family:var(--font-mono);text-transform:uppercase;font-size:.72rem;font-weight:800;display:block}.health-score strong{color:#065f46;font-size:1.65rem}.health-items{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.health-items article,.health-items button{background:var(--color-soft);min-width:0;color:inherit;font:inherit;text-align:left;border:0;border-radius:8px;padding:10px}.health-items strong,.health-panel p{color:var(--color-heading);overflow-wrap:anywhere;font-size:.86rem}.health-panel p{border-top:1px solid var(--color-border);grid-column:1/-1;margin:0;padding-top:10px;font-weight:700}.gate-banner{color:#92400e;background:#fffbeb;border-color:#d9770659;padding:12px 14px;font-weight:700}.stage-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.stage-tab{border:1px solid var(--color-border);min-height:76px;color:var(--color-text);text-align:left;background:#fff;border-radius:8px;padding:12px}.stage-tab--active{background:#eff6ff;border-color:#2563eb73}.stage-tab[aria-disabled=true]{color:var(--color-muted);background:#f8fafc}.stage-tab span{color:var(--color-heading);font-weight:800;display:block}.stage-tab small{color:var(--color-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;font-size:.78rem;display:-webkit-box;overflow:hidden}.stage-summary{grid-template-columns:minmax(0,1fr) minmax(220px,.36fr);gap:14px;padding:16px;display:grid}.stage-summary h2,.panel-title h2,.drawer-header h2{color:var(--color-heading);margin:0;font-size:1.1rem}.stage-summary strong{border-left:3px solid var(--color-accent);color:var(--color-heading);padding-left:12px;display:block}.lane-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.lane-card{gap:12px;min-width:0;padding:14px;display:grid}.lane-card__header,.confidence-row,.panel-title,.approval-card,.handoff-actions,.drawer-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.lane-card h3,.evidence-item strong,.approval-card strong{color:var(--color-heading);margin:0;font-size:.98rem}.lane-card select{width:112px}.confidence-row{border-top:1px solid var(--color-border);align-items:center;padding-top:4px}.confidence-row label{flex:1}.confidence-row input{padding:0}.status-help{border-left:3px solid var(--color-border-strong);padding-left:10px;font-size:.84rem}.lane-card textarea,.handoff-panel textarea,.composer-form textarea,.evidence-form textarea{resize:vertical;min-height:86px}.finding-box{grid-template-columns:minmax(0,1fr) 64px;gap:8px;display:grid}.finding-list{gap:6px;display:grid}.finding-list p{background:var(--color-soft);border-radius:8px;padding:8px;font-size:.84rem}.finding-list small{color:var(--color-subtle)}.draft-targets,.evidence-form-actions,.evidence-item__actions{flex-wrap:wrap;gap:8px;display:flex}.draft-targets .subtle-button,.evidence-item__actions .subtle-button{min-height:32px;padding:0 10px}.inspector{align-content:start;gap:14px;display:grid}.inspector-panel{gap:12px;min-width:0;padding:14px;display:grid}.panel-title{align-items:center}.panel-title span{background:var(--color-soft);border-radius:999px;padding:5px 8px}.evidence-form,.composer-form,.handoff-panel{gap:10px;display:grid}.scan-import-panel>small{color:var(--color-subtle);font-size:.74rem}.scan-import-panel textarea{resize:vertical;min-height:112px}.scan-import-help{border:1px solid var(--color-border);background:var(--color-soft);color:var(--color-muted);border-radius:8px;padding:9px 10px;font-size:.78rem}.scan-import-help summary{cursor:pointer;color:var(--color-heading);font-weight:800}.scan-import-help p{margin:8px 0 0}.scan-import-help code{overflow-wrap:anywhere;color:var(--color-heading);font-family:var(--font-mono)}.scan-import-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.scan-preview{background:#eff6ff;border:1px solid #2563eb3d;border-radius:8px;gap:7px;padding:10px;display:grid}.scan-preview strong{color:#1e3a8a;font-size:.84rem}.scan-preview p{color:var(--color-muted);margin:0;font-size:.78rem}.scan-preview .scan-preview__warning{color:#92400e;font-weight:700}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}label{color:var(--color-muted);gap:6px;font-size:.78rem;font-weight:800;display:grid}input,textarea,select{border:1px solid var(--color-border-strong);width:100%;color:var(--color-heading);font:inherit;background:#fff;border-radius:8px;padding:9px 10px;font-size:.88rem;line-height:1.35}textarea{font-family:var(--font-sans)}.evidence-toolbar,.evidence-list,.approval-list{gap:8px;display:grid}.evidence-toolbar{background:var(--color-soft);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));padding:10px}.evidence-toolbar p{color:var(--color-muted);grid-column:1/-1;margin:0;font-size:.8rem}.evidence-item,.approval-card{border:1px solid var(--color-border);background:var(--color-soft);border-radius:8px;min-width:0;padding:10px}.evidence-item{content-visibility:auto;contain-intrinsic-size:220px;gap:7px;display:grid}.resolution-note{border-left:3px solid #2563eb;padding-left:8px}.resolution-note--missing{border-left-color:#b91c1c;font-weight:700;color:#991b1b!important}.resolution-editor{background:#fff;border-radius:8px;gap:8px;padding:10px;display:grid}.resolution-editor label,.resolution-editor textarea{width:100%}.evidence-pagination{color:var(--color-muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;font-size:.8rem;display:flex}.topbar p,.stage-summary p,.lane-card p,.evidence-item p,.evidence-item strong,.approval-card p,.mission-row span,.muted-copy{overflow-wrap:anywhere}.evidence-item__meta{flex-wrap:wrap;gap:6px;display:flex}.evidence-item span{color:#1d4ed8;font-family:var(--font-mono);text-transform:uppercase;background:#dbeafe;border-radius:999px;padding:3px 7px;font-size:.7rem;display:inline-flex}.evidence-item .evidence-status--unlinked{color:#991b1b;background:#fee2e2}.evidence-item .evidence-status--linked{color:#92400e;background:#fffbeb}.evidence-item .evidence-status--in-handoff{color:#166534;background:#dcfce7}.subtle-button--danger{color:#991b1b}.evidence-item small,.evidence-item code{color:var(--color-subtle);margin-top:6px;font-size:.76rem;display:block}.evidence-item code{max-height:54px;color:var(--color-text);font-family:var(--font-mono);white-space:pre-wrap;background:#fff;border-radius:6px;padding:7px;overflow:auto}.approval-card{align-items:center}.approval-card small{color:var(--color-subtle)}.approval-toggle{border-color:var(--color-border-strong);min-width:92px;color:var(--color-heading);background:#fff}.approval-toggle--on{color:#fff;background:#047857}.handoff-panel label textarea{min-height:78px}.handoff-field>span{justify-content:space-between;align-items:center;gap:8px;display:flex}.handoff-field strong{color:#991b1b;font-family:var(--font-mono);text-transform:uppercase;background:#fee2e2;border-radius:999px;padding:3px 7px;font-size:.68rem}.handoff-field span strong{text-align:center;min-width:62px}.handoff-field strong.is-complete{color:#166534;background:#dcfce7}.handoff-format{border:1px solid var(--color-border);background:#fff;border-radius:8px;gap:6px;padding:10px;display:grid}.handoff-format>span{color:var(--color-heading);font-size:.84rem;font-weight:800}.handoff-format small{color:var(--color-muted);font-size:.76rem;line-height:1.45}.handoff-privacy{border:1px solid var(--color-border);background:var(--color-soft);border-radius:8px;gap:8px;padding:10px;display:grid}.handoff-privacy__toggle{color:var(--color-heading);align-items:center;gap:8px;font-size:.84rem;font-weight:800;display:flex}.handoff-privacy__toggle input{width:auto}.handoff-privacy>p,.handoff-privacy__result p,.handoff-privacy__blocked p{color:var(--color-muted);margin:0;font-size:.78rem;line-height:1.45}.handoff-privacy__result,.handoff-privacy__blocked{border-radius:8px;gap:6px;padding:9px;display:grid}.handoff-privacy__result{background:#eff6ff;border:1px solid #2563eb38}.handoff-privacy__blocked{background:#fef2f2;border:1px solid #dc26263d}.handoff-privacy__result strong,.handoff-privacy__blocked strong{color:var(--color-heading);font-size:.8rem}.handoff-privacy__result ul{color:var(--color-muted);font-family:var(--font-mono);gap:3px;margin:0;padding-left:18px;font-size:.72rem;display:grid}.blocker-list,.source-preview{background:#fffbeb;border:1px solid #d9770640;border-radius:8px;padding:10px}.blocker-list strong,.source-preview strong{color:var(--color-heading);margin-bottom:6px;font-size:.85rem;display:block}.blocker-list p,.source-preview p,.composer-form fieldset>p{color:var(--color-muted);margin:0;font-size:.82rem}.blocker-list p+p{margin-top:4px}.composer-readiness{border:1px solid var(--color-border);background:var(--color-soft);border-radius:8px;flex-wrap:wrap;gap:8px;padding:10px;display:flex}.composer-readiness span{color:#991b1b;font-family:var(--font-mono);text-transform:uppercase;background:#fee2e2;border-radius:999px;padding:4px 8px;font-size:.7rem;font-weight:800}.composer-readiness span.is-complete{color:#166534;background:#dcfce7}.composer-readiness p{color:var(--color-muted);flex-basis:100%;margin:0;font-size:.82rem}.handoff-preview{border:1px solid var(--color-border);background:var(--color-soft);border-radius:8px;min-width:0;padding:10px}.handoff-preview summary{cursor:pointer;color:var(--color-heading);font-size:.84rem;font-weight:800}.handoff-preview pre{max-height:320px;color:var(--color-text);font-family:var(--font-mono);white-space:pre-wrap;background:#fff;border-radius:8px;margin:10px 0 0;padding:10px;font-size:.76rem;line-height:1.45;overflow:auto}.handoff-actions button{flex:1}.trial-panel__intro,.trial-panel__stale{color:var(--color-muted);margin:0;font-size:.78rem;line-height:1.5}.trial-panel__workflow{border:1px solid var(--color-border);background:var(--color-soft);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:10px;display:grid}.trial-panel__workflow strong{color:var(--color-heading);font-size:.82rem}.trial-panel__workflow span{color:var(--color-heading);font-family:var(--font-mono);text-transform:uppercase;font-size:.74rem;font-weight:800}.trial-panel__workflow small{color:var(--color-muted);grid-column:1/-1}.trial-form{gap:10px;display:grid}.trial-consent{background:#eff6ff;border-radius:8px;align-items:flex-start;gap:8px;padding:10px;line-height:1.45;display:flex}.trial-consent input{width:auto;margin-top:2px}.trial-report-preview{background:#eff6ff;border:1px solid #2563eb38;border-radius:8px;gap:8px;min-width:0;padding:10px;display:grid}.trial-report-preview strong{color:#1e3a8a;font-size:.82rem}.trial-report-preview pre{max-height:320px;color:var(--color-text);font-family:var(--font-mono);white-space:pre-wrap;background:#fff;border-radius:8px;margin:0;padding:10px;font-size:.72rem;line-height:1.45;overflow:auto}.trial-actions{flex-wrap:wrap;gap:8px;display:flex}.trial-actions button{flex:130px}.trial-panel__stale{color:#92400e;background:#fffbeb;border-radius:8px;padding:9px 10px}.drawer-backdrop{z-index:20;background:#0f172a47;justify-content:end;display:grid;position:fixed;inset:0}.composer-drawer{border-left:1px solid var(--color-border);background:#fff;width:min(520px,100vw);min-height:100vh;padding:20px;overflow:auto;box-shadow:-24px 0 80px #0f172a2e}.drawer-header{align-items:center;margin-bottom:18px}.sr-status{z-index:30;color:#1e3a8a;background:#eff6ff;border:1px solid #2563eb38;border-radius:8px;max-width:min(420px,100vw - 24px);padding:10px 12px;font-size:.84rem;font-weight:700;position:fixed;bottom:18px;right:18px;box-shadow:0 18px 50px #0f172a24}.composer-form fieldset{border:1px solid var(--color-border);border-radius:8px;gap:10px;min-width:0;margin:0;padding:12px;display:grid}.composer-form legend{color:var(--color-heading);padding:0 6px;font-size:.88rem;font-weight:800}.empty-state{border:1px dashed var(--color-border-strong);color:var(--color-muted);text-align:center;border-radius:8px;margin:0;padding:14px}.empty-app{background:var(--color-bg);min-height:100vh;color:var(--color-heading);text-align:center;place-content:center;gap:12px;display:grid}@media (width<=1180px){.workspace-shell{grid-template-rows:auto auto auto;grid-template-columns:240px minmax(0,1fr)}.inspector{border-left:0;border-top:1px solid var(--color-border);grid-area:3/1/auto/-1;grid-template-columns:repeat(3,minmax(0,1fr));height:auto;position:static}}@media (width<=900px){.workspace-shell{grid-template-rows:auto auto;grid-template-columns:1fr}.workspace-shell--storage-warning{grid-template-rows:auto auto auto}.storage-recovery-banner{flex-direction:column;align-items:stretch;padding:12px}.storage-recovery-banner__actions{justify-content:flex-start}.mobile-panel-switcher{z-index:10;border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-area:1/1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 12px;display:grid;position:sticky;top:0}.workspace-shell--storage-warning .mobile-panel-switcher{grid-row:2}.mobile-panel-switcher button{border:1px solid var(--color-border);min-height:36px;color:var(--color-heading);font:inherit;background:#fff;border-radius:8px;font-size:.82rem;font-weight:800}.mobile-panel-switcher button[aria-pressed=true]{color:#1d4ed8;background:#eff6ff;border-color:#2563eb73}.sidebar,.inspector{height:auto;position:static}.sidebar{border-right:0;border-bottom:1px solid var(--color-border);grid-area:2/1}.mission-workspace,.inspector{grid-area:2/1}.workspace-shell--storage-warning .sidebar,.workspace-shell--storage-warning .mission-workspace,.workspace-shell--storage-warning .inspector{grid-row:3}.workspace-shell[data-mobile-panel=missions] .mission-workspace,.workspace-shell[data-mobile-panel=missions] .inspector,.workspace-shell[data-mobile-panel=work] .sidebar,.workspace-shell[data-mobile-panel=work] .inspector,.workspace-shell[data-mobile-panel=inspector] .sidebar,.workspace-shell[data-mobile-panel=inspector] .mission-workspace{display:none}.mission-list,.context-strip,.stage-tabs,.lane-grid,.inspector,.health-panel,.health-items,.evidence-toolbar{grid-template-columns:1fr}.topbar,.stage-summary{flex-direction:column;grid-template-columns:1fr}.topbar-actions{width:100%}.health-panel p{grid-column:auto}}@media (width<=560px){.mission-workspace,.sidebar,.inspector,.composer-drawer{padding:12px}.form-grid,.finding-box,.lane-card__header,.approval-card,.handoff-actions,.trial-actions{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.storage-recovery-banner__actions{display:grid}}
