:root{color-scheme:dark;--bg:#0c1119;--panel:#131c29;--line:#293547;--muted:#a6b2c5;--ink:#edf2f9;--accent:#e8bb71;--blue:#86b9ef}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button{border:1px solid var(--line);border-radius:5px;background:var(--panel);color:var(--ink);padding:10px 16px}button:hover:not(:disabled){border-color:var(--accent)}a{color:inherit;text-decoration:none}header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 34px;border-bottom:1px solid var(--line)}.brand{font-size:32px;font-weight:850;letter-spacing:.2em;line-height:1.1}.brand span{display:block;font-size:12px;font-weight:500;letter-spacing:.15em;color:var(--muted);margin-top:7px}.training{font:12px ui-monospace,monospace;letter-spacing:.12em;color:var(--muted)}.app{display:grid;grid-template-columns:250px minmax(0,1fr);max-width:1600px;margin:auto;min-height:calc(100vh - 88px)}aside{border-right:1px solid var(--line);padding:32px 20px;align-self:stretch;background:#101722}.caseid,.eyebrow{font:12px/1.5 ui-monospace,monospace;color:var(--accent);letter-spacing:.09em}aside h2{font-size:19px;line-height:1.35;margin:13px 0 28px}nav{display:grid;gap:7px}nav button{text-align:left;display:flex;justify-content:space-between;background:transparent;border-color:transparent;padding:12px 10px;font-size:14px}nav button.active{background:#243148;color:var(--accent);border-left:3px solid var(--accent)}nav small{color:var(--muted)}main{padding:38px 42px 65px;min-width:0}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;margin-bottom:25px}h1{font-size:clamp(30px,3.3vw,44px);line-height:1.17;letter-spacing:-.04em;margin:8px 0 12px}h2{font-size:24px;line-height:1.3;margin:0 0 16px}h3{font-size:18px;margin:0 0 10px}p{margin:0 0 18px}.muted,.small{color:var(--muted)}.small{font-size:14px}.tag{font:12px ui-monospace,monospace;letter-spacing:.04em;padding:5px 9px;border:1px solid var(--line);border-radius:3px;display:inline-block;color:var(--blue)}.primary{background:var(--accent);color:#1b1d21;border-color:var(--accent);font-weight:650}.outline{background:transparent}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.panel{border:1px solid var(--line);background:var(--panel);padding:25px;border-radius:7px;margin-bottom:18px}.panel p:last-child{margin-bottom:0}.callout{border-left:3px solid var(--accent);background:#e8bb710c;padding:18px 22px;margin:20px 0}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.facts{display:flex;gap:35px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin:25px 0}.facts b{display:block;font-size:20px}.facts span{font-size:13px;color:var(--muted)}.case-progress{margin-top:40px;font-size:13px;color:var(--muted)}progress{display:block;width:100%;height:5px;margin-top:12px;accent-color:var(--accent)}.aside-note{font-size:12px;color:var(--muted);margin-top:18px}.evidence-card{display:flex;flex-direction:column;gap:12px}.evidence-card p{flex:1}.evidence-card button{align-self:flex-start}.report{background:#e9edf1;color:#243041;border-top:5px solid #8192a7;padding:28px;margin:20px 0;border-radius:3px}.report .eyebrow{color:#526378}.report h2{color:#172235;font-size:26px;margin-top:14px}.report p{white-space:pre-line}.report .disclaimer{border-top:1px solid #b4becb;margin-top:24px;padding-top:14px;font:12px/1.6 ui-monospace,monospace;color:#586779}.person{border-left:3px solid var(--blue)}.question{display:block;width:100%;text-align:left;margin:10px 0;font-size:14px}.answer{border-left:2px solid var(--blue);padding:14px 20px;margin:15px 0;background:#17283c;white-space:pre-line}.timeline{list-style:none;padding:0}.timeline li{display:grid;grid-template-columns:75px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.timeline time{color:var(--accent);font-family:ui-monospace,monospace}label{display:block;margin:18px 0 7px;font-size:14px}input,select,textarea{width:100%;padding:12px;background:#0d1420;border:1px solid var(--line);border-radius:4px;color:var(--ink);margin-top:7px}textarea{min-height:170px;resize:vertical}input[type=checkbox]{width:auto;margin:0 10px 0 0}.check{display:flex;align-items:flex-start;border-bottom:1px solid var(--line);padding:10px 0;margin:0}.check input{margin-top:7px;flex-shrink:0}.score{font-size:60px;line-height:1.1;color:var(--accent);font-weight:750}.success{color:#91d0b4}.danger{color:#f0a29e}dialog{max-width:610px;width:calc(100% - 32px);padding:32px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:10px;max-height:90vh}dialog::backdrop{background:#03070bdc;backdrop-filter:blur(5px)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#e8bb71;color:#161e2b;border-radius:5px;padding:12px 22px;max-width:90%;display:none;z-index:10}.empty{padding:30px;border:1px dashed var(--line);color:var(--muted)}.audio{font-size:14px}.row{display:flex;justify-content:space-between;gap:15px;align-items:center}.report-index{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.report-index button.active{border-color:var(--accent);color:var(--accent)}@media(max-width:1050px){.app{grid-template-columns:215px 1fr}main{padding:30px 25px}.grid{grid-template-columns:1fr}.training{display:none}}@media(max-width:700px){header{height:auto;padding:18px;gap:10px}.brand{font-size:26px}.brand span{font-size:10px}header button{font-size:13px}.app{display:block}aside{padding:18px;border-right:0;border-bottom:1px solid var(--line)}aside h2{margin:5px 0 15px}nav{display:flex;overflow-x:auto;gap:4px}nav button{white-space:nowrap;gap:15px}.case-progress,.aside-note{display:none}main{padding:25px 18px}.page-head{display:block}.panel{padding:20px}.facts{gap:24px}.report{padding:22px}.timeline li{grid-template-columns:55px 1fr}.row{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.photo{margin:0 0 24px;overflow:hidden;background:#101925;border:1px solid var(--line);border-radius:8px}.photo>button{display:block;width:100%;border:0;padding:0;border-radius:0;background:none}.photo img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}.photo figcaption{padding:16px 20px;display:grid;gap:4px;font-size:14px}.photo small{color:var(--muted);font:12px/1.6 ui-monospace,monospace}.cover{position:relative}.cover .photo img{max-height:360px;filter:brightness(.68)}.cover-label{position:absolute;top:26px;left:28px;color:white;pointer-events:none;letter-spacing:.1em;font-size:12px}.cover-label b{display:block;font-size:clamp(24px,3vw,40px);letter-spacing:-.03em;margin-top:10px}.custody{padding-left:22px;font-size:14px}.custody li{padding:12px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;color:var(--accent);padding:12px 0}details p{margin-top:15px}.report section{border-top:1px solid #b4becb;padding-top:22px;margin-top:22px}.report section p{line-height:1.85}.report button{background:#243041;color:white}.phone-record{max-width:760px}.bubble{background:#203147;border-radius:12px 12px 12px 0;padding:20px;margin:24px 40px 24px 0}.bubble.reply{margin:24px 0 24px 40px;background:#324339;border-radius:12px 12px 0 12px}.bubble time{font-size:14px;color:var(--accent)}.bubble p{margin-top:8px}.panel svg{width:100%;max-height:410px}.voice-settings{display:flex;flex-wrap:wrap;gap:20px;align-items:end}.voice-settings label{flex:1;min-width:160px}.voice-settings p{width:100%}#photo-dialog{max-width:1200px;width:94vw}#photo-dialog img{width:100%;height:auto}#photo-dialog form{text-align:right}#photo-dialog h2{margin-top:12px}input[type=range]{accent-color:var(--accent);padding:0}nav small{font-size:12px}@media(max-width:700px){.cover-label{top:14px;left:14px}.photo figcaption{padding:14px}.brand span{font-size:12px}.grid{grid-template-columns:minmax(0,1fr)}}

.evidence-heading{margin-top:32px}.evidence-card .photo{margin:0 0 10px}.evidence-card .photo figcaption{padding:12px}.evidence-card .photo img{aspect-ratio:3/2}.evidence-card .photo>button{align-self:stretch}.report-attachments .photo{background:#dae1e8;color:#243041;border-color:#b4becb}.report-attachments .photo small{color:#4c5a6c}.report-attachments .photo>button{padding:0;background:none}.report-attachments .grid:has(>.photo:only-child){grid-template-columns:1fr}

.photo-frame{position:relative;display:block;background:#0c1118}.photo-frame img{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain!important}.photo-mark,.camera-stamp{position:absolute;background:#101821e8;color:#f0c87e;padding:6px 10px;font:600 12px/1.4 monospace;pointer-events:none}.photo-mark{top:10px;left:10px}.camera-stamp{bottom:10px;right:10px;color:#fff}.photo button{display:block;width:100%;padding:0}#photo-dialog .photo-frame{max-width:1100px}fieldset{border:1px solid #465060;margin:20px 0;padding:16px}.report p{white-space:pre-line}
#account-gate{position:fixed;inset:0;background:#0c1119;z-index:60;overflow:auto;padding:clamp(20px,5vw,70px)}#account-gate[hidden]{display:none}#account-gate>.panel{max-width:640px;margin:5vh auto}#account-gate .account-wrap{max-width:900px;margin:auto}#account-gate h1{font-size:clamp(28px,5vw,48px)}#account-gate .panel{margin-top:20px}#account-gate input{width:100%}#toast{z-index:100}fieldset h2{font-size:20px}input[type=radio]{accent-color:#e8bb71;width:20px;min-width:20px;height:20px}legend{color:#e8bb71;padding:0 8px}#assessment-form fieldset{margin:28px 0}#assessment-form .check{align-items:flex-start}.score small{font-size:24px}#sync-status{display:inline-block;line-height:1.5}dialog{max-height:90vh;overflow:auto}

/* Evidence numbers are accessible annotations, not new photographic objects. */
.evidence-number{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:56px;background:#ffdb38;color:#111;border:2px solid #171717;border-radius:3px;font:800 30px/1 system-ui;box-shadow:3px 3px 0 #0005}
.digital-number{background:#b6dafa;box-shadow:none;border-color:#274058}
.placed-marker{position:absolute;transform:translate(-50%,-50%);pointer-events:none}.placed-marker .evidence-number{width:clamp(32px,4vw,58px);height:clamp(38px,5vw,68px);font-size:clamp(24px,3vw,42px)}
.photo .photo-frame img{aspect-ratio:auto!important}.photo-frame{overflow:hidden}.photo-frame img{transition:transform .2s}.hide-annotations .placed-marker,.hide-annotations .photo-mark,.hide-annotations .camera-stamp{visibility:hidden}.detail-zoom img{transform:scale(1.65)}.detail-zoom .placed-marker{visibility:hidden}
.record-heading{display:flex;align-items:center;gap:20px;margin:20px 0}.record-heading h2{margin:4px 0}.evidence-fields{display:grid;grid-template-columns:minmax(150px,1fr) 3fr;gap:0;margin:25px 0}.evidence-fields dt,.evidence-fields dd{margin:0;padding:12px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.evidence-fields dt{color:var(--muted)}
#evidence-dialog{width:min(1080px,94vw);max-width:1080px}#evidence-dialog>form{text-align:right}.inline-reference{display:inline!important;padding:0 4px!important;font:inherit!important;text-decoration:underline;background:#edf1f5!important;color:#20344d!important;border:1px solid #a3b1bd!important}
.evidence-plan{display:grid;grid-template-columns:1fr 1fr;gap:12px}.plan-zone{border:1px solid #627389;background:#101c2b;padding:18px}.plan-zone h3{margin:0 0 15px;font-size:16px;color:#c5d1df}.plan-zone button{display:flex;align-items:center;gap:12px;text-align:left}.plan-zone small{display:block;max-width:220px;white-space:normal;color:#c5d1df}.zone-reception,.zone-archive{grid-column:1/-1}.zone-archive{border-color:#e8bb71}.zone-door{border-style:dashed}.plan-zone .evidence-number{width:30px;height:36px;font-size:23px}.evidence-detail .actions button{white-space:normal;text-align:left}.connection-card{border-left:3px solid #e8bb71}.connection-card p{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:650px){.evidence-plan{grid-template-columns:1fr}.evidence-fields{grid-template-columns:1fr}.evidence-fields dt{padding-bottom:0;border:0}.evidence-fields dd{padding-top:4px}.evidence-detail{padding:14px}.record-heading{gap:12px}}@media(prefers-reduced-motion:reduce){.photo-frame img{transition:none}}

.investigation-route{border-top:3px solid var(--accent)}.step-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.step-list li{border-top:2px solid #526073;padding-top:12px}.step-list li.complete{border-color:var(--accent)}.step-list button{text-align:left;width:100%}.step-list small{display:block;font-size:14px;line-height:1.6;margin:8px 0;color:var(--muted)}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.guide-grid h3{font-size:16px}.rules-list{padding-left:24px}.rules-list li{padding:9px 0;line-height:1.7}#rules-dialog{width:min(900px,94vw);max-width:900px}#rules-dialog>form{text-align:right}@media(max-width:750px){.step-list{grid-template-columns:1fr}.guide-grid{grid-template-columns:1fr}}
