:root{--a: #5aa7e0;--b: #e2664a;--amber: #e2a63c;--ink: #dde2e6;--dim: #8b959e;--faint: #5e6770;--panel: rgba(10, 14, 18, .72);--ui: rgba(12, 15, 18, .95);--line: rgba(255, 255, 255, .1);--line2: rgba(255, 255, 255, .2);--font: "Segoe UI", "Malgun Gothic", "Apple SD Gothic Neo", system-ui, sans-serif;--num: "Bahnschrift", "Segoe UI", "Malgun Gothic", sans-serif;--cross: #e8f4ff}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#05070a;overflow:hidden;color:var(--ink);font-family:var(--font);user-select:none;-webkit-user-select:none}canvas#gl{position:fixed;inset:0;width:100vw;height:100vh;display:block}.hidden{display:none!important}kbd{font-family:var(--num);font-size:11px;padding:2px 6px;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;background:#ffffff12;color:var(--ink);margin-right:3px}#hud{position:fixed;inset:0;pointer-events:none;font-family:var(--num);text-shadow:0 1px 2px rgba(0,0,0,.85)}#crosshair{position:absolute;left:50%;top:50%;--gap: 8px;--len: 9px;--th: 2px;opacity:1;transition:opacity .08s}#crosshair i{position:absolute;background:var(--cross);box-shadow:0 0 0 1px #0000008c}#crosshair .l{width:var(--len);height:var(--th);right:var(--gap);top:calc(var(--th) / -2)}#crosshair .r{width:var(--len);height:var(--th);left:var(--gap);top:calc(var(--th) / -2)}#crosshair .t{height:var(--len);width:var(--th);bottom:var(--gap);left:calc(var(--th) / -2)}#crosshair .b{height:var(--len);width:var(--th);top:var(--gap);left:calc(var(--th) / -2)}#crosshair .dot{width:2px;height:2px;left:-1px;top:-1px;border-radius:50%}#crosshair.enemy i{background:#ff5540}#hitmarker{position:absolute;left:50%;top:50%;opacity:0;--c: #fff}#hitmarker i{position:absolute;width:12px;height:2px;background:var(--c);box-shadow:0 0 3px #000000e6;transform-origin:left center}#hitmarker i:nth-child(1){transform:rotate(45deg) translate(8px)}#hitmarker i:nth-child(2){transform:rotate(135deg) translate(8px)}#hitmarker i:nth-child(3){transform:rotate(225deg) translate(8px)}#hitmarker i:nth-child(4){transform:rotate(315deg) translate(8px)}#hitmarker.show{animation:hm .28s ease-out}#hitmarker.kill{--c: #ff4a3a}#hitmarker.kill.show{animation:hmk .5s ease-out}@keyframes hm{0%{opacity:1;transform:scale(1.35)}to{opacity:0;transform:scale(.9)}}@keyframes hmk{0%{opacity:1;transform:scale(1.8)}60%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(1)}}#dmg-ind{position:absolute;left:50%;top:50%}#dmg-ind i{position:absolute;left:-90px;top:-150px;width:180px;height:300px;transform-origin:90px 150px;animation:di 1.3s ease-out forwards;background:radial-gradient(ellipse 60px 16px at 50% 9%,#ff2814f2,#ff281400 70%)}@keyframes di{0%{opacity:1}to{opacity:0}}#nade-warn{position:absolute;left:50%;top:50%}#nade-warn .nw{position:absolute;left:-16px;top:-128px;width:32px;height:256px;transform-origin:16px 128px}#nade-warn .nw i{position:absolute;left:6px;top:0;width:0;height:0;border:10px solid transparent;border-bottom:14px solid #ffb84a;border-top:0;filter:drop-shadow(0 0 3px #000)}#nade-warn .nw b{position:absolute;left:5px;top:18px;width:20px;height:24px;border-radius:9px 9px 8px 8px;background:#ffb84a;box-shadow:0 0 6px #000000e6}#nade-warn .nw b:after{content:"";position:absolute;left:7px;top:-5px;width:7px;height:6px;background:#ffe2b0}#nade-warn .nw.near i{border-bottom-color:#ff4a3a}#nade-warn .nw.near b{background:#ff4a3a;animation:pulse .35s infinite}#nameplates .np{position:absolute;transform:translate(-50%,-100%);font-size:12px;font-family:var(--font);font-weight:600;white-space:nowrap;letter-spacing:.3px}#nameplates .np.a{color:var(--a)}#nameplates .np.b{color:var(--b)}#nameplates .np .bar{height:3px;width:44px;margin:2px auto 0;background:#00000080;border-radius:2px;overflow:hidden}#nameplates .np .bar i{display:block;height:100%;background:currentColor}#nameplates .np .tri{width:0;height:0;margin:3px auto 0;border:4px solid transparent;border-top-color:currentColor;border-bottom:0}#topbar{position:absolute;top:14px;left:50%;transform:translate(-50%);display:flex;align-items:stretch;gap:10px}#topbar .team{display:flex;align-items:center;gap:10px;padding:6px 14px 9px;background:var(--panel);border:1px solid var(--line);min-width:150px;position:relative}#topbar .team.a{border-left:3px solid var(--a)}#topbar .team.b{border-right:3px solid var(--b);justify-content:flex-end}#topbar .tname{font-size:12px;letter-spacing:2px;color:var(--dim)}#topbar .tscore{font-size:26px;font-weight:700;line-height:1}#topbar .a .tscore{color:var(--a)}#topbar .b .tscore{color:var(--b)}#topbar .bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:#ffffff14}#topbar .bar i{display:block;height:100%;width:0;transition:width .4s}#topbar .a .bar i{background:var(--a)}#topbar .b .bar i{background:var(--b);margin-left:auto}#topbar .team.mine:after{content:"아군";position:absolute;top:-9px;font-size:9px;letter-spacing:1px;background:#0c1116;padding:0 5px;color:var(--ink);font-family:var(--font)}#topbar .mid{text-align:center;padding:4px 16px;background:var(--panel);border:1px solid var(--line)}#timer{font-size:22px;font-weight:700;letter-spacing:1px}#timer.low{color:var(--b);animation:pulse 1s infinite}#mode{font-size:10px;color:var(--dim);letter-spacing:.5px;font-family:var(--font)}#mode b{color:var(--amber)}@keyframes pulse{50%{opacity:.55}}#compass{position:absolute;top:74px;left:50%;width:360px;height:22px;transform:translate(-50%);overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent)}#compass-strip{position:absolute;top:0;left:50%;white-space:nowrap;font-size:11px;color:var(--dim);will-change:transform}#compass-strip span{display:inline-block;width:45px;text-align:center}#compass-strip span.c{color:var(--ink);font-weight:700;font-size:12px}#compass .needle{position:absolute;left:50%;bottom:0;width:2px;height:6px;margin-left:-1px;background:var(--amber)}#zones{position:absolute;top:102px;left:50%;transform:translate(-50%);display:flex;gap:10px}.zone{position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font:700 17px var(--num);color:var(--ink);background:var(--panel);border:2px solid rgba(255,255,255,.45);border-radius:5px;overflow:hidden}.zone.a{border-color:var(--a);color:var(--a);background:#4fb0ff33}.zone.b{border-color:var(--b);color:var(--b);background:#ff6a4d33}.zone i{position:absolute;left:0;bottom:0;height:4px;width:0;background:var(--ink);transition:width .15s}.zone.cap-a i{background:var(--a)}.zone.cap-b i{background:var(--b)}.zone.pulse{animation:pulse .8s infinite}#zmarks .zm{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px;display:flex;align-items:center;justify-content:center;font:700 14px var(--num);border:2px solid rgba(255,255,255,.8);border-radius:50%;background:#0a0e128c;color:#fff}#zmarks .zm.a{border-color:var(--a);color:var(--a)}#zmarks .zm.b{border-color:var(--b);color:var(--b)}#zmarks .zm small{position:absolute;top:31px;font:10px var(--font);color:var(--ink);white-space:nowrap}#capbar{position:absolute;left:50%;top:79%;transform:translate(-50%);width:260px;text-align:center;opacity:0;transition:opacity .2s;font:600 13px var(--font);letter-spacing:1px}#capbar.show{opacity:1}#capbar .cb{height:6px;margin-top:5px;background:#ffffff24}#capbar .cb i{display:block;height:100%;width:0;background:var(--a);transition:width .12s}#capbar.enemy .cb i{background:var(--b)}#minimap-wrap{position:absolute;left:18px;top:18px;width:200px;height:200px;border-radius:50%;overflow:hidden;background:#080c1099;border:1px solid var(--line);box-shadow:0 4px 18px #00000080}#minimap{width:200px;height:200px;display:block}.mm-ring{position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 22px #000000bf}#killfeed{position:absolute;right:18px;top:18px;display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-family:var(--font)}#killfeed .kf{padding:4px 10px;background:var(--panel);border:1px solid var(--line);font-size:13px;display:flex;gap:8px;align-items:center;animation:kfin .25s ease-out;transition:opacity .6s}#killfeed .kf.me{border-color:var(--amber);background:#3c2806c7}#killfeed .kf .w{font-size:11px;color:var(--dim);padding:1px 6px;border:1px solid var(--line);border-radius:2px;font-family:var(--num);letter-spacing:.5px}#killfeed .kf .hs{color:var(--amber);font-weight:700;font-size:11px}svg.ki{width:54px;height:18px;flex:none}svg.ki path{fill:var(--ink)}#killfeed .kf.me svg.ki path{fill:#ffe2b0}svg.hsi{width:15px;height:15px;flex:none;color:var(--amber)}svg.ki.big{width:96px;height:32px;display:block;margin:0 auto 2px;opacity:.92}#killfeed .a{color:var(--a)}#killfeed .b{color:var(--b)}@keyframes kfin{0%{opacity:0;transform:translate(20px)}}#center{position:absolute;left:50%;top:61%;transform:translate(-50%);text-align:center}#center-main{font-size:20px;font-weight:700;letter-spacing:2px;opacity:0}#center-sub{font-size:13px;color:var(--amber);opacity:0;letter-spacing:1px;font-family:var(--font)}#center-main.show,#center-sub.show{animation:cm 1.9s ease-out forwards}#center-main.hs{color:var(--amber)}@keyframes cm{0%{opacity:0;transform:translateY(8px) scale(1.15)}10%{opacity:1;transform:none}75%{opacity:1}to{opacity:0;transform:translateY(-6px)}}#prompt{position:absolute;left:50%;top:70%;transform:translate(-50%);font-size:14px;font-family:var(--font);padding:5px 14px;background:var(--panel);border:1px solid var(--line);opacity:0;transition:opacity .15s;white-space:nowrap}#prompt.show{opacity:1}#prompt.warn{border-color:var(--b);color:#ffd2c8}#toast{position:absolute;left:50%;top:76%;transform:translate(-50%);font-size:13px;font-family:var(--font);color:var(--ink);opacity:0;transition:opacity .25s;white-space:nowrap}#toast.show{opacity:1}body:has(#death:not(.hidden)) #toast{top:44%}#streak{position:absolute;left:50%;top:24%;transform:translate(-50%);font-size:30px;font-weight:800;letter-spacing:6px;color:var(--amber);opacity:0;text-shadow:0 0 18px rgba(255,170,40,.6),0 2px 3px #000}#streak.show{animation:stk 2.4s ease-out forwards}@keyframes stk{0%{opacity:0;transform:translate(-50%) scale(1.6)}12%{opacity:1;transform:translate(-50%) scale(1)}80%{opacity:1}to{opacity:0}}#vitals{position:absolute;left:22px;bottom:22px;width:250px;padding:10px 14px 12px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--ink)}.hp-row{display:flex;align-items:center;gap:8px}.ico{width:18px;height:18px;fill:var(--ink)}#hp-num{font-size:32px;font-weight:700;line-height:1}#hp-bar{position:relative;height:6px;background:#ffffff1a;margin-top:8px;overflow:hidden}#hp-bar i{position:absolute;left:0;top:0;bottom:0}#hp-fill{background:var(--ink);z-index:2;transition:width .12s}#hp-lag{background:#ff5540;transition:width .7s .25s}#vitals.low{border-left-color:#ff4a3a}#vitals.low #hp-num{color:#ff6a55}#vitals.low #hp-fill{background:#ff5540}#vitals.low .ico{fill:#ff5540}#stance{position:absolute;right:12px;top:12px;font-size:11px;color:var(--dim);font-family:var(--font);letter-spacing:1px}#weapon{position:absolute;right:22px;bottom:22px;min-width:250px;padding:10px 14px;background:var(--panel);border:1px solid var(--line);border-right:3px solid var(--ink);text-align:right}#w-name{font-size:12px;letter-spacing:2px;color:var(--dim);font-family:var(--font)}#w-icon{position:absolute;left:12px;top:12px;width:108px;height:36px;opacity:.8}#w-icon path{fill:var(--ink)}#weapon.empty #w-icon path{fill:#ff8a78}.ammo-row{line-height:1;margin-top:2px}#ammo-cur{font-size:46px;font-weight:700}.ammo-row .sep{font-size:22px;color:var(--dim);margin:0 6px}#ammo-res{font-size:22px;color:var(--dim)}#weapon.low #ammo-cur{color:var(--amber)}#weapon.empty #ammo-cur{color:#ff5540;animation:pulse .6s infinite}#ammo-pips{display:flex;gap:2px;justify-content:flex-end;flex-wrap:wrap;max-width:250px;margin:6px 0 6px auto}#ammo-pips i{width:3px;height:10px;background:var(--ink);opacity:.9}#ammo-pips i.off{opacity:.16}#ammo-pips.big i{width:9px;height:12px}.w-meta{display:flex;justify-content:flex-end;align-items:center;gap:12px;font-size:12px;font-family:var(--font);color:var(--dim)}#w-mode{padding:1px 8px;border:1px solid var(--line);color:var(--ink);letter-spacing:1px}#gear{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;margin-top:7px;padding-top:7px;border-top:1px solid var(--line);font-family:var(--font);font-size:11px;text-align:left}.gear{display:flex;align-items:center;gap:6px;color:var(--ink);white-space:nowrap}.gear kbd{margin-right:0;min-width:9px;text-align:center}.gear .gn{flex:1;color:var(--dim)}.gear i{font-style:normal;font-family:var(--num);font-size:13px;min-width:10px;text-align:right}.gear.out{opacity:.38}.gear.out i{color:#ff8a78}.gear.on{background:#ffffff1a;box-shadow:0 0 0 3px #ffffff1a,0 0 0 4px var(--line);border-radius:1px}.gear.on .gn{color:var(--ink)}.gear b{display:inline-block;width:10px;height:13px;border-radius:5px 5px 4px 4px;background:#7d8f5a;position:relative}.gear b:after{content:"";position:absolute;left:3px;top:-3px;width:4px;height:3px;background:#c9c9c9}.gear b.g-smoke{background:#9aa3aa;border-radius:2px}.gear b.g-satchel{background:#6d6a45;border-radius:2px;width:12px;height:12px}.gear b.g-satchel:after{left:3px;top:-3px;width:6px;height:3px;background:transparent;border:1px solid #c9c9c9;border-bottom:0;border-radius:3px 3px 0 0;box-sizing:border-box}.gear b.g-rocket{background:#7d8f5a;border-radius:6px 6px 1px 1px;width:6px;height:14px}.gear b.g-rocket:after{left:-2px;top:auto;bottom:0;width:10px;height:3px;background:#5d6a45}#slots{display:flex;justify-content:flex-end;gap:6px;margin-top:8px;font-family:var(--font);font-size:11px}.slot{padding:2px 6px 2px 3px;border:1px solid transparent;color:var(--dim);opacity:.7}.slot.on{border-color:var(--line);color:var(--ink);opacity:1;background:#ffffff12}#chat{position:absolute;left:22px;bottom:120px;width:380px;font-family:var(--font);font-size:13px}#chat-log div{padding:1px 0;animation:kfin .2s;transition:opacity 1s}#chat-log .a{color:var(--a)}#chat-log .b{color:var(--b)}#chat-log .sys{color:var(--amber)}#chat-input{display:none;width:100%;margin-top:4px;padding:6px 9px;background:#080c10d9;border:1px solid var(--line);color:var(--ink);font:inherit;outline:none;pointer-events:auto;user-select:text;-webkit-user-select:text}#chat.open #chat-input{display:block}#stats{position:absolute;left:230px;top:18px;font-size:11px;color:var(--dim);line-height:1.5}#protect{position:absolute;left:50%;top:82%;transform:translate(-50%);font-family:var(--font);font-size:12px;letter-spacing:3px;color:var(--a);opacity:0;transition:opacity .3s}#protect.show{opacity:.9}.overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:20}.btn{font:600 13px var(--font);letter-spacing:0;color:var(--ink);background:#ffffff0b;border:1px solid var(--line2);border-radius:2px;height:38px;padding:0 16px;cursor:pointer;width:100%;white-space:nowrap;transition:background .1s,border-color .1s,color .1s}.btn:hover{background:#ffffff1a;border-color:#ffffff61}.btn:active{background:#ffffff08}.btn:focus-visible,select:focus-visible,input:focus-visible{outline:1px solid var(--amber);outline-offset:1px}.btn.primary{background:var(--amber);border-color:var(--amber);color:#15110a;font-weight:700}.btn.primary:hover{background:#efb955;border-color:#efb955}.btn:disabled{opacity:.36;cursor:default;pointer-events:none}.btn.ghost{background:transparent;border-color:transparent;color:var(--dim);width:auto}.btn.ghost:hover{color:var(--ink);background:#ffffff0f;border-color:transparent}.btn.sm{height:28px;padding:0 10px;font-size:12px;width:auto}.logo{font:800 22px var(--num);letter-spacing:3px;color:var(--ink);line-height:1}.logo span{color:var(--amber)}.ui-field,#name,#room-form input,#room-form select,.host-grid select,.set-grid select,.wr-opts select{font:500 13px var(--font);color:var(--ink);background:#0a0d10;border:1px solid var(--line2);border-radius:2px;height:34px;padding:0 10px;outline:none}#name,#room-form input{user-select:text;-webkit-user-select:text}#name:focus,#room-form input:focus,select:focus{border-color:var(--amber)}#menu{display:grid;grid-template-columns:minmax(430px,520px) 1fr minmax(300px,340px);grid-template-rows:54px minmax(0,1fr) auto;grid-template-areas:"head head head" "left show spec" "foot foot foot";gap:0 24px;padding:0 28px 12px;align-items:start;justify-content:stretch;overflow:hidden;background:linear-gradient(90deg,#06080ae6,#06080a8c 33%,#06080a00 50% 62%,#06080a99 80%,#06080ae6)}#menu h3{margin:0 0 8px;font:600 11px var(--font);color:var(--dim);letter-spacing:.5px}.m-head{grid-area:head;align-self:stretch;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.m-nav{display:flex;gap:2px}.m-left,.m-spec{background:var(--ui);border:1px solid var(--line);padding:16px;margin-top:18px;max-height:calc(100% - 18px);overflow-y:auto}.m-left{grid-area:left;display:flex;flex-direction:column;gap:10px}.pn-head{display:flex;align-items:center;gap:8px}#menu .pn-head h3{margin:0;font-size:14px;color:var(--ink)}.pn-count{font:500 12px var(--num);color:var(--faint);margin-right:auto}.rooms{border:1px solid var(--line);background:#00000047}.rooms-th,.room{display:grid;grid-template-columns:minmax(0,1fr) 108px 86px 54px 58px;gap:8px;align-items:center;padding:0 12px 0 10px}.rooms-th{height:28px;font-size:11px;color:var(--faint);border-bottom:1px solid var(--line);border-left:2px solid transparent}.rooms-list{height:252px;overflow-y:auto}.room{height:36px;font-size:13px;border-bottom:1px solid rgba(255,255,255,.05);border-left:2px solid transparent;cursor:pointer;color:var(--dim)}.room:hover{background:#ffffff0a}.room.sel{background:#e2a63c1a;border-left-color:var(--amber)}.room .rn{color:var(--ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room .rc{font-family:var(--num);color:var(--ink)}.room .rs.wait{color:var(--amber)}.room .rs.play{color:#8fbf7a}.rooms-empty{padding:30px 12px;text-align:center;color:var(--faint);font-size:13px}.m-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:8px}#room-form{display:grid;grid-template-columns:76px 1fr;gap:8px 10px;align-items:center;padding:12px;border:1px solid var(--line);background:#00000047;font-size:12px;color:var(--dim)}#room-form.hidden{display:none}.rf-btns{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1.4fr;gap:8px;margin-top:2px}#menu-status{min-height:16px;font-size:12px;color:var(--b)}.m-id{display:grid;grid-template-columns:76px 1fr;gap:10px;align-items:center;font-size:12px;color:var(--dim);padding-top:10px;border-top:1px solid var(--line)}.loadout{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.wcard{position:relative;padding:6px 8px;border:1px solid var(--line);border-radius:2px;background:#00000047;cursor:pointer;transition:border-color .1s,background .1s;pointer-events:auto}.wcard:hover{border-color:#ffffff57}.wcard.sel{border-color:var(--amber);background:#e2a63c1a}.wcard svg{width:100%;height:40px;display:block}.wcard svg path{fill:#cdd4da}.wcard.sel svg path{fill:#f1d7a3}.wcard .wn{font:700 12px var(--num);letter-spacing:.5px;margin-top:3px}.wcard .wc{font-size:10px;color:var(--dim)}.wcard .wk{position:absolute;left:4px;top:3px;font:600 10px var(--num);color:var(--dim)}.loadout.mini{margin:2px 0 6px;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.loadout.mini .wcard{padding:4px 4px 5px}.loadout.mini .wcard svg{height:22px}.loadout.mini .wcard .wc{display:none}.loadout.mini .wcard .wn{font-size:10px;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.loadout.mini .wcard .wk{display:none}.pause-inner{overflow-x:hidden}#loadout{grid-template-columns:1fr;gap:4px;margin-bottom:16px}#loadout .wcard{display:grid;grid-template-columns:96px 1fr auto;align-items:center;gap:12px;padding:3px 12px 3px 8px;border-left-width:2px}#loadout .wcard svg{height:28px}#loadout .wcard .wn{margin:0;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}#loadout .wcard .wc{font-size:11px;white-space:nowrap}#loadout .wcard .wk{display:none}.m-left,.m-spec,.pause-inner,.rooms-list,.panel{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.m-left::-webkit-scrollbar,.m-spec::-webkit-scrollbar,.pause-inner::-webkit-scrollbar,.rooms-list::-webkit-scrollbar,.panel::-webkit-scrollbar{width:6px}.m-left::-webkit-scrollbar-thumb,.m-spec::-webkit-scrollbar-thumb,.pause-inner::-webkit-scrollbar-thumb,.rooms-list::-webkit-scrollbar-thumb,.panel::-webkit-scrollbar-thumb{background:#ffffff2e}.m-left::-webkit-scrollbar-track,.m-spec::-webkit-scrollbar-track,.pause-inner::-webkit-scrollbar-track,.rooms-list::-webkit-scrollbar-track,.panel::-webkit-scrollbar-track{background:transparent}.m-show{grid-area:show;align-self:stretch;position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;text-align:center;min-width:0;pointer-events:auto;cursor:grab;touch-action:none}.m-show.drag{cursor:grabbing}.m-hint{position:absolute;top:22px;left:50%;transform:translate(-50%);font-size:11px;color:var(--faint);white-space:nowrap}.m-title{padding-bottom:2vh;pointer-events:none;text-shadow:0 1px 10px rgba(0,0,0,.9)}.m-wclass{font-size:12px;color:var(--amber);font-weight:600}.m-wname{font:800 clamp(26px,2.8vw,42px) var(--num);letter-spacing:2px;line-height:1.15;margin:2px 0 4px}.m-wdesc{font-size:13px;color:var(--dim)}.m-spec{grid-area:spec}#menu .m-spec h3:not(:first-child){margin-top:14px}.w-stats{display:grid;grid-template-columns:52px 1fr 26px;gap:7px 10px;align-items:center;font-size:12px;color:var(--dim)}.w-stats .sb{height:4px;background:#ffffff1a;position:relative}.w-stats .sb i{display:block;height:100%;background:#cfd6dc;transition:width .3s ease}.w-stats b{font:600 12px var(--num);color:var(--ink);text-align:right}.w-spec{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;font-size:12px}.w-spec span{color:var(--dim)}.w-spec b{font-weight:600;text-align:right;font-family:var(--num)}.w-kit{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:12px;color:var(--dim);line-height:1.6}.seg{display:flex;gap:4px;margin-bottom:14px}.seg .btn{flex:1;padding:0 6px;color:var(--dim)}.seg i{width:6px;flex:none}.seg .btn.on{border-color:var(--amber);color:var(--ink);background:#e2a63c1f}#menu h3 small{font-weight:400;color:var(--faint);margin-left:6px}.m-foot{grid-area:foot;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:10px}.foot{font-size:11px;color:var(--faint)}#keys-pop{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#040608c7;z-index:2}.keys-inner{width:min(680px,94vw);max-height:94vh;overflow-y:auto;background:var(--ui);border:1px solid var(--line);padding:20px 24px;display:grid;gap:14px}.keys{display:grid;grid-template-columns:1fr 1fr;gap:6px 30px;font-size:13px;color:var(--dim)}.keys div{display:flex;align-items:center}.keys span{margin-left:auto;color:var(--ink)}@media (min-width: 2200px) and (min-height: 1200px){#menu{grid-template-columns:640px 1fr 420px}.m-left,.m-spec,.m-head,.m-foot,.m-hint{zoom:1.25}}@media (max-width: 1180px){#menu{grid-template-columns:minmax(400px,480px) 1fr;grid-template-areas:"head head" "left show" "foot foot"}.m-spec{display:none}}@media (max-width: 760px){#menu{grid-template-columns:1fr;grid-template-areas:"head" "left" "foot";overflow-y:auto}.m-show{display:none}.keys{grid-template-columns:1fr}}@media (max-height: 800px){.rooms-list{height:180px}.m-left,.m-spec{padding:12px;margin-top:12px}#loadout .wcard svg{height:24px}}#pause,#settings,#waitroom{background:#040608c7;z-index:30}#settings{z-index:40}#waitroom{background:#0406088c;z-index:22}.pause-inner{width:440px;max-width:94vw;max-height:96vh;overflow-y:auto;display:grid;gap:8px;background:var(--ui);border:1px solid var(--line);padding:20px}.p-title{font:700 18px var(--font);letter-spacing:0;margin-bottom:2px}.p-room{font-size:12px;color:var(--dim);margin:-4px 0 6px;min-height:14px}.p-sub{font-size:11px;color:var(--dim);margin-top:8px}#host-panel{display:grid;gap:6px;border-top:1px solid var(--line);padding-top:6px;margin-top:4px}#host-panel.hidden{display:none}.host-grid{display:grid;grid-template-columns:84px 1fr;gap:6px 10px;align-items:center;font-size:12px;color:var(--dim)}.host-btns{display:grid;grid-template-columns:1fr 1fr;gap:6px}.host-btns .btn{height:30px;font-size:12px;padding:0 8px}.ai-steps{display:grid;grid-template-columns:auto 28px 22px 28px auto 28px 22px 28px;gap:4px;align-items:center;font-size:11px}.ai-steps .btn{padding:0;width:28px}.ai-steps b{font:700 13px var(--num);color:var(--ink);text-align:center}.ai-steps .ta{color:var(--a)}.ai-steps .tb{color:var(--b);margin-left:8px}.p-keys{display:flex;flex-wrap:wrap;gap:5px 12px;font-size:11px;color:var(--faint);padding:8px 0 2px;border-top:1px solid var(--line);margin-top:4px}.p-keys span{white-space:nowrap}.wr-inner{width:760px;max-width:94vw;max-height:94vh;overflow-y:auto;background:var(--ui);border:1px solid var(--line);padding:22px 24px 20px;display:grid;gap:14px}.wr-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}.wr-kicker{font-size:11px;color:var(--amber);font-weight:600}.wr-name{font:700 22px var(--font);margin-top:2px}.wr-meta{font-size:13px;color:var(--dim)}.wr-teams{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wr-team{border:1px solid var(--line);background:#00000040;display:flex;flex-direction:column}.wr-th{display:flex;justify-content:space-between;align-items:center;height:32px;padding:0 12px;font:700 13px var(--num);letter-spacing:1px;border-bottom:1px solid var(--line)}.wr-team.a .wr-th{color:var(--a);box-shadow:inset 2px 0 0 var(--a)}.wr-team.b .wr-th{color:var(--b);box-shadow:inset 2px 0 0 var(--b)}.wr-th span:last-child{font-weight:500;color:var(--dim)}.wr-list{min-height:192px}.wr-p{display:flex;align-items:center;gap:8px;height:32px;padding:0 12px;font-size:13px;border-bottom:1px solid rgba(255,255,255,.05)}.wr-p.me{background:#e2a63c1a}.wr-p i{font-style:normal;font-size:10px;color:var(--dim);border:1px solid var(--line2);border-radius:2px;padding:0 5px;margin-left:auto}.wr-p i.h{color:var(--amber);border-color:#e2a63c80}.wr-ai{display:flex;gap:6px;padding:8px;border-top:1px solid var(--line);margin-top:auto}.wr-ai .btn{flex:1}.wr-opts{display:grid;grid-template-columns:40px 1fr 40px 1fr;gap:10px;align-items:center;font-size:12px;color:var(--dim)}.host-only.hidden{display:none}.wr-note{font-size:12px;color:var(--dim);min-height:16px}.wr-btns{display:grid;grid-template-columns:1fr 1fr 1fr 1.5fr;gap:8px}.set-inner{width:540px;max-width:94vw;max-height:92vh;overflow:auto;background:var(--ui);border:1px solid var(--line);padding:20px;display:grid;gap:14px}.set-grid{display:grid;grid-template-columns:1fr 230px;gap:10px 16px;align-items:center;font-size:13px}.set-grid output{color:var(--ink);font-family:var(--num);margin-left:8px}.set-grid input[type=range]{width:100%;accent-color:var(--amber)}.set-grid input[type=checkbox]{width:16px;height:16px;accent-color:var(--amber);justify-self:start}.colors{display:flex;gap:8px}.colors i{width:20px;height:20px;border:2px solid transparent;cursor:pointer}.colors i.sel{border-color:#fff}#scoreboard{background:#0406098c;z-index:15;pointer-events:none}.sb-inner{width:min(980px,94vw);background:var(--panel);border:1px solid var(--line);padding:18px 20px 20px;backdrop-filter:blur(6px)}.sb-head{display:flex;align-items:baseline;gap:14px;margin-bottom:12px}.sb-title{font:800 22px var(--num);letter-spacing:5px}.sb-sub{font-size:12px;color:var(--dim);letter-spacing:2px}.sb-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sb-th{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;font:700 14px var(--num);letter-spacing:3px}.sb-team.a .sb-th{background:#4fb0ff2e;border-left:3px solid var(--a)}.sb-team.b .sb-th{background:#ff6a4d2e;border-left:3px solid var(--b)}.sb-th span{font-size:20px}.sb-team table{width:100%;border-collapse:collapse;font-size:13px}.sb-team td,.sb-team th{padding:5px 10px;text-align:right;border-bottom:1px solid rgba(255,255,255,.06);font-family:var(--num)}.sb-team th{font-size:10px;color:var(--dim);letter-spacing:2px;font-weight:400}.sb-team td:first-child,.sb-team th:first-child{text-align:left;font-family:var(--font)}.sb-team tr.me td{background:#ffb84a29;color:#ffe2b0}.sb-team tr.dead td:first-child{opacity:.45}.sb-team .bot{font-size:9px;color:var(--dim);border:1px solid var(--line);padding:0 4px;margin-left:6px;letter-spacing:1px}#death{position:fixed;left:50%;bottom:12vh;transform:translate(-50%);z-index:12;text-align:center;background:var(--panel);border:1px solid var(--line);border-top:3px solid #ff5540;padding:16px 28px;min-width:520px;backdrop-filter:blur(6px)}.d-top{font:800 13px var(--num);letter-spacing:8px;color:#ff6a55}.d-killer{font-size:22px;font-weight:700;margin-top:6px}.d-killer .a{color:var(--a)}.d-killer .b{color:var(--b)}.d-weapon{font-size:13px;color:var(--dim);margin-top:2px}.d-respawn{margin-top:10px;font-size:14px}.d-respawn b{font:700 22px var(--num);color:var(--amber)}.d-hint{font-size:11px;color:var(--dim);margin:10px 0 4px;letter-spacing:1px}#roundend{background:#04060999;z-index:25}.re-inner{text-align:center;width:min(900px,94vw)}#re-title{font:800 76px var(--num);letter-spacing:16px;line-height:1.05;animation:retitle .7s cubic-bezier(.2,.9,.2,1) both}@keyframes retitle{0%{opacity:0;transform:scale(1.5);letter-spacing:40px}to{opacity:1;transform:none}}@keyframes rerow{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.re-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;text-align:left}.re-team{background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--a);padding:8px 12px 10px;backdrop-filter:blur(6px)}.re-team.b{border-top-color:var(--b)}.re-th{display:flex;justify-content:space-between;align-items:baseline;font:700 13px var(--num);letter-spacing:2px;color:var(--a);padding-bottom:4px}.re-team.b .re-th{color:var(--b)}.re-th span{font-size:22px}.re-team table{width:100%;border-collapse:collapse;font-size:13px}.re-team th{font-weight:400;font-size:11px;color:var(--dim);text-align:right;padding:2px 6px}.re-team th:nth-child(2){text-align:left}.re-team td{padding:3px 6px;text-align:right;font-family:var(--num);border-top:1px solid rgba(255,255,255,.06)}.re-team td:nth-child(2){text-align:left;font-family:var(--font)}.re-team td:first-child{color:var(--dim);width:22px}.re-team tr{animation:rerow .35s ease-out both}.re-team tr.me td{background:#ffb84a24;color:#ffe2b0}.re-team tr.mvp td:nth-child(2):after{content:"MVP";margin-left:8px;font:700 10px var(--num);color:#17120a;background:var(--amber);padding:0 5px;border-radius:2px}.re-team .bot{margin-left:6px;font-size:9px;color:var(--dim);border:1px solid var(--line);padding:0 3px;border-radius:2px}#re-me{margin-top:12px;font-size:14px;color:var(--dim)}#re-me b{color:var(--ink);font-family:var(--num);font-size:16px}@media (max-height: 760px){#re-title{font-size:54px}.re-team td{padding:1px 6px}.re-cols{margin-top:10px}}#re-title.draw{color:#d8dee4}#re-title.win{color:var(--amber);text-shadow:0 0 40px rgba(255,170,40,.5)}#re-title.lose{color:#9aa7b3}#re-score{font:700 30px var(--num);margin-top:6px}#re-score .a{color:var(--a)}#re-score .b{color:var(--b)}#re-mvp{margin-top:14px;font-size:15px;color:var(--ink)}.re-next{margin-top:18px;font-size:12px;color:var(--dim);letter-spacing:2px}#loading{background:radial-gradient(ellipse at 50% 40%,#131a21,#05070a 70%);z-index:50}.load-inner{text-align:center;width:min(560px,90vw)}.load-bar{height:4px;background:#ffffff1a;margin:34px 0 12px}.load-bar i{display:block;height:100%;width:0;background:var(--amber);transition:width .15s}#load-text{font-size:13px;color:var(--dim);letter-spacing:1px}.load-tip{margin-top:26px;font-size:13px;color:var(--ink);opacity:.75;min-height:20px}#click-resume{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:11;padding:12px 26px;background:var(--panel);border:1px solid var(--amber);font-size:15px;letter-spacing:2px;pointer-events:none}#lost{background:#040609e0;backdrop-filter:blur(6px);z-index:60}.lost-inner{text-align:center}.lost-inner .p-sub{line-height:1.6;margin-bottom:6px}#fatal{position:fixed;inset:0;z-index:99;background:#0a0d10;color:#ffb4a8;padding:40px;font:14px/1.6 monospace;white-space:pre-wrap;overflow:auto}@media (max-height: 820px){#death{bottom:5vh;padding:10px 24px}#death .loadout.mini{margin:4px 0}#death .loadout.mini .wcard svg{height:24px}}@media (min-height: 900px){.menu-inner{margin-top:8vh}}.sb-inner,#death,.re-team{backdrop-filter:none;background:var(--ui)}.sb-title{font:700 18px var(--font);letter-spacing:0}.sb-sub{letter-spacing:0}.sb-th{letter-spacing:1px}.sb-team th{letter-spacing:0}.d-top{font:700 12px var(--font);letter-spacing:1px}#death{border-top-width:2px}#re-title{font:800 44px var(--num);letter-spacing:4px;animation:refade .4s ease-out both}@keyframes refade{0%{opacity:0}to{opacity:1}}#topbar .tname,#protect{letter-spacing:1px}kbd{border-radius:2px;background:#ffffff0f}.load-inner .logo{font-size:40px;letter-spacing:6px}
