@font-face{font-family:OkDanDan;src:url(./OkDanDan-Bold-CEzcxTSx.otf) format("opentype"),url(./OkDanDan-Bold-DPRdhnoM.ttf) format("truetype");font-weight:400 900;font-style:normal;font-display:swap}@font-face{font-family:GenJyuuGothic;src:url(./GenJyuuGothic-Bold-DIE3FYs2.ttf) format("truetype");font-weight:400 900;font-style:normal}:root{--bg: #f8fdff;--panel: rgba(255, 255, 255, .94);--panel-strong: #ffffff;--panel-border: rgba(0, 102, 255, .18);--panel-shadow: 0 10px 30px rgba(0, 102, 255, .12);--accent: #30d5ff;--accent-strong: #0066ff;--cta: #ff69b4;--cta-dark: #e04e9a;--hp: #a4de02;--xp: #ffa500;--muted: #6b7fa0;--text: #103060;--ok: #a4de02;--warn: #ffa500;--danger: #ff69b4}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(0,102,255,.35) transparent;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;outline:none}html,body{margin:0;padding:0;height:100%;min-height:100vh;min-height:-webkit-fill-available;width:100%;overflow:hidden;background:#081028;color:var(--text);font-family:OkDanDan,GenJyuuGothic,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}html{height:-webkit-fill-available}body{overscroll-behavior:none}[data-drag-scroll],.drag-scrollable{cursor:grab}[data-drag-scroll].is-drag-scrolling,.drag-scrollable.is-drag-scrolling{cursor:grabbing}input,button,select,textarea{font-family:inherit}canvas#game{position:fixed;inset:0;width:100vw;height:100vh;min-width:100vw;min-height:100vh;display:block;image-rendering:pixelated;cursor:crosshair;touch-action:none}.overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg);z-index:20;overflow:hidden;isolation:isolate;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.overlay:before{content:"";position:absolute;inset:-8%;z-index:-2;background:url(./lobby-background-BI4mAGG8.png) center / cover no-repeat;animation:lobby-bg-drift 55s linear infinite;will-change:transform}.overlay:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(#f8fdff8c,#f8fdff8c);pointer-events:none}.overlay.hidden{display:none}@keyframes lobby-bg-drift{0%{transform:translate3d(-4.5%,0,0) scale(1.03)}12.5%{transform:translate3d(-2.2%,-2.5%,0) scale(1.035)}25%{transform:translateZ(0) scale(1.045)}37.5%{transform:translate3d(2.2%,2.5%,0) scale(1.055)}50%{transform:translate3d(4.5%,0,0) scale(1.06)}62.5%{transform:translate3d(2.2%,-2.5%,0) scale(1.055)}75%{transform:translateZ(0) scale(1.045)}87.5%{transform:translate3d(-2.2%,2.5%,0) scale(1.035)}to{transform:translate3d(-4.5%,0,0) scale(1.03)}}.panel{background:var(--panel);border:1px solid var(--panel-border);padding:22px 32px 20px;border-radius:20px;text-align:center;min-width:340px;max-width:480px;width:min(480px,calc(100vw - 32px));box-shadow:var(--panel-shadow);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);max-height:92vh;overflow:hidden}.title-logo{display:block;margin:0 auto 10px;width:min(280px,70%);height:auto;user-select:none;pointer-events:none;filter:drop-shadow(0 4px 10px rgba(0,102,255,.22))}.accent{color:var(--accent-strong)}.sub{color:var(--muted);margin:4px 0;overflow-wrap:break-word;word-break:keep-all}.codex-detail-quote,.codex-detail-desc,.codex-detail-hint,.achievements-favorite-quote,.achievement-desc,.tutorial-desc,.br-results-lore,.hive-action-desc,.hive-size-desc,.hive-respawn-hint,.install-guide-hint{overflow-wrap:break-word;word-break:keep-all}.small{font-size:17px}.panel>.sub{font-size:21px}.panel>.sub.lore{font-size:15px;margin-top:2px;opacity:.85}.panel input{margin:16px 0 10px;padding:12px 16px;width:100%;background:var(--panel-strong);color:var(--text);border:2px solid var(--panel-border);border-radius:999px;font-size:20px;text-align:center;transition:border-color .12s ease,box-shadow .12s ease}.panel input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #30d5ff2e}.panel button{padding:14px 32px;background:linear-gradient(180deg,#ff87c4,var(--cta));color:#fff;border:none;border-radius:999px;font-weight:700;font-size:21px;letter-spacing:.5px;cursor:pointer;margin-top:10px;box-shadow:0 6px 18px #ff69b459,inset 0 -3px #00000014;transition:transform 80ms ease,box-shadow .12s ease,filter .12s ease}.panel button:hover{filter:brightness(1.05);transform:translateY(-1px)}#join{position:relative}#join.is-loading{color:transparent;cursor:wait;pointer-events:none;filter:brightness(.92) saturate(.9);transform:none}#join.is-loading:hover,#join.is-loading:active{filter:brightness(.92) saturate(.9);transform:none}#join.is-loading:after{content:"";position:absolute;top:50%;left:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:joinBtnSpin .7s linear infinite;box-sizing:border-box}@keyframes joinBtnSpin{to{transform:rotate(360deg)}}.panel button:active{transform:translateY(1px);box-shadow:0 3px 10px #ff69b44d,inset 0 -2px #00000014}.panel button.ghost{background:transparent;color:var(--muted);border:2px solid var(--panel-border);margin-left:8px;box-shadow:none;font-weight:600}.panel button.ghost:hover{background:#0066ff0f;filter:none;transform:none}.death-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:25}.death-overlay.hidden{display:none}.pause-overlay{position:fixed;inset:0;background:#0810288c;display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);box-sizing:border-box;z-index:58}.pause-overlay.hidden{display:none}.pause-panel{position:relative;background:var(--panel);border:1px solid var(--panel-border);padding:26px 32px 24px;border-radius:22px;box-shadow:var(--panel-shadow);text-align:center;min-width:300px;width:min(360px,calc(100vw - 32px));display:flex;flex-direction:column;gap:12px;animation:pause-pop .18s cubic-bezier(.2,.9,.3,1.2)}.pause-panel-close{position:absolute;top:10px;right:12px;width:36px;height:36px;padding:0;border:none;background:transparent;color:var(--muted);font-size:26px;line-height:1;cursor:pointer;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:color .12s ease,background .12s ease}.pause-panel-close:hover{color:var(--text);background:#30d5ff1a}@keyframes pause-pop{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.pause-panel h2{margin:0 0 6px;color:var(--accent-strong);font-size:24px;letter-spacing:1.2px;text-shadow:0 2px 6px rgba(0,102,255,.18)}.pause-panel h2:after{content:"";display:block;margin:8px auto 0;width:56px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-strong));opacity:.85}.pause-panel button{padding:13px 22px;font-size:17px;font-weight:700;border-radius:999px;cursor:pointer;letter-spacing:.4px;transition:transform 80ms ease,box-shadow .12s ease,filter .12s ease,background .12s ease,color .12s ease,border-color .12s ease}.pause-panel #pauseResume{background:linear-gradient(180deg,#ff87c4,var(--cta));color:#fff;border:none;box-shadow:0 6px 18px #ff69b459,inset 0 -3px #00000014}.pause-panel #pauseResume:hover{filter:brightness(1.05);transform:translateY(-1px)}.pause-panel #pauseResume:active{transform:translateY(1px);box-shadow:0 3px 10px #ff69b44d,inset 0 -2px #00000014}.pause-panel button.ghost{background:var(--panel-strong);color:var(--text);border:2px solid var(--panel-border);box-shadow:none}.pause-panel button.ghost:hover{border-color:var(--accent);background:#30d5ff14;color:var(--accent-strong);transform:translateY(-1px)}.pause-panel button.ghost:active{transform:translateY(1px)}.pause-panel #pauseExit:hover{border-color:var(--cta);background:#ff69b414;color:var(--cta-dark)}.pause-panel #pauseSettingsBack,.pause-panel.settings-mode h2,.pause-panel.settings-mode #pauseResume,.pause-panel.settings-mode #pauseHelp,.pause-panel.settings-mode #pauseSettings,.pause-panel.settings-mode #pauseExit{display:none}.pause-panel.settings-mode #pauseSettingsBack{display:block;order:1;margin-top:4px}.settings-popover.in-pause{position:static;left:auto;top:auto;bottom:auto;width:auto;box-shadow:none;background:transparent;border:none;border-radius:0;margin-top:4px;transform:none;flex:1 1 auto;min-height:0;max-height:none}.settings-popover.in-pause .settings-header{padding:0 4px 10px;background:transparent}.settings-popover.in-pause .settings-body{padding:10px 4px 4px}.settings-popover.in-pause .settings-close{display:none}.pause-panel.settings-mode{max-height:100%;min-height:0}@media(min-width:720px)and (min-height:600px){.pause-panel.settings-mode{width:min(520px,calc(100vw - 32px))}}.picker-tray{display:flex;flex-direction:column;gap:6px;margin-bottom:6px;padding:10px 12px;background:#ff69b41f;border:1px solid rgba(255,105,180,.55);cursor:grab;border-radius:10px;pointer-events:auto;animation:picker-pulse 1.6s ease-in-out infinite}.picker-tray:active{cursor:grabbing}.picker-tray.hidden{display:none}@keyframes picker-pulse{0%,to{box-shadow:0 0 #ff69b459}50%{box-shadow:0 0 0 3px #ff69b433}}.picker-tray-title{font-size:16px;font-weight:700;color:var(--cta);letter-spacing:.5px;text-transform:uppercase}.picker-cards{display:flex;gap:6px}.picker-card{flex:1 1 0;min-width:124px;position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 6px;background:#080c188c;border:1px solid rgba(255,255,255,.15);border-radius:8px;cursor:pointer;color:#e8f3ff;transition:transform 80ms ease,border-color 80ms ease,background 80ms ease}.picker-card.codex-role-offense{border-color:#ff7a8ab3}.picker-card.codex-role-defense{border-color:#8ec5ffb3}.picker-card.codex-role-support{border-color:#7feabdb3}.picker-card:hover{transform:translateY(-2px);border-color:var(--cta);background:#141e3cd1}.picker-card-swatch{width:20px;height:20px;border-radius:50%;box-shadow:0 0 8px currentColor;flex:0 0 auto}.picker-card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.picker-card-icon svg{width:100%;height:100%;display:block}.picker-card-name{font-size:15px;line-height:1.15;font-weight:600;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-more{font-size:13px;color:#cfe0ff;opacity:.85;text-align:right}.picker-more:empty{display:none}.picker-card-traits{display:flex;flex-direction:row;flex-wrap:nowrap;gap:4px;justify-content:center;align-items:center;width:100%;margin-top:2px}.picker-card-trait{display:inline-flex;align-items:center;gap:4px;padding:2px 7px 2px 4px;background:color-mix(in srgb,var(--trait-color, var(--accent)) 14%,transparent);border:1px solid color-mix(in srgb,var(--trait-color, var(--accent)) 50%,transparent);border-radius:999px;font-size:11px;line-height:1.1;color:var(--text);white-space:nowrap;max-width:100%}.picker-card-trait-icon{display:inline-flex;width:14px;height:14px;flex:0 0 auto}.picker-card-trait-icon svg{width:14px;height:14px;display:block}.picker-card-trait-label{font-weight:500;color:#e8f3ff;overflow:hidden;text-overflow:ellipsis}.picker-mobile-host{display:block;position:fixed;z-index:25;pointer-events:none}.picker-mobile-host .picker-tray{background:#101428e0;border-color:#ff69b4b3;box-shadow:0 4px 14px #00000073;min-width:200px}@media(max-width:520px){.picker-mobile-host{left:50%;right:auto;bottom:186px;transform:translate(-50%)}.picker-tray{gap:4px;padding:6px 8px;border-radius:8px}.picker-tray-title{font-size:13px}.picker-cards{gap:6px}.picker-card{min-width:102px;gap:3px;padding:8px 6px 6px;border-radius:6px}.picker-card-icon{width:34px;height:34px}.picker-card-name{font-size:13px}.picker-more{font-size:12px}.picker-mobile-host .picker-card-role{top:2px;left:2px;width:14px;height:14px}.picker-mobile-host .picker-card-traits{flex-direction:row;flex-wrap:nowrap;justify-content:center;gap:4px}.picker-mobile-host .picker-card-trait{padding:2px 7px 2px 4px;border-radius:999px;font-size:12px}.picker-mobile-host .picker-card-trait-icon,.picker-mobile-host .picker-card-trait-icon svg{width:13px;height:13px}}@media(max-width:520px)and (orientation:portrait){.picker-mobile-host .picker-tray{gap:3px;padding:4px 5px;min-width:0}.picker-mobile-host .picker-tray-title{font-size:11px;margin-bottom:1px}.picker-mobile-host .picker-cards{gap:4px}.picker-mobile-host .picker-card{min-width:60px;padding:6px 2px 4px;border-radius:6px;gap:3px}.picker-mobile-host .picker-card-icon{width:26px;height:26px}.picker-mobile-host .picker-card-name{font-size:11px;line-height:1.1}.picker-mobile-host .picker-card-role{top:1px;left:1px;width:12px;height:12px}.picker-mobile-host .picker-card-traits{display:none}.picker-mobile-host .picker-more{font-size:10px}}@media(max-height:500px)and (orientation:landscape){.picker-mobile-host{left:50%;right:auto;bottom:12px;transform:translate(-50%)}.picker-mobile-host .picker-tray{min-width:280px;padding:4px 6px;gap:3px;border-radius:8px}.picker-mobile-host .picker-tray-title{font-size:13px}.picker-mobile-host .picker-cards{gap:6px}.picker-mobile-host .picker-card{min-width:96px;padding:6px 6px 4px;gap:3px;border-radius:6px}.picker-mobile-host .picker-card-icon{width:28px;height:28px}.picker-mobile-host .picker-card-name{font-size:13px}.picker-mobile-host .picker-more{font-size:12px}.picker-mobile-host .picker-card-role{top:2px;left:2px;width:14px;height:14px}.picker-mobile-host .picker-card-traits{flex-direction:row;flex-wrap:nowrap;justify-content:center;gap:4px}.picker-mobile-host .picker-card-trait{padding:2px 7px 2px 4px;border-radius:999px;font-size:12px}.picker-mobile-host .picker-card-trait-icon,.picker-mobile-host .picker-card-trait-icon svg{width:13px;height:13px}}.special-cd{position:relative;display:flex;align-items:center;gap:9px;padding:5px 14px;margin-top:4px;background:#ffffff0a;border-radius:6px;color:var(--text-dim, #aaa);overflow:hidden}.special-cd-fill{position:absolute;left:0;top:0;bottom:0;width:0%;background:#ffffff1a;z-index:0;pointer-events:none}.special-cd>:not(.special-cd-fill){position:relative;z-index:1}.special-cd-swatch{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.special-cd-label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.special-cd-time{font-variant-numeric:tabular-nums;font-weight:600;color:#e8f3ff}.special-cd-queue{opacity:.75}.death-panel{background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:18px;padding:28px 36px;text-align:center;min-width:280px;max-width:min(420px,calc(100vw - 32px));box-shadow:var(--panel-shadow);color:var(--text)}.death-panel h2{margin:0 0 10px;color:var(--cta);font-size:28px}.death-panel p{margin:0 0 22px;color:var(--text);font-size:19px}.death-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin-bottom:6px}.death-panel button{padding:14px 24px;font-size:19px;font-weight:700;letter-spacing:.5px;border:none;border-radius:999px;cursor:pointer;width:100%;transition:transform 80ms ease,box-shadow .12s ease,filter .12s ease}#endlessShare{grid-column:1 / -1}#respawn,#endlessRejoin,#brFinalSpectate{background:linear-gradient(180deg,#ff87c4,var(--cta));color:#fff;box-shadow:0 6px 18px #ff69b459,inset 0 -3px #00000014}#respawn:hover,#endlessRejoin:hover,#brFinalSpectate:hover{filter:brightness(1.05);transform:translateY(-1px)}#respawn:active,#endlessRejoin:active,#brFinalSpectate:active{transform:translateY(1px);box-shadow:0 3px 10px #ff69b44d,inset 0 -2px #00000014}#giveup{background:transparent;color:var(--accent-strong);border:2px solid var(--accent-strong);font-weight:700;box-shadow:0 4px 12px #0066ff26}#giveup:hover{background:#0066ff14;transform:translateY(-1px)}#giveup:active{transform:translateY(1px);box-shadow:0 2px 6px #0066ff2e}.death-auto-forfeit{margin:10px 0 0;font-size:13px;color:#c8d7f0b3;text-align:center;letter-spacing:.02em;min-height:1em}.death-auto-forfeit.hidden{display:none}.death-auto-forfeit.urgent{color:#ff5c8a;font-weight:600}.tutorial-overlay{position:fixed;inset:0;background:#0014328c;display:flex;align-items:center;justify-content:center;z-index:26;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.tutorial-overlay.hidden{display:none}.tutorial-panel{position:relative;background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:20px;padding:28px 72px 22px;width:min(540px,calc(100vw - 32px));min-height:380px;max-height:92vh;box-shadow:var(--panel-shadow);display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--text)}.tutorial-close{position:absolute;top:10px;right:12px;width:34px;height:34px;padding:0;background:transparent;color:var(--muted);border:none;border-radius:999px;font-size:24px;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease}.tutorial-close:hover{background:#0066ff14;color:var(--accent-strong)}.tutorial-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--accent-strong);color:#fff;border:2px solid #ffffff;border-radius:999px;cursor:pointer;transition:background .12s ease,transform .12s ease,opacity .12s ease,box-shadow .12s ease;box-shadow:0 4px 14px #0066ff59,0 0 0 1px #0066ff40}.tutorial-nav:hover{background:#0052d6;transform:translateY(-50%) scale(1.08);box-shadow:0 6px 18px #0066ff73,0 0 0 1px #0066ff59}.tutorial-nav.tutorial-prev{left:14px}.tutorial-nav.tutorial-next{right:14px}.tutorial-nav.disabled{opacity:.25;cursor:default;pointer-events:none}.tutorial-content{flex:1 1 auto;padding:10px 0 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.tutorial-icon{width:150px;height:150px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.tutorial-icon.wide{width:300px;height:140px}.tutorial-icon svg{width:100%;height:100%;display:block}.tutorial-title{margin:0 0 10px;font-size:22px;color:var(--accent-strong);letter-spacing:.5px}.tutorial-desc{margin:0;font-size:17px;line-height:1.55;color:var(--text);max-width:380px;word-break:keep-all}.tutorial-desc strong{color:var(--cta)}.tutorial-dots{display:flex;gap:8px;margin-top:6px;justify-content:center}.tutorial-dot{width:8px;height:8px;border-radius:999px;background:var(--panel-border);transition:background .12s ease,transform .12s ease}.tutorial-dot.active{background:var(--accent-strong);transform:scale(1.3)}@media(max-width:520px){.tutorial-panel{padding:24px 56px 18px;min-height:340px}.tutorial-nav{width:38px;height:38px}.tutorial-icon{width:120px;height:120px}.tutorial-icon.wide{width:240px;height:110px}.tutorial-title{font-size:20px}.tutorial-desc{font-size:16px}}.rotate-hint{position:fixed;inset:0;background:#000c20c7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;z-index:27;opacity:0;pointer-events:none;transition:opacity .22s ease;text-align:center;color:#fff;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.rotate-hint.hidden{display:none}.rotate-hint.show{opacity:1;pointer-events:auto}.rotate-hint-icon{width:200px;height:160px;animation:rotateHintPulse 2.4s ease-in-out infinite}.rotate-hint-icon svg{width:100%;height:100%;display:block}.rotate-hint-title{margin:0;font-size:22px;letter-spacing:.4px;color:#ffe066}.rotate-hint-body{margin:0;font-size:16px;line-height:1.5;color:#fff;opacity:.9;max-width:320px;word-break:keep-all}.rotate-hint-dismiss{position:absolute;top:14px;right:16px;width:36px;height:36px;padding:0;background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-size:22px;line-height:1;cursor:pointer}@keyframes rotateHintPulse{0%,to{transform:rotate(0)}50%{transform:rotate(-18deg)}}.disconnect-overlay{position:fixed;inset:0;background:#000000b8;display:flex;align-items:center;justify-content:center;z-index:30}.disconnect-overlay.hidden{display:none}.disconnect-panel{background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:18px;padding:28px 36px;text-align:center;min-width:280px;max-width:min(420px,calc(100vw - 32px));box-shadow:var(--panel-shadow);color:var(--text)}.disconnect-panel h2{margin:14px 0 8px;color:var(--cta);font-size:24px}.disconnect-panel .sub{margin:0 0 18px;font-size:18px}.disconnect-spinner{width:28px;height:28px;margin:0 auto;border:3px solid var(--panel-border);border-top-color:var(--accent);border-radius:50%;animation:disc-spin .8s linear infinite}.disconnect-panel.failed .disconnect-spinner{display:none}.disconnect-panel button{padding:10px 22px;background:linear-gradient(180deg,#ff87c4,var(--cta));color:#fff;border:none;border-radius:999px;font-weight:700;cursor:pointer;font-size:18px;box-shadow:0 4px 14px #ff69b44d}.disconnect-panel button:hover{filter:brightness(1.05)}@keyframes disc-spin{to{transform:rotate(360deg)}}.codex{margin-top:14px;padding-top:12px;text-align:left}.codex h3{font-size:16px;color:var(--muted);letter-spacing:1.5px;text-transform:uppercase;margin:0 0 8px;text-align:center}.codex-filter-row{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px;padding:0 2px}button.codex-filter-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;margin:0;border-radius:999px;border:1px solid var(--panel-border, rgba(120, 145, 180, .35));background:#f8fdffb3;color:var(--muted, #5d6e8a);font:inherit;font-size:13px;font-weight:500;letter-spacing:normal;box-shadow:none;cursor:pointer;transition:border-color .12s ease,color .12s ease,background .12s ease}button.codex-filter-pill:hover{border-color:var(--accent, #56b9ff);color:var(--text, #1c2937);background:#f8fdfff2;filter:none;transform:none}button.codex-filter-pill.is-active{border-color:var(--accent, #56b9ff);color:var(--text, #1c2937);background:#38b2ff24;box-shadow:0 0 0 1px #38b2ff59 inset}button.codex-filter-pill .codex-role-icon{width:13px;height:13px}.codex-grid-wrap{overflow:visible;margin:0 0 8px;padding:8px;background:#f8fdffb3;border:1px solid var(--panel-border);border-radius:10px;box-sizing:border-box}.codex-grid{list-style:none;padding:4px;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.codex-item{flex:0 0 70px;background:#f8fdffb3;border:1px solid var(--panel-border);border-radius:10px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:4px;transition:border-color .12s,transform .12s,background .12s,box-shadow .12s}.codex-item:not(.locked){cursor:pointer}.codex-item:not(.locked):hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #30d5ff2e}.codex-item.locked{opacity:.45}.codex-item.selected{border-color:var(--accent);background:#30d5ff1f}.codex-shape{width:32px;height:32px;display:flex;align-items:center;justify-content:center;word-break:keep-all}.codex-name{font-size:16px;color:var(--text);text-align:center;word-break:keep-all}.codex-item.locked .codex-name{color:var(--muted)}.codex-detail{box-sizing:border-box;width:100%;min-height:130px;max-height:420px;padding:16px 12px 10px;background:#f8fdffb3;border:1px solid var(--panel-border);border-radius:10px;font-size:16px;overflow:auto;overflow-wrap:break-word;word-break:keep-all;scrollbar-width:thin;scrollbar-color:rgba(0,102,255,.35) transparent}.codex-detail::-webkit-scrollbar{width:6px}.codex-detail::-webkit-scrollbar-track{background:transparent}.codex-detail::-webkit-scrollbar-thumb{background:#0066ff47;border-radius:999px}.codex-detail::-webkit-scrollbar-thumb:hover{background:#0066ff8c}.codex-detail-name{font-weight:600;color:var(--accent-strong);margin-bottom:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.codex-detail-name-text{font-size:20px;line-height:1.25}.codex-role-badge{display:inline-flex;align-items:center;box-sizing:border-box;min-height:26px;font-size:12px;font-weight:700;letter-spacing:.02em;padding:3px 10px;border-radius:999px;border:1px solid var(--role-border, currentColor);background:var(--role-bg, rgba(255, 255, 255, .04));color:var(--role-fg, currentColor);white-space:nowrap;line-height:1.5}.codex-role-offense{--role-fg: #b9263c;--role-bg: rgba(255, 86, 110, .16);--role-border: rgba(185, 38, 60, .55)}.codex-role-defense{--role-fg: #1e63b8;--role-bg: rgba(70, 140, 230, .16);--role-border: rgba(30, 99, 184, .55)}.codex-role-support{--role-fg: #1f8a55;--role-bg: rgba(72, 200, 130, .18);--role-border: rgba(31, 138, 85, .55)}.picker-card-role{position:absolute;top:6px;left:6px;width:16px;height:16px;padding:0;border:0;border-radius:0;font-size:0;line-height:0;background:var(--role-fg);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;z-index:1}.picker-card-role.codex-role-offense{--role-fg: #ff7a8a}.picker-card-role.codex-role-defense{--role-fg: #8ec5ff}.picker-card-role.codex-role-support{--role-fg: #7feabd}.codex-role-icon,.codex-role-badge:before{display:inline-block;background-color:var(--role-fg, currentColor);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;flex:0 0 auto}.codex-role-icon{width:14px;height:14px;vertical-align:middle}.codex-role-badge:before{content:"";width:13px;height:13px;margin-right:5px}.codex-role-icon.codex-role-offense,.codex-role-badge.codex-role-offense:before,.picker-card-role.codex-role-offense{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='black' d='M16 8 L11.7 6.47 L13.66 2.34 L9.53 4.3 L8 0 L6.47 4.3 L2.34 2.34 L4.3 6.47 L0 8 L4.3 9.53 L2.34 13.66 L6.47 11.7 L8 16 L9.53 11.7 L13.66 13.66 L11.7 9.53 Z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='black' d='M16 8 L11.7 6.47 L13.66 2.34 L9.53 4.3 L8 0 L6.47 4.3 L2.34 2.34 L4.3 6.47 L0 8 L4.3 9.53 L2.34 13.66 L6.47 11.7 L8 16 L9.53 11.7 L13.66 13.66 L11.7 9.53 Z'/></svg>")}.codex-role-icon.codex-role-defense,.codex-role-badge.codex-role-defense:before,.picker-card-role.codex-role-defense{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='black' d='M8 1L2 3v5c0 4 2.6 6.5 6 7 3.4-.5 6-3 6-7V3z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='black' d='M8 1L2 3v5c0 4 2.6 6.5 6 7 3.4-.5 6-3 6-7V3z'/></svg>")}.codex-role-icon.codex-role-support,.codex-role-badge.codex-role-support:before,.picker-card-role.codex-role-support{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='black' d='M8 0 L11.18 4.82 L16 8 L11.18 11.18 L8 16 L4.82 11.18 L0 8 L4.82 4.82 Z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='black' d='M8 0 L11.18 4.82 L16 8 L11.18 11.18 L8 16 L4.82 11.18 L0 8 L4.82 4.82 Z'/></svg>")}.codex-detail-quote{color:var(--muted);font-style:italic;margin-top:6px;margin-bottom:10px;line-height:1.4;font-size:16px}.codex-detail-desc{color:var(--text);line-height:1.45}.codex-detail-graphic-wrap{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:64px;margin:8px 0 10px}#codex-demo-preload{display:none}.codex-radar{flex:0 0 auto;width:225px;height:180px}.codex-radar-svg{width:225px;height:180px;display:block;overflow:visible}.codex-detail-demo{flex:0 0 auto;position:relative;width:200px;height:200px;border-radius:10px;overflow:hidden;border:1px solid color-mix(in srgb,var(--demo-color, var(--panel-border)) 35%,transparent);background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--demo-color, #4a5568) 22%,#0e1424),color-mix(in srgb,var(--demo-color, #4a5568) 8%,#0a0f1c) 60%,#07101e);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--demo-color, #fff) 12%,transparent),inset 0 12px 32px color-mix(in srgb,var(--demo-color, #fff) 6%,transparent)}.codex-detail-demo-spinner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:opacity .22s ease,transform .24s ease}.codex-detail-demo-spinner:before,.codex-detail-demo-spinner:after{content:"";position:absolute;border-radius:50%}.codex-detail-demo-spinner:before{width:52px;height:52px;background:conic-gradient(from 0deg,transparent 0deg,color-mix(in srgb,var(--demo-color, #fff) 90%,transparent) 280deg,transparent 360deg);-webkit-mask:radial-gradient(circle at center,transparent 20px,#000 21px);mask:radial-gradient(circle at center,transparent 20px,#000 21px);animation:codex-demo-spin .9s linear infinite}.codex-detail-demo-spinner:after{width:32px;height:32px;background:conic-gradient(from 180deg,transparent 0deg,color-mix(in srgb,var(--demo-color, #fff) 60%,transparent) 200deg,transparent 360deg);-webkit-mask:radial-gradient(circle at center,transparent 11px,#000 12px);mask:radial-gradient(circle at center,transparent 11px,#000 12px);animation:codex-demo-spin 1.4s linear infinite reverse;opacity:.85}@keyframes codex-demo-spin{to{transform:rotate(360deg)}}.codex-detail-demo video{position:relative;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .24s ease}.codex-detail-demo.is-ready video{opacity:1}.codex-detail-demo.is-ready .codex-detail-demo-spinner{opacity:0;transform:scale(.85)}@media(prefers-reduced-motion:reduce){.codex-detail-demo-spinner:before,.codex-detail-demo-spinner:after{animation:none}.codex-detail-demo video,.codex-detail-demo-spinner{transition:none}}.codex-radar-label{font-size:11px;fill:var(--muted);font-weight:500;font-family:inherit}.codex-trait{display:inline-flex;align-items:center;box-sizing:border-box;min-height:26px;gap:4px;padding:3px 10px 3px 4px;background:color-mix(in srgb,var(--trait-color, var(--accent)) 12%,transparent);border:1px solid color-mix(in srgb,var(--trait-color, var(--accent)) 45%,transparent);border-radius:999px;font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;max-width:100%}.codex-trait-icon{display:inline-flex;width:18px;height:18px;flex:0 0 auto}.codex-trait-icon svg{width:18px;height:18px;display:block}.codex-trait-label{font-weight:500;overflow:hidden;text-overflow:ellipsis}.codex-detail-hint{color:var(--muted);font-size:16px;text-align:center;padding:0}.codex-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;min-height:0;padding:12px 0 6px;position:relative;overflow:hidden}.codex-empty-art{width:min(220px,70%);display:flex;align-items:center;justify-content:center;pointer-events:none;min-height:0;flex-shrink:1}.codex-empty-art svg{width:100%;height:auto;max-height:100%;display:block;overflow:visible}.codex-empty-spec{transform-origin:center;animation:codex-empty-spec-pulse 3.8s ease-in-out infinite}.codex-empty-spec--a{animation-delay:0s}.codex-empty-spec--b{animation-delay:-1.2s}.codex-empty-spec--c{animation-delay:-2.1s}.codex-empty-spec--d{animation-delay:-2.8s}@keyframes codex-empty-spec-pulse{0%,to{transform:translateY(0);opacity:.85}50%{transform:translateY(-2px);opacity:1}}.codex-empty-glass{transform-origin:0 0;animation:codex-empty-glass-rock 4.2s ease-in-out infinite}@keyframes codex-empty-glass-rock{0%,to{transform:translate(146px,36px) rotate(-18deg)}50%{transform:translate(150px,32px) rotate(-12deg)}}.codex-empty-cue{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-strong);animation:codex-empty-cue-pulse 1.8s ease-in-out infinite}@keyframes codex-empty-cue-pulse{0%,to{transform:translateY(2px);opacity:.7}50%{transform:translateY(-3px);opacity:1}}@keyframes codex-empty-cue-pulse-x{0%,to{transform:translate(2px);opacity:.7}50%{transform:translate(-3px);opacity:1}}@media(prefers-reduced-motion:reduce){.codex-empty-cell,.codex-empty-cue{animation:none}}@media(min-width:1440px){.panel{overflow:visible}.codex{position:absolute;top:50%;left:100%;margin-left:20px;transform:translateY(-50%);width:clamp(460px,calc((100vw - 480px)/2 - 40px),620px);height:min(86vh,635px);display:flex;flex-direction:column;overflow:hidden;margin-top:0;padding:14px 16px 16px;background:var(--panel, rgba(248, 253, 255, .94));border:1px solid var(--panel-border);border-radius:14px;box-shadow:var(--panel-shadow);border-top:none}.codex-grid-wrap{flex:0 0 auto;width:100%}.codex-detail{flex:1 1 auto;min-height:0;max-height:none;font-size:17px}.codex h3{font-size:20px}.codex-name{font-size:17px}.codex-detail-quote{font-size:16px}.codex-detail-hint{font-size:17px}.codex-radar-label{font-size:13px}.codex-trait{font-size:15px;padding:4px 12px 4px 6px}.codex-trait-icon,.codex-trait-icon svg{width:24px;height:24px}.codex-role-badge,.codex-trait{min-height:34px}.codex-role-badge{font-size:15px;padding:4px 12px}.codex-detail-graphic-wrap{justify-content:center}}.codex-fab{display:none}@media(max-width:1439px){.panel>#codex{display:none}.codex-fab{position:absolute;left:18px;bottom:326px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;min-width:104px;box-sizing:border-box;background:var(--panel-strong);color:var(--accent-strong);border:1px solid var(--panel-border);border-radius:14px;cursor:pointer;box-shadow:var(--panel-shadow);transition:transform .12s ease,box-shadow .12s ease;z-index:21}.codex-fab:hover{transform:translateY(-1px);box-shadow:0 12px 28px #0066ff38}}@media(max-width:420px){.codex-grid{gap:4px}.codex-item{padding:6px 2px}.codex-shape{width:32px;height:32px}.codex-shape svg{width:32px;height:32px}.codex-name{font-size:15px}.codex-detail{min-height:120px;max-height:420px;font-size:15px;padding:18px 10px 8px}.codex-detail-graphic-wrap{justify-content:center;gap:10px}.codex-radar,.codex-radar-svg{width:196.88px;height:157.5px}.codex-detail-demo{width:140px;height:140px}}.settings-fab{position:absolute;left:18px;bottom:18px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;background:var(--panel-strong);color:var(--muted);border:1px solid var(--panel-border);border-radius:14px;cursor:pointer;box-shadow:var(--panel-shadow);transition:transform .12s ease,box-shadow .12s ease;z-index:21}.settings-fab:hover{transform:translateY(-1px);box-shadow:0 12px 28px #6b7fa038}.settings-fab-label{font-size:15px;font-weight:600;letter-spacing:.5px;color:var(--muted);text-transform:uppercase}.records-fab{position:absolute;left:18px;bottom:95px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;background:var(--panel-strong);color:var(--warn);border:1px solid var(--panel-border);border-radius:14px;cursor:pointer;box-shadow:var(--panel-shadow);transition:transform .12s ease,box-shadow .12s ease;z-index:21}.records-fab:hover{transform:translateY(-1px);box-shadow:0 12px 28px #ffa50038}.tutorial-fab{position:absolute;left:18px;bottom:172px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;background:var(--panel-strong);color:var(--accent);border:1px solid var(--panel-border);border-radius:14px;cursor:pointer;box-shadow:var(--panel-shadow);transition:transform .12s ease,box-shadow .12s ease;z-index:21}.tutorial-fab:hover{transform:translateY(-1px);box-shadow:0 12px 28px #30d5ff38}.achievements-fab{position:absolute;left:18px;bottom:249px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;background:var(--panel-strong);color:var(--ok);border:1px solid var(--panel-border);border-radius:14px;cursor:pointer;box-shadow:var(--panel-shadow);transition:transform .12s ease,box-shadow .12s ease;z-index:21}.achievements-fab:hover{transform:translateY(-1px);box-shadow:0 12px 28px #5cf0a038}.settings-fab,.records-fab,.tutorial-fab,.achievements-fab{min-width:104px;box-sizing:border-box}.codex-modal{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);box-sizing:border-box}.codex-modal.hidden{display:none}.codex-modal-backdrop{position:absolute;inset:0;background:#0810207a;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.codex-modal-sheet{position:relative;z-index:1;background:var(--panel-strong, rgba(248, 253, 255, .96));border:1px solid var(--panel-border);border-radius:18px;padding:18px 18px 16px;box-shadow:var(--panel-shadow);width:min(520px,calc(100vw - 24px));height:min(720px,calc(100vh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));display:flex;flex-direction:column;overflow:hidden}.codex-modal-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.codex-modal-body>.codex{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;margin-top:0;padding-top:0;border-top:none}.codex-modal-body>.codex>h3{flex:0 0 auto}.codex-modal-body>.codex>.codex-grid-wrap{flex:4 1 0;min-height:0;overflow-y:auto;overscroll-behavior:contain}.codex-modal-body>.codex>.codex-detail{flex:6 1 0;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain}.codex-modal-body .codex-detail-graphic-wrap{justify-content:center;flex-wrap:nowrap;gap:12px;padding:0}.codex-modal-body .codex-detail-demo{flex:1 1 0;min-width:0;max-width:180px;width:auto;height:auto;aspect-ratio:1}.codex-modal-body .codex-radar{flex:1 1 0;min-width:0;max-width:180px;width:100%;height:auto;aspect-ratio:200 / 160}.codex-modal-body .codex-radar-svg{width:100%;height:100%}.codex-modal-close{position:absolute;top:8px;right:10px;width:32px;height:32px;border:none;background:transparent;color:var(--muted);font-size:26px;line-height:1;cursor:pointer;border-radius:8px}.codex-modal-close:hover{color:var(--accent-strong);background:#0066ff14}.achievements-modal{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);box-sizing:border-box}.achievements-modal.hidden{display:none}.achievements-modal-backdrop{position:absolute;inset:0;background:#0f172b6b;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.achievements-modal-sheet{position:relative;z-index:1;background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:22px 24px 20px;box-shadow:0 18px 48px #0f172b1f,0 4px 14px #0f172b0f;width:min(960px,calc(100vw - 32px));max-height:calc(100vh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));display:flex;flex-direction:column;overflow:hidden}.achievements-modal-header{flex:0 0 auto;padding-right:44px;margin-bottom:12px}.achievements-modal-tabs{flex:0 0 auto}.achievements-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto}.achievements-modal-close{position:absolute;top:10px;right:12px;width:36px;height:36px;border:none;background:transparent;color:#62748e;font-size:28px;line-height:1;cursor:pointer;border-radius:10px}.achievements-modal-close:hover{color:#1d293d;background:#f1f5f9}.achievements-modal-header h3{margin:0 0 6px;font-size:26px;color:#0f172b}.achievements-summary{color:#62748e;font-size:17px;font-weight:700}@media(max-height:500px)and (orientation:landscape){.achievements-modal-sheet{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"header tabs" "body   body";column-gap:24px;row-gap:8px;padding:14px 18px 12px}.achievements-modal-sheet>.achievements-modal-header{grid-area:header;align-self:start;padding-right:0;margin-bottom:0}.achievements-modal-sheet>.achievements-modal-tabs{grid-area:tabs;align-self:start;padding-right:44px}.achievements-modal-sheet>.achievements-modal-body{grid-area:body}.achievements-modal-tabs .achievements-tabs{margin-bottom:8px}.achievements-modal-sheet .achievements-modal-header h3{font-size:20px;margin:0 0 2px}.achievements-modal-sheet .achievements-summary{font-size:13px}}.achievements-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid #e2e8f0}.achievements-tabs-mode{gap:2px;margin-bottom:14px}.achievements-tabs-mode .achievements-tab{padding:6px 12px;font-size:16px}.achievements-tab{background:transparent;border:none;border-bottom:2px solid transparent;color:#62748e;padding:8px 16px;font-size:18px;font-weight:600;cursor:pointer;transition:color .15s ease,border-color .15s ease;margin-bottom:-1px}.achievements-tab:hover{color:#1d293d}.achievements-tab.active{color:#2563eb;border-bottom-color:#2563eb}.achievements-tabs-mode .achievements-tab.active[data-mode=endless]{color:#0fb6d9;border-bottom-color:#30d5ff}.achievements-tabs-mode .achievements-tab.active[data-mode=br]{color:#db4a8e;border-bottom-color:#ff69b4}.achievements-tabs-mode .achievements-tab.active[data-mode=hive]{color:#8a3fde;border-bottom-color:#a855f7}.achievements-favorite{display:flex;align-items:center;gap:16px;padding:14px 18px;margin-bottom:18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px}.achievements-favorite-icon{flex:0 0 auto;width:52px;height:52px}.achievements-favorite-icon svg{width:52px;height:52px}.achievements-favorite-text{display:flex;flex-direction:column;gap:4px;min-width:0}.achievements-favorite-label{font-size:14px;color:#62748e;text-transform:uppercase;letter-spacing:.6px}.achievements-favorite-name{font-size:22px;font-weight:700;color:#1d293d}.achievements-favorite-stats{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px;color:#62748e;margin-top:2px}.achievements-favorite-stat{white-space:nowrap}.achievements-favorite-quote{font-size:14px;font-style:italic;color:#45556c;margin-top:4px}.achievements-category{margin-top:22px}.achievements-category-head{font-size:17px;font-weight:700;color:#62748e;text-transform:uppercase;letter-spacing:1.2px;margin:0 0 12px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}.achievements-units{display:flex;flex-direction:column;gap:14px}.achievements-unit{border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px;background:#fff;min-width:0}.achievements-unit-head{display:flex;align-items:center;gap:14px;margin-bottom:10px}.achievements-unit-icon{flex:0 0 auto;width:44px;height:44px}.achievements-unit-icon svg{width:44px;height:44px}.achievements-unit-name{font-size:20px;font-weight:700;color:#464646}.achievements-skill-head{justify-content:space-between;gap:8px}.achievements-skill-label{font-size:20px;font-weight:700;color:#1d293d}.achievements-skill-tier{font-size:14px;font-weight:700;padding:4px 12px;border-radius:999px;letter-spacing:.4px;border:1px solid transparent}.achievements-skill-tier-novice{color:#62748e;background:#f1f5f9;border-color:#e2e8f0}.achievements-skill-tier-rookie{color:#1d293d;background:#93c5fd2e;border-color:#93c5fd}.achievements-skill-tier-skilled{color:#10b981;background:#34d39929;border-color:#34d399}.achievements-skill-tier-expert{color:#1d293d;background:#fbbf242e;border-color:#fbbf24}.achievements-skill-tier-master{color:#fff;background:#1d293d;border-color:#0f172b}.achievements-skill-flavor{font-size:14px;color:#62748e;margin-bottom:12px;line-height:1.4}.achievements-skill-rows{display:flex;flex-direction:column;gap:6px;border-top:1px solid #f1f5f9;padding-top:10px}.achievements-skill-row{display:flex;justify-content:space-between;align-items:baseline;font-size:15px;padding:4px 2px}.achievements-skill-row-label{color:#62748e}.achievements-skill-row-value{font-variant-numeric:tabular-nums;font-weight:700;color:#1d293d}.achievement-row{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:4px;align-items:center;padding:10px 6px}.achievement-tier{display:none}.achievement-name{font-size:17px;font-weight:700;color:#1d293d}.achievement-row.earned .achievement-name{color:#1d293d}.achievement-desc{grid-column:1 / -1;grid-row:2;font-size:15px;color:#62748e;line-height:1.4}.achievement-progress{grid-column:1 / -1;grid-row:3;height:22px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;overflow:hidden;margin-top:6px}.achievement-progress-fill{height:100%;background:#fbbf24;border-radius:999px;transition:width .18s ease}.achievement-row.earned .achievement-progress-fill{background:#10b981}.achievement-counter{grid-column:1 / -1;grid-row:3;z-index:1;align-self:center;justify-self:center;margin-top:6px;font-variant-numeric:tabular-nums;font-size:14px;font-weight:700;color:#45556c;pointer-events:none}.achievement-row.earned .achievement-counter{color:#fff}.achievement-done{flex:0 0 auto;margin-left:auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#10b981;color:#fff;font-size:10px;font-weight:800;letter-spacing:.3px;white-space:nowrap;clip-path:polygon(50% 0%,57% 13%,67% 3%,71% 14%,82% 12%,78% 27%,93% 25%,88% 36%,99% 41%,87% 50%,99% 59%,90% 65%,93% 75%,80% 75%,82% 88%,68% 81%,67% 97%,57% 91%,50% 100%,43% 87%,33% 97%,30% 85%,18% 88%,22% 73%,7% 75%,9% 65%,1% 59%,13% 50%,1% 41%,12% 36%,7% 25%,20% 25%,18% 12%,32% 19%,33% 3%,43% 9%)}@media(min-width:720px){.achievements-units{flex-direction:row;flex-wrap:wrap;column-gap:18px;row-gap:14px}.achievements-unit{flex:1 1 calc(50% - 9px);min-width:0}}.records-popover{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);box-sizing:border-box}.records-popover.hidden{display:none}.records-popover-backdrop{position:absolute;inset:0;background:#0810207a;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.records-popover-sheet{position:relative;z-index:1;background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:18px;padding:18px 22px 16px;box-shadow:var(--panel-shadow);width:min(320px,calc(100vw - 24px));max-height:calc(100vh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;text-align:left}.records-popover-close{position:absolute;top:8px;right:10px;width:32px;height:32px;border:none;background:transparent;color:var(--muted);font-size:26px;line-height:1;cursor:pointer;border-radius:8px}.records-popover-close:hover{color:var(--accent-strong);background:#0066ff14}.records-popover h3{font-size:18px;color:var(--muted);letter-spacing:1.5px;text-transform:uppercase;margin:0 0 12px;text-align:center}.record-row{display:flex;justify-content:space-between;align-items:center;font-size:19px;color:var(--text);margin:8px 0;gap:12px}.record-row>span:first-child{color:var(--muted);white-space:nowrap}.record-value{color:var(--accent-strong);font-weight:700;font-variant-numeric:tabular-nums;min-width:48px;text-align:right}.death-survival{margin:-8px 0 14px;font-size:15px;color:#ffffffc7;text-align:center;font-variant-numeric:tabular-nums}.death-records{margin:-8px 0 18px;display:flex;flex-direction:column;gap:6px;align-items:center}.death-records:empty{display:none}.record-row-new{display:inline-flex;align-items:center;gap:10px;animation:record-pop .42s cubic-bezier(.3,1.4,.5,1) both}.record-badge{display:inline-flex;align-items:center;padding:5px 14px;background:linear-gradient(180deg,#ffd76a,orange);color:#fff;border-radius:999px;font-weight:700;font-size:15px;letter-spacing:.6px;box-shadow:0 4px 12px #ffa50066,inset 0 -2px #00000014;text-shadow:0 1px 2px rgba(0,0,0,.18)}.record-row-label{font-size:16px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}@keyframes record-pop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.08);opacity:1}to{transform:scale(1);opacity:1}}.settings-popover{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(540px,calc(100vw - 32px));background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:20px;box-shadow:var(--panel-shadow),0 0 0 9999px #0f172b73;z-index:40;text-align:left;display:flex;flex-direction:column;padding:0;max-height:calc(100vh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);max-height:calc(100svh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);overflow:hidden}.settings-popover.hidden{display:none}.settings-header{flex:0 0 auto;position:relative;padding:20px 32px 14px;background:var(--panel-strong);border-bottom:1px solid var(--panel-border)}.settings-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:18px 32px 26px}.settings-popover h3{font-size:23px;font-weight:800;color:var(--text);letter-spacing:1.4px;text-transform:uppercase;margin:0;text-align:center}.settings-close{position:absolute;top:50%;right:12px;transform:translateY(-50%);width:36px;height:36px;padding:0;border:none;border-radius:9px;background:transparent;color:var(--muted);font-size:28px;font-weight:400;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s ease,color .12s ease}.settings-close:hover{background:#0066ff14;color:var(--text)}.setting-row{display:flex;align-items:center;flex-wrap:nowrap;gap:14px;font-size:21px;color:var(--text);margin:12px 0;cursor:pointer;user-select:none}.setting-row>span:not(.setting-value){flex:0 0 auto;white-space:nowrap}.setting-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--cta);cursor:pointer;margin:0}.setting-row input[type=range]{flex:1 1 auto;min-width:0;accent-color:var(--cta);cursor:pointer}.setting-row .setting-value{flex:0 0 auto;width:44px;text-align:right;font-variant-numeric:tabular-nums;color:var(--muted);font-size:19px}.setting-row select{flex:1 1 auto;min-width:0;padding:8px 12px;font:inherit;font-size:18px;color:var(--text);background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;cursor:pointer}.setting-section-label{font-size:21px;color:var(--text);margin:12px 0 -4px}.setting-row--ranged>span{font-size:17px;color:var(--muted)}.settings-section{margin:0 0 12px;background:#0066ff0a;border:1px solid var(--panel-border);border-radius:14px;overflow:hidden}.settings-section:last-of-type{margin-bottom:0}.settings-section[open]{background:#0066ff0f}.settings-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;font-size:22px;font-weight:700;color:var(--text);letter-spacing:.02em;cursor:pointer;user-select:none;list-style:none}.settings-section[open]>.settings-section-head{border-bottom:1px solid var(--panel-border)}.settings-section-head::-webkit-details-marker{display:none}.settings-section-head:after{content:"▸";font-size:14px;opacity:.6;margin-left:auto;transition:transform .15s ease}.settings-section[open]>.settings-section-head:after{transform:rotate(90deg)}.settings-section-head>span:first-child{flex:0 0 auto}.settings-section-tag{font-size:12px;font-weight:500;padding:3px 10px;border-radius:999px;background:#8ed8ff2e;color:#8ed8ff;letter-spacing:.06em;text-transform:uppercase}.settings-section-tag:empty{display:none}.settings-section-body{padding:10px 16px 14px;box-sizing:border-box}.setting-hint{margin:4px 4px 6px 36px;font-size:15px;color:var(--muted);line-height:1.45}.settings-section-body .setting-row:first-child{margin-top:0}.settings-section-body .setting-row:last-child{margin-bottom:0}body[data-ui-scale=large] #stats{transform:translate(-50%) scale(1.15);transform-origin:bottom center}body[data-ui-scale=large] #leaderboard{transform:scale(1.15);transform-origin:top right}body[data-ui-scale=large] #specials{transform:scale(1.15);transform-origin:bottom right}body[data-ui-scale=large] #hiveScoreboard{transform:translate(-50%) scale(1.15);transform-origin:top center}body[data-ui-scale=xlarge] #stats{transform:translate(-50%) scale(1.3);transform-origin:bottom center}body[data-ui-scale=xlarge] #leaderboard{transform:scale(1.3);transform-origin:top right}body[data-ui-scale=xlarge] #specials{transform:scale(1.3);transform-origin:bottom right}body[data-ui-scale=xlarge] #hiveScoreboard{transform:translate(-50%) scale(1.3);transform-origin:top center}@media(max-width:520px){.setting-row--desktop-only{display:none}body[data-ui-scale=large] #leaderboard,body[data-ui-scale=large] #specials,body[data-ui-scale=xlarge] #leaderboard,body[data-ui-scale=xlarge] #specials{transform:none}body[data-ui-scale=large] #stats,body[data-ui-scale=large] #hiveScoreboard,body[data-ui-scale=xlarge] #stats,body[data-ui-scale=xlarge] #hiveScoreboard{transform:translate(-50%)}}#hud{position:fixed;top:env(safe-area-inset-top);right:env(safe-area-inset-right);bottom:env(safe-area-inset-bottom);left:env(safe-area-inset-left);pointer-events:none;z-index:10}#hud.hidden{display:none}#stats{position:absolute;left:50%;bottom:16px;transform:translate(-50%);width:320px}#stats.hidden{display:none}.bar{position:relative;height:22px;background:#0014328c;border:1px solid rgba(255,255,255,.12);border-radius:11px;margin-bottom:6px;overflow:hidden}#hpBar{position:relative;height:100%;width:100%;background:linear-gradient(90deg,#7ab015,#9ec23a);transition:width .12s linear,background .2s linear;z-index:1}#hpGhost{position:absolute;top:0;left:0;height:100%;width:100%;background:linear-gradient(90deg,#ffdcdcc7,#fff0f099);transition:width .55s cubic-bezier(.2,.85,.25,1);border-radius:11px;z-index:0;pointer-events:none}#hpBar.is-low{background:linear-gradient(90deg,#c89a1a,#e0b840)}#hpBar.is-crit{background:linear-gradient(90deg,#b22b2b,#d04848)}#xpBar{height:100%;width:0%;background:linear-gradient(90deg,var(--xp),#ffc866);transition:width .12s linear}.bar span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:16px;color:#fff;text-shadow:0 0 2px #0009;z-index:2}#meta{font-size:17px;color:#cfe0ff;width:fit-content;max-width:100%;margin:0 auto 4px;padding:4px 12px;background:#08102073;border:1px solid rgba(255,255,255,.08);border-radius:12px;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}#leaderboard{position:absolute;right:16px;top:16px;width:260px;background:#10142833;border:1px solid rgba(48,213,255,.25);color:#e8f3ff;padding:10px 12px;border-radius:10px;font-size:17px;pointer-events:auto;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none;transition:width .14s ease-out,font-size .14s ease-out,padding .14s ease-out,background-color .14s ease-out}#leaderboard:hover,#leaderboard.expanded{background:#101428b8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}#leaderboard.expanded{z-index:20}#hud:has(#leaderboard.expanded){z-index:13}#leaderboard h3{margin:0;font-size:16px;color:#9fb6d8;letter-spacing:1.5px;text-transform:uppercase}.lb-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.hud-stats{display:flex;align-items:center;gap:10px}.ping-row{display:flex;align-items:center;gap:5px;font-size:15px;color:#9fb6d8}.fps-row{display:flex;align-items:baseline;gap:3px;font-size:15px;color:#9fb6d8}.fps-text{font-variant-numeric:tabular-nums;min-width:22px;text-align:right}.fps-text.low{color:var(--warn)}.fps-text.crit{color:var(--danger)}.fps-label{font-size:11px;opacity:.7}.ping-dot{width:7px;height:7px;border-radius:50%;background:#555;box-shadow:0 0 4px currentColor;transition:background .2s}.ping-dot.green{background:var(--ok);color:var(--ok)}.ping-dot.yellow{background:var(--warn);color:var(--warn)}.ping-dot.red{background:var(--danger);color:var(--danger)}.ping-dot.offline{background:#555;color:#555}.ping-text{font-variant-numeric:tabular-nums;min-width:34px;text-align:right}#leaderList{list-style:none;padding:0;margin:0}#leaderList li{display:flex;justify-content:space-between;padding:2px 0;white-space:nowrap}#leaderList li>span+span{flex-shrink:0;padding-left:6px}#leaderList li.me{color:var(--accent);font-weight:600}#leaderList li.dead{color:#6b7c99}#leaderList li.has-respawn-overlay{position:relative}#leaderList .leader-respawn-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 6px;background:#080c189e;color:#ff8a8a;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.3px;border-radius:4px;pointer-events:none}#leaderList .leader-name{display:inline-flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#leaderList .leader-swatch{flex:0 0 auto;width:10px;height:10px;border-radius:2px;box-shadow:0 0 0 1px #ffffff40 inset}#leaderList li.dead .leader-swatch{opacity:.45}#leaderList .leader-rank{flex:0 0 auto;font-variant-numeric:tabular-nums}#leaderList .leader-crown{flex:0 0 auto;width:14px;height:10px;margin-right:-2px;filter:drop-shadow(0 0 2px rgba(255,211,75,.7))}#leaderList li.dead .leader-crown{opacity:.35}#leaderList .leader-streak{flex:0 0 auto;display:inline-flex;align-items:center;gap:2px;margin-left:2px;font-weight:700;font-size:12px;line-height:1;color:#ffe2e8;text-shadow:0 1px 1px rgba(0,0,0,.55)}#leaderList .leader-streak:before{content:"";width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid currentColor;filter:drop-shadow(0 1px 1px rgba(0,0,0,.55))}#leaderList .leader-streak.t1{color:#e85a72}#leaderList .leader-streak.t1 .leader-streak-num{color:#ffe2e8}#leaderList .leader-streak.t2{color:#d63a55}#leaderList .leader-streak.t2 .leader-streak-num{color:#ffc8d2}#leaderList .leader-streak.t3{color:#b41e38}#leaderList .leader-streak.t3 .leader-streak-num{color:#ff7a8e}#leaderList .leader-streak.t4{color:#8a0e20}#leaderList .leader-streak.t4 .leader-streak-num{color:#e64060}#leaderList li.dead .leader-streak{opacity:.4}#leaderList li .leader-name.streak-t1{color:#e6c2cb}#leaderList li .leader-name.streak-t2{color:#d68a98}#leaderList li .leader-name.streak-t3{color:#c0203a}#leaderList li .leader-name.streak-t4{color:#7a0a18}#leaderList li.me .leader-name.streak-t1{color:#fbd5dc}#leaderList li.me .leader-name.streak-t2{color:#f59aa8}#specials{position:absolute;right:16px;bottom:16px;width:278px;max-height:calc(100vh - 400px);display:flex;flex-direction:column;pointer-events:auto;background:#101428b8;border:1px solid rgba(48,213,255,.25);color:#e8f3ff;padding:10px 12px;border-radius:10px;font-size:18px}#specials h3{margin:0 0 6px;font-size:17px;color:#9fb6d8;letter-spacing:1.5px;text-transform:uppercase;flex:0 0 auto}#specialList{list-style:none;padding:0;margin:0;flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(48,213,255,.35) transparent}#specialList::-webkit-scrollbar{width:6px}#specialList::-webkit-scrollbar-thumb{background:#30d5ff59;border-radius:999px}#specialList::-webkit-scrollbar-thumb:hover{background:#30d5ff99}#specialList li{padding:6px 12px}#specialList li+li{border-top:1px solid rgba(255,255,255,.1)}#specialList .special-header{display:flex;align-items:center;gap:9px;margin-bottom:3px}#specialList .special-swatch,#specialList .special-cd-swatch{display:none}#specialList .special-icon,#specialList .special-cd-icon{display:flex;flex:0 0 auto;width:28px;height:28px;align-items:center;justify-content:center}#specialList .special-icon svg,#specialList .special-cd-icon svg{width:100%;height:100%;display:block}#specialList .special-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#specialList .special-hp-text{flex:0 0 auto;color:var(--muted);font-variant-numeric:tabular-nums}#specialList .special-hp-text.low{color:var(--danger)}#specialList .special-bar{position:relative;height:7px;background:#0014328c;border:1px solid rgba(255,255,255,.12);border-radius:3px;overflow:hidden}#specialList .special-bar-fill{height:100%;width:100%;transition:width .12s linear}#damageFlash{position:fixed;inset:0;pointer-events:none;z-index:5;opacity:0;background:radial-gradient(circle at center,transparent 30%,rgba(255,105,180,.55) 100%);transition:opacity .38s ease-out}#damageFlash.hit{opacity:1;transition:opacity 40ms ease-out}#hiveScoreboard{position:absolute;left:50%;top:14px;transform:translate(-50%);display:none;align-items:baseline;gap:14px;padding:6px 18px 7px;border-radius:999px;background:#10142899;border:1px solid rgba(120,200,255,.2);color:#e8eefc;font-weight:800;font-variant-numeric:tabular-nums;font-size:22px;letter-spacing:.5px;pointer-events:none;user-select:none;z-index:30}#hiveScoreboard.is-shown{display:inline-flex}.hive-score-num{min-width:1.6ch;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.55)}.hive-score-num.is-blue{color:#6db8ff}.hive-score-num.is-red{color:#ff7f7f}.hive-score-sep{color:#e8eefc9e;font-weight:600}@media(max-width:540px){#hiveScoreboard{top:10px;font-size:18px;padding:5px 14px 6px;gap:10px}}#hint{position:absolute;left:50%;top:56px;transform:translate(-50%);color:#cfe0ff;display:flex;align-items:stretch;pointer-events:none}@media(max-width:540px){#hint{top:110px}}.hint-card{background:#10142852;border:1px solid rgba(120,200,255,.18);padding:14px 18px 12px;border-radius:14px;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;flex-direction:column;gap:8px;min-width:320px;max-width:min(86vw,540px);pointer-events:auto;position:relative}.hint-step-indicator{position:absolute;top:-10px;left:50%;transform:translate(-50%);display:flex;gap:6px;padding:3px 8px;background:#1014288c;border-radius:999px;border:1px solid rgba(120,200,255,.2)}.hint-step-dot{width:8px;height:8px;border-radius:50%;background:transparent;border:1.4px solid rgba(207,224,255,.45);transition:background .2s ease}.hint-step-dot.is-active{background:#ffd07a;border-color:#ffd07a;box-shadow:0 0 6px #ffd07a8c}.hint-step{display:none;flex-direction:column;gap:6px}#hint.step-move .hint-step--move,#hint.step-rally .hint-step--rally{display:flex;animation:hintStepFadeIn .24s ease-out both}@keyframes hintStepFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.hint-step-header{display:flex;align-items:center;gap:8px;padding-bottom:4px;border-bottom:1px solid rgba(120,200,255,.15)}.hint-step-icon{display:inline-flex;align-items:center;color:#ffd07a;line-height:0}.hint-step-icon svg{display:block}.hint-icon-mobile{display:none}.hint-icon-pc{display:inline-flex}@media(hover:none)and (pointer:coarse){.hint-icon-pc{display:none}.hint-icon-mobile{display:inline-flex}}html.is-touch .hint-icon-pc{display:none}html.is-touch .hint-icon-mobile{display:inline-flex}.hint-step-title{font-size:19px;font-weight:700;letter-spacing:.06em;color:#ffe6a0;flex:1}.hint-step-num{font-size:13px;font-weight:700;letter-spacing:.08em;color:#cfe0ff8c;font-variant-numeric:tabular-nums}.hint-row{display:flex;gap:8px;align-items:flex-start;font-size:16px;line-height:1.55;color:#cfe0fff2}.hint-row-text{margin:0;flex:1}.hint-row-text p{margin:0 0 4px}.hint-row-text p:last-child{margin-bottom:0}@media(hover:none)and (pointer:coarse){.hint-row{font-size:14px;line-height:1.5}.hint-step-title{font-size:17px}}html.is-touch .hint-row{font-size:14px;line-height:1.5}html.is-touch .hint-step-title{font-size:17px}.hint-row--mobile{display:none}@media(hover:none)and (pointer:coarse){.hint-row--pc{display:none}.hint-row--mobile{display:flex}}html.is-touch .hint-row--pc{display:none}html.is-touch .hint-row--mobile{display:flex}.hint-step-indicator-slot{position:relative;width:36px;height:24px;flex-shrink:0}.hint-step-num,.hint-step-check{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.hint-step-num{transition:opacity .2s ease}.hint-step-check{color:#6ee48b;opacity:0;transform:scale(.6);transition:opacity .26s ease,transform .32s cubic-bezier(.16,1.3,.4,1)}.hint-step.is-done .hint-step-check{opacity:1;transform:scale(1)}.hint-step.is-done .hint-step-num{opacity:0}.hint-spectator{display:none;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#ff8a8a;text-shadow:0 1px 0 rgba(0,0,0,.45);padding:7px 14px;border-radius:999px;background:#280c16b8;border:1px solid rgba(255,85,119,.45)}#hint.is-spectator .hint-card{display:none}#hint.is-spectator .hint-spectator{display:inline-flex;align-items:center}.touch-icon{display:inline-flex;align-items:center;line-height:0}.touch-icon svg{display:block}.joystick{position:fixed;left:0;top:0;width:84px;height:84px;margin-left:-42px;margin-top:-42px;border-radius:50%;background:#14141c52;border:2px solid rgba(255,255,255,.18);box-shadow:0 0 18px #00000059;pointer-events:none;z-index:25;opacity:0;transition:opacity .14s ease-out;display:none}.joystick.active{opacity:1}.joystick-nub{position:absolute;left:50%;top:50%;width:40px;height:40px;margin-left:-20px;margin-top:-20px;border-radius:50%;background:#fff9;box-shadow:0 0 12px #00000059;transform:translate(0);pointer-events:none}html.is-touch .joystick{display:block}@media(hover:none)and (pointer:coarse){.joystick{display:block}}.rally-btn{position:fixed;left:50%;bottom:104px;transform:translate(-50%);width:72px;height:72px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:#14141c94;color:#e0e0e8;display:none;align-items:center;justify-content:center;flex-direction:column;gap:2px;padding:0;cursor:pointer;z-index:25;-webkit-tap-highlight-color:transparent;user-select:none;touch-action:manipulation;transition:background .12s ease-out,transform 80ms ease-out}.rally-btn svg{display:block}.rally-btn-label{font-size:10px;line-height:1;font-weight:600;letter-spacing:.4px}.rally-btn.active{background:#50c878e0;border-color:#fff9;color:#0a140a}.rally-btn:active{transform:translate(-50%) scale(.94)}.rally-btn.rally-btn--custom:active{transform:scale(.94)}html.is-touch .rally-btn:not(.hidden){display:flex}@media(hover:none)and (pointer:coarse){.rally-btn:not(.hidden){display:flex}}@media(max-width:820px){.panel{min-width:0;width:min(420px,calc(100vw - 32px));padding:22px 20px}.title-logo{width:min(260px,70%)}.panel button{padding:12px 26px;font-size:20px}.settings-fab{left:12px;bottom:12px;padding:8px 10px}.records-fab{left:12px;bottom:78px;padding:8px 10px}.tutorial-fab{left:12px;bottom:144px;padding:8px 10px}.achievements-fab{left:12px;bottom:210px;padding:8px 10px}.codex-fab{left:12px;bottom:276px;padding:8px 10px}.settings-fab,.records-fab,.tutorial-fab,.codex-fab,.achievements-fab{min-width:92px}.settings-popover{width:min(480px,calc(100vw - 24px))}#stats{width:min(calc(100vw - 220px),360px);left:50%;bottom:12px;transform:translate(-50%)}#leaderboard{width:200px;right:10px;top:10px;font-size:16px;padding:8px 10px}#leaderboard h3{font-size:15px}#specials{width:210px;right:10px;bottom:10px;font-size:16px;padding:8px 10px}#specials h3{font-size:15px}#hint{font-size:16px;padding:4px 8px;top:10px;white-space:nowrap}}@media(max-width:520px){canvas#game{cursor:default}.overlay{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}.panel h1{font-size:30px;letter-spacing:1px}.panel{padding:8px 16px 16px}.title-logo{margin-bottom:4px}.panel .sub{font-size:19px}.panel .sub.small{font-size:16px}.panel>.sub.lore{font-size:14px}.panel input{font-size:18px;padding:9px 10px;margin:12px 0 6px}.panel button{padding:9px 14px;font-size:18px}.tutorial-fab,.records-fab,.codex-fab,.settings-fab,.achievements-fab{position:fixed;bottom:max(10px,env(safe-area-inset-bottom,10px));padding:6px;z-index:22}.tutorial-fab{left:10%;right:auto;transform:translate(-50%)}.records-fab{left:30%;right:auto;transform:translate(-50%)}.achievements-fab{left:50%;right:auto;transform:translate(-50%)}.codex-fab{display:flex;flex-direction:column;align-items:center;gap:4px;left:70%;right:auto;transform:translate(-50%);background:var(--panel-strong);color:var(--accent-strong);border:1px solid var(--panel-border);border-radius:14px;cursor:pointer;box-shadow:var(--panel-shadow)}.settings-fab{left:90%;right:auto;transform:translate(-50%)}.settings-fab,.records-fab,.tutorial-fab,.codex-fab,.achievements-fab{min-width:64px;box-sizing:border-box}.tutorial-fab:hover,.tutorial-fab:active,.records-fab:hover,.records-fab:active,.achievements-fab:hover,.achievements-fab:active,.codex-fab:hover,.codex-fab:active,.settings-fab:hover,.settings-fab:active{transform:translate(-50%) translateY(-2px)}.panel>#codex{display:none}.codex-modal-sheet{padding:14px 14px 12px;width:min(460px,calc(100vw - 20px));height:min(745px,90%)}.codex-modal-sheet .codex-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-popover{width:min(420px,calc(100vw - 20px))}#stats{width:calc(100vw - 20px);left:50%;bottom:max(16px,calc(env(safe-area-inset-bottom,0px) + 14px));transform:translate(-50%)}.bar{height:19px;border-radius:9px}.bar span{font-size:15px}#meta{font-size:16px}#leaderboard{width:160px;right:8px;top:8px;padding:6px 8px;font-size:13px;background:#1014280a;border-color:#30d5ff24;backdrop-filter:none;-webkit-backdrop-filter:none}#leaderboard h3{font-size:13px}#leaderboard:not(.expanded) #leaderList li:nth-child(n+4){display:none}#leaderboard.expanded{width:220px;max-width:calc(100vw - 24px);padding:12px 14px;font-size:15px;box-shadow:0 0 0 1px #30d5ff73;background:#10142847;backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px)}#leaderboard.expanded h3{font-size:13px;margin-bottom:4px}#leaderboard.expanded #leaderList li{padding:6px 0}#specials{display:flex;flex-direction:row;align-items:center;left:10px;right:10px;bottom:92px;width:auto;max-height:none;padding:4px 6px;font-size:11px;border-radius:8px}#specials h3{display:none}#specialList{display:flex;flex-direction:row;flex-wrap:nowrap;gap:4px;align-items:center;width:100%;min-height:34px;overflow-x:auto;overflow-y:hidden}#specialList li{flex:0 0 auto;position:relative;width:32px;height:32px;margin:0;padding:0;border-radius:6px;background:#0006;overflow:hidden}#specialList li+li{margin-top:0}#specialList .special-header{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:0;margin:0}#specialList .special-swatch{display:none}#specialList .special-icon{display:flex;width:24px;height:24px;align-items:center;justify-content:center;flex:0 0 auto}#specialList .special-icon svg{width:100%;height:100%;display:block}#specialList .special-name,#specialList .special-hp-text{display:none}#specialList .special-bar{position:absolute;left:3px;right:3px;bottom:3px;height:3px;margin-top:0;border-radius:2px;background:#ffffff2e}#specialList .special-cd{width:32px;height:32px;margin-top:0;padding:0;border-radius:6px;background:#0000008c;opacity:.9;overflow:hidden;display:block}#specialList .special-cd .special-cd-swatch{display:none}#specialList .special-cd .special-cd-icon{display:flex;position:absolute;top:2px;left:50%;transform:translate(-50%);width:20px;height:20px;align-items:center;justify-content:center;opacity:.55}#specialList .special-cd .special-cd-icon svg{width:100%;height:100%;display:block}#specialList .special-cd .special-cd-label{display:none}#specialList .special-cd .special-cd-time{position:absolute;left:0;right:0;bottom:3px;text-align:center;font-size:10px;line-height:1;color:#fff}#specialList .special-cd .special-cd-queue{position:absolute;top:1px;right:3px;font-size:9px;line-height:1;opacity:.9;color:#cfe0ff}#hint{top:110px;font-size:15px;padding:3px 7px}}@media(max-width:520px)and (max-height:720px)and (orientation:portrait){.panel{padding:6px 14px 12px}.title-logo{width:min(220px,60%);margin-bottom:2px}.panel>.sub{font-size:17px;margin:2px 0}.panel>.sub.lore{display:none}.panel input{margin:8px 0 4px;padding:8px 12px;font-size:17px}.mode-picker{margin:6px 0 4px;gap:6px}.mode-picker .mode-btn{padding:8px 8px 6px;gap:2px}.mode-picker .mode-btn__icon{width:38px;height:24px}.mode-picker .mode-btn__title{font-size:14px}.mode-picker .mode-btn__desc{font-size:10px}.panel button{padding:8px 14px;font-size:17px}}@media(max-width:520px)and (max-height:620px)and (orientation:portrait){.title-logo{width:min(180px,52%)}.panel>.sub{display:none}.panel input{margin:4px 0 2px;padding:7px 10px;font-size:16px}.mode-picker{margin:4px 0 2px;gap:4px}.mode-picker .mode-btn{padding:6px 6px 4px;min-width:100px}.mode-picker .mode-btn__icon{width:32px;height:20px}.mode-picker .mode-btn__title{font-size:13px}.mode-picker .mode-btn__desc{font-size:10px}.panel button{padding:6px 12px;font-size:16px}}@media(max-width:520px)and (orientation:portrait){#specials{flex-direction:column;align-items:stretch;inset:130px auto auto 10px;min-height:90px;max-height:300px;width:46px;padding:4px;gap:4px;background:#10142847;border-color:#30d5ff24}#specialList{flex-direction:column;flex-wrap:nowrap;align-items:center;gap:4px;width:100%;min-height:0;overflow-x:hidden;overflow-y:auto}#specialList li,#specialList .special-cd{width:38px;height:38px;border-radius:8px;background:#00000038}#specialList .special-icon{width:24px;height:24px}#specialList .special-bar{left:3px;right:3px;bottom:3px;height:5px;border-radius:2px;background:#0000008c;border:1px solid rgba(255,255,255,.18)}#specialList .special-cd{background:#00000047;border-radius:50%;overflow:visible}#specialList .special-cd .special-cd-fill{inset:0;width:auto!important;background:conic-gradient(from -90deg,var(--cd-color, #ffffff) var(--cd-progress, 0%),rgba(255,255,255,.08) var(--cd-progress, 0%))!important;border-radius:50%;opacity:.32}#specialList .special-cd .special-cd-icon{position:absolute;display:flex;width:auto;height:auto;align-items:center;justify-content:center;transform:none;inset:0;opacity:1}#specialList .special-cd .special-cd-icon svg{width:24px;height:24px}#specialList .special-cd .special-cd-time{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#fff;text-shadow:0 0 3px rgba(0,0,0,.85),0 1px 1px rgba(0,0,0,.7)}#specialList .special-cd .special-cd-queue{position:absolute;top:0;right:0;color:#fff;font-size:13px;font-weight:800;line-height:1;text-shadow:0 0 3px rgba(0,0,0,.85),0 1px 1px rgba(0,0,0,.7);z-index:2;opacity:1}#specialList .special-cd .special-cd-queue-x{font-size:.78em;margin-right:.5px}}.mode-picker-host{display:none}@media(max-height:500px)and (orientation:landscape){.panel{overflow-y:auto;width:min(360px,calc(100vw - 280px));padding:14px 20px 12px}.title-logo{width:min(200px,60%);margin-bottom:6px}.panel input{margin:8px 0 6px;padding:8px 12px}.panel>#codex{display:none}.mode-picker-host{display:block;position:absolute;top:0;bottom:0;left:calc(50% + min(180px,calc(50vw - 140px)) + 12px);width:min(220px,calc(50vw - min(180px,calc(50vw - 140px)) - 24px));padding:20px 0;overflow-y:auto;z-index:21;scroll-padding-block:14px}.mode-picker-host .mode-picker{flex-direction:column;flex-wrap:nowrap;gap:8px;margin:0}.mode-picker-host .mode-picker .mode-btn{flex:0 0 auto;min-width:0;width:100%}.settings-fab,.records-fab,.tutorial-fab,.codex-fab,.achievements-fab{position:absolute;left:12px;padding:8px 10px;min-width:92px;box-sizing:border-box;z-index:21}.settings-fab{right:auto;bottom:12px}.records-fab{bottom:78px}.tutorial-fab{bottom:144px}.achievements-fab{bottom:210px}.codex-fab{display:flex;flex-direction:column;align-items:center;gap:4px;bottom:276px;background:var(--panel-strong);color:var(--accent-strong);border:1px solid var(--panel-border);border-radius:14px;cursor:pointer;box-shadow:var(--panel-shadow)}.codex-modal-sheet{width:min(760px,calc(100vw - 24px));max-height:calc(100vh - 16px);display:flex;flex-direction:column;overflow:hidden}.codex-modal-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.codex-modal-body>.codex{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:auto minmax(0,1fr);grid-template-areas:"title  title" "grid   detail";column-gap:14px;row-gap:4px;margin-top:0;padding-top:0;border-top:none}.codex-modal-body>.codex>h3{grid-area:title;margin-bottom:4px}.codex-modal-body>.codex>.codex-grid-wrap{grid-area:grid;margin:0;min-height:0;overflow-y:auto;overflow-x:hidden}.codex-modal-body>.codex>.codex-detail{grid-area:detail;margin:0;min-height:0;max-height:none;height:auto;align-self:stretch;overflow-y:auto}.codex-modal-body .codex-empty-cue{animation:codex-empty-cue-pulse-x 1.8s ease-in-out infinite}.codex-modal-body .codex-empty-cue svg{transform:rotate(-90deg)}.codex-modal-sheet .codex-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-popover{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(320px,calc(100vw - 24px));max-height:calc(100vh - 24px);box-shadow:var(--panel-shadow),0 0 0 9999px #0f172b6b;overflow:hidden}.settings-popover.in-pause{top:auto;transform:none;max-height:none}.pause-panel{max-height:calc(100vh - 12px);overflow-y:auto;padding:14px 22px 12px;gap:8px;width:min(360px,calc(100vw - 24px))}.pause-panel h2{font-size:18px;margin:0 0 2px}.pause-panel h2:after{margin-top:4px;width:40px;height:2px}.pause-panel button{padding:9px 18px;font-size:14px}.pause-panel.settings-mode #pauseSettingsBack{margin-top:2px}#leaderboard:not(.expanded) #leaderList li:nth-child(n+4){display:none}#leaderboard.expanded{width:200px;max-width:calc(100vw - 24px);padding:10px 12px;font-size:14px;box-shadow:0 0 0 1px #30d5ff73;background:#10142847;backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px)}#leaderboard.expanded h3{font-size:13px;margin-bottom:3px}#leaderboard.expanded #leaderList li{padding:5px 0}#leaderboard{width:160px;right:8px;top:8px;padding:6px 8px;font-size:13px;background:#1014280a;border-color:#30d5ff24;backdrop-filter:none;-webkit-backdrop-filter:none}#leaderboard h3{font-size:13px}.ping-row{font-size:12px}#stats{width:240px;left:50%;bottom:12px;transform:translate(-50%)}.bar{height:16px;margin-bottom:4px}.bar span{font-size:12px}#meta{font-size:13px;margin-bottom:2px}#specials{width:156px;right:12px;bottom:12px;max-height:calc(50vh - 52px);padding:6px 8px;font-size:13px;background:#10142847;border-color:#30d5ff24}#specials h3{font-size:12px;margin-bottom:4px}#specialList li{padding:3px 10px}#specialList .special-header{gap:6px;margin-bottom:2px}#specialList .special-icon,#specialList .special-cd-icon{width:22px;height:22px}#specialList .special-bar{height:5px;border-radius:2px}#specialList .special-name,#specialList .special-cd-label{display:none}.special-cd{gap:6px;padding:3px 10px;margin-top:3px;border-radius:5px}.rally-btn{inset:50% 14px auto auto;transform:translateY(-50%);width:64px;height:64px}.rally-btn:active{transform:translateY(-50%) scale(.94)}.rally-btn.rally-btn--custom:active{transform:scale(.94)}}.mode-picker{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 6px;width:100%;justify-content:stretch}.mode-picker .mode-btn{flex:1 1 0;min-width:120px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 10px 10px;margin-top:0;background:var(--panel-strong);color:var(--text);border:2px solid var(--panel-border);border-radius:14px;font-size:14px;font-weight:700;letter-spacing:0;cursor:pointer;box-shadow:0 2px 6px #0066ff14;opacity:.7;transition:transform .12s ease,box-shadow .14s ease,border-color .14s,opacity .14s}.mode-picker .mode-btn:hover{opacity:1;transform:translateY(-1px);box-shadow:0 6px 14px #0066ff29}.mode-picker .mode-btn.active{opacity:1;transform:translateY(-1px)}.mode-picker .mode-btn.active[data-mode=endless]{border-color:var(--accent);box-shadow:0 6px 16px #30d5ff52,0 0 0 3px #30d5ff2e}.mode-picker .mode-btn.active[data-mode=endless] .mode-btn__icon{color:var(--accent)}.mode-picker .mode-btn.active[data-mode=br]{border-color:var(--cta);box-shadow:0 6px 16px #ff69b452,0 0 0 3px #ff69b42e}.mode-picker .mode-btn.active[data-mode=br] .mode-btn__icon{color:var(--cta)}.mode-picker .mode-btn.active[data-mode=custom]{border-color:#f5b400;box-shadow:0 6px 16px #f5b40052,0 0 0 3px #f5b40033}.mode-picker .mode-btn.active[data-mode=custom] .mode-btn__icon{color:#f5b400}.mode-picker .mode-btn.active[data-mode=hive]{border-color:#a855f7;box-shadow:0 6px 16px #a855f752,0 0 0 3px #a855f733}.mode-picker .mode-btn.active[data-mode=hive] .mode-btn__icon{color:#a855f7}.mode-picker .mode-btn__icon{width:44px;height:28px;color:var(--muted);transition:color .14s;display:flex;align-items:center;justify-content:center}.mode-picker .mode-btn__icon svg{width:100%;height:100%;display:block}.mode-picker .mode-btn__title{font-size:15px;font-weight:700;line-height:1.1}.mode-picker .mode-btn__desc{font-size:11px;font-weight:500;color:var(--muted);line-height:1.2}.mode-picker .mode-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.br-lobby-overlay{position:fixed;inset:0;z-index:24;background:radial-gradient(circle at 50% 40%,#280a14c7,#08080eeb);display:flex;align-items:center;justify-content:center;pointer-events:auto}.br-lobby-overlay.hidden,.br-lobby-overlay.is-countdown .br-lobby-panel{display:none}.br-lobby-panel{background:#0e0e16eb;border:1px solid #3a3a4c;border-radius:12px;padding:28px 36px;text-align:center;min-width:280px;box-shadow:0 8px 30px #00000073}.br-lobby-panel h2{margin:0 0 8px;color:#ff7a93}.br-lobby-count{font-size:28px;font-weight:700;color:#fff;margin:12px 0;letter-spacing:1px}.countdown-group{position:absolute;top:50%;left:50%;transform:translate(-50%,-55%);display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;user-select:none;z-index:1}.countdown-group.hidden{display:none}.countdown-mode-label{font-size:26px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;opacity:.92;text-shadow:0 2px 10px rgba(0,0,0,.55);animation:countdownLabelFadeIn .36s cubic-bezier(.16,.84,.3,1) both}.countdown-mode-label.br{color:#ffd0dc}.countdown-mode-label.hive{color:#e2c8ff}@keyframes countdownLabelFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:.92;transform:translateY(0)}}@media(max-width:540px){.countdown-mode-label{font-size:18px;letter-spacing:.14em}}.br-countdown-number{font-size:220px;font-weight:900;color:#ff7a93;text-shadow:0 0 18px rgba(255,122,147,.6),0 0 48px rgba(255,122,147,.35),0 4px 18px rgba(0,0,0,.6);letter-spacing:.04em;font-variant-numeric:tabular-nums;pointer-events:none;opacity:0;user-select:none;line-height:1}.br-countdown-number.hidden{display:none}.br-countdown-number.is-tick{animation:brCountdownPulse 1s cubic-bezier(.16,.84,.3,1) forwards}@keyframes brCountdownPulse{0%{opacity:0;transform:scale(.55)}20%{opacity:1;transform:scale(1.15)}45%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@media(max-width:540px){.br-countdown-number{font-size:140px}}.custom-overlay{position:fixed;inset:0;z-index:25;background:#000000a6;display:flex;align-items:center;justify-content:center;pointer-events:auto;padding:20px}.custom-overlay.hidden{display:none}#roomLobbyOverlay.custom-overlay{background:var(--bg);overflow:hidden;isolation:isolate}#roomLobbyOverlay.custom-overlay:before{content:"";position:absolute;inset:-8%;z-index:-2;background:url(./custom-background-DEk1mFxu.png) center / cover no-repeat;animation:lobby-bg-drift 55s linear infinite;animation-delay:-14s;will-change:transform}#roomLobbyOverlay.custom-overlay:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(#f8fdff8c,#f8fdff8c);pointer-events:none}.custom-panel{background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:18px;padding:28px 32px;text-align:center;width:100%;max-width:380px;box-shadow:var(--panel-shadow);color:var(--text);display:flex;flex-direction:column;gap:14px}.custom-panel h2{margin:0;color:var(--accent-strong);font-size:26px}.custom-panel .sub{margin:0;color:var(--muted);font-size:15px}.custom-panel input[type=text]{width:100%;padding:14px 18px;background:var(--panel-strong);color:var(--text);border:2px solid var(--panel-border);border-radius:999px;font-size:24px;font-weight:700;letter-spacing:6px;text-align:center;font-variant-numeric:tabular-nums;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.custom-panel input[type=text]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #30d5ff2e}.custom-panel button{padding:14px 24px;font-size:19px;font-weight:700;letter-spacing:.5px;border:none;border-radius:999px;cursor:pointer;width:100%;word-break:keep-all;background:linear-gradient(180deg,#ff87c4,var(--cta));color:#fff;box-shadow:0 6px 18px #ff69b459,inset 0 -3px #00000014;transition:transform 80ms ease,box-shadow .12s ease,filter .12s ease}.custom-panel button:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.custom-panel button:active:not(:disabled){transform:translateY(1px);box-shadow:0 3px 10px #ff69b44d,inset 0 -2px #00000014}.custom-panel button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.3)}.custom-panel button.ghost{background:transparent;color:var(--accent-strong);border:2px solid var(--accent-strong);font-weight:700;box-shadow:0 4px 12px #0066ff26}.custom-panel button.ghost:hover:not(:disabled){background:#0066ff14}.custom-panel button.ghost:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 6px #0066ff2e}.custom-actions{display:flex;flex-direction:column;gap:10px}.custom-error{margin:0;color:var(--cta);font-size:14px;font-weight:700;min-height:1em}.custom-error.hidden{display:none}.room-panel{max-width:480px;text-align:left;gap:16px}.room-panel h2{text-align:center}.room-panel>.sub{text-align:center;font-size:15px;color:var(--muted)}.room-code{font-size:22px;font-weight:800;color:var(--accent-strong);letter-spacing:5px;font-variant-numeric:tabular-nums;margin-left:8px}.room-section{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:#0066ff0a;border:1px solid var(--panel-border);border-radius:14px}.room-section-label{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px}.room-section-header{display:flex;align-items:center;justify-content:space-between}.room-mode-picker{display:flex;gap:8px}.custom-panel .room-code-row{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.custom-panel .room-code-icon{width:28px;height:28px;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;background:#0066ff0f;border:1px solid var(--panel-border);border-radius:8px;color:var(--accent-strong);cursor:pointer;letter-spacing:0;box-shadow:none;font-size:14px;transition:background .12s,border-color .12s,color .12s,transform 80ms}.custom-panel .room-code-icon:hover:not(:disabled){background:#0066ff24;border-color:var(--accent-strong);transform:none;filter:none}.custom-panel .room-code-icon:active:not(:disabled){transform:translateY(1px);box-shadow:none}.custom-panel .room-code-icon.is-flash{background:#00c87824;border-color:#00a06499;color:#008c52}.toast-stack{position:fixed;left:50%;bottom:80px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:60;pointer-events:none}.toast-stack--admin{top:56%;bottom:auto;transform:translate(-50%,-50%)}.toast{background:#103060eb;color:#fff;font-size:14px;font-weight:600;letter-spacing:.2px;padding:10px 18px;border-radius:999px;box-shadow:0 6px 18px #0000002e;opacity:0;transform:translateY(8px);animation:toastIn .16s ease-out forwards;max-width:min(420px,88vw);text-align:center}.toast.is-leaving{animation:toastOut .2s ease-in forwards}.toast-admin{background:#080e1c61;border:none;border-radius:14px;padding:2px 32px;font-size:36px;font-weight:800;letter-spacing:.3px;line-height:1.2;max-width:min(720px,94vw);box-shadow:0 12px 36px #00000059;text-shadow:0 2px 8px rgba(0,0,0,.7),0 0 2px rgba(0,0,0,.9)}.toast-admin-info{color:#6fdcff}.toast-admin-warn{color:#ffc14a}.toast-admin-critical{color:#ff6b78}@keyframes toastIn{to{opacity:1;transform:translateY(0)}}@keyframes toastOut{to{opacity:0;transform:translateY(-6px)}}.custom-panel .room-mode-btn{flex:1;padding:10px 12px;background:#0066ff0f;border:2px dashed rgba(0,102,255,.35);border-radius:999px;color:#1030608c;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;width:auto;box-shadow:none;letter-spacing:0;opacity:.85;transition:border-color .14s,color .14s,background .14s,box-shadow .14s,opacity .14s,transform 80ms}.custom-panel .room-mode-btn:hover:not(:disabled):not(.active){border-color:var(--accent-strong);color:var(--accent-strong);opacity:1}.custom-panel .room-mode-btn.active{border:2px solid var(--accent-strong);border-style:solid;color:#fff;background:linear-gradient(180deg,#4f9bff,var(--accent-strong));box-shadow:0 4px 12px #0066ff40;opacity:1}.custom-panel .room-mode-btn.active[data-room-mode=endless]{border-color:var(--accent);background:linear-gradient(180deg,#6ee5ff,var(--accent));box-shadow:0 4px 12px #30d5ff52}.custom-panel .room-mode-btn.active[data-room-mode=br]{border-color:var(--cta);background:linear-gradient(180deg,#ff87c4,var(--cta));box-shadow:0 4px 12px #ff69b452}.custom-panel .room-mode-btn.active[data-room-mode=hive]{border-color:#8b5cf6;background:linear-gradient(180deg,#b794ff,#7c3aed);box-shadow:0 4px 12px #8b5cf659}.custom-panel .room-mode-btn:disabled{opacity:.45;cursor:not-allowed}.room-add-bot-row{display:flex;align-items:center;gap:10px;margin-top:10px;padding:8px 6px 4px;border-top:1px dashed rgba(0,102,255,.18)}.room-add-bot-row.hidden{display:none}.room-add-bot-label{font-size:13px;font-weight:700;color:#103060b3;flex:0 0 auto}.room-add-bot-buttons{display:flex;gap:6px;flex:1 1 auto;justify-content:flex-end}.custom-panel .room-add-bot-btn{padding:7px 12px;background:#0066ff14;border:2px dashed rgba(0,102,255,.4);border-radius:999px;color:var(--accent-strong);font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;width:auto;box-shadow:none;letter-spacing:0;transition:border-color .14s,color .14s,background .14s,transform 80ms}.custom-panel .room-add-bot-btn:before{content:"+ ";opacity:.8}.custom-panel .room-add-bot-btn:hover:not(:disabled){background:#0066ff2e;border-color:var(--accent-strong);transform:translateY(-1px)}.custom-panel .room-add-bot-btn:active:not(:disabled){transform:translateY(0)}.custom-panel .room-add-bot-btn:disabled{opacity:.4;cursor:not-allowed}.room-players-count{font-size:13px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.room-player-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto}.room-player-list li{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:12px;font-size:15px;font-weight:600;color:var(--text)}.room-player-list li.is-inactive{opacity:.55}.room-player-list li.is-spectator{border-style:dashed;color:var(--muted)}:is(.room-player-list,.room-hive-team-list) .room-player-name-wrap{flex:1;display:flex;align-items:center;gap:6px;min-width:0}:is(.room-player-list,.room-hive-team-list) .room-player-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}:is(.room-player-list,.room-hive-team-list) .room-player-name-edit{flex:0 0 auto;width:22px;height:22px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:var(--muted);box-shadow:none;cursor:pointer;font-family:inherit;letter-spacing:0;transition:color .14s,background .14s}:is(.room-player-list,.room-hive-team-list) .room-player-name-edit:hover,:is(.room-player-list,.room-hive-team-list) .room-player-name-edit:focus-visible{color:var(--accent-strong);background:#0066ff1a;outline:none}:is(.room-player-list,.room-hive-team-list) .room-player-name-input{flex:1;min-width:0;height:24px;font:inherit;font-size:13px;line-height:1.2;color:var(--text);background:var(--panel-strong, #fff);border:1.5px solid var(--accent-strong);border-radius:6px;padding:0 8px;box-shadow:none;outline:none}:is(.room-player-list,.room-hive-team-list) .room-player-name-save{flex:0 0 auto;width:auto;height:24px;padding:0 10px;background:var(--accent-strong);border:none;border-radius:6px;color:#fff;font-family:inherit;font-size:12px;font-weight:700;letter-spacing:0;line-height:1;box-shadow:none;cursor:pointer;transition:background .14s,filter .14s}:is(.room-player-list,.room-hive-team-list) .room-player-name-save:hover,:is(.room-player-list,.room-hive-team-list) .room-player-name-save:focus-visible{filter:brightness(1.08);outline:none}:is(.room-player-list,.room-hive-team-list) .room-player-tag{font-size:11px;font-weight:800;padding:3px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.6px}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-host{background:#ffa50029;color:#d97800}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-bot{background:#30d5ff2e;color:var(--accent-strong)}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-bot-diff{text-transform:none;letter-spacing:0;font-weight:700}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-bot-diff-easy{background:#22c55e29;color:#0f8a4a}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-bot-diff-normal{background:#f59e0b2e;color:#b45309}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-bot-diff-hard{background:#ef44442e;color:#b91c1c}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-spectator{background:#6b7fa024;color:var(--muted)}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-inactive{background:#ff69b424;color:var(--cta-dark)}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-reconnecting{background:#d978002e;color:#b15a00;text-transform:none;letter-spacing:0;font-weight:700}:is(.room-player-list,.room-hive-team-list) .room-player-tag.is-in-game{background:#10b9812e;color:#047857;text-transform:none;letter-spacing:0;font-weight:700}.room-player-list li.is-disconnected{opacity:.7;border-style:dashed;border-color:#d9780073}:is(.room-player-list,.room-hive-team-list) .room-player-action{width:auto;background:transparent;border:1.5px solid var(--panel-border);color:var(--accent-strong);font-size:12px;font-weight:700;letter-spacing:0;padding:5px 10px;border-radius:999px;box-shadow:none;cursor:pointer;font-family:inherit;transition:border-color .14s,color .14s,background .14s}:is(.room-player-list,.room-hive-team-list) .room-player-action:hover:not(:disabled){border-color:var(--accent-strong);background:#0066ff14}:is(.room-player-list,.room-hive-team-list) .room-player-action:disabled{opacity:.4;cursor:not-allowed}.room-player-list .room-player-join{list-style:none;margin-top:6px;padding:0;background:transparent}.room-player-list .room-player-join-btn{width:100%;display:flex;align-items:center;justify-content:center;height:44px;padding:0;font-size:24px;font-weight:700;line-height:1;color:var(--accent-strong);background:transparent;border:1.5px dashed rgba(0,102,255,.45);border-radius:12px;box-shadow:none;cursor:pointer;font-family:inherit;transition:border-color .14s,color .14s,background .14s}.room-player-list .room-player-join-btn:hover:not(:disabled){border-color:var(--accent-strong);background:#0066ff14}.room-player-list .room-player-join-btn:disabled{opacity:.4;cursor:not-allowed}.room-player-list .room-player-join-btn.is-bench{color:#e53e3e;border-color:#e53e3e73}.room-player-list .room-player-join-btn.is-bench:hover:not(:disabled){border-color:#e53e3e;background:#e53e3e14}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-kick{color:var(--cta-dark)}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-kick:hover:not(:disabled){border-color:var(--cta);background:#ff69b414}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-promote{color:var(--accent-strong)}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-promote:hover:not(:disabled){border-color:var(--accent-strong);background:#0066ff14}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-transfer{color:#b15a00}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-transfer:hover:not(:disabled){border-color:#d97800;background:#d978001a}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-move-blue{color:#5b8def}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-move-blue:hover:not(:disabled){border-color:#5b8def;background:#5b8def1a}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-move-red{color:#e05a5a}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-move-red:hover:not(:disabled){border-color:#e05a5a;background:#e05a5a1a}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-move-wait{color:var(--muted)}:is(.room-player-list,.room-hive-team-list) .room-player-action.is-move-wait:hover:not(:disabled){border-color:var(--muted);background:#6b7fa01a}:is(.room-player-list,.room-hive-team-list) .room-player-color{flex:0 0 auto;width:14px;height:14px;border-radius:50%;background:var(--panel-border);border:1px solid rgba(0,0,0,.15);box-shadow:inset 0 0 0 1px #ffffff4d}:is(.room-player-list,.room-hive-team-list) .room-player-color.is-clickable{cursor:pointer;transition:transform .12s,box-shadow .12s}:is(.room-player-list,.room-hive-team-list) .room-player-color.is-clickable:hover{transform:scale(1.15);box-shadow:0 0 0 2px #ffffff8c,inset 0 0 0 1px #ffffff4d}.room-color-popover{position:fixed;z-index:1200;display:flex;flex-wrap:wrap;gap:8px;padding:10px;max-width:220px;background:var(--panel-strong, #fff);border:1px solid var(--panel-border, rgba(0, 0, 0, .15));border-radius:10px;box-shadow:0 8px 24px #0000002e,0 2px 6px #0000001a}.room-color-popover.hidden{display:none}.room-color-popover:before{content:"";position:absolute;top:-6px;left:16px;width:12px;height:12px;background:inherit;border-left:1px solid var(--panel-border, rgba(0, 0, 0, .15));border-top:1px solid var(--panel-border, rgba(0, 0, 0, .15));transform:rotate(45deg)}.custom-panel .room-color-swatch{width:28px;height:28px;min-width:0;flex:0 0 auto;border-radius:50%;border:2px solid transparent;padding:0;margin:0;letter-spacing:0;background-image:none;box-shadow:0 0 0 1px #00000026,inset 0 0 0 1px #ffffff40;cursor:pointer;font:inherit;transition:transform .14s,border-color .14s,box-shadow .14s}.custom-panel .room-color-swatch:hover:not(:disabled){transform:scale(1.1);border-color:#ffffff8c;box-shadow:0 0 0 1px #0003,inset 0 0 0 1px #ffffff59}.custom-panel .room-color-swatch.is-mine{border-color:var(--text);box-shadow:0 0 0 1px var(--text),inset 0 0 0 1px #fff6;transform:scale(1.05)}.custom-panel .room-color-swatch.is-taken{opacity:.28;cursor:not-allowed;position:relative}.custom-panel .room-color-swatch.is-taken:after{content:"";position:absolute;inset:4px;border-radius:50%;background:linear-gradient(135deg,transparent 45%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.55) 55%,transparent 55%)}.custom-panel .room-color-swatch:disabled:not(.is-taken){opacity:.45;cursor:not-allowed}.room-hive-teams{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.room-section.hidden,.room-hive-teams.hidden{display:none!important}.room-hive-team{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;background:var(--panel, rgba(255, 255, 255, .6));border:1px solid var(--panel-border)}.room-hive-team-blue{border-color:#5b8def73;background:#5b8def14}.room-hive-team-red{border-color:#e05a5a73;background:#e05a5a14}.room-hive-team-header{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.room-hive-team-blue .room-hive-team-label{color:#2f5dd6}.room-hive-team-red .room-hive-team-label{color:#c62a2a}.room-hive-team-count{color:var(--muted);font-size:12px;font-weight:600}.room-hive-team-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;min-height:28px}.room-hive-team-list li{list-style:none;display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:10px;font-size:13px;font-weight:600;color:var(--text)}.room-hive-team-list:empty:before{content:"—";color:var(--muted);text-align:center;font-size:12px;padding:6px 0}.room-hive-team-add{display:flex;gap:6px;margin-top:4px;align-items:center}.custom-panel .room-hive-add-bot{flex:1 1 auto;width:100%;background:transparent;border:1.5px dashed var(--accent-strong, rgba(0, 102, 255, .45));color:var(--accent-strong);border-radius:8px;padding:4px 10px;font-size:12px;font-weight:700;font-family:inherit;letter-spacing:0;box-shadow:none;cursor:pointer;height:30px;transition:border-color .14s,color .14s,background .14s}.custom-panel .room-hive-add-bot:hover:not(:disabled){border-style:solid;background:#0066ff14}.custom-panel .room-hive-add-bot:disabled{opacity:.4;cursor:not-allowed}.room-hive-team-blue .room-hive-add-bot{border-color:#5b8def8c;color:#5b8def}.room-hive-team-blue .room-hive-add-bot:hover:not(:disabled){background:#5b8def1a}.room-hive-team-red .room-hive-add-bot{border-color:#e05a5a8c;color:#e05a5a}.room-hive-team-red .room-hive-add-bot:hover:not(:disabled){background:#e05a5a1a}.room-actions{display:flex;flex-direction:column;gap:10px}.room-panel .sub.small{text-align:center;font-size:13px;color:var(--muted);margin:0}@media(max-height:500px)and (orientation:landscape){#roomLobbyOverlay.custom-overlay{padding:8px}#roomLobbyOverlay .custom-panel.room-panel{max-width:min(96vw,720px);max-height:calc(100vh - 16px);padding:14px 22px;gap:10px 18px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:start;align-items:stretch;overflow-y:auto}#roomLobbyOverlay .room-panel>h2,#roomLobbyOverlay .room-panel>.sub.room-code-row,#roomLobbyOverlay .room-panel>.sub.small{grid-column:1 / -1;margin:0}#roomLobbyOverlay .room-panel>h2{font-size:18px}#roomLobbyOverlay .room-panel>.sub.room-code-row{font-size:13px;gap:6px}#roomLobbyOverlay .room-panel>.room-section:nth-of-type(1){grid-column:1;grid-row:3}#roomLobbyOverlay .room-panel>.room-section:nth-of-type(2){grid-column:1;grid-row:4}#roomLobbyOverlay .room-panel>.room-section:nth-of-type(3){grid-column:2;grid-row:3}#roomLobbyOverlay .room-panel>#roomWaitingSection{grid-column:2;grid-row:4}#roomLobbyOverlay .room-panel>.room-actions{grid-column:1 / -1;grid-row:5;flex-direction:row;justify-content:center;gap:12px;margin-top:2px}#roomLobbyOverlay .custom-panel.room-panel .room-actions button{flex:0 1 220px;width:auto;padding:11px 18px;font-size:15px}#roomLobbyOverlay .room-section{padding:10px 12px;gap:6px;border-radius:10px;justify-content:center}#roomLobbyOverlay .room-section-label{font-size:11px;letter-spacing:1px}#roomLobbyOverlay .custom-panel .room-mode-btn{padding:8px 10px;font-size:13px}#roomLobbyOverlay .custom-panel .room-bot-diff-btn{padding:6px 4px;font-size:11px}#roomLobbyOverlay .room-bots-count{font-size:15px;min-width:22px}#roomLobbyOverlay .room-player-list{max-height:28vh;gap:4px}#roomLobbyOverlay .room-player-list li{padding:6px 10px;font-size:13px;gap:6px}#roomLobbyOverlay .room-player-list .room-player-tag,#roomLobbyOverlay .room-player-list .room-player-action{font-size:11px;padding:2px 6px}}.br-hud{position:fixed;top:calc(18px + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:12;text-align:center;pointer-events:none;font-size:18px;text-shadow:0 2px 4px rgba(0,0,0,.85);padding:6px 16px;background:#08102073;border:1px solid rgba(255,255,255,.08);border-radius:14px}.br-phase-line{color:#ff7a93;font-weight:700;letter-spacing:2px;font-size:22px}.br-ring-line{color:#c8c8d8;font-size:16px;margin-top:4px;letter-spacing:.5px}.br-spectator-line{display:none;margin-top:5px;color:#ff7a93;font-size:17px;letter-spacing:2px;font-weight:700;text-transform:uppercase;text-shadow:0 0 6px rgba(255,122,147,.45),0 2px 4px rgba(0,0,0,.85)}.br-spectator-line.is-shown{display:block}.br-ring-line__num.is-final{display:inline-block;vertical-align:middle;color:#ff5269;font-size:1.8em;font-weight:800;letter-spacing:.5px;margin:0 2px;text-shadow:0 0 8px rgba(255,82,105,.7),0 0 18px rgba(255,82,105,.4),0 2px 4px rgba(0,0,0,.85);animation:brRingFinalPulse 1s ease-in-out infinite}@keyframes brRingFinalPulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.br-hud--endless .br-phase-line{color:#30d5ff;text-shadow:0 0 6px rgba(48,213,255,.55),0 2px 4px rgba(0,0,0,.85)}.br-hud--endless .br-ring-line{color:#cfe0ff}.br-hud--regen .br-ring-line{color:#c8f5e2;text-shadow:0 0 8px rgba(140,230,200,.7),0 0 14px rgba(140,230,200,.4),0 2px 4px rgba(0,0,0,.85);animation:regenSurgeHudPulse 1.8s ease-in-out infinite}.br-hud--regen .br-phase-line{color:#a8ecd0;text-shadow:0 0 6px rgba(140,230,200,.55),0 2px 4px rgba(0,0,0,.85)}@keyframes regenSurgeHudPulse{0%,to{text-shadow:0 0 6px rgba(140,230,200,.55),0 0 12px rgba(140,230,200,.3),0 2px 4px rgba(0,0,0,.85)}50%{text-shadow:0 0 12px rgba(160,240,215,.85),0 0 22px rgba(140,230,200,.55),0 2px 4px rgba(0,0,0,.85)}}.br-hud--hive .br-phase-line{color:#c084fc;text-shadow:0 0 6px rgba(192,132,252,.6),0 2px 4px rgba(0,0,0,.85)}.br-hud--hive .br-ring-line{color:#e0d0ff}.br-hud.hidden{display:none}@media(max-width:800px){.br-hud{top:14px;font-size:15px}.br-phase-line{font-size:17px;letter-spacing:1px}.br-ring-line{font-size:13px}}@media(max-width:520px){.br-hud{top:10px}.br-phase-line{font-size:15px}.br-ring-line{font-size:12px;margin-top:2px}}@media(max-height:500px)and (orientation:landscape){.br-hud{top:8px;font-size:11px;display:flex;align-items:baseline;justify-content:center;gap:8px;white-space:nowrap}.br-phase-line{font-size:12px;letter-spacing:.5px;margin:0}.br-ring-line{font-size:11px;margin:0;letter-spacing:0}}.br-alert{position:fixed;top:17vh;left:50%;transform:translate(-50%);z-index:14;pointer-events:none;font-weight:800;font-size:34px;line-height:1.2;letter-spacing:1px;color:#ff355e;background:#08060c8c;border:1px solid rgba(255,53,94,.55);padding:12px 30px;border-radius:14px;white-space:nowrap;text-shadow:0 0 14px rgba(255,53,94,.55),0 2px 6px rgba(0,0,0,.85);box-shadow:0 0 24px #ff355e59,0 8px 28px #0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0}.br-alert.show{animation:brAlertFlash 2.4s cubic-bezier(.2,.9,.3,1) forwards}@keyframes brAlertFlash{0%{opacity:0;transform:translate(-50%) scale(.82)}12%{opacity:1;transform:translate(-50%) scale(1.08)}22%{transform:translate(-50%) scale(1)}78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(1)}}.br-alert.hidden{display:none}@media(max-width:800px){.br-alert{font-size:26px;padding:10px 24px;letter-spacing:.5px}}@media(max-width:520px){.br-alert{top:35vh;font-size:18px;padding:8px 16px;letter-spacing:0}}@media(max-height:500px)and (orientation:landscape){.br-alert{top:27vh;font-size:18px;padding:6px 16px;letter-spacing:0;border-radius:10px}}@media(prefers-reduced-motion:reduce){.br-alert.show{animation:none;opacity:1}}.defender-alert{position:fixed;top:17vh;left:50%;transform:translate(-50%);z-index:14;pointer-events:none;font-weight:800;font-size:30px;line-height:1.2;letter-spacing:1px;color:#ff355e;background:#08060c99;border:1px solid rgba(255,53,94,.55);padding:14px 32px;border-radius:14px;white-space:nowrap;text-align:center;text-shadow:0 0 14px rgba(255,53,94,.55),0 2px 6px rgba(0,0,0,.85);box-shadow:0 0 24px #ff355e66,0 8px 28px #0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0}.defender-alert.show{animation:defenderAlertFlash 2.8s cubic-bezier(.2,.9,.3,1) forwards}@keyframes defenderAlertFlash{0%{opacity:0;transform:translate(-50%) scale(.82)}10%{opacity:1;transform:translate(-50%) scale(1.1)}20%{transform:translate(-50%) scale(1)}82%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(1)}}.defender-alert.hidden{display:none}@media(max-width:800px){.defender-alert{font-size:24px;padding:10px 22px;letter-spacing:.5px}}@media(max-width:520px){.defender-alert{top:35vh;font-size:17px;padding:8px 16px;letter-spacing:0}}@media(max-height:500px)and (orientation:landscape){.defender-alert{top:27vh;font-size:18px;padding:6px 16px;letter-spacing:0;border-radius:10px}}@media(prefers-reduced-motion:reduce){.defender-alert.show{animation:none;opacity:1}}.kill-streak-alert{position:fixed;top:calc(9vh + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:16;pointer-events:none;font-weight:800;font-size:28px;line-height:1.2;letter-spacing:1px;color:#ff355e;background:#08060c9e;border:1px solid rgba(255,53,94,.6);padding:12px 28px;border-radius:14px;white-space:nowrap;text-align:center;text-shadow:0 0 14px rgba(255,53,94,.65),0 2px 6px rgba(0,0,0,.85);box-shadow:0 0 26px #ff355e73,0 8px 28px #0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0}.kill-streak-alert.show{animation:killStreakFlash 2.6s cubic-bezier(.2,.9,.3,1) forwards}@keyframes killStreakFlash{0%{opacity:0;transform:translate(-50%) scale(.82)}10%{opacity:1;transform:translate(-50%) scale(1.12)}22%{transform:translate(-50%) scale(1)}82%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(1)}}.kill-streak-alert.hidden{display:none}@media(max-width:520px){.kill-streak-alert{top:28vh;font-size:18px;padding:8px 16px;letter-spacing:0}}.heal-zone-alert{position:fixed;top:23vh;left:50%;transform:translate(-50%);z-index:16;pointer-events:none;font-weight:800;font-size:22px;line-height:1.2;letter-spacing:.5px;color:#b6ffce;background:#08120c9e;border:1px solid rgba(108,245,155,.55);padding:10px 22px;border-radius:12px;white-space:nowrap;text-align:center;text-shadow:0 0 12px rgba(108,245,155,.55),0 2px 6px rgba(0,0,0,.85);box-shadow:0 0 22px #6cf59b52,0 6px 22px #00000080;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0}.heal-zone-alert.show{animation:healZoneAlertFlash 2.4s cubic-bezier(.2,.9,.3,1) forwards}@keyframes healZoneAlertFlash{0%{opacity:0;transform:translate(-50%) scale(.88)}10%{opacity:1;transform:translate(-50%) scale(1.06)}22%{transform:translate(-50%) scale(1)}82%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(1)}}.heal-zone-alert.hidden{display:none}@media(max-width:800px){.heal-zone-alert{font-size:18px;padding:9px 18px;letter-spacing:.3px}}@media(max-width:520px){.heal-zone-alert{top:35vh;font-size:14px;padding:7px 14px;letter-spacing:0}}@media(max-height:500px)and (orientation:landscape){.heal-zone-alert{top:25vh;font-size:14px;padding:6px 14px;letter-spacing:0;border-radius:10px}}@media(prefers-reduced-motion:reduce){.heal-zone-alert.show{animation:none;opacity:1}}@media(max-width:800px){.kill-streak-alert{font-size:22px;padding:10px 20px;letter-spacing:.5px}}@media(max-width:520px){.kill-streak-alert{top:7vh;font-size:16px;padding:7px 14px;letter-spacing:0}}@media(max-height:500px)and (orientation:landscape){.kill-streak-alert{top:13vh;font-size:16px;padding:6px 14px;letter-spacing:0;border-radius:10px}}@media(prefers-reduced-motion:reduce){.kill-streak-alert.show{animation:none;opacity:1}}.cell-wave-alert{position:fixed;top:17vh;left:50%;transform:translate(-50%);z-index:14;pointer-events:none;font-weight:800;font-size:30px;line-height:1.2;letter-spacing:1px;color:#ff355e;background:#08060c99;border:1px solid rgba(255,53,94,.55);padding:14px 32px;border-radius:14px;white-space:nowrap;text-align:center;text-shadow:0 0 14px rgba(255,53,94,.55),0 2px 6px rgba(0,0,0,.85);box-shadow:0 0 24px #ff355e66,0 8px 28px #0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:cellWaveAlertIn .32s cubic-bezier(.2,.9,.3,1) both,cellWaveAlertPulse 1.1s ease-in-out .32s infinite}.cell-wave-alert.hidden{display:none}@keyframes cellWaveAlertIn{0%{opacity:0;transform:translate(-50%) scale(.82)}60%{opacity:1;transform:translate(-50%) scale(1.08)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes cellWaveAlertPulse{0%,to{box-shadow:0 0 24px #ff355e66,0 8px 28px #0000008c;border-color:#ff355e8c}50%{box-shadow:0 0 44px #ff506ed9,0 8px 28px #0000008c;border-color:#ff6e82}}@media(max-width:800px){.cell-wave-alert{font-size:22px;padding:12px 22px;letter-spacing:.5px}}@media(max-width:520px){.cell-wave-alert{top:22vh;font-size:14px;padding:10px 14px;letter-spacing:0}}@media(max-height:500px)and (orientation:landscape){.cell-wave-alert{top:21vh;font-size:16px;padding:8px 16px;border-radius:10px}}@media(prefers-reduced-motion:reduce){.cell-wave-alert{animation:none}}.cell-wave-countdown-label{position:fixed;top:calc(30vh - 130px);left:50%;transform:translate(-50%,-50%);z-index:15;pointer-events:none;user-select:none;font-family:OkDanDan,system-ui,sans-serif;font-size:26px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#fff1c0;text-shadow:0 0 14px rgba(255,180,120,.55),0 2px 10px rgba(0,0,0,.7);white-space:nowrap;opacity:0;animation:cellWaveCountdownLabelFadeIn .36s cubic-bezier(.16,.84,.3,1) forwards}.cell-wave-countdown-label.hidden{display:none}@keyframes cellWaveCountdownLabelFadeIn{0%{opacity:0;transform:translate(-50%,-50%) translateY(6px)}to{opacity:.95;transform:translate(-50%,-50%) translateY(0)}}@media(max-width:800px){.cell-wave-countdown-label{font-size:20px;top:calc(30vh - 100px)}}@media(max-width:520px){.cell-wave-countdown-label{font-size:16px;letter-spacing:.14em;top:calc(32vh - 80px)}}@media(max-height:500px)and (orientation:landscape){.cell-wave-countdown-label{font-size:16px;letter-spacing:.14em;top:calc(44vh - 80px)}}@media(prefers-reduced-motion:reduce){.cell-wave-countdown-label{animation:none;opacity:.95}}.cell-wave-countdown{position:fixed;top:30vh;left:50%;transform:translate(-50%,-50%);z-index:15;pointer-events:none;font-family:OkDanDan,system-ui,sans-serif;font-weight:900;font-size:200px;line-height:1;color:#fff;text-shadow:0 0 24px rgba(255,60,60,.95),0 0 60px rgba(255,30,30,.7),0 6px 14px rgba(0,0,0,.85);opacity:0}.cell-wave-countdown.is-tick{animation:cellWaveCountdownTick 1s ease-out forwards}.cell-wave-countdown.hidden{display:none}@keyframes cellWaveCountdownTick{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.18)}35%{transform:translate(-50%,-50%) scale(1)}85%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.04)}}@media(max-width:800px){.cell-wave-countdown{font-size:150px}}@media(max-width:520px){.cell-wave-countdown{font-size:110px;top:32vh}}@media(max-height:500px)and (orientation:landscape){.cell-wave-countdown{font-size:110px;top:44vh}}@media(prefers-reduced-motion:reduce){.cell-wave-countdown.is-tick{animation:none;opacity:1}}.br-kill-feed{position:fixed;top:calc(70px + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:11;display:flex;flex-direction:column;align-items:center;gap:6px;max-width:min(720px,88vw);pointer-events:none;font-size:14px}.br-kill-feed-line{background:#0a0a10d1;border:1px solid rgba(255,53,94,.4);padding:8px 18px;border-radius:999px;color:#e6e6f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.7);box-shadow:0 6px 18px #0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:opacity .24s ease-out;animation:brKillToastIn .22s ease-out}@keyframes brKillToastIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.br-kill-feed-line .killer{color:#ff7a93;font-weight:700}.br-kill-feed-line .victim{color:#c8c8d8}.br-kill-feed.hidden{display:none}@media(max-width:800px){.br-kill-feed{top:56px;font-size:13px}.br-kill-feed-line{padding:6px 14px}}@media(max-width:520px){.br-kill-feed{top:44px;font-size:12px;gap:4px}.br-kill-feed-line{padding:5px 12px}}@media(max-height:500px)and (orientation:landscape){.br-kill-feed{top:36px;font-size:11px;gap:3px;max-width:min(560px,70vw)}.br-kill-feed-line{padding:4px 10px;border-radius:999px}}.br-spectator{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:14;max-width:calc(100vw - 24px);background:#0e0e16e0;border:1px solid #3a3a4c;border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:12px;font-size:16px;color:#c8c8d8;white-space:nowrap;cursor:grab;touch-action:none;user-select:none}.br-spectator.is-dragged{cursor:grabbing}.br-spectator-label{flex-shrink:0}.br-spectator-target{color:#ff7a93;font-weight:700;max-width:14ch;overflow:hidden;text-overflow:ellipsis;min-width:0}.br-spectator-btn{background:#282838d9;color:#fff;border:1px solid #5b5b78;border-radius:6px;padding:6px 14px;font:inherit;cursor:pointer;flex-shrink:0;white-space:nowrap}.br-spectator-btn:hover{border-color:#ff7a93}.br-spectator-leave{margin-left:6px;color:#ff7a93}.br-spectator.hidden{display:none}@media(hover:none)and (pointer:coarse){.br-spectator{border-radius:8px;padding:6px 10px;gap:8px;font-size:13px}.br-spectator-btn{border-radius:4px;padding:2px 8px}}@media(max-width:520px){.br-spectator{border-radius:8px;padding:6px 10px;gap:8px;font-size:13px}.br-spectator-btn{border-radius:4px;padding:2px 8px}}.br-results-overlay{position:fixed;inset:0;z-index:28;background:radial-gradient(circle at 50% 35%,#ff87c452,#080c1cdb 65%);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:brResultsFadeIn .24s ease-out}@keyframes brResultsFadeIn{0%{opacity:0}to{opacity:1}}.br-results-panel{position:relative;background:var(--panel);border:1px solid var(--panel-border);border-radius:20px;padding:28px 32px 22px;min-width:340px;max-width:460px;width:min(460px,calc(100vw - 32px));text-align:center;box-shadow:var(--panel-shadow);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:brResultsPop .32s cubic-bezier(.2,.9,.3,1.1)}@keyframes brResultsPop{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.br-results-panel h2{margin:0 0 6px;font-size:24px;letter-spacing:1px;color:var(--cta);text-shadow:0 2px 12px rgba(255,105,180,.35)}.br-results-panel h2.is-loss{color:var(--accent-strong);text-shadow:0 2px 12px rgba(0,102,255,.25)}.br-results-panel .sub{color:var(--muted);font-size:16px;margin:0 0 4px}.br-results-list{text-align:left;margin:16px auto 18px;padding:6px;list-style:none;max-height:320px;overflow-y:auto;background:#0066ff0a;border:1px solid var(--panel-border);border-radius:12px}.br-results-list li{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;margin-bottom:3px;background:#fff9;color:var(--text);font-size:17px}.br-results-list li:last-child{margin-bottom:0}.br-results-list li.winner{background:linear-gradient(90deg,#ffd16666,#ff87c44d);color:var(--text);font-weight:700;border:1px solid rgba(255,161,70,.55)}.br-results-list li.me{outline:2px solid var(--accent);outline-offset:-2px}.br-results-list li .pos{width:36px;flex:0 0 auto;color:var(--muted);font-weight:700;font-size:15px;letter-spacing:.5px}.br-results-list li.winner .pos{color:#c97a00}.br-results-list li .nm{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.br-results-list li .st{flex:0 0 auto;display:flex;align-items:center;gap:8px;font-size:15px;color:var(--muted)}.br-results-eliminated{color:#ff3556;font-weight:700;font-size:12px;letter-spacing:1px;text-shadow:0 1px 2px rgba(255,53,94,.2)}.br-results-meta{color:var(--muted);font-size:13px}.br-results-actions{display:flex;gap:10px;justify-content:center;margin-top:4px;flex-wrap:wrap}.br-results-actions button{padding:12px 26px;background:linear-gradient(180deg,#ff87c4,var(--cta));color:#fff;border:none;border-radius:999px;font-weight:700;font-size:17px;letter-spacing:.5px;cursor:pointer;box-shadow:0 6px 18px #ff69b459,inset 0 -3px #00000014;transition:transform 80ms ease,box-shadow .12s ease,filter .12s ease}.br-results-actions button:hover{filter:brightness(1.05);transform:translateY(-1px)}.br-results-actions button:active{transform:translateY(1px);box-shadow:0 3px 10px #ff69b44d,inset 0 -2px #00000014}.br-results-actions button.ghost{background:transparent;color:var(--accent-strong);border:2px solid var(--panel-border);box-shadow:none;font-weight:600}.br-results-actions button.ghost:hover{background:#0066ff0f;filter:none;transform:none}.br-results-share,.br-results-retry{display:none}.br-results-panel.is-win .br-results-share,.br-results-panel.is-loss .br-results-retry{display:block}.br-results-retry.hidden{display:none!important}.br-results-panel.is-win{background:radial-gradient(circle at 50% 0%,rgba(255,209,102,.22),transparent 60%),var(--panel);border-color:#ffbf478c;box-shadow:var(--panel-shadow),0 0 38px #ffbf4740}#brResultsOverlay .br-results-panel.is-win h2{background:linear-gradient(90deg,#ffb347,#ff87c4,#ffb347);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;text-shadow:none}.br-results-hero-line{margin:2px 0 6px;font-size:17px;font-weight:700;letter-spacing:.3px;color:#d97800;text-shadow:0 1px 0 rgba(255,255,255,.6)}.br-results-lore{margin:0 auto 12px;max-width:360px;font-size:13.5px;line-height:1.5;color:var(--muted);font-style:italic}.br-results-share{position:relative;padding:12px 26px;background:linear-gradient(180deg,#ffd166,#ff9a3c);color:#4a2400;border:none;border-radius:999px;font-weight:800;font-size:16px;letter-spacing:.5px;cursor:pointer;box-shadow:0 6px 18px #ffa14673,inset 0 -3px #783c002e;transition:transform 80ms ease,box-shadow .12s ease,filter .12s ease}.br-results-share:hover{filter:brightness(1.05);transform:translateY(-1px)}.br-results-share:active{transform:translateY(1px)}.br-results-share:disabled{filter:saturate(.85) brightness(.95);cursor:default}.br-results-share.hidden{display:none!important}.br-results-panel.is-loss{background:radial-gradient(circle at 50% 0%,rgba(255,53,94,.16),transparent 62%),var(--panel);border-color:#ff355e5c;box-shadow:var(--panel-shadow),0 0 32px #ff355e24}.br-results-retry{margin:-2px auto 14px;max-width:360px;font-size:14px;font-weight:700;letter-spacing:.4px;color:#f57;text-shadow:0 1px 0 rgba(0,0,0,.2)}.br-results-overlay.hidden{display:none}@media(max-width:520px){.br-results-panel{padding:22px 20px 18px;border-radius:16px}.br-results-panel h2{font-size:24px}.br-results-list li{padding:7px 10px;font-size:14px}.br-results-actions button{padding:11px 20px;font-size:15px}.br-results-retry{font-size:13px;margin:-2px auto 10px}}@media(max-height:500px)and (orientation:landscape){.br-results-panel{padding:14px 22px 12px;border-radius:14px;max-height:calc(100vh - 16px);display:flex;flex-direction:column}.br-results-panel h2{font-size:20px;margin:0 0 2px}.br-results-panel .sub{font-size:13px;margin:0 0 2px}.br-results-list{margin:8px auto 10px;max-height:none;flex:1 1 auto;min-height:0}.br-results-list li{padding:5px 10px;font-size:13px;margin-bottom:2px}.br-results-actions{margin-top:0;flex-shrink:0}.br-results-actions button{padding:8px 18px;font-size:14px}.br-results-hero-line{font-size:14px;margin:0 0 4px}.br-results-lore{font-size:12px;line-height:1.4;margin:0 auto 6px}.br-results-retry{font-size:12px;margin:0 auto 6px}.br-results-share{padding:8px 18px;font-size:14px}}#brResultsOverlay .br-results-glyph{position:relative;display:none;width:132px;height:132px;margin:4px auto 6px;align-items:center;justify-content:center;pointer-events:none}#brResultsOverlay .br-results-panel.is-win .br-results-glyph.is-trophy,#brResultsOverlay .br-results-panel.is-loss .br-results-glyph.is-deadcell{display:flex}#brResultsOverlay .br-results-glyph-aura{position:absolute;inset:-22%;border-radius:50%;filter:blur(18px);opacity:.55;animation:brResultsAura 2.4s ease-in-out infinite}#brResultsOverlay .br-results-glyph.is-trophy .br-results-glyph-aura{background:radial-gradient(circle,rgba(255,209,102,.3),rgba(255,135,196,.12) 45%,transparent 70%)}#brResultsOverlay .br-results-glyph.is-deadcell .br-results-glyph-aura{background:radial-gradient(circle,rgba(255,53,86,.22),rgba(40,30,36,.08) 45%,transparent 70%)}#brResultsOverlay .br-results-trophy,#brResultsOverlay .br-results-dead-cell{position:relative;display:block;width:100px;height:auto;max-width:100%;user-select:none;-webkit-user-drag:none;pointer-events:none;object-fit:contain}#brResultsOverlay .br-results-dead-cell{width:86px}@keyframes brResultsAura{0%,to{transform:scale(.95);opacity:.4}50%{transform:scale(1.05);opacity:.65}}@media(prefers-reduced-motion:reduce){#brResultsOverlay .br-results-glyph-aura{animation:none}}#brResultsOverlay .br-results-medal{display:inline-block;vertical-align:-3px;width:1.05em;height:1.05em;margin-left:4px;user-select:none;-webkit-user-drag:none;pointer-events:none}#brResultsOverlay .br-results-panel.is-win{background:#fff;border-color:#ffbee5;box-shadow:0 18px 48px #ff6bb538,0 4px 14px #ff6bb51a;backdrop-filter:none;-webkit-backdrop-filter:none}#brResultsOverlay .br-results-panel.is-win h2{background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:#aa6f14;color:#aa6f14;text-shadow:none;font-size:22px;margin:4px 0 10px}#brResultsOverlay .br-results-panel.is-win .br-results-hero-line{color:#ff4081;text-shadow:none;font-size:25px;margin:0 0 5px}#brResultsOverlay .br-results-panel.is-win .sub{color:#290f3c;font-weight:700;font-size:24px;margin:0 0 14px}#brResultsOverlay .br-results-panel.is-win .br-results-list{background:#ffecfb;border:1.5px solid #ffbee5;border-radius:18px;padding:10px;margin:6px auto 18px}#brResultsOverlay .br-results-panel.is-win .br-results-list li{background:#fff;color:#103060;border-radius:12px;padding:12px 16px;margin-bottom:5px;font-size:15px;border:1px solid transparent}#brResultsOverlay .br-results-panel.is-win .br-results-list li:last-child{margin-bottom:0}#brResultsOverlay .br-results-panel.is-win .br-results-list li.winner,#brResultsOverlay .br-results-panel.is-win .br-results-list li.me{background:#fdc4ee;border:1.5px solid #ff70c5;outline:none;color:#000;font-weight:700}#brResultsOverlay .br-results-panel.is-win .br-results-list li .pos{color:#6b7fa0;font-weight:700}#brResultsOverlay .br-results-panel.is-win .br-results-list li.winner .pos,#brResultsOverlay .br-results-panel.is-win .br-results-list li.me .pos{color:#000}#brResultsOverlay .br-results-panel.is-win .br-results-list li .st{color:#6b7fa0}#brResultsOverlay .br-results-panel.is-win .br-results-list li.winner .st,#brResultsOverlay .br-results-panel.is-win .br-results-list li.me .st{color:#000}#brResultsOverlay .br-results-panel.is-win .br-results-eliminated{color:#ff4081;text-shadow:none;font-weight:700}#brResultsOverlay .br-results-panel.is-win .br-results-meta{color:#b8a3c4}#brResultsOverlay .br-results-panel.is-win .br-results-actions{gap:12px}#brResultsOverlay .br-results-panel.is-win #brResultsExit{order:1}#brResultsOverlay .br-results-panel.is-win #brResultsShare{order:2}#brResultsOverlay .br-results-panel.is-win #brResultsFindMatch{order:3}#brResultsOverlay .br-results-panel.is-win #brResultsFindMatch{background:linear-gradient(180deg,#ff8fcb,#ff6bb5);color:#fff;box-shadow:0 6px 18px #ff6bb566,inset 0 -3px #b4326e2e}#brResultsOverlay .br-results-panel.is-win .br-results-share{background:#fff;color:#ff6bb5;border:2px solid #ff6bb5;box-shadow:none;font-weight:700}#brResultsOverlay .br-results-panel.is-win .br-results-share:hover{background:#ff6bb514;filter:none}#brResultsOverlay .br-results-panel.is-win .br-results-share:active{background:#ff6bb524}#brResultsOverlay .br-results-panel.is-win .br-results-actions button.ghost{background:#fff;color:#06f;border:2px solid #0066ff}#brResultsOverlay .br-results-panel.is-win .br-results-actions button.ghost:hover{background:#0066ff0f}@media(max-width:520px){#brResultsOverlay .br-results-glyph{width:108px;height:108px}#brResultsOverlay .br-results-trophy,#brResultsOverlay .br-results-dead-cell{width:84px}#brResultsOverlay .br-results-dead-cell{width:72px}#brResultsOverlay .br-results-panel.is-win h2{font-size:18px}#brResultsOverlay .br-results-panel.is-win .br-results-hero-line{font-size:24px}#brResultsOverlay .br-results-panel.is-win .sub{font-size:21px}}@media(max-height:500px)and (orientation:landscape){#brResultsOverlay .br-results-glyph{width:72px;height:72px;margin:0 auto 4px}#brResultsOverlay .br-results-trophy,#brResultsOverlay .br-results-dead-cell{width:54px}#brResultsOverlay .br-results-dead-cell{width:46px}#brResultsOverlay .br-results-panel.is-win h2{font-size:16px}#brResultsOverlay .br-results-panel.is-win .br-results-hero-line{font-size:21px}#brResultsOverlay .br-results-panel.is-win .sub{font-size:18px}}#brResultsOverlay .br-results-panel.is-loss .br-results-retry{display:none}#brResultsOverlay .br-results-panel.is-loss{background:#f0eeee;border-color:#aeaeae;box-shadow:0 18px 48px #281e242e,0 4px 14px #281e2414;backdrop-filter:none;-webkit-backdrop-filter:none}#brResultsOverlay .br-results-panel.is-loss h2{color:#b78840;text-shadow:none;font-size:22px;margin:4px 0 10px}#brResultsOverlay .br-results-panel.is-loss .br-results-hero-line{color:#ff3556;text-shadow:none;font-style:normal;letter-spacing:0;font-size:25px;margin:0 0 5px}#brResultsOverlay .br-results-panel.is-loss .sub{color:#290f3c;font-weight:700;font-size:24px;margin:0 0 14px}#brResultsOverlay .br-results-panel.is-loss .br-results-list{background:#dedede;border:1.5px solid #aeaeae;border-radius:18px;padding:10px;margin:6px auto 18px}#brResultsOverlay .br-results-panel.is-loss .br-results-list li{background:#fff;color:#103060;border-radius:12px;padding:12px 16px;margin-bottom:5px;font-size:15px;border:1px solid transparent}#brResultsOverlay .br-results-panel.is-loss .br-results-list li:last-child{margin-bottom:0}#brResultsOverlay .br-results-panel.is-loss .br-results-list li.me{background:#fdc4ee;border:1.5px solid #ff70c5;outline:none;color:#000;font-weight:700}#brResultsOverlay .br-results-panel.is-loss .br-results-list li .pos{color:#6b7fa0;font-weight:700}#brResultsOverlay .br-results-panel.is-loss .br-results-list li.me .pos{color:#000}#brResultsOverlay .br-results-panel.is-loss .br-results-list li .st{color:#6b7fa0}#brResultsOverlay .br-results-panel.is-loss .br-results-list li.me .st{color:#000}#brResultsOverlay .br-results-panel.is-loss .br-results-eliminated{color:#ff3556;text-shadow:none;font-weight:700}#brResultsOverlay .br-results-panel.is-loss .br-results-meta{color:#6b7fa0}#brResultsOverlay .br-results-panel.is-loss .br-results-actions{gap:12px}#brResultsOverlay .br-results-panel.is-loss #brResultsExit{order:1}#brResultsOverlay .br-results-panel.is-loss #brResultsFindMatch{order:2}#brResultsOverlay .br-results-panel.is-loss #brResultsFindMatch{background:linear-gradient(180deg,#ff8fcb,#ff6bb5);color:#fff;box-shadow:0 6px 18px #ff6bb566,inset 0 -3px #b4326e2e}#brResultsOverlay .br-results-panel.is-loss .br-results-actions button.ghost{background:#fff;color:#06f;border:2px solid #0066ff}#brResultsOverlay .br-results-panel.is-loss .br-results-actions button.ghost:hover{background:#0066ff0f}@media(max-width:520px){#brResultsOverlay .br-results-panel.is-loss h2{font-size:18px}#brResultsOverlay .br-results-panel.is-loss .br-results-hero-line{font-size:24px}#brResultsOverlay .br-results-panel.is-loss .sub{font-size:21px}}@media(max-height:500px)and (orientation:landscape){#brResultsOverlay .br-results-panel.is-loss h2{font-size:16px}#brResultsOverlay .br-results-panel.is-loss .br-results-hero-line{font-size:21px}#brResultsOverlay .br-results-panel.is-loss .sub{font-size:18px}}#hiveResultsOverlay .br-results-panel.hive-results-panel{max-width:600px;width:min(600px,calc(100vw - 32px));background:#fff;border-color:#e2e8f0;box-shadow:0 18px 48px #0f172b1f,0 4px 14px #0f172b0f;backdrop-filter:none;-webkit-backdrop-filter:none}.hive-results-trophy,.hive-results-dead-cell{display:none;width:92px;height:auto;max-width:100%;margin:0 auto 4px;user-select:none;-webkit-user-drag:none;pointer-events:none;object-fit:contain}.hive-results-dead-cell{width:80px}.hive-results-panel.is-win .hive-results-trophy,.hive-results-panel.is-loss .hive-results-dead-cell{display:block}.hive-results-panel h2{margin:4px 0 8px;font-size:26px;font-weight:800;letter-spacing:1px;background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:#b78840;color:#b78840;text-shadow:none}.hive-results-panel h2:after{display:none}.hive-results-panel .br-results-hero-line{font-size:19px;font-weight:800;letter-spacing:0;color:#993cf3;text-shadow:none;margin:0 0 6px}#hiveResultsOverlay .br-results-panel.hive-results-panel.is-loss{background:#f5f5f5}.hive-results-panel.is-loss h2{-webkit-text-fill-color:#796e5a;color:#796e5a}.hive-results-panel.is-loss .br-results-hero-line{color:#ff3556}.hive-results-panel .br-results-lore{font-size:14px;font-style:normal;color:#45556c;opacity:1;margin:0 auto 18px}.hive-results-teams{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:4px 0 22px;text-align:left}.hive-results-team{display:flex;flex-direction:column;gap:10px;min-width:0}.hive-results-team-outcome{text-align:center;font-size:24px;font-weight:900;letter-spacing:1px;line-height:1}.hive-results-team-outcome.is-loser{color:#8b8b8b}.hive-results-team.team-blue .hive-results-team-outcome.is-winner{color:#0087ff;text-shadow:0 1px 0 rgba(0,121,228,.18)}.hive-results-team.team-red .hive-results-team-outcome.is-winner{color:#ec003f;text-shadow:0 1px 0 rgba(236,0,63,.18)}.hive-results-team-plate{border-radius:16px;padding:14px 14px 12px;border:1px solid transparent}.hive-results-team.team-blue .hive-results-team-plate{background:#daeeff;border-color:#c6e5ff}.hive-results-team.team-red .hive-results-team-plate{background:#ffd8d9;border-color:#ffd0d0}.hive-results-team-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.hive-results-team-title{font-size:17px;font-weight:800;letter-spacing:.4px}.hive-results-team.team-blue .hive-results-team-title{color:#0079e4}.hive-results-team.team-red .hive-results-team-title{color:#ec003f}.hive-results-team-kills{font-size:13px;font-weight:700;color:#45556c;white-space:nowrap}.hive-results-team-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.hive-results-team-list li{display:flex;align-items:center;gap:8px;background:#fff;border:1.2px solid transparent;border-radius:12px;padding:9px 12px;font-size:14px;min-width:0}.hive-results-team.team-blue .hive-results-team-list li.is-me{border-color:#0087ff}.hive-results-team.team-red .hive-results-team-list li.is-me{border-color:#ec003f}.hive-results-row-name{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:4px;font-weight:700;color:#314158;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hive-results-row-medal{display:inline-block;width:18px;height:18px;flex:0 0 auto;vertical-align:middle;user-select:none;-webkit-user-drag:none;pointer-events:none}.hive-results-row-lv{flex:0 0 auto;font-size:11px;font-weight:800;letter-spacing:.3px;color:#62748e;background:#f1f5f9;padding:3px 8px;border-radius:6px;font-variant-numeric:tabular-nums}.hive-results-row-kills{flex:0 0 auto;font-size:13px;font-weight:700;color:#45556c;font-variant-numeric:tabular-nums;min-width:32px;text-align:right}.hive-results-row-deaths{flex:0 0 auto;font-size:13px;font-weight:700;color:#45556c;font-variant-numeric:tabular-nums;min-width:36px;text-align:right}.hive-results-panel .br-results-actions{gap:14px}#hiveResultsOverlay .br-results-actions #hiveResultsExit{order:1;background:#fff;color:#993cf3;border:2px solid #ad5ef8;box-shadow:none;font-weight:700}#hiveResultsOverlay .br-results-actions #hiveResultsExit:hover{background:#ad5ef80f;filter:none}#hiveResultsOverlay .br-results-actions #hiveResultsFindMatch{order:2;background:linear-gradient(180deg,#c084fc,#a855f7);color:#fff;box-shadow:0 6px 18px #a855f766,inset 0 -3px #6428a02e}.hive-results-panel .br-results-retry{display:none}@media(max-width:520px){.hive-results-teams{grid-template-columns:1fr;gap:14px}.hive-results-trophy,.hive-results-dead-cell{width:76px}.hive-results-dead-cell{width:66px}.hive-results-panel h2{font-size:22px}.hive-results-panel .br-results-hero-line{font-size:16px}.hive-results-panel .br-results-lore{font-size:13px}.hive-results-team-outcome{font-size:18px}.hive-results-team-title{font-size:15px}}@media(max-height:500px)and (orientation:landscape){.hive-results-trophy,.hive-results-dead-cell{width:54px;margin:0 auto 2px}.hive-results-dead-cell{width:46px}.hive-results-panel h2{font-size:18px;margin:0}.hive-results-panel .br-results-hero-line{font-size:14px;margin:2px 0}.hive-results-panel .br-results-lore{font-size:12px;margin:0 auto 6px}.hive-results-teams{margin:4px 0 8px;gap:8px;flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.hive-results-team{gap:4px}.hive-results-team-outcome{font-size:16px}.hive-results-team-plate{padding:8px 10px}.hive-results-team-header{margin-bottom:6px}.hive-results-team-title{font-size:13px}.hive-results-team-list{gap:4px}.hive-results-team-list li{padding:5px 8px;font-size:12px;border-radius:8px}.hive-results-row-lv{font-size:10px;padding:2px 6px}.hive-results-row-kills,.hive-results-row-deaths{font-size:12px}}.hive-matchfound-overlay{z-index:30;background:radial-gradient(circle at 50% 40%,#4826828c,#08080eeb);animation:hiveMatchFoundFade .26s ease-out}@keyframes hiveMatchFoundFade{0%{opacity:0}to{opacity:1}}.hive-matchfound-panel{text-align:center;gap:6px;max-width:460px;padding:34px 38px 30px;border-color:#9b6eff8c;box-shadow:var(--panel-shadow),0 0 48px #9b6eff52,inset 0 0 0 1px #ffffff0a;animation:hiveMatchFoundPop .38s cubic-bezier(.2,.9,.3,1.1)}@keyframes hiveMatchFoundPop{0%{opacity:0;transform:translateY(12px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}.hive-matchfound-emblem{position:relative;width:96px;height:96px;margin:0 auto 4px;display:flex;align-items:center;justify-content:center}.hive-matchfound-pulse{position:absolute;inset:0}.hive-matchfound-pulse span{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(155,110,255,.6);opacity:0;animation:hiveMatchFoundRipple 1.6s linear infinite}.hive-matchfound-pulse span:nth-child(2){animation-delay:.53s}.hive-matchfound-pulse span:nth-child(3){animation-delay:1.06s}@keyframes hiveMatchFoundRipple{0%{transform:scale(.45);opacity:.75}80%{opacity:.04}to{transform:scale(1.55);opacity:0}}.hive-matchfound-hex{position:relative;width:76px;height:76px;filter:drop-shadow(0 2px 4px rgba(155,110,255,.12));animation:hiveMatchFoundHexPop .72s cubic-bezier(.18,.85,.3,1.1);transform-origin:center}.hive-matchfound-hex-body{animation:hiveMatchFoundHexGlow 2.2s ease-in-out infinite}@keyframes hiveMatchFoundHexPop{0%{opacity:0;transform:rotate(-8deg) scale(.4)}60%{opacity:1;transform:rotate(2deg) scale(1.08)}to{opacity:1;transform:rotate(0) scale(1)}}@keyframes hiveMatchFoundHexGlow{0%,to{filter:brightness(1)}50%{filter:brightness(1.04)}}.hive-matchfound-eyebrow{margin:12px 0 0;font-size:18px;font-weight:800;letter-spacing:3px;color:#c6a4ff;text-shadow:0 0 14px rgba(155,110,255,.55)}.hive-matchfound-eyebrow:after{content:"";display:block;margin:10px auto 0;width:60px;height:3px;border-radius:999px;background:linear-gradient(90deg,#c6a4ff00,#c6a4ff 50%,#c6a4ff00);opacity:.9}.hive-matchfound-title{margin:6px 0 0;font-size:30px;font-weight:800;letter-spacing:.8px;color:var(--text);text-shadow:0 2px 14px rgba(155,110,255,.45),0 0 28px rgba(155,110,255,.22)}.hive-matchfound-sub{margin:4px 0 0;font-size:14px;color:var(--muted);line-height:1.55}.hive-matchfound-progress{position:relative;width:100%;max-width:280px;height:5px;margin:18px auto 0;background:#9b6eff24;border-radius:999px;overflow:hidden;box-shadow:inset 0 0 0 1px #9b6eff2e}.hive-matchfound-progress-fill{position:absolute;inset:0;width:0%;background:linear-gradient(90deg,#9b6eff66,#c6a4fff2);border-radius:999px;box-shadow:0 0 12px #c6a4ff80;animation:hiveMatchFoundProgress 2s linear forwards}@keyframes hiveMatchFoundProgress{0%{width:0%}to{width:100%}}.hive-lobby-scanner{position:relative;width:76px;height:76px;margin:0 auto 2px;color:#c6a4ffd9;display:none;align-items:center;justify-content:center}.hive-lobby-panel.is-solo-matching .hive-lobby-scanner{display:flex}.hive-lobby-scanner-glyph{width:64px;height:64px;filter:drop-shadow(0 0 12px rgba(155,110,255,.5));animation:hiveLobbyScannerPulse 1.8s ease-in-out infinite}@keyframes hiveLobbyScannerPulse{0%,to{transform:scale(.94);opacity:.85}50%{transform:scale(1.06);opacity:1}}.hive-lobby-scanner-orbit{position:absolute;inset:0;border-radius:50%;border:1px dashed rgba(155,110,255,.35);animation:hiveLobbyScannerOrbit 4.2s linear infinite}.hive-lobby-scanner-orbit:nth-of-type(2){inset:8px;border-style:solid;border-color:#9b6eff2e;animation-direction:reverse;animation-duration:5.4s}@keyframes hiveLobbyScannerOrbit{to{transform:rotate(360deg)}}.hive-overlay{position:fixed;inset:0;z-index:25;background:#000000a6;display:flex;align-items:center;justify-content:center;pointer-events:auto;padding:20px}.hive-overlay.hidden{display:none}.hive-panel{background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:18px;padding:28px 32px;text-align:center;width:100%;max-width:420px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:var(--panel-shadow);color:var(--text);display:flex;flex-direction:column;gap:14px}.hive-panel h2{margin:0;color:var(--accent-strong);font-size:26px}.hive-panel .sub{margin:0;color:var(--muted);font-size:15px}.hive-panel .sub.small{font-size:13px}.hive-panel input[type=text]{width:100%;padding:14px 18px;background:var(--panel-strong);color:var(--text);border:2px solid var(--panel-border);border-radius:999px;font-size:24px;font-weight:700;letter-spacing:6px;text-align:center;font-variant-numeric:tabular-nums;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.hive-panel input[type=text]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #30d5ff2e}.hive-panel button:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action){padding:14px 24px;font-size:19px;font-weight:700;letter-spacing:.5px;border:none;border-radius:999px;cursor:pointer;width:100%;background:linear-gradient(180deg,#ff87c4,var(--cta));color:#fff;box-shadow:0 6px 18px #ff69b459,inset 0 -3px #00000014;transition:transform 80ms ease,box-shadow .12s ease,filter .12s ease}.hive-panel button:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action):hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.hive-panel button:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action):active:not(:disabled){transform:translateY(1px);box-shadow:0 3px 10px #ff69b44d,inset 0 -2px #00000014}.hive-panel button:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action):disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.3)}.hive-panel button.ghost{background:transparent;color:var(--accent-strong);border:2px solid var(--accent-strong);font-weight:700;box-shadow:0 4px 12px #0066ff26}.hive-panel button.ghost:hover:not(:disabled){background:#0066ff14}.hive-panel button.ghost:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 6px #0066ff2e}.hive-panel .custom-error{margin:0;color:var(--cta);font-size:14px;font-weight:700;min-height:1em}.hive-actions{display:flex;flex-direction:column;gap:10px}.hive-actions-row{flex-direction:row;justify-content:center}.hive-action-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 16px!important;background:#0066ff0d!important;color:var(--text)!important;border:2px solid var(--panel-border)!important;box-shadow:none!important;font-weight:700;border-radius:16px!important;transition:border-color .12s ease,background .12s ease,transform 80ms ease}.hive-action-btn:hover:not(:disabled){border-color:var(--accent)!important;background:#30d5ff14!important;filter:none!important}.hive-action-btn:active:not(:disabled){transform:translateY(1px)}.hive-action-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent-strong)}.hive-action-icon svg{width:100%;height:100%}.hive-action-title{font-size:18px;font-weight:800;color:var(--accent-strong)}.hive-action-desc{font-size:13px;color:var(--muted);font-weight:500}.hive-link{background:transparent!important;color:var(--accent-strong)!important;font-size:14px!important;font-weight:700;text-decoration:underline;padding:4px 0!important;box-shadow:none!important}.hive-link:hover:not(:disabled){filter:brightness(1.1);transform:none}.hive-size-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hive-size-btn{display:flex!important;flex-direction:column;align-items:center;gap:6px;padding:16px 8px!important;border-radius:14px!important;background:#0066ff0d!important;color:var(--text)!important;border:2px solid var(--panel-border)!important;box-shadow:none!important;cursor:pointer;font-weight:800;transition:border-color .12s ease,background .12s ease,transform 80ms ease}.hive-size-btn:hover:not(:disabled):not(.active){border-color:var(--accent)!important;background:#30d5ff14!important;filter:none!important}.hive-size-btn.active{border-color:var(--accent-strong)!important;background:#ff69b41f!important;color:var(--accent-strong)!important}.hive-size-num{font-size:26px;font-weight:900;color:inherit;display:inline-flex;align-items:baseline;gap:1px}.hive-size-vs{font-size:14px;font-weight:700;color:var(--muted);margin:0 2px}.hive-size-btn.active .hive-size-vs{color:var(--accent-strong)}.hive-size-desc{font-size:12px;font-weight:600;color:var(--muted)}.hive-lobby-panel{max-width:520px}.hive-lobby-panel.is-solo-matching{max-width:360px;padding:22px 26px;gap:10px}.hive-lobby-panel.is-solo-matching .sub{font-size:17px;font-weight:600;color:var(--text)}#hiveLobbyStartBtn.is-matching,#hiveLobbyStartBtn:disabled{cursor:not-allowed;opacity:.55;filter:saturate(.7);box-shadow:none}#hiveLobbyStartBtn.is-matching:hover,#hiveLobbyStartBtn:disabled:hover{transform:none;filter:saturate(.7)}.hive-code-row{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.hive-code-row.hidden{display:none}.hive-panel .room-code-icon{width:28px;height:28px;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;background:transparent!important;color:var(--accent-strong)!important;border:1px solid var(--panel-border);border-radius:8px;cursor:pointer;box-shadow:none!important;transition:background .12s ease,transform 80ms ease}.hive-panel .room-code-icon:hover:not(:disabled){background:#30d5ff14!important;filter:none!important}.hive-panel .room-code-icon:active:not(:disabled){transform:translateY(1px)}.hive-panel .room-code-icon.is-flash{background:#a4de0226!important;color:var(--health-good, #6ec000)!important}.hive-teams{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}.hive-teams:has(>.hive-team.is-squad:only-child){grid-template-columns:minmax(260px,440px);justify-content:center}.hive-team{display:flex;flex-direction:column;gap:8px;padding:12px;background:#0066ff0a;border:1px solid var(--panel-border);border-radius:12px;min-width:0}.hive-team-header{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:1px;text-align:center}.hive-team.is-team-blue .hive-team-header{color:#3aa3ff}.hive-team.is-team-red .hive-team-header{color:#ff5f5f}.hive-team.is-team-blue{border-color:#3aa3ff66}.hive-team.is-team-red{border-color:#ff5f5f66}.hive-team-list{display:flex;flex-direction:column;gap:6px;list-style:none;padding:0;margin:0;min-width:0}.hive-vs{display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;color:var(--muted)}.hive-slot{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;padding:8px 10px;background:#ffffff80;border:1px solid var(--panel-border);border-radius:10px;min-height:36px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.hive-slot.is-empty{background:#0000000a;border-style:dashed;color:var(--muted);justify-content:center}.hive-slot.is-me{outline:2px solid var(--accent-strong);outline-offset:-2px}.hive-slot-name{font-size:14px;font-weight:700;color:var(--text);flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.hive-slot-tags{display:inline-flex;gap:4px;flex-shrink:0}.hive-slot-tag{font-size:10px;font-weight:800;padding:2px 6px;border-radius:999px;background:#30d5ff26;color:var(--accent-strong);letter-spacing:.5px;text-transform:uppercase}.hive-slot-tag.is-bot{background:#00000014;color:var(--muted)}.hive-slot-placeholder{font-size:13px;font-weight:600;color:var(--muted)}.hive-overlay .hive-panel .hive-slot-name-edit{flex:0 0 auto;width:22px;min-width:0;height:22px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:var(--muted);box-shadow:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;letter-spacing:0;line-height:1;transition:color .14s,background .14s}.hive-overlay .hive-panel .hive-slot-name-edit:hover,.hive-overlay .hive-panel .hive-slot-name-edit:focus-visible{color:var(--accent-strong);background:#0066ff1a;outline:none;filter:none;transform:none}.hive-overlay .hive-panel .hive-slot-name-editor{flex:1 1 0;min-width:0;display:flex;align-items:center;gap:6px}.hive-overlay .hive-panel .hive-slot-name-input{flex:1;min-width:0;width:auto;height:24px;font:inherit;font-size:13px;line-height:1.2;color:var(--text);background:var(--panel-strong, #fff);border:1.5px solid var(--accent-strong);border-radius:6px;padding:0 8px;box-shadow:none;outline:none}.hive-overlay .hive-panel .hive-slot-name-save{flex:0 0 auto;width:auto;min-width:0;height:24px;padding:0 10px;background:var(--accent-strong);border:none;border-radius:6px;color:#fff;font-family:inherit;font-size:12px;font-weight:700;letter-spacing:0;line-height:1;box-shadow:none;cursor:pointer;transition:background .14s,filter .14s}.hive-overlay .hive-panel .hive-slot-name-save:hover,.hive-overlay .hive-panel .hive-slot-name-save:focus-visible{filter:brightness(1.08);outline:none;transform:none}.hive-wait-status{min-height:1.2em;font-variant-numeric:tabular-nums}.hive-overlay .hive-panel h2{color:#a855f7}.hive-overlay .hive-panel .custom-error{color:#c026d3}.hive-overlay .hive-panel input[type=text]:focus{border-color:#a855f7;box-shadow:0 0 0 4px #a855f733}.hive-overlay .hive-panel button:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action){background:linear-gradient(180deg,#c084fc,#a855f7);box-shadow:0 6px 18px #a855f761,inset 0 -3px #00000014}.hive-overlay .hive-panel button:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action):active:not(:disabled){box-shadow:0 3px 10px #a855f752,inset 0 -2px #00000014}.hive-overlay .hive-panel button.ghost:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action){background:transparent;color:#a855f7;border:2px solid #a855f7;box-shadow:0 4px 12px #a855f72e}.hive-overlay .hive-panel button.ghost:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action):hover:not(:disabled){background:#a855f71a}.hive-overlay .hive-panel button.ghost:not(.hive-slot-name-edit):not(.hive-slot-name-save):not(.room-code-icon):not(.hive-slot-action):active:not(:disabled){box-shadow:0 2px 6px #a855f738}.hive-overlay .hive-action-btn{background:#a855f70f!important}.hive-overlay .hive-action-btn:hover:not(:disabled){border-color:#a855f7!important;background:#a855f71f!important}.hive-overlay .hive-action-icon,.hive-overlay .hive-action-title{color:#a855f7}.hive-overlay .hive-link{color:#a855f7!important}.hive-overlay .hive-size-btn{background:#a855f70f!important}.hive-overlay .hive-size-btn:hover:not(:disabled):not(.active){border-color:#a855f7!important;background:#a855f71f!important}.hive-overlay .hive-size-btn.active{border-color:#a855f7!important;background:#a855f729!important;color:#a855f7!important}.hive-overlay .hive-size-btn.active .hive-size-vs{color:#a855f7}.hive-overlay .hive-panel .room-code-icon{color:#a855f7!important}.hive-overlay .hive-panel .room-code-icon:hover:not(:disabled){background:#a855f71f!important}.hive-overlay .hive-slot.is-me{outline-color:#a855f7}.hive-overlay .hive-slot.is-ready{background:#a855f714;border-color:#a855f773}.hive-overlay .hive-slot-tag{background:#a855f729;color:#a855f7}.hive-overlay .hive-slot-tag.is-ready{background:#10b98129;color:#047857}.hive-overlay .hive-slot-actions{display:inline-flex;gap:4px;flex-shrink:0;align-items:center}.hive-overlay .hive-slot-action{font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;border:1px solid #7e22ce;background:linear-gradient(180deg,#c084fc,#a855f7);color:#fff;cursor:pointer;white-space:nowrap;flex-shrink:0;flex-grow:0;flex-basis:auto;width:auto;min-width:0;line-height:1.4;box-shadow:none;transition:background .12s ease,color .12s ease,border-color .12s ease,filter .12s ease}.hive-overlay .hive-slot-action:hover:not(:disabled){background:linear-gradient(180deg,#a855f7,#7e22ce);color:#fff;border-color:#6b21a8;filter:brightness(1.05)}.hive-overlay .hive-slot-action.is-kick{border-color:#dc2626;color:#b91c1c;background:#fff}.hive-overlay .hive-slot-action.is-kick:hover:not(:disabled){background:#dc2626;color:#fff;border-color:#991b1b;filter:none}.hive-overlay #hiveLobbyReadyBtn{background:linear-gradient(180deg,#c084fc,#a855f7)!important;color:#fff!important;border:1px solid #a855f7!important}.hive-overlay #hiveLobbyReadyBtn:hover:not(:disabled){background:linear-gradient(180deg,#a855f7,#7e22ce)!important;color:#fff!important;border-color:#7e22ce!important}.hive-overlay #hiveLobbyReadyBtn.is-ready,.hive-overlay #hiveLobbyReadyBtn.is-cancel{background:transparent!important;color:#a855f7!important;border:1px solid #a855f7!important}.hive-overlay #hiveLobbyReadyBtn.is-ready:hover:not(:disabled),.hive-overlay #hiveLobbyReadyBtn.is-cancel:hover:not(:disabled){background:#a855f71f!important;color:#6b21a8!important;border-color:#7e22ce!important}#hiveLobbyStartBtn.hidden,#hiveLobbyReadyBtn.hidden{display:none!important}@media(max-width:480px){.hive-panel{padding:22px 18px;gap:12px}.hive-teams{grid-template-columns:1fr;gap:8px}.hive-vs{padding:4px 0}.hive-size-picker{grid-template-columns:repeat(3,1fr);gap:6px}.hive-size-num{font-size:22px}.hive-action-btn{padding:14px 12px!important}.hive-action-title{font-size:16px}}@media(max-height:560px){.hive-overlay{padding:12px}.hive-panel{padding:18px 22px;gap:10px}.hive-panel h2{font-size:22px}.hive-panel .sub{font-size:13px}.hive-panel button{padding:10px 18px;font-size:16px}.hive-actions{flex-direction:row;align-items:stretch}.hive-actions .hive-action-btn{flex:1 1 0;padding:12px 10px!important;gap:4px}.hive-action-icon{width:32px;height:32px}.hive-action-title{font-size:15px}.hive-action-desc{font-size:12px}}.hive-countdown-number{font-size:220px;font-weight:900;color:#c084fc;text-shadow:0 0 18px rgba(192,132,252,.65),0 0 48px rgba(168,85,247,.4),0 4px 18px rgba(0,0,0,.6);letter-spacing:.04em;font-variant-numeric:tabular-nums;pointer-events:none;opacity:0;user-select:none;line-height:1}#hiveCountdownGroup{position:fixed;z-index:60}.hive-countdown-number.hidden{display:none}.hive-countdown-number.is-tick{animation:hiveCountdownPulse 1s cubic-bezier(.16,.84,.3,1) forwards}@keyframes hiveCountdownPulse{0%{opacity:0;transform:scale(.55)}20%{opacity:1;transform:scale(1.15)}45%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.hive-respawn-overlay{position:fixed;inset:0;z-index:55;display:flex;align-items:center;justify-content:center;pointer-events:none;background:linear-gradient(180deg,#080e1600 0% 30%,#080e168c)}.hive-respawn-overlay.hidden{display:none}.hive-respawn-panel{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 36px;border-radius:16px;background:#0f1622b8;border:1px solid rgba(255,95,95,.4);box-shadow:0 6px 24px #0006}.hive-respawn-label{margin:0;font-size:13px;letter-spacing:.04em;color:#d6c4c4;text-transform:uppercase}.hive-respawn-number{margin:0;font-size:72px;line-height:1;font-weight:800;color:#fff;text-shadow:0 0 18px rgba(255,95,95,.55);font-variant-numeric:tabular-nums}.hive-respawn-hint{margin:0;font-size:12px;color:#94a3b8}body.canvas-greyscale #game{filter:grayscale(.85) brightness(.78)}@media(max-width:480px){.hive-countdown-number{font-size:140px}.hive-respawn-panel{padding:16px 24px}.hive-respawn-number{font-size:56px}}.app-version{position:absolute;right:16px;bottom:14px;font-size:13px;font-weight:500;letter-spacing:.3px;color:var(--text);opacity:.5;pointer-events:none;user-select:none;font-variant-numeric:tabular-nums;z-index:21}@media(max-width:520px){.app-version{right:auto;left:50%;transform:translate(-50%);bottom:calc(env(safe-area-inset-bottom,10px) + 76px);font-size:12px;opacity:.55}}@media(max-height:500px)and (orientation:landscape){.app-version{right:14px;bottom:10px;left:auto;transform:none;font-size:11.5px}}.install-prompt{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:28;padding:16px}.install-prompt.hidden{display:none}.install-card{background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:18px;padding:22px 24px 18px;text-align:center;width:min(360px,100%);box-shadow:var(--panel-shadow);color:var(--text)}.install-card-icon{width:64px;height:64px;margin:0 auto 10px;border-radius:16px;overflow:hidden;background:var(--panel-strong);box-shadow:0 4px 14px #0066ff2e}.install-card-icon img{width:100%;height:100%;display:block;object-fit:cover}.install-card h2{margin:6px 0 8px;font-size:20px;color:var(--accent-strong)}.install-card-brand{color:var(--cta);font-weight:800}.install-card-sub{margin:0 0 16px;font-size:15px;line-height:1.45;color:var(--text);opacity:.85}.install-card-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.install-card .cta{padding:10px 20px;background:linear-gradient(180deg,#ff87c4,var(--cta));color:#fff;border:none;border-radius:999px;font-weight:700;cursor:pointer;font-size:16px;box-shadow:0 4px 14px #ff69b44d}.install-card .cta:hover{filter:brightness(1.05)}.install-card .ghost{padding:10px 20px;background:transparent;color:var(--text);border:1.5px solid var(--panel-border);border-radius:999px;font-weight:600;cursor:pointer;font-size:16px}.install-card .ghost:hover{border-color:var(--accent);color:var(--accent-strong)}.install-card .text-link{margin-top:12px;background:transparent;border:none;color:var(--text);opacity:.6;font-size:13px;text-decoration:underline;cursor:pointer}.install-card .text-link:hover{opacity:1;color:var(--accent-strong)}.install-guide{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:29;padding:16px;overflow-y:auto}.install-guide.hidden{display:none}.install-guide-card{position:relative;background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:18px;padding:24px 24px 20px;width:min(420px,100%);max-height:calc(100vh - 32px);overflow-y:auto;box-shadow:var(--panel-shadow);color:var(--text)}.install-guide-close{position:absolute;top:8px;right:10px;width:32px;height:32px;border:none;background:transparent;font-size:22px;line-height:1;color:var(--text);opacity:.55;cursor:pointer;border-radius:50%}.install-guide-close:hover{opacity:1;background:#0066ff14}.install-guide-card h2{margin:0 0 10px;font-size:20px;color:var(--accent-strong);padding-right:28px}.install-guide-intro{margin:0 0 14px;font-size:15px;line-height:1.5;color:var(--text);opacity:.9}.install-guide-steps{margin:0 0 12px;padding-left:22px;color:var(--text)}.install-guide-steps li{margin:0 0 10px;font-size:14.5px;line-height:1.55}.install-guide-steps strong{color:var(--accent-strong)}.install-share-icon{display:inline-block;width:1.1em;height:1.1em;vertical-align:-.22em;margin:0 3px 0 0}.install-guide-hint{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#ffc4001f;border:1px solid rgba(255,196,0,.35);font-size:13px;line-height:1.45;color:#8a5a00}.mode-intro-splash{position:fixed;top:32%;left:50%;transform:translate(-50%);pointer-events:none;user-select:none;z-index:12;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0}.mode-intro-splash.hidden{display:none}.mode-intro-splash.is-shown{animation:modeIntroSplash 1.8s cubic-bezier(.16,.84,.3,1) forwards}.mode-intro-label{font-size:64px;font-weight:900;letter-spacing:.16em;color:#cfe0ff;text-shadow:0 0 24px rgba(120,200,255,.5),0 0 60px rgba(120,200,255,.3),0 4px 18px rgba(0,0,0,.6);text-transform:uppercase;white-space:nowrap}@keyframes modeIntroSplash{0%{opacity:0;transform:translate(-50%) scale(.85)}20%{opacity:1;transform:translate(-50%) scale(1)}75%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(1.08)}}@media(max-width:540px){.mode-intro-label{font-size:42px;letter-spacing:.12em}}#hint.hidden{display:none}#hint{transition:opacity .32s ease,transform .32s cubic-bezier(.16,.84,.3,1);opacity:1}#hint.is-fading{opacity:0;transform:translate(-50%) translateY(-6px)}#hint.is-large{animation:hintIntroIn .36s cubic-bezier(.16,.84,.3,1) both}@keyframes hintIntroIn{0%{opacity:0;transform:translate(-50%) translateY(-12px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.pause-mode-label{font-size:22px;font-weight:800;letter-spacing:.04em;padding:0;border:0;background:none;color:var(--accent);margin-bottom:6px;align-self:center;text-align:center;line-height:1.1}.pause-mode-label.hidden{display:none}.pause-mode-label.pause-mode--br{color:var(--cta)}.pause-mode-label.pause-mode--hive{color:#a855f7}.pause-mode-label.pause-mode--custom{color:#f5b400}.dialog-host{pointer-events:none}.dialog-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:9000;background:#10306000;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);pointer-events:auto;transition:background .16s ease-out,backdrop-filter .16s ease-out,-webkit-backdrop-filter .16s ease-out;padding:24px;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}.dialog-backdrop.is-open{background:#1030606b;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.dialog-backdrop.is-closing{background:#10306000;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}.dialog-panel{background:var(--panel-strong);border:1px solid var(--panel-border);border-radius:22px;box-shadow:var(--panel-shadow);padding:28px 32px 24px;min-width:320px;max-width:min(520px,calc(100vw - 48px));border-top:8px solid var(--accent-strong);transform:translateY(10px) scale(.96);opacity:0;transition:transform .18s cubic-bezier(.22,1.4,.4,1),opacity .16s ease-out;display:flex;flex-direction:column;gap:16px;font-family:inherit;color:var(--text)}.dialog-backdrop.is-open .dialog-panel{transform:translateY(0) scale(1);opacity:1}.dialog-backdrop.is-closing .dialog-panel{transform:translateY(6px) scale(.98);opacity:0}.dialog-panel.is-tone-info{border-top-color:var(--accent-strong)}.dialog-panel.is-tone-warn{border-top-color:var(--warn)}.dialog-panel.is-tone-danger{border-top-color:var(--cta-dark)}.dialog-title{font-size:22px;font-weight:800;letter-spacing:-.01em;color:var(--text)}.dialog-message{font-size:17px;line-height:1.6;color:var(--text);white-space:pre-line;word-break:break-word}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.dialog-btn{font:inherit;font-size:16px;font-weight:700;padding:11px 24px;border-radius:999px;border:2px solid transparent;background:#0066ff1a;color:var(--accent-strong);cursor:pointer;min-width:96px;transition:background .14s,transform 80ms,box-shadow .14s}@media(max-width:540px){.dialog-panel{padding:22px 22px 18px;border-radius:18px;min-width:0;max-width:calc(100vw - 32px);gap:12px}.dialog-title{font-size:18px}.dialog-message{font-size:15px;line-height:1.55}.dialog-btn{font-size:14px;padding:10px 18px;min-width:84px}}.dialog-btn:hover{background:#0066ff2e;transform:translateY(-1px)}.dialog-btn:active{transform:translateY(0)}.dialog-btn.is-primary{background:linear-gradient(180deg,#4f9bff,var(--accent-strong));color:#fff;border-color:var(--accent-strong);box-shadow:0 4px 12px #0066ff40}.dialog-btn.is-primary:hover{filter:brightness(1.08);background:linear-gradient(180deg,#4f9bff,var(--accent-strong))}.dialog-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dialog-panel.is-tone-warn .dialog-btn.is-primary{background:linear-gradient(180deg,#ffc24a,var(--warn));border-color:var(--warn);box-shadow:0 4px 12px #ffa50047;color:#4a2a00}.dialog-panel.is-tone-danger .dialog-btn.is-primary{background:linear-gradient(180deg,#ff87c4,var(--cta));border-color:var(--cta);box-shadow:0 4px 12px #ff69b447;color:#fff}
