:root{--bg: #08090b;--panel: rgba(16, 18, 21, .92);--panel-solid: #111316;--line: #262a30;--line-strong: #3a4048;--text: #c9ccd1;--muted: #7d838c;--dim: #4f555d;--red: #b3261e;--red-hot: #e2382d;--red-dim: #5a1612;--ok: #4a9a6a;--warn: #c9a227;--armor: #6f8fa8;--font: "Chakra Petch", "Segoe UI", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--font);overflow:hidden;user-select:none}#game{position:fixed;inset:0}#game canvas{display:block;image-rendering:pixelated}body.ingame #game canvas{cursor:none}#ui{position:fixed;inset:0;pointer-events:none}#ui>*{pointer-events:auto}#ui .passthrough{pointer-events:none}button{font-family:var(--font)}.screen{position:absolute;inset:0;display:none;padding:48px 64px;background:linear-gradient(90deg,#08090bf5,#08090bd1 45%,#08090b59)}.screen.active{display:flex;flex-direction:column;animation:fade .25s ease-out}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.screen h2{margin:0 0 6px;font-size:13px;letter-spacing:.32em;color:var(--red);font-weight:600}.screen h1{margin:0 0 28px;font-size:34px;letter-spacing:.06em;font-weight:700}.back{position:fixed;left:64px;bottom:36px;z-index:2}.screen{overflow-y:auto}.screen:has(.back){padding-bottom:100px}.screen:has(.back) .footer{position:fixed;right:64px;bottom:46px;margin:0}.logo{margin-top:6vh}.logo .k{font-size:12px;letter-spacing:.5em;color:var(--muted)}.logo .t{font-size:clamp(56px,8vw,104px);font-weight:700;letter-spacing:.04em;line-height:.9;margin:10px 0 6px}.logo .t span{color:var(--red)}.logo .s{font-size:15px;letter-spacing:.42em;color:var(--muted);text-transform:uppercase}.menu{margin-top:5vh;display:flex;flex-direction:column;gap:2px;width:420px}.menu button{all:unset;cursor:pointer;padding:11px 0 11px 18px;font-size:20px;letter-spacing:.2em;font-weight:600;color:var(--muted);border-left:2px solid transparent;transition:color .12s,border-color .12s,padding .12s}.menu button:hover,.menu button:focus-visible{color:var(--text);border-left-color:var(--red);padding-left:26px}.menu button small{display:block;font-size:11px;letter-spacing:.12em;color:var(--dim);font-weight:400;margin-top:2px}.footer{margin-top:auto;display:flex;gap:18px;font-family:var(--mono);font-size:11px;color:var(--dim)}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--dim);margin-right:6px;vertical-align:1px}.status-dot.online{background:var(--ok)}.status-dot.reconnecting,.status-dot.connecting{background:var(--warn);animation:blink 1s infinite}.status-dot.offline{background:var(--red)}@keyframes blink{50%{opacity:.3}}.btn{cursor:pointer;padding:10px 18px;background:#1a1d21;color:var(--text);border:1px solid var(--line-strong);font-size:13px;letter-spacing:.14em;font-weight:600;text-transform:uppercase;transition:background .12s,border-color .12s}.btn:hover{background:#22262b;border-color:#556}.btn.primary{background:var(--red-dim);border-color:var(--red);color:#f1d6d3}.btn.primary:hover{background:#73201a}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.small{padding:6px 10px;font-size:11px}.input{background:#0d0f12;border:1px solid var(--line-strong);color:var(--text);padding:10px 12px;font-family:var(--mono);font-size:15px;outline:none}.input:focus{border-color:var(--red)}.input.code{font-size:26px;letter-spacing:.4em;width:220px;text-transform:uppercase;text-align:center}.panel{background:var(--panel);border:1px solid var(--line);padding:20px}.panel h3{margin:0 0 14px;font-size:12px;letter-spacing:.28em;color:var(--muted);font-weight:600}.row{display:flex;gap:14px;align-items:center}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:880px}.lobby-wrap{display:grid;grid-template-columns:minmax(380px,520px) minmax(320px,420px);gap:22px;align-items:start}.code-box{display:flex;align-items:center;gap:16px;margin-bottom:18px}.code-box .code{font-family:var(--mono);font-size:34px;letter-spacing:.32em;color:#fff;background:#0d0f12;border:1px dashed var(--line-strong);padding:6px 16px}.members{display:flex;flex-direction:column;gap:6px}.member{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:8px 10px;background:#0f1114;border:1px solid var(--line)}.member.empty{opacity:.35;border-style:dashed}.member img{width:40px;height:40px;image-rendering:pixelated;background:#181b1f}.member .nm{font-weight:600;letter-spacing:.06em}.member .sub{font-size:11px;color:var(--muted);font-family:var(--mono)}.tag{font-size:10px;letter-spacing:.16em;padding:3px 7px;border:1px solid var(--line-strong);color:var(--muted);font-family:var(--mono)}.tag.ready{color:#9ad3ae;border-color:#2f6a47}.tag.leader{color:#f0b0a8;border-color:var(--red-dim)}.tag.recon{color:var(--warn);border-color:#6a5a1a}.char-pick{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:10px 0 16px}.char-pick button{all:unset;cursor:pointer;border:1px solid var(--line);background:#0f1114;padding:6px 4px 4px;text-align:center;font-size:11px;letter-spacing:.1em}.char-pick button img{width:48px;height:48px;image-rendering:pixelated;display:block;margin:0 auto 2px}.char-pick button.sel{border-color:var(--red);background:#1a0f0e}.char-pick button.taken{opacity:.3;cursor:not-allowed}.mission-card{border-left:2px solid var(--red);padding:4px 0 4px 14px}.mission-card .ch{font-size:11px;letter-spacing:.2em;color:var(--red)}.mission-card .ti{font-size:20px;font-weight:700;margin:2px 0 8px}.mission-card p{font-size:13px;color:var(--muted);line-height:1.5;margin:0}.ext{font-size:10px;font-family:var(--mono);color:var(--warn);margin-top:8px}.chars{max-height:calc(100vh - 260px);display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;overflow:auto;padding-right:8px;max-width:1240px}.char-card{background:var(--panel);border:1px solid var(--line);padding:16px;display:flex;flex-direction:column;gap:8px}.char-card.sel{border-color:var(--red)}.char-card img{width:96px;height:96px;image-rendering:pixelated;background:#0d0f12;border:1px solid var(--line)}.char-card .cn{font-size:22px;font-weight:700;letter-spacing:.06em}.char-card .cr{font-size:11px;letter-spacing:.2em;color:var(--red)}.char-card p{font-size:12px;color:var(--muted);line-height:1.45;margin:0}.stat{display:grid;grid-template-columns:86px 1fr;align-items:center;font-size:11px;color:var(--muted);gap:8px}.stat i{display:block;height:4px;background:#1e2126;position:relative}.stat i b{position:absolute;inset:0 auto 0 0;background:var(--text)}.char-card .ab{font-size:12px;border-top:1px solid var(--line);padding-top:8px}.char-card .ab b{color:var(--text)}.binds{display:grid;grid-template-columns:1fr auto;gap:4px 16px;font-size:13px;max-height:52vh;overflow:auto}.binds .key{min-width:110px;text-align:center;font-family:var(--mono)}.binds .key.wait{border-color:var(--red);color:var(--red-hot)}.slider{display:grid;grid-template-columns:140px 1fr 40px;align-items:center;gap:12px;font-size:13px;margin-bottom:10px}input[type=range]{accent-color:var(--red)}.check{display:flex;gap:10px;align-items:center;font-size:13px;margin-bottom:8px;cursor:pointer}.credits{max-width:640px;line-height:1.7;color:var(--muted);font-size:14px}.credits b{color:var(--text)}.hud{position:absolute;inset:0;display:none;pointer-events:none;font-family:var(--font)}.hud.active{display:block}.hud .obj{position:absolute;bottom:22px;left:50%;transform:translate(-50%);width:max-content;max-width:min(460px,36vw);text-align:center}.hud .obj .lbl{font-size:10px;letter-spacing:.3em;color:var(--red)}.hud .obj .tx{font-size:16px;font-weight:600;margin-top:3px;text-shadow:0 1px 2px #000}.hud .obj .bar{height:3px;background:#1e2126;margin:6px auto 0;width:260px;display:none}.hud .obj .bar b{display:block;height:100%;background:var(--red-hot);width:0}.hud .alarm{margin-top:8px;font-size:11px;letter-spacing:.3em;color:var(--red-hot);display:none;animation:blink .8s infinite}.hud .minimap{position:absolute;top:16px;right:16px;border:1px solid var(--line-strong);background:#050608bf;image-rendering:pixelated}.hud .team{position:absolute;top:200px;right:16px;width:200px;display:flex;flex-direction:column;gap:6px}.tm{background:#0a0b0dbf;border:1px solid var(--line);padding:5px 8px;font-size:12px}.tm .hd{display:flex;justify-content:space-between;letter-spacing:.06em}.tm .hb{height:3px;background:#1e2126;margin-top:4px}.tm .hb b{display:block;height:100%;background:#c9ccd1}.tm.down{border-color:var(--red)}.tm.down .hb b{background:var(--red-hot)}.tm .st{font-size:10px;color:var(--red-hot);font-family:var(--mono)}.hud .vitals{position:absolute;left:22px;bottom:22px;width:300px}.vbar{height:10px;background:#141619d9;border:1px solid var(--line);margin-top:5px;position:relative}.vbar b{position:absolute;inset:0 auto 0 0;background:var(--red);transition:width .12s}.vbar.armor b{background:var(--armor)}.vbar.stam{height:4px}.vbar.stam b{background:#8a8f96;transition:none}.vbar span{position:absolute;right:6px;top:-1px;font-size:9px;font-family:var(--mono);color:#fff;text-shadow:0 0 2px #000;line-height:12px}.vitals .nm{font-size:12px;letter-spacing:.2em;color:var(--muted)}.hud .weapon{position:absolute;right:22px;bottom:22px;text-align:right}.weapon .wn{font-size:13px;letter-spacing:.14em;color:var(--muted)}.weapon .ammo{font-family:var(--mono);font-size:40px;font-weight:600;line-height:1;margin-top:2px}.weapon .ammo small{font-size:16px;color:var(--muted)}.weapon .ammo.low{color:var(--red-hot)}.weapon .slots{display:flex;gap:4px;justify-content:flex-end;margin-top:8px}.weapon .slots div{font-family:var(--mono);font-size:10px;padding:3px 6px;border:1px solid var(--line);color:var(--dim);background:#0a0b0db3}.weapon .slots div.on{color:var(--text);border-color:var(--red)}.weapon .items{font-family:var(--mono);font-size:12px;color:var(--muted);margin-top:6px}.hud .ability{position:absolute;left:340px;bottom:22px;width:64px;height:64px;border:1px solid var(--line-strong);background:#0a0b0dcc;display:grid;place-items:center;text-align:center;font-size:9px;letter-spacing:.1em;overflow:hidden}.ability .cdv{position:absolute;inset:auto 0 0;background:#b3261e59}.ability .k{position:absolute;top:3px;left:4px;font-family:var(--mono);color:var(--muted)}.ability.ready{border-color:var(--red)}.hud .hint{position:absolute;left:50%;bottom:110px;transform:translate(-50%);text-align:center;font-size:13px;letter-spacing:.08em;text-shadow:0 1px 3px #000}.hud .hint .hb{width:180px;height:3px;background:#1e2126;margin:6px auto 0;display:none}.hud .hint .hb b{display:block;height:100%;background:var(--text)}.hud .radio{position:absolute;left:22px;bottom:120px;width:440px;display:flex;flex-direction:column;gap:4px}.radio div{font-size:13px;background:#08090bb8;border-left:2px solid var(--red);padding:5px 10px;animation:fade .2s}.radio div b{color:var(--red-hot);letter-spacing:.1em;margin-right:8px;font-size:11px}.radio div.sys{border-left-color:var(--line-strong);color:var(--muted)}.hud .downed{position:absolute;inset:0;display:none;place-items:center;background:radial-gradient(circle,transparent 30%,rgba(90,10,10,.55))}.hud .downed.on{display:grid}.downed div{text-align:center;font-size:22px;letter-spacing:.3em;color:var(--red-hot);text-shadow:0 0 12px #000}.downed small{display:block;font-size:13px;letter-spacing:.12em;color:var(--text);margin-top:8px}.hud .flashbang{position:absolute;inset:0;background:radial-gradient(circle,#fff 30%,#f2f6ff 70%,#dfe8f5);opacity:0;pointer-events:none;z-index:5;mix-blend-mode:screen}.hud .vignette{position:absolute;inset:0;background:radial-gradient(circle,transparent 50%,rgba(160,0,0,.45));opacity:0;transition:opacity .3s}.overlay{position:absolute;inset:0;display:none;place-items:center;background:#050608c7}.overlay.active{display:grid}.overlay .panel{min-width:420px;max-width:820px}.inv{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inv .w{border:1px solid var(--line);padding:10px;margin-bottom:8px;font-size:12px}.inv .w.on{border-color:var(--red)}.inv .w b{font-size:14px;display:block;margin-bottom:4px}.inv .w code{font-family:var(--mono);color:var(--muted);font-size:11px}.debrief table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13px;margin:14px 0}.debrief td,.debrief th{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line)}.debrief th{color:var(--muted);font-weight:400;font-size:11px;letter-spacing:.1em}.toast{position:absolute;top:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:6px;pointer-events:none}.toast div{background:var(--panel-solid);border:1px solid var(--red);padding:10px 16px;font-size:13px;animation:fade .2s}.conn{position:absolute;top:0;left:0;right:0;text-align:center;padding:6px;font-size:12px;letter-spacing:.2em;background:#3a2a08;color:#f2d58a;display:none;z-index:10}.conn.on{display:block}.help{font-size:11px;color:var(--dim);font-family:var(--mono);line-height:1.8}.help kbd{color:var(--muted);border:1px solid var(--line-strong);padding:0 4px}.story{max-width:720px;overflow:auto;max-height:calc(100vh - 260px);padding-right:18px;font-size:16px;line-height:1.75;color:#b9bdc3}.story h3{font-size:13px;letter-spacing:.32em;color:var(--red);margin:0 0 6px;font-weight:600}.story h4{font-size:26px;letter-spacing:.04em;color:var(--text);margin:0 0 22px}.story p{margin:0 0 14px}.story p.lead{font-size:17px;color:var(--muted);border-left:2px solid var(--red);padding-left:16px;margin-bottom:26px}.story p.q{color:#e8e9eb;padding-left:16px;font-weight:600}.story b{color:var(--text);letter-spacing:.12em}.story p.author{margin-top:34px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);letter-spacing:.04em}.missions-wrap{display:grid;grid-template-columns:minmax(340px,520px) minmax(340px,460px);gap:22px;align-items:start;overflow:auto;max-height:calc(100vh - 250px);padding-right:6px}.chapters{display:flex;flex-direction:column;gap:6px}.chapter{all:unset;cursor:pointer;display:grid;grid-template-columns:44px 1fr;gap:12px;padding:12px 14px;background:var(--panel);border:1px solid var(--line);border-left:2px solid var(--line);transition:border-color .12s,background .12s}.chapter:hover{border-left-color:var(--red);background:#15171b}.chapter.sel{border-color:var(--red-dim);border-left-color:var(--red);background:#1a0f0e}.chapter.locked{cursor:not-allowed;opacity:.42}.chapter.locked:hover{border-left-color:var(--line);background:var(--panel)}.chapter .num{font-family:var(--mono);font-size:22px;color:var(--dim)}.chapter.sel .num{color:var(--red-hot)}.chapter .ch{font-size:10px;letter-spacing:.24em;color:var(--red)}.chapter.locked .ch{color:var(--muted)}.chapter .ti{font-size:17px;font-weight:700;margin:2px 0 4px}.chapter .su{font-size:12px;color:var(--muted);line-height:1.45}.obj-list{margin:0;padding-left:18px;font-size:13px;color:#b9bdc3;line-height:1.7}.diff-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.diff-btn{all:unset;cursor:pointer;text-align:center;padding:9px 4px 8px;border:1px solid var(--line);background:#0f1114;font-size:11px;letter-spacing:.14em;font-weight:600;color:var(--muted)}.diff-btn:hover:not(:disabled){border-color:var(--line-strong);color:var(--text)}.diff-btn.sel{border-color:var(--red);background:#1a0f0e;color:var(--text)}.diff-btn:disabled{opacity:.3;cursor:default}.diff.readonly .diff-btn.sel{opacity:1}.diff-btn .bars{display:flex;gap:3px;justify-content:center;margin-bottom:6px}.diff-btn .bars i{width:10px;height:4px;background:#262a30}.diff-btn .bars i.on{background:var(--muted)}.diff-btn.sel .bars i.on{background:var(--red-hot)}.diff-desc{font-size:12px;color:var(--muted);margin-top:8px;min-height:18px}.cutscene{position:absolute;inset:0;display:none;z-index:50;cursor:pointer;background:radial-gradient(ellipse at center,#0e0808e6,#030304fa 70%)}.cutscene.on{display:grid;place-items:center;animation:fade .4s ease-out}.cs-scan{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px)}.cs-box{position:relative;width:min(760px,86vw);padding:0 0 0 26px;border-left:2px solid var(--red)}.cs-kicker{font-size:12px;letter-spacing:.36em;color:var(--red-hot);margin-bottom:18px}.cs-text{font-size:clamp(19px,2.2vw,26px);line-height:1.6;color:#dfe1e4;min-height:5.2em;white-space:pre-wrap}.cs-text.quote{font-weight:600;color:#fff;font-size:clamp(22px,2.6vw,32px)}.cs-text:after{content:"▌";color:var(--red-hot);animation:blink 1s infinite;margin-left:2px}.cs-ext{margin-top:14px;font-family:var(--mono);font-size:11px;color:var(--warn)}.cs-title{font-size:clamp(34px,4.4vw,54px);font-weight:700;letter-spacing:.03em;margin:-6px 0 6px}.cs-diff{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:var(--muted);margin-bottom:18px}.cs-obj{margin:0 0 26px;padding-left:20px;font-size:16px;line-height:1.8;color:#c9ccd1}.cs-foot{position:absolute;left:64px;right:64px;bottom:40px;display:flex;align-items:center;gap:22px;font-family:var(--mono);font-size:11px;color:var(--dim);letter-spacing:.12em}.cs-dots{display:flex;gap:5px}.cs-dots i{width:18px;height:3px;background:#262a30}.cs-dots i.on{background:var(--red)}.cs-skip{all:unset;cursor:pointer;margin-left:auto;padding:8px 14px;border:1px solid var(--line-strong);color:var(--muted);font-family:var(--font);font-size:12px;letter-spacing:.14em}.cs-skip:hover{color:var(--text);border-color:var(--red)}.brief-wait{position:absolute;top:70px;left:50%;transform:translate(-50%);display:none;padding:10px 18px;background:var(--panel-solid);border:1px solid var(--red-dim);font-family:var(--mono);font-size:12px;letter-spacing:.12em;color:#f0b0a8;z-index:40;pointer-events:none}.brief-wait.on{display:block;animation:blink 1.6s infinite}.screen-actions{position:fixed;left:230px;bottom:36px;display:flex;gap:10px;z-index:2}.screen[data-screen=menu]{align-items:center;text-align:center;background:radial-gradient(ellipse at center,#08090beb,#08090bc7 45%,#08090b73)}.screen[data-screen=menu] .logo{margin-top:9vh}.screen[data-screen=menu] .menu{align-items:center;margin-top:6vh}.screen[data-screen=menu] .menu button{padding:10px 26px;border-left:0;position:relative;text-align:center}.screen[data-screen=menu] .menu button:before,.screen[data-screen=menu] .menu button:after{content:"";position:absolute;top:50%;width:0;height:2px;background:var(--red);transition:width .15s;transform:translateY(-9px)}.screen[data-screen=menu] .menu button:before{right:100%}.screen[data-screen=menu] .menu button:after{left:100%}.screen[data-screen=menu] .menu button:hover,.screen[data-screen=menu] .menu button:focus-visible{padding-left:26px}.screen[data-screen=menu] .menu button:hover:before,.screen[data-screen=menu] .menu button:hover:after,.screen[data-screen=menu] .menu button:focus-visible:before,.screen[data-screen=menu] .menu button:focus-visible:after{width:22px}.screen[data-screen=menu] .footer{justify-content:center}.vhs{position:relative;display:inline-block;color:var(--red);text-shadow:2px 0 rgba(0,220,255,.55),-2px 0 rgba(255,30,60,.7);animation:vhs-shift 3.2s infinite steps(1),vhs-flicker 4s infinite}.vhs:before,.vhs:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none}.vhs:before{color:#00e6ffbf;mix-blend-mode:screen;animation:vhs-slice-a 2.7s infinite steps(1)}.vhs:after{color:#ff2846d9;mix-blend-mode:screen;animation:vhs-slice-b 3.4s infinite steps(1)}.logo .t{position:relative}.logo .t:after{content:"";position:absolute;inset:-4px -10px;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.07) 48%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.07) 52%,transparent 100%) 0 -120% / 100% 40% no-repeat,repeating-linear-gradient(0deg,rgba(0,0,0,.35) 0 1px,transparent 1px 3px);mix-blend-mode:overlay;animation:vhs-roll 5.5s linear infinite}@keyframes vhs-roll{0%{background-position:0 -120%,0 0}to{background-position:0 260%,0 0}}@keyframes vhs-shift{0%,to{transform:none}31%{transform:translate(-3px) skew(-4deg)}32%{transform:translate(4px)}33%{transform:none}72%{transform:translate(2px) skew(3deg)}73%{transform:none}}@keyframes vhs-flicker{0%,to{opacity:1}47%{opacity:.82}48%{opacity:1}88%{opacity:.9}89%{opacity:1}}@keyframes vhs-slice-a{0%,to{clip-path:inset(0 0 100% 0);transform:none}12%{clip-path:inset(18% 0 62% 0);transform:translate(-6px)}14%{clip-path:inset(70% 0 8% 0);transform:translate(5px)}16%{clip-path:inset(0 0 100% 0);transform:none}58%{clip-path:inset(40% 0 44% 0);transform:translate(-9px)}60%{clip-path:inset(0 0 100% 0);transform:none}}@keyframes vhs-slice-b{0%,to{clip-path:inset(0 0 100% 0);transform:none}22%{clip-path:inset(55% 0 25% 0);transform:translate(7px)}24%{clip-path:inset(8% 0 80% 0);transform:translate(-4px)}26%{clip-path:inset(0 0 100% 0);transform:none}81%{clip-path:inset(30% 0 52% 0);transform:translate(10px)}83%{clip-path:inset(0 0 100% 0);transform:none}}@media(prefers-reduced-motion:reduce){.vhs,.vhs:before,.vhs:after,.logo .t:after{animation:none}}.debrief-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}body.flatline #game canvas{animation:flat-game 1.8s ease-out forwards}@keyframes flat-game{0%{filter:none;transform:none}6%{filter:saturate(3) hue-rotate(-30deg) contrast(1.6);transform:translate(-12px) skew(4deg)}10%{filter:invert(1) saturate(0);transform:translate(10px)}14%{filter:saturate(0) contrast(1.4);transform:none}22%{filter:saturate(0) brightness(1.5) contrast(1.6);transform:translate(-6px)}26%{transform:none}to{filter:grayscale(1) sepia(1) hue-rotate(-50deg) saturate(3) brightness(.35) blur(2px)}}.overlay.death{background:radial-gradient(ellipse at center,#3c04068c,#040102eb 78%);animation:death-bg 1.2s ease-out both;overflow:hidden}@keyframes death-bg{0%{opacity:0}8%{opacity:1;background-color:#ff283c59}12%{background-color:transparent}18%{background-color:#ffffff1f}22%{background-color:transparent}to{opacity:1}}.death-screen{position:relative;width:min(760px,92vw);text-align:center}.death-noise{position:fixed;inset:0;pointer-events:none;opacity:.55;animation:death-noise .12s steps(2) infinite;background:repeating-linear-gradient(0deg,rgba(0,0,0,.45) 0 1px,transparent 1px 3px),radial-gradient(circle,transparent 38%,rgba(140,0,10,.4))}@keyframes death-noise{0%{transform:translateY(0)}to{transform:translateY(2px)}}.death-bars{position:fixed;inset:0;pointer-events:none}.death-bars i{position:absolute;left:-10%;right:-10%;opacity:0;background:linear-gradient(90deg,#00e6ff00,#00e6ff59 20%,#ff1e3c8c 50%,#ffffff40 70%,#00e6ff00);mix-blend-mode:screen;animation:death-bar .9s steps(6) both}@keyframes death-bar{0%{opacity:0;transform:translate(-30%) scaleY(1)}15%{opacity:1;transform:translate(12%) scaleY(1.6)}35%{opacity:.8;transform:translate(-18%) scaleY(.6)}55%{opacity:1;transform:translate(25%) scaleY(1.2)}80%{opacity:.5;transform:translate(-5%)}to{opacity:0;transform:translate(40%)}}.death-inner{position:relative}.death-kicker{font-family:var(--mono);font-size:12px;letter-spacing:.32em;color:#ff5a4a;opacity:0;animation:death-type .4s steps(4) .45s forwards}@keyframes death-type{0%{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}.death-title{font-size:clamp(64px,10.5vw,140px);font-weight:700;letter-spacing:.06em;line-height:1;margin:18px 0 10px;min-height:1em;display:flex;justify-content:center;padding-left:.06em;opacity:0;animation:death-title .7s cubic-bezier(.2,.9,.3,1.3) .6s forwards}.death-title .vhs{color:var(--red-hot);text-shadow:4px 0 rgba(0,230,255,.6),-4px 0 rgba(255,30,60,.8),0 0 40px rgba(255,40,40,.45);white-space:nowrap}@keyframes death-title{0%{opacity:0;transform:scale(1.6) translateY(-6px);filter:blur(10px);letter-spacing:.4em}40%{opacity:1;filter:blur(0)}55%{transform:scale(.96) translate(-8px) skew(-8deg)}65%{transform:scale(1.02) translate(6px)}to{opacity:1;transform:none;letter-spacing:.06em}}.death-sub{font-size:15px;letter-spacing:.5em;color:#f0b0a8;opacity:0;animation:fade .5s ease-out 1.6s forwards}.death-late{opacity:0;animation:death-late .8s ease-out 2.1s forwards}@keyframes death-late{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.death-reason{font-size:17px;color:var(--text);margin:22px 0 6px}.death-screen table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13px;margin:18px 0 24px;background:#0a060699}.death-screen td,.death-screen th{text-align:left;padding:6px 10px;border-bottom:1px solid #3a1a18}.death-screen th{color:var(--muted);font-weight:400;font-size:11px;letter-spacing:.1em}@media(prefers-reduced-motion:reduce){body.flatline #game canvas,.death-bars i,.death-noise{animation:none}.death-title,.death-sub,.death-late,.death-kicker{animation-duration:.01s}}.hud .alert-lvl{margin-top:8px;font-size:11px;letter-spacing:.24em;color:var(--warn);display:none;animation:blink 1.6s infinite}.cs-tip{font-family:var(--mono);font-size:12px;color:var(--muted);line-height:1.6;margin:-12px 0 24px;max-width:620px}.vitals .sneak{display:none;margin-top:6px;font-family:var(--mono);font-size:11px;letter-spacing:.24em;color:#9fb8c8}.hud .hint.takedown .ht{color:#fff;font-weight:700;letter-spacing:.16em;text-shadow:0 0 10px rgba(226,56,45,.8),0 1px 3px #000}body.mobile,body.mobile #game,.touch{touch-action:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none}.touch{position:absolute;inset:0;display:none;z-index:30;pointer-events:none}.touch.on{display:block}.touch .tc-zone{position:absolute;top:0;bottom:0;pointer-events:auto}.touch .tc-zone.left{left:0;width:45%}.touch .tc-zone.right{right:0;width:55%}.tc-stick{position:fixed;width:112px;height:112px;margin:-56px 0 0 -56px;border-radius:50%;pointer-events:none;border:2px solid rgba(201,204,209,.35);background:radial-gradient(circle,#14161959,#14161926)}.tc-stick.aim{border-color:#e2382d8c}.tc-knob{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:#c9ccd18c;box-shadow:0 0 12px #0009}.tc-stick.aim .tc-knob{background:#e2382dbf}.tc-top{position:absolute;top:max(10px,env(safe-area-inset-top));left:50%;transform:translate(-50%);display:flex;gap:8px;pointer-events:auto}.tc-actions{position:absolute;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(3,54px);grid-auto-rows:54px;gap:8px;pointer-events:none;direction:rtl}.tc-btn{all:unset;pointer-events:auto;direction:ltr;display:grid;place-items:center;border-radius:50%;font-family:var(--font);font-weight:700;font-size:17px;color:#e8e9eb;background:#0e10139e;border:1px solid rgba(201,204,209,.3);box-shadow:0 2px 8px #00000080;user-select:none}.tc-btn.on{background:#b3261ebf;border-color:var(--red-hot)}.tc-btn.active{border-color:#9fb8c8;color:#9fb8c8;background:#283c4699}.tc-btn.small{width:40px;height:40px;font-size:13px;border-radius:10px}.tc-btn.wide{grid-column:span 3;border-radius:27px;font-size:13px;letter-spacing:.16em;display:none}.tc-btn.wide.show{display:grid}.tc-btn.hot{background:#b3261ecc;border-color:var(--red-hot);animation:blink 1s infinite}.tc-btn.mid{color:#fff}.tc-btn.cyan{background:#145a64bf;border-color:#3fd8e8;color:#bff6ff}.tc-btn.amber{background:#78460abf;border-color:#e0a030;color:#ffe2a8}.tc-btn[data-k=flash].door{border-color:#e8f0ff;box-shadow:0 0 12px #e8f0ff80}.tc-btn[data-k=interact]{display:none}.tc-btn[data-k=interact].show{display:grid;border-color:var(--warn);color:var(--warn)}body.mobile #game canvas{cursor:default}.rotate{display:none;position:fixed;inset:0;z-index:100;background:#050607;color:var(--text);font-size:15px;letter-spacing:.1em;place-items:center;align-content:center;gap:14px;text-align:center}.rotate div{font-size:54px;color:var(--red-hot);animation:spin 2.2s ease-in-out infinite}@keyframes spin{0%,30%{transform:rotate(0)}70%,to{transform:rotate(90deg)}}@media(orientation:portrait){body.mobile.ingame .rotate{display:grid}}@media(max-height:560px),(max-width:760px){.hud .obj{bottom:10px;max-width:34vw}.hud .obj .tx{font-size:13px}.hud .obj .bar{width:160px}.hud .minimap{top:8px;right:8px;width:120px;height:90px}.hud .team{top:104px;right:8px;width:150px}.tm{font-size:10px;padding:3px 6px}.hud .vitals{left:12px;bottom:10px;width:190px}.vitals .nm{font-size:10px}.hud .ability{left:212px;bottom:10px;width:50px;height:50px;font-size:8px}.hud .weapon{right:12px;bottom:auto;top:104px}body.mobile .hud .team{display:none}body.mobile .hud .weapon{top:106px}.weapon .ammo{font-size:26px}.weapon .wn,.weapon .items{font-size:10px}.weapon .slots{display:none}.hud .radio{left:12px;bottom:82px;width:min(360px,52vw)}.radio div{font-size:11px;padding:3px 8px}.hud .hint{bottom:76px;font-size:12px}body.mobile .hud .hint{left:38%}}@media(max-width:900px),(max-height:560px){.screen{padding:18px 18px 90px}.screen h1{font-size:24px;margin-bottom:14px}.back{left:18px;bottom:16px}.screen:has(.back) .footer{right:18px;bottom:26px}.screen-actions{left:140px;bottom:16px}.lobby-wrap,.missions-wrap,.grid2{grid-template-columns:1fr;max-height:none;overflow:visible}.chars{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));max-height:none}.story{max-height:none}.logo .t{font-size:clamp(40px,11vw,80px)}.screen[data-screen=menu] .logo,.screen[data-screen=menu] .menu{margin-top:3vh}.menu button{font-size:16px;padding:6px 18px}.menu button small{display:none}.code-box .code{font-size:26px}.cs-foot{left:18px;right:18px;bottom:14px}.cs-text{font-size:17px;min-height:4em}.cs-title{font-size:30px}.cs-obj{font-size:13px;margin-bottom:14px}.death-title{font-size:clamp(44px,12vw,90px)}.overlay .panel{min-width:0;width:92vw;max-height:86vh;overflow:auto}.debrief-actions .btn,.screen-actions .btn{padding:9px 12px;font-size:11px}.diff-btn{font-size:9px;letter-spacing:.08em}}#ui>.touch{pointer-events:none}.overlay{z-index:40}@media(max-width:900px),(max-height:560px){body.mobile .hud .weapon{top:8px;right:140px;text-align:right}body.mobile .hud .weapon .items{display:none}body.mobile .hud .obj{max-width:34vw}body.mobile .tc-top{left:auto;right:140px;transform:none;top:58px}body.mobile .tc-actions{bottom:max(8px,env(safe-area-inset-bottom))}body.mobile .tc-btn.wide{grid-row:1;grid-column:span 1;border-radius:12px;font-size:9px;letter-spacing:.04em}.back{padding:8px 12px;font-size:11px}.screen-actions{left:118px}}@media(max-height:560px){.logo .k{display:none}.logo .t{font-size:44px;margin:0 0 2px}.logo .s{font-size:11px;letter-spacing:.3em}.screen[data-screen=menu] .logo{margin-top:0}.screen[data-screen=menu] .menu{margin-top:10px;gap:0}.menu button{font-size:14px;padding:5px 18px}.screen[data-screen=menu] .footer{margin-top:8px}}.dossier-total+.chars{max-height:calc(100vh - 360px)}.dossier-total{max-width:1240px;padding:12px 16px;margin-bottom:12px;display:flex;flex-direction:column;gap:8px}.dossier-total .cr{font-size:11px;letter-spacing:.2em;color:var(--red)}.dossier-total .dgrid{grid-template-columns:repeat(9,minmax(0,1fr))}.dossier{font-size:12px}.dossier.empty{color:var(--muted);font-style:italic}.dossier-head b{letter-spacing:.18em;font-size:11px;color:var(--red)!important}.dgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.dgrid .dc{background:#0d0f12;border:1px solid var(--line);padding:5px 6px;display:flex;flex-direction:column;min-width:0}.dgrid .dc b{font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dgrid .dc span{font-size:9px;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;color:var(--muted)}.drec{margin-top:6px;color:var(--muted)}.drec b{color:var(--text)}.records{display:flex;flex-direction:column;gap:6px;margin:10px 0}.records:empty{display:none}.record{border:1px solid #f5c542;background:#f5c54214;padding:6px 10px;font-size:13px;display:flex;gap:10px;align-items:center;animation:recIn .5s both}.record b{color:#f5c542;letter-spacing:.16em;font-size:11px}@keyframes recIn{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@media(max-width:900px){.dossier-total .dgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}.menu button.soon{opacity:.45;cursor:not-allowed}.menu button.soon small{color:var(--muted)}.sv-wrap{display:grid;grid-template-columns:minmax(420px,1fr) minmax(300px,380px);gap:16px;max-width:1240px;max-height:calc(100vh - 250px);overflow:auto;padding-right:6px}.sv-side{display:flex;flex-direction:column;gap:14px}.class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.class-card{all:unset;cursor:pointer;background:#0d0f12;border:1px solid var(--line);padding:10px;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}.class-card:hover{border-color:#5a5f66}.class-card.sel{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.class-card img{width:48px;height:48px;image-rendering:pixelated;background:#07080a;border:1px solid var(--line);margin-right:8px}.class-card .row{display:flex;align-items:center}.class-card .cn{font-size:16px;font-weight:700;letter-spacing:.1em;color:var(--text)}.class-card .cr{font-size:10px;letter-spacing:.18em;color:var(--red);text-transform:uppercase}.class-card .ab b{color:var(--text)}.class-card .cd{font-family:var(--mono);font-size:10px;color:#e0a030}.class-card .muted{color:#7f858c;font-size:11px}.op-preview{display:flex;gap:12px;align-items:center;margin-bottom:10px}.op-preview .nm{font-size:18px;font-weight:700}.op-preview .sub{font-size:12px;color:var(--muted)}.emblem.big{font-size:34px;line-height:1;width:48px;text-align:center}.lbl{font-size:10px;letter-spacing:.18em;color:var(--muted);margin:10px 0 4px;text-transform:uppercase}.swatches{display:flex;gap:6px;flex-wrap:wrap}.swatches .sw{all:unset;cursor:pointer;width:26px;height:26px;border:1px solid var(--line);display:grid;place-items:center;font-size:15px}.swatches .sw.sel{outline:2px solid #fff;outline-offset:1px}.swatches .sw.sym{background:#0d0f12}.sv-maps{display:flex;flex-direction:column;gap:6px}.sv-map{border:1px solid var(--line);padding:8px 10px;background:#0d0f12}.sv-map.sel{border-color:var(--red)}.sv-map.locked{opacity:.45}.sv-map .ti{font-weight:700;letter-spacing:.12em;font-size:13px}.sv-map .su{font-size:11px;color:var(--muted);margin-top:2px}.hud .sv-hud{position:absolute;top:14px;left:50%;transform:translate(-50%);text-align:center;display:none;pointer-events:none;text-shadow:0 2px 6px #000}.hud .sv-hud .w{font-size:26px;font-weight:700;letter-spacing:.24em;color:#fff}.hud .sv-hud .s{font-size:12px;letter-spacing:.18em;margin-top:2px}.hud .sv-hud .s.fight{color:var(--red-hot, #ff4a3a)}.hud .sv-hud .s.prep{color:#e0a030}.hud .sv-hud .c{font-family:var(--mono);font-size:13px;color:#e8d9a8;margin-top:4px}.hud .sv-banner{position:absolute;top:28%;left:0;right:0;text-align:center;opacity:0;transform:scale(1.15);transition:opacity .35s,transform .35s;pointer-events:none}.hud .sv-banner.on{opacity:1;transform:none}.hud .sv-banner .t{font-size:clamp(30px,6vw,64px);font-weight:700;letter-spacing:.22em;color:#fff;text-shadow:0 0 18px rgba(226,56,45,.6),0 3px 0 #000}.hud .sv-banner.boss .t{color:#ff4a3a;animation:blink .5s infinite}.hud .sv-banner.clear .t{color:#52e07a;text-shadow:0 0 18px rgba(82,224,122,.5),0 3px 0 #000}.hud .sv-banner .s{font-size:14px;letter-spacing:.3em;color:#e8e9eb;margin-top:6px}@media(max-width:900px){.sv-wrap{grid-template-columns:1fr;max-height:none}.hud .sv-hud .w{font-size:18px}}.menu button.soon:hover{color:var(--muted);border-left-color:transparent;padding-left:18px}.hud .sv-perks{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}.hud .sv-perks .pk{font-size:9px;letter-spacing:.1em;border:1px solid;padding:1px 4px;background:#00000073}.sv-tabs{display:flex;gap:4px;margin:-6px 0 12px;flex-wrap:wrap}.sv-tab{all:unset;cursor:pointer;padding:7px 12px;font-size:11px;letter-spacing:.18em;color:var(--muted);border:1px solid var(--line);background:#0d0f12}.sv-tab.sel{color:var(--text);border-color:var(--red)}.sv-body{max-width:1240px;max-height:calc(100vh - 290px);overflow:auto;padding-right:6px}.sv-level .lv{font-size:22px;font-weight:700;letter-spacing:.14em}.sv-level .bar,.mastery .bar,.challenges .bar{height:6px;background:#1a1d21;border:1px solid var(--line);margin:5px 0 3px}.sv-level .bar b,.mastery .bar b,.challenges .bar b{display:block;height:100%;background:linear-gradient(90deg,var(--red),#e0a030)}.sv-level .sub,.mastery .sub,.challenges .sub{font-size:11px;color:var(--muted);font-family:var(--mono)}.unlock-list{display:grid;gap:4px;font-size:12px}.unlock-list small{color:var(--muted)}.mastery{display:grid;gap:10px}.mastery .nm{font-size:13px;font-weight:600}.mastery .tt{font-size:10px;letter-spacing:.14em;color:#e0a030}.boards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.board ol{margin:0;padding-left:20px;font-size:12px}.board li{display:flex;justify-content:space-between;gap:8px;padding:2px 0;border-bottom:1px solid #16191d}.board li.me{color:#e0a030}.board li b{font-family:var(--mono)}.challenges{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.challenges .ch .nm{font-size:15px;font-weight:700;letter-spacing:.06em}.challenges .ch .ds{font-size:12px;color:var(--muted);margin:4px 0}.challenges .ch.done{border-color:#52e07a}.challenges .ch.done .bar b{background:#52e07a}.swatches .sw.locked{opacity:.35;cursor:not-allowed;font-size:10px}.mg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;max-width:1240px;max-height:calc(100vh - 230px);overflow:auto;padding-right:6px}.mg-tile{border:1px solid var(--line);background:#0d0f12;display:flex;flex-direction:column}.mg-tile:not(.planned){border-color:var(--accent);grid-column:span 2}.mg-tile .art{height:120px;background-size:cover;background-position:center;position:relative;border-bottom:1px solid var(--line)}.mg-tile:not(.planned) .art{height:170px}.mg-tile .badge{position:absolute;top:8px;left:8px;font-size:10px;letter-spacing:.2em;padding:3px 7px;background:#15181c;color:var(--muted);border:1px solid var(--line)}.mg-tile .badge.on{color:#fff;background:var(--red);border-color:var(--red-hot)}.mg-tile .body{padding:12px;display:flex;flex-direction:column;gap:6px;flex:1}.mg-tile .nm{font-size:20px;font-weight:700;letter-spacing:.14em}.mg-tile .tg{font-size:12px;color:var(--muted);letter-spacing:.06em}.mg-tile p{font-size:13px;color:#b9bdc3;margin:2px 0;line-height:1.5}.mg-tile .meta{display:flex;gap:10px;font-size:10px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;margin-top:auto}.mg-tile .btn{align-self:flex-start;margin-top:6px}.mg-tile.planned{opacity:.55}.dl-rules{display:grid;gap:7px}.dl-rules div{display:grid;grid-template-columns:130px 1fr;gap:10px;font-size:13px}.dl-rules b{color:var(--red-hot);letter-spacing:.1em;font-size:12px}.dl-rules span{color:#b9bdc3}@media(max-width:760px){.mg-tile:not(.planned){grid-column:span 1}.dl-rules div{grid-template-columns:1fr;gap:2px}}.hud.dl-mode .obj,.hud.dl-mode .vitals,.hud.dl-mode .ability,.hud.dl-mode .weapon,.hud.dl-mode .minimap,.hud.dl-mode .team,.hud.dl-mode .sv-hud,.hud.dl-mode .hint,.hud.dl-mode .downed{display:none!important}.dl-hud{position:absolute;inset:0;pointer-events:none}.dl-top{position:absolute;top:14px;left:50%;transform:translate(-50%);text-align:center;text-shadow:0 1px 3px #000}.dl-phase{font-size:13px;letter-spacing:.4em;color:var(--muted);font-weight:700}.dl-phase.ph1,.dl-phase.ph2{color:var(--red-hot)}.dl-phase.locked{color:#ffb0a8}.dl-timer{font-size:54px;font-weight:700;line-height:1;font-family:var(--mono);color:#e8e9eb;min-height:10px}.dl-phase.ph1+.dl-timer{font-size:26px;color:var(--red-hot);letter-spacing:.14em;margin:4px 0}.dl-timer.urgent{color:var(--red-hot);animation:blink 1s infinite}.dl-info{font-size:11px;letter-spacing:.18em;color:#b9bdc3}.dl-players{position:absolute;top:16px;right:16px;width:230px;display:grid;gap:4px}.dl-p{display:grid;grid-template-columns:1fr auto 34px;gap:8px;align-items:center;font-size:12px;background:#08090bb8;border-left:2px solid var(--line-strong);padding:5px 8px}.dl-p.lk{border-left-color:var(--red-hot)}.dl-p.me .n{color:#fff;font-weight:700}.dl-p.out{opacity:.45;text-decoration:line-through}.dl-p .s{font-size:9px;letter-spacing:.16em;color:var(--muted)}.dl-p.lk .s{color:var(--red-hot)}.dl-p .k{font-family:var(--mono);text-align:right;color:#e0a030}.dl-bottom{position:absolute;z-index:40;bottom:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px}.dl-status{font-size:12px;letter-spacing:.16em;color:#c9ccd1;text-shadow:0 1px 3px #000;text-align:center}.dl-lock{all:unset;pointer-events:auto;cursor:pointer;z-index:40;position:relative;font-size:18px;font-weight:700;letter-spacing:.3em;padding:12px 34px;color:#fff;background:#b3261ed9;border:1px solid var(--red-hot);box-shadow:0 0 18px #e2382d59}.dl-lock:hover{background:#e2382df2}.dl-lock small{font-size:10px;letter-spacing:.1em;margin-left:10px;opacity:.7;border:1px solid rgba(255,255,255,.4);padding:1px 5px}.dl-summary{position:absolute;left:50%;top:22%;transform:translate(-50%);min-width:320px;text-align:center;background:#08090bc7;border:1px solid var(--line);border-top:2px solid var(--red);padding:12px 18px;font-size:13px}.dl-summary .h{font-size:12px;letter-spacing:.3em;color:var(--red-hot);font-weight:700;margin-bottom:6px}.dl-summary .row b{color:#fff}.dl-summary .sub{color:var(--muted);font-size:11px;letter-spacing:.1em;margin-top:6px}.dl-summary .warn{color:#ffb347;font-weight:700;letter-spacing:.08em;margin-top:8px;animation:blink 1s infinite}.sv-banner.dl{color:#fff}.dl-over table tr.me td,.dl-over.won .death-title{color:#e0a030}.dl-stats{margin:12px 0}@media(max-height:560px),(max-width:760px){.dl-top{top:6px}.dl-timer{font-size:34px}.dl-players{top:8px;right:8px;width:170px}.dl-p{font-size:10px;padding:3px 6px;grid-template-columns:1fr auto 26px}.dl-bottom{bottom:12px}.dl-lock{font-size:14px;padding:9px 22px}.dl-summary{top:30%;min-width:240px;font-size:11px;padding:8px 12px}}.dl-over .death-title{font-size:clamp(30px,5.6vw,76px);letter-spacing:.08em;white-space:nowrap}.dl-over.won .death-title .vhs{color:#e0a030}@media(max-height:560px){.mg-grid{max-height:calc(100vh - 150px)}.mg-tile .art,.mg-tile:not(.planned) .art{height:64px}.mg-tile p{display:none}.mg-tile .body{padding:8px;gap:3px}.mg-tile .nm{font-size:15px}}@media(max-height:900px)and (min-height:561px){.screen[data-screen=menu] .menu{margin-top:2vh}.screen[data-screen=menu] .menu button{padding:7px 26px;font-size:18px}}.variant-pick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.mg-tile{transition:transform .16s ease,box-shadow .16s ease,border-color .16s}.mg-tile:not(.planned):hover{transform:translateY(-2px);box-shadow:0 0 0 1px var(--accent),0 10px 28px #00000080,0 0 22px color-mix(in srgb,var(--accent) 30%,transparent)}.mg-tile:not(.planned) .art{overflow:hidden}.mg-tile:not(.planned) .art:after{content:"";position:absolute;left:0;right:0;height:30%;top:-30%;background:linear-gradient(180deg,transparent,rgba(63,216,232,.08),transparent);animation:mg-scan 4.5s linear infinite}@keyframes mg-scan{to{top:110%}}.mg-tile:not(.planned) .nm{color:#fff}.mg-tile:not(.planned) .tg{color:var(--accent)}@media(prefers-reduced-motion:reduce){.mg-tile .art:after{animation:none}}.mg-tile:not(.planned){grid-column:span 1}.mg-tile:first-child{grid-column:span 2}.hud.qd-mode .obj,.hud.qd-mode .vitals,.hud.qd-mode .ability,.hud.qd-mode .weapon,.hud.qd-mode .minimap,.hud.qd-mode .team,.hud.qd-mode .hint,.hud.qd-mode .downed,.hud.ar-mode .obj,.hud.ar-mode .ability,.hud.ar-mode .team,.hud.ar-mode .downed{display:none!important}.mg-hud{position:absolute;inset:0;pointer-events:none;text-shadow:0 1px 3px #000}.mg-top{position:absolute;top:12px;left:50%;transform:translate(-50%);text-align:center}.mg-top .k{font-size:11px;letter-spacing:.32em;color:var(--red-hot);font-weight:700}.mg-top .duel{display:flex;gap:16px;align-items:center;justify-content:center;font-size:16px;font-weight:700;margin-top:4px}.mg-top .duel b{font-family:var(--mono);font-size:28px;color:#fff}.mg-top .duel .me{color:#9fd0ff}.mg-top .timer{font-family:var(--mono);font-size:30px;font-weight:700;color:#fff}.mg-top .s{font-size:10px;letter-spacing:.18em;color:#b9bdc3;margin-top:2px}.mg-center{position:absolute;left:50%;top:30%;transform:translate(-50%,-50%);text-align:center}.mg-center .sig{font-size:64px;font-weight:800;letter-spacing:.12em;color:#e8e9eb;white-space:nowrap}.mg-center .sig.cd{color:#ffb0a8;animation:blink 1.2s infinite;font-size:44px}.mg-center .sig.go{color:var(--red-hot);font-size:96px;text-shadow:0 0 30px rgba(226,56,45,.8),0 2px 4px #000}.mg-center .sig.prep{font-size:40px;color:#9fb8c8}.mg-center .sig.end{font-size:40px;color:#e0a030}.mg-center .sub{font-size:13px;letter-spacing:.14em;color:#c9ccd1;margin-top:6px}.mg-side{position:absolute;top:14px;right:14px;width:240px;display:grid;gap:4px}.mg-side .h{font-size:10px;letter-spacing:.3em;color:var(--muted)}.mg-side .br{background:#08090bb8;border-left:2px solid var(--line-strong);padding:4px 8px;font-size:11px;display:grid}.mg-side .br.done{border-left-color:#e0a030}.mg-side .br small{font-size:9px;letter-spacing:.16em;color:var(--muted)}.mg-side .br b{color:#e0a030;font-size:11px}.mg-side .row{display:grid;grid-template-columns:26px 1fr auto auto;gap:8px;align-items:center;background:#08090bb8;border-left:2px solid var(--line-strong);padding:4px 8px;font-size:12px}.mg-side .row.me{border-left-color:#3fd8e8}.mg-side .row .pl{font-family:var(--mono);color:var(--muted)}.mg-side .row .lv{font-family:var(--mono);color:#3fd8e8}.mg-side .row .kd{font-family:var(--mono);color:#e0a030}.mg-bottom{position:absolute;bottom:18px;left:50%;transform:translate(-50%);text-align:center}.hud.ar-mode .mg-bottom{bottom:96px}.mg-bottom .ladder{display:flex;gap:3px}.mg-bottom .ladder span{font-size:9px;letter-spacing:.1em;padding:3px 6px;background:#08090bb8;border:1px solid var(--line);color:var(--muted)}.mg-bottom .ladder span.done{color:#3fd8e8;border-color:#1f5f66}.mg-bottom .ladder span.cur{color:#fff;border-color:#3fd8e8;background:#3fd8e82e}@media(max-height:560px),(max-width:760px){.mg-center .sig{font-size:38px}.mg-center .sig.go{font-size:58px}.mg-center .sig.cd,.mg-center .sig.prep,.mg-center .sig.end{font-size:26px}.mg-side{width:170px;top:8px;right:8px}.mg-side .row,.mg-side .br{font-size:10px}.mg-top .timer{font-size:22px}.mg-top .duel b{font-size:20px}.mg-bottom .ladder span{font-size:7px;padding:2px 3px}.hud.ar-mode .mg-bottom{bottom:70px}}.mg-fire{display:none}body.mobile .mg-fire{all:unset;display:grid;place-items:center;pointer-events:auto;position:absolute;z-index:40;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:92px;height:92px;border-radius:50%;background:#b3261ed9;border:2px solid var(--red-hot);color:#fff;font-weight:800;letter-spacing:.14em;font-size:15px;box-shadow:0 0 18px #e2382d66}.hud.ar-mode .mg-side{top:160px}@media(max-height:560px),(max-width:760px){.hud.ar-mode .mg-side{top:104px}}.screen[data-screen=lobby] .back{position:static;margin:-6px 0 14px}.mg-lobbybar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:1240px;margin:-4px 0 12px;padding:8px 12px;border:1px solid #1f5f66;background:#3fd8e812;font-size:11px;letter-spacing:.14em;color:#9fe6ee}.mg-lobbybar span{flex:1;min-width:220px}
