:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f7efe3;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#1c0d09;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{min-width:320px}#app{background:radial-gradient(circle at 50% 12%,#ffb76c24,#0000 24%),linear-gradient(#24100d 0%,#4f2015 54%,#1e0e0a 100%);position:relative}#title-screen{z-index:20;pointer-events:auto;isolation:isolate;align-items:start;padding:clamp(132px,24vh,260px) clamp(22px,5vw,64px) clamp(22px,5vw,64px);transition:opacity .6s,transform .6s,visibility .6s;display:grid;position:absolute;inset:0}#title-screen:before{content:"";pointer-events:none;background:linear-gradient(90deg,#12070494,#1207041a 58%,#0000 78%),linear-gradient(#0000 54%,#12070470);position:absolute;inset:0}#title-screen.is-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-16px)}.title-copy{gap:16px;width:min(620px,100%);display:grid;position:relative}.title-copy h1{font-size:clamp(42px,9vw,96px);line-height:1.08}.title-copy h1 span{white-space:nowrap;display:block}.title-text{color:#f7efe3c7;max-width:30rem;margin:0;font-size:clamp(15px,2vw,19px);line-height:1.6}.title-actions{justify-items:start;gap:10px;display:grid}.title-action{color:#f7efe3;letter-spacing:0;cursor:pointer;background:#0f1416d1;border:0;border-radius:0;width:fit-content;min-width:168px;min-height:46px;padding:0 22px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:14px;font-weight:800;transition:background .16s,color .16s,box-shadow .16s,transform .16s;position:relative;box-shadow:0 16px 42px #00000047}.title-action:before{content:"";pointer-events:none;border:1px solid #66d9ff6b;position:absolute;inset:0}.title-action-primary{color:#f7efe3;background:#0f1416d1}.title-action-secondary{color:#f7efe3;background:#0f1416d1;border:1px solid #f7efe33d}.title-action:hover{color:#1d0d08;background:#d98236;transform:translateY(-1px);box-shadow:0 18px 46px #d982363d}.title-action:hover:before{border-color:#ffd69eb8}.title-action.is-title-selected{box-shadow:0 0 0 2px #66d9ff94,0 16px 42px #00000047}.title-action:focus-visible{outline-offset:4px;outline:2px solid #66d9ffd1}#scene-root,#scene-root canvas{z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.hud{--hud-button-size:34px;--hud-row-gap:10px;z-index:3;pointer-events:none;opacity:0;width:calc(100vw - 40px);min-height:150px;transition:opacity .42s,transform .42s;display:block;position:absolute;top:20px;left:20px;transform:translateY(-8px)}.is-playing .hud{opacity:1;transform:translateY(0)}.is-playing .hud-title{display:none}.eyebrow{color:#ffb15d;letter-spacing:0;margin:0 0 6px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:11px;font-weight:700}h1{text-shadow:0 18px 46px #00000080;margin:0;font-size:clamp(28px,5vw,56px);font-weight:780;line-height:.96}.hud h1{font-size:clamp(24px,3.4vw,38px)}.status-grid{left:0;top:calc(var(--hud-button-size) + 8px);gap:18px;width:126px;margin:0;display:grid;position:absolute}.status-group{gap:7px;display:grid}.status-group h2{color:#ffb15d;margin:0 0 1px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:12px;font-weight:900;line-height:1}.status-group dl{gap:8px;margin:0;display:grid}.status-group div{min-width:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0;display:block}.status-icon{display:none}.status-group dt{color:#f7efe39e;text-align:left;margin:0 0 3px;font-size:12px}.status-group dd{color:#f7efe3;text-align:left;margin:0;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:18px;font-weight:700}.status-group dd.is-low{color:#ff785d;text-shadow:0 0 12px #ff5c4273}.status-group dd.is-critical{animation:.75s steps(2,end) infinite oxygen-critical-blink}@keyframes oxygen-critical-blink{0%,to{color:#ff4b3e;opacity:1;text-shadow:0 0 10px #ff4236cc,0 0 22px #ff423673}50%{color:#ffd0c8;opacity:.42;text-shadow:none}}#mission-banner{z-index:6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-shadow:0 2px 12px #000000b8;background:#12090675;border:1px solid #ffcf7a42;width:min(520px,100vw - 160px);min-width:220px;padding:9px 12px;display:none;position:absolute;top:20px;left:50%;transform:translate(-50%)}.is-playing #mission-banner{display:block}#mission-banner span{color:#ffb15d;margin:0 0 5px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:11px;font-weight:800;line-height:1;display:block}#mission-banner p{color:#f7efe3;white-space:normal;overflow-wrap:anywhere;max-width:none;margin:0;font-size:11px;line-height:1.35}#mission-banner p b{color:#ffd08a;font-weight:900}.hud-buttons{--hud-button-size:34px;--hud-button-offset:20px;z-index:7;left:var(--hud-button-offset);right:var(--hud-button-offset);top:var(--hud-button-offset);pointer-events:none;display:none;position:absolute}#hud-toggle,#map-toggle{width:var(--hud-button-size);height:var(--hud-button-size);color:#ffcf98;cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1c0c089e;border:1px solid #ffd29757;border-radius:50%;align-self:start;place-items:center;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:12px;font-weight:900;display:grid;position:absolute;top:0}#hud-toggle{left:0}#map-toggle{right:0}.is-playing .hud-buttons{display:block}.hud-collapsed .hud,.hud-collapsed #labels,.hud-collapsed #interaction-prompt,.hud-collapsed #interaction-choice,.hud-collapsed #dialogue-box{visibility:hidden;pointer-events:none;opacity:0!important}.hud-collapsed #hud-toggle,.map-open #map-toggle{color:#1d0d08;background:#ffb15dd1}#labels{z-index:2;pointer-events:none;position:absolute;inset:0}.label{color:#ffe3bb;text-align:center;white-space:nowrap;opacity:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c0c08b8;border:1px solid #ffcf9252;min-width:86px;padding:7px 9px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:12px;line-height:1;transition:opacity .16s;position:absolute;transform:translate(-50%,-100%)}.label.is-visible{opacity:1}.multiplayer-label{color:#bfefff;background:#071218bd;border-color:#66d9ff7a;min-width:74px;box-shadow:0 0 18px #66d9ff29}#map-overlay{z-index:6;opacity:0;visibility:hidden;pointer-events:none;width:min(220px,100vw - 28px);transition:opacity .18s,transform .18s,visibility .18s;position:absolute;top:clamp(68px,10vh,112px);right:clamp(14px,3vw,34px);transform:translateY(-8px)scale(.98)}.is-playing.map-open #map-overlay{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.is-playing.map-open.map-expanded #map-overlay{z-index:12;-webkit-backdrop-filter:blur(10px)saturate(1.05);backdrop-filter:blur(10px)saturate(1.05);background:#fff5e114;place-items:center;width:100vw;padding:clamp(16px,3vw,40px);display:grid;position:fixed;inset:0;transform:none}.map-card{color:#2f1a12;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0}.map-expanded .map-card{width:min(86vmin,100vw - 36px,100vh - 72px)}.map-head{color:#2b1810;text-shadow:0 1px #ffffff61;justify-content:space-between;align-items:center;margin-bottom:10px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:11px;font-weight:900;display:none}.map-head span:last-child{color:#2b1810;background:#ffffff3d;border:1px solid #4326185c;place-items:center;width:24px;height:24px;display:grid}.map-radar{aspect-ratio:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(circle,#fff6e02e 0 3%,#0000 4%),radial-gradient(circle,#0000 0 36%,#fff5e14d 36.4%,#0000 37.2%),radial-gradient(circle,#0000 0 70%,#fff5e138 70.5%,#0000 71.4%),#160c0847;border:0;border-radius:50%;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffe8be38,0 0 28px #ff7e3c1a}.map-expanded .map-radar{background:radial-gradient(circle,#fff6e033 0 2.2%,#0000 3%),radial-gradient(circle,#0000 0 24%,#fff5e138 24.5%,#0000 25.2%),radial-gradient(circle,#0000 0 44%,#fff5e13d 44.5%,#0000 45.2%),radial-gradient(circle,#0000 0 70%,#fff5e138 70.5%,#0000 71.4%),#160c0857;overflow:visible;box-shadow:inset 0 0 0 1px #ffe8be52,0 0 60px #ff7e3c2e}.map-ring,.map-cross,.map-player,.map-marker{position:absolute;top:50%;left:50%}.map-ring{border:1px solid #fff5e14d;border-radius:50%;transform:translate(-50%,-50%)}.ring-a{width:44%;height:44%}.ring-b{width:78%;height:78%}.map-cross{display:none}.map-cross.x{width:100%;height:1px}.map-cross.y{width:1px;height:100%}.map-player{filter:drop-shadow(0 0 10px #ff3d2fcc);border-bottom:18px solid #ff3d2f;border-left:8px solid #0000;border-right:8px solid #0000;width:0;height:0;transform:translate(-50%,-65%)}.map-marker{background:#ffefbbf5;border:1px solid #ffffffd1;border-radius:50%;width:7px;height:7px;transform:translate(-50%,-50%);box-shadow:0 0 10px}.map-marker.type-ship{color:#ffcf7a;background:#ffcf7a}.map-marker.type-building{color:#79d9ff;background:#79d9ff}.map-marker.type-energy{color:#f7f06b;background:#f7f06b}.map-marker.type-vehicle{color:#9cff9b;background:#9cff9b}.map-marker.type-robot{color:#d7d2c6;background:#d7d2c6}.map-marker.type-unknown{color:#ffd95a;width:18px;height:18px;box-shadow:none;text-align:center;text-shadow:0 0 8px #ffd95aeb;background:0 0;border:0;border-radius:0;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:15px;font-weight:900;line-height:18px}.map-marker.type-oxygen{color:#ff9f36;background:#ff9f36}.map-marker.is-mission-target{z-index:2;color:#8cff86;background:#8cff86;border-color:#d7ffc9f5;width:13px;height:13px;animation:1.15s ease-in-out infinite alternate mission-target-glow;box-shadow:0 0 0 6px #76ff6e24,0 0 22px #76ff6ee6}.map-marker.is-oxygen-supply-target{z-index:2;color:#ff9f36;background:#ff9f36;border-color:#ffd38ff5;width:13px;height:13px;animation:1.15s ease-in-out infinite alternate oxygen-supply-glow;box-shadow:0 0 0 6px #ff9f3624,0 0 22px #ff9f36e6}@keyframes mission-target-glow{0%{box-shadow:0 0 0 4px #76ff6e1f,0 0 14px #76ff6ea6}to{box-shadow:0 0 0 8px #76ff6e33,0 0 28px #76ff6e}}@keyframes oxygen-supply-glow{0%{box-shadow:0 0 0 4px #ff9f361f,0 0 14px #ff9f36a6}to{box-shadow:0 0 0 8px #ff9f3633,0 0 28px #ff9f36}}.map-marker span{display:none}.map-expanded .map-marker{border-width:1px;width:7px;height:7px}.map-expanded .map-marker.is-mission-target,.map-expanded .map-marker.is-oxygen-supply-target{width:13px;height:13px}.map-expanded .map-marker.type-unknown{width:18px;height:18px;font-size:15px;line-height:18px}.map-expanded .map-player{border-bottom-width:26px;border-left-width:12px;border-right-width:12px}.map-expanded .map-marker span{color:#fff2dcf0;letter-spacing:0;text-shadow:0 1px 2px #000000e6,0 0 8px #ff7e3c57;pointer-events:none;width:max-content;max-width:18em;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:10px;font-weight:800;line-height:1.15;display:block;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.map-expanded .map-marker.type-unknown span{left:22px}.map-coordinates{color:#fff5e1eb;letter-spacing:0;text-align:center;text-shadow:0 0 8px #ff7e3c5c;margin-top:8px;padding:6px 8px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:11px;font-weight:800;line-height:1}.map-expanded .map-coordinates{margin-top:14px;font-size:15px}.map-list{gap:5px;margin-top:10px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:11px;display:none}.map-list div{color:#2f1a12eb;justify-content:space-between;gap:12px;display:flex}.map-list strong{color:#2a1710;font-weight:800}#interaction-prompt{z-index:5;color:#ffe4bb;text-align:center;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#170a06c2;border:1px solid #ffe5b866;min-width:190px;padding:11px 16px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:13px;font-weight:800;transition:opacity .16s,transform .16s;position:absolute;bottom:clamp(24px,7vh,70px);left:50%;transform:translate(-50%)translateY(10px)}#interaction-prompt.is-visible{opacity:1;transform:translate(-50%)translateY(0)}#interaction-choice{z-index:6;opacity:0;visibility:hidden;pointer-events:none;grid-template-columns:repeat(2,minmax(170px,1fr));gap:10px;width:min(520px,100vw - 32px);transition:opacity .16s,transform .16s,visibility .16s;display:grid;position:absolute;bottom:clamp(78px,13vh,132px);left:50%;transform:translate(-50%)translateY(10px)}#interaction-choice.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}#scale-gun-overlay{z-index:7;pointer-events:none;display:none;position:fixed;inset:0}#scale-gun-overlay.is-visible{display:block}.scale-reticle{border:1px solid #74e7ffd1;border-radius:50%;width:82px;height:82px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 18px #66d9ff6b,inset 0 0 16px #66d9ff29}.scale-reticle:before,.scale-reticle:after,.scale-reticle span:before,.scale-reticle span:after{content:"";background:#74e7ffdb;position:absolute;box-shadow:0 0 8px #66d9ffb8}.scale-reticle:before,.scale-reticle:after{width:1px;height:18px;left:50%;transform:translate(-50%)}.scale-reticle:before{top:-24px}.scale-reticle:after{bottom:-24px}.scale-reticle span:before,.scale-reticle span:after{width:18px;height:1px;top:50%;transform:translateY(-50%)}.scale-reticle span:before{left:-24px}.scale-reticle span:after{right:-24px}.scale-readout{color:#e8fbff;text-align:center;text-shadow:0 0 10px #66d9ff73;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#081016b8;border:1px solid #74e7ff57;gap:4px;min-width:240px;padding:10px 14px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;display:grid;position:absolute;top:calc(50% + 66px);left:50%;transform:translate(-50%)}.scale-readout strong{font-size:13px}.scale-readout span{color:#ddf8ffb8;font-size:11px}.scale-actions{pointer-events:auto;gap:10px;display:flex;position:absolute;bottom:72px;left:50%;transform:translate(-50%)}.scale-actions button{color:#e8fbff;letter-spacing:0;background:#09141cbd;border:1px solid #74e7ff6b;min-width:82px;height:40px;font-weight:800;box-shadow:0 0 18px #66d9ff1f}.scale-actions button:active{transform:translateY(1px)}.interaction-option{color:#ffe8c8;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;touch-action:manipulation;background:#1c0a07b8;border:1px solid #ffdaac47;grid-template-columns:1fr;align-items:center;gap:0;min-height:54px;padding:12px 16px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;display:grid}.interaction-option strong{font-size:13px;line-height:1.25}.interaction-option.is-selected{color:#effcff;background:#0a2430c7;border-color:#7ee1ffad;box-shadow:0 0 24px #59d4ff2e}.interaction-entry-button,.interaction-sheet-head button{color:#effcff;cursor:pointer;touch-action:manipulation;background:#0a2430d1;border:1px solid #7ee1ff80;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-weight:900}.interaction-entry-button{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-items:center;gap:3px;width:100%;min-height:54px;padding:9px 14px;display:grid;box-shadow:0 0 24px #59d4ff2e}.interaction-entry-button strong{font-size:14px;line-height:1.1}.interaction-entry-button span{color:#def8ffc2;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;line-height:1.2;overflow:hidden}.interaction-sheet-head{display:none}.interaction-sheet-list{display:contents}#dialogue-box{z-index:4;color:#e8f8ff;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0e171bb8;border:1px solid #74daff52;width:min(440px,100vw - 32px);padding:14px 16px;transition:opacity .18s,transform .18s;position:absolute;bottom:clamp(18px,4vh,34px);right:clamp(16px,3vw,36px);transform:translateY(10px)}#dialogue-box.is-visible{opacity:1;transform:translateY(0)}#dialogue-box strong{color:#76dfff;margin-bottom:4px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:12px;display:block}#dialogue-box span{font-size:14px;line-height:1.5;display:block}.dialogue-open #interaction-prompt,.dialogue-open #interaction-choice,.dialogue-open #dialogue-box,.dialogue-open #joystick,.dialogue-open .mobile-actions{visibility:hidden;pointer-events:none;opacity:0!important}#dialogue-stage{--dialogue-panel-bottom:clamp(18px, 4vh, 34px);--dialogue-panel-height:clamp(168px, 20vh, 196px);--dialogue-portrait-peek:clamp(150px, 18vh, 210px);z-index:30;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,visibility .18s;position:fixed;inset:0}#dialogue-stage.is-visible{opacity:1;visibility:visible;pointer-events:auto}.dialogue-scrim{-webkit-backdrop-filter:blur(1.5px)saturate(.92);backdrop-filter:blur(1.5px)saturate(.92);background:radial-gradient(circle at 50% 28%,#4dcaff1a,#0000 32%),linear-gradient(#02080c0f,#02080c75 74%,#01070abd);position:absolute;inset:0}.dialogue-portrait{bottom:calc(var(--dialogue-panel-bottom) + var(--dialogue-portrait-peek));pointer-events:none;filter:drop-shadow(0 28px 44px #00000080);opacity:0;visibility:hidden;z-index:1;transform-origin:bottom;will-change:opacity;justify-content:center;align-items:flex-end;width:min(28vw,360px);height:min(58vh,660px);transition:opacity .26s,visibility .26s;display:flex;position:absolute;transform:scale(.9)}.dialogue-portrait.is-speaking{opacity:1;visibility:visible;filter:drop-shadow(0 30px 54px #00000094)drop-shadow(0 0 18px #5ddeff2e)}.dialogue-portrait.is-listening{opacity:0;visibility:hidden}.dialogue-portrait-left{left:calc(50% + -1*min(490px,50vw - 18px) + clamp(10px,2vw,34px))}.dialogue-portrait-right{right:calc(50% + -1*min(490px,50vw - 18px) + clamp(10px,2vw,34px))}.dialogue-portrait img{object-fit:contain;object-position:bottom center;-webkit-user-select:none;user-select:none;max-width:100%;height:min(58vh,660px);transform:translateY(10%)}.dialogue-portrait-right img{height:min(58vh,660px)}.dialogue-character-tag{z-index:5;color:#dff8ff;white-space:nowrap;opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;background:#041016a8;border:1px solid #74daff4d;align-items:baseline;gap:7px;min-width:0;max-width:calc(50% - 8px);padding:4px 8px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;display:inline-flex;position:absolute;top:-31px;box-shadow:0 0 22px #4ad3ff1f}.dialogue-character-tag.is-speaking{opacity:1;visibility:visible}.dialogue-character-tag-left{left:0}.dialogue-character-tag-right{right:0}.dialogue-character-tag strong,.dialogue-character-tag span{text-overflow:ellipsis;display:inline;overflow:hidden}.dialogue-character-tag strong{flex:none;font-size:11px;line-height:1.1}.dialogue-character-tag span{color:#cff2ffa8;min-width:0;font-size:9px;line-height:1.2}.dialogue-panel{z-index:4;left:50%;bottom:var(--dialogue-panel-bottom);width:min(980px,100vw - 36px);height:var(--dialogue-panel-height);box-sizing:border-box;color:#ecfbff;-webkit-backdrop-filter:blur(18px)saturate(1.14);backdrop-filter:blur(18px)saturate(1.14);background:linear-gradient(90deg,#73dfff29,#0000 16% 84%,#73dfff24),linear-gradient(#091f2ae0,#051018d1);border:1px solid #78e0ff70;flex-direction:column;padding:16px 20px;display:flex;position:absolute;overflow:hidden;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff0f,0 -18px 46px #030e146b,0 0 42px #45cfff29}.dialogue-panel:before,.dialogue-panel:after{content:"";background:#9befff;width:42px;height:1px;position:absolute;top:-1px;box-shadow:0 0 12px #7de7ffdb}.dialogue-panel:before{left:18px}.dialogue-panel:after{right:18px}.dialogue-panel-topline{color:#83e8ff;justify-content:space-between;gap:18px;margin-bottom:8px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:12px;font-weight:900;line-height:1.2;display:flex}#dialogue-stats{color:#bdefff94;white-space:nowrap}#dialogue-item-image{object-fit:contain;object-position:left center;background:#020a0e5c;border:1px solid #7ae2ff3d;width:min(260px,44vw);max-height:132px;margin:2px 0 12px;display:block;box-shadow:0 0 24px #59d4ff1f}#dialogue-item-image[hidden]{display:none}#dialogue-text{color:#f2fdff;text-shadow:0 0 18px #52d5ff1f;flex:auto;min-height:0;margin:0;font-size:clamp(15px,1.7vw,18px);line-height:1.48;overflow-y:auto}.dialogue-choices{flex:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.dialogue-choices[hidden],#dialogue-continue[hidden]{display:none}.dialogue-choices button,#dialogue-continue{color:#eafcff;min-height:44px;font:inherit;text-align:left;cursor:pointer;pointer-events:auto;touch-action:manipulation;background:#0a2430a8;border:1px solid #7ae2ff57;font-size:13px;line-height:1.35;box-shadow:inset 0 0 18px #5fddff0f}.dialogue-choices button{align-items:center;padding:10px 12px;display:grid}.dialogue-choices button.is-selected,#dialogue-continue:hover,#dialogue-continue:focus-visible{background:#184252c7;border-color:#a3f1ffb8;outline:none}#dialogue-continue{text-align:center;flex:none;width:fit-content;min-width:112px;margin-top:14px;padding:0 18px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-weight:900;display:block}#exit-confirm{z-index:36;opacity:0;visibility:hidden;pointer-events:none;-webkit-backdrop-filter:blur(8px)saturate(1.05);backdrop-filter:blur(8px)saturate(1.05);background:linear-gradient(#03090e5c,#03090e94),#fff5e10d;place-items:center;padding:clamp(18px,4vw,48px);transition:opacity .16s,visibility .16s;display:grid;position:fixed;inset:0}#exit-confirm.is-visible{opacity:1;visibility:visible;pointer-events:auto}.exit-confirm-panel{color:#ecfbff;-webkit-backdrop-filter:blur(18px)saturate(1.14);backdrop-filter:blur(18px)saturate(1.14);background:linear-gradient(90deg,#73dfff21,#0000 22% 78%,#73dfff1c),linear-gradient(#091f2ae6,#051018db);border:1px solid #78e0ff6b;width:min(460px,100%);padding:22px;box-shadow:inset 0 0 0 1px #ffffff0f,0 24px 80px #00000061,0 0 42px #45cfff1f}.exit-confirm-kicker{color:#83e8ff;margin:0 0 8px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:12px;font-weight:900}.exit-confirm-panel h2{color:#f2fdff;letter-spacing:0;margin:0;font-size:clamp(20px,3vw,28px);line-height:1.25}.exit-confirm-text{color:#ecfbffb8;margin:10px 0 0;font-size:14px;line-height:1.6}.exit-confirm-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.exit-confirm-action{color:#eafcff;cursor:pointer;background:#0a2430a8;border:1px solid #7ae2ff57;min-height:44px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:13px;font-weight:900;box-shadow:inset 0 0 18px #5fddff0f}.exit-confirm-action:hover,.exit-confirm-action:focus-visible,.exit-confirm-action.is-selected{background:#184252c7;border-color:#a3f1ffb8;outline:none}.scanline{pointer-events:none;mix-blend-mode:screen;opacity:.45;background:linear-gradient(#ffffff06 50%,#0000 50%) 0 0/100% 4px,radial-gradient(circle,#0000 45%,#00000047 100%);position:absolute;inset:0}#joystick{z-index:4;touch-action:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f0e0a57;border:1px solid #ffdbac42;border-radius:50%;place-items:center;width:112px;height:112px;display:none;position:absolute;bottom:20px;left:20px}#joystick-knob{background:#ffbc689e;border-radius:50%;width:42px;height:42px;transform:translate(0);box-shadow:0 0 28px #ff843e6b}.mobile-actions{z-index:5;width:176px;height:176px;display:none;position:absolute;bottom:22px;right:20px}.mobile-actions button{color:#ffe6c4;letter-spacing:0;touch-action:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f0e0a57;border:1px solid #ffdbac4d;border-radius:50%;place-items:center;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-weight:900;display:grid;box-shadow:0 0 22px #ff843e38}#mobile-boost{width:58px;height:58px;font-size:14px;position:absolute;bottom:24px;right:112px}#mobile-lamp{width:58px;height:58px;font-size:14px;position:absolute;bottom:114px;right:28px}#mobile-jump{width:104px;height:104px;font-size:20px;position:absolute;bottom:0;right:0}.mobile-actions button:active{background:#ffb15d7a;transform:translateY(1px)scale(.98)}#controls-guide{z-index:32;opacity:0;visibility:hidden;pointer-events:none;-webkit-backdrop-filter:blur(8px)saturate(1.04);backdrop-filter:blur(8px)saturate(1.04);background:#fff5e10f;place-items:center;padding:clamp(18px,4vw,48px);transition:opacity .16s,visibility .16s;display:none;position:fixed;inset:0}#controls-guide.is-visible{opacity:0;visibility:hidden;pointer-events:none}.guide-panel{color:#fff0d8;background:#1a0c0875;border:1px solid #ffe4bb42;width:min(940px,100%);padding:clamp(16px,3vw,28px);box-shadow:0 24px 80px #0000004d}.guide-head{justify-content:space-between;align-items:center;margin-bottom:18px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:clamp(16px,2vw,22px);font-weight:900;display:flex}.guide-head span:last-child{color:#ffd08a;border:1px solid #ffe4bb61;place-items:center;min-width:48px;height:34px;display:grid}.guide-keyboard{gap:10px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;display:grid}.guide-row{justify-content:center;gap:10px;display:flex}.guide-key{color:#fff3df;text-align:center;background:#fff5e11a;border:1px solid #ffe4bb47;place-items:center;width:clamp(58px,8vw,82px);min-height:58px;padding:8px 7px;display:grid;box-shadow:inset 0 -4px #00000029,0 8px 20px #0000002e}.guide-key.wide{width:clamp(92px,13vw,140px)}.guide-key b{color:#ffd08a;font-size:clamp(13px,1.8vw,18px);line-height:1.15;display:block}.guide-key span{color:#fff0d8d1;margin-top:5px;font-size:clamp(10px,1.25vw,13px);line-height:1.15;display:block}@media (hover:none),(pointer:coarse),(width<=700px){#dialogue-stage{--dialogue-panel-bottom:14px;--dialogue-panel-height:min(42vh, 350px);--dialogue-portrait-peek:calc(var(--dialogue-panel-height) - 36px)}.dialogue-open .hud,.dialogue-open .hud-buttons,.dialogue-open #mission-banner,.dialogue-open #map-overlay,.dialogue-open #labels,.dialogue-open #scale-gun-overlay{visibility:hidden;pointer-events:none;opacity:0!important;display:none!important}.dialogue-scrim{-webkit-backdrop-filter:blur(6px)saturate(.9);backdrop-filter:blur(6px)saturate(.9);background:radial-gradient(circle at 50% 20%,#4dcaff1f,#0000 38%),linear-gradient(#02080c52,#02080cbd)}.is-playing #joystick{display:grid}.is-playing .mobile-actions{display:block}.dialogue-open #interaction-prompt,.dialogue-open #interaction-choice,.dialogue-open #dialogue-box,.dialogue-open #joystick,.dialogue-open .mobile-actions{display:none!important}.hud{width:calc(100vw - 40px);left:20px}#mission-banner{width:min(360px,100vw - 152px);min-width:0;top:18px}.dialogue-portrait{width:min(56vw,290px);height:min(42vh,360px);transform:scale(.9)}.dialogue-portrait.is-speaking{transform:scale(.9)}.dialogue-portrait-left{left:2vw;right:auto}.dialogue-portrait-right{left:auto;right:2vw}.dialogue-portrait img,.dialogue-portrait-right img{height:min(42vh,360px);transform:translateY(6%)}.dialogue-character-tag{display:none}.dialogue-character-tag strong{font-size:10px}.dialogue-character-tag span{font-size:8px}.dialogue-panel{width:min(860px,100vw - 36px);padding:14px}.dialogue-panel-topline{gap:5px;font-size:11px;display:grid}#dialogue-stats{white-space:normal}#dialogue-item-image{display:none}.dialogue-choices{grid-template-columns:1fr;gap:8px}.dialogue-choices button,#dialogue-continue{min-height:54px;font-size:15px}#dialogue-continue{width:100%}}@media (width<=520px){#title-screen{align-items:center}h1{max-width:8em}.status-grid dt{font-size:11px}.status-grid dd{font-size:16px}#dialogue-box{bottom:146px;left:16px;right:16px}#interaction-prompt{min-width:0;max-width:calc(100vw - 150px);bottom:132px}#interaction-choice{grid-template-columns:1fr;width:min(360px,100vw - 32px);bottom:142px}.interaction-option{min-height:48px;padding:11px 14px}#map-overlay{width:min(190px,100vw - 28px);top:96px;left:auto;right:14px}.dialogue-portrait{width:min(54vw,250px);height:min(44vh,380px)}.dialogue-portrait-left{left:-4vw;right:auto}.dialogue-portrait-right{left:auto;right:-4vw}.dialogue-portrait img,.dialogue-portrait-right img{height:min(44vh,380px)}#dialogue-text{font-size:14px;line-height:1.5}}@media (hover:none),(pointer:coarse),(width<=700px){#interaction-choice.is-touch-entry{left:50%;bottom:max(230px, calc(env(safe-area-inset-bottom) + 212px));z-index:8;grid-template-columns:1fr;width:min(270px,100vw - 128px);min-width:178px;display:block;position:fixed;transform:translate(-50%)translateY(8px)}#interaction-choice.is-touch-entry.is-visible{transform:translate(-50%)translateY(0)}#interaction-choice.is-drawer-open{z-index:14;width:auto;padding:0 18px calc(env(safe-area-inset-bottom) + 18px);-webkit-backdrop-filter:blur(4px)saturate(.92);backdrop-filter:blur(4px)saturate(.92);background:linear-gradient(#02080c1a,#02080c8a 58%,#02080cc2),#00000014;flex-direction:column;justify-content:flex-end;gap:10px;display:flex;position:fixed;inset:0;transform:none}#interaction-choice.is-drawer-open.is-visible{transform:none}#interaction-choice.is-drawer-open .interaction-sheet-head,#interaction-choice.is-drawer-open .interaction-sheet-list{width:min(460px,100%);margin:0 auto}#interaction-choice.is-drawer-open .interaction-sheet-head{color:#83e8ff;text-shadow:0 0 16px #59d4ff3d;justify-content:space-between;align-items:center;min-height:44px;padding:0 2px;font-family:SF Mono,Roboto Mono,ui-monospace,monospace;font-size:13px;font-weight:900;display:flex}.interaction-sheet-head button{min-height:34px;padding:0 12px;font-size:12px}#interaction-choice.is-drawer-open .interaction-sheet-list{overscroll-behavior:contain;gap:10px;max-height:min(46vh,340px);padding-bottom:2px;display:grid;overflow-y:auto}#interaction-choice.is-drawer-open .interaction-option{background:#1c0a07d6;min-height:58px;padding:14px 16px}.interaction-drawer-open #joystick,.interaction-drawer-open .mobile-actions{opacity:.18;pointer-events:none}}
