:root{--bg-deep:#10141b;--bg:#161c26;--panel:#6d8296;--panel-dark:#4d5f70;--panel-inner:#445666;--panel-line:#93a7b8;--accent:#ffd23f;--accent-dim:#c9a42f;--ok:#3ea34a;--ok-bright:#56c765;--danger:#a8434b;--danger-bright:#cb5a63;--neutral:#7d8b96;--self:#3fd2ea;--text:#fff;--text-dim:#c2ceda;--kill:#e2453f;--shadow:0 6px 0 #00000052;--font-display:"Saira Condensed", "Arial Narrow", system-ui, sans-serif;--font-body:"Saira", system-ui, -apple-system, Segoe UI, sans-serif}*{box-sizing:border-box}html,body{background:var(--bg-deep);height:100%;color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;touch-action:none;margin:0;padding:0;overflow:hidden}#game,#ui{width:var(--vpw,100%);height:var(--vph,100%);position:fixed;top:0;left:0}#game canvas{display:block}#ui{pointer-events:none;font-family:var(--font-display)}#ui>*{pointer-events:auto}.passthrough,.passthrough *{pointer-events:none!important}.screen{touch-action:pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:radial-gradient(120% 90% at 50% 0,#3c547066,#0000 70%),linear-gradient(#10161ed1 0%,#080b0fed 100%);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:18px;display:flex;position:absolute;inset:0;overflow-y:auto}.screen>:first-child{margin-top:auto}.screen>:last-child{margin-bottom:auto}.screen--transparent{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080b0fd1}.title{letter-spacing:2px;text-align:center;text-transform:uppercase;text-shadow:0 5px #00000073;margin:0;font-size:clamp(30px,6vw,62px);font-weight:800;line-height:.94}.title em{letter-spacing:12px;color:var(--accent);margin-top:6px;font-size:.42em;font-style:normal;display:block}.subtitle{letter-spacing:4px;text-transform:uppercase;color:var(--text-dim);margin:-6px 0 6px;font-size:15px}.credit{color:var(--accent);letter-spacing:5px;cursor:pointer;border-bottom:2px solid #0000;text-decoration:none;transition:border-color .15s,color .15s}.credit:hover{color:#fff;border-bottom-color:var(--accent)}.panel{background:var(--panel);border:3px solid var(--panel-line);width:min(920px,100%);box-shadow:var(--shadow);border-radius:6px;padding:16px;position:relative}.panel:before,.panel:after{content:"";background:var(--accent);clip-path:polygon(0 0,100% 0,0 100%);width:18px;height:18px;position:absolute}.panel:before{top:3px;left:3px}.panel:after{top:3px;right:3px;transform:scaleX(-1)}.panel__body{background:var(--panel-inner);border:2px solid #0000002e;border-radius:4px;padding:14px}.panel__title{letter-spacing:2px;text-transform:uppercase;margin:0 0 12px;font-size:22px;font-weight:800}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row--between{justify-content:space-between}.row--end{justify-content:flex-end}.col{flex-direction:column;gap:10px;display:flex}.grow{flex:auto;min-width:0}.btn{appearance:none;font-family:var(--font-display);letter-spacing:2px;text-transform:uppercase;color:#fff;background:var(--neutral);cursor:pointer;border:3px solid #ffffff47;border-radius:5px;padding:12px 26px;font-size:19px;font-weight:800;transition:transform 60ms,filter .12s;box-shadow:0 4px #0000004d}.btn:hover:not(:disabled){filter:brightness(1.12)}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #0000004d}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--ok)}.btn--danger{background:var(--danger)}.btn--accent{background:var(--accent-dim);color:#241f05}.btn--big{padding:16px 46px;font-size:26px}.btn--sm{letter-spacing:1px;padding:7px 14px;font-size:15px}.field{letter-spacing:2px;text-transform:uppercase;color:var(--text-dim);flex-direction:column;gap:5px;font-size:13px;display:flex}.input{font-family:var(--font-display);letter-spacing:1px;color:#10141b;background:#e7edf2;border:3px solid #98a9b8;border-radius:4px;outline:none;min-width:0;padding:10px 12px;font-size:19px;font-weight:700}.input:focus{border-color:var(--accent)}.input::placeholder{color:#7b8894;font-style:italic}.stepper{align-items:center;gap:8px;display:flex}.stepper__value{text-align:center;letter-spacing:1px;min-width:92px;color:var(--accent);text-transform:uppercase;font-size:19px;font-weight:800}.stepper__btn{width:30px;height:30px;padding:0;font-size:17px;line-height:1}.toggle-value{color:var(--ok-bright)}.toggle-value--off{color:#dd8b8b}.list{touch-action:pan-y;overscroll-behavior:contain;flex-direction:column;gap:6px;min-height:0;display:flex;overflow-y:auto}.list__empty{text-align:center;color:#cbd7e2;letter-spacing:2px;text-transform:uppercase;opacity:.75;padding:26px 10px;font-size:15px}.list-item{color:#16202a;letter-spacing:1px;text-transform:uppercase;background:#a9b6c0;border:2px solid #0003;border-radius:4px;align-items:center;gap:10px;padding:10px 12px;font-size:17px;font-weight:700;display:flex}.list-item--button{cursor:pointer}.list-item--button:hover{background:#bdc9d2}.list-item--self{color:var(--self)}.list-item__meta{letter-spacing:1px;color:#33414d;gap:14px;margin-left:auto;font-size:14px;display:flex}.crown{color:var(--accent);text-shadow:0 1px #0006}.hud__score-actions{margin-top:8px;display:none}body.is-touch .hud__score-actions{display:flex}.chat{flex-direction:column;gap:8px;min-height:0;display:flex}.chat__log{touch-action:pan-y;overscroll-behavior:contain;letter-spacing:.5px;background:#3c4c5b;border:2px solid #00000038;border-radius:4px;flex-direction:column;flex:auto;justify-content:flex-end;gap:2px;min-height:140px;max-height:260px;padding:10px;font-size:15px;display:flex;overflow-y:auto}.chat__line{text-transform:uppercase;word-break:break-word}.chat__line b{color:var(--accent);font-weight:700}.chat__line--self b{color:var(--self)}.chat__line--system{color:#a9bccd;font-style:italic}.chat__form{gap:8px;display:flex}.hud{pointer-events:none;text-transform:uppercase;position:absolute;inset:0}.hud__timer{letter-spacing:2px;text-shadow:0 3px 6px #0009;font-size:clamp(30px,4vw,46px);font-weight:700;position:absolute;top:8px;left:50%;transform:translate(-50%)}.hud__timer--urgent{color:#ff5a4d}.hud__controls{letter-spacing:1px;color:#ffffffe6;text-shadow:0 2px 4px #000000b3;gap:26px;font-size:13px;display:flex;position:absolute;top:10px;left:14px}.hud__control{flex-direction:column;align-items:center;gap:3px;display:flex}.hud__key{color:#1a222b;background:#eef3f7;border:2px solid #9fb0bd;border-bottom-width:4px;border-radius:5px;place-items:center;width:34px;height:26px;font-size:14px;font-weight:800;display:grid}.hud__key--mouse{border-radius:12px 12px 9px 9px;width:24px;height:30px}.hud__key--mouse.is-left{background:linear-gradient(#e35b52 0 45%,#eef3f7 45% 100%)}.hud__key--mouse.is-right{background:linear-gradient(#eef3f7 0 45%,#e35b52 45% 100%)}.hud__key--emote{background:#ffd88a;font-size:17px}.hud__leaderboard{flex-direction:column;gap:4px;width:min(300px,34vw);display:flex;position:absolute;top:10px;right:14px}.hud__lb-row{letter-spacing:1px;align-items:stretch;gap:4px;font-size:17px;font-weight:700;display:flex}.hud__lb-rank,.hud__lb-score{color:#12181f;background:#8f9ea9;border:2px solid #ffffff59;border-radius:3px;place-items:center;width:34px;display:grid}.hud__lb-rank--1{background:var(--accent)}.hud__lb-rank--2{background:#c9d2d9}.hud__lb-rank--3{background:#b57544}.hud__lb-name{text-overflow:ellipsis;white-space:nowrap;background:#7d93a6;border:2px solid #ffffff59;border-radius:3px;flex:1;padding:2px 10px;overflow:hidden}.hud__lb-name--self{color:var(--self)}.hud__feed{letter-spacing:1px;text-shadow:0 2px 5px #000000bf;flex-direction:column;gap:4px;max-width:42vw;font-size:clamp(15px,1.6vw,21px);font-weight:700;display:flex;position:absolute;top:24%;left:16px}.hud__feed-line{animation:.18s ease-out feed-in}.hud__feed-line--death{color:var(--kill)}.hud__feed-line--kill{color:var(--self)}@keyframes feed-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}.hud__weapon{letter-spacing:1px;text-shadow:0 3px 6px #000000b3;align-items:center;gap:18px;font-size:26px;font-weight:800;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.hud__slot{align-items:center;gap:8px;display:flex}.hud__slot--low{color:#ff6a5c}.hud__icon{image-rendering:auto;height:auto}.hud__icon--weapon{width:62px}.hud__icon--grenade{width:20px}.hud__stack{display:contents}.hud__vitals{flex-direction:column;gap:4px;width:min(320px,52vw);display:flex;position:absolute;bottom:74px;left:50%;transform:translate(-50%)}.bar{background:#0000008c;border:2px solid #ffffff59;border-radius:3px;height:14px;overflow:hidden}.bar__fill{width:100%;height:100%;transition:width .12s linear}.bar__fill--hp{background:linear-gradient(#7fe06a,#35a52a)}.bar__fill--shield{background:linear-gradient(#7fd4ff,#2f8fd6)}.hud__center{text-align:center;letter-spacing:4px;text-shadow:0 5px #00000073;font-size:clamp(26px,5vw,60px);font-weight:800;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.hud__center small{letter-spacing:4px;color:var(--text-dim);margin-top:8px;font-size:.36em;display:block}.hud__banner{letter-spacing:6px;color:var(--accent);text-shadow:0 4px #00000080;font-size:clamp(24px,4vw,46px);font-weight:800;animation:.3s ease-out pop;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%)}@keyframes pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.7)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.table{border-collapse:separate;border-spacing:0 5px;width:100%}.table th{letter-spacing:2px;color:#e8eff5;text-align:right;padding:0 14px 8px;font-size:15px;font-weight:700}.table th:first-child{text-align:left}.table td{color:#16202a;letter-spacing:1px;text-align:right;background:#a9b6c0;padding:9px 14px;font-size:19px;font-weight:700}.table td:first-child{text-align:left;border-radius:4px 0 0 4px}.table td:last-child{border-radius:0 4px 4px 0}.table tr.is-self td{color:#b4780a}.table tr.is-bot td:first-child:after{content:" BOT";opacity:.6;font-size:12px}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{cursor:pointer;border:3px solid #ffffff59;border-radius:6px;width:34px;height:34px;padding:0}.swatch.is-active{border-color:var(--accent);transform:scale(1.12)}.preview{background:#00000038;border:3px solid #ffffff38;border-radius:6px;place-items:center;width:130px;height:130px;display:grid}.preview canvas{image-rendering:pixelated;width:96px;height:96px}.toast{background:var(--danger);letter-spacing:1px;text-transform:uppercase;box-shadow:var(--shadow);border:3px solid #ffffff4d;border-radius:5px;padding:12px 22px;font-size:17px;font-weight:700;animation:.2s ease-out pop;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.spinner{border:4px solid #ffffff40;border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.touch{pointer-events:none;z-index:5;--vh-px:var(--vph,100vh);--pad:clamp(84px, calc(var(--vh-px) * .44), 152px);--btn:clamp(44px, calc(var(--vh-px) * .17), 72px);--btn-sm:calc(var(--btn) * .74);--gap:clamp(6px, calc(var(--vh-px) * .028), 14px);--edge-l:max(10px, env(safe-area-inset-left));--edge-r:max(10px, env(safe-area-inset-right));--edge-b:max(10px, env(safe-area-inset-bottom));--edge-t:max(8px, env(safe-area-inset-top));position:absolute;inset:0}.touch>*{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.touch__zone{width:38%;height:62%;position:absolute;bottom:0}.touch__zone--left{left:0}.touch__zone--right{right:0}.touch>.touch__pad{bottom:var(--edge-b);width:var(--pad);height:var(--pad);pointer-events:none;opacity:.5;place-items:center;transition:opacity .12s;display:grid;position:absolute}.touch__pad--left{left:var(--edge-l)}.touch__pad--right{right:var(--edge-r)}.touch__pad.is-active{opacity:1}.touch__ring{background:#0c121a57;border:3px solid #ffffff47;border-radius:50%;position:absolute;inset:0}.touch__knob{background:#e6f0fa8c;border:3px solid #ffffffb3;border-radius:50%;width:42%;height:42%;transition:transform 50ms linear;box-shadow:0 3px 10px #0006}.touch>.touch__actions{bottom:var(--edge-b);right:calc(var(--edge-r) + var(--pad) + var(--gap));grid-template-columns:repeat(2, var(--btn));gap:var(--gap);pointer-events:none;display:grid;position:absolute}.touch>.touch__utility{top:var(--edge-t);left:var(--edge-l);gap:var(--gap);pointer-events:none;display:flex;position:absolute}.touch__btn{width:var(--btn);height:var(--btn);color:#fff;font-family:var(--font-display);font-size:clamp(11px, calc(var(--btn) * .24), 16px);letter-spacing:1px;cursor:pointer;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;background:#1c26329e;border:3px solid #fff6;border-radius:50%;padding:0;font-weight:800}.touch__btn:active{background:#506982cc;transform:scale(.94)}.touch__btn--jump{background:#3ea34aad}.touch__utility .touch__btn{width:var(--btn-sm);height:var(--btn-sm);font-size:clamp(13px, calc(var(--btn-sm) * .44), 22px);border-width:2px}body.is-touch .hud__stack{top:max(6px, env(safe-area-inset-top));flex-direction:column;align-items:center;gap:3px;width:min(240px,34vw);display:flex;position:absolute;left:50%;transform:translate(-50%)}body.is-touch .hud__stack>*{width:100%;position:static;inset:auto;transform:none}body.is-touch .hud__timer{font-size:clamp(17px, calc(var(--vph,100vh) * .095), 30px);text-align:center;letter-spacing:1px}body.is-touch .hud__vitals{gap:3px}body.is-touch .bar{border-width:2px;height:9px}body.is-touch .hud__weapon{font-size:clamp(13px, calc(var(--vph,100vh) * .05), 19px);justify-content:center;gap:14px}body.is-touch .hud__icon--weapon{width:38px}body.is-touch .hud__icon--grenade{width:14px}body.is-touch .hud__controls{display:none}body.is-touch .hud__leaderboard{top:max(6px, env(safe-area-inset-top));right:max(10px, env(safe-area-inset-right));gap:2px;width:min(190px,30vw)}body.is-touch .hud__lb-row{font-size:clamp(10px, calc(var(--vph,100vh) * .042), 15px)}body.is-touch .hud__lb-rank,body.is-touch .hud__lb-score{border-width:1px;width:22px}body.is-touch .hud__lb-name{border-width:1px;padding:1px 6px}body.is-touch .hud__feed{font-size:clamp(11px, calc(var(--vph,100vh) * .038), 15px);max-width:38vw;top:30%;left:10px}body.is-touch .hud__center{letter-spacing:2px;font-size:clamp(20px,4.4vh,40px);top:46%}body.is-touch .hud__banner{letter-spacing:3px;font-size:clamp(18px,4vh,34px);top:24%}.fs-toggle{top:max(8px, env(safe-area-inset-top));right:max(10px, env(safe-area-inset-right));z-index:15;color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#141c26b3;border:2px solid #ffffff4d;border-radius:6px;width:40px;height:40px;padding:0;font-size:19px;line-height:1;position:absolute}body:not(.is-touch) .fs-toggle,.hud:not(.hidden)~.fs-toggle{display:none}.rotate{z-index:20;text-align:center;background:#080b0ff2;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:absolute;inset:0}.rotate__phone{border:4px solid var(--accent);border-radius:9px;width:52px;height:86px;animation:2.2s ease-in-out infinite rotate-hint}@keyframes rotate-hint{0%,25%{transform:rotate(0)}55%,to{transform:rotate(-90deg)}}.rotate__text{letter-spacing:3px;text-transform:uppercase;margin:0;font-size:clamp(20px,6vw,34px);font-weight:800}.rotate__hint{letter-spacing:2px;text-transform:uppercase;color:var(--text-dim);margin:0;font-size:13px}.hidden{display:none!important}@media (max-height:760px){.screen{gap:10px;padding:12px}.title{font-size:clamp(24px,4.4vw,42px)}.subtitle{margin:0;font-size:13px}.panel{padding:12px}.panel__body{padding:10px}.btn--big{padding:12px 34px;font-size:21px}.chat__log{min-height:110px;max-height:180px}}@media (max-width:720px){.hud__controls{display:none}.hud__leaderboard{width:44vw;font-size:14px}.panel{padding:12px}.hud__weapon{gap:12px;font-size:20px}}@media (max-width:560px){.screen{gap:8px;padding:10px}.title{letter-spacing:1px;font-size:clamp(22px,8vw,34px)}.title em{letter-spacing:6px;font-size:.4em}.subtitle{letter-spacing:2px;font-size:12px}.panel{padding:9px}.panel__body{gap:8px;padding:9px}.panel__title{font-size:17px}.preview{width:88px;height:88px}.preview canvas{width:64px;height:64px}.row{gap:8px}.row>.btn{flex:130px}.btn{letter-spacing:1px;padding:11px 16px;font-size:16px}.btn--big{padding:14px 18px;font-size:19px}.field{letter-spacing:1px;font-size:11px}.stepper__value{min-width:68px;font-size:16px}.input{padding:8px 10px;font-size:16px}.swatch{width:28px;height:28px}.chat__log{min-height:90px;max-height:130px;font-size:13px}.list-item{padding:8px 10px;font-size:14px}.list-item__meta{gap:8px;font-size:12px}.table td{padding:7px 9px;font-size:15px}.table th{padding:0 9px 6px;font-size:12px}.chat+.col,.col+.chat,.panel .row>.col{width:100%!important;max-width:100%!important}}@media (max-height:540px) and (orientation:landscape){.screen{gap:6px;padding:8px 10px}.title{font-size:clamp(18px,5.2vh,30px)}.title em{letter-spacing:5px;margin-top:2px;font-size:.38em}.subtitle,.preview{display:none}.panel{padding:8px}.panel:before,.panel:after{width:12px;height:12px}.panel__body{gap:6px;padding:8px}.panel__title{margin-bottom:6px;font-size:15px}.row{gap:8px}.col{gap:6px}.btn{letter-spacing:1px;padding:8px 14px;font-size:14px;box-shadow:0 3px #0000004d}.btn--big{padding:9px 22px;font-size:16px}.btn--sm{padding:5px 10px;font-size:12px}.field{letter-spacing:1px;gap:3px;font-size:10px}.input{border-width:2px;padding:6px 9px;font-size:14px}.stepper{gap:5px}.stepper__value{min-width:58px;font-size:14px}.stepper__btn{width:24px;height:24px;font-size:13px}.swatch{border-width:2px;width:24px;height:24px}.chat__log{min-height:58px;max-height:92px;padding:7px;font-size:12px}.list-item{padding:5px 8px;font-size:12px}.list-item__meta{gap:8px;font-size:11px}.list__empty{padding:12px 8px;font-size:12px}.table{border-spacing:0 3px}.table td{padding:3px 8px;font-size:13px}.table th{padding:0 8px 3px;font-size:11px}.table tr.is-bot td:first-child:after{font-size:10px}.toast{padding:8px 16px;font-size:14px;bottom:10px}}
