:root{color-scheme:dark;--bg:#0a151e;--panel:#12232f;--line:#304b5c;--ink:#e9f3f6;--muted:#a7bdc9;--cyan:#77dded;--amber:#e7bb67}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 20% 0,#173040,var(--bg) 60%);color:var(--ink);font:14px/1.55 system-ui,sans-serif}a{color:var(--cyan);text-underline-offset:3px}button,select,.button{font:inherit;color:var(--ink);border:1px solid #456173;background:#1d3444;border-radius:7px;padding:9px 12px;cursor:pointer;text-decoration:none}button:hover,.button:hover,button.active{background:#294e60;border-color:var(--cyan)}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}input{accent-color:var(--cyan)}.primary{background:var(--cyan);color:#10232d;font-weight:700}.skip{position:absolute;top:-80px;left:10px}.skip:focus{top:10px;background:#102632;z-index:20;padding:10px}header{display:flex;align-items:center;gap:24px;padding:20px 28px;border-bottom:1px solid var(--line);background:#08121bcc}.go3d{width:160px;max-height:55px;object-fit:contain}.vfl{height:65px;width:54px;object-fit:contain;margin-left:auto}header b{letter-spacing:.14em;font-size:14px}header span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.intro{display:flex;align-items:end;justify-content:space-between;gap:28px;margin:30px 24px 24px}.intro>div{max-width:860px}.intro h1{font-size:clamp(26px,3vw,39px);line-height:1.15;letter-spacing:-.025em;margin:8px 0 12px}.intro p{color:var(--muted);max-width:830px;margin:0}.eyebrow{text-transform:uppercase;color:var(--cyan)!important;letter-spacing:.11em;font-size:10px;font-weight:750}.intro label{min-width:255px;display:grid;gap:6px;font-size:11px;color:var(--muted)}select{max-width:100%}.workspace{display:grid;grid-template-columns:270px minmax(0,1fr) 245px;gap:15px;margin:0 20px 28px;align-items:start}.source-panel,.viewer-panel,.inspect-panel{min-width:0;background:linear-gradient(135deg,#152b39,#10202c);border:1px solid var(--line);border-radius:10px;overflow:hidden}.source-panel,.inspect-panel{padding:18px}.source-panel h2{line-height:1.2;font-size:23px;margin:7px 0 14px}.source-panel p{font-size:12px;color:var(--muted)}h3{font-size:12px;margin:20px 0 8px}ul,ol{padding-left:19px}li{margin:8px 0;font-size:12px;color:#c0d1da}.source-detail h3:first-child{color:var(--cyan)}.source-detail h3:last-of-type{color:var(--amber)}details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}summary{cursor:pointer;font-size:12px;font-weight:650}.small{font-size:10px!important;line-height:1.6;color:var(--muted)}.scene-heading{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;border-bottom:1px solid var(--line);gap:15px}.scene-heading p{margin:0 0 4px}.scene-heading b{font-size:17px}.scene-heading>span{font-size:10px;color:var(--muted)}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px;background:#132632}.toolbar button{padding:7px 10px;font-size:11px}.check{display:flex;gap:5px;align-items:center;font-size:10px;color:var(--muted);margin-left:auto}.viewport{height:560px;min-height:400px;position:relative;background:#152936}.viewport canvas{width:100%;height:100%;display:block;touch-action:none}.classification{position:absolute;top:12px;left:12px;right:12px;border-left:3px solid var(--amber);padding:8px 11px;background:#0a1721d9;color:var(--amber);font-size:10px;letter-spacing:.06em;pointer-events:none}.viewport-caption{position:absolute;bottom:40px;left:14px;max-width:calc(100% - 28px);background:#07141deb;padding:10px 13px;border-radius:5px;pointer-events:none}.viewport-caption b{display:block;font-size:15px;color:white}.viewport-caption span{font-size:11px;color:#b9cdd8}.nav-hint{position:absolute;left:14px;bottom:10px;color:#c6d8e1;font-size:10px;pointer-events:none}.transport{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:13px;border-top:1px solid var(--line)}.transport button{font-size:12px;min-width:64px}.speed{display:flex;align-items:center;gap:7px;font-size:11px}.speed select{padding:6px;font-size:11px}.loop{font-size:11px}#time-label{margin-left:auto;color:var(--cyan);font:12px ui-monospace,monospace}#timeline{width:100%;margin:5px 0}.time-note{font-size:10px;color:var(--muted);margin-top:-8px}.chapter-buttons{display:flex;flex-wrap:wrap;padding:0 13px 12px;gap:6px}.chapter-buttons button{font-size:10px;padding:6px 9px}.analysis-bar{padding:0 13px 10px;color:var(--muted);font-size:11px}.analysis-bar label{display:block;color:var(--cyan)}.exports{display:flex;gap:7px;flex-wrap:wrap;align-items:center;padding:12px;border-top:1px solid var(--line)}.exports>button,.exports>.button{font-size:10px;padding:7px 9px}.exports>span{font-size:10px;color:var(--muted);flex-basis:100%;margin-top:2px}.inspect-panel h2{font-size:17px;line-height:1.3;margin:8px 0}.inspect-panel>p{font-size:11px;color:var(--muted)}dl{font-size:11px}dt{color:var(--cyan);margin-top:12px;font-weight:650}dd{margin:4px 0;color:#c4d5de;overflow-wrap:anywhere}.selection-actions{display:flex;gap:6px;flex-wrap:wrap}.selection-actions button{font-size:10px;padding:6px 8px}code{font-size:9px;color:var(--muted);overflow-wrap:anywhere}.integrity{border-top:1px solid var(--line);margin-top:20px}.viewer-panel:fullscreen{height:100vh;overflow:auto}.viewer-panel:fullscreen .viewport{height:calc(100vh - 270px)}footer{display:flex;justify-content:space-between;gap:20px;padding:20px 26px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}footer b{color:var(--ink)}
@media(min-width:1700px){.workspace{grid-template-columns:310px minmax(0,1fr) 280px}.viewport{height:640px}}
@media(max-width:1150px){.workspace{grid-template-columns:235px minmax(0,1fr)}.inspect-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.inspect-panel .eyebrow,.inspect-panel>h2,.inspect-panel>p,.inspect-panel>dl,.selection-actions{grid-column:1}.inspect-panel details,.inspect-panel .integrity{grid-column:2;grid-row:1/7}.inspect-panel .integrity{grid-row:7}.viewport{height:500px}}
@media(max-width:760px){header{gap:12px;padding:14px 15px}.go3d{width:104px}.vfl{height:43px;width:35px}header b{font-size:10px;letter-spacing:.08em}header span{font-size:9px}.back{display:none}.intro{display:block;margin:22px 14px 16px}.intro h1{font-size:27px}.intro p{font-size:12px}.intro label{margin-top:18px}.workspace{display:flex;flex-direction:column;margin:0 10px 18px;gap:12px}.viewer-panel{order:0;width:100%}.source-panel{order:1;width:100%}.inspect-panel{order:2;width:100%;display:block}.viewport{height:450px;min-height:350px}.scene-heading{padding:12px}.scene-heading b{font-size:14px}.scene-heading>span{font-size:9px}.classification{font-size:8px;padding:7px 8px;top:8px;left:8px;right:8px}.toolbar{padding:8px;gap:5px}.toolbar button{font-size:10px;padding:6px 8px}.check{margin-left:0;width:100%;font-size:10px}.viewport-caption{bottom:45px;left:9px;padding:8px 10px}.viewport-caption b{font-size:13px}.viewport-caption span{font-size:10px;display:block}.nav-hint{font-size:8px;left:9px;right:9px}.transport{padding:10px;gap:6px}#time-label{font-size:11px}.transport button{min-width:48px;padding:8px}.speed{font-size:10px}.source-panel .source-detail{display:grid;grid-template-columns:1fr}.inspect-panel details,.inspect-panel .integrity{display:block}footer{display:block;padding:18px 15px;font-size:10px}footer span{display:block;margin-top:6px}}

[hidden]{display:none!important}
/* Forensic review: restrained surfaces, larger exhibit area, fewer competing panels. */
:root{--bg:#e9e8e2;--panel:#f8f8f4;--line:#c9ccc6;--ink:#202b29;--muted:#626f6a;--cyan:#2d665b;--amber:#8a6638;color-scheme:light}
body{background:#e9e8e2;color:var(--ink);font-family:Arial,Helvetica,sans-serif}
header{background:#172923;color:#eef1ea;padding:15px 25px;gap:22px;border-bottom:3px solid #b0a181;box-shadow:0 2px 12px #14251d18}header span{color:#b8c9bf}header b{letter-spacing:.08em}header .primary{background:#d9dccb;color:#21372e;border-color:#d9dccb}header a.button{color:#e3ebe5;background:transparent;border-color:#687c70}.go3d{width:138px}.vfl{height:51px;margin-left:auto}
a{color:#326c5c}button,select,.button{background:#f6f7f2;color:#293c34;border:1px solid #bdc8be;border-radius:4px;box-shadow:0 1px 0 #fff8}button:hover,.button:hover,button.active{background:#e1e9df;border-color:#638272}.primary{background:#2f5c4b;color:#fff;border-color:#2f5c4b}.primary:hover{background:#244e3e;color:#fff}.intro{margin:25px 26px 20px;align-items:center}.intro h1{font-size:clamp(24px,2.5vw,33px);font-weight:500;letter-spacing:-.035em}.intro p{max-width:720px}.workspace{grid-template-columns:245px minmax(0,1fr) 222px;gap:13px;margin:0 24px 24px}.source-panel,.viewer-panel,.inspect-panel{background:#f8f8f4;border-color:#c7cec4;border-radius:5px;box-shadow:0 3px 12px #1e30200b}.source-panel,.inspect-panel{padding:16px}.source-panel h2{font-size:20px;font-weight:500}.source-panel p{color:#5e6e64}.source-detail{border-top:1px solid #cbd2c9}.source-detail[open] summary{margin-bottom:12px}.source-detail h3{font-size:11px}li{color:#43554a;line-height:1.55}h3{font-size:11px;text-transform:uppercase;letter-spacing:.055em}.eyebrow{font-size:9px;color:#557361!important}.scene-heading{background:#f6f7f0;padding:12px 16px}.scene-heading b{font-size:17px;font-weight:500}.toolbar{background:#eef1e9;border-bottom:1px solid #cdd3c9;padding:9px}.toolbar button{background:transparent;border-color:#bdc7ba}.check{color:#65735f}.viewport{height:600px;background:#d4d3cd}.classification{background:#f6f4e9ed;color:#74562d;border-left:3px solid #a68c5c;font-size:9px;max-width:max-content;box-shadow:0 1px 3px #2634251a}.viewport-caption{background:#f7f8f0e8;color:#1e3427;box-shadow:0 2px 6px #2733231a;border:1px solid #c6d0bd;max-width:85%}.viewport-caption b{color:#254736;font-weight:600}.viewport-caption span{color:#526b59}.nav-hint{color:#425144;background:#e9ede5b8;padding:2px 5px;border-radius:3px}.transport{background:#f3f5ef}.time-note{color:#6b7869}#time-label{color:#375f48}.chapter-buttons{background:#f3f5ef}.chapter-buttons button{color:#51644f}.analysis-bar{background:#f3f5ef}.analysis-bar label{color:#426b50}.exports{background:#e9eee4}.exports>button,.exports>.button{font-size:11px;padding:8px 10px}.exports .primary{background:#2f5c4b;color:#fff}.inspect-panel>p{color:#687363}.inspect-panel h2{font-weight:500}dt{color:#486b50}dd{color:#53624f}.integrity{border-color:#ccd3c7}code{color:#62725e}.small{color:#6c7666}footer{background:#e3e6dd;border-color:#c1c9bb;color:#63705d}.scene-heading>span{color:#6a7865}.source-panel>details:not(.source-detail){font-size:11px}
.courtroom-mode header,.courtroom-mode .intro,.courtroom-mode .source-panel,.courtroom-mode .inspect-panel,.courtroom-mode footer{display:none}.courtroom-mode .workspace{display:block;margin:0}.courtroom-mode .viewer-panel{border:0;border-radius:0}.courtroom-mode .viewer-panel .viewport{height:calc(100vh - 228px);min-height:400px}.courtroom-mode .scene-heading{padding:12px 22px}.courtroom-mode .classification{font-size:12px}.courtroom-mode .viewport-caption b{font-size:20px}.courtroom-mode .viewport-caption span{font-size:14px}.courtroom-mode .nav-hint{display:none}.courtroom-mode .exports{padding:8px 13px}.courtroom-mode .toolbar{padding:7px 13px}
@media(min-width:1750px){.workspace{grid-template-columns:285px minmax(0,1fr) 245px}.viewport{height:680px}}
@media(max-width:1180px){.workspace{grid-template-columns:220px minmax(0,1fr)}.inspect-panel{grid-column:1/-1}.viewport{height:550px}}
@media(max-width:760px){header{padding:12px;gap:12px}header .go3d{width:90px}.vfl{height:40px;width:32px}header b{font-size:9px}header span{display:none}header #build-case-kit{font-size:10px;padding:7px 9px}.intro{margin:18px 14px}.intro h1{font-size:26px}.workspace{display:flex;margin:0 10px 15px}.viewport{height:450px}.inspect-panel{display:block}.toolbar{gap:5px}.toolbar button{font-size:10px;padding:6px 7px}.check{margin-top:3px}.classification{font-size:8px;max-width:calc(100% - 16px)}.viewport-caption{max-width:calc(100% - 18px)}.courtroom-mode .viewer-panel .viewport{height:calc(100vh - 320px)}.courtroom-mode .classification{font-size:9px}.courtroom-mode .viewport-caption b{font-size:15px}.courtroom-mode .viewport-caption span{font-size:10px}}

/* Six-scenario study updates. All illustrative classifications remain visible. */
button,.button,select{min-height:44px}.classification{font-size:11px;line-height:1.5;max-width:calc(100% - 24px)}header{flex-wrap:wrap}header #lab-link{white-space:nowrap}.intro label{min-width:min(290px,100%)}.source-panel,.inspect-panel{overflow-wrap:anywhere}.viewport-caption{max-width:calc(100% - 28px)}
@media(max-width:760px){header{padding-top:max(12px,env(safe-area-inset-top));gap:9px}header #lab-link{font-size:11px;padding:8px}.toolbar button{min-height:44px;font-size:11px}.classification{font-size:10px}.intro{margin:18px 14px}.viewport{height:470px}.source-panel li{font-size:13px}.viewport-caption span{font-size:11px}footer{padding-bottom:max(18px,env(safe-area-inset-bottom))}}
@media(max-height:500px) and (orientation:landscape){.viewer-panel:fullscreen .viewport,.courtroom-mode .viewer-panel .viewport{height:55dvh;min-height:190px}.viewer-panel:fullscreen{overflow:auto;height:100dvh}.classification{font-size:9px}.viewport-caption{bottom:12px}.nav-hint{display:none}}

/* Embedded mechanism view keeps the 3D scene visible inside its case file. */
body.training-embedded{margin:0;overflow:hidden}.training-embedded>header,.training-embedded .intro,.training-embedded .source-panel,.training-embedded .inspect-panel,.training-embedded>footer,.training-embedded .exports{display:none!important}.training-embedded main{margin:0;padding:0;max-width:none;width:100%}.training-embedded .workspace{display:block;margin:0;padding:0}.training-embedded .viewer-panel{height:100dvh;display:flex;flex-direction:column;border:0;border-radius:0;overflow:hidden}.training-embedded .viewer-panel>*{flex-shrink:0}.training-embedded .viewport{height:auto!important;flex:1;min-height:180px}.training-embedded .scene-heading{padding:7px 12px}.training-embedded .scene-heading .eyebrow{display:none}.training-embedded .toolbar{padding:5px 8px;gap:5px;overflow-x:auto;flex-wrap:nowrap}.training-embedded .toolbar>*{flex-shrink:0}.training-embedded .toolbar button{min-height:38px}.training-embedded .transport{padding:6px 10px;gap:7px}.training-embedded .chapter-buttons{padding:5px 8px;overflow-x:auto;flex-wrap:nowrap}.training-embedded .chapter-buttons button{white-space:nowrap;min-height:36px}.training-embedded .analysis-bar{padding:3px 10px;font-size:10px}.training-embedded .nav-hint{display:none}.training-embedded .classification{font-size:10px;padding:7px 10px;max-width:calc(100% - 20px)}
