@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800;900&family=IBM+Plex+Mono:wght@400;500;600;700&display=swap');
:root{--bg:#101413;--ink:#e9eddf;--acid:#d9fa61;--muted:#859087;--line:#303a32}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'IBM Plex Mono',monospace;font-size:12px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #f5a4cc;outline-offset:4px}header{max-width:1360px;margin:auto;height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 40px}.brand{color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:10px;font-size:17px;font-weight:700}.brand-icon{background:var(--acid);color:var(--bg);padding:2px 6px;font-size:26px}.brand small{font-size:9px;color:var(--muted);border-left:1px solid var(--line);margin-left:8px;padding-left:16px}.status{font-size:10px;letter-spacing:.7px;color:var(--muted)}i{display:inline-block;width:6px;height:6px;background:var(--acid);margin-right:8px}.status i{background:#f29a7b}header button,#pause{background:none;border:0;color:var(--muted);font-size:10px}main{max-width:1280px;padding:0 40px;margin:auto}.intro{display:flex;justify-content:space-between;align-items:center;padding:38px 0 32px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:var(--muted);margin:0 0 15px}.eyebrow span{padding-left:28px;color:#566259}h1{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-size:92px;line-height:.83;letter-spacing:-1px;margin:0;font-weight:900}h1>span{display:block;color:var(--acid)}.period{color:var(--ink)}.pitch{padding:16px 0 0 30px}.tag{font-size:9px;letter-spacing:1px;border:1px solid #536344;padding:7px 10px;color:var(--acid)}.pitch p{font-size:16px;line-height:1.6;font-weight:500;margin:20px 0 8px}.pitch .sub{font-size:11px;color:var(--muted);font-weight:400;margin-top:8px}.cabinet{border:1px solid #536044;box-shadow:0 8px 0 #080c0a,0 9px 0 #354130}.cabinet-top,.cabinet-bottom{display:flex;justify-content:space-between;align-items:center;background:#1c251d;padding:13px 18px;font-size:10px;letter-spacing:1px}.cabinet-top>span:first-child{color:var(--acid)}.cabinet-top #level-label{color:#b8c2ab}.screen{position:relative;background:#0a1119;overflow:hidden}canvas{display:block;width:100%;aspect-ratio:960/520;image-rendering:pixelated;outline:none}.screen:after{content:'';pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(transparent 0,transparent 3px,#0002 4px);opacity:.35}#overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:linear-gradient(90deg,#071018c9,#07101899,#071018c9);text-align:center;z-index:2;padding:15px}#overlay[hidden]{display:none}#overlay-kicker{color:var(--acid);font-size:11px;letter-spacing:3px}h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:64px;line-height:.96;letter-spacing:1px;margin:10px 0 14px;text-shadow:4px 4px #000}#overlay-copy{font-size:11px;line-height:1.8;color:#c0cdbf}.start-buttons{display:flex;gap:10px;margin:16px 0 22px}.start-buttons button{padding:14px 23px;border:1px solid var(--acid);background:var(--acid);font-weight:700;color:#14201a;box-shadow:3px 3px #768d2c}.start-buttons button+button{background:#17221f;color:var(--acid);box-shadow:3px 3px #07120d}.start-buttons button:hover{transform:translateY(-2px);filter:brightness(1.1)}.insert{font-size:8px;color:#98a594;letter-spacing:2px}.cabinet-bottom{background:#172019;color:var(--muted);font-size:8px;letter-spacing:.5px}.cabinet-bottom strong{color:var(--ink);font-weight:400;margin-left:12px}.cabinet-bottom b{color:var(--acid);font-size:11px;margin-left:10px}.bottom{display:flex;justify-content:space-between;padding:34px 0;gap:20px;border-bottom:1px solid var(--line)}.controls>div{display:flex;align-items:center;gap:7px;margin-top:12px;font-size:8px}.controls strong{font-size:9px;margin-right:10px}.controls div>span:not(.player-dot){color:var(--muted);margin:0 10px 0 2px;font-size:8px}kbd{font:9px 'IBM Plex Mono',monospace;background:#252e27;border:1px solid #455044;border-bottom-width:3px;border-radius:3px;min-width:23px;padding:5px;text-align:center}.player-dot{width:7px;height:7px;background:var(--acid)}.pink{background:#ef9fc4}.bottom aside{display:flex;align-items:center;gap:18px;border-left:1px solid var(--line);padding-left:30px}.sticker{font-size:30px;filter:grayscale(1)}aside strong{color:var(--acid);font-size:10px}aside p{font-size:10px;line-height:1.8;color:var(--muted)}footer{display:flex;justify-content:space-between;color:#67746a;font-size:8px;letter-spacing:.6px;padding:22px 0 30px}.touch{display:none}.touch button{touch-action:none;background:#253326;color:var(--acid);border:1px solid #63744b;padding:13px}
@media(max-width:800px){header{padding:0 20px;height:66px}.status,.brand small{display:none}main{padding:0 18px}.intro{padding:28px 0;align-items:flex-end}h1{font-size:65px}.eyebrow{font-size:8px;letter-spacing:.7px}.eyebrow span{display:none}.pitch{padding-left:10px}.tag{font-size:7px;padding:5px}.pitch p{font-size:12px}.pitch .sub{display:none}.cabinet-top{padding:10px;font-size:8px}.cabinet-bottom{padding:10px}.cabinet-bottom #hint{display:none}.bottom{flex-direction:column;padding:25px 0}.bottom aside{border-left:0;padding:10px 0 0}footer{gap:20px;font-size:7px}.touch{display:flex;gap:5px;margin-top:15px}.touch button{flex:1;padding:12px 5px;font-size:10px}h2{font-size:42px}#overlay-copy{font-size:9px}.start-buttons{margin:8px 0 12px}.start-buttons button{padding:10px 15px;font-size:10px}#overlay-kicker{font-size:8px;margin:3px}h2{margin:5px 0}.insert{font-size:6px}}@media(max-width:480px){.intro{display:block}.pitch{padding:22px 0 0;display:flex;align-items:center;gap:14px}.pitch p{margin:0;font-size:10px}h1{font-size:76px}.screen canvas{aspect-ratio:960/650;object-fit:fill}.controls>div{gap:4px}.controls div>span:not(.player-dot){margin-right:3px;font-size:6px}.controls strong{margin-right:3px;font-size:8px}kbd{min-width:19px;padding:4px}.cabinet-bottom strong{font-size:6px;margin-left:4px}#overlay-copy br{display:none}#overlay-copy{max-width:240px}}
.level-select{border-top:1px solid var(--line);padding:18px 0 20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.level-select>div:first-child{display:flex;flex-direction:column;gap:8px}.level-select .eyebrow{margin:0;font-size:9px;color:var(--ink)}.level-note{font-size:8px;color:var(--muted);letter-spacing:.6px}.level-options{display:flex;gap:8px}.level-options button{display:flex;align-items:center;gap:13px;text-align:left;color:#a8b6ab;border:1px solid #38483b;background:#172019;padding:12px 18px;min-width:240px;font-size:11px;font-weight:600}.level-options small{display:block;font-size:8px;letter-spacing:1px;color:#7d8e80;margin-bottom:5px}.level-options .selected{border-color:var(--acid);background:#25331c;color:var(--acid);box-shadow:inset 0 -2px var(--acid)}.level-options .selected small{color:#c4d49f}.level-options .view-icon{font-size:28px;line-height:1}.level-options b{font-size:8px;background:var(--acid);color:#14201a;padding:4px;margin-left:12px}.camera-bar{display:flex;align-items:center;justify-content:space-between;background:#101b20;border-top:1px solid #30434b;padding:8px 18px;color:#869d9d;font-size:8px;letter-spacing:.6px}.camera-bar[hidden]{display:none}.camera-bar b{color:#b6dad7;margin-left:12px}.camera-bar button{border:1px solid #405a60;color:#c8e4da;background:#1d3035;padding:6px 13px;margin-left:5px}.camera-bar button:hover{border-color:var(--acid);color:var(--acid)}.cabinet[data-view="iso"] .screen canvas{aspect-ratio:960/780}.cabinet[data-view="iso"] .screen{background:#0b1520}
@media(max-width:900px){.level-select{align-items:flex-start;flex-direction:column;gap:12px}.level-select>div:first-child{flex-direction:row;justify-content:space-between;width:100%}.level-options{width:100%}.level-options button{min-width:0;flex:1;padding:10px 12px;font-size:9px}.level-options small{font-size:7px}.camera-bar>span:nth-child(2){display:none}}
@media(max-width:480px){.level-note{font-size:6px}.level-select .eyebrow{font-size:8px}.level-options button{padding:9px 8px;gap:7px;font-size:8px}.level-options .view-icon{font-size:22px}.level-options small{font-size:6px}.level-options b{margin-left:0;font-size:6px;padding:3px}.camera-bar{padding:7px 9px;font-size:7px;letter-spacing:0}.camera-bar b{margin-left:5px}.camera-bar button{padding:5px 9px}.cabinet[data-view="iso"] .screen canvas{aspect-ratio:960/780}.controls div>span:not(.player-dot){font-size:6px}}

#touch-climb[hidden]{display:none}
.header-actions{display:flex;gap:17px;align-items:center}.header-actions #online-open{color:var(--acid);border:1px solid #5d7048;padding:10px 12px}.mission-strip{display:flex;align-items:center;gap:22px;border:1px solid #3d4e39;background:#1b261b;margin-bottom:14px;padding:12px 16px;font-size:9px}.mission-strip>span:first-child{color:var(--acid);letter-spacing:1px;white-space:nowrap}.mission-strip p{margin:0;color:#b4c3b0;line-height:1.7}.mission-time{margin-left:auto;white-space:nowrap;color:#8a9b83;font-size:8px}.cabinet[data-view="iso"] .screen canvas,.screen canvas{aspect-ratio:960/600;object-fit:contain}.cabinet-top button{background:transparent;border:0;color:#a1b49c;padding:0 8px;font:9px 'IBM Plex Mono',monospace}.cabinet-top #fullscreen{color:#c2d996}.start-buttons button{padding:13px 18px}.start-buttons button:nth-child(3){background:#223c3a;color:#b2e7d1;border-color:#7aab99;box-shadow:3px 3px #0a1714}.level-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:32px 0 0}.level-guide article{border-top:1px solid #40503b;padding-top:15px}.level-guide article>span{font-size:8px;color:var(--acid);letter-spacing:1px}.level-guide h3{font-size:13px;line-height:1.5;margin:14px 0 10px}.level-guide p{color:#8c9e91;font-size:10px;line-height:1.9}.controls>div{flex-wrap:wrap}.screen:after{z-index:1}#overlay{z-index:2}#overlay-copy{max-width:540px;padding:0 20px}.cabinet:fullscreen{width:100vw;height:100dvh;display:flex;flex-direction:column;background:#09111a;justify-content:center;border:0}.cabinet:fullscreen .screen{flex:1;min-height:0;display:flex;justify-content:center;align-items:center}.cabinet:fullscreen canvas{width:auto;height:100%;max-width:100%;max-height:100%;aspect-ratio:960/600}.cabinet:fullscreen .cabinet-top,.cabinet:fullscreen .camera-bar,.cabinet:fullscreen .cabinet-bottom{flex-shrink:0}dialog{color:var(--ink);background:#121d1b;border:1px solid #7c9459;padding:28px;width:min(680px,calc(100vw - 28px));max-height:90dvh;box-shadow:0 15px 80px #000a}dialog::backdrop{background:#020910cb;backdrop-filter:blur(5px)}.room-head{display:flex;justify-content:space-between;align-items:center}.room-head button{background:none;border:0;color:#b7c8ad;font-size:20px}.room-head .eyebrow{margin:0}dialog h2{font-size:50px;margin:20px 0 13px;color:var(--acid);text-shadow:none}.room-intro{color:#97aa9b;font-size:11px;line-height:1.9}#room-status{min-height:18px;color:#f2bd94;font-size:11px;line-height:1.6}dialog label{display:block;color:#a3b49b;font-size:9px;letter-spacing:.6px;margin:12px 0 8px}dialog input,dialog select{width:100%;padding:12px;color:#e1edd8;border:1px solid #4b6250;background:#091714;font:12px 'IBM Plex Mono',monospace;border-radius:0}dialog input:focus,dialog select:focus{outline:2px solid var(--acid)}.room-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.room-columns section{border-top:1px solid #405641;padding-top:8px}.room-columns h3{font-size:11px;letter-spacing:1px}.room-columns button{margin-top:15px;width:100%}dialog button{padding:11px 13px;background:#253b2c;border:1px solid #748e5c;color:#c3d6b7;font-size:10px}.primary{background:var(--acid)!important;color:#1a2b1b!important;font-weight:700}#resume-room{margin-top:20px;width:100%}.room-code-line{border:1px solid #4a654a;background:#1c2d20;padding:17px;display:flex;justify-content:space-between;align-items:center}.room-code-line span{font-size:8px;color:#9cb98d;display:block;margin-bottom:5px}.room-code-line strong{font-size:28px;letter-spacing:6px;color:var(--acid)}#room-level{font-size:11px;color:#9db8a2;margin:20px 0}#roster{list-style:none;padding:0;margin:0}#roster li{display:flex;align-items:center;justify-content:space-between;padding:13px 10px;border-bottom:1px solid #344e3d;gap:12px;font-size:11px}#roster .score{margin-left:auto;color:var(--acid)}#roster .ready{font-size:9px;color:#99b88d}#match-rules{font-size:10px;line-height:1.9;color:#91a78f}.room-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}#leave-room{margin-left:auto;border-color:#76524b;color:#dba399}button:disabled{opacity:.45;cursor:default}button[hidden],[hidden]{display:none!important}#join-code{text-transform:uppercase;letter-spacing:4px}
@media(max-width:800px){.mission-time{display:none}.mission-strip{gap:12px}.mission-strip p{font-size:8px}.level-guide{gap:17px}.level-guide h3{font-size:11px}.level-guide p{font-size:9px}.bottom{padding-top:25px}.start-buttons{gap:6px}.start-buttons button{padding:10px 12px;font-size:9px}#overlay-copy{font-size:10px}.cabinet-top button{font-size:7px}.header-actions{gap:5px}.header-actions #online-open{font-size:8px;padding:8px}.level-options button{min-width:0}.cabinet[data-view="iso"] .screen canvas{aspect-ratio:960/600}}
@media(max-width:500px){.level-guide{grid-template-columns:1fr;gap:15px}.level-guide article{padding-top:12px}.level-guide h3{margin:10px 0 5px}.level-guide p{margin:0}.room-columns{grid-template-columns:1fr;gap:12px}dialog{padding:20px}.room-code-line{padding:10px}.room-code-line strong{font-size:23px}.room-code-line button{font-size:8px;padding:8px}.start-buttons{flex-wrap:wrap;justify-content:center;margin:8px 0}.start-buttons button{font-size:8px;padding:9px 11px}.insert{font-size:6px;letter-spacing:1px}h2{font-size:35px}.mission-strip{padding:10px}.mission-strip>span:first-child{font-size:7px}#overlay-copy{font-size:8px;line-height:1.6;padding:0 12px}.screen canvas{aspect-ratio:960/600}.header-actions #sound{font-size:8px}.touch{gap:3px}.touch button{font-size:8px}.camera-bar{font-size:7px}}
#campaign-open{color:var(--acid);border:1px solid #657d48;padding:10px 12px}.campaign-feature{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid #6b8250;background:linear-gradient(115deg,#28341e,#132622);padding:23px 25px;margin:0 0 24px;box-shadow:inset 4px 0 var(--acid)}.campaign-feature .eyebrow{font-size:9px;color:#adbd8d;margin:0}.campaign-feature h3{font:800 31px 'Barlow Condensed',Impact,sans-serif;letter-spacing:.5px;margin:8px 0;color:#e0edbd}.campaign-feature p{font-size:10px;color:#a8b896;line-height:1.7;margin:0}.campaign-feature>div:last-child{display:flex;flex-direction:column;gap:12px;align-items:flex-end}.campaign-feature button{background:var(--acid);color:#17261a;border:0;padding:13px 18px;font-weight:600;font-size:10px}.campaign-feature>div:last-child>span{color:#b9cf9c;font-size:8px;letter-spacing:.6px}#campaign-tracker{border:1px solid #465a42;border-top:0;background:#17231c;padding:17px 20px}#campaign-tracker>div{display:flex;justify-content:space-between;gap:15px;font-size:9px;color:#c8daa9}#campaign-save-status{color:#8ba88f;font-size:8px}#campaign-objectives{display:flex;gap:8px 20px;flex-wrap:wrap;list-style:none;padding:0;font-size:8px;color:#c5c2a1;line-height:1.8}#campaign-objectives li.done{color:#729681;text-decoration:line-through}#campaign-service-open{color:#c5d4a6;background:#243329;border:1px solid #5e7452;padding:9px 12px;font-size:8px}.campaign-menu-actions{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.campaign-menu-actions button{flex:1;min-width:130px;font-size:9px}#campaign-status{font-size:11px;line-height:1.8;color:#c3d8a0}.campaign-chapter{border-top:1px solid #41573e;margin-top:16px;padding-top:13px}.campaign-chapter h3{font-size:11px;color:#c3d3b0;margin:0 0 10px}.campaign-stage-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.campaign-stage-grid button{text-align:left;min-height:64px;background:#192a21;border-color:#3e5b45;line-height:1.7}.campaign-stage-grid button small{display:block;color:#91ac96;font-size:8px}.campaign-stage-grid button.completed{border-color:#8d9e52}.campaign-stage-grid button.current{box-shadow:inset 3px 0 #d9fa61}.campaign-stage-grid button:disabled{opacity:.35}.save-note{font-size:9px;line-height:1.8;color:#799581;margin-top:20px}.briefing-body{color:#c6d3bf;font-size:12px;line-height:1.9}#briefing-dialogue{padding:14px;background:#0a1818;border-left:2px solid #c4e17a;margin:18px 0}#briefing-dialogue:empty{display:none}#briefing-dialogue p{font-size:11px;line-height:1.8;color:#bacbb5;margin:9px 0}#briefing-dialogue strong{display:block;font-size:8px;letter-spacing:1px;color:var(--acid)}#briefing-lesson{padding:12px;background:#24342a;color:#b4cfb7;font-size:10px;line-height:1.8}.upgrade-card{border:1px solid #476341;background:#192b20;padding:15px;display:grid;grid-template-columns:1fr auto;gap:8px;margin:10px 0}.upgrade-card h3{font-size:12px;margin:0;color:#d4e2bf}.upgrade-card p{font-size:10px;margin:8px 0 0;color:#90ab93;line-height:1.7}.upgrade-card button{align-self:center;color:var(--acid)}.upgrade-rank{color:var(--acid);font-size:10px}#campaign-panel,#briefing-panel{width:min(760px,calc(100vw - 28px))}.touch{flex-wrap:wrap}.campaign-touch{border-color:#87a2a5!important;color:#a6e6ef!important}
@media(max-width:800px){.header-actions{gap:5px}#campaign-open{font-size:8px;padding:8px}.campaign-feature{padding:18px}.campaign-feature h3{font-size:26px}.campaign-feature p{font-size:9px}.campaign-feature button{font-size:9px;padding:12px}.campaign-feature>div:last-child>span{font-size:7px}.header-actions #online-open{padding:8px;font-size:8px}}
@media(max-width:500px){.campaign-feature{flex-direction:column;align-items:flex-start;gap:16px}.campaign-feature>div:last-child{width:100%;align-items:flex-start}.campaign-feature button{width:100%}.campaign-stage-grid{grid-template-columns:1fr}#campaign-tracker{padding:12px}.briefing-body{font-size:11px}#briefing-dialogue p{font-size:10px}.brand{font-size:13px;gap:6px}.brand-icon{font-size:21px}.header-actions #sound{display:none}.campaign-menu-actions{gap:7px}.upgrade-card{padding:12px}.upgrade-card h3{font-size:11px}}
#audio-panel{width:min(590px,94vw)}.audio-enable{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--acid)}.audio-enable input{accent-color:var(--acid);width:18px;height:18px}.audio-sliders{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:18px}.audio-sliders label{display:flex;justify-content:space-between;font-size:10px}.audio-sliders output{color:var(--acid)}.audio-sliders input{width:100%;accent-color:var(--acid);height:24px}.audio-buttons{display:flex;gap:10px;margin:12px 0 22px}#audio-panel select{width:100%;margin-top:10px;padding:12px;color:var(--ink);background:#1b2823;border:1px solid #52624d;font:inherit}#audio-panel>label:not(.audio-enable){font-size:10px;letter-spacing:1px}#audio-status{color:var(--acid);padding:12px;background:#1a251e;min-height:40px;font-size:10px;line-height:1.6}.audio-buttons button{padding:12px;font-size:10px}.header-actions{display:flex;gap:13px;align-items:center}
@media(max-width:600px){header{height:auto;min-height:86px;flex-wrap:wrap;gap:16px;padding:16px 20px}.header-actions{width:100%;justify-content:space-between;gap:10px}.header-actions #sound{display:inline-block}.audio-buttons{flex-wrap:wrap}#audio-panel h2{font-size:40px}}
#audio-panel{max-height:90vh}#audio-panel h2{font-size:44px}#audio-panel .room-head{position:sticky;top:-1px;z-index:3;background:#152019;padding:10px 0}#audio-panel .room-intro{font-size:11px;margin:10px 0}.audio-enable{margin:12px 0}.audio-sliders{gap:8px;padding-top:12px}.audio-sliders input{height:20px}
@media(max-width:600px){#audio-panel h2{font-size:36px}}
.audio-bass-label{display:flex;justify-content:space-between;align-items:center;margin-top:20px}#audio-bass{width:100%;accent-color:var(--acid);margin:12px 0}#audio-bass-value{color:var(--acid)}
/* Sentinel's incident archive: a letterboxed arcade prologue. */
#story-panel{width:min(1080px,calc(100vw - 28px));padding:0;background:#101a1c;border-color:#8b9b6b;max-height:94dvh;overflow:auto;box-shadow:12px 12px 0 #0007,0 30px 100px #000b}#story-panel::backdrop{background:#030a10ed}.story-top{display:flex;align-items:center;gap:20px;padding:12px 23px;background:#070f12;border-bottom:1px solid #394b42;font-size:9px;letter-spacing:1.3px;color:var(--acid)}.story-top .story-archive{margin-left:auto;color:#7e9a92;font-size:8px}.story-top button{padding:0 4px;background:transparent;border:0;color:#c7d4bc;font-size:19px}.story-heading{display:flex;justify-content:space-between;align-items:flex-end;padding:20px 25px 18px;background:linear-gradient(100deg,#23382c,#142124)}.story-heading .eyebrow{font-size:8px;letter-spacing:2px;margin:0 0 7px;color:#a1b69b}.story-heading h2{color:#e5e8cc;font-size:43px;line-height:.9;margin:0;letter-spacing:.5px}.story-heading em{font-style:normal;color:var(--acid)}.story-index{text-align:right;max-width:200px}.story-index b{font:800 37px 'Barlow Condensed',Impact,sans-serif;color:#8caa89;letter-spacing:2px}.story-index span{display:block;color:#afc2b5;font-size:8px;letter-spacing:1px;margin-top:5px}.story-visual{position:relative;border-top:1px solid #52624c;border-bottom:1px solid #52624c;background:#172826;overflow:hidden}.story-visual canvas{width:100%;height:min(36vh,450px);min-height:180px;aspect-ratio:960/450;object-fit:contain;image-rendering:pixelated}.story-visual-note{position:absolute;right:12px;bottom:10px;color:#b6c7aa;background:#071614c9;padding:5px 8px;font-size:7px;letter-spacing:1px}.story-dialogue{padding:18px 25px 0;display:grid;grid-template-columns:155px 1fr;gap:18px;min-height:90px}.story-dialogue strong{font-size:10px;letter-spacing:1.5px;padding-top:4px}.story-dialogue p{font-size:14px;line-height:1.7;color:#eef0dc;margin:0;max-width:760px}#story-note{margin:10px 25px 14px;padding-left:173px;min-height:16px;font-size:9px;line-height:1.6;color:#a4b48d}.story-controls{display:flex;justify-content:space-between;gap:12px;padding:0 25px 15px;align-items:center}.story-controls>div{display:flex;gap:7px}.story-controls button{font-size:9px;padding:11px 14px;background:#152723;border-color:#51654d}.story-controls #story-next{min-width:160px}.story-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 25px;background:#090f12;border-top:1px solid #2c4137}.story-bottom span{font-size:8px;letter-spacing:.5px;color:#8ba492}.story-bottom button{background:none;color:#bac9ae;font-size:8px;border:0;padding:6px 0;text-decoration:underline;text-underline-offset:4px}#story-panel[data-scene="approve"] .story-heading,#story-panel[data-scene="charge"] .story-heading,#story-panel[data-scene="shrink"] .story-heading{background:linear-gradient(100deg,#44362b,#142124)}#story-panel:focus{outline:none}
@media(max-width:600px){#story-panel{width:calc(100vw - 14px);max-height:96dvh}.story-top{padding:10px 15px}.story-archive{display:none}.story-top button{margin-left:auto}.story-heading{padding:17px 15px}.story-heading h2{font-size:30px}.story-index b{font-size:25px}.story-index{max-width:100px}.story-index span{font-size:6px}.story-dialogue{grid-template-columns:1fr;gap:8px;padding:15px 15px 0;min-height:133px}.story-dialogue strong{font-size:9px}.story-dialogue p{font-size:12px;line-height:1.65}#story-note{padding:0;margin:10px 15px 15px;font-size:8px;min-height:26px}.story-controls{padding:0 15px 15px;flex-wrap:wrap}.story-controls>div{width:100%;justify-content:space-between}.story-controls button{padding:10px 12px;font-size:8px}.story-controls #story-next{width:100%}.story-bottom{padding:10px 15px}.story-bottom span{font-size:6px;letter-spacing:0}.story-bottom button{font-size:7px}.story-visual canvas{height:auto;min-height:0;aspect-ratio:960/450}.story-visual-note{font-size:5px;padding:4px;right:6px;bottom:5px}}
@media(prefers-reduced-motion:reduce){#story-panel *{scroll-behavior:auto;animation:none!important;transition:none!important}}
/* Keep captions and navigation usable on short phones, including 320 × 568. */
#story-panel{max-width:calc(100vw - 16px)}
@media(max-width:600px){.story-dialogue p{font-size:14px;line-height:1.6}.story-controls button{min-height:36px}}
@media(max-width:600px) and (max-height:680px){.story-top{padding:7px 12px;font-size:8px}.story-heading{padding:8px 12px;align-items:center}.story-heading .eyebrow,.story-heading h2{display:none}.story-index{display:flex;justify-content:space-between;align-items:center;max-width:none;width:100%;gap:12px}.story-index b{font-size:21px;white-space:nowrap}.story-index span{font-size:7px;margin:0;text-align:right}.story-visual canvas{height:18vh;min-height:80px;object-fit:contain}.story-dialogue{padding:10px 12px 0;gap:5px;min-height:0}.story-dialogue p{font-size:13px;line-height:1.5}#story-note{margin:7px 12px;min-height:22px;font-size:8px;line-height:1.4}.story-controls{padding:5px 12px 8px;gap:6px}.story-controls button{min-height:32px;padding:8px 10px}.story-bottom{padding:7px 12px}.story-visual-note{display:none}}
#help-panel{width:min(750px,calc(100vw - 28px))}#controller-status{font-size:11px;color:var(--acid);line-height:1.8}.touch button{min-width:44px;min-height:44px}.campaign-menu-actions button{min-height:40px}@media(pointer:coarse){.touch{display:flex;flex-wrap:wrap;gap:7px}.touch button{min-width:56px;min-height:48px}dialog button,.header-actions button{min-height:44px}.header-actions{flex-wrap:wrap}}@media(max-width:480px){.touch button{flex:1 0 20%;font-size:10px}.header-actions{flex-wrap:wrap}#help-open{font-size:8px}}
@media(pointer:coarse){.camera-bar button,.cabinet-top button{min-width:44px;min-height:44px}}
