*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#000;font-family:Segoe UI,system-ui,sans-serif;color:#fff}#age-gate{position:fixed;inset:0;z-index:500;display:flex;background:#040404f5;padding:24px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}html.age-ok #age-gate{display:none}.age-box{margin:auto;max-width:520px;padding:30px 34px;border:1px solid rgba(226,177,67,.35);border-radius:8px;background:#0f1012e6}.age-box h1{font-size:22px;letter-spacing:2px;text-transform:uppercase;color:#e2b143;margin-bottom:14px}.age-intro{font-size:14px;color:#ccc;line-height:1.6;margin-bottom:12px}.age-intro a{color:#e2b143;white-space:nowrap}.age-warn{font-size:14px;color:#ddd;line-height:1.6;margin-bottom:14px}.age-list{font-size:13px;color:#bbb;line-height:1.8;margin:0 0 22px 18px}.age-list a{color:#e2b143}.age-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch}.age-actions .play-btn{margin:0}.age-exit-btn{padding:10px;background:transparent;border:1px solid rgba(255,255,255,.2);color:#999;border-radius:4px;cursor:pointer;font-size:13px;letter-spacing:1px;text-transform:uppercase}.age-exit-btn:hover{border-color:#e74c3c;color:#e74c3c}.age-refused{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0a0a0a;color:#e74c3c;font:18px/1.6 system-ui,sans-serif;text-align:center;padding:40px}#loader-veil{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:#000000e6;color:#e2b143;font-size:15px;letter-spacing:2px;text-transform:uppercase}#busy-veil{position:fixed;inset:0;z-index:600;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:#000000d1;color:#e2b143;font-size:15px;letter-spacing:2px;text-transform:uppercase;backdrop-filter:blur(4px)}.loader-ring{width:54px;height:54px;border-radius:50%;border:3px solid rgba(226,177,67,.25);border-top-color:#e2b143;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.play-btn{padding:14px 52px;font-size:17px;text-transform:uppercase;letter-spacing:2px;border:2px solid #e2b143;background:#e2b1431f;color:#e2b143;cursor:pointer;border-radius:4px;transition:background .2s}.play-btn:hover{background:#e2b1434d}.play-btn.small{padding:9px 26px;font-size:13px}.play-btn.leave{border-color:#e74c3c;background:#e74c3c1f;color:#e74c3c}.play-btn.leave:hover{background:#e74c3c4d}#blocker{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:safe center;padding:24px 16px calc(var(--ad-h, 130px) + 16px);overflow-y:auto;background:#000000bf;z-index:100;backdrop-filter:blur(6px)}#blocker>*{flex-shrink:0}#blocker h1{font-size:42px;letter-spacing:3px;margin-bottom:8px;text-transform:uppercase}#blocker .sub{font-size:15px;color:#ccc;margin-bottom:28px}#blocker .keys{font-size:13px;color:#999;line-height:2;text-align:center}#blocker .play-btn{margin-top:22px}#blocker .play-btn.small{margin-top:10px}#pause-menu{position:fixed;inset:0;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;background:#000000bf;z-index:100;backdrop-filter:blur(6px)}#pause-menu h1{font-size:32px;letter-spacing:3px;margin-bottom:12px;text-transform:uppercase}#pause-menu .play-btn{width:220px}#resume-hint{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:100;cursor:pointer;background:#00000040}#resume-hint span{padding:10px 22px;border-radius:4px;background:#0009;font-size:15px;letter-spacing:2px;text-transform:uppercase;color:#eee}.mp-title{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#aaa}.mp-input{width:100%;padding:8px 10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:#fff;font-size:14px;outline:none}.mp-input:focus{border-color:#e2b143}select.mp-input{background-color:#14161a;color:#eee;color-scheme:dark}select.mp-input option,.map-row select option{background:#14161a;color:#eee}.team-row{display:flex;flex-wrap:wrap;gap:6px;width:100%}.team-btn{flex:1 1 140px;padding:7px 0;font-size:12px;letter-spacing:1px;text-transform:uppercase;cursor:pointer;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#bbb;border-radius:4px}.team-btn.t{border-color:#e07a3066;color:#c98a5f}.team-btn.ct{border-color:#3b82f666;color:#7ba3e0}.team-btn.sel{border-color:#e2b143;color:#e2b143;background:#e2b1431f}.team-btn.t.sel{border-color:#e07a30;color:#e07a30;background:#e07a3026}.team-btn.ct.sel{border-color:#3b82f6;color:#3b82f6;background:#3b82f626}.team-btn:disabled{opacity:.35;cursor:not-allowed;color:#666}.mp-status{font-size:12px;color:#aaa;min-height:16px;text-align:center}.map-row{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#aaa}.map-row select{min-width:300px;text-transform:none;letter-spacing:0;background:#14161a;color:#eee}.map-pick{position:relative;display:flex;align-items:center;gap:8px}.map-info{flex:none;width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:none;color:#bbb;font:italic 700 12px/20px Georgia,serif;text-transform:none;letter-spacing:0;cursor:help;padding:0}.map-info:hover,.map-info:focus-visible{border-color:#e2b143;color:#e2b143;outline:none}.map-info-tip{position:absolute;top:calc(100% + 8px);right:0;z-index:5;width:max-content;max-width:300px;padding:8px 10px;background:#14161a;border:1px solid rgba(226,177,67,.45);border-radius:4px;color:#ddd;font-size:12px;line-height:1.45;letter-spacing:0;text-transform:none;text-align:left;box-shadow:0 6px 18px #00000080;opacity:0;visibility:hidden;transform:translateY(-3px);transition:opacity .12s,transform .12s,visibility .12s;pointer-events:none}.map-info:hover+.map-info-tip,.map-info:focus+.map-info-tip{opacity:1;visibility:visible;transform:none}.map-info-tip b{color:#e2b143;font-weight:600;letter-spacing:.5px}.map-preview{position:relative;margin:12px auto 0;width:360px;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:linear-gradient(135deg,#171a1f,#0c0d10);border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 24px #00000073}.map-preview img{display:block;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s}.map-preview img.ready{opacity:1}.map-preview figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 10px 8px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;background:linear-gradient(#0000,#000000d9);text-align:left}.map-mode{font-size:10px;letter-spacing:2px;text-transform:uppercase;padding:2px 6px;border-radius:3px;color:#e2b143;border:1px solid rgba(226,177,67,.55);background:#e2b14329}.map-preview[data-mode=hostage] .map-mode{color:#3ddc84;border-color:#3ddc848c;background:#3ddc8424}.map-preview[data-mode=elim] .map-mode{color:#7fb2ff;border-color:#7fb2ff8c;background:#7fb2ff24}.map-tag{font-size:12px;line-height:1.35;color:#ddd;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.map-tag:empty{display:none}.map-preview.small{width:100%;margin:0}@media(max-height:800px){.map-preview:not(.small){width:280px}.map-tag{-webkit-line-clamp:1}}@media(max-width:480px){.map-row{flex-direction:column;align-items:stretch;gap:6px;width:92vw}.map-row select{min-width:0;width:100%;flex:1}.map-info-tip{max-width:calc(92vw - 16px)}.map-preview:not(.small){width:92vw}.mode-tabs,.mp-panel,.solo-panel{width:92vw}.age-box{padding:22px 20px}}.controls-details{margin-bottom:6px;color:#999;font-size:12px;text-align:center}.controls-details summary{cursor:pointer;letter-spacing:1px;text-transform:uppercase;color:#888;list-style:none}.controls-details summary::-webkit-details-marker{display:none}.controls-details .keys{margin-top:10px}.shared-team{width:100%;margin-top:14px}.mode-tabs{display:flex;gap:0;width:340px;margin-top:18px;border:1px solid rgba(255,255,255,.15);border-radius:4px;overflow:hidden}.mode-tab{flex:1;padding:10px 0;background:#ffffff08;border:none;color:#999;font-size:13px;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:background .15s,color .15s}.mode-tab.sel{background:#e2b14326;color:#e2b143}.diff-label{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#888;text-align:center}.diff-tabs{display:flex;border:1px solid rgba(255,255,255,.15);border-radius:4px;overflow:hidden}.diff-tab{flex:1;padding:9px 0;background:#ffffff08;border:none;color:#999;font-size:12px;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:background .15s,color .15s}.diff-tab+.diff-tab{border-left:1px solid rgba(255,255,255,.1)}.diff-tab:hover{color:#ccc}.diff-tab.sel{background:#e2b14326;color:#e2b143}.solo-opts{display:flex;gap:8px;width:100%}.solo-opt{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.solo-opt .diff-label{text-align:left}.solo-opt select{padding:7px 8px;font-size:13px}.mp-panel,.solo-panel{width:340px;margin-top:16px;display:flex;flex-direction:column;align-items:stretch;gap:8px}#blocker .mp-panel .play-btn,#blocker .solo-panel .play-btn{width:100%;margin-top:6px}.mp-empty{margin-top:4px;padding:14px 16px;border:1px solid rgba(226,177,67,.55);border-radius:4px;background:#e2b14314;text-align:center;animation:mp-empty-in .35s ease-out}.mp-empty[hidden]{display:none}.mp-empty-title{font-size:14px;letter-spacing:1px;text-transform:uppercase;color:#e2b143;margin-bottom:6px}.mp-empty p{font-size:12px;color:#ccc;line-height:1.5;margin:0 0 12px}.mp-empty-actions{display:flex;gap:8px}#blocker .mp-empty-actions .play-btn,.mp-empty-actions .modal-close{flex:1;width:auto;margin:0;padding:9px 6px}.mp-alert{border:2px solid #e74c3c;background:#e74c3c24;box-shadow:0 0 18px #e74c3c59}.mp-alert .mp-empty-title{color:#ff6b5a;font-size:16px;font-weight:700}.mp-alert .mp-alert-cause{font-size:14px;color:#fff;line-height:1.55;background:#00000059;border-radius:4px;padding:10px 12px}.mp-alert .mp-alert-cause b{color:#ffd166}#gpu-warning{max-width:560px;margin:4px auto 12px}@keyframes mp-empty-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.mp-empty{animation:none}}.link-btn{background:none;border:none;color:#8fc4ff;font-size:13px;letter-spacing:.5px;cursor:pointer;text-decoration:underline;padding:4px 0}.link-btn:hover{color:#bfe0ff}.menu-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;margin-top:20px}.footer-link{background:none;border:none;color:#777;font:inherit;font-size:11px;letter-spacing:.5px;cursor:pointer;text-decoration:underline}.footer-link:hover{color:#aaa}.discord-link{color:#8c9eff}.discord-link:hover{color:#b3c0ff}.menu-disclaimer{margin-top:8px;font-size:10px;color:#555;letter-spacing:.5px;text-align:center}.modal{position:fixed;inset:0;z-index:510;display:none;align-items:center;justify-content:center;background:#000000b3;backdrop-filter:blur(4px)}.modal.open{display:flex}.modal-box{width:420px;max-width:92vw;max-height:82vh;overflow-y:auto;padding:22px 26px;background:#0e0f12f7;border:1px solid rgba(226,177,67,.3);border-radius:8px}.modal-title{font-size:16px;letter-spacing:2px;text-transform:uppercase;color:#e2b143;margin-bottom:16px;text-align:center}.modal-actions{display:flex;gap:10px;margin-top:14px}.modal-actions .play-btn,.modal-actions .modal-close{flex:1;margin:0}.modal-close{flex:1;padding:9px 0;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#bbb;border-radius:4px;cursor:pointer;font-size:13px}.modal-close:hover{border-color:#e74c3c;color:#e74c3c}.modal-box>.modal-close{display:block;width:100%;margin-top:16px}.legal-box{width:520px}.legal-text p{font-size:13px;color:#ccc;line-height:1.6;margin-bottom:12px}.credits-text{max-height:60vh;overflow-y:auto;padding-right:6px}.credits-text p{margin-bottom:6px}.credits-text a{color:#9fd3ff}.fb-type-row{display:flex;gap:6px;margin-bottom:10px}.fb-textarea{height:110px;resize:vertical;font-family:inherit;margin-bottom:8px}#fb-contact{margin-bottom:4px}.fb-captcha-row{display:flex;align-items:center;gap:10px;margin-top:8px}.fb-captcha-question{font-size:13px;color:#ccc;letter-spacing:.5px;white-space:nowrap}.fb-captcha-input{width:70px;flex:none;text-align:center}.servers-box{width:460px}.servers-list{max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.servers-empty{font-size:13px;color:#888;text-align:center;padding:18px 0}.server-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:4px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.server-row .sr-name{font-weight:600;font-size:13px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-row .sr-map{font-size:11px;color:#999}.server-row .sr-count{font-size:12px;color:#5ef29a;min-width:44px;text-align:right}.server-row .sr-count.full{color:#e74c3c}.server-row .sr-phase{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#e2b143;border:1px solid rgba(226,177,67,.4);padding:2px 6px;border-radius:3px}.server-row .sr-join{padding:6px 14px;font-size:11px;letter-spacing:1px;text-transform:uppercase;border:1px solid #e2b143;background:#e2b1431f;color:#e2b143;border-radius:4px;cursor:pointer}.server-row .sr-join:hover{background:#e2b1434d}.server-row .sr-join:disabled{opacity:.4;cursor:not-allowed}.host-row{margin-top:6px;padding-top:14px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:8px}.host-own-info{font-size:12px;color:#bbb;line-height:1.45}.host-own-info b{color:#e2b143;font-weight:600}.host-own-actions{display:flex;gap:6px}.host-own-actions .play-btn{flex:1;padding:9px 6px}.host-row [hidden]{display:none}.server-row.mine{border-color:#e2b14373}.server-row .sr-mine{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#5ef29a}.host-opt{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:#ddd;cursor:pointer;line-height:1.35;text-align:left}.host-opt input{margin:2px 0 0;width:15px;height:15px;flex:none;accent-color:#e2b143;cursor:pointer}.host-opt small{display:block;font-size:11px;color:#999}.host-opt.host-sub{align-items:center;justify-content:space-between;padding-left:24px;cursor:default}.host-opt.host-sub select{width:auto;min-width:120px;padding:5px 8px;cursor:pointer}.host-opt[hidden]{display:none}.admin-box{width:440px;display:flex;flex-direction:column;gap:10px}.admin-box>.modal-close{margin-top:6px}.admin-team{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#bbb;margin-top:8px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-row{display:flex;align-items:center;gap:8px;padding:5px 2px;font-size:13px}.admin-row .ar-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-row .ar-you{font-size:11px;color:#999;letter-spacing:1px;text-transform:uppercase}.admin-row button{padding:4px 11px;font-size:11px;letter-spacing:1px;text-transform:uppercase;background:#ffffff0d;border:1px solid rgba(255,255,255,.18);color:#ccc;border-radius:3px;cursor:pointer}.admin-row button:hover{border-color:#e2b143;color:#e2b143}.admin-row button.ar-ban:hover{border-color:#e74c3c;color:#e74c3c}#ad-slot{position:fixed;left:0;right:0;bottom:0;z-index:105;display:flex;flex-direction:column;align-items:center;padding:6px max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:linear-gradient(to top,rgba(0,0,0,.7),transparent)}#ad-container{--ad-box-h:90px;width:100%;max-width:728px;height:var(--ad-box-h);display:flex;align-items:center;justify-content:center;gap:16px;padding:0 12px;background:#ffffff12;border:1px dashed rgba(255,255,255,.3);border-radius:4px;color:#ccc;font-size:15px;letter-spacing:1px;text-align:center}.ad-contact{padding:7px 18px;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;border:1px solid #e2b143;background:#e2b1431f;color:#e2b143;border-radius:4px;cursor:pointer;white-space:nowrap;transition:background .2s}.ad-contact:hover{background:#e2b1434d}@media(max-width:480px){#ad-container{gap:10px;font-size:13px;letter-spacing:.5px}}@media(max-height:720px){#ad-container{--ad-box-h:56px}#blocker{padding:16px 16px calc(var(--ad-h, 96px) + 12px)}}@media(max-height:560px){#ad-slot{padding:3px max(12px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}#ad-container{--ad-box-h:50px;font-size:13px}.ad-contact{padding:5px 12px;font-size:11px}#blocker{padding:12px 12px calc(var(--ad-h, 80px) + 10px)}}#touch-controls{position:fixed;inset:0;z-index:25;pointer-events:none;touch-action:none}#touch-joystick-zone{position:absolute;left:env(safe-area-inset-left);bottom:env(safe-area-inset-bottom);width:170px;height:170px;pointer-events:auto;touch-action:none;z-index:2}#touch-joystick-base{position:absolute;left:calc(30px + env(safe-area-inset-left));bottom:calc(30px + env(safe-area-inset-bottom));width:110px;height:110px;border-radius:50%;background:#ffffff14;border:2px solid rgba(255,255,255,.25)}#touch-joystick-knob{position:absolute;left:50%;top:50%;width:50px;height:50px;margin:-25px;border-radius:50%;background:#e2b14359;border:2px solid rgba(226,177,67,.7)}#touch-look-zone{position:absolute;inset:0;pointer-events:auto;touch-action:none;z-index:1}#touch-controls button{position:absolute;pointer-events:auto;touch-action:none;border-radius:50%;background:#ffffff1a;border:2px solid rgba(255,255,255,.3);color:#fff;font-size:14px;font-weight:700;letter-spacing:1px;-webkit-user-select:none;user-select:none;z-index:2}#touch-use-btn{right:calc(26px + env(safe-area-inset-right));bottom:calc(120px + env(safe-area-inset-bottom));width:68px;height:68px;background:#e2b14340;border-color:#e2b14399}#touch-jump-btn{right:calc(126px + env(safe-area-inset-right));bottom:calc(180px + env(safe-area-inset-bottom));width:56px;height:56px}#touch-crouch-btn{right:calc(120px + env(safe-area-inset-right));bottom:calc(110px + env(safe-area-inset-bottom));width:56px;height:56px}#touch-reload-btn{right:calc(30px + env(safe-area-inset-right));bottom:calc(220px + env(safe-area-inset-bottom));width:52px;height:52px}#touch-buy-btn{left:calc(16px + env(safe-area-inset-left));top:242px;width:44px;height:44px;color:#5ef29a;border-color:#5ef29a80}#touch-weapon-btn{left:calc(16px + env(safe-area-inset-left));top:296px;width:44px;height:44px;font-size:20px;color:#e2b143;border-color:#e2b14380}#touch-drop-btn{left:calc(16px + env(safe-area-inset-left));top:350px;width:44px;height:44px;font-size:20px;color:#ff9b7a;border-color:#ff9b7a80}#touch-chat-btn{left:calc(16px + env(safe-area-inset-left));top:404px;width:44px;height:44px;font-size:18px;color:#8fc4ff;border-color:#8fc4ff80}#touch-camera-btn{left:calc(16px + env(safe-area-inset-left));top:458px;width:44px;height:44px;font-size:18px}#touch-controls #touch-camera-btn.on{background:#e2b1434d;border-color:#e2b143b3}#touch-alt-btn{right:calc(92px + env(safe-area-inset-right));bottom:calc(262px + env(safe-area-inset-bottom));width:48px;height:48px;font-size:22px}#touch-menu-btn{right:calc(16px + env(safe-area-inset-right));top:calc(16px + env(safe-area-inset-top));width:44px;height:44px}@media(orientation:landscape){#touch-joystick-zone{width:150px;height:150px}#touch-joystick-base{left:calc(20px + env(safe-area-inset-left));bottom:calc(20px + env(safe-area-inset-bottom))}body.touch-mode #touch-buy-btn{top:auto;left:calc(16px + env(safe-area-inset-left));bottom:calc(204px + env(safe-area-inset-bottom));width:36px;height:36px}body.touch-mode #touch-weapon-btn{top:auto;left:calc(60px + env(safe-area-inset-left));bottom:calc(204px + env(safe-area-inset-bottom));width:36px;height:36px;font-size:16px}body.touch-mode #touch-drop-btn{top:auto;left:calc(16px + env(safe-area-inset-left));bottom:calc(160px + env(safe-area-inset-bottom));width:36px;height:36px;font-size:16px}body.touch-mode #touch-chat-btn{top:auto;left:calc(60px + env(safe-area-inset-left));bottom:calc(160px + env(safe-area-inset-bottom));width:36px;height:36px;font-size:15px}body.touch-mode #touch-camera-btn{top:auto;left:calc(104px + env(safe-area-inset-left));bottom:calc(160px + env(safe-area-inset-bottom));width:36px;height:36px;font-size:15px}body.touch-mode #touch-use-btn{right:calc(16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));width:60px;height:60px}body.touch-mode #touch-jump-btn{right:calc(88px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));width:48px;height:48px}body.touch-mode #touch-crouch-btn{right:calc(88px + env(safe-area-inset-right));bottom:calc(72px + env(safe-area-inset-bottom));width:48px;height:48px}body.touch-mode #touch-reload-btn{right:calc(16px + env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom));width:44px;height:44px}body.touch-mode #touch-alt-btn{right:calc(16px + env(safe-area-inset-right));bottom:calc(136px + env(safe-area-inset-bottom));width:44px;height:44px;font-size:20px}}#hud{position:fixed;inset:0;pointer-events:none;z-index:10}#crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#hud.ch-only>:not(#crosshair){display:none!important}.ch-line{position:absolute;background:#ffffffd9}.ch-h{width:14px;height:1px;top:0}.ch-v{width:1px;height:14px;left:0}.ch-tl{top:-10px;left:-10px}.ch-tr{top:-10px;right:-10px}.ch-bl{bottom:-10px;left:-10px}.ch-br{bottom:-10px;right:-10px}#dmg-vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 50%,rgba(180,0,0,.5) 100%);opacity:0;transition:opacity .15s;z-index:9}#water-overlay{position:fixed;inset:0;pointer-events:none;display:none;z-index:8;background:radial-gradient(ellipse at center,#145a8238,#08325080)}#flash-overlay{position:fixed;inset:0;pointer-events:none;background:#fff;opacity:0;z-index:30}#radar{position:absolute;top:calc(74px + env(safe-area-inset-top));left:calc(16px + env(safe-area-inset-left));width:160px;height:160px;border-radius:4px;opacity:.92;transition:width .18s,height .18s}body.touch-mode #radar{width:56px;height:56px;cursor:pointer;top:calc(96px + env(safe-area-inset-top))}body.touch-mode #radar.expanded{width:160px;height:160px}@media(orientation:landscape){body.touch-mode #radar{top:calc(84px + env(safe-area-inset-top));width:44px;height:44px}body.touch-mode #radar.expanded{width:140px;height:140px}}#bomb-status{position:absolute;top:96px;left:50%;transform:translate(-50%);display:none;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:#e2b143;background:#0000008c;padding:5px 14px;border-radius:3px}#bomb-status.danger{color:#ff6a4a;animation:blink 1s steps(2,start) infinite}#defuse-bar{position:absolute;bottom:34%;left:50%;transform:translate(-50%);width:260px;height:10px;display:none;background:#0009;border:1px solid rgba(255,255,255,.3);border-radius:5px;overflow:hidden}#defuse-bar div{height:100%;width:0;background:linear-gradient(90deg,#3b82f6,#93c5fd)}#scoreboard{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);display:none;z-index:45;min-width:min(420px,92vw);max-width:96vw;overflow-x:auto;background:#0a0c10eb;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:16px 22px;color:#ddd;font-size:14px}#scoreboard .sb-title{font-size:13px;letter-spacing:3px;text-transform:uppercase;color:#e2b143;text-align:center;margin-bottom:8px}#scoreboard .sb-team{font-weight:700;letter-spacing:2px;text-transform:uppercase;margin:10px 0 4px;font-size:12px}#scoreboard table{width:100%;border-collapse:collapse}#scoreboard th{text-align:left;font-size:11px;color:#888;font-weight:600;padding:2px 8px}#scoreboard td{padding:3px 8px;border-top:1px solid rgba(255,255,255,.06)}#scoreboard tr.me td{color:#fff;background:#e2b14314}#scoreboard td.sb-hp-self,#scoreboard tr.me td.sb-hp-self{color:#6ee69a;font-weight:700}#scoreboard td.sb-hp-ally{color:#7cc8ff;font-weight:700}#scoreboard td.sb-hp-enemy{color:#ff7b70;font-weight:700}#scoreboard td.sb-hp-dead{color:#666}#chat-log{position:absolute;left:16px;bottom:120px;max-width:min(420px,80vw);font-size:13px;line-height:1.5;text-shadow:0 1px 2px #000}.chat-line{transition:opacity .6s}#chat-input{position:fixed;left:16px;bottom:96px;width:min(420px,80vw);display:none;z-index:50;padding:8px 10px;background:#000c;border:1px solid rgba(226,177,67,.6);border-radius:4px;color:#fff;font-size:16px;outline:none}#chat-send-btn{position:fixed;display:none;z-index:50;left:calc(24px + min(420px,80vw));bottom:96px;height:36px;padding:0 14px;background:#e2b143eb;border:0;border-radius:4px;color:#111;font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase}body.touch-mode #chat-input{left:50%;transform:translate(-50%);bottom:auto;top:calc(156px + env(safe-area-inset-top));width:min(300px,64vw);padding:6px 10px}body.touch-mode #chat-send-btn{left:calc(50% + min(150px,32vw) + 6px);bottom:auto;top:calc(156px + env(safe-area-inset-top));height:34px;padding:0 10px;font-size:12px}body.touch-mode #chat-log{left:50%;transform:translate(-50%);bottom:auto;top:calc(198px + env(safe-area-inset-top));max-width:min(300px,64vw);font-size:12px;text-align:center}body.touch-mode.chat-open{--chat-w:min(420px, calc(100vw - 150px - env(safe-area-inset-left) - env(safe-area-inset-right)) )}body.touch-mode.chat-open #chat-input{top:calc(var(--chat-vv-top, 0px) + 6px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));transform:none;width:var(--chat-w);background:#000000eb}body.touch-mode.chat-open #chat-send-btn{top:calc(var(--chat-vv-top, 0px) + 6px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left) + var(--chat-w) + 6px)}body.touch-mode.chat-open #chat-log{top:calc(var(--chat-vv-top, 0px) + 44px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));transform:none;max-width:var(--chat-w);text-align:left;background:#000000bf;border-radius:4px;padding:0 8px}body.touch-mode.chat-open #chat-log:empty{display:none}.hit-dir{position:fixed;pointer-events:none;z-index:9;background:#f000;transition:background .1s;opacity:0}#hit-dir-front{top:0;left:0;right:0;height:4px}#hit-dir-back{bottom:0;left:0;right:0;height:4px}#hit-dir-left{top:0;bottom:0;left:0;width:4px}#hit-dir-right{top:0;bottom:0;right:0;width:4px}#stats-panel{position:absolute;bottom:24px;left:24px}.stat-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.stat-icon{width:16px;height:16px;border-radius:50%;flex-shrink:0}.stat-bar-bg{width:180px;height:10px;background:#ffffff1a;border-radius:5px;overflow:hidden}.stat-bar{height:100%;border-radius:5px;transition:width .25s}.stat-val{font-size:26px;font-weight:700;min-width:42px;text-align:right}#hp-icon{background:#3ccf6e}#hp-bar{background:linear-gradient(90deg,#28b85c,#6ee69a)}#armor-icon{background:#3498db}#armor-bar{background:linear-gradient(90deg,#2980b9,#5dade2)}#breath-icon{background:#2aa7c9}#breath-bar{background:linear-gradient(90deg,#2aa7c9,#7fe0ff)}#ammo-panel{position:absolute;bottom:24px;right:24px;text-align:right}#ammo-mag{font-size:52px;font-weight:800;line-height:1}#ammo-res{font-size:20px;color:#aaa;margin-top:2px}#weapon-name{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#e2b143;margin-bottom:4px}#reload-hint{position:absolute;bottom:24px;right:24px;transform:translateY(-64px);margin-top:6px;font-size:13px;letter-spacing:3px;text-transform:uppercase;color:#e2b143;text-align:right;display:none;animation:blink .5s steps(2,start) infinite}#pickup-hint,#interact-hint{position:absolute;bottom:38%;left:50%;transform:translate(-50%);font-size:15px;letter-spacing:2px;text-transform:uppercase;color:#e2b143;background:#0000008c;padding:8px 16px;border-radius:4px;display:none;pointer-events:none}#vehicle-hud{position:absolute;left:0;right:0;margin:0 auto;width:fit-content;bottom:calc(var(--ad-h, 0px) + 8px);display:none;align-items:center;justify-content:center;flex-wrap:wrap;gap:3px 11px;max-width:min(900px,94vw);padding:4px 12px;border-radius:5px;background:#0000006b;pointer-events:none;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:#cfd6dd;text-shadow:0 1px 2px #000;white-space:nowrap}#vehicle-hud .vh-stat{color:#e2b143;font-size:14px;font-weight:700;letter-spacing:1.5px}#vehicle-hud .vh-note{color:#9aa3ab}#vehicle-hud kbd{display:inline-block;min-width:16px;margin-right:4px;padding:0 5px;border:1px solid rgba(255,255,255,.35);border-radius:3px;background:#ffffff14;color:#fff;font-weight:700;font-size:11px;line-height:16px;text-align:center}body.touch-mode #vehicle-hud{max-width:min(460px,70vw);font-size:10px;gap:2px 8px}#vehicle-hud .vh-hp{display:inline-block;width:64px;height:7px;border:1px solid rgba(255,255,255,.4);border-radius:2px;background:#00000073;overflow:hidden}#vehicle-hud .vh-hp b{display:block;height:100%;background:#8fc96a}#vehicle-hud .vh-hp.vh-warn b{background:#e2b143}#vehicle-hud .vh-hp.vh-crit b{background:#d8432f}#vehicle-hud .vh-stat.vh-warn{color:#e2b143}#vehicle-hud .vh-stat.vh-crit{color:#ff6a50}#vehicle-hud .vh-fire{color:#ff6a50;font-weight:700;font-size:13px;letter-spacing:1.5px;animation:blink .5s steps(2,start) infinite}#veh-bar{position:absolute;left:0;top:0;width:58px;height:6px;display:none;pointer-events:none;border:1px solid rgba(255,255,255,.45);border-radius:2px;background:#00000080;box-shadow:0 1px 2px #0009;overflow:hidden;will-change:transform}#veh-bar b{display:block;height:100%;background:#8fc96a}#veh-bar.warn b{background:#e2b143}#veh-bar.crit b{background:#d8432f}#spectate-hint{position:absolute;bottom:12%;left:50%;transform:translate(-50%);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#cfd6dd;background:#00000080;padding:7px 14px;border-radius:4px;display:none;pointer-events:none;white-space:nowrap}@keyframes blink{to{visibility:hidden}}#timer-display{position:absolute;top:14px;left:50%;transform:translate(-50%);font-size:20px;font-weight:600;background:#0000008c;padding:6px 22px;border-radius:4px;letter-spacing:1px}#timer-display.bomb{background:#96120ae0;color:#fff;border:1px solid #ff6a4a;box-shadow:0 0 14px #ff4628bf;animation:fusePulse 1s ease-in-out infinite}#timer-display.bomb.late{animation-duration:.4s}@keyframes fusePulse{50%{box-shadow:0 0 4px #ff462859;background:#6e0c08e0}}#score-display{position:absolute;top:calc(14px + env(safe-area-inset-top));left:calc(16px + env(safe-area-inset-left));font-size:15px;color:#aaa}#score-display span{font-weight:700;color:#e2b143;font-size:22px}#money-display{position:absolute;top:calc(44px + env(safe-area-inset-top));left:calc(16px + env(safe-area-inset-left));font-size:18px;font-weight:700;color:#5ef29a;text-shadow:0 0 8px rgba(94,242,154,.5)}body.touch-mode #score-display{max-width:50vw;font-size:12px;line-height:1.35}body.touch-mode #score-display span{font-size:15px}body.touch-mode #money-display{max-width:50vw;font-size:15px;top:calc(58px + env(safe-area-inset-top))}body.touch-mode #stats-panel{top:calc(68px + env(safe-area-inset-top));right:calc(16px + env(safe-area-inset-right));left:auto;bottom:auto;max-width:50vw;display:flex;flex-direction:column;align-items:flex-end}body.touch-mode #stats-panel .stat-row{gap:6px;margin-bottom:5px}body.touch-mode #stats-panel .stat-icon{width:12px;height:12px}body.touch-mode #stats-panel .stat-bar-bg{width:min(120px,26vw)}body.touch-mode #stats-panel .stat-val{font-size:18px;min-width:26px}#buy-menu{position:fixed;inset:0;z-index:40;display:none;pointer-events:none;--r:min(29vh,35vw);--card:min(16.5vh,21vw);--hub:min(17vh,22vw);font-family:Arial,Helvetica,sans-serif;user-select:none;-webkit-user-select:none}#bm-ring{position:absolute;inset:0}.bm-card{position:absolute;left:calc(50% + var(--x) * var(--r));top:calc(50% + var(--y) * var(--r));width:var(--card);height:var(--card);transform:translate(-50%,-50%);box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--card) * .03);background:#14181ee6;border:1px solid rgba(255,255,255,.07);border-radius:calc(var(--card) * .09);box-shadow:0 4px 14px #00000073;pointer-events:auto;cursor:pointer;transition:transform .12s,background .12s,border-color .12s}.bm-card:hover{background:#2c4868ed;border-color:#84b2ec99;transform:translate(-50%,-50%) scale(1.09)}.bm-card.bm-off{opacity:.45;cursor:default}.bm-card.bm-off:hover{background:#14181ee6;border-color:#ffffff12;transform:translate(-50%,-50%)}.bm-card.bm-poor .bm-p{color:#d0584e}.bm-k{position:absolute;top:calc(var(--card) * .05);left:calc(var(--card) * .08);font-size:calc(var(--card) * .08);color:#8a9099}.bm-tag{position:absolute;top:calc(var(--card) * .05);right:calc(var(--card) * .07);font-size:calc(var(--card) * .065);font-weight:700;letter-spacing:.5px;color:#e2b143}.bm-owned .bm-tag{color:#6fd66f}.bm-pic{width:68%;height:34%;display:flex;align-items:center;justify-content:center}.bm-small .bm-pic{height:26%}.bm-icon{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 1px 1px rgba(0,0,0,.6))}.bm-n{color:#fff;font-weight:700;font-size:calc(var(--card) * .118);text-align:center;line-height:1.15;padding:0 6%}.bm-p{color:#6fd66f;font-weight:700;font-size:calc(var(--card) * .105)}#bm-hub{position:absolute;left:50%;top:50%;width:var(--hub);height:var(--hub);transform:translate(-50%,-50%);border-radius:50%;background:#12161ceb;border:2px solid rgba(255,255,255,.07);box-shadow:0 0 18px #0000008c;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:auto;cursor:pointer}.bm-money{color:#6fd66f;font-weight:800;font-size:calc(var(--hub) * .23);letter-spacing:.5px}.bm-where{color:#c9ced4;font-weight:700;font-size:calc(var(--hub) * .1);letter-spacing:2px;text-transform:uppercase;text-align:center;margin-top:calc(var(--hub) * .03)}.bm-close{position:absolute;left:50%;transform:translate(-50%);top:calc(50% + var(--r) + var(--card) * .5 + 3vh);font-size:11px;color:#e6e6e699;letter-spacing:.5px;white-space:nowrap}canvas.nvg-on{filter:grayscale(1) brightness(1.3) sepia(1) hue-rotate(58deg) saturate(2.6) contrast(1.18)}#nvg-overlay{position:fixed;inset:0;z-index:5;pointer-events:none;display:none;background:radial-gradient(ellipse at center,#00280000 55%,#000c00bf)}#phase-label{position:absolute;top:52px;left:50%;transform:translate(-50%);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#e2b143;padding:4px 16px;background:#00000073;border-radius:3px;display:none}#killfeed{position:absolute;top:14px;right:16px;text-align:right;max-width:360px}.kf-entry{background:#0000008c;padding:4px 12px;margin-bottom:3px;border-radius:3px;font-size:12px;opacity:1;transition:opacity .4s;white-space:nowrap}.kf-entry .killer{color:#e2b143;font-weight:600}.kf-entry .victim{color:#e74c3c;font-weight:600}#round-result{position:absolute;top:38%;left:50%;transform:translate(-50%,-50%);font-size:52px;font-weight:800;text-transform:uppercase;letter-spacing:4px;text-shadow:0 0 30px rgba(0,0,0,.8);display:none;z-index:20}#ready-prompt{position:absolute;bottom:100px;left:50%;transform:translate(-50%);font-size:15px;color:#aaa;display:none;text-align:center;line-height:2}#death-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:#50000066;z-index:15;flex-direction:column;pointer-events:auto}#death-overlay h2{font-size:48px;color:#e74c3c;letter-spacing:4px;text-transform:uppercase}#death-overlay p{font-size:16px;color:#ccc;margin-top:12px}#death-overlay .death-hint{font-size:14px;color:#f1c40f;font-weight:700}#match-over{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:#060a08d1;z-index:120;flex-direction:column;pointer-events:auto;backdrop-filter:blur(8px);text-align:center}#match-over h2{font-size:56px;color:#e2b143;letter-spacing:8px;text-transform:uppercase;text-shadow:0 0 28px rgba(226,177,67,.45);margin:0}#match-over p{font-size:16px;color:#ccc;margin-top:12px}#match-over-stats{color:#5ef29a!important;font-weight:700}#match-over .match-over-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:28px}#match-over .play-btn{padding:14px 36px;font-size:18px;letter-spacing:2px;text-transform:uppercase;border:1px solid #e2b143;background:#e2b1431f;color:#e2b143;cursor:pointer;border-radius:4px}#match-over .play-btn:hover{background:#e2b1434d}#scope-overlay{position:fixed;inset:0;z-index:8;pointer-events:none;display:none;background:radial-gradient(circle at center,transparent 30%,rgba(0,0,0,.985) 31.2%)}#scope-overlay .s-h{position:absolute;left:0;right:0;top:50%;height:2px;background:#000000e6;transform:translateY(-50%)}#scope-overlay .s-v{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#000000e6;transform:translate(-50%)}#scope-overlay .s-c{position:absolute;top:50%;left:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:#000000e6}.team-modal{background:#000000b8}.tp-wrap{display:flex;flex-direction:column;align-items:center;gap:18px;width:min(1120px,94vw)}.tp-stage{position:relative;display:grid;grid-template-columns:1fr 1fr;width:100%;height:min(74vh,660px);border-radius:14px;overflow:hidden;box-shadow:0 24px 70px #0009}.tp-stage:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.55) 20%,rgba(0,0,0,.55) 80%,transparent);pointer-events:none}.tp-side.team-btn{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;flex:none;padding:0;margin:0;border:0;border-radius:0;overflow:hidden;cursor:pointer;font:inherit;color:#fff;text-transform:none;letter-spacing:normal;text-align:center;-webkit-tap-highlight-color:transparent}#team-modal .tp-side.ct{background:radial-gradient(ellipse 80% 70% at 50% 36%,#2a5c9c,#173a66 45%,#0b1b33)}#team-modal .tp-side.t{background:radial-gradient(ellipse 80% 70% at 50% 36%,#9a7626,#634a15 45%,#2e2208)}.tp-side:before{content:"";position:absolute;inset:0;background:#fff0;transition:background .2s;pointer-events:none;z-index:1}.tp-side:not(:disabled):hover:before,.tp-side:not(:disabled):focus-visible:before{background:#ffffff0f}.tp-side:focus-visible{outline:2px solid rgba(255,255,255,.7);outline-offset:-4px}.tp-figure{position:absolute;left:50%;bottom:0;height:97%;width:auto;max-width:none;transform:translate(-50%);transform-origin:50% 100%;filter:brightness(.82) drop-shadow(0 14px 22px rgba(0,0,0,.55));transition:transform .25s ease,filter .25s ease;pointer-events:none;user-select:none;-webkit-user-select:none}.tp-side.sel .tp-figure{filter:brightness(1) drop-shadow(0 14px 22px rgba(0,0,0,.55))}.tp-side:not(:disabled):hover .tp-figure,.tp-side:not(:disabled):focus-visible .tp-figure{filter:brightness(1.06) drop-shadow(0 14px 22px rgba(0,0,0,.55));transform:translate(-50%) scale(1.04)}.tp-info{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;width:100%;padding:90px 20px 26px;background:linear-gradient(to top,rgba(0,0,0,.62) 0%,rgba(0,0,0,.35) 55%,transparent 100%)}.tp-name{font-size:clamp(22px,3.6vw,44px);font-weight:800;letter-spacing:.14em;text-transform:uppercase;line-height:1.1;text-shadow:0 2px 14px rgba(0,0,0,.6)}.tp-side.ct .tp-name{color:#5aaeff}.tp-side.t .tp-name{color:#f5bd3c}.tp-meta{display:flex;gap:28px;justify-content:center;margin-top:8px;font-size:15px;color:#ffffffd1}.tp-meta:empty,.tp-meta span:empty{display:none}.tp-roster{display:flex;flex-direction:column;gap:3px;margin-top:10px;font-size:14px;color:#ffffffb3;max-width:100%}.tp-roster span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-roster .tp-you{color:#fff;font-weight:600}.tp-key,.tp-key-inline{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;font-size:12px;font-weight:700;color:#ffffffbf;border:1px solid rgba(255,255,255,.3);border-radius:5px;background:#00000040}.tp-key{position:absolute;top:14px;z-index:2}.tp-side.ct .tp-key{left:14px}.tp-side.t .tp-key{right:14px}.tp-key-inline{margin-left:10px;vertical-align:2px}.tp-full{display:none;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);z-index:3;padding:8px 18px;font-size:14px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:#0009;border-radius:6px}.tp-side.team-btn:disabled{opacity:1;cursor:not-allowed;color:#fff}.tp-side:disabled .tp-figure{filter:grayscale(1) brightness(.45)}.tp-side:disabled .tp-info{opacity:.5}.tp-side:disabled .tp-full{display:block}.tp-vs{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);z-index:3;font-size:clamp(24px,3vw,40px);font-weight:800;letter-spacing:.06em;color:#fff9;text-shadow:0 2px 12px rgba(0,0,0,.7);pointer-events:none}.tp-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.tp-auto{padding:14px 44px;font:inherit;font-size:clamp(15px,1.7vw,20px);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:#14171c;border:1px solid rgba(255,255,255,.16);border-radius:10px;cursor:pointer;transition:border-color .2s,background .2s}.tp-auto:hover,.tp-auto:focus-visible{border-color:#ffffff73;background:#1b1f26}.tp-cancel{color:#ffffffbf;background:transparent}.tp-cancel:hover,.tp-cancel:focus-visible{color:#fff}@media(max-width:640px){.tp-info{padding:60px 10px 16px}.tp-name{font-size:clamp(16px,5.2vw,26px);letter-spacing:.06em}.tp-meta{gap:12px;font-size:13px}.tp-roster{font-size:12px}.tp-key{display:none}}@media(max-height:560px){.tp-wrap{gap:10px}.tp-stage{height:calc(100vh - 86px);height:calc(100dvh - 86px)}.tp-info{padding:40px 12px 12px}.tp-roster{display:none}.tp-auto{padding:10px 32px}}
