:root{--ui-scale:1;font-size:calc(clamp(16px,1.05vw,25px)*var(--ui-scale));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{color:#f3f0d9;background:#080f10;margin:0;font-family:Arial,Helvetica,sans-serif;overflow:hidden}button,a,input,select{touch-action:manipulation}button,input,select{font:inherit}button{color:#f3f0d9;cursor:pointer;background:#172a22;border:1px solid #819077;padding:.55rem .8rem;font-weight:700;box-shadow:2px 2px #07110e}button:hover{background:#395143}button:disabled{opacity:.55;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #ffdf72}[hidden]{display:none!important}#game{place-items:center;display:grid;position:fixed;inset:0}#scene{width:min(100vw,177.778vh);height:min(100vh,56.25vw);image-rendering:pixelated;outline:none;display:block}.topbar{z-index:5;pointer-events:none;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1rem;display:flex;position:fixed;inset:0 0 auto}.topbar>*{pointer-events:auto}.logo{letter-spacing:-.1rem;color:#e2ce69;text-shadow:2px 2px #17392c;font:900 1.8rem Courier New,monospace;text-decoration:none}.logo span{color:#f2ecd4}.top-actions{align-items:center;gap:.4rem;display:flex}.top-actions>span{color:#c7d9c0;background:#10221fee;padding:.5rem}.top-actions .connected{color:#a8e99b}.overlay{z-index:4;background:linear-gradient(90deg,#10231afa,#10231aed 55%,#10231a99);grid-template-columns:minmax(24rem,42rem) minmax(10rem,1fr);align-items:center;gap:5vw;padding:5.5rem 7vw 2rem;display:grid;position:fixed;inset:0;overflow:auto}.brief{max-width:42rem}.eyebrow{letter-spacing:.07rem;color:#e5d887;font-size:1rem}h1{letter-spacing:-.12rem;text-transform:uppercase;text-shadow:3px 3px #081911;margin:1rem 0;font:900 clamp(2.4rem,4.5vw,4rem)/1 Courier New,monospace}.brief>p{color:#d6e0ce;margin:.65rem 0;font-size:1.1rem;line-height:1.5}#hero-description{color:#ffe2a0;font-size:1rem;line-height:1.5}.menu-buttons{grid-template-columns:1fr 1fr;gap:.55rem;margin:1rem 0;display:grid}.menu-buttons #primary,.menu-buttons #hero-cycle,.menu-buttons #mission-cycle{grid-column:1/-1}.primary{color:#142317;background:#e3d77b;border:2px solid #fff0b3;padding:.8rem;font-weight:800}.primary:hover{background:#f2e79b}.fine,.brief .fine{color:#bdceb6;font-size:1rem;line-height:1.5}.archive-link{color:#d4ddc6;text-underline-offset:.2rem;font-size:1rem}.key-art{justify-self:center;width:min(25vw,23rem);height:30rem;max-height:55vh}.key-art img{object-fit:contain;object-position:center bottom;width:100%;height:100%;image-rendering:pixelated}.key-art span{display:none}#result{color:#e3d683;font-size:1rem;line-height:1.5}.menu-open #hud,.menu-open #battle-footer{visibility:hidden}.menu-open #pause{display:none}dialog{color:#f0ead5;z-index:20;background:#14291f;border:2px solid #91a07a;width:min(48rem,96vw);max-height:92vh;padding:1.5rem;overflow:auto}dialog::backdrop{background:#06110ded}.dialog-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.dialog-head small{letter-spacing:.1rem;color:#ded89f;font-size:1rem}h2{margin:.3rem 0 .7rem;font-size:1.7rem}dialog p,dialog label{color:#d6e3cd;font-size:1rem;line-height:1.5}dialog select,dialog input[type=number]{color:#f0ead5;background:#24392b;border:1px solid #80956f;max-width:100%;padding:.4rem}dialog input[type=number]{width:4rem}dialog input{accent-color:#e9d77f}#controller-info{overflow-wrap:anywhere}#pad-visual{flex-wrap:wrap;gap:.3rem;margin:1rem 0;display:flex}.pad-button,.pad-axis{color:#c5d8b7;border:1px solid #66745b;padding:.3rem;font:1rem monospace}.pad-button.active{color:#162519;background:#e2d477}.bindings-head,.binding-row{grid-template-columns:1.2fr 1fr 1fr;align-items:center;gap:.6rem;font-size:1rem;display:grid}.bindings-head{color:#bccbab;padding:.5rem 0}.binding-row{margin:.4rem 0}.binding-row button{overflow-wrap:anywhere;padding:.5rem}.axis-settings{grid-template-columns:1fr 1fr;gap:.8rem;margin:1rem 0;display:grid}.axis-settings label{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.axis-settings input[type=range]{min-width:7rem;max-width:100%}#capture-hint{color:#ffe092;min-height:1.2rem}@media (width<=1500px){.top-actions>span{display:none}}@media (width<=1000px){.overlay{grid-template-columns:1fr;padding:5rem 6vw 2rem}.key-art{display:none}.brief{max-width:none}}@media (width<=700px){.topbar,.top-actions button{padding:.5rem}.logo{font-size:1.4rem}#fullscreen{display:none}.axis-settings{grid-template-columns:1fr}.bindings-head,.binding-row{grid-template-columns:1fr 1fr 1fr;gap:.3rem}dialog{padding:1rem}.menu-buttons{grid-template-columns:1fr}.menu-buttons>*{grid-column:1!important}}@media (height<=700px){.overlay{align-items:start;padding-top:4.5rem}.brief>p{margin:.4rem 0}.key-art{height:22rem}.menu-buttons{margin:.7rem 0}}.voice-preview{border-top:1px solid #879b78;margin:1rem 0;padding:1rem 0}.voice-preview h3{margin:.5rem 0;font-size:1.2rem}.voice-preview div{margin:1rem 0}.voice-preview select{width:min(100%,24rem)}.sr-only{clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}:root{--hud-icon:clamp(48px,3rem,80px);--hud-type:clamp(16px,1rem,24px)}body:not(.menu-open) .logo{display:none}.top-actions{margin-left:auto}.utility-icon{background:#0b191be0;border:2px solid #46554c;width:clamp(36px,2.2rem,48px);height:clamp(36px,2.2rem,48px);padding:7px;box-shadow:2px 2px #060e11}.utility-icon svg{width:100%;height:100%;display:block}#hud{z-index:2;pointer-events:none;position:fixed;top:16px;left:16px}.objectives{align-items:center;gap:6px;display:flex}.objective{pointer-events:auto;min-height:36px;font:700 var(--hud-type) "Courier New",monospace;background:#0c191edb;border-bottom:2px solid #47584f;align-items:center;gap:4px;padding:3px 6px;display:flex;position:relative}.objective>span{width:28px;height:28px;display:block}.objective svg{width:100%;height:100%;display:block}.objective.complete{color:#7ce5af;border-color:#7ce5af}.objective.complete:after{content:"✓";color:#8dffb7;background:#102821;font:700 16px monospace;position:absolute;top:-7px;right:-3px}.mission-time{font:700 var(--hud-type) "Courier New",monospace;color:#b7c3b6;text-shadow:2px 2px #07151b;padding:0 8px}#battle-footer{z-index:2;pointer-events:none;align-items:center;gap:16px;display:flex;position:fixed;bottom:18px;left:16px;right:auto}.hero-hud{height:var(--hud-icon);pointer-events:auto;background:#0a171de8;border-left:3px solid #e6cc85;align-items:center;gap:8px;padding:3px 8px 3px 3px;display:flex}.hero-hud img{width:calc(var(--hud-icon)*.68);height:calc(var(--hud-icon)*.95);object-fit:contain;image-rendering:pixelated;filter:drop-shadow(2px 2px #070d0f)}.hero-vitals{width:clamp(48px,4rem,88px)}.health{background:#333b38;border:2px solid #091415;height:8px}.health span{background:#95df9b;height:100%;transition:width .12s linear;display:block}.life-count{font:700 var(--hud-type) "Courier New",monospace;align-items:center;gap:6px;margin-top:6px;display:flex}.life-count>span{width:22px;height:22px}.life-count svg{width:100%;height:100%;display:block}.abilities{align-items:center;gap:12px;display:flex}.ability-icon{width:var(--hud-icon);height:var(--hud-icon);color:#a6dce4;pointer-events:auto;filter:drop-shadow(2px 3px #061017);isolation:isolate;position:relative}.ability-icon:before{content:"";clip-path:polygon(20% 0,80% 0,80% 10%,90% 10%,90% 20%,100% 20%,100% 80%,90% 80%,90% 90%,80% 90%,80% 100%,20% 100%,20% 90%,10% 90%,10% 80%,0 80%,0 20%,10% 20%,10% 10%,20% 10%);background:#0a171de8;position:absolute;inset:3px}.ability-icon.special{color:#80e6b1}.ability-icon.ultimate{color:#ffd476}.ability-art{place-items:center;display:grid;position:absolute;inset:13%}.ability-art svg{width:100%;height:100%;image-rendering:pixelated;transition:opacity .1s}.cooldown-ring{fill:none;stroke-width:2px;width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.ring-track{stroke:#50645b;opacity:.6}.ring-value{stroke:currentColor;stroke-width:2.4px}.ability-icon.unavailable .ability-art{opacity:.45}.ability-icon.weapon .ring-value{opacity:.6}.ability-icon.ultimate.ready .ring-value{filter:drop-shadow(0 0 2px #ffd47699)}.ability-icon kbd{white-space:nowrap;text-overflow:ellipsis;color:#fff0c6;min-width:22px;max-width:110%;font:700 var(--hud-type)/1.15 "Courier New",monospace;text-align:center;background:#15212a;border:1px solid #8f9a95;padding:1px 4px;position:absolute;bottom:-5px;right:-2px;overflow:hidden;box-shadow:2px 2px #050d13}.charge-pips{gap:4px;height:6px;display:flex;position:absolute;bottom:-7px;left:2px;right:25px}.charge-pips i{background:#203d38;outline:1px solid #667d72;flex:1;overflow:hidden}.charge-pips b{transform-origin:0;background:#7bae95;width:100%;height:100%;display:block}.charge-pips .filled b{background:#b4f5bf}#toast{font:700 var(--hud-type)/1.25 "Courier New",monospace;text-align:center;opacity:0;pointer-events:none;z-index:8;background:#0a171deb;border-bottom:2px solid #e5d18c;max-width:75vw;padding:6px 14px;position:fixed;top:70px;left:50%;transform:translate(-50%)}#toast.visible{opacity:1}#interact-prompt{pointer-events:none;color:#ffeaa6;font:700 var(--hud-type) "Courier New",monospace;background:#0a171de8;border-bottom:2px solid #d3da98;align-items:center;gap:6px;padding:4px 8px;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%)}#interact-prompt svg{width:32px;height:32px}#interact-prompt kbd{font:inherit;border:1px solid #9aac9e;padding:2px 5px}#interact-prompt:empty,.menu-open #interact-prompt{display:none}@media (width<=700px){#hud{top:10px;left:8px}.mission-time{display:none}.objectives{gap:3px}.objective{min-height:30px;padding:2px 4px}.objective>span{width:22px;height:22px}.topbar{padding:8px}.top-actions{gap:4px}.utility-icon{width:32px;height:32px;padding:5px}#battle-footer{gap:10px;bottom:14px;left:8px}.abilities{gap:8px}.hero-vitals{width:44px}.hero-hud{gap:4px;height:48px;padding-right:4px}.hero-hud img{width:32px;height:44px}.ability-icon{width:48px;height:48px}.ability-icon kbd{font-size:16px}#interact-prompt{bottom:80px}#toast{top:54px}}@media (height<=500px){#battle-footer{bottom:12px}.hero-hud{height:48px}.hero-hud img{height:44px}.ability-icon{width:48px;height:48px}.ability-icon kbd{font-size:16px}#toast{top:54px}}#roster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.roster-hero{flex-direction:column;align-items:center;gap:.5rem;min-width:0;padding:.8rem .5rem;display:flex}.roster-hero strong{font-size:1rem}.roster-hero>span:last-child{color:#ccdbbc;font-size:.9rem;font-weight:400}.roster-image{height:90px;display:block}.roster-image img{object-fit:contain;max-width:100%;height:100%;image-rendering:pixelated}@media (width<=600px){#roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-image{height:70px}}.ammo-count{color:#fff0c6;min-width:21px;font:700 var(--hud-type)/1.1 "Courier New",monospace;background:#14252b;border:1px solid #829d99;padding:1px 4px;position:absolute;top:-5px;left:-3px}.weapon.reloading .ammo-count{color:#ffc47a;border-color:#db9b59}.weapon.reloading .ring-value{stroke:#ffc47a;opacity:1}.weapon.reloading .ability-art{opacity:.35}.cinematic{color:#fff;background:#061b21;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;font-family:inherit;position:fixed;inset:0;overflow:hidden}.cinematic::backdrop{background:#05080b}.cinematic[data-kind=boss]{background:#240a13}.reveal-art{object-fit:cover;object-position:65% top;width:100%;height:100%;image-rendering:pixelated;position:absolute}.reveal-shade{background:linear-gradient(90deg,#030a10f0,#030a1099 33%,#0000 72%),linear-gradient(#0000 75%,#030a10e6);position:absolute;inset:0}.reveal-copy{text-shadow:3px 3px #071217;width:42%;position:absolute;top:23%;left:6vw}.reveal-copy h1{color:#ffe897;overflow-wrap:normal;margin:22px 0;font-size:clamp(36px,5.8vw,104px);line-height:1.08}.reveal-kicker{letter-spacing:.12em;color:#94d1ca;font-size:clamp(18px,1.5vw,28px)}.reveal-subtitle{max-width:480px;font-size:clamp(20px,2vw,34px);line-height:1.5}.cinematic[data-kind=boss] h1{color:#ff7864}.cinematic[data-kind=boss] .reveal-kicker{color:#ffb291}.reveal-continue{color:#fff;background:#102b32;border:3px solid #ebd394;padding:16px 22px;font-size:clamp(20px,1.8vw,32px);position:absolute;bottom:8%;left:6vw;box-shadow:5px 5px #02080a}.reveal-continue:disabled{opacity:.45}.reveal-continue:focus-visible{outline-offset:5px;outline:4px solid #fff}#boss-status{text-align:center;pointer-events:none;text-shadow:2px 2px #000;color:#fff2cc;background:#1a1119dd;border:2px solid #7c3f37;width:min(46vw,700px);padding:8px 14px;font-size:clamp(18px,1.5vw,28px);position:absolute;top:100px;left:50%;transform:translate(-50%)}#boss-status progress{accent-color:#e35945;width:100%;height:10px;margin-top:7px;display:block}@media (width<=700px){.reveal-copy{width:65%;top:12%;left:5vw}.reveal-copy h1{font-size:38px}.reveal-art{object-position:60% top}.reveal-subtitle{font-size:20px}#boss-status{width:55vw;top:85px}.reveal-continue{bottom:6%}}#menu{isolation:isolate;background:linear-gradient(90deg,#071b28f5 0%,#081c2ae8 42%,#09172170);grid-template-columns:minmax(260px,440px) 1fr;gap:2vw;padding:8vh 7vw}#menu-fx{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;z-index:-1;position:absolute;inset:0}#menu .brief{z-index:2;align-self:center}#menu h1{letter-spacing:-.055em;color:#f6d75e;text-shadow:4px 4px #0a0e17;margin:24px 0;font-size:clamp(48px,6vw,110px);line-height:.9}#menu .eyebrow{color:#8cb8cd;font:700 clamp(14px,1.1vw,22px) monospace}#menu-copy{max-width:34ch;min-height:1.4em;font-size:clamp(16px,1.2vw,23px);line-height:1.4}#menu .menu-buttons{flex-direction:column;align-items:stretch;gap:9px;max-width:330px;margin:28px 0 18px;display:flex}#menu .menu-buttons button{text-align:left;background:#0b2433d9;border:0;border-left:4px solid #5b7a86;padding:12px 20px;font:700 clamp(20px,1.65vw,30px)/1.2 Courier New,monospace;box-shadow:3px 3px #050c14}#menu .menu-buttons button:hover,#menu .menu-buttons button:focus-visible{background:#21485b;border-color:#ffe083}#menu .menu-buttons .primary{color:#142b36;background:#f0cf63;border-color:#ffeab0}#menu .key-art{z-index:-2;width:auto;height:auto;max-height:none;display:block;position:absolute;inset:0 0 0 30%;overflow:hidden}#menu .key-art img{object-fit:cover;object-position:65% center;opacity:.85;width:100%;height:100%;image-rendering:pixelated}.menu-audio{box-shadow:none;color:#a9c6cc;background:0 0;border:0;padding:8px 0;font-size:clamp(16px,1.15vw,22px)}#operations-grid{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;display:grid}.operation-card{text-align:left;align-items:center;gap:14px;min-height:90px;display:flex}.operation-card>b{color:#efcc63;font:900 30px monospace}.operation-card strong,.operation-card small{display:block}.operation-card small{color:#b0c7c4;margin-top:8px;font-size:16px}.reveal-fx{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;z-index:2;position:absolute;inset:0}.reveal-copy,.reveal-continue{z-index:3}.cinematic .reveal-art{transform:translateX(var(--reveal-x,0px)) scale(var(--reveal-scale,1));transform-origin:75%;clip-path:inset(0 var(--reveal-crop,0%) 0 0);image-rendering:pixelated}.cinematic .reveal-copy{transform:translateX(var(--title-x,0px));opacity:var(--title-opacity,1)}@media (height<=650px){#menu{padding:5vh 7vw}#menu h1{margin:12px 0;font-size:52px}#menu .menu-buttons{gap:5px;margin:14px 0 8px}#menu .menu-buttons button{padding:9px 16px;font-size:20px}#menu-copy{font-size:16px}}@media (width<=700px){#operations-grid{grid-template-columns:1fr}#menu .key-art{opacity:.45;left:0}#menu{grid-template-columns:1fr}#menu h1{font-size:62px}}#menu .menu-buttons .primary:hover,#menu .menu-buttons .primary:focus-visible{color:#142b36;background:#ffe28b}.menu-open .logo{visibility:hidden}.cinematic .reveal-subtitle{max-width:36ch}.cinematic[data-kind=boss] .reveal-continue{background:#331a1b;border-color:#e36648}.cinematic[data-boss=putin] .reveal-kicker{color:#ff694f;font-weight:900}.cinematic[data-kind=boss] .reveal-copy h1{font-size:clamp(34px,5vw,88px)}#pause-menu{z-index:9;background:#06101599;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.pause-panel{background:#101f25ed;border:4px solid #708a82;width:min(420px,90vw);padding:26px 30px;font-family:Courier New,monospace;box-shadow:7px 7px #030a0dc9}.pause-panel:before{content:"";background:linear-gradient(90deg,#429fcb 50%,#f0ce64 50%);height:6px;margin:-26px -30px 22px;display:block}.pause-panel small{color:#afc7c8;font-size:clamp(16px,1.2vw,23px)}.pause-panel h1{color:#f4df9e;margin:14px 0 24px;font-size:clamp(36px,3.6vw,62px)}.pause-panel nav{gap:9px;display:grid}.pause-panel button{text-align:left;box-shadow:none;background:#192f37;border:0;border-left:4px solid #526d6c;padding:11px 14px;font-size:clamp(19px,1.4vw,27px)}.pause-panel button:hover,.pause-panel button:focus-visible{background:#2b4b54;border-color:#f4d778}.pause-panel button.primary{color:#10252e;background:#e6cd77;border-color:#ffedb3}.paused .topbar{visibility:hidden}.paused #interact-prompt{display:none}@media (height<=600px){.pause-panel{padding:16px 24px}.pause-panel:before{margin:-16px -24px 12px}.pause-panel h1{margin:9px 0 12px;font-size:32px}.pause-panel button{padding:8px 12px;font-size:18px}}.cinematic .reveal-art{transform:translate(calc(var(--reveal-x,85vw) + var(--shake-x,0px)),var(--shake-y,0px)) scale(var(--reveal-scale,1.35));clip-path:inset(0 0 0 var(--reveal-crop,100%));will-change:transform,clip-path}.cinematic .reveal-copy{transform:translate(calc(var(--title-x,-110vw) + var(--shake-x,0px)),var(--shake-y,0px));will-change:transform}.cinematic .reveal-continue:disabled{visibility:hidden}.cinematic .reveal-continue{transition:opacity .2s}.cinematic[data-ready=false] .reveal-art{visibility:hidden}.cinematic .reveal-shade{transform:translateX(calc((1 - var(--band,0)) * -100%))}@media (prefers-reduced-motion:reduce){.cinematic .reveal-art,.cinematic .reveal-copy,.cinematic .reveal-shade{will-change:auto}}.project-links{align-items:center;gap:1rem;margin-top:1rem;display:flex}.project-links button{color:#c9d4c1;background:0 0;border:0;padding:.3rem;font-size:1rem}.menu-buttons small{color:#eac376;font-size:.6em}#online-menu,#about-game{max-width:min(640px,92vw)}#online-menu label{gap:.5rem;margin:1rem 0;display:grid}#online-menu input,#online-menu select{font:inherit;color:#fff3cf;background:#172722;border:2px solid #778c70;padding:.65rem}#online-code{text-transform:uppercase;letter-spacing:.16em}.online-actions{gap:.5rem;display:grid}#online-status{color:#ffdf6a;overflow-wrap:anywhere;min-height:1.6em}#about-game a{color:#ffdf6a}#support-link{border:2px solid #ffdf6a;padding:1rem;display:inline-block}.flag-transition{z-index:100;pointer-events:none;width:100%;height:100%;image-rendering:pixelated;position:fixed;inset:0}.cinematic .flag-transition{z-index:20}#feedback{width:min(52rem,96vw);padding:1rem 1.2rem}#feedback iframe{background:#fff;border:0;border-radius:3px;width:100%;height:52vh;min-height:300px;padding:12px;display:block}.feedback-tools{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.feedback-tools a{color:#83dafa;font-size:.9rem}#feedback details{margin:.5rem 0;font-size:.85rem}#feedback summary{cursor:pointer;color:#c3d7cb}#feedback pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:8rem;font-size:.8rem;overflow:auto}#feedback .fine{margin:.6rem 0;font-size:.9rem}#feedback-note:empty{display:none}#feedback-note{color:#ffe29a;font-size:.9rem}.project-links{flex-wrap:wrap}#pause-menu .pause-panel nav{gap:.45rem}.story-active #hud,.story-active #battle-footer{visibility:hidden}.story-skip{z-index:7;background:#071015d9;padding:.35rem .6rem;font-size:16px;position:fixed;bottom:1.5vh;right:2vw}.touch-device{overscroll-behavior:none;-webkit-user-select:none;user-select:none}.touch-device input,.touch-device textarea{-webkit-user-select:text;user-select:text}.touch-device #scene{touch-action:none;width:min(100vw,177.778dvh);height:min(100dvh,56.25vw)}#touch-controls{z-index:6;pointer-events:none;--touch-size:clamp(48px,13dvh,62px);position:fixed;inset:0}#touch-controls button,#touch-stick{pointer-events:auto;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}#touch-stick{left:max(20px,env(safe-area-inset-left));bottom:max(20px,env(safe-area-inset-bottom));aspect-ratio:1;background:#0a1a27a8;border:3px solid #a6dce482;border-radius:50%;place-items:center;width:clamp(114px,34dvh,144px);display:grid;position:absolute}.stick-arrows{color:#d5ecea9c;text-align:center;pointer-events:none;font:700 25px/1.15 monospace}#touch-stick i{pointer-events:none;background:#244e58c9;border:3px solid #ffdf76;border-radius:50%;width:40%;height:40%;position:absolute;box-shadow:2px 3px #041016}.touch-buttons{right:max(18px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:calc(var(--touch-size)*3.45);height:calc(var(--touch-size)*2.3);position:absolute}.touch-action{width:var(--touch-size);height:var(--touch-size);color:#ffdf76;background:#071a27bd;border:2px solid #b0d3dcaa;border-radius:25%;padding:5px;position:absolute;box-shadow:2px 3px #050f1899}.touch-action.fire{width:calc(var(--touch-size)*1.17);height:calc(var(--touch-size)*1.17);bottom:0;right:0}.touch-action.jump{left:calc(var(--touch-size)*1.14);color:#8bdfff;font:700 34px/1 monospace;bottom:0}.touch-action.interact{color:#e3c0ff;font:700 34px/1 monospace;bottom:0;left:0}.touch-action.special{left:calc(var(--touch-size)*1.14);color:#80e6b1;top:0}.touch-action.ultimate{color:#ffdf76;top:0;right:0}.touch-art{position:absolute;inset:18%}.touch-art svg{width:100%;height:100%}.touch-ring{fill:none;stroke:currentColor;stroke-width:2px;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.touch-action small{color:#fff0c6;background:#112529;min-width:18px;font:700 15px monospace;position:absolute;bottom:-5px;right:-3px}.touch-action small:empty{display:none}.touch-action.unavailable .touch-art{opacity:.45}.touch-action.pressed{background:#456660;border-color:#fff1bd;transform:translateY(2px)}.touch-action.nearby{border-color:#ffe399;box-shadow:0 0 0 3px #ffe39944}#rotate-device{z-index:12;text-align:center;background:#07151af7;place-items:center;padding:30px 20px;display:grid;position:fixed;inset:0}#rotate-device p{line-height:1.5}.rotate-phone{color:#ffdc63;font:700 54px monospace;animation:2s steps(6,end) infinite phone-turn;display:block}#rotate-device button{min-height:48px}@keyframes phone-turn{0%,to{transform:rotate(0)}50%{transform:rotate(-8deg)}}.touch-device #mobile-tip{color:#8ee1ec;max-width:38em;font-size:14px;line-height:1.4}.touch-device #fullscreen{display:block}.touch-device .topbar{padding-top:max(6px,env(safe-area-inset-top));padding-right:max(8px,env(safe-area-inset-right));padding-left:max(8px,env(safe-area-inset-left))}.touch-device .top-actions button{width:42px;min-width:42px;height:42px;padding:6px}.touch-device .top-actions{gap:6px}.touch-device dialog{max-height:calc(100dvh - 20px);max-width:calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right) - 20px);overscroll-behavior:contain}.touch-device #pause-menu{padding:10px max(18px,env(safe-area-inset-right)) 10px max(18px,env(safe-area-inset-left));overflow:auto}.touch-device .pause-panel{width:min(460px,92vw);max-height:calc(100dvh - 20px);padding:14px;overflow:auto}.touch-device .pause-panel h1{margin:4px 0 10px;font-size:26px}.touch-device .pause-panel nav{grid-template-columns:1fr 1fr!important;display:grid!important}.touch-device .pause-panel button{min-height:44px;padding:8px;font-size:16px}@media (orientation:landscape) and (height<=600px){.touch-device #menu{padding:12px max(76px,env(safe-area-inset-right)) 12px max(24px,env(safe-area-inset-left));min-height:100dvh;display:block}.touch-device .brief{max-width:660px}.touch-device #menu h1{margin:5px 0;font-size:32px}.touch-device #menu .eyebrow{font-size:12px}.touch-device .brief>p{margin:5px 0;font-size:14px}.touch-device #menu .menu-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-width:none;margin:8px 0;display:grid}.touch-device #menu .menu-buttons button{min-height:44px;padding:7px;font-size:15px;grid-column:auto!important}.touch-device #menu .menu-buttons #primary{grid-column:1/3!important}.touch-device .project-links{gap:12px;margin:5px 0}.touch-device .project-links button{min-height:36px;padding:5px;font-size:14px}.touch-device .menu-audio{min-height:36px;margin-top:4px;font-size:14px;position:static}.touch-device .topbar{align-items:flex-start}.touch-device.menu-open .top-actions{flex-direction:column}.touch-device #hud{top:8px;left:50%;right:auto;transform:translate(-50%)}.touch-device #hud .objectives{gap:6px}.touch-device #hud .objective{height:30px;font-size:14px}.touch-device #hud .objective svg{width:24px;height:24px}.touch-device .mission-time{font-size:14px}.touch-device #battle-footer{inset:8px auto auto max(8px,env(safe-area-inset-left));padding:0;display:block}.touch-device #hero-status{gap:6px;height:40px}.touch-device #hero-portrait{width:32px;height:40px}.touch-device .hero-vitals{min-width:48px}.touch-device .life-count{font-size:16px}.touch-device .life-count svg{width:16px;height:16px}.touch-device .health{width:64px;height:6px}.touch-device #ability-icons{display:none}.touch-device #boss-status{width:48vw;padding:3px 8px;font-size:14px;top:52px}.touch-device #toast{max-width:64vw;font-size:15px;top:52px}.touch-device #interact-prompt{font-size:14px;bottom:8px}.touch-device .story-skip{right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));min-height:44px}.touch-device .cinematic .reveal-copy{max-width:65vw}.touch-device .cinematic h1{font-size:30px}.touch-device .reveal-continue{min-height:44px;font-size:16px}}@media (orientation:portrait){.touch-device #menu{padding:64px 20px 28px}.touch-device #menu .menu-buttons{grid-template-columns:1fr 1fr;max-width:none;display:grid}.touch-device #menu .menu-buttons button{min-height:48px;grid-column:auto!important}.touch-device #menu .menu-buttons #primary{grid-column:1/-1!important}.touch-device .project-links{gap:8px}.touch-device .project-links button{font-size:15px}}@media (orientation:landscape){.touch-device #battle-footer{inset:8px auto auto max(8px,env(safe-area-inset-left));padding:0;display:block}.touch-device #ability-icons{display:none}.touch-device #hud{top:8px;left:50%;right:auto;transform:translate(-50%)}}#rotate-device .rotate-menu{box-shadow:none;color:#b5cfd2;background:0 0;border:0;margin:14px auto 0;display:block}#fullscreen-note{color:#ffe2a0;max-width:340px;font-size:15px}#fullscreen-note:empty{display:none}
