@font-face{font-family:'Work Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/work-sans.woff2') format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 600;font-display:swap;src:url('../fonts/jetbrains-mono.woff2') format('woff2')}

:root{
 color-scheme:light;
 --ground:#fffef2;--surface:#fffef2;--surface-2:#f3f2e7;--surface-3:#e9e8dc;
 --line:rgba(209,208,198,.55);--line-strong:#85847b;--text:#191918;--muted:#66665f;--dim:#66665f;
 --accent:#fcaa2d;--accent-ink:#191918;--accent-hover:#ed9a1e;--focus:#805000;
 --done:#28644f;--danger:#a3362c;--warning:#805000;--blue:#315f78;
 --shadow:none;--radius:0;
 --sans:'Work Sans',ui-sans-serif,system-ui,sans-serif;--mono:'JetBrains Mono',ui-monospace,monospace;
}

*{box-sizing:border-box}
[hidden]{display:none!important}
html{min-height:100%;background:var(--ground)}
body{min-height:100vh;margin:0;background:var(--ground);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
button{color:inherit}
a{color:inherit}
img{max-width:100%}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(1.8rem,4vw,3.4rem);line-height:1.02;letter-spacing:-.045em;margin-bottom:1rem}
h2{font-size:clamp(1.35rem,2vw,2rem);line-height:1.1;letter-spacing:-.035em;margin-bottom:.6rem}
h3{font-size:1rem;line-height:1.3;margin-bottom:.35rem}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--accent);color:var(--accent-ink);padding:.8rem 1rem;font-weight:700}
.skip-link:focus{top:1rem}
:focus-visible{outline:none}

.eyebrow,.field-label,.status-key,.mono-label{font:600 .68rem/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lede{color:var(--muted);line-height:1.6;max-width:57ch}
.muted{color:var(--muted)}
.small{font-size:.82rem}
.mono{font-family:var(--mono)}

.login-view{min-height:100vh;display:grid;place-items:center;padding:clamp(1rem,4vw,4rem);position:relative;overflow:hidden}
.login-view::before{content:'';position:absolute;width:52vw;height:52vw;max-width:740px;max-height:740px;border:1px solid var(--line);transform:rotate(45deg);right:-18vw;top:-28vw}
.login-mark{position:fixed;left:clamp(1rem,4vw,3rem);top:clamp(1rem,4vw,3rem);font:600 .75rem var(--mono);letter-spacing:.08em;color:var(--warning);border:1px solid var(--line);padding:.7rem}
.login-card{width:min(100%,450px);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(1.5rem,5vw,3rem);position:relative}
.login-card input{margin-bottom:1rem}
.offline-resume{margin:.9rem 0 0;text-align:center}

input,select,textarea{width:100%;background:var(--ground);border:1px solid var(--line);border-radius:0;color:var(--text);min-height:44px;padding:.7rem .8rem}
.location-editor input:not([type="file"]),.location-editor select{height:44px;box-sizing:border-box}
textarea{resize:vertical;line-height:1.5}
input::placeholder,textarea::placeholder{color:var(--dim)}
.field-label{display:flex;justify-content:space-between;margin:.85rem 0 .4rem}
.field-label span{font-weight:400;letter-spacing:.04em;text-transform:none}
.button,.icon-button,.text-button,.sync-pill,.back-link,.nav-tab,.chip{appearance:none;border:0;cursor:pointer}
.button{min-height:44px;padding:.72rem 1rem;background:var(--surface-2);border:1px solid var(--line);font-weight:600}
.button:hover{border-color:var(--line-strong)}
.button.primary{background:var(--accent);border-color:var(--warning);color:var(--accent-ink)}
.button.ghost{background:transparent;color:var(--muted)}
.button.danger{border-color:var(--danger);background:transparent;color:var(--danger)}
.button:disabled{opacity:.45;cursor:not-allowed}
.button.wide{width:100%;margin-top:.5rem}
.button.small-button{min-height:36px;padding:.45rem .65rem;font-size:.8rem}
.icon-button{width:42px;height:42px;background:transparent;border:1px solid var(--line);display:grid;place-items:center;font-size:1.15rem}
.text-button{background:none;padding:0;color:var(--warning);text-decoration:underline;text-underline-offset:3px}
.form-message{font-size:.85rem;line-height:1.45;margin:.6rem 0}
.error{color:var(--danger)}.success{color:var(--done)}.warning{color:var(--warning)}

.topbar{height:72px;position:sticky;top:0;z-index:30;background:var(--ground);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,3vw,2rem);gap:1rem}
.wordmark{display:flex;align-items:center;gap:.75rem;text-decoration:none}
.wordmark-icon{font:600 .68rem var(--mono);letter-spacing:.08em;color:var(--warning);border:1px solid var(--line);padding:.58rem}
.wordmark strong,.wordmark small{display:block}.wordmark strong{font-size:.95rem}.wordmark small{font:400 .62rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.15rem}
.topbar-actions,.user-menu{display:flex;align-items:center;gap:.7rem}.user-menu{position:relative;color:var(--muted);font-size:.84rem}
.global-work-list{min-height:44px;display:inline-flex;align-items:center;padding:.5rem .65rem;color:var(--text);font-size:.84rem;text-underline-offset:4px}
.user-menu-trigger{min-height:44px;display:flex;align-items:center;gap:.65rem;padding:.35rem .55rem;background:var(--surface);border:1px solid var(--line);color:var(--text);text-align:left;cursor:pointer}.user-menu-trigger strong,.user-menu-trigger small{display:block}.user-menu-trigger small{max-width:180px;margin-top:.1rem;color:var(--muted);font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-trigger[aria-expanded='true']{border-color:var(--line-strong);background:var(--surface-2)}
.user-menu-popover{position:absolute;right:0;top:calc(100% + .45rem);z-index:60;width:min(320px,calc(100vw - 2rem));padding:1rem;background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 12px 30px rgba(25,25,24,.14)}.user-menu-popover>strong,.user-menu-popover>span{display:block;overflow-wrap:anywhere}.user-menu-popover>span{margin-top:.25rem;color:var(--muted);font-size:.78rem}.user-menu-popover .button{margin-top:1rem}
.sync-pill{background:var(--surface);border:1px solid var(--line);padding:.55rem .7rem;display:flex;align-items:center;gap:.5rem;font:500 .67rem var(--mono);letter-spacing:.05em;text-transform:uppercase}
.sync-dot{width:7px;height:7px;border-radius:50%;background:var(--muted)}
.sync-pill[data-state='pending'] .sync-dot,.sync-pill[data-state='uploading'] .sync-dot{background:var(--accent);box-shadow:0 0 0 4px rgba(240,166,60,.12)}
.sync-pill[data-state='done'] .sync-dot{background:var(--done)}
.sync-pill[data-state='failed'] .sync-dot,.sync-pill[data-state='conflict'] .sync-dot,.sync-pill[data-state='offline'] .sync-dot{background:var(--danger)}

.workspace-frame{min-height:calc(100vh - 72px);display:grid;grid-template-columns:230px minmax(0,1fr)}
.workspace-frame:has(.case-sidebar[hidden]){grid-template-columns:1fr}
.case-sidebar{position:sticky;top:72px;height:calc(100vh - 72px);border-right:1px solid var(--line);padding:1.2rem 1rem;display:flex;flex-direction:column;background:var(--ground)}
.back-link{background:none;color:var(--muted);font-size:.82rem;text-align:left;padding:.5rem 0}
.case-identity{padding:1.5rem 0 1rem;border-bottom:1px solid var(--line)}
.case-identity strong,.case-identity span{display:block}.case-identity strong{font-family:var(--mono);font-size:.87rem;color:var(--warning)}.case-identity span{font-size:.82rem;color:var(--muted);line-height:1.45;margin-top:.45rem;overflow-wrap:anywhere}
.case-nav{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem}
.case-nav-section{display:flex;flex-direction:column;gap:.1rem;padding-bottom:.8rem;margin-bottom:.55rem;border-bottom:1px solid var(--line)}.case-nav-section:last-child{border-bottom:0;margin-bottom:0}.case-nav-heading{margin:.2rem .72rem .35rem;color:var(--dim);font:500 .62rem var(--mono);letter-spacing:.09em;text-transform:uppercase}
.case-nav a,.case-nav button{display:flex;align-items:center;width:100%;min-height:42px;padding:.6rem .72rem;text-align:left;text-decoration:none;color:var(--muted);background:transparent;border:1px solid transparent;font-size:.86rem;cursor:pointer}
.case-nav a:hover,.case-nav button:hover{background:var(--surface-2);color:var(--text)}.case-nav a[aria-current='page']{background:var(--surface-2);border-color:var(--line);color:var(--text)}
.case-sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:1rem}.case-sidebar-foot strong{display:block;font-size:.84rem;margin-top:.3rem;text-transform:capitalize}
#main-content{min-width:0;padding:clamp(1.25rem,3.5vw,3.5rem);max-width:1500px;width:100%;margin:0 auto}

.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:2rem}
.page-head h1{margin-bottom:.4rem}.page-head p{margin-bottom:0}.page-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.recovery-page{min-height:100vh;display:grid;place-items:center;padding:1rem}.recovery-card{width:min(100%,680px);padding:clamp(1.25rem,5vw,3rem);background:var(--surface);border:1px solid var(--line)}.recovery-card .notice{margin:1.5rem 0}.recovery-card>.button{margin-bottom:1rem}
.summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);margin-bottom:1.4rem}
.summary-cell{padding:1rem;border-right:1px solid var(--line)}.summary-cell:last-child{border:0}.summary-cell b{display:block;font:500 1.5rem var(--mono)}.summary-cell span{display:block;color:var(--muted);font:500 .62rem var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-top:.3rem}
.toolbar{display:flex;gap:.7rem;align-items:flex-end;margin-bottom:1rem}.toolbar .search-field{flex:1}.toolbar label{margin-top:0}.toolbar select{min-width:160px}
.panel{background:var(--surface);border:1px solid var(--line);padding:clamp(1rem,2vw,1.5rem)}
.panel+.panel{margin-top:1rem}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel-head p{margin:0}
.empty-state{border:1px dashed var(--line);padding:clamp(2rem,6vw,5rem);text-align:center;color:var(--muted)}.empty-state h2{color:var(--text)}

.case-table{width:100%;border-collapse:collapse}.case-table th{text-align:left;color:var(--muted);font:500 .63rem var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:.65rem .8rem;border-bottom:1px solid var(--line)}
.case-table td{padding:.9rem .8rem;border-bottom:1px solid var(--line);vertical-align:middle;font-size:.87rem}.case-table tbody tr{cursor:pointer}.case-table tbody tr:hover{background:var(--surface-2)}
.case-table .primary-cell strong,.case-table .primary-cell span{display:block}.case-table .primary-cell strong{font-family:var(--mono);color:var(--warning)}.case-table .primary-cell span{color:var(--muted);margin-top:.25rem;line-height:1.4;max-width:42ch}
.status-badge,.source-badge,.state-badge{display:inline-flex;align-items:center;gap:.35rem;min-height:24px;padding:.25rem .45rem;border:1px solid var(--line);font:500 .62rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.status-badge.done,.state-badge.succeeded,.state-badge.ready{border-color:rgba(79,182,160,.45);color:var(--done)}
.status-badge.pending,.state-badge.pending,.state-badge.running,.state-badge.rendering{border-color:rgba(240,166,60,.45);color:var(--warning)}
.status-badge.failed,.state-badge.failed,.state-badge.conflict{border-color:rgba(226,114,107,.45);color:var(--danger)}
.source-badge{color:var(--blue);border-color:rgba(120,169,230,.35)}

.content-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:1rem;align-items:start}
.stack{display:flex;flex-direction:column;gap:1rem}.stack>.panel{margin-top:0}
.notice{display:flex;gap:.8rem;align-items:flex-start;padding:.9rem 1rem;border:1px solid var(--line);background:var(--surface-2);font-size:.85rem;line-height:1.45}.notice strong{display:block;margin-bottom:.2rem}.notice.warning{border-color:rgba(240,166,60,.45);color:var(--text)}.notice.error{border-color:rgba(226,114,107,.45);color:var(--text)}
.legacy-help{margin:.75rem 0 1.25rem;color:var(--muted);font-size:.8rem}.legacy-help summary{cursor:pointer;color:var(--blue)}.legacy-help p{max-width:80ch}.legacy-help code{overflow-wrap:anywhere}
.warning-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.warning-list li{font-size:.83rem;line-height:1.45;padding:.7rem;border-left:2px solid var(--accent);background:rgba(240,166,60,.06)}
.warning-list a{color:var(--warning)}

.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem}.field-row{min-width:0}.field-row.full{grid-column:1/-1}.field-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:25px}.field-meta .field-label{margin:0}.field-source{display:flex;align-items:center;gap:.4rem}.source-link{font-size:.7rem;color:var(--blue)}
.alternative{padding:.65rem;margin-top:.45rem;border:1px solid rgba(240,166,60,.35);background:rgba(240,166,60,.05);font-size:.78rem}.alternative-actions{display:flex;gap:.5rem;margin-top:.5rem}
.drop-zone{display:grid;place-items:center;text-align:center;min-height:150px;border:1px dashed var(--line-strong);padding:1.2rem;cursor:pointer}.drop-zone:hover,.drop-zone.dragging{background:var(--surface-2);border-color:var(--warning)}.drop-zone input{position:absolute;width:1px;height:1px;opacity:0}.drop-zone strong{display:block}.drop-zone span{display:block;color:var(--muted);font-size:.82rem;margin-top:.3rem}
.document-list{display:flex;flex-direction:column;gap:.55rem;margin-top:1rem}.document-row{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;padding:.7rem;background:var(--surface-2);border:1px solid var(--line)}.document-icon{font:500 .65rem var(--mono);color:var(--warning);border:1px solid var(--line);padding:.4rem}.document-row strong,.document-row small{display:block}.document-row small{color:var(--muted);margin-top:.2rem}

.location-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.location-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:.8rem;align-items:center;text-align:left;width:100%;background:var(--surface);border:1px solid var(--line);padding:.75rem;cursor:pointer}.location-card:hover{border-color:var(--line-strong)}.location-thumb{width:72px;aspect-ratio:4/3;background:var(--surface-2);display:grid;place-items:center;color:var(--dim);overflow:hidden}.location-thumb img{width:100%;height:100%;object-fit:cover}.location-card strong,.location-card small{display:block}.location-card small{color:var(--muted);margin-top:.2rem}.location-count{font:500 .75rem var(--mono);color:var(--warning);text-align:right}
.archived-locations{margin-top:1rem;color:var(--muted);font-size:.8rem}.archived-locations summary{cursor:pointer}.archived-list{display:flex;flex-direction:column;gap:.45rem;margin-top:.65rem}.archived-list>div{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem;border:1px solid var(--line);background:var(--surface)}.archived-list strong,.archived-list small{display:block}.archived-list small{margin-top:.15rem;color:var(--dim)}
.location-editor{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,.72fr);grid-template-areas:'content rail';gap:1rem;align-items:start}.location-rail{grid-area:rail;position:sticky;top:88px;min-width:0}.location-content{grid-area:content;min-width:0}.location-rail button{width:100%;text-align:left}.observation-list{display:flex;flex-direction:column;gap:.75rem}.observation-card{border:1px solid var(--line);background:var(--surface);padding:1rem}.observation-card[aria-current='true']{border-color:var(--warning)}
.observation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.observation-head p{margin:.25rem 0 0;color:var(--muted);font-size:.82rem}.observation-actions{display:flex;gap:.4rem}
.defect-chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{min-height:36px;padding:.45rem .65rem;background:transparent;border:1px solid var(--line);font:500 .7rem var(--mono);color:var(--muted)}.chip[aria-pressed='true']{border-color:var(--warning);color:var(--warning);background:rgba(240,166,60,.08)}
.capture-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.8rem}.file-trigger input{position:absolute;opacity:0;width:1px;height:1px}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:.8rem}.photo-card{margin:0;border:1px solid var(--line);background:var(--ground);min-width:0}.photo-frame{aspect-ratio:4/3;display:grid;place-items:center;background:var(--surface-2);overflow:hidden}.photo-frame img{width:100%;height:100%;object-fit:contain}.photo-card figcaption{padding:.6rem}.photo-label{display:flex;justify-content:space-between;gap:.5rem;font-size:.72rem;color:var(--muted);margin-bottom:.45rem}.photo-controls{display:flex;gap:.35rem;margin-top:.45rem}.photo-controls button{flex:1}
.recording{border-color:var(--danger)!important;color:var(--danger)!important}.recording-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;margin-right:.4rem;animation:pulse 1s infinite}
@keyframes pulse{50%{opacity:.35}}
.transcript-box{border-left:2px solid var(--blue);background:rgba(120,169,230,.06);padding:.75rem;margin-top:.7rem}.transcript-box > .button{display:block;margin-top:.5rem}
.transcript-box summary{cursor:pointer;color:var(--blue);font-size:.78rem}.transcript-box p{margin:.6rem 0 0;font-size:.83rem;line-height:1.5}

.report-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(460px,1.28fr);gap:1rem;align-items:start}.report-controls{position:sticky;top:88px;max-height:calc(100vh - 106px);overflow:auto}.report-section-tabs{display:flex;gap:.35rem;overflow:auto;padding-bottom:.5rem;margin-bottom:1rem}.nav-tab{flex:0 0 auto;width:40px;height:40px;background:var(--ground);border:1px solid var(--line);font:500 .75rem var(--mono)}.nav-tab[aria-selected='true']{background:var(--accent);border-color:var(--warning);color:var(--accent-ink)}
.report-paper{background:#f8f6f0;color:var(--text);min-height:900px;padding:clamp(1.5rem,4vw,4rem);box-shadow:var(--shadow);font-family:var(--sans)}.report-paper h1,.report-paper h2,.report-paper h3{color:var(--text)}.report-paper .muted{color:#59636d}.report-paper .draft-banner{border:2px solid #9a5d0c;color:#754605;text-align:center;padding:.55rem;font:700 .72rem var(--mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:2rem}.report-paper .report-meta{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;border-top:1px solid #c9c4b9;border-bottom:1px solid #c9c4b9;padding:1rem 0;margin:1.2rem 0 2rem;font-size:.84rem}.report-paper section{margin:0 0 2rem}.report-paper .section-number{font:600 .7rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#9a5d0c}.report-paper table{width:100%;border-collapse:collapse;font-size:.8rem}.report-paper th,.report-paper td{border:1px solid #c9c4b9;padding:.5rem;text-align:left;vertical-align:top}.report-paper .report-warning{border-left:3px solid #b87820;padding:.6rem .8rem;background:#fff3db;font-size:.8rem}.report-paper .source-note{display:block;margin-top:.25rem;color:#59636d;font-size:.7rem}.report-evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.report-photo{break-inside:avoid;border:1px solid #c9c4b9;padding:.55rem;margin:0}.report-photo img{width:100%;height:auto;max-height:440px;object-fit:contain;background:#ece9e1}.report-photo figcaption{font-size:.76rem;line-height:1.45;margin-top:.5rem}.report-photo strong{font-family:var(--mono)}

.report-finding{margin:.75rem 0;padding:.7rem .85rem;border-left:2px solid #9a5d0c;background:#eee9de;font-size:.8rem}.report-finding>p{margin:.25rem 0}.ai-suggestion{display:block;color:#355f91;font-size:.74rem;font-style:italic}.damage-matrix{margin:.6rem 0 1.5rem}.damage-matrix td:last-child{width:25%}.damage-matrix .unknown{color:#59636d}.damage-matrix .yes{font-weight:700;color:#7c2e28}
.version-list{display:flex;flex-direction:column;gap:.75rem}.version-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--line);background:var(--surface)}.version-number{width:52px;height:52px;border:1px solid var(--line);display:grid;place-items:center;font:500 1rem var(--mono);color:var(--warning)}.version-row h3{margin:0}.version-row p{margin:.25rem 0 0;color:var(--muted);font-size:.8rem}.version-actions{display:flex;gap:.5rem}
.audience-nav{display:flex;border:1px solid var(--line);padding:.2rem}.audience-nav a{padding:.38rem .55rem;color:var(--muted);font:500 .65rem var(--mono);text-decoration:none}.audience-nav a[aria-current='page']{background:var(--surface-3);color:var(--warning)}
.collaboration-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:1rem;align-items:start}.collaboration-list{display:flex;flex-direction:column;gap:.6rem;margin-top:1rem}.collaboration-card{display:flex;flex-direction:column;gap:.65rem;padding:.85rem;border:1px solid var(--line);background:var(--ground)}.collaboration-card h3{margin:.25rem 0}.collaboration-card p{margin:.2rem 0;color:var(--muted);line-height:1.5}.collaboration-card small{color:var(--dim)}.summary-label{display:block;font-size:.8rem;margin-bottom:.35rem}.package-missing{padding-top:.55rem;border-top:1px solid var(--line)}.status-summary h3{margin:.2rem 0 .45rem}.status-summary p{margin:.3rem 0}.status-summary small{color:var(--dim)}.compact-form{display:grid;gap:.65rem;margin-top:1rem}.compact-list{display:flex;flex-direction:column;gap:.35rem;padding-left:1.2rem;margin:.25rem 0}.compact-list li{display:flex;justify-content:space-between;gap:1rem}.card-actions{display:flex;flex-wrap:wrap;gap:.4rem}.scope-list{display:grid;gap:.7rem;margin:1.2rem 0}.scope-list>div{display:grid;grid-template-columns:110px 1fr;gap:1rem;padding-bottom:.6rem;border-bottom:1px solid var(--line)}.scope-list dt{color:var(--dim);font:500 .68rem var(--mono);text-transform:uppercase}.scope-list dd{margin:0}.recipient-gate{width:min(100%,680px);margin:3rem auto}.recipient-upload{width:min(100%,760px)}
.check-row{display:flex;align-items:flex-start;gap:.65rem;min-height:44px;padding:.55rem .65rem;border:1px solid var(--line);cursor:pointer;line-height:1.4}.check-row:hover{background:var(--surface-2);border-color:var(--line-strong)}.check-row input[type='checkbox'],.check-row input[type='radio']{flex:0 0 auto;width:1.1rem;min-height:1.1rem;height:1.1rem;margin:.15rem 0 0;accent-color:var(--warning)}.check-row span{min-width:0}.check-row strong,.check-row small{display:block}.check-row small{color:var(--muted);margin-top:.15rem}.check-row.nested{margin-left:1.25rem;border-top:0}.search-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}.copy-list{display:flex;flex-direction:column;gap:.7rem;margin-top:.7rem}.copy-group{border:1px solid var(--line);background:var(--ground);padding:.55rem}.copy-group>.check-row{border:0}.sample-card{display:flex;flex-direction:column;gap:1rem}.sample-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.sample-fields .field-label{margin-top:0}.sample-result{padding-top:1rem;border-top:1px solid var(--line)}
.content-grid aside .version-row{grid-template-columns:auto minmax(0,1fr)}.content-grid aside .version-actions{grid-column:1/-1;flex-wrap:wrap}

.dialog{width:min(92vw,570px);max-height:88vh;overflow:auto;background:var(--surface);border:1px solid var(--line-strong);color:var(--text);padding:1.3rem;box-shadow:var(--shadow)}.dialog::backdrop{background:rgba(3,5,7,.78);backdrop-filter:blur(4px)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.dialog h2{margin-bottom:0}.dialog-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.2rem}.compact-dialog{width:min(92vw,440px)}.sync-dialog{width:min(92vw,680px)}
.inline-fields{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}.member-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem;align-items:center;padding:.65rem;border:1px solid var(--line)}.member-row small,.member-row strong{display:block}.member-row small{color:var(--muted);margin-top:.2rem}
.sync-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.sync-row{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;border:1px solid var(--line);padding:.7rem}.sync-row code{color:var(--muted);font:.67rem var(--mono);overflow-wrap:anywhere}.sync-error{display:block;color:var(--danger);margin-top:.25rem;font-size:.74rem}
.toast-region{position:fixed;z-index:100;right:1rem;bottom:1rem;width:min(calc(100vw - 2rem),390px);display:flex;flex-direction:column;gap:.5rem}.toast{background:var(--surface-3);border:1px solid var(--line-strong);padding:.8rem 1rem;box-shadow:var(--shadow);font-size:.84rem;line-height:1.4}.toast.error{border-left:3px solid var(--danger)}.toast.success{border-left:3px solid var(--done)}

@media(max-width:980px){
  .workspace-frame{grid-template-columns:180px minmax(0,1fr)}
  .content-grid,.report-layout,.collaboration-grid{grid-template-columns:1fr}.report-controls{position:static;max-height:none}.field-grid{grid-template-columns:1fr}.location-list{grid-template-columns:1fr}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:850px){.location-editor{grid-template-columns:1fr;grid-template-areas:'rail' 'content'}.location-rail{position:static}}

@media(max-width:700px){
  .topbar{height:64px;padding:0 .8rem}.wordmark small,.user-menu-trigger small,.global-work-list{display:none}.audience-nav{position:fixed;left:.75rem;right:.75rem;bottom:.75rem;z-index:50;justify-content:center;background:var(--surface);box-shadow:var(--shadow)}.sync-pill{font-size:.58rem;padding:.48rem}.workspace-frame{display:block}.case-sidebar{position:sticky;top:64px;z-index:20;width:100%;height:auto;padding:.55rem .75rem;border:0;border-bottom:1px solid var(--line);display:block;overflow:auto}.back-link,.case-identity,.case-sidebar-foot,.case-nav-heading{display:none}.case-nav{margin:0;flex-direction:row}.case-nav-section{display:contents}.case-nav a,.case-nav button{width:auto;white-space:nowrap;padding:.55rem .65rem}#main-content{padding:1rem}.page-head{align-items:flex-start;flex-direction:column;margin-bottom:1.3rem}.page-actions{justify-content:flex-start;width:100%}.page-actions .button{flex:1}.summary-strip{grid-template-columns:repeat(2,1fr)}.summary-cell:nth-child(2){border-right:0}.summary-cell:nth-child(-n+2){border-bottom:1px solid var(--line)}.toolbar{display:grid;grid-template-columns:1fr 1fr}.toolbar .search-field{grid-column:1/-1}.case-table,.case-table tbody,.case-table tr,.case-table td{display:block}.case-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.case-table tr{padding:.8rem;border-bottom:1px solid var(--line)}.case-table td{padding:.25rem 0;border:0}.case-table td::before{content:attr(data-label);font:500 .58rem var(--mono);color:var(--dim);letter-spacing:.08em;text-transform:uppercase;margin-right:.5rem}.case-table .primary-cell::before{display:none}.location-editor{grid-template-columns:1fr;grid-template-areas:'rail' 'content'}.location-rail{position:static}.photo-grid{grid-template-columns:1fr}.report-paper{padding:1.25rem}.report-paper .report-meta,.report-evidence{grid-template-columns:1fr}.version-row{grid-template-columns:auto 1fr}.version-actions{grid-column:1/-1}.version-actions .button{flex:1}.scope-list>div{grid-template-columns:1fr;gap:.25rem}
}

/* Simple, Lovable, Complete report stages */
.case-nav a[data-stage]{gap:.65rem;font-weight:600}
.case-nav .stage-number,.stage-overview .stage-number{font:500 .66rem var(--mono);letter-spacing:.06em;color:var(--muted)}
.case-nav a[data-stage][aria-current='page'] .stage-number{color:var(--warning)}
.stage-subnav{display:flex;align-items:center;gap:1.25rem;margin:0 0 1.4rem;border-bottom:1px solid var(--line);overflow-x:auto}
.stage-subnav a{flex:0 0 auto;min-height:42px;display:inline-flex;align-items:center;color:var(--muted);font-size:.84rem;text-decoration:none;border-bottom:2px solid transparent}
.stage-subnav a:hover{color:var(--text)}
.stage-subnav a[aria-current='page']{color:var(--text);border-bottom-color:var(--accent);font-weight:600}
.compact-page-head{margin-bottom:1.35rem}
.compact-page-head h1{margin-bottom:.25rem}
.stage-overview{display:flex;flex-direction:column;border-top:1px solid var(--line-strong)}
.stage-overview>a{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:1rem;align-items:center;min-height:86px;padding:1rem .25rem;border-bottom:1px solid var(--line);text-decoration:none}
.stage-overview>a:hover{background:var(--surface-2)}
.stage-overview>a.attention{border-left:3px solid var(--accent);padding-left:.75rem}
.stage-overview strong,.stage-overview small{display:block}
.stage-overview strong{font-size:1.1rem}
.stage-overview small{margin-top:.2rem;color:var(--muted);font-size:.8rem}
.processing-summary .source-link{display:inline-block;margin-top:1rem}
.report-output{width:min(100%,1000px);margin-inline:auto}
.output-warning{width:min(100%,1000px);margin:0 auto 1rem}
.work-list-panel{margin-bottom:1.5rem}

@media(max-width:700px){
  .stage-subnav{margin-bottom:1rem;gap:1rem}
  .stage-subnav a{min-height:44px}
  .stage-overview>a{min-height:78px;grid-template-columns:30px minmax(0,1fr) auto;gap:.7rem}
}

.ai-label{display:inline-flex;align-items:center;gap:.45rem;color:var(--warning)!important}
.ai-label::before{content:'AI';display:inline-grid;place-items:center;width:28px;height:22px;background:var(--accent);color:var(--text);font:700 .62rem var(--mono);letter-spacing:.02em}
.assistant-disclosure{margin:.25rem 0 0;color:var(--muted);font-size:.8rem}
.assistant-head{max-width:980px;margin-inline:auto}
.assistant-workspace{width:min(100%,980px);margin:0 auto;border-top:1px solid var(--line-strong)}
.assistant-thread{display:flex;flex-direction:column;gap:0;min-height:260px}
.assistant-reply{padding:1.35rem 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.assistant-reply>p{max-width:72ch;white-space:pre-wrap}
.assistant-reply.from-user{align-self:flex-end;width:min(88%,720px);margin:.9rem 0;padding:1rem 1.15rem;background:var(--surface-2);border:1px solid var(--line)}
.assistant-reply.from-assistant{width:100%}
.assistant-inline-source{display:inline;font:600 .72rem var(--mono);color:var(--blue);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.assistant-stale-notice{margin-top:.8rem;padding:.65rem .75rem;border-left:3px solid var(--warning);background:var(--surface-2);color:var(--muted);font-size:.8rem}
.assistant-welcome{color:var(--muted)}
.assistant-composer{position:sticky;bottom:0;margin-top:1rem;padding:1rem 0 1.25rem;background:var(--ground);border-top:1px solid var(--line-strong)}
.assistant-compose-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;align-items:end}
.assistant-compose-row textarea{min-height:92px}
.assistant-compose-row .button{height:48px}
.assistant-card{margin:1rem 0;padding:1rem;border:1px solid var(--line-strong);background:var(--surface-2)}
.assistant-card h3{font-size:1.05rem}.assistant-card p:last-child{margin-bottom:0}
.assistant-sources{display:grid;gap:.45rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}
.assistant-source{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem 1rem;padding:.7rem;border:1px solid var(--line);text-decoration:none;background:var(--surface)}
.assistant-source:hover{border-color:var(--line-strong)}
.assistant-source span{font:500 .66rem var(--mono);text-transform:uppercase;color:var(--blue)}
.assistant-source small{grid-column:1/-1;color:var(--muted)}
.editor-save-status{align-self:center;min-width:7rem;color:var(--muted);font-size:.78rem}
.editor-save-status[data-state='failed']{color:var(--danger)}
.welcome-panel{width:min(100%,760px);margin:clamp(2rem,8vh,6rem) auto;padding:clamp(2rem,6vw,5rem);border:1px solid var(--line-strong)}
.welcome-panel .button{margin-top:1rem}

@media(max-width:700px){
  .assistant-compose-row{grid-template-columns:1fr}.assistant-compose-row .button{width:100%}
  .assistant-reply.from-user{width:94%}.assistant-source{grid-template-columns:1fr}.assistant-source small{grid-column:auto}
}

@media(max-width:560px){.sample-fields,.search-inline{grid-template-columns:1fr}.check-row.nested{margin-left:.5rem}}

@media(max-width:420px){.wordmark strong{font-size:.82rem}.sync-pill span:last-child{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar{grid-template-columns:1fr}.toolbar .search-field{grid-column:auto}.summary-cell b{font-size:1.2rem}.location-card{grid-template-columns:58px 1fr}.location-thumb{width:58px}.location-count{grid-column:2;text-align:left}.panel{padding:.85rem}.photo-controls{flex-wrap:wrap}}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Shared reporting workspace: warm paper, readable controls, compact task hierarchy. */
body{line-height:1.5}h1{font-size:clamp(2rem,3vw,2.5rem);font-weight:450;line-height:1.1}h2{font-size:1.5rem;font-weight:500;line-height:1.2}
input,select,textarea{border-color:var(--line-strong);font-size:1rem}.field-label{font:500 .875rem/1.4 var(--sans);letter-spacing:0;text-transform:none;color:var(--text)}
.eyebrow{letter-spacing:.08em;font-size:.72rem;margin-bottom:.6rem!important}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:.875rem;border-color:var(--line-strong);transition:background 150ms}.button.primary:hover{background:var(--accent-hover)}
.icon-button,.sync-pill,.chip,.nav-tab{min-height:44px}.button.small-button{min-height:44px}.case-nav a{min-height:44px}.case-nav a[aria-current='page']{border-left:3px solid var(--accent)}
.login-card{border-color:var(--line-strong)}.login-mark,.wordmark-icon{color:var(--text);background:var(--accent);border-color:var(--accent)}.login-view::before{display:none}
.case-identity strong,.case-table .primary-cell strong,.text-button,.warning-list a{color:var(--text)}.case-table .primary-cell strong{text-decoration:underline;text-underline-offset:4px}.summary-cell{padding:1.5rem}.summary-cell b{font-family:var(--sans);font-size:2rem;font-weight:450}.summary-cell span{font-size:.72rem}
.case-table th,.status-badge,.state-badge,.source-badge{font-size:.7rem}.case-table td{padding:1.2rem .8rem}.table-scroll{overflow-x:auto}.page-head .lede{margin-top:.6rem}.panel{min-width:0}.stack>*{min-width:0}.document-row strong,.member-row strong{overflow-wrap:anywhere}.document-row>span{min-width:0}
.dialog::backdrop{background:rgba(25,25,24,.5);backdrop-filter:none}.dialog{padding:1.5rem}.drop-zone:focus-within{outline:none}.drop-zone strong{color:var(--text)}
.form-group{padding-top:1.5rem;margin-top:1.5rem;border-top:1px solid var(--line)}.form-group:first-child{padding-top:0;margin-top:0;border-top:0}.field-help{font-size:.8rem;color:var(--muted);margin:.4rem 0}.workspace-context{font:400 .75rem var(--mono);color:var(--muted)}.step-state{margin-left:auto;font:400 .7rem var(--mono)}.access-summary{background:var(--surface-2);padding:1rem;font-size:.875rem;border-left:3px solid var(--accent)}
@media(max-width:700px){.case-nav a{min-height:48px}.page-head h1{font-size:2rem}.summary-cell{padding:1rem}.dialog{padding:1rem}.document-row{grid-template-columns:auto minmax(0,1fr)}.document-row>.stack{grid-column:2}.audience-nav{position:static}.topbar-actions{gap:.4rem}.case-table tr{padding:1rem}.case-table td{padding:.3rem 0}.collaboration-grid{gap:1rem}.member-row{grid-template-columns:1fr}.card-actions{flex-wrap:wrap}.page-actions .button{flex:auto}.login-card{margin-top:3rem}}
.review-card{padding:1.25rem 0;border-bottom:1px solid var(--line)}.review-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:0 0 1rem}.review-comparison>div{padding:1rem;background:var(--surface-2);min-width:0}.review-comparison dt{font-size:.75rem;color:var(--muted);margin-bottom:.5rem}.review-comparison dd{margin:0;overflow-wrap:anywhere}.processing-row{padding:1rem 0;border-bottom:1px solid var(--line)}.processing-row h3{margin:.5rem 0}.processing-row small{color:var(--muted)}
@media(max-width:700px){.review-comparison{grid-template-columns:1fr}.login-view:has(#identity-gate:not([hidden])){align-items:start}}
.loading-lines{display:grid;gap:1rem;max-width:55rem}.loading-lines span{height:4rem;background:var(--surface-2);border:1px solid var(--line)}.loading-lines span:nth-child(2){width:85%}.loading-lines span:nth-child(3){width:65%}.route-error{max-width:50rem;margin:2rem auto}.case-sidebar{overflow-y:auto}.nav-tab{width:auto;min-width:44px;padding:0 .75rem}.report-paper{overflow-wrap:anywhere}.report-paper table{table-layout:fixed}

.case-table .button{white-space:nowrap}
.process-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:2rem;align-items:start}.process-map{list-style:none;padding:0;margin:0}.process-map>li{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:1rem;padding-bottom:1rem}.process-map>li:not(:last-child)::after{content:'';position:absolute;left:21px;top:44px;bottom:0;border-left:1px solid var(--line-strong)}.process-map>li:not(:last-child)::before{content:'';position:absolute;left:14px;bottom:-7px;z-index:1;width:16px;height:16px;background:var(--ground) url('./icons/go-down-symbolic.svg') center/12px 12px no-repeat}.process-number{width:44px;height:44px;border:1px solid var(--line-strong);display:grid;place-items:center;background:var(--surface-2);font:500 .75rem var(--mono)}.process-node{position:relative;display:block;padding:1.15rem 3rem 1.15rem 1.25rem;border:1px solid var(--line-strong);text-decoration:none;background:var(--surface);transition:background 150ms}.process-node:hover{background:var(--surface-2)}.process-node-heading{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem}.process-node h2{font-size:1.15rem;margin:0}.process-node p{font-size:.85rem;line-height:1.5;margin:.6rem 0 0;color:var(--muted);max-width:65ch}.process-node.attention{border-left:3px solid var(--accent)}.process-node.ready .state-badge{color:var(--done);border-color:var(--done)}.process-node.active .state-badge{color:var(--warning);border-color:var(--warning)}.process-open{position:absolute;right:1rem;top:1.2rem;width:16px;height:16px}.process-summary{position:sticky;top:72px}
@media(max-width:1100px){.process-layout{grid-template-columns:minmax(0,1fr)}.process-summary{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.process-layout{gap:1rem}.process-summary{display:flex}.process-map>li{grid-template-columns:32px minmax(0,1fr);gap:.6rem}.process-number{width:32px;height:32px}.process-map>li:not(:last-child)::after{left:15px;top:32px}.process-map>li:not(:last-child)::before{left:8px}.process-node{padding:1rem 2.2rem 1rem .9rem}.process-node .state-badge{white-space:normal}.process-open{right:.75rem}}

.assistant-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(240px,1fr); gap:24px; align-items:start; }
.assistant-conversation { min-width:0; }
.context-note { border-bottom:1px solid var(--line-strong); padding-bottom:16px; color:var(--muted); font-size:13px; }
.assistant-reply { padding:16px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.assistant-reply p { white-space:pre-wrap; }
.assistant-reply.from-user { background:var(--surface-2); padding:16px; }
.assistant-links,.assistant-prompts { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.assistant-invitation { border-top:2px solid var(--accent); padding-top:24px; margin-top:24px; }
.assistant-invitation fieldset { display:grid; gap:12px; margin:20px 0; }
.assistant-invitation fieldset input { width:auto; }
.assistant-invitation dd { margin:0 0 16px; overflow-wrap:anywhere; }
.assistant-invitation dt { font-size:12px; color:var(--muted); text-transform:uppercase; }
@media(max-width:850px) { .assistant-layout { grid-template-columns:1fr; } }

/* Rich workspace shell */
.app-shell{min-height:100vh}
.workspace-frame{min-height:100vh;grid-template-columns:248px minmax(0,1fr)}
.workspace-content{min-width:0;min-height:100vh}
.case-sidebar{position:sticky;top:0;height:100vh;padding:1.25rem 1rem 1rem;overflow-y:auto}
.case-sidebar .wordmark{min-height:48px;padding:0 .55rem 1rem;border-bottom:1px solid var(--line)}
.global-nav{display:grid;gap:.25rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.global-work-list{width:100%;min-height:44px;padding:.65rem .72rem;text-decoration:none;color:var(--muted)}
.global-work-list:hover,.global-work-list[aria-current='page']{background:var(--surface-2);color:var(--text)}
.global-work-list[aria-current='page']{border-left:3px solid var(--accent)}
.case-context{min-height:0}
.case-identity{padding:1.15rem .72rem 1rem}
.case-identity strong{font-family:var(--sans);font-size:.95rem;color:var(--text)}
.case-sidebar-foot{display:grid;gap:.8rem;background:var(--ground)}
.sidebar-state{padding:0 .55rem}
.user-menu{display:block;width:100%;position:relative}
.user-menu-trigger{width:100%;justify-content:space-between;background:var(--surface-2)}
.user-menu-popover{left:0;right:auto;top:auto;bottom:calc(100% + .45rem);width:calc(248px - 2rem)}
.topbar{height:56px;justify-content:space-between;padding:0 clamp(1rem,3vw,2rem);background:rgba(255,254,242,.96)}
.topbar-context{margin:0;font:500 .72rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar-reference{display:none}
.sync-pill{min-height:34px;padding:.4rem .55rem;border-color:transparent;background:transparent}
.sync-pill[data-state='done']{visibility:hidden}
.sync-pill[data-state='failed'],.sync-pill[data-state='conflict'],.sync-pill[data-state='offline'],.sync-pill[data-state='pending'],.sync-pill[data-state='uploading']{visibility:visible;border-color:var(--line)}
#main-content{padding-top:clamp(1.5rem,3.5vw,3rem)}
.password-field{position:relative;margin-bottom:1rem}
.password-field input{margin-bottom:0;padding-right:4.5rem}
.password-toggle{position:absolute;right:1px;top:1px;bottom:1px;min-width:4rem;border:0;border-left:1px solid var(--line-strong);background:var(--surface-2);font-size:.8rem;font-weight:600;cursor:pointer}
.auth-switch{text-align:center;margin:1rem 0 0;font-size:.85rem;color:var(--muted)}
.auth-switch a{color:var(--text);text-underline-offset:3px}
.report-type-fieldset{border:0;padding:0;margin:1rem 0 0}
.report-type-fieldset legend{font-weight:600;font-size:.875rem;margin-bottom:.55rem}
.report-type-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.report-type-card{position:relative;display:block;min-height:132px;padding:1rem;border:1px solid var(--line-strong);background:var(--surface);cursor:pointer}
.report-type-card:hover{background:var(--surface-2)}
.report-type-card:has(input:checked){border:2px solid var(--warning);padding:calc(1rem - 1px);background:rgba(252,170,45,.08)}
.report-type-card:has(input:focus-visible){outline:none}
.report-type-card input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.report-type-card strong,.report-type-card small{display:block}
.report-type-card strong{font-size:1rem;margin-bottom:.45rem}
.report-type-card small{color:var(--muted);font-size:.78rem;line-height:1.45}
.report-type-card .type-meta{margin-top:.8rem;font:500 .64rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--warning)}

@media(max-width:700px){
  .workspace-frame{display:block;min-height:100vh}
  .case-sidebar{position:sticky;top:0;height:auto;max-height:48vh;padding:.65rem .75rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;z-index:40;border:0;border-bottom:1px solid var(--line);overflow:auto}
  .case-sidebar .wordmark{padding:0;border:0}.case-sidebar .wordmark small{display:none}
  .global-nav{display:flex;grid-column:1/-1;padding:.35rem 0;border-top:1px solid var(--line);border-bottom:0;overflow:auto}
  .global-work-list{display:inline-flex;width:auto;white-space:nowrap}
  .case-context{grid-column:1/-1}.case-identity{display:none}.case-nav{margin:.15rem 0 0;flex-direction:row;overflow:auto}.case-nav-section{display:contents}.case-nav-heading{display:none}.case-nav a,.case-nav button{width:auto;white-space:nowrap;flex:0 0 auto}
  .case-sidebar-foot{grid-column:2;grid-row:1;margin:0;padding:0;border:0}.sidebar-state{display:none!important}.user-menu-trigger{width:auto;max-width:170px}.user-menu-trigger small{display:none}.user-menu-popover{left:auto;right:0;top:calc(100% + .45rem);bottom:auto;width:min(320px,calc(100vw - 1.5rem))}
  .topbar{height:44px;top:0;padding:.35rem .8rem}.topbar-context{font-size:.62rem}.topbar-reference{display:inline;margin-left:.45rem;color:var(--text);font-weight:600}.topbar-reference::before{content:'\00b7';margin-right:.45rem;color:var(--muted)}.sync-pill{font-size:.58rem}
  #main-content{padding:1rem}
  .report-type-options{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-type-card{min-height:144px;padding:.8rem}
  .report-type-card:has(input:checked){padding:calc(.8rem - 1px)}
}

.processing-attention{margin-top:1rem;border-top:1px solid var(--line-strong)}
.processing-attention .processing-row,.processing-history .processing-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.75rem 0}
.processing-attention .processing-row strong,.processing-attention .processing-row small{display:block}
.processing-history{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--line)}
.processing-history summary{cursor:pointer;color:var(--muted);font-size:.8rem}
.processing-history>div{margin-top:.5rem}
.flow-next{display:flex;justify-content:flex-end;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}
.review-attention{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.review-attention summary,.technical-details summary{cursor:pointer;font-size:.84rem;font-weight:600}
.review-attention .warning-list{margin-top:.75rem}
.review-complete{margin:0 0 1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--line);color:var(--done);font-size:.84rem}
.form-groups{display:grid;gap:1.75rem}
.form-group{padding-bottom:1.5rem;border-bottom:1px solid var(--line)}
.form-group h2{font-size:1.15rem;margin-bottom:1rem}
.technical-details{margin-top:1rem;color:var(--muted)}
.technical-details p{margin:.5rem 0 0;font:.72rem var(--mono)}

@media(max-width:700px){
  .processing-attention .processing-row,.processing-history .processing-row{grid-template-columns:auto minmax(0,1fr)}
  .processing-attention .processing-row .button,.processing-history .processing-row>small{grid-column:2}
  .flow-next .button{width:100%;text-align:center}
}

/* Evidence views live beneath their report stage, including on small screens. */
.case-subnav{display:flex;flex-direction:column;margin:0 0 .35rem 1.05rem;padding-left:.55rem;border-left:1px solid var(--line)}
.case-subnav a{min-height:44px;font-size:.8rem;white-space:normal}
.documents-lede{max-width:none}
@media(max-width:700px){
  .case-nav-stage{flex:0 0 auto}
  .case-subnav{margin-left:.65rem;margin-bottom:0}
  .case-nav>.case-nav-section>a,.case-nav>.case-nav-section>button{align-self:flex-start}
}

/* Working report values use the same typed controls as preparation. */
.report-inline-layout{display:block;max-width:1100px;margin-inline:auto}
.report-inline-layout .report-section-tabs{position:sticky;top:72px;z-index:2;background:var(--ground);padding:.5rem 0}
.report-inline-layout .report-section-tabs .button{flex-shrink:0}
.report-inline-layout section[id]{scroll-margin-top:145px}
.report-inline-value{display:block;width:100%;padding:.3rem;margin:-.3rem 0;border:1px solid transparent;border-radius:3px;background:transparent;color:inherit;font:inherit;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;cursor:text;min-height:32px}
.report-inline-value:hover,.report-inline-value:focus-visible{border-color:var(--line);outline:2px solid transparent;background:#fafafa}
.report-inline-value:focus-visible{outline:none}
.report-inline-value[hidden],.report-inline-control[hidden]{display:none}
.report-inline-control input,.report-inline-control select,.report-inline-control textarea{width:100%;min-width:0;font:inherit}
.report-inline-control .text-button{min-height:36px}
.inline-provenance{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.75rem;margin-top:.3rem}
.inline-error{display:block;color:#a12525;font-size:.85rem}
.report-narrative{white-space:pre-wrap;margin:1rem 0}
.report-inline-layout table{table-layout:fixed;width:100%}
@media print{.report-section-tabs,.report-inline-control,.inline-provenance{display:none!important}.report-inline-value[hidden]{display:block!important}.report-inline-value{border:0!important;background:transparent!important;padding:0;margin:0;min-height:0}.report-inline-value:has([data-inline-text]:empty){display:none}}

@media print{.report-narrative.is-empty{display:none!important}}

.description-compose{border:1px solid var(--line);background:var(--ground)}
.description-compose textarea{display:block;border:0;margin:0}
.description-compose-actions{display:flex;justify-content:flex-end;padding:.5rem}

.observation-head .observation-actions{flex-shrink:0;align-items:flex-start}.observation-head .observation-actions .file-trigger{min-height:36px;padding:.45rem .65rem;font-size:.8rem}

.observation-head .observation-actions > .button{display:inline-flex;align-items:center;justify-content:center;height:36px;min-height:36px;box-sizing:border-box;margin:0;line-height:1;padding:.45rem .65rem}
.observation-head .observation-actions > [data-toggle-finding]{width:36px;padding:0}

.observation-actions:has([data-toggle-finding][aria-expanded="false"]) > .file-trigger{display:none}

.location-editor textarea{resize:none;overflow-y:auto}
.description-compose-actions .dictation-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;position:relative}
.dictation-icon [data-dictation-icon]{display:flex}.dictation-icon .recording-dot{position:absolute;top:3px;right:3px}

.defect-chips .chip{position:relative;overflow:visible}.defect-chips:has(.ai-pick-badge){gap:.8rem;padding-top:.45rem}
.ai-pick-badge{position:absolute;top:-.4rem;right:-.4rem;z-index:1;background:var(--ground);border:1px solid var(--blue);color:var(--blue);padding:.12rem .3rem;font-size:.62rem;line-height:1.2;white-space:nowrap;pointer-events:none}

.report-inline-layout{display:grid;grid-template-columns:minmax(0,1fr) 190px;grid-template-areas:"paper sections";max-width:1320px;gap:1.5rem}
.report-inline-layout > [data-report-preview]{grid-area:paper;min-width:0}
.report-inline-layout > .report-section-tabs{grid-area:sections;display:flex;flex-direction:column;position:sticky;top:88px;max-height:calc(100vh - 110px);overflow-y:auto;overflow-x:hidden;margin:0;padding:0;background:transparent}
.report-inline-layout .report-section-tabs .button{text-align:left;white-space:normal;width:100%;font-weight:400;background:transparent}
.report-inline-layout section[id]{scroll-margin-top:88px}
@media(max-width:1100px){.report-inline-layout{display:block}.report-inline-layout > .report-section-tabs{display:none}}
@media print{.report-inline-layout{display:block}}

.report-inline{position:relative}
.report-inline-layout{column-gap:3.5rem}
.report-inline .inline-provenance{display:block;position:absolute;left:calc(100% + clamp(1.5rem,4vw,4rem) + .4rem);top:.15rem;margin:0;z-index:3}
.inline-provenance > summary{display:flex;align-items:center;justify-content:center;width:28px;height:28px;cursor:pointer;list-style:none;color:var(--blue);font-size:1rem}
.inline-provenance > summary::-webkit-details-marker{display:none}
.inline-provenance[open]{z-index:5}
.inline-provenance-menu{position:absolute;right:0;top:100%;width:220px;display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;padding:.8rem;background:var(--ground);border:1px solid var(--line);box-shadow:var(--shadow)}
@media(max-width:1100px){.report-inline-layout{margin-right:2rem}}

.report-inline-layout{max-width:none;width:100%;margin-inline:0}
@media(max-width:1100px){.report-inline-layout{width:calc(100% - 2rem);margin-right:2rem}}

.report-inline .inline-provenance{width:28px;min-width:28px;top:50%;transform:translateY(-50%)}
.inline-provenance > summary{box-sizing:border-box;border:1px solid transparent;border-radius:4px;background:transparent;transition:background .15s,border-color .15s}
.inline-provenance > summary svg{display:block;flex:none}
.inline-provenance > summary:hover,.inline-provenance[open] > summary{background:var(--surface-2);border-color:var(--line)}
.inline-provenance > summary:focus-visible{outline:none}
.inline-provenance-menu{margin-top:.3rem;border-radius:4px;font-family:var(--sans);font-size:.8rem;line-height:1.4}
.inline-provenance-menu .source-link,.inline-provenance-menu .text-button{margin:0;text-align:left;white-space:normal}

.report-inline-layout .report-section-tabs .button{display:block;text-align:left;justify-content:flex-start}
.report-inline-layout .report-section-tabs .button[aria-current="location"]{background:var(--surface-2);border-color:var(--warning);box-shadow:inset 3px 0 var(--accent);font-weight:600}

.report-missing-fields{margin-bottom:1rem;padding:.8rem 1rem;border:1px solid var(--line)}
.report-missing-fields summary{cursor:pointer;font-weight:600}
[data-missing-links]{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;padding-top:.75rem}

.collaboration-page{width:100%;max-width:900px}

.state-badge.missing{color:#a12622;border-color:#e6b4af;background:#fff0ee}

.field-suggestion > summary{display:flex;align-items:center;gap:.5rem;cursor:pointer;list-style:none}
.field-suggestion > summary::-webkit-details-marker{display:none}
.field-suggestion > summary::before{content:'▸';flex-shrink:0}
.field-suggestion[open] > summary::before{content:'▾'}
.suggestion-labels{margin-left:auto;display:flex;flex-direction:row-reverse;align-items:center;gap:.5rem;text-align:right}
.suggestion-labels .state-badge{white-space:normal}
.suggestion-content{padding-top:.5rem}

.report-fields-panel .field-meta{margin-bottom:.35rem}

.report-side-panel{grid-area:sections;position:sticky;top:88px;max-height:calc(100vh - 110px);overflow-y:auto;min-width:0}
.report-inline-layout .report-side-panel .report-section-tabs{position:static;display:flex;flex-direction:column;margin:0 0 1rem;padding:0;background:transparent}
.report-side-panel .report-missing-fields{padding:.65rem;margin:0;font-size:.78rem}
.report-side-panel [data-missing-links]{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:.75rem}
.report-side-panel [data-go-missing]{text-align:left;white-space:normal}
@media(max-width:1100px){.report-side-panel{position:static;max-height:none;margin-bottom:1rem}.report-inline-layout .report-side-panel .report-section-tabs{display:none}}
@media print{.report-side-panel{display:none!important}}

.report-side-panel .report-contents,.report-side-panel .report-missing-fields{box-sizing:border-box;width:100%;margin:0 0 .75rem;padding:0;border:1px solid var(--line)}
.report-side-panel .report-contents > summary,.report-side-panel .report-missing-fields > summary{padding:.65rem;cursor:pointer;font-size:.78rem;font-weight:600}
.report-inline-layout .report-side-panel .report-section-tabs{margin:0;padding:.5rem;gap:.35rem}
.report-side-panel [data-missing-links]{padding:0 .65rem .65rem;margin-top:0}
.inline-provenance-menu{width:320px;max-width:calc(100vw - 3rem);box-sizing:border-box}
.inline-suggestion{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:.5rem 0}
.inline-suggestion + .inline-suggestion{border-top:1px solid var(--line)}
.inline-suggestion p{margin:0;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1100px){.report-inline-layout .report-side-panel .report-section-tabs{display:flex}}

.invite-dialog{width:min(600px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow:auto;box-sizing:border-box}

.collaboration-page.people-page{max-width:none;width:100%}
.people-directory > input{margin-bottom:1rem}
.people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.person-card{border:1px solid var(--line);padding:1rem;min-width:0}
.person-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.person-heading strong,.person-email{overflow-wrap:anywhere;min-width:0}
.person-email{font-size:.8rem;color:var(--muted)}
.person-details{display:grid;gap:.7rem;margin:1rem 0;font-size:.82rem}
.person-details > div{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:.5rem}
.person-details dt{color:var(--muted)}
.person-details dd{margin:0}
.person-card .state-badge.pending{color:#805000;background:#fff3d9}
.person-card .state-badge.accepted{color:#22644d;background:#edf8f1}
.person-card .state-badge.revoked{color:#a12622;background:#fff0ee}
@media(max-width:700px){.people-grid{grid-template-columns:1fr}}

.sharing-directory > input{margin-bottom:1rem}
.share-card .person-details > div{grid-template-columns:6.5rem minmax(0,1fr)}
.share-card .package-missing{margin-top:1rem}
.share-card .card-actions{margin-top:1rem}

.assignment-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.assignment-layout h2{margin-bottom:1rem}
@media(max-width:700px){.assignment-layout{grid-template-columns:1fr}}

.requests-directory > input{margin-bottom:1rem}
.request-card .person-heading h3{margin:0;overflow-wrap:anywhere}
.request-card .person-details > div{grid-template-columns:6.5rem minmax(0,1fr)}
.request-card .state-badge.requested,.request-card .state-badge.needs_more{color:#805000;background:#fff3d9}
.request-card .state-badge.supplied{color:#22644d;background:#edf8f1}

.wordmark-icon{width:32px;height:32px;flex:0 0 32px;padding:0;border:0;background:transparent}
.login-mark{display:flex;align-items:center;gap:.65rem;padding:0;border:0;background:transparent;color:var(--text);font:600 1.1rem var(--sans);letter-spacing:-.03em}

.case-sidebar .wordmark strong{font-size:1.35rem;line-height:1.2}
.case-sidebar .wordmark-icon{width:42px;height:42px;flex-basis:42px}

.topbar .topbar-context{display:flex;align-items:center;gap:1rem;min-width:0;text-transform:none;letter-spacing:normal}
.topbar-context nav{min-width:0;overflow-x:auto}
.topbar-context ol{display:flex;align-items:center;gap:.6rem;list-style:none;margin:0;padding:0;white-space:nowrap}
.topbar-context li{display:flex;align-items:center;gap:.6rem}
.topbar-context li + li::before{content:'/';color:var(--muted)}
.topbar-context a{color:var(--muted);text-decoration:none}
.topbar-context a:hover{text-decoration:underline}
.topbar-context [aria-current=page]{color:var(--text)}

.panel.evidence-documents{border:0;padding:0}

.workspace-content{--content-gutter:clamp(1.25rem,3.5vw,3.5rem)}
#main-content{padding-inline:var(--content-gutter)}
.workspace-content > .topbar{padding-inline:max(var(--content-gutter),calc((100% - 1500px)/2 + var(--content-gutter)))}
@media(max-width:700px){.workspace-content{--content-gutter:1rem}}

.observation-card.photo-dragging{outline:2px dashed var(--accent);outline-offset:2px;background:var(--surface-2)}

.review-site-evidence{display:grid;gap:16px;margin-top:16px}
.review-site-location{border:1px solid var(--line);padding:16px;min-width:0}
.review-site-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.review-site-heading h3{margin:0;font-size:1rem}
.review-site-heading a{color:var(--text);text-underline-offset:3px}
.review-site-finding{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}
.review-site-finding p{white-space:pre-wrap;overflow-wrap:anywhere}
.review-site-photos{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.review-site-photos img{width:96px;height:80px;object-fit:cover;display:block;border:1px solid var(--line)}

/* Unavailable demo destinations remain discoverable without opening them. */
[data-demo-unavailable]{position:relative;cursor:not-allowed!important;color:#8b8b85!important;background:transparent!important;box-shadow:none!important}
.report-type-card[data-demo-unavailable]{text-align:left;font:inherit;border-color:var(--line,#deded4);opacity:1}
[data-demo-unavailable] strong,[data-demo-unavailable] small{color:#8b8b85!important}
.demo-tooltip{position:fixed;z-index:50;inset:auto;margin:0;border:0;padding:8px 10px;background:#242421;color:#fff!important;font:12px/1.4 sans-serif;white-space:nowrap;pointer-events:none;box-shadow:0 2px 8px #0002}

[data-demo-unavailable]:hover,[data-demo-unavailable]:focus-visible{background:var(--surface-2,#efefe7)!important}
