:root{color-scheme:dark;--ice:#d4d5d2;--dark:#1a1c1d;--line:#d4d5d22e;--wine:#302326;--slate:#1b2225;--muted:#a3a8a8;--accent:#bd909b;--mono:'Space Mono',monospace;--display:'Bebas Neue','Arial Narrow',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--dark);color:var(--ice);font-family:Arial,Helvetica,sans-serif}body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(#d4d5d205 1px,transparent 1px),linear-gradient(90deg,#d4d5d205 1px,transparent 1px);background-size:42px 42px}body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:10;background:repeating-linear-gradient(transparent 0 3px,#ffffff03 3px 4px)}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{touch-action:manipulation}button{font:inherit;color:inherit}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}a{color:inherit}h1,h2,h3{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.04em;margin:0}p{line-height:1.75}button{border-radius:0}.masthead{padding:26px 4vw;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;background:#171a1bee}.brand{font:32px/1 var(--display);letter-spacing:.12em;text-decoration:none}.brand span{display:block;font:8px/1.8 var(--mono);letter-spacing:.16em;margin-top:8px;color:var(--muted)}.archive-return,.eyebrow,.case-seal,.text-button,.meta,.review-progress,footer,.tag{font:10px/1.8 var(--mono);letter-spacing:.1em}.archive-return{text-decoration:none}.archive-return:hover{color:var(--accent)}main{max-width:1560px;margin:auto;padding:0 4vw}.case-heading{padding:45px 0 36px;display:flex;gap:28px;justify-content:space-between;align-items:end}.eyebrow{color:var(--accent);margin:0 0 14px}.case-heading h1{font-size:clamp(56px,7vw,100px);line-height:1}.introduction{color:#bec5c6;margin-bottom:0;font-size:16px}.case-seal{padding:16px 20px;border:1px solid var(--line);white-space:nowrap;background:var(--slate)}.case-seal small{display:block;color:var(--muted);font-size:8px;margin-top:8px}.status-dot{display:inline-block;width:6px;height:6px;background:var(--accent);margin-right:8px}.workspace{display:grid;grid-template-columns:215px minmax(0,1fr);border:1px solid var(--line);min-height:660px;background:#1b1e1ef2}.case-rail{padding:28px 20px;border-right:1px solid var(--line);background:#171a1b}.case-rail nav{display:grid;gap:8px;margin-top:24px}.case-rail nav button{display:flex;gap:14px;align-items:center;text-align:left;background:transparent;border:1px solid transparent;border-left:2px solid transparent;padding:14px 10px;color:var(--muted);font:10px var(--mono)}.case-rail nav button span{font:18px var(--display);letter-spacing:.04em;color:var(--ice)}.case-rail nav button[aria-pressed=true]{background:var(--wine);border-color:#a0747e30;border-left-color:var(--accent)}.review-progress{margin-top:44px;font-size:9px}progress{display:block;width:100%;height:3px;margin-top:14px;accent-color:var(--accent);border:0}progress::-webkit-progress-bar{background:#353a3c}progress::-webkit-progress-value{background:var(--accent)}.text-button{border:0;background:transparent;padding:12px 0;color:var(--accent);text-align:left;min-height:44px}.rail-note{font-size:12px;color:var(--muted);margin-top:30px}.workspace-content{min-width:0;padding:32px}.workspace-content h2{font-size:40px}.section-top{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}.meta{color:var(--muted);font-size:9px}.briefing-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:30px}.briefing-copy p{font-size:15px;color:#bec5c6}.briefing-copy h3{font-size:26px;margin-top:28px}.button{display:inline-block;background:var(--wine);border:1px solid #94606e;color:var(--ice);padding:14px 20px;font:11px/1.6 var(--mono);letter-spacing:.06em;text-decoration:none;min-height:46px}.button:hover:not(:disabled){background:#493039}.button.secondary{background:transparent;border-color:var(--line)}.briefing-copy .button{margin-top:20px}.image-slot{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:180px;border:1px solid #a0747e45;background:linear-gradient(145deg,#262b30,#191d20);text-align:center;overflow:hidden;padding:22px}.image-slot::before,.image-slot::after{content:'+';position:absolute;color:#a0747e80;font:18px var(--mono)}.image-slot::before{top:7px;left:10px}.image-slot::after{bottom:7px;right:10px}.image-slot .slot-symbol{font:36px var(--display);color:#a0747e80;letter-spacing:.12em}.image-slot strong{font:12px var(--display);letter-spacing:.16em}.image-slot small{color:var(--muted);font:8px/1.7 var(--mono);letter-spacing:.05em}.image-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.scene-slot{min-height:325px}.caption{font:9px/1.8 var(--mono);color:var(--muted);border-bottom:1px solid var(--line);padding:12px 0}.draft-note{padding:14px 18px;border-left:2px solid #94606e;background:#30232670;color:#b9b8b8;font-size:12px;line-height:1.7;margin-top:24px}.file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.file-card{padding:0;background:#1b2225;border:1px solid var(--line);text-align:left;display:flex;flex-direction:column}.file-card:hover{border-color:var(--accent)}.file-card .image-slot{width:100%;min-height:115px;border:0;border-bottom:1px solid var(--line)}.file-card .card-copy{padding:18px;display:block}.file-card h3{font-size:24px;margin:8px 0}.file-card p{font-size:12px;color:var(--muted);margin:0}.tag{display:block;font-size:8px;color:var(--accent)}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.person{border:1px solid var(--line);background:var(--slate)}.person .image-slot{aspect-ratio:4/5;border:0;border-bottom:1px solid var(--line)}.person-copy{padding:18px}.person h3{font-size:30px}.person p{font-size:13px;color:#b9bfc0}.person .meta{font-size:8px}.investigators{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.investigators .person{display:grid;grid-template-columns:90px 1fr}.investigators .image-slot{min-height:120px;aspect-ratio:auto;padding:8px}.investigators .image-slot small{display:none}.investigators .person-copy{padding:14px}.investigators h3{font-size:24px}.investigators p{margin-bottom:0}.board-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.board-columns h3{font-size:24px;margin-bottom:18px}.theories,.evidence-list{display:grid;gap:12px}.choice{display:flex;gap:12px;padding:16px;background:var(--slate);border:1px solid var(--line);cursor:pointer;line-height:1.6;font-size:13px}.choice:has(input:checked){background:var(--wine);border-color:var(--accent)}.choice:has(input:disabled){opacity:.55;cursor:default}.choice input{accent-color:var(--accent);flex-shrink:0;margin-top:4px}.choice strong{display:block;margin-bottom:5px;font-size:14px}.choice small{color:var(--muted)}.report-actions{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.report-actions p{font:10px/1.8 var(--mono);color:var(--muted)}footer{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:8px;color:var(--muted);padding:20px 0}dialog{position:fixed;inset:0;margin:auto;width:min(880px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #94606e;background:#1b2225;color:var(--ice);padding:36px;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#0b0e10df;backdrop-filter:blur(5px)}dialog h2{font-size:46px;padding-right:40px;margin:12px 0 24px}dialog h3{font-size:24px;margin-top:26px}dialog p,dialog li{font-size:15px;line-height:1.85;color:#c3c8c8}dialog .image-slot{min-height:220px;margin-bottom:24px}dialog .close{position:absolute;right:16px;top:12px;min-width:44px;min-height:44px;border:0;background:none;font:24px var(--mono)}.dialog-bottom{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-top:28px;border-top:1px solid var(--line);padding-top:20px}#notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:20;background:var(--wine);border:1px solid var(--accent);padding:16px 22px;max-width:calc(100% - 32px);font:12px/1.8 var(--mono);box-shadow:0 10px 30px #0008}#notice:empty{display:none}.result-mark{font:64px var(--display);color:var(--accent);border-bottom:1px solid var(--line);padding-bottom:18px}@media(min-width:1550px){.workspace{min-height:720px}}@media(max-width:1000px){.workspace{grid-template-columns:180px minmax(0,1fr)}.workspace-content{padding:24px}.briefing-grid,.board-columns{grid-template-columns:1fr}.file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-seal{display:none}.people-grid{gap:10px}.person-copy{padding:12px}.person h3{font-size:25px}.investigators{grid-template-columns:1fr}}@media(max-width:650px){.masthead{padding:20px}.brand{font-size:28px}.brand span{font-size:7px}.archive-return{font-size:8px;max-width:100px;text-align:right}main{padding:0 16px}.case-heading{padding:30px 0}.case-heading h1{font-size:58px}.introduction{font-size:14px}.workspace{display:block}.case-rail{padding:14px;border-right:0;border-bottom:1px solid var(--line)}.case-rail>.eyebrow,.rail-note{display:none}.case-rail nav{grid-template-columns:repeat(4,1fr);gap:4px;margin:0}.case-rail nav button{display:block;padding:10px 6px;font-size:8px}.case-rail nav button span{display:block;font-size:15px;line-height:1.2;margin-top:5px}.review-progress{margin-top:15px}.case-rail>.text-button{padding-bottom:0;font-size:8px}.workspace-content{padding:20px 16px}.section-top{gap:12px}.workspace-content h2{font-size:32px}.section-top .meta{font-size:8px;text-align:right}.file-grid{gap:10px}.file-card .card-copy{padding:12px}.file-card h3{font-size:22px}.people-grid{grid-template-columns:1fr}.people-grid .person{display:grid;grid-template-columns:110px 1fr}.person .image-slot{aspect-ratio:auto;min-height:180px;padding:12px}.person .image-slot small{font-size:7px}.report-actions{align-items:start;flex-direction:column}dialog{padding:28px 20px}dialog h2{font-size:36px}footer{flex-wrap:wrap}.scene-slot{min-height:220px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Physical office entry: artwork and interaction coordinates share one aspect ratio. */
.office-start{display:none}.return-desk{margin-top:24px}.in-room .return-desk,.in-room .case-heading,.in-room .workspace,.in-room main>footer{display:none}.in-room .office-start{display:block}.in-room .masthead{position:absolute;inset:0 0 auto;z-index:3;background:linear-gradient(#090d12e8,transparent);border:0;padding:24px 3vw;pointer-events:none}.in-room .masthead a{pointer-events:auto;text-shadow:0 2px 10px #000}.in-room main{max-width:none;padding:0}.office-start{background:#0b0f13;min-height:100dvh;padding-top:0}.office-scene{position:relative;width:100%;aspect-ratio:1672/941;isolation:isolate;overflow:hidden}.office-art{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:-3}.office-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#080c1355,transparent 27%,transparent 72%,#080b10d9);z-index:-1}.office-title{position:absolute;left:3%;bottom:3.5%;pointer-events:none;text-shadow:0 3px 15px #000,0 1px 6px #000}.office-title .eyebrow{color:#d9b7bf;font-size:clamp(7px,.7vw,11px);margin-bottom:8px}.office-title h1{font-size:clamp(36px,4.5vw,78px);line-height:1}.office-title>p:last-child{font-size:clamp(11px,1vw,16px);margin-bottom:0;color:#d4d5d2}.room-hotspot{position:absolute;border:1px solid transparent;background:transparent;transition:background .2s,border-color .2s,box-shadow .2s;padding:0;display:flex;align-items:end;justify-content:center}.room-hotspot:hover,.room-hotspot:focus-visible{border-color:#bd909b99;background:#bd909b0c;box-shadow:inset 0 0 24px #bd909b12}.room-hotspot>span{display:block;background:#11181bea;border:1px solid #ad7e8a66;padding:8px 14px;font:clamp(7px,.7vw,10px)/1.6 var(--mono);letter-spacing:.06em;transform:translateY(50%);color:#be9ba4}.room-hotspot strong{display:block;color:#e4edf1;font:clamp(12px,1.25vw,20px)/1.4 var(--display);letter-spacing:.05em}.room-pc{left:25%;top:30%;width:36%;height:32%}.room-dossiers{left:63%;top:31%;width:35%;height:34%}.room-wallboard{left:66%;top:1%;width:32%;height:26%;align-items:center}.room-wallboard>span{transform:none;position:absolute;bottom:5%;right:5%}.office-controls{padding:18px 3vw 22px;display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid #a0747e40;background:linear-gradient(#14191d,#101519)}.office-controls .eyebrow{margin:0;font-size:9px}.office-controls p{font-size:12px;color:#aeb8bc;margin:6px 0 0}.office-controls nav{display:flex;gap:10px}.office-controls .button{font-size:9px;padding:12px}.office-controls .meta{white-space:nowrap}@media(min-aspect-ratio:19/10) and (min-width:900px){.office-scene{width:min(100%,calc((100dvh - 100px)*1.7768));margin:auto}.office-start{display:flex!important;flex-direction:column;justify-content:end}.office-controls{flex-shrink:0}}@media(max-width:900px){.office-controls{flex-wrap:wrap;gap:15px}.office-controls>div{flex:1}.office-controls nav{order:3;width:100%}.office-controls nav button{flex:1}.office-title{bottom:5%}.in-room .brand{font-size:24px}.in-room .brand span{font-size:6px}.in-room .archive-return{font-size:8px}}@media(max-width:650px){.office-start{padding-top:78px;min-height:100dvh}.in-room .masthead{position:absolute;height:78px;background:#11161b;padding:16px}.office-scene{width:177.68%;margin-left:-38%;aspect-ratio:1672/941}.room-dossiers{left:63%;width:30%}.room-title{font-size:36px}.office-title{left:24%;bottom:2%}.office-title .eyebrow{font-size:6px}.office-title h1{font-size:30px}.office-title>p:last-child{font-size:10px}.room-hotspot>span{padding:5px 8px;font-size:6px}.room-hotspot strong{font-size:12px}.room-wallboard>span{right:25%;bottom:2%}.office-start{overflow:hidden}.office-controls{padding:20px 16px}.office-controls>div{flex-basis:100%}.office-controls .button{font-size:8px;padding:10px 8px;min-height:48px}.office-controls .meta{font-size:8px}.office-controls nav{order:0;gap:6px}.office-controls p{max-width:34ch}.return-desk{margin-top:18px}}@media(prefers-reduced-motion:reduce){}
/* Single-screen novel: the room never leaves; all case interfaces are modal windows. */
html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}.in-room main{position:fixed;inset:0;overflow:hidden}.in-room .masthead{position:fixed;z-index:2;height:76px;padding:20px 3vw;background:linear-gradient(#0a0f16e8,transparent)}.in-room .office-start{display:block!important;position:absolute;inset:0;min-height:0;height:100%;padding:0;overflow:hidden;background:radial-gradient(#20262c,#080c10)}.office-scene{position:absolute;top:50%;left:50%;width:min(100vw,calc((100dvh - 96px)*1.7768));height:auto;aspect-ratio:1672/941;margin:0;transform:translate(-50%,-50%);max-width:none;overflow:hidden}.office-art{object-fit:contain}.office-controls{position:absolute;bottom:0;left:0;right:0;min-height:76px;max-height:96px;padding:12px 3vw;flex-wrap:nowrap;background:#11171df2;z-index:2}.office-controls p{font-size:11px}.office-controls nav{order:0;width:auto;flex-shrink:0}.office-controls .button{font-size:9px;white-space:nowrap}.office-title{left:3%;bottom:4%}.office-title h1{font-size:clamp(30px,4vw,68px)}.room-shelf{left:30%;top:4%;width:32%;height:23%;align-items:end}.room-shelf>span{transform:none}.room-wallboard{z-index:1}.room-hotspot>span{font-size:clamp(7px,.65vw,10px)}.room-hotspot strong{font-size:clamp(12px,1.15vw,20px)}#workspace-dialog{padding:0;width:min(1080px,calc(100vw - 64px));height:min(790px,calc(100dvh - 80px));max-height:none;overflow:hidden;background:#1b2225;box-shadow:0 24px 100px #000b}#workspace-dialog[open]{display:flex;flex-direction:column}dialog::backdrop{background:#05090d80;backdrop-filter:blur(2px)}.game-window-bar{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#302326;border-bottom:1px solid #94606e;font:11px/1.8 var(--mono);letter-spacing:.08em}.window-close{min-width:90px;min-height:40px;background:#1b2225;border:1px solid #94606e;color:var(--ice);font:10px var(--mono)}.window-close:hover{background:#493039}.window-status{padding:10px 24px;display:flex;align-items:center;gap:20px;flex-shrink:0;border-bottom:1px solid var(--line);font:9px/1.5 var(--mono);color:var(--muted)}.window-status progress{width:90px;margin:0 0 0 auto}.workspace-content{flex:1;overflow:auto;overscroll-behavior:contain;min-height:0;padding:24px 28px;scrollbar-color:#78545e #171a1b}.window-tools{display:flex;gap:24px;align-items:center;flex-shrink:0;padding:10px 24px;border-top:1px solid var(--line);background:#171c20}.window-tools>.button{margin-left:auto;font-size:9px}.window-tools>.text-button{font-size:9px}.workspace-content .section-top{margin-bottom:20px}.workspace-content .briefing-grid{grid-template-columns:1.15fr 1fr}.workspace-content .scene-slot{min-height:220px}.workspace-content .people-grid .image-slot{min-height:150px;max-height:230px}.workspace-content .image-slot small{font-size:8px}#file-dialog,#report-dialog{max-height:calc(100dvh - 80px);overscroll-behavior:contain;scrollbar-color:#78545e #171a1b}.window-status #case-status{color:var(--accent)}@media(max-width:900px){.office-controls>div p{display:none}.office-controls{gap:12px}.office-controls>.meta{font-size:8px}.workspace-content .briefing-grid{grid-template-columns:1fr}.office-controls nav button{flex:auto}}@media(max-width:650px){.in-room .masthead{height:70px;padding:18px}.in-room .brand{font-size:25px}.office-scene{width:100vw;left:50%;top:48%;margin:0;transform:translate(-50%,-50%)}.office-title h1{font-size:24px}.office-title .eyebrow,.office-title>p:last-child{display:none}.room-hotspot>span{padding:4px 5px;font-size:6px}.room-hotspot strong{font-size:9px}.room-wallboard>span{right:4%}.office-controls{height:130px;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 16px}.office-controls>div{flex-basis:auto}.office-controls>div .eyebrow{font-size:8px}.office-controls>.meta{text-align:right}.office-controls nav{grid-column:1/-1;grid-row:2;width:100%;gap:6px}.office-controls .button{font-size:8px;min-height:44px;white-space:normal}#workspace-dialog{width:calc(100vw - 16px);height:calc(100dvh - 24px)}.game-window-bar{padding:8px 12px;font-size:8px}.window-status{padding:8px 12px;font-size:7px;gap:10px}.window-status progress{width:40px}.workspace-content{padding:18px 14px}.window-tools{padding:8px 12px;gap:10px}.window-tools .text-button{font-size:7px}.window-tools .button{font-size:8px;padding:10px}.workspace-content .people-grid .image-slot{min-height:150px}#file-dialog,#report-dialog{max-height:calc(100dvh - 24px);width:calc(100vw - 16px)}}@media(max-height:550px) and (min-width:651px){.in-room .masthead{height:45px;padding:10px 20px}.in-room .brand{font-size:22px}.in-room .brand span{display:none}.office-controls{min-height:58px;height:58px}.office-controls>div p{display:none}.office-scene{width:min(100vw,calc((100dvh - 58px)*1.7768));top:calc(50% - 20px)}#workspace-dialog{height:calc(100dvh - 16px)}.game-window-bar{padding:4px 12px}.window-tools{padding:4px 12px}}
/* Portraits fill their dossier frame and keep faces near the top of the crop. */
.people-grid .person>.image-slot{width:100%;height:230px;aspect-ratio:auto}.person .image-slot img{object-position:50% 22%}.investigators .person>.image-slot{width:100%;height:100%;min-height:120px}@media(max-width:650px){.people-grid .person>.image-slot{height:100%;min-height:180px}}
/* Evidence photographs retain their complete composition in the opened case. */
#file-dialog>.image-slot{aspect-ratio:3/2;min-height:0;width:100%;padding:0}#file-dialog>.image-slot img{object-fit:contain}
.case-clock{display:inline-block;font:700 20px/1.2 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.08em;color:#e4edf1}.case-clock.urgent{color:#ff9eac}.room-timer{display:flex;gap:18px;align-items:center;margin-left:auto;padding:10px 14px;background:#151b20e8;border:1px solid #94606e80}.room-timer>[data-game-state]{font:8px/1.6 var(--mono);letter-spacing:.08em;color:var(--accent)}.in-room .masthead{display:flex}.window-status>.case-clock{font-size:16px}#file-dialog>.case-clock,#report-dialog>.case-clock{display:block;margin:0 60px 18px 0;font-size:18px}.tutorial-rules{border-left:2px solid var(--accent);padding:0 0 0 18px;margin:24px 0}.tutorial-rules h3{color:var(--accent)}@media(max-width:650px){.room-timer{gap:8px;padding:7px}.room-timer>[data-game-state]{max-width:75px;font-size:6px}.case-clock{font-size:17px}.window-status{flex-wrap:wrap}.window-status>.case-clock{font-size:14px}}
.deduction{border:1px solid var(--line);margin:24px 0;padding:20px;min-width:0}.deduction legend{font:24px/1.3 var(--display);letter-spacing:.04em;padding:0 10px;color:var(--accent)}.board-intro{font-size:14px;color:#bbc3c5}.document-meta{font:10px/1.8 var(--mono)!important;border-block:1px solid var(--line);padding:12px 0;color:var(--accent)!important}@media(max-width:650px){.deduction{padding:14px}.deduction legend{font-size:20px}}
/* Investigation applications, paper records, and physical evidence board. */
.terminal-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:12px}.terminal-tabs button{min-height:40px;padding:8px 14px;border:1px solid var(--line);background:#141b20;color:var(--ice);font:10px var(--mono)}.terminal-tabs button[aria-pressed=true]{background:var(--wine);border-color:var(--accent)}.mode-picker{border:1px solid var(--line);padding:14px;margin:20px 0}.mode-picker legend{font:10px var(--mono);color:var(--accent)}.mode-picker label{display:block;font-size:14px;padding:8px}.mode-picker input{accent-color:var(--accent);margin-right:10px}.tutorial-steps{padding-left:20px;font-size:14px;line-height:1.8}.tutorial-steps li{margin:10px 0}.case-attachment{margin:0}.case-attachment img{display:block;width:100%;max-height:300px;object-fit:cover;object-position:50% 25%}.case-attachment figcaption{font:8px/1.7 var(--mono);color:var(--muted);padding:8px 0}.person .case-attachment img{height:220px}.investigators .case-attachment img{height:150px}.incoming-message{border:1px solid var(--line);background:#141b20;padding:20px;margin:16px 0}.incoming-message h3{font-size:28px}.incoming-message p{font-size:14px;color:#c2c9ca}.request-list{display:grid;gap:8px;margin-bottom:20px}.request-list>div{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:12px 14px;border:1px solid var(--line);background:#1c242a}.request-list b{font-size:13px}.request-list small{display:block;font-size:12px;color:var(--muted);line-height:1.6;max-width:50ch}.request-list .button{font-size:9px;flex-shrink:0}.file-card{min-height:150px}.file-card:disabled{opacity:.45}.paper-description{font-style:italic}#file-dialog{background:#ddd9cf;color:#25292b;border-color:#9e8b89}#file-dialog .eyebrow,#file-dialog .case-clock{color:#6e3543}#file-dialog h2{border-bottom:2px solid #6e3543;padding-bottom:18px}#file-dialog p,#file-dialog li{color:#333c40}#file-dialog h3{color:#402f34}#file-dialog .document-meta{color:#6e3543!important;border-color:#3333}#file-dialog .button{color:#f1e9e9;background:#453139}#file-dialog .document-section{border-bottom:1px solid #29303825;padding:6px 0 18px}#file-dialog .paper-toolbar{position:sticky;top:-36px;background:#ddd9cff5;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #3333}.pin-passage{border:1px dashed #81515e;color:#653541;background:#ba9aa522;padding:10px 14px;font:10px var(--mono);min-height:42px}.pin-passage:hover,.pin-passage.is-pinned{background:#653541;color:#f8eff2}.attachment-disclosure{padding:20px 0}.attachment-disclosure summary{cursor:pointer;font:11px var(--mono);padding:12px 0}.attachment-disclosure .case-attachment{margin-top:15px}.attachment-disclosure img{max-height:none;object-fit:contain}.compare-selectors,.comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare-selectors{margin:20px 0}.compare-selectors label,.connection-controls label{font:9px/1.8 var(--mono);color:var(--accent)}select{display:block;width:100%;max-width:100%;min-height:44px;padding:9px;background:#151c21;color:var(--ice);border:1px solid var(--line);font:12px Arial,sans-serif}.compare-paper{padding:22px;background:#d9d4c8;color:#242c31;min-width:0}.compare-paper h3{color:#50313a;font-size:25px}.compare-paper p{font-size:14px;line-height:1.85}.compare-paper .document-meta{color:#653541!important;border-color:#3334}.thread-board{position:relative;isolation:isolate;min-height:250px;background:radial-gradient(#66513d55 1px,transparent 1.5px),#362d27;background-size:5px 5px;border:8px solid #534339;padding:24px}.pin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.pinned-card{position:relative;background:#d9d1be;color:#24282b;box-shadow:3px 6px 9px #0008;transform:rotate(-1deg);border:2px solid transparent}.pinned-card:nth-child(even){transform:rotate(1.5deg)}.pinned-card::before{content:'';position:absolute;top:-7px;left:48%;width:11px;height:11px;border-radius:50%;background:#a73242;box-shadow:1px 2px 2px #0009;z-index:2}.pinned-card.selected{border-color:#d85f72;box-shadow:0 0 0 2px #d85f72,3px 6px 9px #0008}.pin-select{border:0;background:none;color:inherit;text-align:left;padding:18px;width:100%;min-height:165px}.pin-select>span{font:10px var(--mono);color:#653541}.pin-select p{font-size:13px;line-height:1.7}.source-link{background:#c4baa6;color:#403239;border:0;border-top:1px solid #3333;width:100%;padding:10px;font:9px var(--mono);min-height:40px}.board-threads{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.board-threads path{stroke:#d94556;stroke-width:3;fill:none;filter:drop-shadow(1px 2px 1px #000)}.board-threads .pending-thread{stroke-dasharray:8 5;opacity:.6}.connection-controls{display:flex;gap:12px;align-items:end;margin:22px 0;flex-wrap:wrap}.connection-controls label{flex:1;min-width:190px}.established-findings{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.established-findings article{border:1px solid var(--line);padding:16px;opacity:.6}.established-findings article.established{border-color:var(--accent);background:var(--wine);opacity:1}.established-findings h3{font-size:23px;margin-top:10px}.established-findings p{font-size:13px}.empty-board{font-size:14px;color:#d4c3ae;grid-column:1/-1}#workspace-dialog[data-surface=cork]{background:#23201e}dialog[open]{animation:case-window-in .16s ease-out}@keyframes case-window-in{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}@media(max-width:750px){.pin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison{grid-template-columns:1fr}.compare-selectors{gap:10px}.request-list>div{align-items:start;flex-direction:column}.established-findings{grid-template-columns:1fr}.person .case-attachment img{height:100%;min-height:180px}.thread-board{padding:18px 12px}.pin-select{padding:12px}.terminal-tabs button{font-size:9px;padding:8px 10px}}@media(prefers-reduced-motion:reduce){dialog[open]{animation:none}}
.recording-index{padding:18px;margin:20px 0;border:1px solid #8c7378;background:#cbc5b7}.recording-index label{font:11px var(--mono);display:block}.recording-index input{display:block;width:100%;accent-color:#783849;margin:18px 0}.recording-index output{font:12px/1.7 var(--mono)}.index-marks{display:flex;justify-content:space-between;gap:10px;font:8px/1.7 var(--mono);margin-top:14px}
.pin-select p{color:#272b2e!important}.compare-paper p,.compare-paper li{color:#293239!important}.compare-paper .document-section h3{color:#51333c}.pin-select:focus-visible{outline:3px solid #8d3147;outline-offset:-4px}
.start-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch;margin:24px 0}.start-options .mode-picker{margin:0;min-width:0}.start-confirmation{border:1px solid #94606e;padding:18px;background:#302326}.start-confirmation h3{margin:0 0 14px;font-size:26px}.tutorial-accept{display:flex;align-items:flex-start;gap:10px;font:13px/1.7 Arial,sans-serif}.tutorial-accept input{margin-top:5px;accent-color:var(--accent);flex-shrink:0}.start-confirmation p{font-size:12px!important;color:#bcc5c8}.start-confirmation .button{margin-top:8px}.briefing-copy:has(.start-options){min-width:0}.briefing-grid:has(.start-options){grid-template-columns:1.3fr 1fr}@media(max-width:850px){.briefing-grid:has(.start-options){grid-template-columns:1fr}}@media(max-width:500px){.start-options{grid-template-columns:1fr}}
.start-options[hidden]{display:none!important}.guided-practice-intro{padding:22px;border:1px solid #94606e;background:#302326;margin:22px 0}.guided-practice-intro h3{margin-top:0}.written-instructions summary{cursor:pointer;font:12px var(--mono);padding:12px 0;color:var(--accent)}#practice-dialog{padding:0;width:min(980px,calc(100vw - 40px));height:min(860px,calc(100dvh - 40px));max-height:none;background:#131c23;border:1px solid #bc8b99;overflow:auto}#practice-dialog::backdrop{background:#03080de0;backdrop-filter:blur(3px)}.practice-header{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#302326;padding:12px 24px;border-bottom:1px solid #94606e}.practice-header .eyebrow{margin:0}.practice-instruction{padding:24px 32px 18px;border-bottom:1px solid var(--line);background:#1c2830}.practice-instruction h2{font-size:42px;margin:8px 0}.practice-instruction p{font-size:17px;line-height:1.7;max-width:68ch;margin:8px 0}.practice-instruction small{color:#c7a3af;font:10px/1.7 var(--mono)}.practice-stage{min-height:330px;padding:30px;display:grid;place-items:center;background:radial-gradient(#22323e,#10181f)}.practice-paper{background:#e0dacb;color:#232a2e;padding:30px;max-width:620px;width:100%;box-shadow:0 12px 30px #0008;transform:rotate(-.5deg)}.practice-paper h3{font-size:34px;margin:12px 0}.practice-paper p{color:#283136;font-size:18px;line-height:1.9}.practice-paper mark{background:#e8c875;color:#272313;padding:3px 7px}.practice-arrow{font:11px var(--mono);color:#7f3349;margin:20px 0 10px}.practice-target{outline:3px solid #e8c875;outline-offset:5px}.practice-target:disabled{outline:none}.practice-comparison{display:grid;grid-template-columns:1fr 1fr;gap:24px;width:100%}.practice-comparison .practice-paper{padding:25px}.practice-paper>span{font:10px var(--mono)}.time-clue{border:0;background:#e8c875;color:#232a2e;font:inherit;padding:3px 8px}.practice-cork{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:40px;background:#46382d;border:8px solid #6d5642;padding:30px;width:100%;isolation:isolate}.practice-card{z-index:1;text-align:left;background:#e0d7bf;color:#272b2e;padding:24px;border:3px solid transparent;box-shadow:2px 5px 10px #0009;position:relative;min-height:190px}.practice-card::before{content:'';position:absolute;top:-10px;left:45%;width:14px;height:14px;border-radius:50%;background:#ac3348}.practice-card.chosen{border-color:#b4425d}.practice-card span,.practice-card small{font:10px/1.7 var(--mono);display:block}.practice-card strong{font:44px var(--display);display:block;margin:16px 0}.practice-card p{color:#272b2e;font-size:15px}.practice-thread{position:absolute;top:35%;left:20%;right:20%;height:3px;background:#d83954;transform:rotate(13deg);opacity:0}.practice-thread.visible{opacity:1}.practice-count{font:12px var(--mono);margin:18px}.practice-relation{display:block;width:min(100%,400px);margin:22px 0;font:11px var(--mono);color:var(--accent)}.practice-relation select{margin-top:10px}.practice-finding{border-left:3px solid #b97f91;padding:28px;background:#2c2228;width:100%}.practice-finding h3{font-size:32px}.practice-finding p{font-size:16px;color:#d0d4d5}.practice-footer{position:sticky;bottom:0;z-index:3;background:#171e24;display:flex;gap:14px;align-items:center;justify-content:space-between;padding:12px 24px;border-top:1px solid var(--line)}.practice-footer>span{font:11px var(--mono);color:var(--muted)}#practice-feedback{font-size:14px;color:#edc7ce}.window-tools{flex-wrap:wrap;gap:12px}.window-tools>.text-button{font-size:8px}@media(max-width:650px){#practice-dialog{width:calc(100vw - 16px);height:calc(100dvh - 24px)}.practice-header{padding:10px 14px;gap:10px}.practice-header .eyebrow{font-size:8px}.practice-instruction{padding:18px}.practice-instruction h2{font-size:32px}.practice-instruction p{font-size:15px}.practice-stage{padding:20px;min-height:300px}.practice-paper{padding:20px}.practice-comparison{grid-template-columns:1fr;gap:15px}.practice-comparison .practice-paper{padding:18px}.practice-cork{padding:18px 10px;gap:15px}.practice-card{padding:14px 10px}.practice-card strong{font-size:36px}.practice-card span,.practice-card small{font-size:8px}.practice-footer{padding:10px 14px;gap:8px}.practice-footer button{padding:10px;font-size:9px}.practice-instruction h2{padding-right:0}.practice-finding{padding:20px}}
.practice-paper .eyebrow{color:#733448}.practice-paper .practice-arrow{color:#733448}
/* Touch and assistive technology: identical one-tap controls on every screen. */
.accessible-status{position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
button,select,summary{touch-action:manipulation}
button,select,summary,.mode-picker label,.tutorial-accept{min-height:48px}
.window-close,.close{min-width:48px;min-height:48px}
summary{display:flex;align-items:center;gap:8px}
summary::before{content:'▸';display:inline-block}details[open]>summary::before{content:'▾'}
:where(button,input,select,summary,a):focus-visible{outline:3px solid #f0cf7c;outline-offset:3px}
#file-dialog :where(button,input,summary):focus-visible,.compare-paper button:focus-visible{outline-color:#70233c}
.mode-picker label,.tutorial-accept{padding:10px 4px;cursor:pointer}
input[type=checkbox],input[type=radio]{width:22px;height:22px;flex-shrink:0}
input[type=range]{min-height:48px;touch-action:pan-y}
.workspace-content,dialog{overscroll-behavior:contain;scroll-padding-block:20px;-webkit-overflow-scrolling:touch}
.selection-count{font:13px/1.7 var(--mono);color:#e6d6bf}
@media(pointer:coarse),(max-width:650px){
 body::after{display:none}
 .office-controls nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .office-controls nav .button{font-size:11px;padding:10px 8px}
 .terminal-tabs{flex-wrap:wrap;gap:6px}
 .terminal-tabs button,.window-tools>.text-button,.source-link,.pin-passage{font-size:12px;min-height:48px;padding:12px}
 .window-tools{gap:6px;padding-bottom:max(8px,env(safe-area-inset-bottom))}
 .window-tools>.text-button{flex:1 1 42%;text-align:center}
 select{font-size:16px}
 .practice-footer button{font-size:11px;min-height:48px}
 .practice-header .window-close{font-size:11px;flex-shrink:0}
 .practice-stage{padding-bottom:30px}
 .practice-card span,.practice-card small,.meta,.tag{font-size:11px}
 .practice-card{padding:16px 12px}
 .pin-grid{grid-template-columns:1fr}
 .pinned-card,.pinned-card:nth-child(even),.practice-paper{transform:none}
 .pin-select{min-height:120px}.pin-select p{font-size:16px}
 .office-controls{padding-bottom:max(12px,env(safe-area-inset-bottom))}
 .masthead{padding-left:max(16px,env(safe-area-inset-left))!important;padding-right:max(16px,env(safe-area-inset-right))!important}
 #workspace-dialog,#practice-dialog{max-width:calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right) - 16px);max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px)}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.pinned-card.selected,.practice-card.chosen{outline:3px solid Highlight}.practice-target{outline-color:Highlight}button{border:1px solid ButtonText}}
.button,.pin-passage,.source-link,.terminal-tabs button,.time-clue{min-height:48px}
/* Compact terminal footer: secondary actions stay available in More. */
.window-tools{position:relative;justify-content:flex-start;flex-wrap:nowrap}
.window-tools>.text-button{flex:0 0 auto;font-size:11px;padding:10px 16px;text-align:center}
.terminal-more{margin-left:auto}
.terminal-more>summary{font:11px var(--mono);cursor:pointer;min-width:80px;justify-content:center;border:1px solid var(--line);padding:10px}
.terminal-more-menu{position:absolute;right:12px;bottom:calc(100% + 8px);display:grid;gap:8px;background:#171c20;border:1px solid #94606e;padding:12px;box-shadow:0 8px 30px #0009;min-width:240px;z-index:6}
.terminal-more:not([open])>.terminal-more-menu{display:none}
.terminal-more-menu button{width:100%;text-align:center;font-size:11px}
.carter-message{border:1px solid #94606e;background:#151d23;margin-bottom:24px}
.message-sender{display:flex;align-items:center;gap:18px;padding:20px;border-bottom:1px solid var(--line);background:#302326}
.message-sender img{width:80px;height:100px;object-fit:cover;object-position:50% 20%;filter:grayscale(1);border:1px solid #ad8b94}
.message-sender .eyebrow{font-size:11px;margin:0}.message-sender h3{font-size:32px;margin:8px 0}
.message-channel{font:11px/1.7 var(--mono);color:#d3bec5}
.message-letter{padding:20px 24px}.message-letter p{font-size:16px;color:#d7dedf}.message-letter h4{font:12px/1.8 var(--mono);color:#d9b5c2;margin:22px 0 12px}
.message-letter hr{border:0;border-top:1px solid var(--line);margin:24px 0}
.message-letter .message-provenance{font:11px/1.8 var(--mono);color:#b9b4b9}
.lore-source{margin-top:18px}.lore-source summary,.inbox-requests>summary{font:12px/1.7 var(--mono);color:#dfb7c4;cursor:pointer}
.inbox-requests{border-top:1px solid var(--line);padding-top:14px;margin-top:22px}
@media(max-width:650px){
 #workspace-dialog>.window-tools{padding:4px 10px max(4px,env(safe-area-inset-bottom));gap:6px;min-height:56px}
 #workspace-dialog>.window-tools>.text-button{flex:0 1 auto;padding:8px 14px;font-size:11px;min-height:48px}
 .terminal-more>summary{min-height:48px}
 .message-sender{padding:14px;gap:14px}.message-sender img{width:64px;height:80px}
 .message-sender h3{font-size:27px}.message-sender .eyebrow{font-size:10px}.message-channel{font-size:10px}
 .message-letter{padding:16px}.message-letter .button{width:100%;padding:12px 8px;font-size:11px}
}
.window-tools .terminal-more-menu button{font-size:12px;line-height:1.6;min-height:48px;padding:12px}
/* A quiet unread signal; opening the row unfolds Carter's letter in place. */
.carter-message>.message-sender{cursor:pointer;list-style:none;position:relative;width:100%;text-align:left}
.carter-message>.message-sender::before{display:none}
.carter-message>.message-sender::-webkit-details-marker{display:none}
.carter-message:not([open])>.message-letter{display:none}
.carter-message:not([open])>.message-sender{border-bottom:0}
.message-read-state,.message-expand{display:block;font:10px/1.8 var(--mono);letter-spacing:.05em;margin-top:8px}
.message-read-state{color:#dfbdc8}.message-expand{color:#dce3e5}
.inbox-unread{display:inline-block;font:9px/1.6 var(--mono);padding:2px 5px;margin-left:7px;border:1px solid #bf98a5;color:#ffe0ea}
.carter-message.is-unread>.message-sender,.inbox-unread{animation:unread-message-glow 3.2s ease-in-out infinite}
@keyframes unread-message-glow{0%,100%{box-shadow:inset 3px 0 #bd909b55;background-color:#302326}50%{box-shadow:inset 3px 0 #e2b5c3;background-color:#3a2930}}
.carter-message[open]>.message-letter{animation:message-reveal .2s ease-out}
@keyframes message-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.carter-message.is-unread>.message-sender,.inbox-unread,.carter-message[open]>.message-letter{animation:none}}
/* Photographic exhibits retain the full frame so details are never cropped away. */
.evidence-photograph{display:block;width:100%;height:auto;max-height:65dvh;object-fit:contain;background:#11181c;border:1px solid #8c7a72}
.photo-gallery{margin:28px 0;border-top:1px solid #786964;padding-top:20px}.photo-exhibit{min-width:0;padding:18px;border:1px solid #81717a;background:#172127;color:#d9dfe0;margin:16px 0}
.photo-exhibit p,.photo-exhibit h3{color:#d9dfe0!important}.photo-exhibit h3{font-size:26px}.photo-exhibit p{font-size:14px;line-height:1.8}
.photo-exhibit .photo-provenance,.photo-provenance{font:11px/1.8 var(--mono);overflow-wrap:anywhere}.photo-exhibit .photo-provenance{color:#dbbbc6!important}
.photo-actions,.comparison-modes{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.comparison-modes button[aria-pressed=true]{background:#493039;border-color:#d8a6b5}
#file-dialog .photo-exhibit .pin-passage{color:#f1dce3;background:#453139}.photo-exhibit .pin-passage{color:#f1dce3;border-color:#cfa9b4}
.pinned-card .evidence-photograph{max-height:200px;margin-bottom:12px}.photographic-leads{padding:18px;border:1px solid #b39472;background:#352c26;margin:20px 0}.photographic-leads h3{font-size:26px}.photographic-leads h4{font-size:15px}.photographic-leads p{font-size:14px}
@media(max-width:650px){.photo-exhibit{padding:12px}.photo-actions>*{flex:1 1 100%}.photo-comparison{gap:12px}.comparison-modes>*{flex:1}.terminal-tabs button{overflow-wrap:anywhere}}
.photo-comparison .evidence-photograph{height:300px;max-height:none;object-fit:contain}
@media(max-width:650px){.photo-comparison .evidence-photograph{height:240px}}
/* Packet notifications and sealed report progress. */
.case-alert{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid #936774;background:#33252b;color:#e9d9df;flex-shrink:0;font:11px/1.6 var(--mono)}
.case-alert[hidden]{display:none}.case-alert .text-button{min-width:80px;flex-shrink:0;padding:8px;text-align:center}.case-alert>span{overflow-wrap:anywhere}
[data-inbox-count].has-unread{color:#ffe0ea;animation:unread-message-glow 3.2s ease-in-out infinite}
.contact-message{border:1px solid #71616a;margin:12px 0;background:#151d23}.contact-message>summary{display:block;position:relative;padding:16px 18px;cursor:pointer;list-style:none}.contact-message>summary::before{display:none}.contact-message strong{display:block;font:20px/1.5 var(--display);letter-spacing:.05em}.contact-message .eyebrow{display:block;margin:0 0 6px}.contact-message.is-unread>summary{border-left:3px solid #d7a8b7;background:#30252a}.contact-message-body{padding:4px 18px 18px}.contact-message-body .button{margin:5px 8px 5px 0}.record-roadmap{margin-top:20px}.record-roadmap>summary{font:12px var(--mono);color:#dfb7c4;cursor:pointer}
.report-checklist{margin:22px 0;border:1px solid #827078;padding:18px}.report-checklist>h3{font-size:28px}.report-checklist>article{display:flex;align-items:flex-start;gap:14px;border-top:1px solid var(--line);padding:18px 0}.report-checklist h4{margin:6px 0;font-size:17px}.report-checklist .answer-check{font:26px var(--mono);color:#d6bcc5}.report-checklist .answer-recorded{background:#293036;padding-inline:12px}.report-checklist p{font-size:13px}.answer-recorded .tag{color:#d9d8d5}
.report-choice{border:1px solid #b495a1;padding:18px;margin:20px 0}.report-choice legend{font:14px/1.7 var(--mono);padding:0 8px}.report-choice label{display:flex;gap:12px;align-items:flex-start;padding:12px 4px;min-height:48px;cursor:pointer;font-size:15px;line-height:1.7}.report-choice input{flex-shrink:0;accent-color:#bc8b99;margin-top:2px}.report-choice label:has(input:checked){background:#382930}.report-choice p{font-size:12px}
.score-summary{display:flex;flex-direction:column;gap:10px;padding:24px;border:1px solid #bd909b;background:#302326}.score-summary>strong{font:72px/1 var(--display)}.score-summary>span{font:11px/1.7 var(--mono)}.score-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.score-counts>div{border:1px solid var(--line);padding:14px}.score-counts dt{font-size:13px}.score-counts dd{font:36px var(--display);margin:10px 0 0}.answer-review{border-top:1px solid var(--line);padding:20px 0}.ranking-note{padding:14px;background:#28252a;border-left:2px solid #bd909b;font-size:13px!important}
@media(max-width:650px){#workspace-dialog>.window-tools>.text-button{font-size:10px;padding:8px;min-width:48px}.terminal-more>summary{min-width:64px;font-size:10px}.case-alert{padding:5px 10px;font-size:10px;gap:6px}.case-alert .text-button{min-width:64px;font-size:10px}.case-alert>span{max-height:3.2em;overflow:hidden}.report-choice{padding:12px}.score-counts{gap:6px}.score-counts>div{padding:10px}.score-counts dt{font-size:11px}}
@media(prefers-reduced-motion:reduce){[data-inbox-count].has-unread{animation:none}}
.next-step{padding:18px;border:1px solid #b294a0;background:#30262c;margin:0 0 22px}.next-step>.eyebrow{display:block;margin-bottom:10px}.next-step h3{font-size:28px;margin:0}.next-step p{font-size:14px;margin:12px 0}.next-step>.button{margin:4px 0 10px}.playthrough-route>summary{font:11px/1.7 var(--mono);cursor:pointer;color:#e0bbc8}.playthrough-route li{font-size:14px}.playthrough-route ol{padding-left:22px}
@media(max-width:650px){.next-step{padding:14px}.next-step h3{font-size:25px}.next-step>.button{width:100%;padding:12px 8px;font-size:11px}}
.contact-message>.contact-message-heading{display:flex;align-items:center;gap:18px}
.contact-avatar{display:block;width:80px;height:100px;flex-shrink:0;object-fit:cover;object-position:50% 20%;filter:grayscale(1);border:1px solid #ad8b94}
.contact-message-heading-copy{min-width:0;overflow-wrap:anywhere}
@media(max-width:650px){.contact-message>.contact-message-heading{gap:14px;padding:14px}.contact-avatar{width:64px;height:80px}}
/* Desktop case window uses the screen, capped at full-HD dimensions. */
@media(min-width:900px){
 #workspace-dialog{width:min(1920px,100vw);height:min(1080px,100dvh);max-width:100vw;max-height:100dvh}
 #file-dialog,#report-dialog{width:min(1440px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}
}
.report-checklist article>div{min-width:0;flex:1}.report-checklist article .button{margin:10px 0 0;white-space:normal}
.notification-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.notification-copy>strong{font:700 11px/1.5 var(--mono);color:#f3d6e0;letter-spacing:.06em}.notification-copy>span{font:12px/1.6 Arial,sans-serif;color:#e0d8dc;overflow-wrap:anywhere}.notification-dismiss{width:44px;min-width:44px;min-height:48px;border:1px solid #a98b9644;background:none;color:#e6ced7;font-size:24px}.case-alert>.text-button{font-size:11px;min-width:108px}.desk-notification{position:fixed;bottom:16px;right:16px;width:min(540px,calc(100vw - 32px));z-index:5;border:1px solid #bd909b;box-shadow:0 8px 25px #0008}
@media(max-width:650px){.case-alert{gap:6px;padding:7px 10px}.notification-copy>strong{font-size:9px}.notification-copy>span{font-size:12px}.case-alert>.text-button{min-width:80px;font-size:9px}.notification-dismiss{min-width:44px}.case-alert>.notification-copy{max-height:none;overflow:visible}}
mark[data-user-highlight]{background:#f3d44e!important;color:#24200e!important;border-radius:2px;box-shadow:0 1px 0 #b7942499;padding:1px 0;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.document-section p,.message-letter>p,.contact-message-body>p,[data-highlight-practice]{user-select:text;-webkit-user-select:text;cursor:text}
.document-section p::selection,.message-letter>p::selection,.contact-message-body>p::selection,[data-highlight-practice]::selection{background:#efd35eaa;color:#17170e}
.selection-highlighter{position:fixed;z-index:20;min-height:48px;max-width:230px;background:#f3d44e;color:#24200e;border:1px solid #8f782a;padding:12px 16px;box-shadow:0 5px 20px #0008;font:11px/1.7 var(--mono)}
.highlight-practice-status{padding:14px;border-left:3px solid #f3d44e;color:#f0dfb2!important}.highlight-practice-key{font:12px/1.7 var(--mono);color:#e6cc78}
/* Portrait photographs must not inherit the landscape attachment crop. */
.people-grid .person>.case-attachment img,.investigators .person>.case-attachment img{width:100%;height:clamp(260px,29vh,360px);min-height:0;max-height:none;object-fit:contain;object-position:center;background:#11171b}
@media(max-width:750px){.people-grid .person>.case-attachment img,.investigators .person>.case-attachment img{height:240px}}
@media(max-width:650px){.people-grid .person>.case-attachment img,.investigators .person>.case-attachment img{height:100%;min-height:180px;max-height:300px;object-fit:contain}}
