@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-devanagari-500-normal-B_DH_jja.woff2)format("woff2"),url(/assets/rajdhani-devanagari-500-normal-BPH8g_s8.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-ext-500-normal-DiyUS11w.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-500-normal-CyRWJZ5B.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-500-normal-ByNUCHrt.woff2)format("woff2"),url(/assets/rajdhani-latin-500-normal-DfvNI-Td.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-devanagari-600-normal-DhS7ScYx.woff2)format("woff2"),url(/assets/rajdhani-devanagari-600-normal-BtY48IV_.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-latin-ext-600-normal-C9ZjJQAt.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-600-normal-BleIgkPp.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-latin-600-normal-CXCVEoA9.woff2)format("woff2"),url(/assets/rajdhani-latin-600-normal-Dx02qI2_.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-devanagari-700-normal-BQQOj9BB.woff2)format("woff2"),url(/assets/rajdhani-devanagari-700-normal-DBRwWuxA.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-ext-700-normal-S6aYESQK.woff2)format("woff2"),url(/assets/rajdhani-latin-ext-700-normal-BPaQ7tlD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-700-normal-BPDUZo87.woff2)format("woff2"),url(/assets/rajdhani-latin-700-normal-e0Uj8ZlN.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#070b14;--panel:#0e1626;--border:#1e2a44;--text:#e6edf7;--muted:#8a9bb8;--team-left-1:#3d8bff;--team-left-2:#2ee6c5;--team-right-1:#ff4d5e;--team-right-2:#ffb938;--gold:#f2c14e;--danger:#ff6b3d;--ok:#6be675;--accent-cruise:#ff8a3d;--accent-ion:#a974ff;--accent-interceptor:#bff6ff;--accent-node:#9cff57;--accent-swarm:#ff5cd6;--accent-torpedo:#ffe45c;--accent-tracer:#ffe9b8;--accent-laser:#5cffb0;--font-heading:"Rajdhani", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--accent:var(--team-left-1);--accent-soft:color-mix(in srgb, var(--accent) 62%, var(--text));--short:var(--team-right-1);--body-text:color-mix(in srgb, var(--text) 82%, var(--muted));--text-dim:color-mix(in srgb, var(--muted) 62%, var(--bg));--well:color-mix(in srgb, var(--bg) 70%, var(--panel));--ease:cubic-bezier(.2, .7, .2, 1);--hud-h:clamp(46px, 5.2vh, 56px);--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;margin:0;font-size:14px;line-height:1.4;overflow:hidden}button,input{font:inherit;color:inherit}button,a,input,label,select{touch-action:manipulation}kbd{font-family:var(--font-heading)}#ui{pointer-events:none;-webkit-user-select:none;user-select:none;zoom:var(--ui-scale,1);--ui-vw:calc(100vw / var(--ui-scale,1));--ui-vh:calc(100vh / var(--ui-scale,1));--ui-dvh:calc(100dvh / var(--ui-scale,1));position:fixed;inset:0}#ui>*{pointer-events:auto}.screen{position:absolute;inset:0}[hidden]{display:none!important}.low-fx *,.low-fx :before,.low-fx :after{text-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}#app{position:fixed;inset:0}#app canvas{display:block}#prerender{position:fixed;inset:0}.fatal{text-align:center;background:var(--bg);color:var(--danger);font-family:var(--font-body);place-content:center;gap:.5rem;padding:2rem;display:grid;position:fixed;inset:0}.fatal h1{font-family:var(--font-heading);color:var(--text);margin:0}@property --cf-border{syntax:"<color>";inherits:false;initial-value:#0000}.cf{--cf-cut:10px;--cf-border:var(--border);--cf-fill:var(--panel);isolation:isolate;background:var(--cf-border);clip-path:polygon(var(--cf-cut) 0, 100% 0, 100% calc(100% - var(--cf-cut)), calc(100% - var(--cf-cut)) 100%, 0 100%, 0 var(--cf-cut));transition:--cf-border .14s var(--ease), transform .12s var(--ease), opacity .14s var(--ease);position:relative}.cf:before{content:"";z-index:-1;background:var(--cf-fill);clip-path:polygon(calc(var(--cf-cut) - .6px) 0, 100% 0, 100% calc(100% - var(--cf-cut) + .6px), calc(100% - var(--cf-cut) + .6px) 100%, 0 100%, 0 calc(var(--cf-cut) - .6px));position:absolute;inset:1px}.btn{--cf-cut:9px;--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--panel), white 5%), color-mix(in srgb, var(--panel), black 10%));min-width:120px;height:42px;color:var(--text);font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-size:17px;font-weight:600;display:inline-flex}.btn .icon{font-size:.9em}.btn:hover{--cf-border:color-mix(in srgb, var(--accent) 70%, var(--border));--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--accent) 16%, var(--panel)), color-mix(in srgb, var(--panel), black 10%))}.btn:focus-visible{--cf-border:var(--text);outline:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed;text-shadow:none}.btn:disabled:active{transform:none}.btn-primary{--cf-border:var(--accent);--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--accent) 38%, var(--panel)), color-mix(in srgb, var(--accent) 16%, var(--panel)));text-shadow:0 0 14px color-mix(in srgb, var(--accent) 80%, transparent)}.btn-primary:before{box-shadow:inset 0 0 18px color-mix(in srgb, var(--accent) 35%, transparent)}.btn-primary:hover{--cf-border:color-mix(in srgb, var(--accent), white 35%);--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--accent) 50%, var(--panel)), color-mix(in srgb, var(--accent) 24%, var(--panel)))}.btn-primary:focus-visible{--cf-border:var(--text)}.btn-ghost{--cf-fill:color-mix(in srgb, var(--panel) 70%, var(--bg));color:var(--body-text)}.btn-danger:hover{--cf-border:color-mix(in srgb, var(--danger) 75%, var(--border));--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--danger) 16%, var(--panel)), color-mix(in srgb, var(--panel), black 10%))}.btn-lg{min-width:190px;height:50px;padding:0 30px;font-size:19px}.btn-sm{--cf-cut:6px;letter-spacing:.06em;gap:6px;min-width:0;height:32px;padding:0 12px;font-size:14px}.icon-btn{border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 88%, transparent);width:34px;height:34px;color:var(--muted);cursor:pointer;transition:color .14s var(--ease), border-color .14s var(--ease), background .14s var(--ease);border-radius:2px;place-items:center;padding:0;font-size:18px;display:grid}.icon-btn:hover,.icon-btn:focus-visible{color:var(--text);border-color:color-mix(in srgb, var(--accent) 70%, var(--border));background:color-mix(in srgb, var(--accent) 14%, var(--panel));outline:none}.eyebrow{color:var(--accent-soft);font-family:var(--font-heading);letter-spacing:.24em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:600;line-height:1}.keycap{border:1px solid var(--border);background:var(--well);min-width:20px;height:20px;color:var(--muted);font-family:var(--font-heading);letter-spacing:.04em;border-bottom-width:2px;border-radius:3px;place-items:center;padding:0 5px;font-size:12px;font-weight:700;line-height:1;display:inline-grid}.keycap.wide{padding:0 7px}.chip{border:1px solid var(--border);height:18px;color:var(--muted);font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:2px;align-items:center;padding:0 6px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.chip-warn{border-color:color-mix(in srgb, var(--danger) 55%, var(--border));background:color-mix(in srgb, var(--danger) 12%, transparent);color:color-mix(in srgb, var(--danger), white 25%)}.section-label{color:var(--muted);font-family:var(--font-heading);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:12px;margin:24px 0 12px;font-size:13px;font-weight:600;display:flex}.section-label:after{content:"";background:var(--border);flex:1;height:1px}.icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1em;height:1em}.icon .f{fill:currentColor;stroke:none}.icon .dim{opacity:.35}.coin{flex:none;width:.95em;height:.95em}.coin-face{fill:var(--gold)}.coin-ring{fill:none;stroke:color-mix(in srgb, var(--gold) 50%, black);stroke-width:1.3px}.coin-shine{fill:none;stroke:color-mix(in srgb, var(--gold), white 65%);stroke-width:1.1px;stroke-linecap:round}.gold-amt{color:var(--gold);font-family:var(--font-heading);font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap;align-items:center;gap:.28em;font-weight:700;line-height:1;display:inline-flex}.gold-amt.is-short{color:var(--short)}.switch{cursor:pointer;background:0 0;border:0;flex:none;width:46px;height:24px;padding:0}.switch-track{border:1px solid var(--border);background:var(--well);width:100%;height:100%;transition:background .16s var(--ease), border-color .16s var(--ease);border-radius:2px;display:block;position:relative}.switch-knob{background:var(--muted);width:16px;height:16px;transition:transform .16s var(--ease), background .16s var(--ease);border-radius:1px;position:absolute;top:3px;left:3px}.switch[aria-checked=true] .switch-track{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 30%, var(--panel))}.switch[aria-checked=true] .switch-knob{background:var(--text);box-shadow:0 0 10px var(--accent);transform:translate(22px)}.switch:focus-visible{outline:none}.switch:focus-visible .switch-track{outline:1px solid var(--text);outline-offset:2px}.range{--v:.5;cursor:pointer;appearance:none;background:0 0;width:100%;height:24px;margin:0}.range::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent) calc(var(--v) * 100%), var(--border) calc(var(--v) * 100%));border-radius:2px;height:4px}.range::-moz-range-track{background:var(--border);border-radius:2px;height:4px}.range::-moz-range-progress{background:var(--accent);height:4px}.range::-webkit-slider-thumb{background:var(--text);width:12px;height:18px;box-shadow:0 0 10px color-mix(in srgb, var(--accent) 70%, transparent);appearance:none;border:0;border-radius:1px;margin-top:-7px}.range::-moz-range-thumb{background:var(--text);border:0;border-radius:1px;width:12px;height:18px}.range:focus-visible{outline:none}.range:focus-visible::-webkit-slider-thumb{outline:2px solid var(--accent);outline-offset:2px}.modal-backdrop{z-index:50;overscroll-behavior:contain;padding:max(24px, var(--safe-t)) max(24px, var(--safe-r)) max(24px, var(--safe-b)) max(24px, var(--safe-l));background:color-mix(in srgb, var(--bg) 74%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .16s var(--ease);display:grid;position:absolute;inset:0;overflow-y:auto}.modal{--cf-cut:16px;--cf-border:color-mix(in srgb, var(--accent) 45%, var(--border));--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--panel), white 3%), color-mix(in srgb, var(--panel), black 18%));width:min(520px, calc(var(--ui-vw,100vw) - 48px));animation:pop-in .2s var(--ease);margin:auto;padding:24px 28px 26px}.modal-backdrop.is-instant,.modal-backdrop.is-instant .modal{animation:none}.modal-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.modal-title{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:32px;font-weight:700;line-height:1}.modal-actions{justify-content:flex-end;align-items:center;gap:16px;margin-top:24px;display:flex}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.ui-narrow .modal-backdrop,.ui-compact .modal-backdrop{padding:calc(10px + var(--safe-t)) calc(10px + var(--safe-r)) calc(10px + var(--safe-b)) calc(10px + var(--safe-l))}.ui-narrow .modal{width:100%;padding:18px 16px}.ui-compact .modal{max-width:100%;padding:16px 20px 18px}.ui-narrow .modal-title,.ui-compact .modal-title{font-size:26px}.ui-narrow .modal-actions{flex-wrap:wrap;gap:10px}.ui-narrow .modal-actions .btn{flex:auto}.input-touch :is(.menu-screen,.setup-screen,.mm-screen,.results-screen,.modal-backdrop) :is(.btn,.icon-btn){min-height:44px}.input-touch .modal-backdrop .icon-btn{min-width:44px}.input-touch :is(.menu-screen,.setup-screen,.mm-screen,.results-screen,.modal-backdrop) .switch{align-items:center;height:44px;display:inline-flex}.input-touch :is(.menu-screen,.setup-screen,.mm-screen,.results-screen,.modal-backdrop) .switch-track{height:24px}.badge{--badge-color:var(--muted);width:1.3em;height:1.3em;color:var(--badge-color);fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 2px color-mix(in srgb, var(--badge-color) 70%, transparent));vertical-align:-.25em;flex:none}.badge .f{fill:currentColor;stroke:none}.badge .dim{opacity:.45}.badge-enlisted{--badge-color:var(--accent-interceptor)}.badge-officer{--badge-color:var(--accent-laser)}.badge-flag{--badge-color:var(--accent-ion)}.low-fx .badge{filter:none}.name-tag{vertical-align:bottom;align-items:center;gap:.32em;min-width:0;max-width:100%;display:inline-flex}.name-tag-name{white-space:nowrap;min-width:0;display:inline-flex}.name-tag-base{text-overflow:ellipsis;min-width:0;overflow:hidden}.name-tag-disc{color:var(--text-dim);font-weight:inherit;flex:none}.name-check,.name-star{flex:none;width:.85em;height:.85em}.name-check{fill:none;stroke:var(--ok);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.name-star{fill:var(--gold);filter:drop-shadow(0 0 2px color-mix(in srgb, var(--gold) 60%, transparent))}.name-tag.is-donor .name-tag-name{color:var(--gold)}.low-fx .name-star{filter:none}.hud{--plate-drop:clamp(6px, .75vh, 9px);--plate-cut:clamp(10px, 1.2vh, 14px);z-index:2;height:var(--hud-h);border-bottom:1px solid color-mix(in srgb, var(--team,var(--accent)) 30%, var(--border));background:linear-gradient(180deg, color-mix(in srgb, var(--panel), white 3%), color-mix(in srgb, var(--panel), black 22%));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text) 6%, transparent), 0 6px 18px #0006;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid;position:absolute;top:0;left:0;right:0}.hud:after{content:"";background:linear-gradient(90deg, color-mix(in srgb, var(--team-left-1) 50%, transparent), transparent 30%, transparent 70%, color-mix(in srgb, var(--team-right-1) 50%, transparent));pointer-events:none;height:1px;position:absolute;bottom:-1px;left:0;right:0}.ship-panel{--tint:var(--team-left-1);grid-template-columns:clamp(84px,6.2vw,112px) minmax(0,1fr);align-items:center;gap:clamp(10px,.9vw,16px);min-width:0;padding:0 clamp(12px,1.1vw,20px);display:grid;position:relative}.ship-panel[data-team="1"]{--tint:var(--team-right-1)}.ship-panel:before{content:"";background:var(--tint);width:3px;box-shadow:0 0 12px var(--tint);position:absolute;top:8px;bottom:8px;left:0}.ship-right{grid-template-columns:minmax(0,1fr) clamp(84px,6.2vw,112px)}.ship-right:before{left:auto;right:0}.ship-right .ship-head{text-align:right;order:2;align-items:flex-end}.ship-head{flex-direction:column;gap:2px;min-width:0;display:flex}.ship-title{color:var(--tint);font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;text-shadow:0 0 10px color-mix(in srgb, var(--tint) 55%, transparent);white-space:nowrap;font-size:clamp(13px,1.45vh,16px);font-weight:700;line-height:1}.ship-players{max-width:100%;color:var(--body-text);white-space:nowrap;text-overflow:ellipsis;font-size:clamp(10.5px,1.15vh,12px);font-weight:500;line-height:1.2;overflow:hidden}.ship-players .name-tag,.ship-players .name-tag-name{display:inline}.ship-players .name-tag-base{overflow:visible}.ship-players .name-tag .badge{margin-right:.2em}.ship-players .name-check,.ship-players .name-star{vertical-align:-.1em;margin-left:.2em}.ship-badge{align-self:flex-start}.ship-right .ship-badge{align-self:flex-end}.ship-badge:not(:empty){border:1px solid color-mix(in srgb, var(--danger) 55%, var(--border));background:color-mix(in srgb, var(--danger) 12%, transparent);height:14px;color:color-mix(in srgb, var(--danger), white 25%);font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:2px;padding:0 5px;font-size:9.5px;font-weight:700;line-height:12px;display:inline-flex}.ship-bars{gap:clamp(2px,.3vh,3px);min-width:0;display:grid}.stat-row{--fill:var(--tint);grid-template-columns:clamp(30px,2.3vw,40px) minmax(40px,1fr) clamp(76px,5.2vw,98px) clamp(34px,2.4vw,46px);align-items:center;gap:clamp(6px,.5vw,9px);height:clamp(10px,1.18vh,13px);display:grid}.ship-right .stat-row{direction:rtl}.ship-right .stat-row>*{direction:ltr}.stat-outer .stat-label,.stat-inner .stat-label{color:color-mix(in srgb, var(--fill) 88%, var(--text))}.stat-hull{--fill:color-mix(in srgb, var(--text) 78%, var(--tint))}.stat-label{color:var(--muted);font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;transition:color .2s var(--ease);font-size:clamp(9.5px,1.05vh,11.5px);font-weight:700;line-height:1}.stat-bar{border:1px solid color-mix(in srgb, var(--tint) 22%, var(--border));background:color-mix(in srgb, var(--bg), black 25%);height:clamp(6px,.75vh,8px);position:relative}.stat-hull .stat-bar{height:clamp(5px,.65vh,7px)}.stat-fill{width:calc(var(--f,1) * 100%);background:linear-gradient(90deg, color-mix(in srgb, var(--fill) 55%, var(--bg)), var(--fill));box-shadow:inset -2px 0 0 color-mix(in srgb, var(--fill), white 55%), 0 0 8px -2px var(--fill);transition:width .22s linear, background .2s var(--ease);position:absolute;top:0;bottom:0;left:0}.ship-right .stat-fill{background:linear-gradient(270deg, color-mix(in srgb, var(--fill) 55%, var(--bg)), var(--fill));box-shadow:inset 2px 0 0 color-mix(in srgb, var(--fill), white 55%), 0 0 8px -2px var(--fill);left:auto;right:0}.stat-mark{top:-3px;bottom:-3px;left:calc(var(--t,.5) * 100%);background:var(--text);width:2px;box-shadow:0 0 0 1px color-mix(in srgb, var(--bg) 70%, transparent);opacity:.85;margin-left:-1px;position:absolute}.ship-right .stat-mark{right:calc(var(--t,.5) * 100%);margin-left:0;margin-right:-1px;left:auto}.stat-value{color:var(--text);font-family:var(--font-heading);font-variant-numeric:tabular-nums;letter-spacing:.02em;text-align:right;white-space:nowrap;font-size:clamp(11px,1.25vh,13.5px);font-weight:600;line-height:1}.ship-right .stat-value{text-align:left}.stat-regen{color:var(--muted);font-family:var(--font-heading);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(10.5px,1.15vh,12.5px);font-weight:600;line-height:1}.ship-right .stat-regen{text-align:right}.stat-row.state-warn .stat-fill,.stat-row.state-critical .stat-fill{background:repeating-linear-gradient(-45deg, transparent 0 3px, color-mix(in srgb, var(--bg) 55%, transparent) 3px 6px), var(--fill);animation:1.6s ease-in-out infinite bar-pulse}.stat-row.state-critical .stat-fill{background:repeating-linear-gradient(-45deg, #ffffff9e 0 2px, transparent 2px 5px), var(--fill);animation-duration:.9s;box-shadow:0 0 8px #ffffff73}.stat-row.state-warn .stat-bar{border-color:color-mix(in srgb, var(--fill) 55%, var(--text))}.stat-row.state-critical .stat-bar{border-color:var(--text);box-shadow:0 0 6px color-mix(in srgb, var(--text) 45%, transparent)}.stat-row.state-warn .stat-value,.stat-row.state-critical .stat-value{color:color-mix(in srgb, var(--fill) 55%, white)}.stat-row.state-critical .stat-value{color:#fff;text-shadow:0 0 6px var(--fill)}@keyframes bar-pulse{50%{opacity:.55}}.hud-centre{--plate-shape:polygon(0 0, 100% 0, 100% calc(100% - var(--plate-cut)), calc(100% - var(--plate-cut)) 100%, var(--plate-cut) 100%, 0 calc(100% - var(--plate-cut)));isolation:isolate;min-width:clamp(230px,15.5vw,290px);height:calc(100% + var(--plate-drop));padding:0 clamp(16px, 1.3vw, 24px) var(--plate-drop);background:color-mix(in srgb, var(--team,var(--accent)) 40%, var(--border));clip-path:var(--plate-shape);justify-content:center;align-items:center;gap:clamp(14px,1.2vw,24px);display:flex;position:relative}.hud-centre:before{content:"";z-index:-1;background:radial-gradient(ellipse at 50% 0%, color-mix(in srgb, var(--team,var(--accent)) 16%, transparent), transparent 75%), linear-gradient(180deg, color-mix(in srgb, var(--panel), white 4%), color-mix(in srgb, var(--panel), black 25%));clip-path:var(--plate-shape);position:absolute;inset:0 1px 1px}.hud-time,.hud-gold{flex-direction:column;gap:3px;display:flex}.hud-time{align-items:center}.hud-gold{border-left:1px solid var(--border);align-items:flex-start;padding-left:clamp(14px,1.2vw,22px)}.hud-clock{font-family:var(--font-heading);font-variant-numeric:tabular-nums;letter-spacing:.06em;font-size:clamp(21px,2.45vh,27px);font-weight:700;line-height:.9}.hud-phase{color:var(--muted);font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-size:clamp(9px,.95vh,10.5px);font-weight:700;line-height:1}.hud-gold-amt{font-size:clamp(20px,2.3vh,25px);line-height:.9}.hud-income{color:var(--ok);font-family:var(--font-heading);letter-spacing:.06em;white-space:nowrap;font-size:clamp(10.5px,1.1vh,12px);font-weight:700;line-height:1}.torpedo-banner{z-index:3;filter:drop-shadow(0 0 12px color-mix(in srgb, var(--danger) 45%, transparent));pointer-events:none;animation:1s ease-in-out infinite torpedo-glow;position:absolute;top:clamp(14px,1.8vh,20px);left:50%;transform:translate(-50%)}.game-field>.torpedo-banner{pointer-events:none}.torpedo-banner-plate{--cf-cut:clamp(9px, 1.1vh, 12px);--cf-border:color-mix(in srgb, var(--danger) 80%, var(--border));--cf-fill:repeating-linear-gradient(-45deg, color-mix(in srgb, var(--danger) 70%, transparent) 0 5px, transparent 5px 10px) bottom / 100% 3px no-repeat, linear-gradient(180deg, color-mix(in srgb, var(--panel), var(--danger) 16%), color-mix(in srgb, var(--panel), black 20%));white-space:nowrap;align-items:center;gap:clamp(9px,.9vw,14px);padding:clamp(7px,.85vh,10px) clamp(18px,1.5vw,26px) clamp(9px,1.05vh,12px);display:flex}.torpedo-banner-icon{aspect-ratio:1.12;background:var(--danger);clip-path:polygon(50% 0,100% 100%,0 100%);flex:none;width:clamp(17px,1.9vh,21px);animation:1s steps(2,jump-none) infinite torpedo-blink;position:relative}.torpedo-banner-icon:after{content:"!";color:var(--bg);font-family:var(--font-heading);text-align:center;font-size:clamp(12px,1.4vh,15px);font-style:normal;font-weight:700;line-height:1;position:absolute;inset:22% 0 0}.torpedo-banner-title{color:color-mix(in srgb, var(--danger), white 28%);font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;font-size:clamp(15px,1.75vh,19px);font-weight:700}.torpedo-banner-sep{color:color-mix(in srgb, var(--danger) 60%, var(--muted));font-family:var(--font-heading);font-size:clamp(14px,1.6vh,17px);font-weight:600}.torpedo-banner-eta{color:var(--text);font-family:var(--font-body);font-variant-numeric:tabular-nums;font-size:clamp(13.5px,1.55vh,16.5px);font-weight:600}@keyframes torpedo-glow{50%{filter:drop-shadow(0 0 4px color-mix(in srgb, var(--danger) 25%, transparent))}}@keyframes torpedo-blink{50%{opacity:.35}}.net-banner:not([hidden])~.torpedo-banner{top:60px}.game-field:has(>.torpedo-banner:not([hidden]))>.placing-chip{top:66px}.game-field:has(>.torpedo-banner:not([hidden]))>.toast-stack{top:108px}.game-screen{--ssum-w:clamp(220px, 13.4vw, 258px)}.ssum{--tint:var(--team-left-1);--ssum-cut:clamp(10px, 1.2vh, 14px);--ssum-shape:polygon(0 0, 100% 0, 100% calc(100% - var(--ssum-cut)), calc(100% - var(--ssum-cut)) 100%, 0 100%);z-index:1;isolation:isolate;width:var(--ssum-w);border-left:3px solid var(--tint);filter:drop-shadow(0 6px 12px #00000073);position:absolute;top:0;left:0}.ssum[data-team="1"]{--tint:var(--team-right-1)}.ssum-right{--ssum-shape:polygon(0 0, 100% 0, 100% 100%, var(--ssum-cut) 100%, 0 calc(100% - var(--ssum-cut)));border-right:3px solid var(--tint);border-left:0;left:auto;right:0}.ssum:before,.ssum:after{content:"";z-index:-1;clip-path:var(--ssum-shape);position:absolute;inset:0}.ssum:before{background:color-mix(in srgb, var(--tint) 30%, var(--border))}.ssum:after{background:linear-gradient(180deg, color-mix(in srgb, var(--panel), black 22%), color-mix(in srgb, var(--panel) 94%, transparent));inset:0 1px 1px 0}.ssum-right:after{inset:0 0 1px 1px}.low-fx .ssum{filter:none}.ssum-head{width:100%;height:clamp(22px,2.5vh,26px);color:var(--muted);font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 9px 0 11px;font-size:clamp(10.5px,1.1vh,12px);font-weight:700;display:flex}.ssum-right .ssum-head{flex-direction:row-reverse;padding:0 11px 0 9px}.ssum-head:hover .ssum-title{color:var(--text)}.ssum-title{color:color-mix(in srgb, var(--tint) 62%, var(--text));white-space:nowrap}.ssum-mini{flex:1;align-items:center;gap:4px;min-width:0;font-size:clamp(13px,1.45vh,15px);display:flex}.ssum-right .ssum-mini{justify-content:flex-end}.ssum.is-open .ssum-mini{visibility:hidden}.ssum-key{opacity:.8;min-width:15px;height:15px;padding:0 3px;font-size:9.5px}.ssum-chevron{transition:transform .16s var(--ease);font-size:12px;transform:rotate(90deg)}.ssum.is-open .ssum-chevron{transform:rotate(-90deg)}.ssum-body{gap:clamp(5px,.6vh,7px);padding:0 10px clamp(9px,1.1vh,12px) 11px;display:grid}.ssum-right .ssum-body{padding:0 11px clamp(9px,1.1vh,12px) 10px}.ssum-body[hidden]{display:none}.ssum-player{border-top:1px solid color-mix(in srgb, var(--border) 75%, transparent);gap:clamp(4px,.5vh,5px);padding-top:clamp(5px,.6vh,7px);display:grid}.ssum-row{align-items:center;gap:6px;min-width:0;display:flex}.ssum-right .ssum-row{flex-direction:row-reverse}.ssum-name{color:var(--pc);font-family:var(--font-heading);letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 0 8px color-mix(in srgb, var(--pc) 45%, transparent);font-size:clamp(13px,1.4vh,15px);font-weight:700;line-height:1.1;overflow:hidden}.ssum-you{height:15px;padding:0 4px;font-size:9.5px}.ssum-specs{flex:none;gap:4px;margin-left:auto;display:flex}.ssum-right .ssum-specs{margin-left:0;margin-right:auto}.ssum-spec{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--pc) 35%, var(--border));background:color-mix(in srgb, var(--bg) 60%, transparent);cursor:help;border-radius:3px;place-items:center;width:clamp(21px,2.35vh,25px);font-size:clamp(14px,1.6vh,17px);display:grid}.ssum-spec:hover{border-color:var(--text)}.ssum-none{color:var(--text-dim);font-size:11px;font-style:italic}.ssum-weapons{grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;display:grid}.ssum-eco{grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:3px;display:grid}.ssum-group{color:color-mix(in srgb, var(--accent-node) 70%, var(--muted));font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-size:clamp(9.5px,1.05vh,11px);font-weight:700;overflow:hidden}.ssum-w{border:1px solid color-mix(in srgb, var(--border) 85%, transparent);background:color-mix(in srgb, var(--bg) 55%, transparent);height:clamp(17px,1.95vh,21px);color:var(--text);cursor:help;border-radius:2px;justify-content:center;align-items:center;gap:3px;font-size:clamp(11px,1.2vh,13px);display:flex}.ssum-w .icon{color:color-mix(in srgb, var(--pc) 70%, var(--text));font-size:1.05em}.ssum-w b{font-family:var(--font-heading);font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.ssum-w.is-zero{opacity:.36}.ssum-w.is-max{border-color:color-mix(in srgb, var(--gold) 55%, var(--border))}.ssum-w.is-max b{color:var(--gold)}.ssum-w:hover{border-color:var(--text);opacity:1}.ssum-tip{z-index:2;border:1px solid color-mix(in srgb, var(--tint) 45%, var(--border));background:color-mix(in srgb, var(--panel) 97%, transparent);color:var(--body-text);pointer-events:none;flex-direction:column;gap:2px;padding:6px 9px 7px;font-size:12px;line-height:1.35;display:flex;position:absolute;top:calc(100% + 6px);left:6px;right:6px;box-shadow:0 6px 16px #00000080}.ssum-tip[hidden]{display:none}.ssum-tip-name{color:var(--text);font-family:var(--font-heading);letter-spacing:.04em;font-size:13.5px;font-weight:700}.game-field>.ssum-right~.corner-buttons{right:calc(var(--ssum-w) + 10px)}.ship-player.is-ai{cursor:help;-webkit-text-decoration:underline dotted color-mix(in srgb, var(--muted) 75%, transparent);text-decoration:underline dotted color-mix(in srgb, var(--muted) 75%, transparent);text-underline-offset:2px}.ship-player.is-ai:hover{color:var(--text);-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text)}.ai-panel{--pc:var(--accent);z-index:4;border:1px solid color-mix(in srgb, var(--pc) 50%, var(--border));background:color-mix(in srgb, var(--panel) 97%, transparent);width:clamp(272px,19vw,318px);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text) 6%, transparent), 0 10px 28px #0000008c;color:var(--body-text);pointer-events:none;animation:aip-in .14s var(--ease);gap:8px;padding:11px 13px 12px;font-size:12px;line-height:1.3;display:grid;position:absolute}.ai-panel[hidden]{display:none}.ai-panel:before{content:"";background:var(--pc);height:2px;box-shadow:0 0 10px var(--pc);position:absolute;top:-1px;left:-1px;right:-1px}@keyframes aip-in{0%{opacity:0;transform:translateY(-4px)}}.aip-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.aip-name{color:var(--pc);font-family:var(--font-heading);letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 0 8px color-mix(in srgb, var(--pc) 45%, transparent);font-size:17px;font-weight:700;line-height:1.1;overflow:hidden}.aip-role{text-transform:uppercase;flex:none;height:17px;font-size:10px}.aip-role.is-ally{border-color:color-mix(in srgb, var(--ok) 55%, var(--border));background:color-mix(in srgb, var(--ok) 12%, transparent);color:color-mix(in srgb, var(--ok) 75%, var(--text))}.aip-meta{color:var(--muted);font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;margin-top:-3px;font-size:12.5px;font-weight:700;display:flex}.aip-income{height:16px;font-size:9.5px}.aip-income[hidden]{display:none}.aip-specs{flex-wrap:wrap;gap:4px 12px;display:flex}.aip-spec{color:var(--text);align-items:center;gap:5px;font-size:12px;display:inline-flex}.aip-spec .spec-icon{font-size:17px}.aip-none{color:var(--text-dim);font-style:italic}.aip-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.aip-row[hidden]{display:none}.aip-label{color:var(--muted);font-size:11.5px}.aip-value{color:var(--text);font-weight:600}.aip-pdesc{color:var(--body-text);margin:-4px 0 0;font-size:11.5px;line-height:1.35}.aip-doctrine{border-top:1px solid color-mix(in srgb, var(--border) 75%, transparent);gap:6px;padding-top:8px;display:grid}.aip-section{color:color-mix(in srgb, var(--pc) 60%, var(--text));font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:12px;font-weight:700}.aip-knobs{gap:4px;display:grid}.aip-knobs[hidden]{display:none}.aip-knob{grid-template-columns:94px minmax(0,1fr) 18px;align-items:center;gap:8px;display:grid}.aip-klabel{color:var(--body-text);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.aip-bar{border:1px solid color-mix(in srgb, var(--border) 90%, transparent);background:color-mix(in srgb, var(--bg) 65%, transparent);height:7px;position:relative}.aip-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--pc) 45%, transparent), var(--pc));width:50%;transition:width .7s var(--ease);position:absolute;top:0;bottom:0;left:0}.ai-panel.no-anim .aip-fill{transition:none}.aip-tick{background:color-mix(in srgb, var(--text) 70%, transparent);width:1px;margin-left:-.5px;position:absolute;top:-3px;bottom:-3px}.aip-num{color:var(--muted);font-family:var(--font-heading);font-variant-numeric:tabular-nums;text-align:right;font-size:13px;font-weight:700}.aip-knob.is-tuned .aip-num{color:var(--text)}.aip-knob.is-changed .aip-num{animation:1.4s ease-out aip-num-changed}.aip-knob.is-changed .aip-bar{animation:1.4s ease-out aip-bar-changed}@keyframes aip-num-changed{0%{color:var(--gold)}}@keyframes aip-bar-changed{0%{border-color:var(--pc);box-shadow:0 0 10px var(--pc)}}.aip-focus{text-transform:uppercase;height:18px;font-size:10.5px}.aip-focus.is-tuned{border-color:color-mix(in srgb, var(--pc) 60%, var(--border));background:color-mix(in srgb, var(--pc) 14%, transparent);color:var(--text)}.aip-note{border:1px dashed color-mix(in srgb, var(--muted) 45%, var(--border));background:color-mix(in srgb, var(--bg) 50%, transparent);gap:3px;padding:9px 10px;display:grid}.aip-note[hidden]{display:none}.aip-note-text{color:var(--text);font-family:var(--font-heading);letter-spacing:.06em;font-size:14.5px}.aip-note-detail{color:var(--muted);font-size:11.5px}.aip-note-detail[hidden]{display:none}.segmented{border:1px solid var(--border);background:var(--well);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.seg{border:0;border-right:1px solid var(--border);min-width:0;height:28px;color:var(--muted);font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:color .12s var(--ease), background .12s var(--ease);background:0 0;justify-content:center;align-items:center;padding:0 4px;font-size:13px;font-weight:700;display:flex}.seg:last-child{border-right:0}.seg:hover{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--text)}.seg:focus-visible{outline:1px solid var(--text);outline-offset:-2px}.seg.is-on{background:color-mix(in srgb, var(--accent) 30%, var(--panel));box-shadow:inset 0 -2px 0 var(--accent);color:var(--text)}.seg.is-disabled{color:color-mix(in srgb, var(--muted) 45%, transparent);cursor:not-allowed;background:repeating-linear-gradient(-45deg,#0000 0 4px,#ffffff08 4px 8px)}@media (width<=1600px),(height<=860px){.seg{height:24px;font-size:12px}}.input-touch .seg,.input-touch .segmented-lg .seg{height:44px}.spec-icon{--fam:var(--muted);color:var(--fam)}.fam-eco{--fam:var(--accent-node)}.fam-shield{--fam:var(--accent-interceptor)}.fam-defence{--fam:var(--accent-laser)}.fam-attack{--fam:var(--accent-cruise)}.spec-picker{flex-direction:column;min-width:0;display:flex;container:spec-picker/inline-size}.spec-head{align-items:center;gap:10px;margin:24px 0 10px;display:flex}.spec-head .section-label{flex:1;margin:0}.spec-status.is-complete{border-color:color-mix(in srgb, var(--ok) 55%, var(--border));background:color-mix(in srgb, var(--ok) 10%, transparent);color:color-mix(in srgb, var(--ok), white 25%)}.spec-random{height:26px;padding:0 12px;font-size:12.5px}.spec-slots{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin-bottom:clamp(8px,1.3vh,14px);display:grid}.spec-slot{--cf-cut:8px;--cf-border:color-mix(in srgb, var(--border) 85%, transparent);--cf-fill:color-mix(in srgb, var(--bg) 70%, transparent);min-height:clamp(38px,4.4vh,46px);color:var(--text);text-align:left;cursor:pointer;border:0;align-items:center;gap:12px;padding:4px 10px 4px 14px;display:flex}.spec-slot:disabled{cursor:default}.spec-slot-label{color:var(--muted);font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;flex:none;font-size:11.5px;font-weight:700}.spec-slot-body{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.spec-slot-body .spec-icon{font-size:clamp(18px,2vh,21px)}.spec-slot-name{min-width:0;font-family:var(--font-heading);letter-spacing:.02em;overflow-wrap:break-word;font-size:clamp(14.5px,1.5vh,16px);font-weight:700;line-height:1.15}.spec-slot-empty{color:var(--muted);font-size:12.5px;font-style:italic}.spec-slot-clear{width:22px;height:22px;color:var(--muted);opacity:0;transition:opacity .14s var(--ease);flex:none;place-items:center;font-size:12px;display:grid}.spec-slot.is-filled{--cf-border:color-mix(in srgb, var(--accent) 60%, var(--border));--cf-fill:linear-gradient(90deg, color-mix(in srgb, var(--accent) 16%, var(--panel)), color-mix(in srgb, var(--accent) 4%, var(--panel)))}.spec-slot.is-filled .spec-slot-label{color:color-mix(in srgb, var(--accent) 55%, var(--text))}.spec-slot.is-filled .spec-slot-clear{opacity:.55}.spec-slot.is-filled:hover,.spec-slot.is-filled:focus-visible{--cf-border:color-mix(in srgb, var(--danger) 70%, var(--border));outline:none}.spec-slot.is-filled:focus-visible{--cf-border:var(--text)}.spec-slot.is-filled:hover .spec-slot-clear,.spec-slot.is-filled:focus-visible .spec-slot-clear{color:var(--danger);opacity:1}.spec-body{grid-template-columns:minmax(0,1fr);align-items:start;gap:clamp(8px,1.2vh,12px);display:grid}.spec-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:0 clamp(8px,.7vw,12px);display:grid}.spec-col{flex-direction:column;gap:clamp(4px,.55vh,6px);min-width:0;display:flex}.spec-col-head{border-bottom:1px solid color-mix(in srgb, var(--fam) 45%, transparent);color:color-mix(in srgb, var(--fam) 70%, var(--text));font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;margin:0 0 2px;padding:0 2px 4px;font-size:12px;font-weight:700;line-height:1.25}.spec-card{--cf-cut:7px;--cf-fill:color-mix(in srgb, var(--bg) 55%, var(--panel));color:var(--text);text-align:left;cursor:pointer;border:0;grid-template-columns:clamp(24px,2.6vh,28px) minmax(0,1fr);align-items:start;gap:8px;padding:clamp(5px,.6vh,7px) 22px clamp(5px,.6vh,7px) 7px;display:grid;position:relative}.spec-glyph{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--bg) 70%, transparent);border-radius:3px;place-items:center;font-size:clamp(15px,1.75vh,18px);display:grid}.spec-text{flex-direction:column;gap:1px;min-width:0;display:flex}.spec-name{font-family:var(--font-heading);letter-spacing:.01em;overflow-wrap:break-word;font-size:clamp(13.5px,1.4vh,15px);font-weight:700;line-height:1.15}.spec-short{color:var(--muted);overflow-wrap:break-word;font-size:clamp(11px,1.12vh,12px);line-height:1.3}.spec-order{border:1px solid var(--border);color:#0000;width:15px;height:15px;font-family:var(--font-heading);border-radius:50%;place-items:center;font-size:10.5px;font-weight:700;line-height:1;display:grid;position:absolute;top:5px;right:5px}.spec-card:hover,.spec-card:focus-visible{--cf-border:color-mix(in srgb, var(--accent) 60%, var(--border));outline:none}.spec-card:focus-visible{--cf-border:var(--text)}.spec-card.is-on{--cf-border:var(--accent);--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--accent) 22%, var(--panel)), color-mix(in srgb, var(--accent) 7%, var(--panel)))}.spec-card.is-on .spec-glyph{border-color:color-mix(in srgb, var(--accent) 60%, var(--border));box-shadow:0 0 10px color-mix(in srgb, var(--accent) 35%, transparent)}.spec-card.is-on .spec-short{color:var(--body-text)}.spec-card.is-on .spec-order{border-color:var(--accent);background:var(--accent);color:var(--bg);box-shadow:0 0 8px color-mix(in srgb, var(--accent) 60%, transparent)}.spec-picker.is-full .spec-card:not(.is-on){opacity:.78}.spec-picker.is-full .spec-card:not(.is-on):hover,.spec-picker.is-full .spec-card:not(.is-on):focus-visible{opacity:1}.spec-detail{--fam:var(--muted);border:1px solid var(--border);border-left:2px solid color-mix(in srgb, var(--fam) 60%, var(--border));background:color-mix(in srgb, var(--bg) 55%, transparent);align-items:flex-start;gap:12px;min-height:clamp(64px,7.4vh,80px);padding:9px 14px 10px;display:flex}.spec-detail-glyph{border:1px solid color-mix(in srgb, var(--fam) 45%, var(--border));background:color-mix(in srgb, var(--bg) 70%, transparent);border-radius:3px;flex:none;place-items:center;width:38px;height:38px;font-size:24px;display:grid}.spec-detail.is-idle .spec-detail-glyph{display:none}.spec-detail-body{flex:1;min-width:0}.spec-detail-top{flex-wrap:wrap;align-items:baseline;gap:2px 10px;display:flex}.spec-detail-name{color:var(--text);font-family:var(--font-heading);letter-spacing:.04em;font-size:16px;font-weight:700;line-height:1.2}.spec-detail-fam{color:color-mix(in srgb, var(--fam) 70%, var(--text));font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;font-size:11.5px;font-weight:700}.spec-detail-state{color:var(--muted);font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;margin-left:auto;font-size:11.5px;font-weight:700}.spec-detail-state.is-picked{color:color-mix(in srgb, var(--accent) 65%, var(--text))}.spec-detail-text{color:var(--body-text);margin:3px 0 0;font-size:13.5px;line-height:1.45}.spec-detail.is-idle .spec-detail-text{color:var(--muted);margin:0}.spec-detail-hint{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);color:var(--muted);margin:auto 0 0;padding-top:10px;font-size:12px;line-height:1.45;display:none}@container spec-picker (width>=1040px){.spec-body{grid-template-columns:minmax(0,1fr) clamp(240px,25cqi,320px);align-items:stretch}.spec-detail{flex-direction:column;gap:10px;padding:14px 16px}.spec-detail-glyph{width:48px;height:48px;font-size:30px}.spec-detail-top{flex-direction:column;align-items:flex-start}.spec-detail-name{font-size:19px}.spec-detail-state{margin:4px 0 0}.spec-detail-text{margin-top:8px;font-size:14.5px}.spec-detail-hint{display:block}}@container spec-picker (width<=620px){.spec-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@container spec-picker (width<=300px){.spec-grid{grid-template-columns:minmax(0,1fr)}}.input-touch .spec-card,.input-touch .spec-slot{min-height:44px}.spec-chips{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.spec-chip{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 60%, transparent);height:24px;color:var(--body-text);font-family:var(--font-heading);letter-spacing:.02em;white-space:nowrap;border-radius:2px;align-items:center;gap:6px;padding:0 8px 0 5px;font-size:13px;font-weight:600;display:inline-flex}.spec-chip .spec-icon{font-size:16px}.spec-chips-empty{color:var(--muted);font-size:12.5px;font-style:italic}.game-screen{--team:var(--team-left-1);--cc-btn:clamp(56px, 7.4vh, 80px);--cc-gap:clamp(5px, .62vh, 7px);--cc-pad:clamp(9px, 1vh, 12px);--cc-frame-w:calc(4 * var(--cc-btn) + 3 * var(--cc-gap) + 2 * var(--cc-pad) + 2px);--mm-w:clamp(256px, 18.75vw, 360px);--mm-pad:clamp(9px, 1vh, 12px);--mm-frame-w:calc(var(--mm-w) + 2 * var(--mm-pad) + 2px);--mm-frame-h:calc(var(--mm-w) * 34 / 116 + 2 * var(--mm-pad) + 2px);--console-cut:clamp(12px, 1.4vh, 16px);pointer-events:none}.game-screen>.hud,.game-screen>.console{pointer-events:auto}.game-field{top:var(--hud-h);pointer-events:none;position:absolute;bottom:0;left:0;right:0}.game-field>*{pointer-events:auto}.corner-buttons{gap:6px;display:flex;position:absolute;top:8px;right:10px}.corner-btn{background:color-mix(in srgb, var(--panel) 80%, transparent);width:30px;height:30px;font-size:16px}.placing-chip{border:1px solid color-mix(in srgb, var(--accent) 60%, var(--border));background:color-mix(in srgb, var(--panel) 92%, transparent);box-shadow:0 0 18px color-mix(in srgb, var(--accent) 25%, transparent);font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:14px;padding:7px 14px;font-size:15px;font-weight:700;display:flex;position:absolute;top:20px;left:50%;transform:translate(-50%)}.placing-keys{color:var(--muted);font-family:var(--font-body);letter-spacing:0;text-transform:none;align-items:center;gap:4px;font-size:12px;font-weight:400;display:inline-flex}.placing-keys b{color:var(--text);font-weight:600}.game-field.is-live{pointer-events:auto}.game-field.is-placing{cursor:crosshair}.net-banner{z-index:2;border:1px solid color-mix(in srgb, var(--gold) 55%, var(--border));background:color-mix(in srgb, var(--panel) 94%, transparent);box-shadow:0 0 18px color-mix(in srgb, var(--gold) 22%, transparent);color:color-mix(in srgb, var(--gold), white 30%);font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;pointer-events:none;align-items:center;gap:10px;padding:7px 16px;font-size:15px;font-weight:700;display:flex;position:absolute;top:20px;left:50%;transform:translate(-50%)}.game-field>.net-banner{pointer-events:none}.net-banner-dot{background:var(--gold);width:8px;height:8px;box-shadow:0 0 8px var(--gold);border-radius:50%;animation:1.1s ease-in-out infinite net-pulse}@keyframes net-pulse{50%{opacity:.3}}.net-banner:not([hidden])~.placing-chip{top:60px}.toast-stack{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:62px;left:50%;transform:translate(-50%)}.game-field>.toast-stack,.game-field>.ghost-tip{pointer-events:none}.toast{border:1px solid color-mix(in srgb, var(--danger) 55%, var(--border));background:color-mix(in srgb, var(--panel) 94%, transparent);box-shadow:0 0 16px color-mix(in srgb, var(--danger) 22%, transparent);color:color-mix(in srgb, var(--danger), white 35%);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;animation:toast-in .18s var(--ease), toast-out .4s ease-in 1.8s forwards;padding:6px 14px;font-size:15px;font-weight:700}.toast.is-again{animation:toast-in .18s var(--ease), toast-out .4s ease-in 1.8s forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}}.ghost-tip{border:1px solid color-mix(in srgb, var(--danger) 60%, var(--border));background:color-mix(in srgb, var(--bg) 88%, transparent);color:color-mix(in srgb, var(--danger), white 30%);white-space:nowrap;padding:3px 8px;font-size:12px;font-weight:600;position:absolute}.console{--frame-edge:color-mix(in srgb, var(--team) 38%, var(--border));z-index:2;isolation:isolate;box-sizing:border-box;background:linear-gradient(180deg, var(--frame-edge), color-mix(in srgb, var(--border), black 20%));clip-path:var(--frame-shape);position:absolute;bottom:0}.console:before,.console:after{content:"";z-index:-1;pointer-events:none;clip-path:var(--frame-shape);position:absolute}.console:before{background:radial-gradient(120% 70% at 50% 0%, color-mix(in srgb, var(--team) 10%, transparent), transparent 70%), linear-gradient(180deg, color-mix(in srgb, var(--panel), white 3%), color-mix(in srgb, var(--panel), black 30%));box-shadow:inset 0 0 22px color-mix(in srgb, var(--team) 12%, transparent);inset:1px 1px 0}.console:after{border:1px solid color-mix(in srgb, var(--team) 14%, transparent);border-bottom:0;inset:4px 4px 0;box-shadow:inset 0 0 0 1px #00000059}.console-trim{background:linear-gradient(90deg, transparent, var(--team) 18%, color-mix(in srgb, var(--team), white 30%) 50%, var(--team) 82%, transparent);height:2px;box-shadow:0 0 10px var(--team);pointer-events:none;position:absolute;top:0}.console-minimap{--frame-shape:polygon(0 6px, 6px 0, calc(100% - var(--console-cut) * 1.6) 0, 100% calc(var(--console-cut) * 1.6), 100% 100%, 0 100%);width:var(--mm-frame-w);height:var(--mm-frame-h);padding:calc(var(--mm-pad) + 1px) calc(var(--mm-pad) + 1px) var(--mm-pad);border-top-left-radius:0;left:0}.console-minimap .console-trim{right:calc(var(--console-cut) * 1.6);left:6px}.console-card{--frame-shape:polygon(calc(var(--console-cut) * 1.6) 0, calc(100% - 6px) 0, 100% 6px, 100% 100%, 0 100%, 0 calc(var(--console-cut) * 1.6));gap:calc(var(--cc-gap) + 1px);width:var(--cc-frame-w);padding:calc(var(--cc-pad) + 1px) calc(var(--cc-pad) + 1px) var(--cc-pad);flex-direction:column;display:flex;right:0}.console-card .console-trim{right:6px;left:calc(var(--console-cut) * 1.6)}.console-corner{border-color:color-mix(in srgb, var(--team), white 15%);opacity:.85;pointer-events:none;border-style:solid;border-width:0;width:18px;height:18px;position:absolute}.console-minimap .console-corner{border-top-width:2px;border-left-width:2px;top:5px;left:5px}.console-card .console-corner{border-top-width:2px;border-right-width:2px;top:5px;right:5px}.console-targeting{--frame-shape:polygon(calc(var(--console-cut) * 1.2) 0, calc(100% - 6px) 0, 100% 6px, 100% 100%, 0 100%, 0 calc(var(--console-cut) * 1.2));right:0;bottom:calc(var(--cc-frame-h,380px) + var(--cc-gap));gap:var(--cc-gap);width:var(--cc-frame-w);padding:calc(var(--cc-pad) - 3px) calc(var(--cc-pad) + 1px) var(--cc-pad);flex-direction:column;display:flex}.console-targeting[hidden]{display:none}.console-targeting:before{inset:1px}.console-targeting:after{border-bottom:1px solid color-mix(in srgb, var(--team) 14%, transparent);inset:4px}.console-targeting .console-trim{right:6px;left:calc(var(--console-cut) * 1.2)}.console-base{right:var(--cc-frame-w);bottom:0;left:var(--mm-frame-w);border-top:1px solid color-mix(in srgb, var(--team) 45%, var(--border));background:repeating-linear-gradient(90deg, transparent 0 46px, color-mix(in srgb, var(--team) 30%, transparent) 46px 48px), linear-gradient(180deg, color-mix(in srgb, var(--panel), black 25%), var(--bg));height:5px;box-shadow:0 -2px 10px color-mix(in srgb, var(--team) 18%, transparent);pointer-events:none;position:absolute}.chat-anchor{bottom:calc(var(--mm-frame-h) + 8px);z-index:3;width:min(520px, calc(var(--ui-vw,100vw) - var(--cc-frame-w) - 40px));pointer-events:none;position:absolute;left:10px}.chat-anchor>*{pointer-events:auto}@media (height<=820px){.chat-anchor{width:min(380px, calc(var(--ui-vw,100vw) - var(--cc-frame-w) - 40px))}.chat-anchor .chat-hint{white-space:nowrap}}.mm-surface{width:var(--mm-w);aspect-ratio:116/34;border:1px solid color-mix(in srgb, var(--team) 22%, var(--border));background:color-mix(in srgb, var(--bg), black 30%);cursor:crosshair;touch-action:none;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000080,inset 0 0 16px #0009}.mm-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.mm-view{box-sizing:border-box;border:2px solid var(--text);background:color-mix(in srgb, var(--text) 5%, transparent);box-shadow:0 0 0 1px #000000b3, 0 0 8px color-mix(in srgb, var(--text) 45%, transparent), inset 0 0 0 1px #00000080;pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.cc-info{border:1px solid color-mix(in srgb, var(--team) 16%, var(--border));background:color-mix(in srgb, var(--bg) 62%, transparent);flex-direction:column;gap:4px;min-width:0;padding:5px 6px;display:flex;box-shadow:inset 0 0 12px #00000059}.cc-info-top{align-items:center;gap:8px;min-width:0;height:clamp(40px,4.3vh,46px);display:flex}.cc-info-icon{border:1px solid color-mix(in srgb, var(--team) 35%, var(--border));background:var(--well);flex:none;place-items:center;width:clamp(34px,3.7vh,40px);height:clamp(34px,3.7vh,40px);display:grid}.cc-info-icon:empty{display:none}.cc-info-icon .cc-svg{width:88%;height:88%}.cc-info-icon .cc-layer-mark{display:none}.cc-info-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.cc-info-line{align-items:center;gap:8px;min-width:0;display:flex}.cc-info-name{color:var(--text);font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;flex:none;font-size:clamp(12.5px,1.35vh,14.5px);font-weight:700;line-height:1.05}.cc-info-sub{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(10.5px,1.1vh,12px);line-height:1.3;display:-webkit-box;overflow:hidden}.cc-hp{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.cc-hp-bar{border:1px solid var(--border);background:color-mix(in srgb, var(--bg), black 30%);flex:1;min-width:24px;height:5px;position:relative}.cc-hp-fill{width:calc(var(--f,1) * 100%);background:var(--ok);box-shadow:0 0 6px color-mix(in srgb, var(--ok) 60%, transparent);position:absolute;inset:0 auto 0 0}.cc-hp.is-low .cc-hp-fill{background:var(--danger);box-shadow:0 0 6px color-mix(in srgb, var(--danger) 60%, transparent)}.cc-hp-text{color:var(--body-text);font-family:var(--font-heading);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:11.5px;font-weight:600}.cc-queue{align-items:center;gap:6px;min-width:0;height:20px;display:flex}.cc-queue-label{color:var(--muted);font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;flex:none;font-size:10.5px;font-weight:700}.cc-queue-count{color:var(--text);letter-spacing:.04em}.cc-queue-items{flex:1;gap:3px;min-width:0;display:flex;overflow:hidden}.cc-queue-empty{color:var(--text-dim);font-size:11px}.cc-qi{isolation:isolate;border:1px solid var(--border);background:var(--well);width:20px;height:20px;color:var(--qi-acc,var(--muted));cursor:pointer;flex:none;place-items:center;padding:0;font-size:13px;display:grid;position:relative;overflow:hidden}.cc-qi.cls-cruise{--qi-acc:var(--accent-cruise)}.cc-qi.cls-ion{--qi-acc:var(--accent-ion)}.cc-qi.cls-interceptor{--qi-acc:var(--accent-interceptor)}.cc-qi.cls-swarm{--qi-acc:var(--text)}.cc-qi.cls-torpedo1,.cc-qi.cls-torpedo2{--qi-acc:var(--danger)}.cc-qi.is-held{border-color:var(--gold);box-shadow:inset 0 0 6px color-mix(in srgb, var(--gold) 45%, transparent)}.cc-qi.is-building{border-color:color-mix(in srgb, var(--qi-acc) 60%, var(--border))}.cc-qi-progress{z-index:-1;height:calc(var(--p,0) * 100%);background:color-mix(in srgb, var(--qi-acc) 35%, transparent);box-shadow:inset 0 1px 0 var(--qi-acc);position:absolute;inset:auto 0 0}.cc-qi:not(.is-building) .cc-qi-progress{display:none}.cc-qi-tier{color:var(--text);font-family:var(--font-heading);font-size:9px;font-weight:700;line-height:1;position:absolute;bottom:-1px;right:1px}.cc-qi:hover{border-color:var(--short)}.cc-qi>*,.cc-btn>*{pointer-events:none}.cc-tabs{height:clamp(28px,3vh,33px);margin:0 calc(-1 * var(--cc-pad) + 4px);padding:3px calc(var(--cc-pad) - 4px);border-top:1px solid color-mix(in srgb, var(--team) 30%, var(--border));background:linear-gradient(180deg, color-mix(in srgb, var(--panel), white 7%), color-mix(in srgb, var(--panel), black 12%));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text) 8%, transparent), 0 3px 6px #00000059;box-sizing:content-box;border-bottom:1px solid #0009;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;display:grid;position:relative}.cc-tab{border:1px solid color-mix(in srgb, var(--team) 14%, var(--border));background:linear-gradient(180deg, color-mix(in srgb, var(--panel), white 3%), var(--well));min-width:0;color:var(--muted);font-family:var(--font-heading);cursor:pointer;transition:color .12s var(--ease), background .12s var(--ease), border-color .12s var(--ease);place-items:center;padding:0 2px;display:grid;position:relative}.cc-tab-label{letter-spacing:.03em;text-overflow:clip;text-transform:uppercase;white-space:nowrap;font-size:clamp(10px,1.18vh,13px);font-weight:700;line-height:1;overflow:hidden}.cc-tab-ico{display:none}.cc-tab-key{color:var(--muted);font-family:var(--font-heading);font-size:clamp(8.5px,.95vh,10px);font-weight:700;line-height:1;position:absolute;top:1px;left:3px}.cc-tab:hover{color:var(--text);border-color:color-mix(in srgb, var(--team) 40%, var(--border))}.cc-tab.is-active{border-color:color-mix(in srgb, var(--team) 70%, var(--border));background:linear-gradient(180deg, color-mix(in srgb, var(--team) 30%, var(--panel)), color-mix(in srgb, var(--team) 10%, var(--panel)));box-shadow:inset 0 -2px 0 var(--team), 0 0 10px color-mix(in srgb, var(--team) 30%, transparent);color:var(--text)}.cc-tab.is-active .cc-tab-key{color:color-mix(in srgb, var(--team), white 40%)}.console-card.is-selection .cc-tab{opacity:.6}.cc-grid{grid-template-columns:repeat(4, var(--cc-btn));grid-auto-rows:var(--cc-btn);gap:var(--cc-gap);display:grid}.cc-btn{--edge:color-mix(in srgb, var(--team) 30%, var(--border));width:var(--cc-btn);height:var(--cc-btn);border:1px solid var(--edge);background:radial-gradient(90% 80% at 50% 38%, color-mix(in srgb, var(--team) 13%, transparent), transparent 70%), linear-gradient(180deg, color-mix(in srgb, var(--panel), white 5%), color-mix(in srgb, var(--bg), var(--panel) 30%));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text) 10%, transparent), inset 0 -1px 0 #00000080, 0 1px 0 #00000080;color:var(--text);cursor:pointer;transition:border-color .11s var(--ease), box-shadow .11s var(--ease), transform 90ms var(--ease);padding:0;display:block;position:relative;overflow:hidden}.cc-btn:hover:not(.is-empty){--edge:color-mix(in srgb, var(--team), white 25%);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text) 16%, transparent), inset 0 0 14px color-mix(in srgb, var(--team) 30%, transparent), 0 0 10px color-mix(in srgb, var(--team) 35%, transparent)}.cc-btn.is-empty{--edge:color-mix(in srgb, var(--border), black 35%);background:color-mix(in srgb, var(--bg), black 25%);cursor:default;box-shadow:inset 0 3px 8px #000000a6}.cc-btn.is-empty>*{display:none}.cc-ico{place-items:center;display:grid;position:absolute;inset:8% 10% 21%}.cc-btn:has(.cc-price[hidden]) .cc-ico{inset:12%}.cc-svg{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;filter:drop-shadow(0 0 3px color-mix(in srgb, var(--acc) 45%, transparent));overflow:visible}.cc-svg .t{stroke:var(--team)}.cc-svg .tf{fill:color-mix(in srgb, var(--team) 26%, var(--bg))}.cc-svg .a{stroke:var(--acc)}.cc-svg .af{fill:var(--acc);stroke:none}.cc-svg .g{stroke:var(--gold)}.cc-svg .gf{fill:var(--gold);stroke:none}.cc-svg .n{stroke:var(--accent-node)}.cc-svg .nf{fill:var(--accent-node);stroke:none}.cc-svg .w{stroke:var(--text)}.cc-svg .wf{fill:var(--text);stroke:none}.cc-svg .k{stroke:color-mix(in srgb, var(--bg), black 20%)}.cc-svg circle.k,.cc-svg rect.k{fill:color-mix(in srgb, var(--bg), black 20%)}.cc-svg .x{stroke:var(--danger)}.cc-svg .thin{stroke-width:1.6px}.cc-svg .dim{opacity:.55}.cc-svg .dash{stroke-dasharray:5 4}.cc-svg .aura{opacity:.16}.cc-svg .tf.t,.cc-svg .af.a{stroke-width:2.2px}.cc-key{border-right:1px solid var(--edge);border-bottom:1px solid var(--edge);background:color-mix(in srgb, var(--bg) 85%, transparent);min-width:13px;color:color-mix(in srgb, var(--gold), white 20%);font-family:var(--font-heading);text-align:center;padding:1px 3px 1px 2px;font-size:clamp(10.5px,1.2vh,13px);font-weight:700;line-height:1;position:absolute;top:0;left:0}.cc-badge{background:color-mix(in srgb, var(--bg) 85%, transparent);color:var(--body-text);font-family:var(--font-heading);border-radius:2px;padding:0 3px;font-size:clamp(9.5px,1vh,11px);font-weight:700;line-height:1.25;position:absolute;top:2px;right:2px}.cc-price{height:clamp(14px,1.6vh,18px);color:var(--gold);font-family:var(--font-heading);font-variant-numeric:tabular-nums;background:linear-gradient(#00000059,#000000b3);justify-content:center;align-items:center;gap:2px;font-size:clamp(11px,1.3vh,14px);font-weight:700;line-height:1;display:flex;position:absolute;bottom:0;left:0;right:0}.cc-price .coin{width:.85em;height:.85em}.cc-price.is-gain{color:color-mix(in srgb, var(--gold), white 15%)}.cc-price.is-maxed{color:var(--ok);letter-spacing:.12em}.cc-pips{gap:1px;height:3px;display:flex;position:absolute;bottom:calc(clamp(14px,1.6vh,18px) + 2px);left:4px;right:4px}.cc-pip{background:color-mix(in srgb, var(--border), white 12%);flex:1}.cc-pip.on{background:var(--team);box-shadow:0 0 4px var(--team)}.cc-lock{background:repeating-linear-gradient(-45deg, transparent 0 5px, #ffffff08 5px 10px), color-mix(in srgb, var(--bg) 62%, transparent);color:var(--body-text);font-size:calc(var(--cc-btn) * .34);place-items:center;display:none;position:absolute;inset:0}.cc-btn.is-locked .cc-lock{display:grid}.cc-btn.is-locked .cc-ico{filter:grayscale(.8);opacity:.5}.cc-btn.is-locked .cc-price{display:none}.cc-btn.is-locked .cc-key{color:var(--muted)}.cc-btn.is-poor .cc-ico{filter:grayscale(.55)brightness(.75);opacity:.55}.cc-btn.is-poor .cc-price{color:var(--short)}.cc-btn.is-maxed .cc-ico{opacity:.8}.cc-btn.is-active{--edge:color-mix(in srgb, var(--team), white 35%);box-shadow:inset 0 0 0 1px var(--team), inset 0 0 16px color-mix(in srgb, var(--team) 45%, transparent), 0 0 12px color-mix(in srgb, var(--team) 45%, transparent)}.cc-btn.is-info{cursor:help}.cc-btn.is-pressed{animation:cc-press .22s var(--ease)}.cc-btn.is-denied{animation:cc-deny .3s var(--ease)}@keyframes cc-press{0%{box-shadow:inset 0 0 20px color-mix(in srgb, var(--text) 40%, transparent);transform:scale(.92)}}@keyframes cc-deny{0%,to{transform:none}0%,60%{border-color:var(--short)}25%{transform:translate(-2px)}50%{transform:translate(2px)}}.cc-tip{z-index:100;border:1px solid color-mix(in srgb, var(--team) 35%, var(--border));border-top:2px solid var(--team);background:color-mix(in srgb, color-mix(in srgb, var(--bg), black 25%) 95%, transparent);width:clamp(260px,17vw,320px);box-shadow:0 14px 34px #0009, inset 0 0 18px color-mix(in srgb, var(--team) 8%, transparent);pointer-events:none;padding:10px 12px;font-size:12.5px;position:fixed}.cc-tip-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.cc-tip-title{color:var(--text);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;font-size:16px;font-weight:700;line-height:1.1}.cc-tip-key{color:color-mix(in srgb, var(--gold), white 20%);flex:none}.cc-tip-price{align-items:center;gap:10px;margin-top:5px;display:flex}.cc-tip-price .gold-amt{font-size:16px}.cc-tip-gain{color:var(--gold);font-family:var(--font-heading);align-items:center;font-size:16px;font-weight:700;display:inline-flex}.cc-tip-meta{color:var(--muted);font-family:var(--font-heading);letter-spacing:.08em;white-space:nowrap;margin-left:auto;font-size:12px;font-weight:700}.cc-tip-body{color:var(--body-text);margin:6px 0 0;line-height:1.45}.cc-tip-stats{border-top:1px solid var(--border);grid-template-columns:auto 1fr;gap:2px 12px;margin:7px 0 0;padding:6px 0 0;display:grid}.cc-tip-stats dt{color:var(--muted);font-size:12px}.cc-tip-stats dd{color:var(--text);font-family:var(--font-heading);font-variant-numeric:tabular-nums;text-align:right;margin:0;font-size:13.5px;font-weight:600}.cc-tip-next{color:var(--ok);margin:7px 0 0;font-size:12px;line-height:1.4}.cc-tip-next b{font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.cc-tip-warn{color:var(--short);margin:7px 0 0;font-weight:600}.cc-tip-hint{color:var(--muted);margin:7px 0 0;font-size:11.5px}.cc-tip-tag{color:color-mix(in srgb, var(--tag) 80%, white);font-family:var(--font-heading);letter-spacing:.06em;align-items:center;gap:6px;margin-top:4px;font-size:12px;font-weight:700;line-height:1.1;display:flex}.cc-tip-swatch{border:1px solid color-mix(in srgb, var(--tag), white 45%);background:var(--tag);width:10px;height:10px;box-shadow:0 0 6px color-mix(in srgb, var(--tag) 70%, transparent);flex:none}.cc-info[style*=--sel-acc] .cc-info-icon{border-color:color-mix(in srgb, var(--sel-acc) 70%, var(--border));box-shadow:inset 0 0 10px color-mix(in srgb, var(--sel-acc) 22%, transparent)}.cc-info.is-layer .cc-info-sub{color:color-mix(in srgb, var(--sel-acc) 72%, var(--text))}.cc-tip[style*=max-height]{overflow-y:auto}.cc-info:not(.has-selection) .cc-info-line{display:none}.cc-info:not(.has-selection) .cc-info-sub{-webkit-line-clamp:3;line-height:1.25}.cc-queue-more{color:var(--body-text);font-family:var(--font-heading);font-variant-numeric:tabular-nums;flex:none;align-self:center;font-size:11px;font-weight:700}.cc-info-name{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.cc-hp-bar{min-width:14px}@media (height<=820px){.cc-hp-text{font-size:10.5px}.cc-tab-label{letter-spacing:0;font-size:10px}}.cc-fill{height:calc(var(--p,0) * 100%);background:linear-gradient(180deg, color-mix(in srgb, var(--team) 34%, transparent), color-mix(in srgb, var(--team) 14%, transparent));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--team), white 35%);position:absolute;inset:auto 0 0}.cc-svg .ok{stroke:var(--ok)}.cc-price.is-on{color:var(--ok);letter-spacing:.14em}.cc-btn.is-toggle .cc-price:not(.is-on){color:var(--muted);letter-spacing:.14em}.cc-btn.is-toggle.is-active{--edge:color-mix(in srgb, var(--gold), white 20%);box-shadow:inset 0 0 0 1px var(--gold), inset 0 0 18px color-mix(in srgb, var(--gold) 40%, transparent), 0 0 12px color-mix(in srgb, var(--gold) 45%, transparent)}.cc-btn.is-switch.is-toggle.is-active{--edge:color-mix(in srgb, var(--team), white 25%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--team) 70%, transparent), inset 0 0 12px color-mix(in srgb, var(--team) 30%, transparent)}.cc-btn.is-off .cc-ico{filter:grayscale(.85)brightness(.8);opacity:.5}.cc-btn.is-switch.is-off .cc-price{color:var(--danger)}.cc-btn.is-toggle .cc-price.is-mixed{color:var(--gold);letter-spacing:.06em}.cc-gauges{align-items:center;gap:10px;min-width:0;margin-top:2px;display:flex}.cc-gauges[hidden],.cc-mag[hidden],.cc-gauge[hidden]{display:none}.cc-info.has-gauges .cc-info-sub{-webkit-line-clamp:1}.cc-mag{flex:none;gap:3px;display:flex}.cc-round{border:1px solid color-mix(in srgb, var(--accent-interceptor) 50%, var(--border));border-radius:2px 2px 1px 1px;width:7px;height:11px}.cc-round.is-free{background:var(--accent-interceptor);box-shadow:0 0 5px color-mix(in srgb, var(--accent-interceptor) 60%, transparent)}.cc-round.is-paid{border-color:var(--gold);background:var(--gold);box-shadow:0 0 5px color-mix(in srgb, var(--gold) 55%, transparent)}.cc-gauge{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.cc-gauge-label,.cc-gauge-text{color:var(--muted);font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;flex:none;font-size:10.5px;font-weight:700}.cc-gauge-text{color:var(--body-text);letter-spacing:.02em;text-transform:none;font-variant-numeric:tabular-nums}.cc-gauge-bar{border:1px solid var(--border);background:color-mix(in srgb, var(--bg), black 30%);flex:1;min-width:20px;height:5px;position:relative}.cc-gauge-fill{width:calc(var(--p,0) * 100%);background:var(--sel-acc,var(--team));box-shadow:0 0 6px color-mix(in srgb, var(--sel-acc,var(--team)) 55%, transparent);position:absolute;inset:0 auto 0 0}.cc-queue-name{color:var(--muted)}.cc-tip-table{border-top:1px solid var(--border);margin:8px 0 0;padding:6px 0 0}.cc-eff{border-collapse:separate;border-spacing:2px;table-layout:fixed;width:100%;font-family:var(--font-heading);font-variant-numeric:tabular-nums}.cc-eff caption{color:var(--muted);letter-spacing:.12em;text-align:left;text-transform:uppercase;margin-bottom:3px;font-size:11px;font-weight:700}.cc-eff th{color:var(--body-text);letter-spacing:.02em;white-space:nowrap;padding:0;font-size:11px;font-weight:700;line-height:1.1}.cc-eff thead th{vertical-align:bottom;text-align:center}.cc-eff thead th.has-glyph .cc-eff-label{display:block}.cc-eff tbody th{text-align:left;vertical-align:middle;padding-right:4px}.cc-eff tbody th.has-glyph{text-align:center;padding-right:0}.cc-eff .cc-glyph{width:30px;height:30px;filter:drop-shadow(0 0 3px color-mix(in srgb, var(--acc) 55%, transparent));margin:0 auto 1px;display:block}.cc-eff tbody th.has-glyph .cc-eff-label{font-size:10px;display:block}.cc-eff td.cc-eff-corner{background:0 0;border:0;width:19%}.cc-eff td{--g:var(--muted);border:1px solid color-mix(in srgb, var(--g) 55%, var(--border));background:color-mix(in srgb, var(--g) 18%, var(--bg));height:22px;color:color-mix(in srgb, var(--g), white 25%);text-align:center;white-space:nowrap;padding:0 2px;font-size:13px;font-weight:700}.cc-eff[data-view=defence] td.g-strong{--g:var(--ok)}.cc-eff[data-view=defence] td.g-partial{--g:var(--gold)}.cc-eff[data-view=defence] td.g-weak{--g:var(--danger)}.cc-eff[data-view=missile] td.g-strong{--g:var(--short)}.cc-eff[data-view=missile] td.g-partial{--g:var(--gold)}.cc-eff[data-view=missile] td.g-weak{--g:var(--ok)}.cc-eff[data-view=missile] td.g-immune{--g:var(--accent-node)}.cc-eff td.g-immune{background:repeating-linear-gradient(-45deg, transparent 0 4px, #ffffff0f 4px 8px), color-mix(in srgb, var(--g) 14%, var(--bg));letter-spacing:.06em;text-transform:uppercase;font-size:11px}.cc-eff-note{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.35}.tg-head{align-items:center;gap:8px;min-width:0;height:clamp(22px,2.5vh,26px);display:flex}.tg-title{color:color-mix(in srgb, var(--team) 55%, var(--text));font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;flex:none;font-size:clamp(11px,1.2vh,13px);font-weight:700}.tg-count{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:clamp(10.5px,1.1vh,12px);overflow:hidden}.tg-apply{border:1px solid color-mix(in srgb, var(--team) 45%, var(--border));background:linear-gradient(180deg, color-mix(in srgb, var(--team) 24%, var(--panel)), color-mix(in srgb, var(--team) 8%, var(--panel)));height:100%;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text) 10%, transparent);color:var(--text);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:border-color .11s var(--ease), box-shadow .11s var(--ease);flex:none;margin-left:auto;padding:0 clamp(7px,.8vh,10px);font-size:clamp(10px,1.12vh,12px);font-weight:700}.tg-apply[hidden]{display:none}.tg-apply:hover:not(.is-disabled){border-color:color-mix(in srgb, var(--team), white 25%);box-shadow:inset 0 0 12px color-mix(in srgb, var(--team) 30%, transparent), 0 0 10px color-mix(in srgb, var(--team) 35%, transparent)}.tg-apply.is-disabled{border-color:var(--border);background:color-mix(in srgb, var(--bg) 70%, var(--panel));color:var(--text-dim);cursor:default}.tg-apply{align-items:center;gap:5px;display:inline-flex}.tg-apply-key{border:1px solid color-mix(in srgb, var(--team) 35%, var(--border));background:color-mix(in srgb, var(--bg) 85%, transparent);color:color-mix(in srgb, var(--gold), white 20%);font:inherit;padding:0 3px;line-height:1.25}.tg-apply.is-disabled .tg-apply-key{color:var(--text-dim)}.tg-grid{gap:var(--cc-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tg-sw{--edge:color-mix(in srgb, var(--team) 30%, var(--border));min-width:0;height:calc(var(--cc-btn) * .5);border:1px solid var(--edge);background:linear-gradient(180deg, color-mix(in srgb, var(--panel), white 5%), color-mix(in srgb, var(--bg), var(--panel) 30%));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text) 10%, transparent), inset 0 -1px 0 #00000080, 0 1px 0 #00000080;color:var(--text);text-align:left;cursor:pointer;transition:border-color .11s var(--ease), box-shadow .11s var(--ease), transform 90ms var(--ease);align-items:center;gap:clamp(4px,.55vh,6px);padding:0 clamp(6px,.8vh,10px) 0 clamp(16px,1.75vh,19px);display:flex;position:relative}.tg-sw>*,.tg-apply>*{pointer-events:none}.tg-sw:hover{--edge:color-mix(in srgb, var(--team), white 25%);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text) 16%, transparent), inset 0 0 14px color-mix(in srgb, var(--team) 30%, transparent), 0 0 10px color-mix(in srgb, var(--team) 35%, transparent)}.tg-key{border-right:1px solid var(--edge);border-bottom:1px solid var(--edge);background:color-mix(in srgb, var(--bg) 85%, transparent);min-width:13px;color:color-mix(in srgb, var(--gold), white 20%);font-family:var(--font-heading);text-align:center;padding:1px 3px 1px 2px;font-size:clamp(10px,1.1vh,12px);font-weight:700;line-height:1;position:absolute;top:0;left:0}.tg-key[hidden]{display:none}.tg-ico{width:calc(var(--cc-btn) * .4);height:calc(var(--cc-btn) * .4);flex:none;place-items:center;display:grid}.tg-label{min-width:0;font-family:var(--font-heading);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;flex:1;font-size:clamp(10.5px,1.25vh,13.5px);font-weight:700;overflow:hidden}.tg-state{font-family:var(--font-heading);font-variant-numeric:tabular-nums;letter-spacing:.1em;flex:none;font-size:clamp(10.5px,1.2vh,13px);font-weight:700}.tg-sw.is-on{--edge:color-mix(in srgb, var(--team), white 25%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--team) 70%, transparent), inset 0 0 12px color-mix(in srgb, var(--team) 30%, transparent)}.tg-sw.is-on .tg-state{color:var(--ok)}.tg-sw.is-off .tg-ico{filter:grayscale(.85)brightness(.8);opacity:.5}.tg-sw.is-off .tg-label{color:var(--muted)}.tg-sw.is-off .tg-state{color:var(--danger)}.tg-sw.is-mixed .tg-state{color:var(--gold);letter-spacing:.04em}@media (height<=820px){.tg-count{display:none}.tg-label{letter-spacing:.01em}.tg-state{letter-spacing:.04em}}.tg-sw.is-pressed,.tg-apply.is-pressed{animation:cc-press .22s var(--ease)}.tg-apply.is-denied{animation:cc-deny .3s var(--ease)}.chat-anchor>.chat,.chat{pointer-events:none}.chat{font-family:var(--font-body);flex-direction:column;align-items:stretch;gap:6px;font-size:14px;line-height:1.35;display:flex}.chat-log{flex-direction:column;justify-content:flex-end;gap:2px;margin:0;padding:0;list-style:none;display:flex}.chat.is-open.has-lines .chat-log{border:1px solid color-mix(in srgb, var(--team,var(--accent)) 28%, var(--border));background:color-mix(in srgb, var(--panel) 84%, transparent);padding:7px 10px 8px;box-shadow:0 8px 24px #00000059}.chat-line{color:var(--text);overflow-wrap:anywhere;text-shadow:0 1px 2px #000000f2,0 0 6px #000000d9;transition:opacity .12s linear}.chat-chan{color:color-mix(in srgb, var(--muted) 55%, var(--text));font-family:var(--font-heading);letter-spacing:.05em;font-size:13.5px;font-weight:700}.chat-line[data-channel=team] .chat-chan{color:color-mix(in srgb, var(--ok) 72%, var(--text))}.chat-name{color:var(--text);font-weight:600}.chat-name .name-tag{vertical-align:-.12em;gap:.25em}.chat-name .badge{width:1.15em;height:1.15em}.chat-sep,.chat-text{color:var(--text)}.chat-line.is-system,.chat-line.is-system .chat-text{color:var(--muted);font-style:italic}.chat-notice{border:1px solid color-mix(in srgb, var(--team,var(--accent)) 40%, var(--border));background:color-mix(in srgb, var(--panel) 90%, transparent);color:color-mix(in srgb, var(--muted) 40%, var(--text));font-family:var(--font-heading);letter-spacing:.06em;align-self:flex-start;padding:3px 10px;font-size:13px;font-weight:700;transition:opacity .3s ease-in}.chat-notice[hidden]{display:none}.chat-notice.is-shown{animation:chat-notice-in .18s var(--ease)}.chat-notice.is-leaving{opacity:0}@keyframes chat-notice-in{0%{opacity:0;transform:translateY(4px)}}.chat-box{pointer-events:auto;flex-direction:column;gap:5px;display:flex}.chat-box[hidden]{display:none}.chat-input-row{border:1px solid color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--panel) 95%, transparent);height:34px;box-shadow:0 0 14px color-mix(in srgb, var(--accent) 18%, transparent);align-items:center;gap:8px;padding:0 10px 0 6px;display:flex}.chat-chip{border:1px solid color-mix(in srgb, var(--muted) 45%, var(--border));background:color-mix(in srgb, var(--muted) 10%, transparent);height:22px;color:color-mix(in srgb, var(--muted) 60%, var(--text));font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;flex:none;align-items:center;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.chat-chip[data-channel=team]{border-color:color-mix(in srgb, var(--ok) 55%, var(--border));background:color-mix(in srgb, var(--ok) 12%, transparent);color:color-mix(in srgb, var(--ok) 72%, var(--text))}.chat-input{min-width:0;height:100%;color:var(--text);font-family:var(--font-body);-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:none;flex:1;padding:0;font-size:14px}.chat-input::placeholder{color:var(--text-dim)}.chat-hint{color:color-mix(in srgb, var(--muted) 85%, var(--text));text-shadow:0 1px 2px #000000e6;padding-left:2px;font-size:11.5px;line-height:18px}.chat-hint .keycap{vertical-align:1px;min-width:16px;height:16px;text-shadow:none;padding:0 4px;font-size:10.5px}.chat-typing{vertical-align:1px;gap:4px;margin-left:1px;display:inline-flex}.chat-typing i{background:color-mix(in srgb, var(--ok) 70%, var(--text));border-radius:50%;width:5px;height:5px;animation:1.1s ease-in-out infinite chat-typing;box-shadow:0 0 4px #000c}.chat-typing i:nth-child(2){animation-delay:.15s}.chat-typing i:nth-child(3){animation-delay:.3s}@keyframes chat-typing{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.chat-budget{color:color-mix(in srgb, var(--ok) 60%, var(--muted));font-family:var(--font-heading);letter-spacing:.06em;white-space:nowrap;flex:none;font-size:12.5px;font-weight:700}.chat-budget[hidden]{display:none}@media (width<=1400px){.chat-budget-label{display:none}}.lobby-chat{margin-top:14px}.lobby-chat:empty{display:none}.chat.is-persistent .chat-log{overscroll-behavior:contain;scrollbar-width:thin;background:var(--well);justify-content:flex-start;height:clamp(58px,9.5vh,108px);padding:6px 12px;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000 0,#000 14px);mask-image:linear-gradient(#0000 0,#000 14px)}.chat.is-persistent .chat-line{text-shadow:none;-webkit-user-select:text;user-select:text}.chat.is-persistent .chat-line:first-child{margin-top:auto}.chat.is-persistent .chat-log{pointer-events:auto}.chat.is-persistent .chat-input-row{border-color:var(--border);background:var(--well);box-shadow:none}.chat.is-persistent.is-open .chat-input-row{border-color:color-mix(in srgb, var(--accent) 60%, var(--border));box-shadow:0 0 12px color-mix(in srgb, var(--accent) 16%, transparent)}.chat.is-persistent .chat-hint{text-shadow:none}@media (height<=800px){.chat.is-persistent .chat-hint{display:none}}.phone-only{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen{--ph-btn:40px}:root:is(.ui-compact,.ui-narrow) .game-screen .phone-only:not([hidden]){display:inline-grid}:root:is(.ui-compact,.ui-narrow) .game-screen .console-base{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .hud{--plate-drop:0px;--plate-cut:8px;padding:var(--safe-t) var(--safe-r) 0 var(--safe-l);box-sizing:border-box}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel{cursor:pointer;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:0 10px}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-right{grid-template-columns:minmax(0,1fr) auto}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel:before{top:6px;bottom:6px}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-title{letter-spacing:.08em;font-size:12px}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-players,:root:is(.ui-compact,.ui-narrow) .game-screen .ship-badge{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-bars{gap:3px}:root:is(.ui-compact,.ui-narrow) .game-screen .stat-row{grid-template-columns:minmax(0,1fr);height:auto}:root:is(.ui-compact,.ui-narrow) .game-screen .stat-row>:not(.stat-bar){display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .stat-bar{height:6px}:root:is(.ui-compact,.ui-narrow) .game-screen .stat-hull .stat-bar{height:5px}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel.is-popover .ship-bars{z-index:5;border:1px solid color-mix(in srgb, var(--tint) 55%, var(--border));border-top:2px solid var(--tint);background:color-mix(in srgb, var(--panel) 97%, transparent);box-sizing:border-box;gap:8px;width:min(330px,100vw - 16px);padding:10px 12px 12px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 26px #0000008c}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-right.is-popover .ship-bars{left:auto;right:0}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel.is-popover .stat-row{grid-template-columns:44px minmax(40px,1fr) auto auto;gap:8px;height:16px}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel.is-popover .stat-row>*{display:block}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel.is-popover .stat-label{font-size:12px}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel.is-popover .stat-value,:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel.is-popover .stat-regen{font-size:13px}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel.is-popover .stat-bar{height:8px}:root:is(.ui-compact,.ui-narrow) .game-screen .ship-panel.is-popover{background:color-mix(in srgb, var(--tint) 12%, transparent)}:root:is(.ui-compact,.ui-narrow) .game-screen .hud-centre{gap:10px;min-width:0;padding:0 12px}:root:is(.ui-compact,.ui-narrow) .game-screen .hud-phase{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .hud-clock{font-size:18px}:root:is(.ui-compact,.ui-narrow) .game-screen .hud-gold{flex-direction:row;align-items:baseline;gap:6px;padding-left:10px}:root:is(.ui-compact,.ui-narrow) .game-screen .hud-gold-amt{font-size:18px}:root:is(.ui-compact,.ui-narrow) .game-screen .hud-income{font-size:12px}:root:is(.ui-compact,.ui-narrow) .game-screen{--ssum-w:228px}:root:is(.ui-compact,.ui-narrow) .game-screen .ssum:not(.is-open){width:auto;max-width:46%}:root:is(.ui-compact,.ui-narrow) .game-screen .ssum-head{height:32px;font-size:12px}:root:is(.ui-compact,.ui-narrow) .game-screen .ssum-key{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .ssum.is-open{z-index:4}:root:is(.ui-compact,.ui-narrow) .game-screen .corner-buttons{gap:6px}:root:is(.ui-compact,.ui-narrow) .game-screen .corner-btn{width:var(--ph-btn);height:var(--ph-btn);place-items:center;font-size:19px}:root:is(.ui-compact,.ui-narrow) .game-screen .placing-chip{gap:8px;padding:6px 10px;font-size:13px;top:44px}:root:is(.ui-compact,.ui-narrow) .game-screen .placing-keys{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .toast-stack{top:84px}:root:is(.ui-compact,.ui-narrow) .game-screen .toast,:root:is(.ui-compact,.ui-narrow) .game-screen .net-banner{white-space:normal;text-align:center;padding:5px 10px;font-size:13px}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-info{cursor:pointer;gap:3px;padding:3px 6px;overflow:hidden}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-info-top{gap:6px;height:26px}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-info-icon{width:24px;height:24px}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-info-name,:root:is(.ui-compact,.ui-narrow) .game-screen .cc-info-sub,:root:is(.ui-compact,.ui-narrow) .game-screen .cc-queue-label,:root:is(.ui-compact,.ui-narrow) .game-screen .cc-queue-empty,:root:is(.ui-compact,.ui-narrow) .game-screen .cc-hp-text{font-size:12px}:root:is(.ui-compact,.ui-narrow) .game-screen .console-card:not(.is-info-open) .cc-info-sub,:root:is(.ui-compact,.ui-narrow) .game-screen .console-card:not(.is-info-open) .cc-info.has-selection .cc-queue,:root:is(.ui-compact,.ui-narrow) .game-screen .console-card:not(.is-info-open) .cc-info:not(.has-selection) .cc-info-top{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-queue{min-height:26px}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-queue-empty,:root:is(.ui-compact,.ui-narrow) .game-screen .cc-queue-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:root:is(.ui-compact,.ui-narrow) .cc-tip{overscroll-behavior:contain;font-size:12.5px;overflow-y:auto}:root:is(.ui-compact,.ui-narrow) .game-screen .chat{font-size:13px}:root:is(.ui-compact,.ui-narrow) .game-screen .chat:not(.is-open) .chat-line:nth-last-child(n+4),:root:is(.ui-compact,.ui-narrow) .game-screen .chat-hint{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .chat-input{font-size:16px}:root:is(.ui-compact,.ui-narrow) .game-screen .phone-tools{flex-direction:column;gap:6px;display:flex;position:absolute}:root.ui-compact:not(.ui-narrow) .game-screen{--hud-h:calc(34px + var(--safe-t));--cc-btn:46px;--cc-gap:4px;--cc-pad:6px;--cc-rail:46px;--cc-frame-w:calc(4 * var(--cc-btn) + 3 * var(--cc-gap) + var(--cc-rail) + var(--cc-gap) + 2 * var(--cc-pad) + 2px + var(--safe-r));--mm-w:176px;--mm-pad:6px;--console-cut:10px}:root.ui-compact:not(.ui-narrow) .game-screen .console-card{grid-template-columns:calc(4 * var(--cc-btn) + 3 * var(--cc-gap)) var(--cc-rail);column-gap:var(--cc-gap);row-gap:var(--cc-gap);padding:calc(var(--cc-pad) + 1px) calc(var(--cc-pad) + var(--safe-r)) var(--cc-pad) calc(var(--cc-pad) + 1px);grid-template-rows:auto auto;grid-template-areas:"info rail""grid rail";display:grid}:root.ui-compact:not(.ui-narrow) .game-screen .console-card>.cc-info{grid-area:info;min-width:0}:root.ui-compact:not(.ui-narrow) .game-screen .console-card>.cc-grid{grid-area:grid}:root.ui-compact:not(.ui-narrow) .game-screen .cc-tabs{gap:var(--cc-gap);height:auto;box-shadow:none;box-sizing:border-box;background:0 0;border:0;grid-area:rail;grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:1fr;margin:0;padding:0}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-tab{padding:0}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-tab-key{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .cc-tab-ico{place-items:center;font-size:22px;display:grid}:root.ui-compact:not(.ui-narrow) .game-screen .cc-tab-label{display:none}:root.ui-compact:not(.ui-narrow) .game-screen .cc-handle{top:calc(var(--cc-pad) + 1px);left:calc(var(--cc-pad) + 1px);z-index:1;border:1px solid color-mix(in srgb, var(--team) 30%, var(--border));background:color-mix(in srgb, var(--bg) 70%, var(--panel));width:34px;height:34px;color:var(--muted);cursor:pointer;place-items:center;padding:0;font-size:16px;position:absolute}:root.ui-compact:not(.ui-narrow) .game-screen .console-card>.cc-info{box-sizing:border-box;min-height:34px;margin-left:38px}:root.ui-compact:not(.ui-narrow) .game-screen .console-card.is-collapsed{grid-template-columns:var(--cc-rail);width:calc(var(--cc-rail) + 2 * var(--cc-pad) + 2px + var(--safe-r));grid-template-areas:"rail";padding-top:42px}:root.ui-compact:not(.ui-narrow) .game-screen .console-card.is-collapsed>.cc-info,:root.ui-compact:not(.ui-narrow) .game-screen .console-card.is-collapsed>.cc-grid{display:none}:root.ui-compact:not(.ui-narrow) .game-screen .console-card.is-collapsed .cc-tabs{grid-template-rows:repeat(5,40px)}:root.ui-compact:not(.ui-narrow) .game-screen .console-card.is-collapsed .cc-handle{width:var(--cc-rail);height:30px}:root.ui-compact:not(.ui-narrow) .game-screen .console-card.is-collapsed .cc-handle .icon{transform:rotate(180deg)}:root.ui-compact:not(.ui-narrow) .game-screen .console-targeting{padding:calc(var(--cc-pad) + 1px) calc(var(--cc-pad) + var(--safe-r)) var(--cc-pad) calc(var(--cc-pad) + 4px);flex-direction:row-reverse;align-items:stretch}:root:is(.ui-compact,.ui-narrow) .game-screen .tg-head{flex:none;height:auto}:root:is(.ui-compact,.ui-narrow) .game-screen .tg-title,:root:is(.ui-compact,.ui-narrow) .game-screen .tg-count,:root:is(.ui-compact,.ui-narrow) .game-screen .tg-apply-key,:root:is(.ui-compact,.ui-narrow) .game-screen .tg-key,:root:is(.ui-compact,.ui-narrow) .game-screen .tg-label{display:none}:root:is(.ui-compact,.ui-narrow) .game-screen .tg-apply{white-space:normal;text-align:center;min-height:44px;font-size:12px}:root:is(.ui-compact,.ui-narrow) .game-screen .tg-grid{flex:1;grid-template-columns:repeat(4,minmax(0,1fr))}:root:is(.ui-compact,.ui-narrow) .game-screen .tg-sw{flex-direction:column;justify-content:center;gap:2px;height:44px;padding:0 2px}:root:is(.ui-compact,.ui-narrow) .game-screen .tg-state{font-size:12px}:root.ui-compact:not(.ui-narrow) .game-screen .console-minimap{--mm-frame-w:calc(var(--mm-w) + 2 * var(--mm-pad) + 2px + var(--safe-l));padding-left:calc(var(--mm-pad) + 1px + var(--safe-l))}:root.ui-compact:not(.ui-narrow) .game-screen .chat-anchor{bottom:calc(var(--mm-frame-h) + 6px);left:calc(56px + var(--safe-l));width:min(330px, calc(100vw - var(--cc-frame-w) - 72px - var(--safe-l)))}:root.ui-compact:not(.ui-narrow) .game-screen .phone-tools{bottom:calc(var(--mm-frame-h) + 6px);left:calc(8px + var(--safe-l))}:root.ui-compact:not(.ui-narrow) .game-screen .phone-map{display:none}:root.ui-compact:not(.ui-narrow) .game-screen .corner-buttons{top:6px;right:calc(8px + var(--safe-r))}:root.ui-compact:not(.ui-narrow) .game-screen .game-field>.ssum-right~.corner-buttons{right:calc(8px + var(--safe-r));top:44px}:root.ui-compact:not(.ui-narrow) .game-screen .ssum-left{left:var(--safe-l)}:root.ui-compact:not(.ui-narrow) .game-screen .ssum-right{right:var(--safe-r)}:root.ui-compact:not(.ui-narrow) .cc-tip{width:min(440px, calc(100vw - var(--cc-frame-w) - 24px - var(--safe-l)));max-height:calc(100vh - var(--hud-h,34px) - 70px);padding:8px 10px;font-size:12px}:root.ui-compact:not(.ui-narrow) .cc-tip-hint{display:none}:root.ui-compact:not(.ui-narrow) .cc-tip-stats{grid-template-columns:auto 1fr auto 1fr}:root.ui-narrow .game-screen{--hud-h:calc(48px + var(--safe-t));--cc-gap:5px;--cc-pad:6px;--cc-btn:58px;--cc-tab-h:46px;--cc-info-h:34px;--pp-panel-h:calc(var(--cc-info-h) + var(--cc-tab-h) + 3 * var(--cc-btn) + 2 * var(--cc-gap) + 2 * var(--cc-gap) + 2 * var(--cc-pad) + 2px + var(--safe-b));--cc-frame-w:100vw;--mm-w:168px;--mm-pad:5px;--console-cut:10px}:root.ui-narrow .game-screen .game-field{bottom:var(--pp-panel-h)}:root.ui-narrow .game-screen .ship-panel{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr);align-content:center;gap:4px}:root.ui-narrow .game-screen .ship-right .ship-head{order:0}:root.ui-narrow .game-screen .hud-centre{flex-direction:column;gap:2px;padding:0 10px}:root.ui-narrow .game-screen .hud-gold{border-left:0;padding-left:0}:root.ui-narrow .game-screen .hud-clock,:root.ui-narrow .game-screen .hud-gold-amt{font-size:16px}:root.ui-narrow .game-screen .console-card{--frame-shape:polygon(0 0, 100% 0, 100% 100%, 0 100%);width:100%;height:var(--pp-panel-h);gap:var(--cc-gap);padding:calc(var(--cc-pad) + 1px) calc(var(--cc-pad) + var(--safe-r)) calc(var(--cc-pad) + var(--safe-b)) calc(var(--cc-pad) + var(--safe-l));box-sizing:border-box;left:0}:root.ui-narrow .game-screen .console-card .console-trim{left:0;right:0}:root.ui-narrow .game-screen .console-card .console-corner,:root.ui-narrow .game-screen .cc-handle{display:none}:root.ui-narrow .game-screen .cc-info{min-height:var(--cc-info-h);box-sizing:border-box;flex:none;justify-content:center}:root.ui-narrow .game-screen .console-card.is-info-open .cc-info{right:calc(var(--cc-pad) + var(--safe-r));bottom:calc(100% + 4px);left:calc(var(--cc-pad) + var(--safe-l));background:color-mix(in srgb, var(--panel) 96%, transparent);position:absolute;box-shadow:0 -8px 20px #00000073}:root.ui-narrow .game-screen .console-card.is-info-open:after{content:none}:root.ui-narrow .game-screen .cc-tabs{height:var(--cc-tab-h);margin:0 calc(-1 * var(--cc-pad));padding:0 var(--cc-pad);box-sizing:border-box;flex:none;align-items:stretch}:root.ui-narrow .game-screen .cc-tabs .cc-tab{grid-template-rows:auto auto;align-content:center;gap:2px;margin:3px 0}:root.ui-narrow .game-screen .cc-tab-ico{order:-1;font-size:18px}:root.ui-narrow .game-screen .cc-tab-label{font-size:12px}:root.ui-narrow .game-screen .cc-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:var(--cc-btn)}:root.ui-narrow .game-screen .cc-btn{width:auto;height:var(--cc-btn)}:root.ui-narrow .game-screen .cc-key{font-size:12px}:root.ui-narrow .game-screen .cc-price{height:17px;font-size:13px}:root.ui-narrow .game-screen .console-targeting{--frame-shape:polygon(0 0, 100% 0, 100% 100%, 0 100%);width:100%;left:0;bottom:var(--pp-panel-h);padding:6px calc(8px + var(--safe-r)) 6px calc(8px + var(--safe-l));box-sizing:border-box;flex-direction:row-reverse;align-items:stretch}:root.ui-narrow .game-screen .console-targeting .console-trim{left:0;right:0}:root.ui-narrow .game-screen .console-minimap{--frame-shape:polygon(0 0, calc(100% - 8px) 0, 100% 8px, 100% 100%, 0 100%);bottom:var(--pp-panel-h);padding-left:calc(var(--mm-pad) + 1px + var(--safe-l))}:root.ui-narrow .game-screen.is-map-hidden .console-minimap{display:none}:root.ui-narrow .game-screen:has(.console-targeting:not([hidden])) .console-minimap{display:none}:root.ui-narrow .game-screen .chat-anchor{bottom:calc(var(--pp-panel-h) + var(--mm-frame-h) + 8px);left:calc(54px + var(--safe-l));width:calc(100vw - 64px - var(--safe-l) - var(--safe-r))}:root.ui-narrow .game-screen.is-map-hidden .chat-anchor{bottom:calc(var(--pp-panel-h) + 8px)}:root.ui-narrow .game-screen .phone-tools{bottom:calc(var(--mm-frame-h) + 6px);left:calc(6px + var(--safe-l))}:root.ui-narrow .game-screen.is-map-hidden .phone-tools{bottom:6px}:root.ui-narrow .game-screen .corner-buttons,:root.ui-narrow .game-screen .game-field>.ssum-right~.corner-buttons{top:40px;right:calc(6px + var(--safe-r));flex-direction:column}:root.ui-narrow .game-screen .ssum.is-open{width:calc(100vw - 12px);max-width:none}:root.ui-narrow .game-screen .ssum-right.is-open{right:6px}:root.ui-narrow .cc-tip{width:calc(100vw - 16px);font-size:13px}:root.ui-compact:not(.ui-narrow) .game-screen .console-card:not(.is-info-open) .cc-hp-text{display:none}.menu-screen,.setup-screen,.mm-screen,.results-screen{background:radial-gradient(ellipse 60% 70% at 50% 50%, color-mix(in srgb, var(--bg) 78%, transparent) 0%, color-mix(in srgb, var(--bg) 40%, transparent) 70%, transparent 100%)}.setup-screen,.mm-screen{place-items:center;display:grid}.panel{--cf-cut:18px;--cf-border:color-mix(in srgb, var(--accent) 35%, var(--border));--cf-fill:linear-gradient(180deg, var(--panel), color-mix(in srgb, var(--panel), black 22%));padding:30px 34px}.panel-head{margin-bottom:6px}.panel-title{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:42px;font-weight:700;line-height:1}.panel-actions{justify-content:space-between;align-items:center;margin-top:30px;display:flex}.panel-actions.center{justify-content:center}.text-input{border:1px solid var(--border);background:var(--well);width:100%;color:var(--text);font-family:var(--font-heading);letter-spacing:.04em;outline:none;padding:9px 12px;font-size:18px;font-weight:600}.text-input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.field-error{min-height:1.2em;color:color-mix(in srgb, var(--danger), white 25%);margin:0;font-size:12.5px}.ui-narrow :is(.setup-screen,.mm-screen,.results-screen),.ui-compact :is(.setup-screen,.mm-screen,.results-screen){overscroll-behavior:contain;padding:calc(10px + var(--safe-t)) calc(10px + var(--safe-r)) calc(10px + var(--safe-b)) calc(10px + var(--safe-l));flex-direction:column;display:flex;overflow-y:auto}.ui-narrow :is(.setup-screen,.mm-screen)>.panel,.ui-compact :is(.setup-screen,.mm-screen)>.panel{flex:none;max-width:100%;margin:auto}.ui-narrow .panel{width:100%;padding:18px 16px 16px}.ui-compact .panel{padding:16px 20px}.ui-narrow .panel-title,.ui-compact .panel-title{font-size:30px}.ui-narrow .panel-actions,.ui-compact .panel-actions{bottom:calc(-10px - var(--safe-b));z-index:3;padding:12px 16px calc(14px + var(--safe-b));border-top:1px solid var(--border);background:color-mix(in srgb, var(--panel), black 22%);flex-wrap:wrap;gap:10px;margin:18px -16px -16px;position:sticky}.ui-compact .panel-actions{padding:10px 20px calc(10px + var(--safe-b));margin:14px -20px -16px}.ui-narrow .panel-actions .btn{flex:auto}.input-touch .panel-actions .keycap{display:none}.menu-screen{flex-direction:column;justify-content:center;align-items:center;gap:48px;padding-bottom:40px;display:flex}.menu-hero{text-align:center}.game-title{font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;justify-content:center;gap:.32em;margin:0;padding-left:.16em;font-size:116px;font-weight:700;line-height:.9;display:flex}.title-a{color:var(--text);text-shadow:0 0 28px color-mix(in srgb, var(--team-left-1) 75%, transparent), 0 0 2px color-mix(in srgb, var(--team-left-1) 60%, transparent)}.title-b{color:var(--text);text-shadow:0 0 28px color-mix(in srgb, var(--team-right-1) 75%, transparent), 0 0 2px color-mix(in srgb, var(--team-right-1) 60%, transparent)}.tagline{color:var(--muted);letter-spacing:.04em;margin:18px 0 0;font-size:16px}.menu-about{max-width:560px;color:var(--muted);margin:10px auto 0;font-size:14px;line-height:1.5}.menu-list{flex-direction:column;gap:8px;width:460px;display:flex}.menu-item{--cf-cut:12px;--cf-fill:color-mix(in srgb, var(--panel) 88%, var(--bg));height:56px;color:var(--text);text-align:left;cursor:pointer;border:0;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:12px;padding:0 22px 0 16px;display:grid}.menu-item-label{font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;font-size:22px;font-weight:700;line-height:1}.menu-item-sub{color:var(--muted);font-size:13px}.menu-item-chevron{color:var(--accent);opacity:0;transition:opacity .14s var(--ease), transform .14s var(--ease);font-size:16px;transform:translate(-4px)}.menu-item.is-primary{--cf-border:color-mix(in srgb, var(--accent) 55%, var(--border));--cf-fill:linear-gradient(90deg, color-mix(in srgb, var(--accent) 16%, var(--panel)), color-mix(in srgb, var(--panel) 88%, var(--bg)))}.menu-item:hover,.menu-item:focus-visible{--cf-border:var(--accent);--cf-fill:linear-gradient(90deg, color-mix(in srgb, var(--accent) 28%, var(--panel)), color-mix(in srgb, var(--panel) 90%, var(--bg)));outline:none}.menu-item:hover .menu-item-chevron,.menu-item:focus-visible .menu-item-chevron{opacity:1;transform:none}.menu-item:hover .menu-item-sub,.menu-item:focus-visible .menu-item-sub{color:var(--body-text)}.menu-footer{color:var(--muted);justify-content:space-between;align-items:center;font-size:13px;display:flex;position:absolute;bottom:24px;left:32px;right:32px}.key-hints{align-items:center;gap:6px;display:flex}.key-hints .keycap.wide{margin-left:14px}.version{font-family:var(--font-heading);letter-spacing:.1em;font-weight:600}.account-corner{flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;top:24px;right:32px}.account-chip{--cf-cut:10px;--cf-fill:color-mix(in srgb, var(--panel) 88%, var(--bg));min-width:200px;max-width:320px;color:var(--text);text-align:left;cursor:pointer;border:0;flex-direction:column;align-items:stretch;gap:6px;padding:10px 16px 11px;display:flex}.account-chip:hover,.account-chip:focus-visible{--cf-border:var(--accent);outline:none}.account-chip-name{min-width:0;font-family:var(--font-heading);letter-spacing:.04em;font-size:18px;font-weight:700;display:flex}.account-chip-progress{align-items:center;gap:10px;display:flex}.account-chip-level{color:var(--muted);font-family:var(--font-heading);letter-spacing:.12em;flex:none;font-size:12px;font-weight:700}.account-chip-bar{background:color-mix(in srgb, var(--border) 80%, var(--bg));border-radius:2px;flex:1;height:4px;position:relative;overflow:hidden}.account-chip-fill{--fill:0;width:calc(var(--fill) * 100%);background:linear-gradient(90deg, var(--accent), var(--accent-laser));position:absolute;inset:0 auto 0 0}@media (height<=860px){.menu-screen{gap:32px}.game-title{font-size:84px}.menu-item{height:50px}}.menu-status{font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:inline-flex}.menu-status[hidden]{display:none}.menu-status:before{background:var(--ok);content:"";border-radius:50%;width:6px;height:6px}.ui-narrow .menu-screen,.ui-compact .menu-screen{overscroll-behavior:contain;padding:calc(12px + var(--safe-t)) calc(14px + var(--safe-r)) calc(12px + var(--safe-b)) calc(14px + var(--safe-l));justify-content:flex-start;overflow-y:auto}.ui-narrow .menu-screen{gap:22px}.ui-narrow .account-corner,.ui-compact .account-corner{align-self:stretch;position:static}.ui-narrow .account-chip{max-width:100%}.ui-narrow .menu-hero{margin-top:auto}.ui-narrow .game-title{flex-wrap:wrap;row-gap:.08em;font-size:clamp(44px,17vw,84px)}.ui-narrow .tagline{margin-top:12px;font-size:15px}.ui-narrow .menu-about{font-size:13px}.ui-narrow .menu-list{width:100%;max-width:460px}.ui-narrow .menu-item{grid-template-rows:auto auto;grid-template-columns:16px minmax(0,1fr);row-gap:4px;height:auto;min-height:56px;padding:9px 16px 9px 14px}.ui-narrow .menu-item-chevron{grid-row:1/span 2}.ui-narrow .menu-item-label{font-size:20px}.ui-narrow .menu-item-sub{grid-column:2}.ui-narrow .menu-footer,.ui-compact .menu-footer{flex-wrap:wrap;gap:6px 16px;width:100%;margin-top:auto;position:static}.menu-status{white-space:nowrap}.input-touch .menu-footer .key-hints{display:none}.ui-compact .menu-screen{flex-flow:wrap;place-content:safe center center;gap:14px 36px}.ui-compact .account-corner{flex-direction:row;flex-basis:100%;justify-content:flex-end;align-items:center}.ui-compact .menu-hero{flex:260px;max-width:400px}.ui-compact .game-title{flex-wrap:wrap;font-size:clamp(40px,7vw,64px)}.ui-compact .tagline{margin-top:10px;font-size:14px}.ui-compact .menu-about{font-size:12.5px}.ui-compact .menu-list{flex:320px;gap:6px;width:auto;max-width:420px}.ui-compact .menu-item{height:44px}.ui-compact .menu-item-label{font-size:18px}.ui-compact .menu-item-sub{font-size:12px}.ui-compact .menu-item-label{white-space:nowrap}@media (width<=760px){.ui-compact .menu-item{grid-template-rows:auto auto;grid-template-columns:16px minmax(0,1fr);row-gap:2px;height:auto;min-height:44px;padding:6px 16px 6px 14px}.ui-compact .menu-item-chevron{grid-row:1/span 2}.ui-compact .menu-item-sub{grid-column:2}}.setup-panel{width:min(1680px, calc(var(--ui-vw,100vw) - 64px));padding-top:clamp(22px,2.8vh,30px);padding-bottom:clamp(22px,2.8vh,30px)}.setup-cols{grid-template-columns:minmax(280px,.72fr) minmax(0,2fr);align-items:start;gap:0 clamp(24px,2.2vw,40px);display:grid}.setup-main,.setup-specs{min-width:0}.setup-main .section-label,.setup-specs .spec-head{margin-top:clamp(16px,2.2vh,24px)}.setup-main .option-row{padding:clamp(10px,1.2vh,14px) 16px}.setup-panel .panel-actions{margin-top:clamp(18px,2.6vh,30px)}.setup-head{grid-template-columns:minmax(280px,.72fr) minmax(0,2fr);align-items:end;gap:0 clamp(24px,2.2vw,40px);display:grid}.mode-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,.9vw,14px);display:grid}.mode-tile{--cf-cut:14px;--accent:var(--team-left-1);--cf-fill:color-mix(in srgb, var(--bg) 55%, var(--panel));min-height:clamp(60px,7.2vh,78px);color:var(--text);text-align:left;cursor:pointer;border:0;align-items:center;gap:clamp(12px,1.1vw,18px);padding:clamp(6px,.9vh,12px) 44px clamp(6px,.9vh,12px) clamp(14px,1.2vw,20px);display:flex}.mode-big{min-width:2.4em;color:var(--muted);font-family:var(--font-heading);letter-spacing:.04em;flex:none;font-size:clamp(30px,3.6vh,40px);font-weight:700;line-height:1}.mode-body{flex-direction:column;gap:3px;min-width:0;display:flex}.mode-name{font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:12px;font-size:clamp(15px,1.75vh,19px);font-weight:700;line-height:1.1;display:flex}.mode-text{color:var(--muted);font-size:clamp(12px,1.25vh,13.5px);line-height:1.35}.mode-seats{align-items:center;gap:4px;display:inline-flex}.mode-seat{background:var(--team-right-1);border-radius:50%;width:9px;height:9px}.mode-seat.is-you{background:var(--team-left-1);box-shadow:0 0 6px var(--team-left-1)}.mode-seat.is-ally{background:color-mix(in srgb, var(--team-left-1) 45%, var(--panel));box-shadow:inset 0 0 0 1.5px var(--team-left-1)}.mode-vs{color:var(--text-dim);font-family:var(--font-body);letter-spacing:.04em;text-transform:none;margin:0 3px;font-size:11px;font-weight:600}.mode-tile .mode-radio{top:50%;translate:0 -50%}.mode-tile:hover{--cf-border:color-mix(in srgb, var(--accent) 70%, var(--border))}.mode-tile:focus-visible{--cf-border:var(--text);outline:none}.mode-tile:focus-visible:after{content:"";border:1px solid color-mix(in srgb, var(--text) 55%, transparent);pointer-events:none;position:absolute;inset:3px}.mode-tile.is-on{--cf-border:var(--accent);--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--accent) 24%, var(--panel)), color-mix(in srgb, var(--accent) 7%, var(--panel)))}.mode-tile.is-on .mode-big{color:color-mix(in srgb, var(--accent) 45%, var(--text));text-shadow:0 0 18px color-mix(in srgb, var(--accent) 65%, transparent)}.mode-tile.is-on .mode-text{color:var(--body-text)}.mode-tile.is-on .mode-radio{border-color:var(--accent);background:radial-gradient(circle, var(--accent) 0 4px, transparent 5px);box-shadow:0 0 10px color-mix(in srgb, var(--accent) 60%, transparent)}.diff-cards{grid-template-columns:minmax(0,1fr);gap:clamp(6px,.75vh,8px);display:grid}.diff-card{--cf-cut:12px;--cf-fill:color-mix(in srgb, var(--bg) 55%, var(--panel));min-height:0;color:var(--text);text-align:left;cursor:pointer;border:0;flex-direction:column;gap:6px;padding:clamp(10px,1.2vh,14px) 16px clamp(11px,1.3vh,15px);display:flex;position:relative}.diff-easy{--accent:var(--ok)}.diff-medium{--accent:var(--team-left-1)}.diff-hard{--accent:var(--danger)}.diff-expert{--accent:var(--accent-ion)}.diff-head{align-items:center;gap:10px;padding-right:26px;display:flex}.diff-name{font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;font-size:clamp(20px,2.2vh,24px);font-weight:700;line-height:1}.diff-text{color:var(--muted);font-size:clamp(12px,1.25vh,13.5px);line-height:1.45}.diff-radio{border:1px solid var(--muted);border-radius:50%;width:16px;height:16px;position:absolute;top:clamp(12px,1.4vh,16px);right:16px}.diff-card:hover,.diff-card:focus-visible{--cf-border:color-mix(in srgb, var(--accent) 70%, var(--border));outline:none}.diff-card:focus-visible{--cf-border:var(--text)}.diff-card.is-on{--cf-border:var(--accent);--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--accent) 20%, var(--panel)), color-mix(in srgb, var(--accent) 6%, var(--panel)))}.diff-card.is-on .diff-name{color:color-mix(in srgb, var(--accent) 60%, var(--text));text-shadow:0 0 16px color-mix(in srgb, var(--accent) 60%, transparent)}.diff-card.is-on .diff-text{color:var(--body-text)}.diff-card.is-on .diff-radio{border-color:var(--accent);background:radial-gradient(circle, var(--accent) 0 4px, transparent 5px);box-shadow:0 0 10px color-mix(in srgb, var(--accent) 60%, transparent)}.option-row{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 55%, transparent);align-items:center;gap:16px;padding:14px 16px;display:flex}.option-text{flex-direction:column;gap:3px;display:flex}.option-title{font-size:15px;font-weight:600}.option-desc{color:var(--muted);font-size:13px}.ui-narrow .setup-head,.ui-narrow .setup-cols,.ui-compact .setup-head,.ui-compact .setup-cols{grid-template-columns:minmax(0,1fr)}.ui-narrow .setup-head,.ui-compact .setup-head{gap:12px}.ui-narrow .mode-tiles{grid-template-columns:minmax(0,1fr)}.ui-narrow .mode-tile,.ui-compact .mode-tile{min-height:56px}.ui-compact .diff-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-panel{width:min(580px, calc(var(--ui-vw,100vw) - 64px));text-align:center;padding:36px 40px 30px}.mm-radar{width:132px;height:132px;margin:0 auto 26px;position:relative}.mm-ring{border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);border-radius:50%;position:absolute;inset:0}.mm-ring.r2{border-color:color-mix(in srgb, var(--accent) 28%, transparent);inset:22px}.mm-ring.r3{border-color:color-mix(in srgb, var(--accent) 20%, transparent);inset:44px}.mm-sweep{background:conic-gradient(from 0deg, color-mix(in srgb, var(--accent) 50%, transparent), transparent 28%);border-radius:50%;animation:2.6s linear infinite spin;position:absolute;inset:0}.mm-core{background:var(--accent);width:10px;height:10px;box-shadow:0 0 14px var(--accent);border-radius:50%;margin:-5px 0 0 -5px;position:absolute;top:50%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.mm-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:26px 0 0;padding:0;list-style:none;display:grid}.mm-slots.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-slot{border:1px dashed var(--border);color:var(--text-dim);flex-direction:column;align-items:center;gap:8px;padding:12px 6px;font-size:13px;display:flex}.mm-slot.is-filled{border-style:solid;border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--text)}.mm-slot-dot{border:1px solid var(--text-dim);border-radius:50%;width:10px;height:10px}.mm-slot.is-filled .mm-slot-dot{border-color:var(--accent);background:var(--accent);box-shadow:0 0 8px var(--accent)}.mm-stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(5,minmax(0,1fr));margin-top:22px;display:grid}.mm-stat{flex-direction:column;gap:6px;padding:14px 0;display:flex}.mm-stat+.mm-stat{border-left:1px solid var(--border)}.mm-stat-label{color:var(--muted);font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:700}.mm-stat-value{font-family:var(--font-heading);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1}.mm-stat-value.mm-eta.is-searching{color:var(--muted);font-size:18px;line-height:28px}.mm-notice{border:1px solid color-mix(in srgb, var(--gold) 45%, var(--border));background:color-mix(in srgb, var(--gold) 7%, transparent);max-width:420px;color:color-mix(in srgb, var(--gold), white 30%);margin:12px auto 0;padding:7px 12px;font-size:13px}.mm-offline-text{max-width:400px;color:var(--body-text);text-wrap:balance;margin:14px auto 0}.mm-panel[data-phase=unavailable] .panel-title,.mm-panel[data-phase=cooldown] .panel-title{margin-top:4px;font-size:34px}.mm-panel[data-phase=unavailable] .eyebrow{color:color-mix(in srgb, var(--danger), white 20%)}.mm-panel .panel-actions{gap:12px;margin-top:26px}.ready-modal{width:min(460px, calc(var(--ui-vw,100vw) - 48px));--cf-border:color-mix(in srgb, var(--ok) 55%, var(--border));text-align:center}.ready-modal .modal-head{text-align:center;justify-content:center}.ready-modal .modal-head .icon-btn{display:none}.ready-modal .modal-title{color:color-mix(in srgb, var(--ok), white 35%);text-shadow:0 0 18px color-mix(in srgb, var(--ok) 45%, transparent);font-size:40px}.ready-count{color:var(--muted);justify-content:center;align-items:baseline;gap:10px;font-size:13px;display:flex}.ready-seconds{color:var(--text);font-family:var(--font-heading);font-variant-numeric:tabular-nums;font-size:44px;line-height:1}.ready-bar{background:var(--well);border:1px solid var(--border);height:6px;margin:14px 0 12px;overflow:hidden}.ready-bar-fill{background:linear-gradient(90deg, var(--ok), color-mix(in srgb, var(--ok), white 40%));height:100%;box-shadow:0 0 10px var(--ok);transform-origin:0;transition:transform .25s linear;display:block}.ready-status{color:var(--body-text);margin:0}.ready-modal .modal-actions{justify-content:center}.ready-modal.is-accepted .ready-status{color:color-mix(in srgb, var(--ok), white 30%)}.ready-ai{color:var(--muted);margin:8px 0 0;font-size:13px}.mm-specs{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:10px;margin-top:18px;padding-top:14px;display:flex}.mm-specs[hidden]{display:none}.mm-spec-chips{flex-wrap:nowrap}.ui-narrow .mm-panel{padding:22px 16px 16px}.ui-compact .mm-panel{padding:16px 22px}.ui-narrow .mm-radar,.ui-compact .mm-radar{width:96px;height:96px;margin-bottom:16px}.ui-compact .mm-radar{width:72px;height:72px;margin-bottom:10px}.ui-narrow .mm-slots,.ui-compact .mm-slots{margin-top:16px}.ui-narrow .mm-slots:not(.n2){grid-template-columns:repeat(2,minmax(0,1fr))}.ui-narrow .mm-stats{grid-template-columns:repeat(6,minmax(0,1fr))}.ui-narrow .mm-stat{grid-column:span 2;padding:10px 0}.ui-narrow .mm-stat:nth-child(n+4){border-top:1px solid var(--border);grid-column:span 3}.ui-narrow .mm-stat:nth-child(4){border-left:0}.ui-narrow .mm-stat-value,.ui-compact .mm-stat-value{font-size:22px}.ui-compact .mm-stat{padding:8px 0}.ui-narrow .mm-specs{flex-wrap:wrap}.ui-narrow .mm-spec-chips{flex-wrap:wrap;justify-content:center}.results-screen{flex-direction:column;justify-content:center;align-items:center;gap:30px;display:flex}.results-banner{--tint:var(--muted);width:min(1100px, var(--ui-vw,100vw));border-top:1px solid #0000;border-bottom:1px solid #0000;border-image:linear-gradient(90deg, transparent, var(--tint), transparent) 1;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--tint) 16%, transparent) 30%, color-mix(in srgb, var(--tint) 16%, transparent) 70%, transparent);text-align:center;padding:20px 0 22px}.results-banner[data-team="0"]{--tint:var(--team-left-1)}.results-banner[data-team="1"]{--tint:var(--team-right-1)}.results-banner .eyebrow{color:var(--body-text)}.results-title{color:color-mix(in srgb, var(--tint) 45%, white);font-family:var(--font-heading);letter-spacing:.22em;text-shadow:0 0 36px var(--tint), 0 0 3px var(--tint);text-transform:uppercase;margin:6px 0 10px;padding-left:.22em;font-size:108px;font-weight:700;line-height:.9}.results-sub{color:var(--muted);margin:0;font-size:15px}.results-credit{border:1px solid color-mix(in srgb, var(--muted) 30%, transparent);background:color-mix(in srgb, var(--bg) 70%, transparent);color:var(--body-text);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:8px;margin:14px 0 0;padding:5px 14px;font-size:14px;display:inline-flex}.results-credit[hidden]{display:none}.results-credit-dot{background:var(--muted);border-radius:50%;width:7px;height:7px}.results-credit[data-tone=pending] .results-credit-dot{background:var(--team-left-2);animation:1.2s ease-in-out infinite results-credit-pulse}.results-credit[data-tone=credited]{border-color:color-mix(in srgb, var(--ok) 45%, transparent);color:var(--ok);font-weight:600}.results-credit[data-tone=credited] .results-credit-dot{background:var(--ok)}.results-credit[data-tone=levelUp]{border-color:color-mix(in srgb, var(--gold) 55%, transparent);color:var(--gold);box-shadow:0 0 18px color-mix(in srgb, var(--gold) 25%, transparent);font-weight:600}.results-credit[data-tone=levelUp] .results-credit-dot{background:var(--gold)}.results-credit[data-tone=muted]{color:var(--muted)}@keyframes results-credit-pulse{50%{opacity:.35}}.low-fx .results-credit[data-tone=pending] .results-credit-dot{animation:none}.sep{opacity:.5;margin:0 10px}.results-panel{width:min(1100px, calc(var(--ui-vw,100vw) - 64px));padding:6px 10px 8px}.results-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.results-table thead th{border-bottom:1px solid var(--border);color:var(--muted);font-family:var(--font-heading);letter-spacing:.14em;text-align:right;text-transform:uppercase;padding:14px 18px 12px;font-size:12px;font-weight:700}.results-table tbody th,.results-table tbody td{border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);font-family:var(--font-heading);text-align:right;padding:16px 18px;font-size:21px;font-weight:600}.results-table tbody tr:last-child>*{border-bottom:0}.results-table .col-player{text-align:left}.results-table tbody .col-player{font-family:var(--font-body);font-size:16px;font-weight:600}.results-table tbody .col-player>*{vertical-align:middle}.results-name{align-items:center;display:flex}.results-meta{color:var(--text);flex-wrap:wrap;align-items:center;gap:4px 14px;margin:7px 0 0 22px;font-size:12px;font-weight:500;display:flex}.results-ai{color:var(--accent-soft);font-weight:600}.results-personality{border-bottom:1px dotted color-mix(in srgb, var(--accent-soft) 70%, transparent);cursor:help}.results-personality:hover,.results-personality:focus-visible{color:var(--text);border-bottom-style:solid;outline:none}.results-tip{z-index:20;border:1px solid var(--border);border-top:2px solid var(--accent-soft);background:color-mix(in srgb, var(--bg), black 25%);max-width:340px;color:var(--body-text);pointer-events:none;padding:9px 12px 10px;font-size:13px;font-weight:400;line-height:1.45;position:absolute;box-shadow:0 14px 34px #0009}.results-tip[hidden]{display:none}.results-spec{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.results-spec .spec-icon{font-size:16px}.results-spec-none{color:var(--text-dim);font-style:italic}.results-table .chip{border-color:color-mix(in srgb, var(--accent) 50%, var(--border));color:var(--accent-soft);margin-left:10px}.team-dot{background:var(--team-left-1);width:10px;height:10px;margin-right:12px;display:inline-block;transform:rotate(45deg);box-shadow:0 0 8px}tr[data-team="0"][data-slot="1"] .team-dot{background:var(--team-left-2)}tr[data-team="1"] .team-dot{background:var(--team-right-1)}tr[data-team="1"][data-slot="1"] .team-dot{background:var(--team-right-2)}.results-table tr.is-you{background:color-mix(in srgb, var(--accent) 7%, transparent)}.results-actions{gap:14px;display:flex}@media (height<=860px){.results-title{font-size:80px}.results-screen{gap:20px}.results-table tbody th,.results-table tbody td{padding:11px 16px;font-size:18px}}.ui-narrow .results-screen,.ui-compact .results-screen{justify-content:flex-start;gap:14px}.ui-narrow .results-banner,.ui-compact .results-banner{flex:none;width:100%;padding:12px 0 14px}.ui-narrow .results-title{letter-spacing:.14em;margin:4px 0 8px;font-size:clamp(40px,13vw,64px)}.ui-compact .results-title{margin:2px 0 6px;font-size:40px}.ui-compact .results-banner{padding:8px 0 10px}.ui-narrow .results-sub{font-size:13.5px}.ui-narrow .results-panel,.ui-compact .results-panel{flex:none;width:100%;max-width:1100px}.ui-narrow .results-table,.ui-narrow .results-table tbody,.ui-narrow .results-table tr{display:block}.ui-narrow .results-table thead{display:none}.ui-narrow .results-table tbody tr{border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 6px;padding:12px 8px 14px;display:grid}.ui-narrow .results-table tbody tr:last-child{border-bottom:0}.ui-narrow .results-table tbody .col-player{border:0;grid-column:1/-1;padding:0 0 4px}.ui-narrow .results-table tbody td{text-align:left;border:0;flex-direction:column-reverse;gap:2px;padding:0;font-size:18px;display:flex}.ui-narrow .results-table tbody td:after{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;content:attr(data-label);font-size:10.5px;font-weight:700}.ui-narrow .results-meta{margin-left:22px}.ui-compact .results-table thead th{padding:10px 10px 8px}.ui-compact .results-table tbody th,.ui-compact .results-table tbody td{padding:9px 10px;font-size:16px}.ui-narrow .results-actions,.ui-compact .results-actions{bottom:calc(-10px - var(--safe-b));z-index:3;width:calc(100% + 20px + var(--safe-l) + var(--safe-r));margin:auto calc(-10px - var(--safe-r)) calc(-10px - var(--safe-b)) calc(-10px - var(--safe-l));padding:10px 12px calc(12px + var(--safe-b));border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg) 88%, transparent);flex:none;justify-content:center;position:sticky}.ui-narrow .results-actions .btn{flex:1 1 0;min-width:0}.confirm-modal{width:min(440px, calc(var(--ui-vw,100vw) - 48px))}.confirm-text{color:var(--body-text);margin:0;font-size:15px}.callsign-modal{width:min(440px, calc(var(--ui-vw,100vw) - 48px))}.callsign-form{flex-direction:column;gap:8px;display:flex}.pause-modal{width:min(380px, calc(var(--ui-vw,100vw) - 48px))}.pause-list{flex-direction:column;gap:8px;display:flex}.pause-list .btn{width:100%}.pause-hint{color:var(--muted);text-align:center;margin:16px 0 0;font-size:12.5px}.howto-modal{width:min(900px, calc(var(--ui-vw,100vw) - 48px))}.howto-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;display:grid}.howto-item{grid-template-columns:40px minmax(0,1fr);gap:14px;display:grid}.howto-icon{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:var(--well);width:40px;height:40px;color:var(--accent-soft);place-items:center;font-size:24px;display:grid}.howto-item h3{font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px;font-size:17px;font-weight:700}.howto-item p{color:var(--body-text);margin:0;font-size:13.5px;line-height:1.5}.howto-item b{color:var(--text);font-weight:600}.howto-keys{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;gap:10px 22px;margin-top:22px;padding-top:16px;font-size:13px;display:flex}.howto-key{align-items:center;gap:8px;display:inline-flex}@media (height<=860px){.howto-modal{padding:16px 24px 18px}.howto-modal .modal-head{margin-bottom:10px}.howto-modal .modal-title{font-size:26px}.howto-grid{gap:12px 22px}.howto-item{grid-template-columns:32px minmax(0,1fr);gap:10px}.howto-icon{width:32px;height:32px;font-size:20px}.howto-item h3{margin-bottom:2px;font-size:15px}.howto-item p{font-size:12.5px;line-height:1.4}.howto-keys{gap:6px 18px;margin-top:12px;padding-top:10px;font-size:12px}.howto-modal .modal-actions{margin-top:12px}}@media (height<=860px) and (width>=1100px){.howto-modal{width:min(1200px, calc(var(--ui-vw,100vw) - 48px))}.howto-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.settings-modal{width:min(500px, calc(var(--ui-vw,100vw) - 48px))}.settings-modal .section-label:first-child{margin-top:0}.setting-row{grid-template-columns:130px minmax(0,1fr) 48px;align-items:center;gap:16px;margin-bottom:8px;display:grid}.setting-row.setting-row-text{grid-template-columns:130px minmax(0,1fr)}.setting-account{min-width:0;font-family:var(--font-heading);justify-content:space-between;align-items:center;gap:12px;font-size:18px;font-weight:600;display:flex}.setting-label{font-size:14px;font-weight:500}.setting-value{color:var(--text);font-family:var(--font-heading);font-variant-numeric:tabular-nums;text-align:right;font-size:16px;font-weight:700}.saved-note{color:var(--muted);margin-right:auto;font-size:12.5px}.spec-modal{width:min(1280px, calc(var(--ui-vw,100vw) - 48px))}.spec-modal .spec-head{margin-top:4px}.ui-narrow .howto-grid{grid-template-columns:minmax(0,1fr);gap:14px}.ui-narrow .howto-item{grid-template-columns:32px minmax(0,1fr);gap:10px}.ui-narrow .howto-icon{width:32px;height:32px;font-size:20px}.input-touch .howto-keys{display:none}.ui-narrow .setting-row{grid-template-columns:92px minmax(0,1fr) 44px;gap:10px}.ui-narrow .setting-row.setting-row-text{grid-template-columns:92px minmax(0,1fr)}.ui-narrow .saved-note{flex-basis:100%}.pl-panel{width:min(880px, calc(var(--ui-vw,100vw) - 64px))}.pl-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.pl-card{--cf-cut:12px;--cf-fill:color-mix(in srgb, var(--bg) 55%, var(--panel));flex-direction:column;gap:12px;min-height:220px;padding:20px 22px 22px;display:flex}.pl-card-title{font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:22px;font-weight:700}.pl-card .option-desc{margin:0;line-height:1.45}.pl-card-actions{justify-content:flex-end;margin-top:auto;display:flex}.segmented-lg .seg{letter-spacing:.08em;height:40px;font-size:15px}.pl-join-form{flex-direction:column;margin-top:auto;display:flex;position:relative}.pl-join-form .field-error{margin-top:4px;position:absolute;top:100%;left:0;right:0}.pl-join-row{gap:10px;display:flex}.code-input{letter-spacing:.42em;text-align:center;text-transform:uppercase;flex:1;min-width:0;height:42px;font-size:26px;font-weight:700}.code-input::placeholder{color:var(--text-dim);letter-spacing:.3em}.pl-join-row .btn{min-width:108px}.pl-status-row{justify-content:center;align-items:center;gap:12px;min-height:34px;margin-top:18px;display:flex}.pl-status,.lobby-status{border:1px solid color-mix(in srgb, var(--accent) 40%, var(--border));background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--body-text);text-align:center;margin:0;padding:7px 12px;font-size:13.5px}.pl-status[data-tone=error],.lobby-status[data-tone=error]{border-color:color-mix(in srgb, var(--danger) 55%, var(--border));background:color-mix(in srgb, var(--danger) 10%, transparent);color:color-mix(in srgb, var(--danger), white 35%)}.pl-panel .panel-actions{margin-top:18px}.pl-callsign{color:var(--muted);font-size:13px}.pl-callsign b,.pl-callsign .name-tag{color:var(--text);font-family:var(--font-heading);letter-spacing:.06em;font-size:16px}.btn.is-busy{opacity:.75;cursor:progress}.btn.is-busy:disabled{opacity:.75}.ui-narrow .pl-columns{grid-template-columns:minmax(0,1fr);margin-top:16px}.ui-narrow .pl-card,.ui-compact .pl-card{min-height:0;padding:16px}.ui-compact .pl-columns{margin-top:14px}.ui-narrow .pl-join-form .field-error{position:static}.lobby-panel{width:min(1000px, calc(var(--ui-vw,100vw) - 64px));padding:26px 32px}.lobby-head{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.lobby-head-text .panel-title{font-size:40px}.lobby-fill{color:var(--muted);margin-top:8px;font-size:13px;display:block}.lobby-code-box{grid-template-rows:auto auto;grid-template-columns:auto auto;align-items:center;gap:6px 16px;display:grid}.lobby-code-label{color:var(--muted);font-family:var(--font-heading);letter-spacing:.2em;text-align:right;text-transform:uppercase;grid-area:1/1/auto/-1;font-size:12px;font-weight:700}.lobby-code{color:var(--text);font-family:var(--font-heading);font-variant-numeric:tabular-nums;letter-spacing:.24em;text-shadow:0 0 22px color-mix(in srgb, var(--accent) 70%, transparent);-webkit-user-select:all;user-select:all;grid-area:2/1;padding:2px 4px 2px 14px;font-size:52px;font-weight:700;line-height:1}.lobby-share{flex-direction:column;grid-area:2/2;gap:6px;width:210px;display:flex}.lobby-link{border:1px solid var(--border);background:var(--well);width:100%;color:var(--muted);-webkit-user-select:all;user-select:all;outline:none;padding:4px 8px;font-size:12px}.lobby-link:focus-visible{border-color:var(--accent);color:var(--text)}.lobby-copy{width:100%}.lobby-teams{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);align-items:stretch;margin-top:22px;display:grid}.lobby-team{flex-direction:column;gap:10px;display:flex}.lobby-team-title{border-bottom:2px solid var(--team-color);color:color-mix(in srgb, var(--team-color) 55%, var(--text));font-family:var(--font-heading);letter-spacing:.2em;text-transform:uppercase;margin:0 0 2px;padding-bottom:8px;font-size:15px;font-weight:700}.team-left{--team-color:var(--team-left-1)}.team-right{--team-color:var(--team-right-1);text-align:right}.lobby-vs{color:var(--text-dim);font-family:var(--font-heading);letter-spacing:.12em;place-items:center;font-size:26px;font-weight:700;display:grid}.lobby-slot{--slot-color:var(--team-left-1);border:1px solid color-mix(in srgb, var(--slot-color) 30%, var(--border));background:linear-gradient(90deg, var(--slot-color) 0 4px, transparent 4px), linear-gradient(90deg, color-mix(in srgb, var(--slot-color) 12%, var(--panel)), color-mix(in srgb, var(--panel) 92%, var(--bg)));grid-template-rows:auto auto 32px;gap:8px;min-height:118px;padding:12px 14px 12px 18px;display:grid}.lobby-slot[data-team="0"][data-slot="1"]{--slot-color:var(--team-left-2)}.lobby-slot[data-team="1"]{--slot-color:var(--team-right-1);background:linear-gradient(270deg, var(--slot-color) 0 4px, transparent 4px), linear-gradient(270deg, color-mix(in srgb, var(--slot-color) 12%, var(--panel)), color-mix(in srgb, var(--panel) 92%, var(--bg)));padding:12px 18px 12px 14px}.lobby-slot[data-team="1"][data-slot="1"]{--slot-color:var(--team-right-2)}.lobby-slot.kind-open{background:linear-gradient(90deg, color-mix(in srgb, var(--slot-color) 35%, transparent) 0 4px, transparent 4px), color-mix(in srgb, var(--bg) 60%, transparent);border-style:dashed}.lobby-slot[data-team="1"].kind-open{background:linear-gradient(270deg, color-mix(in srgb, var(--slot-color) 35%, transparent) 0 4px, transparent 4px), color-mix(in srgb, var(--bg) 60%, transparent)}.lobby-slot.is-you{border-color:color-mix(in srgb, var(--slot-color) 70%, var(--border));box-shadow:0 0 18px color-mix(in srgb, var(--slot-color) 18%, transparent)}.lobby-slot-head{align-items:center;gap:6px;min-height:18px;display:flex}.lobby-slot[data-team="1"] .lobby-slot-head,.lobby-slot[data-team="1"] .lobby-slot-name,.lobby-slot[data-team="1"] .lobby-slot-ctl{flex-direction:row-reverse}.lobby-slot-pos{color:color-mix(in srgb, var(--slot-color) 60%, var(--muted));font-family:var(--font-heading);letter-spacing:.18em;text-transform:uppercase;font-size:12px;font-weight:700}.lobby-slot-pos+.chip{margin-left:4px}.lobby-slot[data-team="1"] .lobby-slot-pos+.chip{margin-left:0;margin-right:4px}.chip-you{border-color:color-mix(in srgb, var(--slot-color) 60%, var(--border));background:color-mix(in srgb, var(--slot-color) 16%, transparent);color:color-mix(in srgb, var(--slot-color) 35%, var(--text))}.chip-host{border-color:color-mix(in srgb, var(--gold) 55%, var(--border));background:color-mix(in srgb, var(--gold) 10%, transparent);color:color-mix(in srgb, var(--gold), white 25%)}.lobby-slot-name{align-items:center;gap:8px;min-width:0;display:flex}.lobby-slot-label{font-family:var(--font-heading);letter-spacing:.06em;text-overflow:ellipsis;white-space:nowrap;font-size:24px;font-weight:700;line-height:1.1;overflow:hidden}.lobby-slot-label.name-tag{overflow:visible}.lobby-slot.kind-open .lobby-slot-label{color:var(--text-dim);letter-spacing:.14em;text-transform:uppercase}.lobby-slot.is-away .lobby-slot-label{color:var(--muted)}.lobby-ai-chip{border:1px solid color-mix(in srgb, var(--slot-color) 50%, var(--border));background:color-mix(in srgb, var(--slot-color) 14%, transparent);width:26px;height:26px;color:color-mix(in srgb, var(--slot-color) 50%, var(--text));place-items:center;font-size:16px;display:grid}.lobby-slot-ctl{align-items:center;gap:8px;display:flex}.lobby-slot-ctl .segmented{--accent:var(--slot-color);flex:1;max-width:300px}.lobby-slot-ctl .lobby-specs{flex-wrap:nowrap;flex:auto;overflow:hidden}.lobby-slot[data-team="1"] .lobby-specs{flex-direction:row-reverse}.lobby-specs .spec-chip{border-color:color-mix(in srgb, var(--slot-color) 30%, var(--border));min-width:0}.spec-chip-name{text-overflow:ellipsis;overflow:hidden}.lobby-specs-btn{flex:none}.lobby-ai-specs{color:var(--text-dim);white-space:nowrap;margin-left:auto;font-size:11.5px;font-style:italic}.lobby-slot[data-team="1"] .lobby-ai-specs{margin-left:0;margin-right:auto}.lobby-options{margin-top:20px}.lobby-options .chip{margin-left:auto}.lobby-options .switch:disabled{cursor:default;opacity:.6}.lobby-status{margin-top:14px}.lobby-panel.is-offline .lobby-teams{opacity:.6}.lobby-actions{gap:16px;margin-top:20px}.lobby-start{align-items:center;gap:16px;display:flex}.lobby-hint{color:var(--muted);font-size:13.5px}@media (height<=860px){.lobby-panel{padding:20px 28px}.lobby-teams{margin-top:16px}.lobby-slot{gap:6px;min-height:104px;padding-top:10px;padding-bottom:10px}.lobby-options,.lobby-actions{margin-top:14px}}.ui-narrow .lobby-panel{padding:18px 16px 16px}.ui-compact .lobby-panel{padding:16px 20px}.ui-narrow .lobby-head{flex-direction:column;align-items:stretch;gap:14px}.ui-narrow .lobby-head-text .panel-title,.ui-compact .lobby-head-text .panel-title{font-size:30px}.ui-narrow .lobby-code-box{grid-template-columns:minmax(0,1fr)}.ui-narrow .lobby-code-label{text-align:left}.ui-narrow .lobby-code,.ui-compact .lobby-code{padding-left:0;font-size:38px}.ui-narrow .lobby-share{grid-area:3/1;width:100%}.ui-narrow .lobby-teams{grid-template-columns:minmax(0,1fr);row-gap:6px;margin-top:16px}.ui-narrow .lobby-vs{font-size:18px}.ui-narrow .lobby-slot,.ui-compact .lobby-slot{min-height:0}.ui-compact .lobby-teams{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr)}.ui-compact .lobby-vs{font-size:18px}.ui-narrow .lobby-start{flex-wrap:wrap;justify-content:flex-end;gap:8px}.input-touch .lobby-slot{grid-template-rows:auto auto auto}.ui-narrow .lobby-slot,.ui-compact .lobby-slot{grid-template-columns:minmax(0,1fr)}.ui-narrow .lobby-slot-ctl .lobby-specs,.ui-compact .lobby-slot-ctl .lobby-specs{min-width:0}.account-modal{width:min(680px, calc(var(--ui-vw,100vw) - 48px))}.account-modal .modal-head{margin-bottom:14px}.account-head{border:1px solid var(--border);background:var(--well);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:14px 18px;display:grid}.account-badge{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:radial-gradient(circle, color-mix(in srgb, var(--panel), white 4%), var(--bg));border-radius:50%;place-items:center;width:72px;height:72px;font-size:46px;display:grid}.account-badge .badge{vertical-align:0;width:1em;height:1em}.account-id{flex-direction:column;gap:4px;min-width:0;display:flex}.account-name-row{align-items:center;gap:12px;min-height:38px;display:flex}.account-name{min-width:0;font-family:var(--font-heading);letter-spacing:.04em;font-size:28px;font-weight:700;line-height:1.1}.account-name-row>.btn{flex:none;margin-left:auto}.account-rename{flex:1;min-width:0}.account-rename-row{gap:8px;display:flex}.account-rename-row .text-input{flex:1;min-width:0;padding:5px 10px}.account-rename-row .btn{flex:none;min-width:0;height:38px}.account-name-hint{margin:0;font-size:12px}.account-level{color:var(--body-text);font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:15px;font-weight:700}.account-xp-bar{background:color-mix(in srgb, var(--border) 80%, var(--bg));border-radius:3px;height:6px;display:block;position:relative;overflow:hidden}.account-xp-fill{--fill:0;width:calc(var(--fill) * 100%);background:linear-gradient(90deg, var(--accent), var(--accent-laser));box-shadow:0 0 8px color-mix(in srgb, var(--accent-laser) 60%, transparent);position:absolute;inset:0 auto 0 0}.account-xp{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:12.5px}.account-status{border-left:2px solid var(--team-right-2);min-height:34px;color:var(--body-text);justify-content:space-between;align-items:center;gap:12px;margin:10px 0 0;padding-left:10px;font-size:13px;display:flex}.account-status-text{margin:0}.account-status .btn{flex:none;height:34px}.account-status-actions{flex:none;gap:8px;display:flex}.account-status[data-claimed=true]{border-left-color:var(--ok)}.account-modal .section-label{margin-top:16px}.account-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.account-table th,.account-table td{border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);text-align:right;padding:5px 10px}.account-table thead th{color:var(--muted);font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:700}.account-table tbody td{font-family:var(--font-heading);font-size:17px;font-weight:600}.account-table .col-mode{text-align:left;padding-left:0}.account-table tbody .col-mode{font-size:14px;font-weight:500}.account-table tr.is-empty td{color:var(--text-dim)}.account-totals{color:var(--muted);margin:10px 0 0;font-size:13px}.account-actions{flex-wrap:wrap;gap:10px;margin-right:auto;display:flex}.account-privacy{color:var(--muted);margin-top:8px;font-size:12px}.account-privacy summary{cursor:pointer;width:fit-content}.account-privacy summary:focus-visible{outline:1px solid var(--accent)}.account-privacy p{color:var(--body-text);margin:6px 0 0;line-height:1.45}.account-unavailable{color:var(--muted);margin:0}.claim-modal{width:min(500px, calc(var(--ui-vw,100vw) - 48px))}.claim-form{flex-direction:column;gap:8px;display:flex}.claim-intro{margin:0 0 8px}.claim-status{min-height:1.3em;color:var(--muted);margin:0;font-size:13px}.claim-status[data-tone=ok]{color:var(--ok)}.claim-status[data-tone=error]{color:color-mix(in srgb, var(--danger), white 25%)}.recovery-modal{width:min(640px, calc(var(--ui-vw,100vw) - 48px))}.recovery-warning{border:1px solid color-mix(in srgb, var(--team-right-2) 55%, var(--border));background:color-mix(in srgb, var(--team-right-2) 10%, transparent);color:var(--text);margin:0 0 16px;padding:10px 12px;font-size:13.5px}.recovery-body{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:22px;display:grid}.recovery-main{flex-direction:column;gap:12px;min-width:0;display:flex}.recovery-code{border:1px solid color-mix(in srgb, var(--accent) 50%, var(--border));background:var(--well);color:var(--text);white-space:nowrap;-webkit-user-select:text;user-select:text;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:20px;font-weight:600;display:block;overflow-x:auto}.recovery-code:focus-visible{outline:1px solid var(--accent)}.recovery-copy-row{align-items:center;gap:12px;display:flex}.recovery-copy-note{color:var(--muted);font-size:12.5px}.recovery-saved{cursor:pointer;align-items:center;gap:10px;margin-top:4px;font-weight:600;display:flex}.recovery-saved input{width:18px;height:18px;accent-color:var(--accent);margin:0}.recovery-figure{color:var(--muted);flex-direction:column;align-items:center;gap:6px;margin:0;font-size:11.5px;display:flex}.recovery-qr{border:1px solid var(--border);background:var(--well);place-items:center;width:168px;height:168px;display:grid}.recovery-qr .qr{width:100%;height:100%}.qr-bg{fill:#fff}.qr-modules{fill:var(--bg)}.recovery-qr-wait{color:var(--muted);font-size:12px}.restore-modal,.delete-modal{width:min(500px, calc(var(--ui-vw,100vw) - 48px))}.delete-modal .btn-danger:not(:disabled){--cf-border:color-mix(in srgb, var(--danger) 75%, var(--border));--cf-fill:linear-gradient(180deg, color-mix(in srgb, var(--danger) 26%, var(--panel)), color-mix(in srgb, var(--danger) 10%, var(--panel)))}.restore-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:17px}.restore-warning{border:1px solid color-mix(in srgb, var(--team-right-2) 55%, var(--border));background:color-mix(in srgb, var(--team-right-2) 10%, transparent);color:var(--text);margin:4px 0 0;padding:8px 10px;font-size:13px}.save-nudge{border:1px solid color-mix(in srgb, var(--team-right-2) 55%, transparent);background:color-mix(in srgb, var(--team-right-2) 10%, color-mix(in srgb, var(--bg) 80%, transparent));color:var(--text);border-radius:999px;align-items:center;gap:10px;padding:5px 6px 5px 12px;font-size:13px;display:inline-flex}.save-nudge[hidden]{display:none}.save-nudge-dot{background:var(--team-right-2);width:7px;height:7px;box-shadow:0 0 8px var(--team-right-2);border-radius:50%}.save-nudge-save,.save-nudge-later{font:inherit;cursor:pointer;border:0;border-radius:999px;padding:3px 10px}.save-nudge-save{background:var(--team-right-2);color:var(--bg);font-weight:600}.save-nudge-later{color:var(--muted);background:0 0}.save-nudge-save:hover,.save-nudge-save:focus-visible{background:color-mix(in srgb, var(--team-right-2) 80%, white);outline:none}.save-nudge-later:hover,.save-nudge-later:focus-visible{color:var(--text);outline:none}.save-nudge-results{margin-top:10px}@media (height<=860px){.account-modal{padding-top:18px;padding-bottom:18px}.account-badge{width:60px;height:60px;font-size:38px}.account-table th,.account-table td{padding-top:3px;padding-bottom:3px}.account-modal .modal-actions{margin-top:16px}}.ui-narrow .account-head{gap:12px;padding:12px}.ui-narrow .account-badge{width:52px;height:52px;font-size:32px}.ui-narrow .account-name{font-size:22px}.ui-narrow .account-table th,.ui-narrow .account-table td{padding-left:6px;padding-right:6px}.ui-narrow .recovery-body{grid-template-columns:minmax(0,1fr)}.ui-narrow .recovery-figure{justify-self:center}.input-touch .save-nudge{border-radius:24px;flex-wrap:wrap;gap:4px 6px;padding:4px 4px 4px 12px}.input-touch .save-nudge-save,.input-touch .save-nudge-later{min-height:44px;padding:0 12px}.lb-panel{width:min(880px, calc(var(--ui-vw,100vw) - 64px));height:min(820px, calc(var(--ui-vh,100vh) - 64px));flex-direction:column;padding-top:clamp(20px,2.6vh,30px);padding-bottom:clamp(18px,2.4vh,28px);display:flex}.lb-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 24px;display:flex}.lb-controls{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.lb-meta{min-height:18px;color:var(--muted);justify-content:space-between;gap:16px;margin:12px 0 6px;font-size:12.5px;display:flex}.lb-month{color:var(--body-text);font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;font-weight:700}.lb-updated{font-variant-numeric:tabular-nums;margin-left:auto}.lb-scroll{scrollbar-gutter:stable;border:1px solid var(--border);background:var(--well);outline:none;flex:1;min-height:0;overflow-y:auto}.lb-scroll:focus-visible{border-color:var(--accent)}.lb-table{border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums;width:100%}.lb-table th,.lb-table td{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);text-align:right;white-space:nowrap;padding:6px 14px}.lb-table thead th{z-index:1;background:color-mix(in srgb, var(--panel), black 12%);color:var(--muted);font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:700;position:sticky;top:0}.lb-table .lb-rank{text-align:left;width:72px}.lb-table .lb-name{text-align:left;overflow:hidden}.lb-table .lb-level{width:90px}.lb-table .lb-value{width:190px}.lb-table tbody .lb-name{font-size:15px;font-weight:600}.lb-table tbody .lb-name .name-tag{max-width:calc(100% - 52px)}.lb-table tbody .lb-rank,.lb-table tbody .lb-level,.lb-table tbody .lb-value{font-family:var(--font-heading);font-size:17px;font-weight:600}.lb-table tbody .lb-rank{color:var(--muted)}.lb-table tbody tr:nth-child(-n+3) .lb-rank{color:var(--gold)}.lb-table tr.is-you{background:color-mix(in srgb, var(--accent) 16%, transparent)}.lb-table tr.is-you .lb-rank{color:var(--accent-soft)}.lb-you{vertical-align:middle;margin-left:8px}.lb-pinned{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 22%, var(--panel));scrollbar-gutter:stable;border-top-width:0;overflow:hidden}.lb-pinned .lb-table td{border-bottom:0}.lb-status-row{align-items:center;gap:12px;display:flex}.lb-status{color:var(--muted);margin:10px 0 0}.lb-status[hidden]+.btn,.lb-status-row .btn{margin-top:10px}.lb-note{border-left:2px solid var(--team-right-2);color:var(--body-text);margin:10px 0 0;padding-left:10px;font-size:13px}.lb-panel .panel-actions{margin-top:clamp(14px,2vh,22px)}.ui-narrow .lb-panel,.ui-compact .lb-panel{height:calc(var(--ui-dvh,100dvh) - 20px - var(--safe-t) - var(--safe-b));min-height:320px}.ui-narrow .lb-head{flex-direction:column;align-items:stretch}.ui-narrow .lb-controls{align-items:stretch}.ui-narrow .lb-table .lb-rank{width:46px}.ui-narrow .lb-table .lb-level{width:44px}.ui-narrow .lb-table .lb-value{width:76px}.ui-narrow .lb-table tbody tr:not(.is-you) .lb-name .name-tag{max-width:100%}.ui-narrow .lb-table tbody .lb-rank,.ui-narrow .lb-table tbody .lb-level,.ui-narrow .lb-table tbody .lb-value{font-size:15px}.ui-narrow .lb-table th,.ui-narrow .lb-table td{padding-left:8px;padding-right:8px}.ui-compact .lb-panel .panel-actions{background:0 0;border-top:0;margin:10px 0 0;padding:0;position:static}.ui-compact .lb-head{flex-wrap:nowrap;align-items:center}.ui-compact .lb-controls{flex-direction:row;align-items:center}.ui-compact .lb-meta{margin:6px 0 4px}.ui-compact .lb-table th,.ui-compact .lb-table td{padding-top:3px;padding-bottom:3px}@media (width<=760px){.ui-compact .lb-head{flex-wrap:wrap;gap:8px 16px}.ui-compact .lb-head .eyebrow{display:none}.ui-compact .lb-panel .panel-title{font-size:24px}}.perf-prompt{z-index:40;border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--panel) 94%, transparent);box-shadow:0 0 16px color-mix(in srgb, var(--accent) 18%, transparent);pointer-events:auto;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:8px 10px 8px 16px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.perf-prompt-text{color:var(--text);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:15px;font-weight:700}.game-screen,.game-screen .game-field{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.game-screen .game-field,.game-screen .console,.game-screen .hud,#app canvas{touch-action:none}.game-screen .chat-input{-webkit-user-select:text;user-select:text}.corner-home{font-size:18px;line-height:1}.game-screen .corner-buttons>.corner-multi{width:auto;min-width:64px;font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;padding:0 8px;font-size:13px;font-weight:700}.corner-multi.is-on,.placing-repeat.is-on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 28%, var(--panel));color:var(--text)}html:not(.input-touch) .corner-multi{display:none}.placing-touch{align-items:center;gap:8px;display:inline-flex}.placing-touch[hidden],.placing-keys[hidden]{display:none}.placing-btn{min-height:36px;padding:4px 12px;font-size:14px}.placing-ok.is-denied{opacity:.55}.placing-reason{color:color-mix(in srgb, var(--danger), white 35%);font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:12px;font-weight:600}.cc-tip.is-pinned{pointer-events:auto}.input-touch .corner-btn{min-width:44px;height:44px}.input-touch .placing-btn{min-width:44px;min-height:44px}.input-touch .game-screen .cc-tab{min-height:36px}.input-touch .tg-sw,.input-touch .tg-apply{min-height:40px}.input-touch .game-screen .cc-key,.input-touch .game-screen .tg-key,.input-touch .game-screen .tg-apply-key,.input-touch .game-screen .cc-tab-key,.input-touch .game-screen .ssum-key,.input-touch .game-screen .cc-tip-key,.input-touch .game-screen .chat-hint{display:none}.input-touch .game-field>.placing-chip.is-touch{top:auto;right:calc(var(--cc-frame-w) + 8px);bottom:8px;left:calc(var(--mm-frame-w) + 8px);z-index:5;white-space:normal;text-align:center;flex-wrap:wrap;justify-content:center;gap:6px 10px;padding:6px 10px;transform:none}.input-touch .placing-chip.is-touch .placing-touch{flex-wrap:wrap;justify-content:center}.input-touch .placing-chip.is-touch .placing-reason{flex-basis:100%}.chat-touch{display:none}.input-touch .chat-touch{pointer-events:auto;gap:6px;margin-top:6px;display:flex}.chat-touch-btn{border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 88%, transparent);min-width:44px;min-height:40px;color:var(--text);font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;pointer-events:auto;padding:0 10px;font-size:13px;font-weight:700;position:relative}.chat-touch-btn.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 28%, var(--panel))}.chat-touch:not(.is-open)>:not(.chat-touch-open),.chat-touch.is-open>.chat-touch-open{display:none}.chat-unread{background:var(--danger);color:#fff;border-radius:9px;min-width:18px;height:18px;padding:0 4px;font-size:11px;line-height:18px;position:absolute;top:-6px;right:-6px}.chat-unread[hidden],:root:is(.ui-compact,.ui-narrow) .game-screen .corner-home,:root:is(.ui-compact,.ui-narrow) .chat-touch-open{display:none}
