:root{--bg: #0a0a0a;--panel: rgba(10, 10, 10, .9);--ink: #ffffff;--gold: #f2b84b;--orange: #e2711d;--danger: #ff3b5c;font-family:Segoe UI,system-ui,-apple-system,sans-serif;--safe-t: env(safe-area-inset-top, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--hitmarker-ms: .15s}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--ink)}#game-canvas{position:fixed;inset:0;display:block}button{font:inherit;cursor:pointer;border:0;border-radius:8px;padding:12px 28px;font-weight:700;letter-spacing:.06em}.hidden{display:none!important}.overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:var(--panel);backdrop-filter:blur(6px);z-index:40;text-align:center;padding:24px;justify-content:safe center;overflow-y:auto;overscroll-behavior:contain}#menu{animation:home-glow-pulse 6s ease-in-out infinite;padding:calc(16px + var(--safe-t)) calc(24px + var(--safe-r)) 16px calc(24px + var(--safe-l))}@keyframes home-glow-pulse{0%,to{box-shadow:inset 0 0 40px 2px #e2711d38}50%{box-shadow:inset 0 0 75px 10px #e2711d7a}}#logo-slot{display:flex;flex-direction:column;align-items:center;gap:2px}.logo-img{max-width:min(420px,70vw);max-height:55vh;width:auto;height:auto;display:block}#loading .logo-img{max-width:min(160px,40vw);max-height:22vh}#menu .logo-img{max-height:34vh}#player-count{color:var(--orange);font-size:.85rem;opacity:.85;letter-spacing:.04em;min-height:1.2em}#name-input{background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:var(--ink);padding:12px 16px;border-radius:8px;font-size:1rem;text-align:center;width:min(320px,80vw);outline:none}#name-input:focus{border-color:var(--orange)}#name-input.invalid,#name-input.invalid:focus{border-color:var(--danger, #ff3b5c);box-shadow:0 0 0 2px var(--danger, #ff3b5c)}#name-error{color:var(--danger, #ff3b5c);font-size:.85rem;font-weight:700;margin-top:-4px}#char-picker{display:flex;align-items:center;justify-content:center;gap:10px}#char-stage{display:flex;flex-direction:column;align-items:center;gap:2px;width:150px}#char-canvas{width:150px;height:176px;display:block;touch-action:none;cursor:grab;background:radial-gradient(ellipse at 50% 62%,#e2711d2e,#0000 68%)}#char-picker.no-preview #char-canvas{display:none}#char-name{color:var(--orange);font-weight:800;letter-spacing:.04em;font-size:.95rem;min-height:1.3em}.char-arrow{background:#ffffff14;border:1px solid rgba(255,255,255,.25);color:var(--ink);width:44px;height:44px;min-width:44px;padding:0;border-radius:22px;font-size:1rem;line-height:1}.char-arrow:hover{background:#ffffff2e;border-color:var(--orange)}.menu-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.ghost-btn{background:transparent;color:var(--orange);border:1px solid var(--orange)}.toggle-btn{background:transparent;color:var(--ink);opacity:.6;border:1px solid rgba(255,255,255,.25)}.toggle-btn.selected{color:var(--orange);border-color:var(--orange);opacity:1;box-shadow:0 0 0 1px var(--orange) inset}#dive-in-btn{background:var(--gold);color:#1a0d12;font-size:1.15rem;margin-top:4px}#dive-in-btn:hover{filter:brightness(1.1)}#presale-pause-btn{border-color:var(--gold);color:var(--gold)}#presale-pause-btn:hover{background:#f2b84b24}#top-links{position:absolute;top:calc(14px + var(--safe-t));right:calc(18px + var(--safe-r));display:flex;flex-direction:column;align-items:flex-end;gap:2px;z-index:3}.top-link{display:inline-block;background:transparent;border:0;border-radius:6px;padding:6px 8px;font:inherit;font-weight:800;font-size:.95rem;letter-spacing:.04em;color:var(--gold);text-decoration:none;cursor:pointer;text-shadow:0 1px 3px rgba(0,0,0,.7)}.top-link:hover,.top-link:focus-visible,#docs-btn[aria-expanded=true]{text-decoration:underline;text-underline-offset:3px}#docs-menu{position:relative}#docs-list{position:absolute;top:100%;right:0;margin-top:4px;min-width:170px;max-width:min(300px,calc(100vw - 32px));display:flex;flex-direction:column;padding:6px;text-align:left;background:#120a06f5;border:1px solid rgba(255,255,255,.18);border-radius:10px;box-shadow:0 8px 24px #00000080}#docs-list a{display:block;padding:8px 12px;border-radius:6px;color:var(--ink);text-decoration:none;font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#docs-list a:hover,#docs-list a:focus-visible{background:#ffffff1a;color:var(--gold)}#dive-in-btn.city-loading{font-variant-numeric:tabular-nums}#room-note{font-size:.8rem;opacity:.7;max-width:420px}.site-footer{position:absolute;bottom:calc(10px + var(--safe-b));left:0;right:0;text-align:center;font-size:.68rem;opacity:.4;letter-spacing:.03em;padding:0 12px}#menu .site-footer{position:static;margin-top:14px;padding-bottom:var(--safe-b)}#admin-access-btn{position:absolute;top:0;left:0;width:60px;height:60px;background:transparent;border:0;margin:0;padding:0;cursor:default;outline:none;-webkit-tap-highlight-color:transparent}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border-radius:22px;background:#ffffff14;border:1px solid rgba(255,255,255,.25);color:var(--ink);text-decoration:none;font-weight:800}.icon-btn:hover{background:#ffffff2e}.icon-btn img{width:24px;height:24px;display:block;object-fit:contain}#social-row:empty{display:none}@media (max-height: 900px){#menu{gap:10px}#menu .logo-img{max-height:30vh}#menu #char-canvas{width:124px;height:145px}#menu #char-stage{width:124px}}@media (max-height: 700px){#menu .logo-img{max-height:24vh}#menu #char-canvas{width:100px;height:118px}#menu #char-stage{width:100px}}@media (max-height: 500px){#menu{gap:8px;padding:calc(8px + var(--safe-t) + 54px) calc(16px + var(--safe-r)) 8px calc(16px + var(--safe-l))}#menu .logo-img{max-height:20vh}#menu #name-input{padding:8px 14px;font-size:.95rem;width:min(320px,100%)}#menu #char-canvas{display:none}#menu .char-arrow{width:36px;height:36px;min-width:36px}#menu #char-name{font-size:.85rem}#menu .toggle-btn{padding:8px 18px;font-size:.9rem}#menu #dive-in-btn{padding:9px 24px;font-size:1rem;margin-top:0}#menu .site-footer{font-size:.6rem;margin-top:8px}}@media (max-height: 500px) and (min-width: 640px){#menu{display:grid;grid-template-columns:max-content minmax(0,1fr);grid-template-rows:repeat(7,min-content);align-content:center;align-items:center;justify-items:center;column-gap:20px;row-gap:6px}#menu #char-picker{grid-column:1;grid-row:1 / -1;--preview-h: min(240px, calc(100vh - 100px) )}#menu #char-canvas{display:block;height:var(--preview-h);width:calc(var(--preview-h) * .852)}#menu #char-stage{width:auto}#menu .char-arrow{width:44px;height:44px;min-width:44px}}@media (max-height: 500px) and (min-width: 640px) and (max-width: 759.98px){#menu{column-gap:12px}#menu #char-picker{gap:6px;--preview-h: min(180px, calc(100vh - 140px) )}#menu .char-arrow{width:36px;height:36px;min-width:36px}#menu #char-stage{width:calc(var(--preview-h) * .852)}#menu #char-name{text-align:center}}@media (max-width: 600px) and (orientation: portrait),(max-height: 500px){#menu #social-row{position:absolute;top:calc(10px + var(--safe-t));right:calc(10px + var(--safe-r));gap:8px;z-index:2;max-width:calc(100vw - 90px - var(--safe-r));justify-content:flex-end}#menu #top-links{top:calc(10px + var(--safe-t) + 44px + 6px);right:calc(10px + var(--safe-r))}}@media (max-width: 600px) and (orientation: portrait){#menu{padding-top:calc(16px + var(--safe-t) + 46px)}#menu .logo-img{max-height:20vh}#menu #char-name{white-space:nowrap}}#load-bar{width:min(420px,80vw);height:14px;border-radius:7px;background:#ffffff1f;overflow:hidden;border:1px solid rgba(255,255,255,.2)}#load-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--gold),var(--orange))}#load-pct{font-weight:800;color:var(--gold);letter-spacing:.05em}#load-caption{color:var(--orange);letter-spacing:.15em;text-transform:uppercase;font-size:.8rem;font-weight:700}#load-tip{font-size:.85rem;opacity:.75;max-width:480px;min-height:1.4em}#hud{position:fixed;inset:0;pointer-events:none;z-index:20}#health-wrap{position:absolute;left:16px;bottom:16px;width:200px}#health-label{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);opacity:.85;text-shadow:0 1px 4px #000;margin-bottom:3px}#health-bar{height:10px;border-radius:5px;background:#ffffff26;overflow:hidden}#health-fill{height:100%;width:100%;background:linear-gradient(90deg,var(--danger),var(--gold));transition:width .2s,background-color .3s}#hud-topright{position:absolute;display:flex;flex-direction:column;align-items:flex-end;gap:8px;top:calc(14px + var(--safe-t));right:calc(16px + var(--safe-r));pointer-events:none}#stars{color:var(--gold);font-size:1.15rem;line-height:1.2;letter-spacing:2px;text-shadow:0 0 8px rgba(255,59,92,.8),0 1px 3px rgba(0,0,0,.9);white-space:nowrap}#stars:empty{display:none}#stars.stars-up{animation:stars-up .7s ease-out;transform-origin:right center}@keyframes stars-up{0%{transform:scale(1);filter:brightness(1)}25%{transform:scale(1.35);filter:brightness(1.8);text-shadow:0 0 14px rgba(255,59,92,1),0 1px 3px rgba(0,0,0,.9)}to{transform:scale(1);filter:brightness(1)}}#minimap{position:relative;width:120px;height:120px;flex:none;border-radius:50%;overflow:hidden;pointer-events:auto;cursor:pointer;border:2px solid rgba(242,184,75,.55);background:#0a0a0a;box-shadow:0 2px 12px #00000080}#fullmap-overlay{z-index:45}#fullmap-panel{position:relative;background:var(--panel);border:1px solid var(--gold);border-radius:14px;padding:18px;box-shadow:0 0 40px #f2b84b26}#fullmap-canvas{display:block;border-radius:8px;cursor:pointer;touch-action:none;width:min(78vw,calc(100vh - 175px),640px);height:min(78vw,calc(100vh - 175px),640px);max-width:640px;max-height:640px}@media (max-height: 500px) and (orientation: landscape){#fullmap-panel{display:grid;grid-template-columns:auto 170px;column-gap:14px;align-items:center;padding:14px}#fullmap-stage{grid-row:1 / span 3}#fullmap-canvas{width:calc(100vh - 76px);height:calc(100vh - 76px)}#fullmap-key{grid-column:2;justify-content:flex-start;margin-top:0;align-self:start}#fullmap-hint{grid-column:2;margin-top:0;text-align:left;align-self:end}#fullmap-actions{grid-column:2;justify-content:flex-start;align-self:start;flex-wrap:wrap}}#fullmap-stage{position:relative}#fullmap-zoom{position:absolute;right:8px;bottom:8px;display:flex;flex-direction:column;gap:6px}#fullmap-zoom button{width:34px;height:34px;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#0a0a0ed1;color:var(--gold);border:1px solid var(--gold);font-weight:800;font-size:1.05rem;line-height:1}#fullmap-zoom #fullmap-zoom-reset{font-size:.68rem}#fullmap-key{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px;margin-top:10px;font-size:.74rem;max-width:min(78vw,640px)}#fullmap-key .fk-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}#fullmap-key .fk-icon{width:18px;height:18px;flex:none}#fullmap-card .fm-btns{display:flex;gap:6px}#fullmap-card .fm-btns button{flex:1}#fullmap-card .fm-wp{padding:9px 10px;min-height:40px;background:transparent;color:var(--gold);border:1px solid var(--gold);font-weight:800}#fullmap-card .fm-wide{width:100%}#fullmap-card{position:absolute;z-index:2;min-width:150px;max-width:220px;padding:10px 12px;background:#0a0a0ef2;border:1px solid var(--gold);border-radius:10px;box-shadow:0 6px 20px #00000080}#fullmap-card .fm-entry+.fm-entry{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}#fullmap-card .fm-name{font-weight:800;color:var(--gold);font-size:.95rem}#fullmap-card .fm-type{font-size:.78rem;opacity:.75;margin:2px 0 8px}#fullmap-card .fm-go{width:100%;padding:9px 12px;min-height:40px;background:var(--gold);color:#1a0d12;font-weight:800}#fullmap-card{max-height:calc(100vh - 40px);overflow-y:auto}#nav-toast{position:fixed;top:18%;left:50%;transform:translate(-50%);z-index:46;padding:8px 16px;border-radius:999px;background:#0a0a0ed9;border:1px solid #ff2d3d;color:#fff;font-weight:700;font-size:.9rem;pointer-events:none}#ad-view-overlay{position:fixed;inset:0;z-index:60;background:#000;display:flex;flex-direction:column}#ad-view-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}#ad-view-img,#ad-view-video{display:block;width:100%;height:100%;object-fit:contain;background:#000}#ad-view-actions{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 16px calc(16px + var(--safe-b))}#ad-view-return{background:var(--gold);color:#1a0d12;font-size:1.15rem}#ad-view-return:hover{filter:brightness(1.1)}#ad-view-link{background:#ffffff1a;color:var(--ink);border:1px solid rgba(255,255,255,.35);padding:10px 24px;font-size:.95rem}#ad-view-close{position:absolute;top:calc(12px + var(--safe-t));right:calc(12px + var(--safe-r));z-index:1;width:44px;height:44px;padding:0;border-radius:50%;display:none;align-items:center;justify-content:center;background:var(--danger);color:#fff;font-size:1.25rem;line-height:1}#ad-view-overlay.is-video #ad-view-close{display:flex}#ad-view-overlay.is-video #ad-view-return,#ad-view-overlay.is-video.no-link #ad-view-actions{display:none}#fullmap-hint{text-align:center;font-size:.8rem;opacity:.7;margin-top:10px}#fullmap-actions{display:flex;gap:10px;justify-content:center;margin-top:12px}#fullmap-close-btn{position:absolute;top:10px;right:10px;width:30px;height:30px;padding:0;border-radius:50%;background:transparent;color:var(--danger);border:1px solid var(--danger);font-size:1rem;font-weight:800;line-height:1;display:flex;align-items:center;justify-content:center}@media (max-height: 500px){#minimap{width:96px;height:96px}}#minimap-canvas{position:absolute;inset:0;width:100%;height:100%}#minimap-arrow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);filter:drop-shadow(0 0 3px rgba(0,0,0,.85))}#pause-btn{position:relative;flex:none;pointer-events:auto;cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#00000073;border:1px solid rgba(255,255,255,.35);color:var(--ink);font-size:1rem}body.touch #pause-btn{position:absolute;top:0;right:calc(100% + 12px);width:44px;height:44px;font-size:1.2rem}#pause-btn:hover{background:#000000a6}#hud-topleft{position:absolute;display:flex;flex-direction:column;top:calc(14px + var(--safe-t));left:calc(16px + var(--safe-l));align-items:flex-start;gap:6px;max-width:220px;pointer-events:none}#hud-logo{width:40px;height:auto;filter:drop-shadow(0 1px 4px rgba(0,0,0,.6))}#hud-stats{font-weight:800;color:var(--gold);font-size:.95rem;text-shadow:0 1px 4px #000}#now-playing{display:flex;align-items:center;gap:6px}#now-playing-text{font-size:.72rem;color:var(--ink);opacity:.75;text-shadow:0 1px 4px #000;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#now-playing-text.clickable{pointer-events:auto;cursor:pointer;text-decoration:underline dotted}#now-playing-text.clickable:hover{opacity:1;color:var(--gold)}#bg-mute-btn,#bg-next-btn{pointer-events:auto;cursor:pointer;background:#00000059;border:1px solid rgba(255,255,255,.25);color:var(--ink);border-radius:14px;padding:0;margin:0;width:28px;height:28px;min-width:28px;font-size:.8rem;line-height:1;display:flex;align-items:center;justify-content:center;opacity:.85}#bg-mute-btn:hover,#bg-next-btn:hover{opacity:1;border-color:var(--orange)}#bg-mute-btn.muted{color:var(--danger);border-color:var(--danger)}body.touch #bg-mute-btn,body.touch #bg-next-btn{width:34px;height:34px;min-width:34px;border-radius:17px}#radio-mute.muted{color:var(--danger);border-color:var(--danger)}#weapon-hud{position:fixed;right:calc(16px + var(--safe-r));bottom:calc(40px + var(--safe-b));z-index:26;display:flex;align-items:center;gap:10px;font-weight:700;text-align:right;text-shadow:0 1px 4px #000;pointer-events:none}#weapon-name{color:var(--orange)}#weapon-ammo{color:var(--ink);opacity:.85;margin-left:6px}#radio-widget{position:fixed;right:16px;bottom:74px;width:190px;pointer-events:auto;z-index:24;background:#00000073;border:1px solid rgba(255,255,255,.25);border-radius:10px;padding:6px 8px}body.touch #radio-widget{bottom:12px;right:16px}#radio-track{font-size:.68rem;color:var(--ink);opacity:.85;text-shadow:0 1px 4px #000;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px}#radio-controls{display:flex;justify-content:center;gap:4px}body:not(.radio-on) #radio-controls button:not(#radio-power){display:none}body.radio-on #radio-power{color:#57e6c9;border-color:#57e6c9b3}#radio-controls button{min-width:30px;height:30px;border-radius:15px;padding:0;background:#0006;border:1px solid rgba(255,255,255,.3);color:var(--ink);font-size:.85rem;font-weight:700;display:flex;align-items:center;justify-content:center}#radio-controls button:active{background:#e2711d80;border-color:var(--orange)}body.touch #radio-controls button{min-width:38px;height:38px;border-radius:19px;font-size:1rem}#crosshair{position:absolute;left:50%;top:50%;width:26px;height:26px;border-radius:50%;border:2px solid #3ddc5a;box-shadow:0 0 6px #3ddc5a80;transform:translate(-50%,-50%);opacity:.9;pointer-events:none;transition:width .12s ease,height .12s ease}#crosshair.aiming{width:14px;height:14px}#crosshair-dot{position:absolute;left:50%;top:50%;width:5px;height:5px;border-radius:50%;background:#3ddc5a;transform:translate(-50%,-50%)}#crosshair-dot.fired{animation:crosshair-kick .12s ease-out}@keyframes crosshair-kick{0%{transform:translate(-50%,-50%) scale(2.4)}to{transform:translate(-50%,-50%) scale(1)}}#crosshair.hit,#crosshair-dot.hit{opacity:0}#hitmarker{position:absolute;left:50%;top:50%;width:22px;height:22px;transform:translate(-50%,-50%);opacity:0;pointer-events:none}#hitmarker:before,#hitmarker:after{content:"";position:absolute;left:0;top:50%;width:100%;height:2px;background:var(--danger)}#hitmarker:before{transform:rotate(45deg)}#hitmarker:after{transform:rotate(-45deg)}#hitmarker.show{animation:hitmarker-pop var(--hitmarker-ms) ease-out}@keyframes hitmarker-pop{0%{opacity:1;transform:translate(-50%,-50%) scale(.6)}40%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}#knockdown{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .25s ease;background:radial-gradient(ellipse at center,#0000 35%,#960a1e8c);display:flex;align-items:flex-end;justify-content:center;padding-bottom:22vh}#knockdown.show{opacity:1}#hurt-arc{position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse closest-side at 50% 50%,transparent 55%,rgba(255,40,60,.85) 100%)}#knockdown span{font-size:1.1rem;font-weight:800;letter-spacing:.18em;color:var(--danger);text-shadow:0 2px 10px rgba(0,0,0,.8)}#invite-chip{pointer-events:auto;cursor:pointer;background:#00000073;border:1px solid var(--orange);color:var(--orange);font-size:.72rem;font-weight:700;padding:5px 10px;border-radius:8px}#invite-chip:hover{background:#000000a6}#store-chip{pointer-events:auto;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px;align-self:flex-start;background:#00000073;border:1px solid var(--gold);color:var(--gold);font-size:.72rem;font-weight:700;padding:5px 10px;border-radius:8px}#store-chip:hover{background:#000000a6}#store-chip .tier{letter-spacing:.04em}#store-chip .points{color:var(--ink);opacity:.9;font-weight:600}#killfeed{position:absolute;right:16px;top:76px;display:flex;flex-direction:column;gap:4px;align-items:flex-end;font-size:.85rem}#killfeed div{background:#00000073;padding:3px 10px;border-radius:6px}#killfeed div.portal-notice{color:#57e6c9}#hint{position:absolute;left:50%;bottom:64px;transform:translate(-50%);background:#00000080;padding:6px 14px;border-radius:8px;font-size:.9rem}#context-hint{position:absolute;left:50%;top:90px;transform:translate(-50%);background:#0009;border:1px solid var(--orange);color:var(--ink);padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:600;text-align:center;max-width:80vw;text-shadow:0 1px 4px #000;transition:opacity .4s ease;opacity:1}#context-hint.fade-out{opacity:0}#diag-toast{position:fixed;left:50%;top:calc(8px + var(--safe-t));transform:translate(-50%);z-index:60;pointer-events:none;background:#14060aeb;border:1px solid var(--danger);color:var(--ink);padding:8px 16px;border-radius:10px;font-size:.78rem;font-weight:600;text-align:center;max-width:min(520px,90vw);white-space:pre-line;text-shadow:0 1px 4px #000;box-shadow:0 4px 18px #00000080}#stats-panel{flex:0 0 auto;align-self:flex-start;width:max-content;max-width:none;margin-top:2px;pointer-events:none;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.45;white-space:pre;font-variant-numeric:tabular-nums;color:#7cfc9a;text-shadow:0 1px 3px #000,0 0 2px #000;background:#0000008c;border:1px solid rgba(124,252,154,.3);border-radius:6px;padding:6px 9px}@media (max-width: 600px),(max-height: 500px){#stats-panel{font-size:10px;line-height:1.35;padding:4px 7px}}#dpad{position:absolute;left:16px;bottom:46px;width:clamp(120px,30vw,152px);aspect-ratio:1;border-radius:50%;pointer-events:auto;touch-action:none;background:#0000008c;border:2px solid rgba(242,184,75,.45);display:flex;align-items:center;justify-content:center}#dpad-nub{width:46%;height:46%;border-radius:50%;background:#e2711d59;border:1px solid var(--orange);box-shadow:0 0 10px #e2711d80;pointer-events:none;transition:background .08s ease,box-shadow .08s ease}#dpad-nub.active{background:var(--orange);box-shadow:0 0 16px #e2711de6}#dpad.sprinting{border-color:#ffe066;box-shadow:0 0 16px 3px #ffe066a6;transition:box-shadow .15s ease,border-color .15s ease}#dpad-zone{position:absolute;left:0;bottom:0;width:45%;height:55%;pointer-events:auto}body:not(.touch) #dpad{display:none}#chat{position:fixed;left:0;right:0;bottom:var(--chat-bottom, 0px);height:25vh;z-index:26;display:flex;flex-direction:column;background:#08080aeb;backdrop-filter:blur(6px);border-top:1px solid rgba(255,255,255,.14);padding:8px calc(12px + var(--safe-r)) calc(8px + var(--safe-b)) calc(12px + var(--safe-l));pointer-events:auto}#chat:not(.full){height:auto;display:grid;grid-template-columns:1fr auto;grid-template-areas:"log log" "row head";align-items:center;padding-top:6px;padding-bottom:calc(4px + var(--safe-b))}body:not(.touch) #chat:not(.full){left:calc(16px + var(--safe-l));right:auto;bottom:calc(52px + var(--safe-b));width:min(520px,40vw);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding-left:12px;padding-right:12px}body.touch.chat-open #dpad,body.touch.chat-open #weapon-hud{visibility:hidden}#chat:not(.full) #chat-row{grid-area:row;margin-top:2px}#chat:not(.full) #chat-head{grid-area:head;margin-left:6px;margin-top:2px}#chat:not(.full) #chat-log{grid-area:log;flex:0 0 auto;overflow:hidden;padding:0 2px;gap:2px}#chat:not(.full) #chat-log>div{padding:1px 0}#chat:not(.full) #chat-log>div:nth-last-child(n+3){display:none}#chat-head{display:flex;justify-content:flex-end;gap:6px;flex:0 0 auto}#chat-head button{width:30px;height:30px;padding:0;border-radius:8px;font-size:.85rem;background:#ffffff14;border:1px solid rgba(255,255,255,.18);color:var(--ink);display:flex;align-items:center;justify-content:center}#chat-head button:hover{background:#ffffff29}#chat-log{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:3px;font-size:.85rem;padding:4px 2px}#chat-log div{padding:2px 0;width:100%;word-wrap:break-word;line-height:1.35}#chat-log .sys{color:var(--orange)}#chat-log b{color:var(--gold)}#chat-log .mention b{color:var(--danger)}#chat-row{display:flex;gap:8px;align-items:center;flex:0 0 auto;margin-top:6px}#chat-input{flex:1 1 auto;min-width:0;background:#0009;border:1px solid var(--orange);color:var(--ink);padding:9px 12px;border-radius:8px;outline:none;font:inherit;font-size:.9rem}#chat-send-btn{flex:0 0 auto;width:40px;height:40px;padding:0;border-radius:10px;background:var(--orange);color:#1a0d12;display:flex;align-items:center;justify-content:center}#chat-send-btn:hover{filter:brightness(1.1)}#chat.full{height:calc(100% - var(--chat-bottom, 0px))}@media (min-width: 900px){#chat.full{left:50%;right:auto;width:720px;transform:translate(-50%);border-left:1px solid rgba(255,255,255,.14);border-right:1px solid rgba(255,255,255,.14)}}body.in-vehicle #weapon-hud{bottom:calc(144px + var(--safe-b))}body.touch.in-vehicle #weapon-hud{bottom:calc(82px + var(--safe-b))}@media (orientation: landscape){body.touch.in-vehicle #btn-use{right:100px;bottom:182px}body.touch.in-vehicle #btn-weapon{right:100px;bottom:96px}body.touch.in-vehicle #radio-widget{left:50%;right:auto;transform:translate(-50%);bottom:calc(16px + var(--safe-b))}body.touch.in-vehicle #weapon-hud{bottom:calc(12px + var(--safe-b))}}@media (orientation: portrait){body.touch.in-vehicle #btn-fire{bottom:128px}body.touch.in-vehicle #btn-jump{bottom:204px}body.touch.in-vehicle #btn-use{right:100px;bottom:214px}body.touch.in-vehicle #btn-weapon{right:100px;bottom:128px}body.touch.in-vehicle #weapon-hud{right:180px;bottom:168px}body.touch.in-vehicle #radio-widget{bottom:calc(16px + var(--safe-b))}body.touch.in-vehicle #chat-btn{position:fixed;right:24px;bottom:280px;z-index:26}}#chat-btn{pointer-events:auto;flex:0 0 auto;width:38px;height:38px;padding:0;border-radius:10px;background:#00000073;border:1px solid rgba(255,255,255,.28);color:var(--ink);display:flex;align-items:center;justify-content:center}#chat-btn:hover{background:#000000a6;border-color:var(--orange)}#chat-mention{position:absolute;top:100%;right:0;margin-top:8px;z-index:26;pointer-events:auto;display:flex;align-items:center;gap:6px;white-space:nowrap;background:#ff3b5ce6;color:#fff;padding:5px 10px;border-radius:14px;font-size:.7rem;font-weight:800;letter-spacing:.03em;box-shadow:0 2px 10px #00000080}.share-loc-btn{margin-left:8px;padding:2px 9px;min-height:24px;border:1px solid rgba(255,255,255,.55);border-radius:12px;background:#ffffff29;color:#fff;font:inherit;font-size:.68rem;font-weight:800;letter-spacing:.02em;cursor:pointer;vertical-align:middle}.share-loc-btn:hover:not(:disabled){background:#ffffff4d}.share-loc-btn:disabled{opacity:.55;cursor:default}.wp-set-btn,.wp-send-btn{margin-left:8px;padding:2px 10px;min-height:24px;border:1px solid var(--gold);border-radius:12px;background:#f2b84b2e;color:var(--gold);font:inherit;font-size:.68rem;font-weight:800;letter-spacing:.02em;cursor:pointer;vertical-align:middle}.wp-set-btn:disabled,.wp-send-btn:disabled{opacity:.6;cursor:default}#chat-log .wp-line,.rc-line.wp-line{color:var(--gold)}.share-path{cursor:pointer;min-height:24px;padding-left:6px;border-left:3px solid transparent}.share-path.share-active{border-left-color:#ff2d3d}@media (max-height: 500px){#chat-mention{position:fixed;top:calc(14px + var(--safe-t));left:50%;right:auto;transform:translate(-50%);margin-top:0}}#leaderboard{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--panel);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:18px 22px;z-index:30;min-width:min(560px,92vw)}#leaderboard h2{color:var(--gold);letter-spacing:.1em;margin-bottom:10px;font-size:1rem;text-transform:uppercase}#leaderboard.from-menu{z-index:41;cursor:pointer;background:#0d0d12;box-shadow:0 0 0 100vmax #0000008c}#leaderboard .lb-close{display:none;margin-top:10px;font-size:.8rem;opacity:.6;text-align:center}#leaderboard.from-menu .lb-close{display:block}#leaderboard table{width:100%;border-collapse:collapse;font-size:.9rem}#leaderboard th{text-align:left;opacity:.6;font-weight:600;padding:4px 8px}#leaderboard td{padding:4px 8px;border-top:1px solid rgba(255,255,255,.08)}#pause h2,#help h2{color:var(--gold);letter-spacing:.12em}#help .keys{text-align:left;line-height:1.9;font-size:.95rem;max-width:520px}#help kbd,#welcome-panel kbd{background:#ffffff1f;border-radius:5px;padding:1px 7px;font-family:inherit;font-weight:700;color:var(--orange)}#welcome-panel,#objectives-panel{position:relative;background:var(--panel);border:1px solid var(--gold);border-radius:14px;padding:30px 34px;max-width:min(480px,90vw);box-shadow:0 0 40px #f2b84b26}#welcome-panel h2,#objectives-panel h2{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}#welcome-panel .keys,#objectives-panel .keys{text-align:center;line-height:2;font-size:.95rem}#objectives-ok-btn{margin-top:18px;background:var(--gold);color:#1a0d12;font-size:1rem}#objectives-ok-btn:hover{filter:brightness(1.1)}#welcome-close-btn{position:absolute;top:10px;right:10px;width:30px;height:30px;padding:0;border-radius:50%;background:transparent;color:var(--danger);border:1px solid var(--danger);font-size:1rem;font-weight:800;line-height:1;display:flex;align-items:center;justify-content:center}#welcome-close-btn:hover{background:#ff3b5c26}#portal-overlay{position:fixed;inset:0;z-index:100;pointer-events:none;opacity:0;background:#000;transition:opacity .45s ease-in}#portal-overlay.active{pointer-events:auto;opacity:1}#portal-clip{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}#portal-clip-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}#portal-clip-fallback.shaped{object-fit:cover}#intro{position:fixed;inset:0;z-index:45;background:#000;overflow:hidden;opacity:1;transition:opacity .6s linear}#intro.fade-from-home{opacity:0}#intro.hidden{display:none}#intro.fade-to-game #intro-video,#intro.fade-to-game #intro-tip,#intro.fade-to-game #intro-headline,#intro.fade-to-game #intro-skip,#intro.fade-to-game #intro-sound{opacity:0;transition:opacity .6s linear;pointer-events:none}#intro-video{position:absolute;top:var(--safe-t);left:var(--safe-l);width:calc(100% - var(--safe-l) - var(--safe-r));height:calc(100% - var(--safe-t) - var(--safe-b));object-fit:contain;object-position:center;background:#000;display:block}#intro-rotate{position:absolute;inset:0;background:#000;display:flex;align-items:center;justify-content:center;padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l);opacity:0;transition:opacity .4s linear}#intro-rotate.hidden{display:none}#intro-rotate-icon{width:20vmin;height:auto;opacity:.9}#intro{--intro-pad-x: calc(18px + env(safe-area-inset-right, 0px)) ;--intro-pad-l: calc(20px + env(safe-area-inset-left, 0px)) ;--intro-pad-b: calc(20px + env(safe-area-inset-bottom, 0px)) ;--intro-pad-t: calc(14px + env(safe-area-inset-top, 0px)) ;--intro-gold: #d4af37;--intro-green: #3ddc84}#intro-side{position:absolute;left:var(--intro-pad-l);bottom:var(--intro-pad-b);display:flex;flex-direction:column;align-items:flex-start;gap:5px;max-width:min(62vw,520px);text-align:left;pointer-events:none}#intro-status{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.04em;color:var(--intro-gold);text-shadow:0 1px 3px #000;pointer-events:none;white-space:nowrap}#intro-skip{pointer-events:auto;margin-top:4px;font:inherit;font-size:13px;color:#fff;background:#00000073;border:1px solid rgba(255,255,255,.35);border-radius:6px;padding:6px 12px;cursor:pointer}#intro-skip.hidden{display:none}#intro-status.ready{color:var(--intro-green)}#intro-spinner{position:relative;width:18px;height:18px;animation:intro-spin 1.1s linear infinite}#intro-spinner i{position:absolute;top:50%;left:50%;width:3.5px;height:3.5px;margin:-1.75px 0 0 -1.75px;border-radius:50%;background:var(--intro-gold)}#intro-spinner i:nth-child(1){transform:rotate(0) translate(7px);opacity:1}#intro-spinner i:nth-child(2){transform:rotate(60deg) translate(7px);opacity:.85}#intro-spinner i:nth-child(3){transform:rotate(120deg) translate(7px);opacity:.7}#intro-spinner i:nth-child(4){transform:rotate(180deg) translate(7px);opacity:.55}#intro-spinner i:nth-child(5){transform:rotate(240deg) translate(7px);opacity:.4}#intro-spinner i:nth-child(6){transform:rotate(300deg) translate(7px);opacity:.25}#intro-spinner.done{animation:none}#intro-spinner.done i{background:var(--intro-green);opacity:1}@keyframes intro-spin{to{transform:rotate(360deg)}}#intro-headline{font-size:14px;font-weight:700;letter-spacing:.04em;color:var(--intro-gold);text-shadow:0 1px 3px #000}#intro-tip{font-size:13px;color:#fff;text-shadow:0 1px 3px #000;opacity:.8}#intro-sound{position:absolute;top:var(--intro-pad-t);left:var(--intro-pad-l);font:inherit;font-size:13px;color:#fff;background:#00000073;border:1px solid rgba(255,255,255,.35);border-radius:6px;padding:6px 12px;cursor:pointer}#intro-sound.hidden{display:none}#wasted{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#3c000a8c;backdrop-filter:grayscale(.8)}.wasted-stack{display:flex;flex-direction:column;align-items:center;gap:16px;padding:0 24px}#wasted span{font-size:clamp(2.5rem,10vw,5rem);font-weight:900;letter-spacing:.2em;color:var(--danger);text-shadow:0 4px 24px #000}#wasted-taunt{font-size:clamp(.9rem,2.2vw,1.3rem);color:var(--ink);opacity:.9;text-shadow:0 2px 8px #000;max-width:640px;text-align:center}#death-fade{position:fixed;inset:0;z-index:65;background:#000;opacity:0;pointer-events:none}#reconnect{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:24px;background:#0a0a0ab8;backdrop-filter:blur(4px)}.reconnect-card{background:var(--panel);border:1px solid var(--gold);border-radius:14px;padding:24px 28px;min-width:min(360px,92vw);max-width:460px;display:flex;flex-direction:column;align-items:center;gap:14px;box-shadow:0 0 40px #f2b84b26;text-align:center}#reconnect-title{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;font-weight:800;font-size:1.1rem}#reconnect-msg{color:var(--ink);opacity:.85;font-size:.95rem}#reconnect-retry{background:var(--gold);color:#000}.reconnect-dots{display:flex;gap:6px}.reconnect-dots i{width:7px;height:7px;border-radius:50%;background:var(--orange);animation:reconnect-pulse 1.2s infinite ease-in-out}.reconnect-dots i:nth-child(2){animation-delay:.15s}.reconnect-dots i:nth-child(3){animation-delay:.3s}@keyframes reconnect-pulse{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.reconnect-dots i{animation:none;opacity:.8}#stars.stars-up{animation-name:stars-up-still}}@keyframes stars-up-still{0%,to{filter:brightness(1)}25%{filter:brightness(1.8)}}#shop-panel{background:var(--panel);border:1px solid var(--gold);border-radius:14px;padding:24px 28px;min-width:min(420px,92vw);max-width:520px;box-shadow:0 0 40px #f2b84b26}#shop-title{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;text-align:center}#shop-items{margin-top:14px;max-height:50vh;overflow-y:auto}.shop-item{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 4px;border-bottom:1px solid rgba(255,255,255,.08)}.shop-item:last-child{border-bottom:none}.shop-item-name{color:var(--ink);font-weight:700}.shop-item-desc{color:#f4efe68c;font-size:.78rem;margin-top:2px}.shop-item-buy{background:var(--orange);color:#1a0d12;font-size:.82rem;padding:8px 16px;white-space:nowrap}.shop-item-buy:hover{filter:brightness(1.1)}#shop-cash{color:var(--gold);font-weight:800;text-align:center;margin:16px 0 6px;letter-spacing:.05em}#shop-notice{position:fixed;left:50%;top:22%;transform:translate(-50%);background:#0a0a0aeb;border:1px solid var(--danger);color:var(--danger);padding:10px 22px;border-radius:10px;font-weight:800;letter-spacing:.05em;z-index:70;pointer-events:none;opacity:0;transition:opacity .25s}#shop-notice.show{opacity:1}#shop-hint{position:fixed;left:50%;bottom:128px;transform:translate(-50%);z-index:25;background:#0000008c;border:1px solid var(--gold);color:var(--gold);padding:6px 16px;border-radius:8px;font-size:.85rem;font-weight:700;text-align:center;white-space:nowrap;pointer-events:none;text-shadow:none;user-select:none;-webkit-user-select:none}body.touch #shop-hint.tap{pointer-events:auto;touch-action:none;padding:9px 22px;font-size:.95rem;letter-spacing:.04em}body.touch #shop-hint.tap:active{background:#f2b84b4d}@media (orientation: portrait){body.touch #shop-hint{bottom:calc(300px + var(--safe-b))}}#service-pill{position:fixed;left:0;top:0;z-index:25;display:flex;align-items:center;gap:6px;padding:5px;border-radius:12px;background:#0000008c;user-select:none;-webkit-user-select:none;touch-action:none}#service-pill.stacked{flex-direction:column;align-items:stretch;padding-right:47px}#service-pill.stacked #service-close{position:absolute;right:5px;top:5px;bottom:5px}#service-pill.hidden{display:none}#service-pill button{border:1px solid var(--gold);background:#00000073;color:var(--gold);padding:7px 13px;border-radius:8px;font:inherit;font-size:.85rem;font-weight:800;letter-spacing:.03em;white-space:nowrap;cursor:pointer;touch-action:none}#service-pill button.hidden{display:none}#service-pill button:active{background:#f2b84b4d}#service-pill button.short{opacity:.55}#service-pill #service-close{border-color:#ffffff59;color:#fffc;padding:7px 10px;font-weight:700}#weapon-bar{position:fixed;z-index:27;visibility:hidden;pointer-events:none}#weapon-bar.open{visibility:visible}.wb-slot{position:absolute;top:0;box-sizing:border-box;width:var(--wb-size, 56px);height:var(--wb-size, 56px);border-radius:var(--wb-radius, 7px);background:#5f5b5a80;border:3px solid rgba(60,56,58,.35);pointer-events:none;opacity:0;will-change:transform,opacity;font-weight:800;font-stretch:condensed;letter-spacing:-.02em;line-height:1;user-select:none;-webkit-user-select:none;touch-action:none}#weapon-bar.interactive .wb-slot{pointer-events:auto}#weapon-bar.interactive{pointer-events:auto;touch-action:none}.wb-slot.sel{background:#4e3a53;border-color:#e57dcc;box-shadow:0 0 9px 2px #e57dcc8c,inset 0 0 6px #e57dcc40}.wb-num{position:absolute;left:10%;top:6%;color:#86808e;font-size:calc(var(--wb-size, 56px) * .27)}.wb-slot.sel .wb-num{color:#a697ce}.wb-pic{position:absolute;left:12%;top:12%;width:76%;height:76%;object-fit:contain;pointer-events:none}.wb-swatch{left:32%;top:32%;width:36%;height:36%;border-radius:50%;box-shadow:0 0 6px #0009}.wb-ammo{position:absolute;right:9%;bottom:5%;color:#f1d371;font-size:calc(var(--wb-size, 56px) * .3);text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 4px rgba(0,0,0,.75)}.wb-arrow{position:absolute;top:0;box-sizing:border-box;width:var(--wb-arrow, 28px);height:var(--wb-size, 56px);border-radius:var(--wb-radius, 7px);background:#5f5b5a80;border:3px solid rgba(60,56,58,.35);display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;will-change:transform,opacity;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:none}#weapon-bar.interactive .wb-arrow{pointer-events:auto}.wb-arrow svg{width:72%;height:72%;fill:none;stroke:#f0ece6;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px rgba(0,0,0,.8))}#weapon-bar.interactive .wb-slot{cursor:pointer}#mobile-ui{position:fixed;inset:0;z-index:22;pointer-events:none;display:none}body.touch #mobile-ui{display:block}#look-zone{position:absolute;right:0;bottom:0;width:55%;height:70%;pointer-events:auto}.mbtn{position:absolute;pointer-events:auto;width:64px;height:64px;border-radius:50%;background:#00000073;border:2px solid rgba(255,255,255,.4);color:var(--ink);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.8rem;user-select:none;-webkit-user-select:none;touch-action:none}#btn-fire{right:24px;bottom:96px;background:#ff3b5c66}#btn-aim{right:100px;bottom:96px}#btn-aim.active{background:#e2711d73;border-color:var(--orange)}#btn-jump{right:24px;bottom:172px}#btn-weapon{right:100px;bottom:172px}.mbtn-pill{width:96px;height:44px;border-radius:22px;font-size:.65rem;letter-spacing:.02em;padding:0 6px;text-align:center}#btn-use{right:24px;bottom:248px}#btn-reload{right:132px;bottom:248px;background:#f2b84b59}#btn-heli-up{right:100px;bottom:172px;background:#57e6c94d}#btn-heli-down{right:100px;bottom:96px;background:#57e6c94d}body.in-vehicle #btn-aim,body.riding-shotgun #btn-jump{display:none}body.in-heli #btn-aim{display:flex}body.in-heli #btn-jump,body.in-heli #btn-weapon{display:none}body.touch.in-vehicle.in-heli{--heli-edge: calc(12px + var(--safe-r));--heli-gap: 10px;--heli-w: calc(224px + var(--heli-gap) * 2);--heli-base: calc(62px + var(--safe-b))}body.touch.in-vehicle.in-heli #btn-heli-up,body.touch.in-vehicle.in-heli #btn-heli-down{right:var(--heli-edge)}body.touch.in-vehicle.in-heli #btn-fire,body.touch.in-vehicle.in-heli #btn-aim{right:calc(var(--heli-edge) + 64px + var(--heli-gap))}body.touch.in-vehicle.in-heli #btn-use,body.touch.in-vehicle.in-heli #btn-reload{right:calc(var(--heli-edge) + 128px + var(--heli-gap) * 2)}body.touch.in-vehicle.in-heli #btn-heli-down{bottom:var(--heli-base)}body.touch.in-vehicle.in-heli #btn-heli-up{bottom:calc(var(--heli-base) + 86px)}body.touch.in-vehicle.in-heli #btn-fire{bottom:calc(var(--heli-base) + 5px)}body.touch.in-vehicle.in-heli #btn-aim{bottom:calc(var(--heli-base) + 81px)}body.touch.in-vehicle.in-heli #btn-use{bottom:calc(var(--heli-base) + 25px)}body.touch.in-vehicle.in-heli #btn-reload{bottom:calc(var(--heli-base) + 81px)}@media (orientation: portrait){body.touch.in-vehicle.in-heli #radio-widget{left:auto;right:var(--heli-edge);transform:none;width:var(--heli-w);bottom:calc(12px + var(--safe-b))}body.touch.in-vehicle.in-heli #weapon-hud{right:var(--heli-edge);bottom:calc(95px + var(--safe-b))}body.touch.in-vehicle.in-heli #chat-btn{position:static}body.touch.in-vehicle.in-heli{--heli-base: calc(145px + var(--safe-b))}}html.mc-resuming #menu{display:none!important}html.mc-resuming #portal-overlay{opacity:1;transition:none;pointer-events:auto}#resume-card{position:fixed;inset:0;z-index:45;display:flex;align-items:center;justify-content:center;background:#0000004d;cursor:pointer;padding:24px}#resume-text{background:var(--panel);border:1px solid #57e6c9;border-radius:14px;padding:16px 24px;max-width:min(420px,88vw);text-align:center;font-size:1.05rem;box-shadow:0 0 30px #57e6c940}#interior-fade{position:fixed;inset:0;z-index:90;background:#000;opacity:0;pointer-events:none;transition:opacity .45s ease}#interior-fade.on{opacity:1;pointer-events:auto}#interior-cover{position:fixed;inset:0;z-index:91;background:#000;opacity:0;pointer-events:none;transition:opacity .45s ease}#interior-cover.on{opacity:1;pointer-events:auto}#interior-cover video,#interior-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}#interior-cover .ic-caption{position:absolute;left:0;right:0;bottom:calc(18% + var(--safe-b, 0px));text-align:center;color:var(--gold);font-weight:800;letter-spacing:.06em;font-size:clamp(1.1rem,4.4vw,2rem);text-shadow:0 2px 10px rgba(0,0,0,.85);padding:0 16px}#interior-toast{position:fixed;left:50%;top:22%;transform:translate(-50%);max-width:86vw;background:#0a0a0aeb;border:1px solid var(--gold);color:var(--gold);padding:10px 22px;border-radius:10px;font-weight:800;letter-spacing:.04em;text-align:center;z-index:95;pointer-events:none;opacity:0;transition:opacity .25s}#interior-toast.show{opacity:1}body.in-interior #crosshair,body.in-interior #weapon-hud,body.in-interior #weapon-bar,body.in-interior #btn-fire,body.in-interior #btn-aim,body.in-interior #btn-weapon,body.in-interior #btn-reload,body.in-interior #minimap,body.in-interior #health-wrap{display:none!important}#screen-tap{position:fixed;left:50%;top:12%;transform:translate(-50%);z-index:96;background:#0a0a0aeb;border:2px solid var(--gold);color:var(--gold);padding:12px 24px;border-radius:999px;font:800 1rem system-ui,sans-serif;letter-spacing:.03em;display:none;cursor:pointer;touch-action:manipulation}#screen-tap.show{display:block}#room-chat{position:fixed;z-index:26;pointer-events:auto;top:calc(56px + var(--safe-t));right:calc(16px + var(--safe-r));width:340px;display:flex;flex-direction:column;background:#08080c9e;backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:6px 8px 8px;font-size:.84rem;color:var(--ink)}#room-chat.hidden{display:none}body:not(.in-interior) #room-chat{display:none}.rc-head{display:flex;align-items:center;gap:6px;min-height:26px}.rc-title{font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;color:var(--gold);white-space:nowrap}.rc-count{font-size:.7rem;color:#fff9;flex:1 1 auto;white-space:nowrap}.rc-slot{display:flex;gap:6px;align-items:center}.rc-fold{width:26px;height:26px;padding:0;border-radius:7px;flex:none;background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:var(--ink);font-size:.8rem;line-height:1;transition:transform .15s}#room-chat.folded .rc-fold{transform:rotate(180deg)}#room-chat.unread .rc-fold{border-color:var(--gold);background:#f5c54240}.rc-log{height:180px;overflow-y:auto;overscroll-behavior:contain;margin:4px 0 6px;display:flex;flex-direction:column;gap:2px;padding-right:2px;-webkit-overflow-scrolling:touch;touch-action:pan-y}.rc-line{line-height:1.32;word-wrap:break-word;overflow-wrap:anywhere;text-shadow:0 1px 2px rgba(0,0,0,.8)}.rc-line:first-child{margin-top:auto}.rc-line b{color:var(--gold)}.rc-line b.me{color:#57e6c9}.rc-line.sys{color:#ffffff8c;font-style:italic;font-size:.76rem}.rc-org{display:inline-block;margin-right:5px;padding:0 5px;border-radius:4px;vertical-align:1px;background:var(--gold);color:#1a0d12;font-size:.6rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}#room-chat.folded .rc-log{height:auto;max-height:2.8em;overflow:hidden}#room-chat.folded .rc-line:not(:last-child){display:none}.rc-row{display:flex;gap:6px;margin:0}.rc-input{flex:1 1 auto;min-width:0;font:inherit;font-size:16px;background:#0000008c;border:1px solid rgba(255,255,255,.28);color:var(--ink);padding:6px 10px;border-radius:8px;outline:none}.rc-input:focus{border-color:var(--orange)}.rc-send{flex:none;width:36px;height:34px;padding:0;border-radius:8px;border:0;background:var(--orange);color:#1a0d12;display:flex;align-items:center;justify-content:center}body.touch #room-chat{top:calc(126px + var(--safe-t));right:calc(10px + var(--safe-r));width:min(190px,calc(100vw - 20px));font-size:.76rem;padding:4px 6px 6px}body.touch .rc-head{flex-wrap:wrap;row-gap:4px}body.touch .rc-count{overflow:hidden;text-overflow:ellipsis}body.touch .rc-log{height:104px}body.touch .rc-send{width:32px;height:32px}body.touch .rc-input{padding:5px 8px}@media (orientation: portrait){body.touch #room-chat.typing{width:min(360px,calc(100vw - 20px))}body.touch #room-chat.typing .rc-log{height:120px}}@media (orientation: landscape) and (max-height: 500px){body.touch #room-chat{top:calc(8px + var(--safe-t));right:calc(82px + var(--safe-r));width:290px}body.touch .rc-log{height:58px;margin:2px 0 4px}body.touch #room-chat.typing .rc-log{height:40px}}.rc-btn{height:26px;padding:0 9px;border-radius:7px;flex:none;white-space:nowrap;background:#ffffff14;border:1px solid rgba(255,255,255,.24);color:var(--ink);font:800 .7rem system-ui,sans-serif;letter-spacing:.03em;cursor:pointer}.rc-btn:disabled{opacity:.45;cursor:default}.rc-rec{color:#ff6b81;border-color:#ff3b5c99}.rc-rec.on{background:#ff3b5c;color:#fff;border-color:#ff3b5c;font-variant-numeric:tabular-nums}.rc-dl{width:30px;padding:0;font-size:.85rem}.rc-voice{display:flex;align-items:center;gap:5px;min-height:28px;margin-top:4px}.rc-voice.hidden{display:none}.rv-status{flex:1 1 auto;min-width:0;font-size:.74rem;font-weight:700;color:#ffffffd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rc-voice .rc-btn[hidden]{display:none}.rv-hand.on{background:#f5c54240;border-color:var(--gold);color:var(--gold)}.rv-mic{--lvl: 0;min-width:58px}.rv-mic.on{background:#2fbf71;border-color:#2fbf71;color:#08140d;box-shadow:0 0 calc(4px + var(--lvl) * 14px) rgba(47,191,113,calc(.3 + var(--lvl) * .6))}.rv-stage.waiting{background:var(--gold);border-color:var(--gold);color:#1a0d12;animation:rv-wave 1.2s ease-in-out infinite}.rv-stage.on{outline:2px solid rgba(255,255,255,.5)}@keyframes rv-wave{50%{box-shadow:0 0 10px #f5c542cc}}body.touch .rc-btn{height:30px}@media (orientation: landscape) and (max-height: 500px){body.touch .rc-voice{min-height:24px;margin-top:2px}body.touch .rc-voice .rc-btn{height:24px}body.touch #room-chat.voice-on .rc-log,body.touch #room-chat.voice-on.typing .rc-log{height:32px}}#voice-panel{position:fixed;z-index:28;display:none;flex-direction:column;gap:8px;top:calc(56px + var(--safe-t));right:calc(366px + var(--safe-r));width:300px;max-height:min(70vh,520px);overflow-y:auto;background:#0c0c10f0;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:8px 10px 10px;color:var(--ink);font-size:.82rem;overscroll-behavior:contain}#voice-panel.show{display:flex}body:not(.in-interior) #voice-panel{display:none}body.touch #voice-panel{top:calc(50% + var(--safe-t));left:50%;right:auto;transform:translate(-50%,-50%);width:min(340px,calc(100vw - 24px));max-height:min(78vh,520px)}.vp-head{display:flex;align-items:center;justify-content:space-between}.vp-head b{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}.vp-title{font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff9;margin-bottom:3px}.vp-empty{font-size:.75rem;color:#ffffff73;font-style:italic}.vp-row{display:flex;align-items:center;gap:5px;padding:3px 0;border-top:1px solid rgba(255,255,255,.07)}.vp-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.vp-name small{font-weight:600;color:#ff8a96}.vp-name.talking:before{content:"🔊 "}.vp-go{background:#2fbf71;border-color:#2fbf71;color:#08140d}.vp-stop{color:#ff8a96;border-color:#ff4d5e99}#rec-pill{position:fixed;z-index:27;pointer-events:none;display:none;align-items:center;gap:7px;top:calc(20px + var(--safe-t));left:calc(66px + var(--safe-l));background:#0a0a0cb8;border:1px solid rgba(255,59,92,.55);border-radius:999px;padding:4px 11px 4px 9px;color:#fff;font:800 .72rem system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}body.in-interior #rec-pill.show{display:flex}.rec-dot{width:9px;height:9px;border-radius:50%;background:#ff3b5c;box-shadow:0 0 8px #ff3b5c;animation:rec-blink 1s steps(1,end) infinite}#gp-pill{position:fixed;z-index:27;pointer-events:none;display:none;align-items:center;gap:7px;top:calc(52px + var(--safe-t));left:calc(66px + var(--safe-l));background:#0a0a0cb8;border:1px solid rgba(255,59,92,.55);border-radius:999px;padding:4px 11px 4px 9px;color:#fff;font:800 .72rem system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}#gp-pill.show{display:flex}#gp-leftover{margin:0 0 8px;padding:8px 12px;border:1px solid var(--gold);border-radius:10px;font-size:.85rem;background:#0000004d;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center}#gp-leftover button{padding:5px 12px;font-size:.8rem}#gp-ask{z-index:41}@keyframes rec-blink{50%{opacity:.15}}body.event-page #mode-public-btn,body.event-page #mode-private-btn{display:none!important}#organizer-code-input{margin-bottom:8px;text-transform:lowercase;letter-spacing:.08em}body.in-interior #chat,body.in-interior #chat-mention,body.touch.in-interior #invite-chip,body.touch.in-interior #store-chip{display:none!important}body.seated #mobile-ui>:not(#look-zone),body.seated #btn-use,body.seated #service-pill{display:none!important}body.seated #look-zone{width:100%;height:100%}body.in-interior #killfeed{top:calc(320px + var(--safe-t))}body.touch.in-interior #killfeed{top:calc(330px + var(--safe-t))}@media (orientation: landscape) and (max-height: 500px){body.touch.in-interior #killfeed{top:calc(128px + var(--safe-t))}}
