@font-face{font-family:Pacifico;font-style:normal;font-weight:400;font-display:swap;src:url(asset/be955174636e5369.woff2)format("woff2");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:Lilita One;font-style:normal;font-weight:400;font-display:swap;src:url(asset/043945717efb3a31.woff2)format("woff2");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}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--player-color-0:#e63946;--player-color-1:#2196f3;--player-color-2:#ff9800;--player-color-3:#4caf50;--player-color-4:#bb8b5b;--player-color-5:#b6322d;--player-color-6:#6b6b6b;--player-color-7:#653d97;--player-color-hc-0:#ffd400;--player-color-hc-1:#00b3ff;--player-color-hc-2:#ff5630;--player-color-hc-3:#43d177;--player-color-hc-4:#ff6ad5;--player-color-hc-5:#c084ff;--player-color-hc-6:#fff;--player-color-hc-7:#ff3860;--arena-floor-hc:#0a0a0a;--arena-floor-hc-light:#f6f6f6;--bp-accent:#e63946;--bp-accent-rgb:230 57 70;--bp-bg:#0d1117;--bp-bg-2:#1a1f2e;--bp-card-a:#1f2536;--bp-card-b:#14182a;--bp-text:#fff;--bp-text-rgb:255 255 255;--bp-input-bg:#1a2030;--bp-fg-rgb:255 255 255;--bp-ov-rgb:13 17 23;--hud-zone-bg-a:#10122ce6;--hud-zone-bg-b:#0a0c1ef7;--hud-zone-border:#826ed738;--hud-zone-bd-top:#c8b4ff2e;--hud-zone-color:#fffffff2;--hud-zone-tshadow:0 1px 8px #000000d9;--hud-zone-sh-top:#ffffff17;--hud-zone-sh-bot:#00000040;--hud-time-tshadow:0 0 18px #ffffff38, 0 1px 8px #000000e6;--hud-bar-shadow:drop-shadow(0 6px 28px #000000a6);--color-success:#69f0ae;--color-success-rgb:105 240 174;--color-success-bg:#1b5e20;--color-success-bg2:#2e7d32;--color-error:#ff6b6b;--color-error-bg:#5d1f1f;--color-destructive:#c0392b;--color-destructive-rgb:192 57 43;--color-info:#4fc3f7;--color-info-rgb:79 195 247;--color-info-bg:#1a237e;--color-warning:gold;--color-warning-rgb:255 215 0;--chip-host-bg:#4a148c;--chip-host-fg:#ce93d8;--chip-cpu-bg:#37474f;--chip-cpu-fg:#b0bec5;--chip-off-bg:#212121;--chip-off-fg:#555;--chip-local-bg:#4a3000;--chip-local-fg:#ffcc80;--chip-waiting-fg:#90caf9;--color-brand-red:#e85a3c;--color-brand-blue:#2f7fd6;--color-brand-yellow:#f4c430;--color-brand-green:#4caf50;--opacity-faint:.03;--opacity-subtle:.08;--opacity-quiet:.13;--opacity-soft:.16;--opacity-medium:.28;--opacity-muted:.45;--opacity-strong:.65;--opacity-loud:.85;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:14px;--radius-xl:22px;--radius-pill:50px;--shadow-card:0 30px 80px #0009, 0 0 0 1px rgb(var(--bp-fg-rgb) / .02) inset, 0 -80px 120px -60px #e85a3c38 inset;--duration-fast:.1s;--duration-base:.15s;--duration-slow:.32s}:root[data-theme=light]{--bp-bg:#f2ece0;--bp-bg-2:#e6dece;--bp-card-a:#fefcf7;--bp-card-b:#f2ece0;--bp-text:#1c1814;--bp-text-rgb:28 24 20;--bp-input-bg:#e6e0d4;--bp-fg-rgb:28 24 20;--bp-ov-rgb:240 235 224;--hud-zone-bg-a:#fffdf8e6;--hud-zone-bg-b:#f2ece0f5;--hud-zone-border:#503c8c29;--hud-zone-bd-top:#ffffffd9;--hud-zone-color:#1c1814e6;--hud-zone-tshadow:0 1px 3px #ffffffb3, 0 1px 3px #00000026;--hud-zone-sh-top:#ffffffd9;--hud-zone-sh-bot:#0000000f;--hud-time-tshadow:0 1px 4px #fffc, 0 1px 4px #00000040;--hud-bar-shadow:drop-shadow(0 4px 16px #64503c38);--color-success:#1b5e20;--color-success-rgb:27 94 32;--color-success-bg:#c8e6c9;--color-success-bg2:#a5d6a7;--color-error:#c0392b;--color-error-bg:#ffcdd2;--color-info:#1976d2;--color-info-rgb:25 118 210;--color-info-bg:#bbdefb;--chip-host-bg:#e1bee7;--chip-host-fg:#4a148c;--chip-cpu-bg:#cfd8dc;--chip-cpu-fg:#37474f;--chip-off-bg:#d7d2c8;--chip-off-fg:#6b6b6b;--chip-local-bg:#ffe0b2;--chip-local-fg:#4a3000;--chip-waiting-fg:#0d47a1}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bp-bg:#f2ece0;--bp-bg-2:#e6dece;--bp-card-a:#fefcf7;--bp-card-b:#f2ece0;--bp-text:#1c1814;--bp-text-rgb:28 24 20;--bp-input-bg:#e6e0d4;--bp-fg-rgb:28 24 20;--bp-ov-rgb:240 235 224;--hud-zone-bg-a:#fffdf8e6;--hud-zone-bg-b:#f2ece0f5;--hud-zone-border:#503c8c29;--hud-zone-bd-top:#ffffffd9;--hud-zone-color:#1c1814e6;--hud-zone-tshadow:0 1px 3px #ffffffb3, 0 1px 3px #00000026;--hud-zone-sh-top:#ffffffd9;--hud-zone-sh-bot:#0000000f;--hud-time-tshadow:0 1px 4px #fffc, 0 1px 4px #00000040;--hud-bar-shadow:drop-shadow(0 4px 16px #64503c38);--color-success:#1b5e20;--color-success-rgb:27 94 32;--color-success-bg:#c8e6c9;--color-success-bg2:#a5d6a7;--color-error:#c0392b;--color-error-bg:#ffcdd2;--color-info:#1976d2;--color-info-rgb:25 118 210;--color-info-bg:#bbdefb;--chip-host-bg:#e1bee7;--chip-host-fg:#4a148c;--chip-cpu-bg:#cfd8dc;--chip-cpu-fg:#37474f;--chip-off-bg:#d7d2c8;--chip-off-fg:#6b6b6b;--chip-local-bg:#ffe0b2;--chip-local-fg:#4a3000;--chip-waiting-fg:#0d47a1}}:root[data-contrast=high]{--bp-bg:#000;--bp-bg-2:#0a0a0a;--bp-card-a:#0d0d0d;--bp-card-b:#050505;--bp-text:#fff;--bp-text-rgb:255 255 255;--bp-input-bg:#0a0a0a;--bp-fg-rgb:255 255 255;--bp-ov-rgb:0 0 0;--bp-accent:#ffd400;--bp-accent-rgb:255 212 0;--opacity-faint:.2;--opacity-subtle:.3;--opacity-quiet:.4;--opacity-soft:.55;--opacity-medium:.7;--opacity-muted:.85;--opacity-strong:1;--opacity-loud:1;--color-success:#00ff7a;--color-success-rgb:0 255 122;--color-success-bg:#003a16;--color-success-bg2:#00541f;--color-error:#ff5050;--color-error-bg:#3a0000;--color-destructive:#ff3030;--color-destructive-rgb:255 48 48;--color-info:#00d4ff;--color-info-rgb:0 212 255;--color-info-bg:#001d3a;--color-warning:#ffd400;--color-warning-rgb:255 212 0;--chip-host-bg:#5a009a;--chip-host-fg:#fff;--chip-cpu-bg:#1c1c1c;--chip-cpu-fg:#fff;--chip-off-bg:#1c1c1c;--chip-off-fg:#c8c8c8;--chip-local-bg:#630;--chip-local-fg:#ffd9a3;--chip-waiting-fg:#00d4ff;--hud-zone-bg-a:#000;--hud-zone-bg-b:#000;--hud-zone-border:#ffffffa6;--hud-zone-bd-top:#fff6;--hud-zone-color:#fff}:root[data-theme=light][data-contrast=high]{--bp-bg:#fff;--bp-bg-2:#f6f6f6;--bp-card-a:#fff;--bp-card-b:#f0f0f0;--bp-text:#000;--bp-text-rgb:0 0 0;--bp-input-bg:#f6f6f6;--bp-fg-rgb:0 0 0;--bp-ov-rgb:255 255 255;--bp-accent:#c00040;--bp-accent-rgb:192 0 64;--color-success:#006400;--color-success-rgb:0 100 0;--color-success-bg:#c8f0c8;--color-success-bg2:#a8e8a8;--color-error:#b00020;--color-error-bg:#ffd0d0;--color-destructive:#b00020;--color-destructive-rgb:176 0 32;--color-info:#003e9c;--color-info-rgb:0 62 156;--color-info-bg:#d8e3ff;--color-warning:#806600;--color-warning-rgb:128 102 0;--chip-host-bg:#ead0ff;--chip-host-fg:#2a0050;--chip-cpu-bg:#e0e0e0;--chip-cpu-fg:#000;--chip-off-bg:#d8d8d8;--chip-off-fg:#1a1a1a;--chip-local-bg:#ffe0b0;--chip-local-fg:#4a2a00;--chip-waiting-fg:#003e9c;--hud-zone-bg-a:#fff;--hud-zone-bg-b:#fff;--hud-zone-border:#000000a6;--hud-zone-bd-top:#0006;--hud-zone-color:#000}button:focus-visible{outline:2px solid var(--bp-accent);outline-offset:2px}:root[data-contrast=high] button:focus-visible{outline-offset:3px;outline-width:4px}body{background:var(--bp-bg);color:var(--bp-text);width:100vw;height:100vh;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;overflow:hidden}#root{width:100%;height:100%}#game-canvas{width:100%;height:100%;display:block}::view-transition-old(root){animation-duration:.22s;animation-timing-function:ease-out}::view-transition-new(root){animation-duration:.22s;animation-timing-function:ease-out}::view-transition-group(main-logo){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-group(player-card-0){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-group(player-card-1){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-group(player-card-2){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-group(player-card-3){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-group(player-card-4){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-group(player-card-5){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-group(player-card-6){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-group(player-card-7){animation-duration:.35s;animation-timing-function:cubic-bezier(.4,0,.2,1)}@media (prefers-reduced-motion:reduce){::view-transition-old(root){animation-duration:0s}::view-transition-new(root){animation-duration:0s}::view-transition-group(main-logo){animation-duration:0s}::view-transition-group(player-card-0){animation-duration:0s}::view-transition-group(player-card-1){animation-duration:0s}::view-transition-group(player-card-2){animation-duration:0s}::view-transition-group(player-card-3){animation-duration:0s}::view-transition-group(player-card-4){animation-duration:0s}::view-transition-group(player-card-5){animation-duration:0s}::view-transition-group(player-card-6){animation-duration:0s}::view-transition-group(player-card-7){animation-duration:0s}}body:has(#settings-overlay) .menu-logo{view-transition-name:none!important}body:has(#settings-overlay) .player-card{view-transition-name:none!important}body:has(#settings-overlay) .player-card{view-transition-name:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes hud-notification-in-rtl{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}[dir=rtl] #hud-notifications{left:20px;right:auto}[dir=rtl] .hud-notification{border-left:1px solid rgb(var(--pc-rgb) / .55);border-right:6px solid var(--pc);animation-name:hud-notification-in-rtl}[dir=rtl] .hud-notification.hud-notification-out{transform:translate(-60px)}[dir=rtl] .hud-notification-text strong{margin-left:4px;margin-right:0}[dir=rtl] #hud-pause-btn{left:auto;right:16px}[dir=rtl] .game-bar-item+.game-bar-item{border-left:none;border-right:1px solid #ffffff14}[dir=rtl] .settings-value,[dir=rtl] .rank-pct,[dir=rtl] .host-exit-stat-pct{text-align:left}[dir=rtl] .win-pips{margin-left:0;margin-right:auto}[dir=rtl] .debug-pct-name{text-align:right}[dir=rtl] .debug-pct-value{text-align:left}.orejime-Env.orejime-Env{--orejime-color-background:var(--bp-card-a);--orejime-color-text:var(--bp-text);--orejime-color-interactive:#c1121f;--orejime-color-on-interactive:#fff;--orejime-color-subdued:rgba(var(--bp-fg-rgb), .6);--orejime-color-backdrop:rgba(var(--bp-ov-rgb), .55);--orejime-radius:12px;--orejime-font-family:inherit}.orejime-Env.orejime-Env .orejime-Banner-privacyPolicyLink{color:var(--bp-text);text-decoration:underline}:root[data-contrast=high] .orejime-Env.orejime-Env{--orejime-color-interactive:var(--bp-accent);--orejime-color-on-interactive:var(--bp-bg)}:root[data-contrast=high] .orejime-Env.orejime-Env .orejime-Banner-body,:root[data-contrast=high] .orejime-Env.orejime-Env .orejime-Modal{border:2px solid var(--bp-text)}:root[data-contrast=high] .orejime-Env.orejime-Env .orejime-Button{border:2px solid var(--bp-text);color:var(--bp-text);background:0 0}:root[data-contrast=high] .orejime-Env.orejime-Env .orejime-Button:not(.orejime-Button--save):hover{background:rgb(var(--bp-fg-rgb) / .2)}:root[data-contrast=high] .orejime-Env.orejime-Env .orejime-Button--save{background:var(--bp-accent);border-color:var(--bp-accent);color:var(--bp-bg)}.orejime-Modal-poweredByLink.orejime-Modal-poweredByLink{display:none}.pwa-offline-badge{top:max(10px, env(safe-area-inset-top));z-index:900;border-radius:var(--radius-pill);background:var(--color-error-bg);color:var(--bp-text);border:1px solid rgb(var(--bp-fg-rgb) / var(--opacity-soft));pointer-events:none;opacity:0;transition:transform var(--duration-slow) ease, opacity var(--duration-slow) ease;align-items:center;gap:6px;padding:6px 14px;font:600 .8rem/1 Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:flex;position:fixed;left:50%;transform:translate(-50%)translateY(-150%);box-shadow:0 6px 20px #00000073}.pwa-offline-badge:before{content:"";background:var(--color-error);border-radius:50%;width:8px;height:8px}.pwa-offline-badge-visible{opacity:1;transform:translate(-50%)translateY(0)}.pwa-toast{left:50%;bottom:max(16px, env(safe-area-inset-bottom));z-index:950;border-radius:var(--radius-md);background:var(--bp-card-a);max-width:min(92vw,460px);color:var(--bp-text);border:1px solid rgb(var(--bp-fg-rgb) / var(--opacity-soft));box-shadow:var(--shadow-card);flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;padding:12px 16px;display:flex;position:fixed;transform:translate(-50%)}.pwa-toast-msg{font:500 .92rem/1.3 Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.pwa-toast-actions{gap:8px;display:flex}.pwa-toast-btn{border-radius:var(--radius-pill);border:1px solid rgb(var(--bp-fg-rgb) / var(--opacity-medium));color:var(--bp-text);cursor:pointer;transition:background var(--duration-base) ease;background:0 0;padding:7px 16px;font:600 .85rem/1 Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.pwa-toast-btn:hover{background:rgb(var(--bp-fg-rgb) / var(--opacity-subtle))}.pwa-toast-btn-primary{background:var(--bp-accent);border-color:var(--bp-accent);color:#fff}.pwa-toast-btn-primary:hover{filter:brightness(1.08);background:var(--bp-accent)}@media (prefers-reduced-motion:reduce){.pwa-offline-badge{transition:opacity var(--duration-base) ease}}:root[data-tv] #menu-overlay,:root[data-tv] .dialog-card{font-size:115%}:root[data-tv] #menu-overlay button,:root[data-tv] .dialog-card button{padding-top:10px;padding-bottom:10px}:root[data-tv] button:focus,:root[data-tv] a:focus,:root[data-tv] input:focus,:root[data-tv] [tabindex]:focus{outline:3px solid var(--bp-accent);outline-offset:3px}:root[data-tv] #menu-overlay{box-sizing:border-box;padding:4vmin}.ad-slot{box-sizing:border-box;background:#0000002e;border:1px solid #ffffff1f;border-radius:8px;flex-direction:column;align-items:center;gap:2px;width:100%;max-width:728px;margin:.5rem auto 0;padding:4px;display:flex}.ad-slot[hidden]{display:none}.ad-slot-label{letter-spacing:.08em;text-transform:uppercase;opacity:.5;font-size:9px}.ad-slot-inner{justify-content:center;align-items:center;width:100%;min-height:90px;display:flex}.ad-slot-pause{max-width:320px}.ad-slot-pause .ad-slot-inner{min-height:60px}.ad-unit{width:100%;min-height:inherit;justify-content:center;align-items:center;display:flex}.ad-unit-mock{letter-spacing:.1em;text-transform:uppercase;opacity:.7;background:repeating-linear-gradient(45deg,#ffffff0a,#ffffff0a 10px,#ffffff14 10px 20px);border:1px dashed #ffffff59;border-radius:6px;width:100%;min-height:88px;font-size:11px}.ad-interstitial{z-index:90;background:#000000d1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ad-interstitial-card{background:#14141cf2;border:1px solid #ffffff26;border-radius:12px;flex-direction:column;align-items:center;gap:1rem;min-width:min(80vw,360px);min-height:min(60vh,320px);padding:1.5rem;display:flex}.ad-interstitial-card .ad-unit-mock{flex:1;min-height:220px}.ad-interstitial-close{font:inherit;cursor:pointer;color:#fff;background:#e63946;border:0;border-radius:8px;align-self:flex-end;padding:.5rem 1.25rem}.player-name-input{background:rgb(var(--bp-fg-rgb) / .06);border:1.5px solid rgb(var(--pc-rgb,var(--color-info-rgb)) / .4);width:100%;max-width:144px;color:var(--pc,var(--bp-text));letter-spacing:.1em;text-align:center;transition:border-color var(--duration-base,.15s), background var(--duration-base,.15s);border-radius:8px;outline:none;padding:4px 8px;font-family:inherit;font-size:.95rem;font-weight:800;line-height:1.2}.player-name-input::placeholder{color:rgb(var(--pc-rgb,var(--bp-fg-rgb)) / .55);font-weight:700}.player-name-input:hover{background:rgb(var(--bp-fg-rgb) / .1)}.player-name-input:focus{border-color:var(--pc,var(--color-info));background:rgb(var(--bp-fg-rgb) / .14)}.player-name-input.player-name-input-error,.player-name-input.player-name-input-error:focus{border-color:var(--color-danger,#d93636);background:#d936361f}.editable-name-error{color:var(--color-danger,#d93636);text-align:center;letter-spacing:.04em;pointer-events:none;margin-top:4px;font-size:.72rem;font-weight:700;line-height:1.1}.editable-name-bubble{z-index:10000;background:var(--pc,var(--color-danger,#d93636));color:#000000e0;text-align:center;letter-spacing:.02em;pointer-events:none;border-radius:12px;max-width:200px;padding:8px 12px;font-family:inherit;font-size:.78rem;font-weight:800;line-height:1.2;animation:.14s ease-out editable-name-bubble-in;position:fixed;box-shadow:0 6px 18px #00000059}.editable-name-bubble-tail{border-left:8px solid #0000;border-right:8px solid #0000;border-top:8px solid var(--pc,var(--color-danger,#d93636));width:0;height:0;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)}.editable-name-bubble-below .editable-name-bubble-tail{border-top:none;border-bottom:8px solid var(--pc,var(--color-danger,#d93636));top:-7px;bottom:auto}@keyframes editable-name-bubble-in{0%{opacity:0;transform:translateY(4px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.editable-name-bubble{animation:none}}:root[data-contrast=high] .player-name-input{border:2px solid var(--pc,var(--bp-text));background:0 0}:root[data-contrast=high] .player-name-input:hover{background:rgb(var(--bp-fg-rgb) / .2)}:root[data-contrast=high] .player-name-input::placeholder{color:var(--pc,var(--bp-text));opacity:1}:root[data-contrast=high] .player-name-input:focus{border-color:var(--pc,var(--bp-accent));outline:3px solid var(--bp-accent);outline-offset:2px;background:0 0}:root[data-contrast=high] .player-name-input.player-name-input-error,:root[data-contrast=high] .player-name-input.player-name-input-error:focus{border-color:var(--color-destructive);outline-color:var(--color-destructive);background:0 0}:root[data-contrast=high] .editable-name-error{color:var(--color-error);opacity:1}:root[data-contrast=high] .editable-name-bubble{box-shadow:none}.chip{border-radius:var(--radius-pill);letter-spacing:.04em;white-space:nowrap;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:800;line-height:1;display:inline-flex}.chip--ready,.chip--connected,.chip--you{background:var(--color-success-bg);color:var(--color-success)}.chip--waiting{background:var(--color-info-bg);color:var(--chip-waiting-fg)}.chip--host{background:var(--chip-host-bg);color:var(--chip-host-fg)}.chip--cpu{background:var(--chip-cpu-bg);color:var(--chip-cpu-fg)}.chip--off{background:var(--chip-off-bg);color:var(--chip-off-fg)}.chip--local{background:var(--chip-local-bg);color:var(--chip-local-fg)}.chip--surface{background:rgb(var(--bp-fg-rgb) / var(--opacity-subtle));border:1px solid rgb(var(--bp-fg-rgb) / var(--opacity-quiet));color:var(--bp-text);font-weight:600}.chip--square{border-radius:var(--radius-xs)}.chip--md{padding:4px 12px;font-size:.82rem;font-weight:700}:root[data-contrast=high] .chip{border:2px solid var(--bp-text)}.player-card{--holo-x:50%;--holo-y:50%;--holo-tilt-x:0deg;--holo-tilt-y:0deg;--holo-active:0;--holo-lift:0px;isolation:isolate;background:linear-gradient(180deg, rgb(var(--pc-rgb) / .22) 0%, rgb(var(--pc-rgb) / .06) 60%, rgb(var(--bp-fg-rgb) / .031) 100%);border:1px solid rgb(var(--pc-rgb) / .38);border-top:4px solid var(--pc);width:168px;box-shadow:0 6px 22px rgb(var(--pc-rgb) / .18);transform-style:preserve-3d;perspective:900px;transform:rotateY(var(--holo-tilt-x)) rotateX(var(--holo-tilt-y)) translateY(var(--holo-lift));border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:14px 12px;transition:box-shadow .18s,opacity .18s,filter .18s,transform .25s ease-out;display:flex;position:relative}.player-card:before{content:"";border-radius:inherit;pointer-events:none;z-index:1;background:repeating-linear-gradient(115deg, rgb(var(--pc-rgb) / .25) 0%, rgb(var(--pc-rgb) / .65) 8%, var(--pc) 16%, rgb(var(--pc-rgb) / .85) 24%, rgb(var(--pc-rgb) / .2) 32%);background:repeating-linear-gradient(115deg, color-mix(in srgb, var(--pc) 25%, #fff) 0%, color-mix(in srgb, var(--pc) 65%, #fff) 8%, var(--pc) 16%, color-mix(in srgb, var(--pc) 55%, #000) 24%, color-mix(in srgb, var(--pc) 20%, #fff) 32%);background-size:220% 220%;background-position:var(--holo-x) var(--holo-y);mix-blend-mode:color-dodge;opacity:calc(.1 * var(--holo-active));transition:opacity .25s ease-out;position:absolute;inset:0}.player-card:after{content:"";border-radius:inherit;pointer-events:none;z-index:2;background:radial-gradient(circle at var(--holo-x) var(--holo-y), #ffffff0d, #fff0 40%);mix-blend-mode:overlay;opacity:var(--holo-active);transition:opacity .25s ease-out;position:absolute;inset:0}.player-card>*{z-index:3;position:relative}.player-card:hover{--holo-lift:-3px;box-shadow:0 10px 28px rgb(var(--pc-rgb) / .28)}.player-card.player-off{opacity:.45;background:rgb(var(--bp-fg-rgb) / .016);border-color:rgb(var(--bp-fg-rgb) / .078);border-top-color:rgb(var(--bp-fg-rgb) / .125);box-shadow:none;--holo-lift:0px}.player-card.player-off:hover{--holo-lift:0px}.player-portrait{object-fit:cover;border:2px solid var(--pc);width:132px;height:132px;box-shadow:0 4px 14px rgb(var(--pc-rgb) / .4);border-radius:10px}.player-card.player-off .player-portrait{filter:grayscale(.9)brightness(.65);border-color:rgb(var(--bp-fg-rgb) / .125);box-shadow:none}.player-label{color:var(--pc);letter-spacing:.1em;border:1.5px solid #0000;padding:4px 8px;font-size:.95rem;font-weight:800;line-height:1.2}.player-card.player-off .player-label{color:rgb(var(--bp-fg-rgb) / .333)}.player-type-btn{width:100%;padding:6px 10px;font-size:.85rem}.player-input-btn{opacity:.85;width:100%;padding:4px 10px;font-size:.78rem}.player-keymap-btn{opacity:.7;font-variant-numeric:tabular-nums;width:100%;padding:3px 10px;font-size:.72rem}.player-card-you{--holo-lift:-2px;box-shadow:0 8px 26px rgb(var(--pc-rgb) / .4)}.player-card-you:hover{--holo-lift:-5px;box-shadow:0 14px 32px rgb(var(--pc-rgb) / .55)}.player-card-taken{border-color:var(--pc,rgb(var(--bp-fg-rgb) / .188))}.player-card-free{opacity:.55;box-shadow:none}.player-card-free:hover{opacity:1}.player-card-free .player-portrait{border-color:rgb(var(--bp-fg-rgb) / .188);box-shadow:none}.player-portrait[tabindex]{cursor:pointer;outline:none}.player-card:has(.player-portrait[tabindex]:focus-visible){outline:2px solid var(--color-info);outline-offset:2px}.player-rank-row{background:linear-gradient(90deg, rgb(var(--pc-rgb) / .12), transparent 70%);border-left:3px solid var(--pc);border-radius:8px;align-items:center;gap:12px;padding:8px 12px;display:flex}.rank-portrait{object-fit:cover;border:2px solid var(--pc);border-radius:6px;flex-shrink:0;width:40px;height:40px}.rank-name{color:var(--pc);min-width:80px;font-size:.95rem;font-weight:700}.rank-pct{color:var(--bp-text);text-align:right;min-width:50px;font-weight:800}.rank-wins{color:var(--pc);text-align:center;min-width:24px;font-weight:700}.ready-player-row{background:linear-gradient(90deg, rgb(var(--pc-rgb) / .1), transparent 70%);border-left:3px solid var(--pc);border-radius:8px;align-items:center;gap:12px;padding:8px 12px;display:flex}.ready-player-portrait{object-fit:cover;border:2px solid var(--pc);border-radius:6px;flex-shrink:0;width:40px;height:40px}.ready-player-info{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.ready-player-name{color:var(--pc);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}:root[data-contrast=high] .player-card{--holo-tilt-x:0deg;--holo-tilt-y:0deg;--holo-lift:0px;--holo-active:0;border:2px solid var(--pc);box-shadow:none;transition:opacity var(--duration-base);background:0 0;border-top-width:4px;transform:none}:root[data-contrast=high] .player-card:before,:root[data-contrast=high] .player-card:after{display:none}:root[data-contrast=high] .player-card:hover{--holo-lift:0px;box-shadow:none}:root[data-contrast=high] .player-portrait{box-shadow:none}:root[data-contrast=high] .player-card.player-off{opacity:.7;border:2px dashed var(--bp-text);background:0 0;border-top-width:4px}:root[data-contrast=high] .player-card.player-off .player-portrait{border-color:var(--bp-text)}:root[data-contrast=high] .player-card.player-off .player-label{color:var(--bp-text)}:root[data-contrast=high] .player-card-you,:root[data-contrast=high] .player-card-you:hover{box-shadow:inset 0 0 0 2px var(--bp-text)}:root[data-contrast=high] .player-card-free{opacity:.7}:root[data-contrast=high] .player-card-free .player-portrait{border-color:var(--bp-text)}:root[data-contrast=high] .player-input-btn,:root[data-contrast=high] .player-keymap-btn{opacity:1}:root[data-contrast=high] .player-card:has(.player-portrait[tabindex]:focus-visible){outline-offset:3px;outline-width:4px}:root[data-contrast=high] .player-rank-row,:root[data-contrast=high] .ready-player-row{border-left-width:4px;border:2px solid var(--bp-text);border-left:4px solid var(--pc);background:0 0}:root[data-contrast=high] .rank-portrait,:root[data-contrast=high] .ready-player-portrait{border-color:var(--pc)}@media (prefers-reduced-motion:reduce){.player-card{--holo-tilt-x:0deg;--holo-tilt-y:0deg;--holo-lift:0px;--holo-active:0;transition:opacity var(--duration-base);transform:none}.player-card:before,.player-card:after{display:none}.player-card:hover{--holo-lift:0px}}.menu-splatter-bg{filter:blur(8px);opacity:.07;pointer-events:none;z-index:-1;width:100%;height:100%;position:absolute;inset:0}.dialog-overlay,.screen-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog-overlay{background:rgb(var(--bp-ov-rgb) / .78);z-index:120;animation:.18s ease-out pause-overlay-in}.screen-overlay{background:rgb(var(--bp-ov-rgb) / var(--opacity-strong));z-index:110}@keyframes pause-overlay-in{0%{opacity:0}to{opacity:1}}:root[data-contrast=high] .dialog-overlay,:root[data-contrast=high] .screen-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}:root[data-contrast=high] .dialog-overlay{background:var(--bp-bg)}@media (prefers-reduced-motion:reduce){.dialog-overlay{animation:none}}.settings-card{width:min(460px,100vw - 24px);max-height:calc(100vh - 24px);border-radius:24px;flex-direction:column;max-height:calc(100dvh - 24px);display:flex;overflow:hidden}.settings-header{border-bottom:1px solid rgb(var(--bp-fg-rgb) / .08);text-align:center;flex-shrink:0;padding:22px 28px 18px}.settings-title{letter-spacing:.18em;text-transform:uppercase;color:var(--bp-text);margin:0;font-size:1.5rem;font-weight:800;line-height:1}.settings-body{overscroll-behavior:contain;flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.settings-section{flex-direction:column;gap:2px;padding:18px 26px 20px;display:flex}.settings-section+.settings-section{border-top:1px solid rgb(var(--bp-fg-rgb) / .07)}.settings-section-title{letter-spacing:.2em;text-transform:uppercase;color:var(--bp-accent);margin:0 0 10px;font-size:.65rem;font-weight:900}.settings-row{align-items:center;gap:12px;min-height:48px;display:flex}.settings-row[hidden]{display:none}.settings-row--disabled{opacity:.45;cursor:not-allowed}.settings-row--disabled .settings-slider,.settings-row--disabled .settings-toggle{pointer-events:none}:root[data-contrast=high] .settings-label,:root[data-contrast=high] .settings-value,:root[data-contrast=high] .settings-hint{opacity:1}:root[data-contrast=high] .settings-section+.settings-section{border-top-width:2px;border-top-color:rgb(var(--bp-fg-rgb) / .65)}:root[data-contrast=high] .settings-header,:root[data-contrast=high] .settings-footer{border-color:rgb(var(--bp-fg-rgb) / .65)}:root[data-contrast=high] .settings-slider:focus-visible{outline-offset:4px;outline-width:4px}:root[data-contrast=high] .settings-toggle:focus-visible{outline-offset:4px;outline-width:4px}:root[data-contrast=high] .settings-chip:focus-visible{outline-offset:4px;outline-width:4px}:root[data-contrast=high] .settings-close:focus-visible{outline-offset:4px;outline-width:4px}:root[data-contrast=high] .settings-slider{background:linear-gradient(to right, var(--bp-accent) 0%, var(--bp-accent) var(--pct,50%), rgb(var(--bp-fg-rgb) / .65) var(--pct,50%), rgb(var(--bp-fg-rgb) / .65) 100%)}:root[data-contrast=high] .settings-toggle{border-width:2px;border-color:var(--bp-text);background:0 0}:root[data-contrast=high] .settings-toggle:checked{background:var(--bp-accent);border-color:var(--bp-text)}:root[data-contrast=high] .settings-toggle:after{background:var(--bp-text)}:root[data-contrast=high] .settings-toggle:checked:after{background:#000}:root[data-theme=light][data-contrast=high] .settings-toggle:checked:after{background:#fff}:root[data-contrast=high] .settings-chip{border-width:2px;border-color:var(--bp-text);background:0 0}:root[data-contrast=high] .settings-chip:hover{background:rgb(var(--bp-fg-rgb) / .2);border-color:var(--bp-text)}:root[data-contrast=high] .settings-chip.active{background:var(--bp-accent);border-color:var(--bp-text);color:#000;box-shadow:none}:root[data-theme=light][data-contrast=high] .settings-chip.active{color:#fff}.settings-row--chips{align-items:flex-start;padding-top:4px;padding-bottom:4px}.settings-label{letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;color:var(--bp-text);opacity:.6;flex:0 0 124px;padding-top:2px;font-size:.78rem;font-weight:700;overflow:hidden}.settings-slider-wrap{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.settings-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to right, var(--bp-accent) 0%, var(--bp-accent) var(--pct,50%), rgb(var(--bp-fg-rgb) / .18) var(--pct,50%), rgb(var(--bp-fg-rgb) / .18) 100%);cursor:pointer;border-radius:2px;outline:none;flex:1;min-width:0;height:4px}.settings-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--bp-text);border:2.5px solid var(--bp-accent);cursor:pointer;border-radius:50%;width:20px;height:20px;transition:transform .1s;box-shadow:0 1px 6px #00000040}.settings-slider:active::-webkit-slider-thumb{transform:scale(1.2)}.settings-slider::-moz-range-thumb{background:var(--bp-text);border:2.5px solid var(--bp-accent);cursor:pointer;border-radius:50%;width:20px;height:20px;box-shadow:0 1px 6px #00000040}.settings-slider:focus-visible{outline:2px solid var(--bp-accent);outline-offset:4px;border-radius:3px}.settings-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--bp-text);opacity:.55;flex:0 0 38px;font-size:.82rem;font-weight:700}.settings-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgb(var(--bp-fg-rgb) / .15);border:1.5px solid rgb(var(--bp-fg-rgb) / .12);cursor:pointer;box-sizing:border-box;border-radius:13px;flex-shrink:0;width:44px;height:26px;margin:0;transition:background .22s,border-color .22s;position:relative}.settings-toggle:checked{background:var(--bp-accent);border-color:var(--bp-accent)}.settings-toggle:after{content:"";background:rgb(var(--bp-fg-rgb) / .35);border-radius:50%;width:18px;height:18px;transition:transform .22s cubic-bezier(.34,1.4,.64,1),background .22s;position:absolute;top:3px;left:3px}.settings-toggle:checked:after{background:#fff;transform:translate(17px)}.settings-toggle:focus-visible{outline:2px solid var(--bp-accent);outline-offset:3px}.settings-chips{flex-wrap:wrap;flex:1;gap:6px;display:flex}.settings-chip{background:rgb(var(--bp-fg-rgb) / .063);border:1px solid rgb(var(--bp-fg-rgb) / .12);color:var(--bp-text);cursor:pointer;border-radius:8px;padding:6px 13px;font-family:inherit;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s}.settings-chip:hover{background:rgb(var(--bp-fg-rgb) / .12);border-color:rgb(var(--bp-fg-rgb) / .22)}.settings-chip.active{color:#fff;background:linear-gradient(135deg,#e63946,#c1121f);border-color:#c1121f;box-shadow:0 2px 10px #e6394659}.settings-chip:focus-visible{outline:2px solid var(--bp-accent);outline-offset:2px}.settings-hint{color:var(--bp-text);opacity:.6;flex:1;font-size:.8rem;font-style:italic;font-weight:600}.settings-footer{border-top:1px solid rgb(var(--bp-fg-rgb) / .08);flex-shrink:0;padding:14px 26px 22px}.settings-close{color:#fff;letter-spacing:.04em;cursor:pointer;background:linear-gradient(135deg,#e63946 0%,#c1121f 100%);border:none;border-radius:14px;width:100%;min-height:48px;padding:12px 24px;font-family:inherit;font-size:1rem;font-weight:700;transition:opacity .15s,transform .1s;display:block;box-shadow:0 4px 18px #e6394661}.settings-close:hover{opacity:.88}.settings-close:active{transform:scale(.98)}.settings-close:focus-visible{outline:2px solid var(--bp-accent);outline-offset:3px}:root[data-contrast=high] .settings-close{background:var(--bp-accent);color:#000;box-shadow:inset 0 0 0 3px var(--bp-text);background-image:none}:root[data-theme=light][data-contrast=high] .settings-close{color:#fff}:root[data-contrast=high] .settings-close:hover{opacity:1;filter:brightness(1.15)}@media (max-height:500px) and (orientation:landscape){.settings-card{border-radius:18px;width:min(700px,100vw - 20px)}.settings-header{padding:10px 22px 8px}.settings-title{font-size:1.1rem}.settings-section{gap:0;padding:12px 20px}.settings-row{gap:8px;min-height:40px}.settings-row--chips{padding-top:2px;padding-bottom:2px}.settings-label{flex:0 0 140px;font-size:.72rem}.settings-chip{padding:4px 10px;font-size:.8rem}.settings-footer{padding:10px 22px 14px}.settings-close{border-radius:10px;min-height:40px;padding:8px 20px;font-size:.9rem}}@media (max-width:400px){.settings-section{padding:16px 18px 18px}.settings-footer{padding:12px 18px 20px}}#menu-overlay .menu-logo{view-transition-name:main-logo}#menu-overlay,#results-overlay,#online-lobby-overlay{background:linear-gradient(160deg, var(--bp-bg) 0%, var(--bp-bg-2) 100%);z-index:100;flex-direction:column;justify-content:safe center;align-items:center;gap:20px;display:flex;position:fixed;inset:0;overflow-y:auto}:root[data-contrast=high] #menu-overlay,:root[data-contrast=high] #results-overlay,:root[data-contrast=high] #online-lobby-overlay{background:var(--bp-bg)}:root[data-contrast=high] .menu-segmented{border:2px solid var(--bp-text);background:0 0}:root[data-contrast=high] .menu-segmented-btn{opacity:1;color:var(--bp-text);box-shadow:none;background:0 0}:root[data-contrast=high] .menu-segmented-btn:hover{background:rgb(var(--bp-fg-rgb) / .2);opacity:1}:root[data-contrast=high] .menu-segmented-btn:focus-visible{outline-offset:3px;outline-width:4px}:root[data-contrast=high] .menu-segmented-btn.active{background:var(--bp-accent);color:#000;box-shadow:inset 0 0 0 2px var(--bp-text)}:root[data-theme=light][data-contrast=high] .menu-segmented-btn.active{color:#fff}.menu-logo{-webkit-user-select:none;user-select:none;filter:drop-shadow(0 8px 20px #00000073);flex-direction:column;align-items:center;margin-top:120px;padding:12px 0;font-family:Pacifico,cursive;line-height:.85;display:flex}.menu-logo-battle,.menu-logo-painters{text-shadow:-3px 0 #fff,3px 0 #fff,0 -3px #fff,0 3px #fff,-3px -3px #fff,3px -3px #fff,-3px 3px #fff,3px 3px #fff,0 6px #00000040}.menu-logo-battle{color:var(--color-brand-red);z-index:2;margin-right:1.5em;font-size:3.4rem;animation:22s ease-in-out infinite logo-battle;position:relative;transform:rotate(-7deg)}.menu-logo-painters{color:var(--color-brand-blue);margin-top:-.35em;margin-left:.6em;font-size:5.2rem;animation:22s ease-in-out infinite logo-painters;transform:rotate(-3deg)}:root[data-contrast=high] .menu-logo{filter:none}:root[data-theme=light][data-contrast=high] .menu-logo-battle,:root[data-theme=light][data-contrast=high] .menu-logo-painters{text-shadow:-3px 0 #000,3px 0 #000,0 -3px #000,0 3px #000,-3px -3px #000,3px -3px #000,-3px 3px #000,3px 3px #000}@media (prefers-reduced-motion:reduce){.menu-logo-battle,.menu-logo-painters{animation:none}}.menu-version-chip{letter-spacing:.08em;text-transform:uppercase;border-radius:20px;align-items:center;margin-top:10px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:.6rem;font-weight:800;display:inline-flex;overflow:hidden;box-shadow:0 2px 6px #00000059}.menu-version-beta{color:#fff;background:#c1121f;padding:3px 7px}.menu-version-num{color:#ffffffd1;letter-spacing:.12em;background:#00000073;padding:3px 8px}@keyframes logo-battle{0%,45%{color:var(--color-brand-red)}50%,95%{color:var(--color-brand-yellow)}to{color:var(--color-brand-red)}}@keyframes logo-painters{0%,45%{color:var(--color-brand-blue)}50%,95%{color:var(--color-brand-green)}to{color:var(--color-brand-blue)}}.menu-subtitle{opacity:.6;margin-top:-12px;font-size:1rem}.menu-grid{flex-direction:column;align-items:center;gap:18px;display:flex}.menu-cycle-btn{background:rgb(var(--bp-fg-rgb) / .078);border:1px solid rgb(var(--bp-fg-rgb) / .157);color:var(--bp-text);cursor:pointer;text-align:center;border-radius:8px;min-width:84px;padding:5px 14px;font-family:inherit;font-size:.88rem;transition:background .15s,border-color .15s,transform 80ms}.menu-cycle-btn:hover{background:rgb(var(--bp-fg-rgb) / .149);border-color:rgb(var(--bp-fg-rgb) / .282)}.menu-cycle-btn:active{transform:scale(.96)}.menu-cycle-btn:focus-visible{outline:2px solid var(--bp-accent);outline-offset:2px}.menu-segmented{background:rgb(var(--bp-fg-rgb) / .051);border:1px solid rgb(var(--bp-fg-rgb) / .125);border-radius:999px;gap:2px;padding:4px;display:inline-flex}.menu-segmented-btn{color:var(--bp-text);cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:999px;padding:8px 24px;font-family:inherit;font-size:.92rem;font-weight:600;transition:background .18s,opacity .18s}.menu-segmented-btn:hover{opacity:.9}.menu-segmented-btn:disabled,.menu-segmented-btn--disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.menu-segmented-btn:focus-visible{outline:2px solid var(--bp-accent);outline-offset:2px}.menu-segmented-btn.active{opacity:1;color:#fff;background:linear-gradient(135deg,#e63946,#c1121f);box-shadow:0 2px 12px #e6394640}.player-cards{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:14px;display:flex}.player-cards .vs-divider{align-self:center}.vs-divider{color:var(--color-brand-red);text-align:center;text-shadow:-2px 0 #fff,2px 0 #fff,0 -2px #fff,0 2px #fff,-2px -2px #fff,2px -2px #fff,-2px 2px #fff,2px 2px #fff,0 5px #00000059;opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;width:0;margin:0 -7px;font-family:Pacifico,cursive;font-size:2.8rem;line-height:1;transition:width .4s cubic-bezier(.34,1.56,.64,1),margin .4s cubic-bezier(.34,1.56,.64,1),opacity .25s ease-out,transform .45s cubic-bezier(.34,1.56,.64,1);transform:scale(.3)rotate(-25deg)}.player-cards[data-mode=team] .vs-divider{opacity:1;width:90px;margin:0;animation:1.8s ease-in-out .5s infinite vs-pulse;transform:scale(1)rotate(-8deg)}@keyframes vs-pulse{0%,to{transform:scale(1)rotate(-8deg)}50%{transform:scale(1.08)rotate(-5deg)}}.game-bar{background:rgb(var(--bp-fg-rgb) / .031);border:1px solid rgb(var(--bp-fg-rgb) / .078);border-radius:999px;flex-wrap:wrap;align-items:center;gap:4px;padding:6px;display:flex}.game-bar-item{align-items:center;gap:10px;padding:2px 6px 2px 14px;display:flex}.game-bar-item+.game-bar-item{border-left:1px solid rgb(var(--bp-fg-rgb) / .078)}.game-bar-item-label{letter-spacing:.12em;text-transform:uppercase;opacity:.55;font-size:.7rem;font-weight:700}:root[data-contrast=high] .game-bar{border:2px solid var(--bp-text);background:0 0}:root[data-contrast=high] .game-bar-item+.game-bar-item{border-left-width:2px;border-left-color:var(--bp-text)}:root[data-contrast=high] .game-bar-item-label{opacity:1}:root[data-contrast=high] .menu-cycle-btn{border:2px solid var(--bp-text);color:var(--bp-text);background:0 0}:root[data-contrast=high] .menu-cycle-btn:hover{background:rgb(var(--bp-fg-rgb) / .2);border-color:var(--bp-text)}:root[data-contrast=high] span.menu-cycle-btn--readonly{opacity:1;border:2px dashed var(--bp-text);color:var(--bp-text);background:0 0}.menu-settings-btn{background:rgb(var(--bp-fg-rgb) / .063);border:1px solid rgb(var(--bp-fg-rgb) / .157);color:var(--bp-text);cursor:pointer;letter-spacing:.04em;border-radius:50px;margin-top:-8px;padding:8px 24px;font-family:inherit;font-size:.88rem;font-weight:600;transition:background .15s,border-color .15s,transform 80ms}.menu-settings-btn:hover{background:rgb(var(--bp-fg-rgb) / .133);border-color:rgb(var(--bp-fg-rgb) / .282)}.menu-settings-btn:active{transform:scale(.97)}:root[data-contrast=high] .menu-settings-btn{border:2px solid var(--bp-text);color:var(--bp-text);background:0 0}:root[data-contrast=high] .menu-settings-btn:hover{background:rgb(var(--bp-fg-rgb) / .2);border-color:var(--bp-text)}.menu-replays-btn,.menu-share-btn,.menu-about-btn{background:rgb(var(--bp-fg-rgb) / .063);border:1px solid rgb(var(--bp-fg-rgb) / .157);color:var(--bp-text);cursor:pointer;letter-spacing:.04em;border-radius:50px;padding:8px 24px;font-family:inherit;font-size:.88rem;font-weight:600;transition:background .15s,border-color .15s,transform 80ms}.menu-replays-btn:hover,.menu-share-btn:hover,.menu-about-btn:hover{background:rgb(var(--bp-fg-rgb) / .133);border-color:rgb(var(--bp-fg-rgb) / .282)}.menu-replays-btn:active,.menu-share-btn:active,.menu-about-btn:active{transform:scale(.97)}:root[data-contrast=high] .menu-replays-btn,:root[data-contrast=high] .menu-share-btn,:root[data-contrast=high] .menu-about-btn{border:2px solid var(--bp-text);color:var(--bp-text);background:0 0}:root[data-contrast=high] .menu-replays-btn:hover,:root[data-contrast=high] .menu-share-btn:hover,:root[data-contrast=high] .menu-about-btn:hover{background:rgb(var(--bp-fg-rgb) / .2);border-color:var(--bp-text)}.menu-hint{opacity:.4;text-align:center;letter-spacing:.06em;font-size:.72rem}@media (max-width:760px) and (orientation:portrait){#menu-overlay,#online-lobby-overlay{justify-content:flex-start;gap:12px;padding:16px 12px;overflow-y:auto}.menu-logo{margin-top:10px;padding:4px 0}.menu-logo-battle{margin-right:1em;font-size:2.1rem}.menu-logo-painters{margin-left:.4em;font-size:3.3rem}.menu-segmented-btn{padding:6px 18px;font-size:.85rem}.player-cards{gap:8px;width:100%;max-width:380px}.player-card{gap:8px;width:calc(50% - 4px);padding:10px 8px}.char-grid{grid-template-columns:repeat(2,1fr);gap:8px;max-width:380px}.char-grid .player-card{width:auto;min-height:280px}.player-portrait{width:96px;height:96px}.player-label{letter-spacing:.08em;font-size:.85rem}.player-type-btn{padding:5px 8px;font-size:.78rem}.player-input-btn{padding:4px 8px;font-size:.72rem}.player-keymap-btn{padding:3px 8px;font-size:.66rem}.player-card:hover,.player-card-you:hover{--holo-lift:0px}.player-cards .vs-divider{display:none}.game-bar{border-radius:14px;flex-direction:column;align-items:stretch;width:100%;max-width:380px;padding:8px 10px}.game-bar-item{justify-content:space-between;padding:6px 4px}.game-bar-item+.game-bar-item{border-left:none;border-top:1px solid rgb(var(--bp-fg-rgb) / .078);margin-top:2px;padding-top:8px}.menu-start-btn{max-width:380px;padding:12px 40px;font-size:1rem}#results-overlay{justify-content:flex-start;align-items:center;padding:10px;overflow-y:auto}.results-card{gap:8px;width:100%;min-width:0;max-width:380px;max-height:none;padding:14px 14px 12px;overflow:visible;box-shadow:0 14px 32px #0009}.results-content-row,.results-players-col{gap:8px}.results-title{letter-spacing:.03em;margin:0;font-size:1.3rem}.player-spotlight{border-width:1px;gap:10px;padding:10px 12px}.spotlight-portrait{border-width:2px;width:64px;height:64px}.spotlight-info{gap:4px}.spotlight-name{letter-spacing:.06em;font-size:.92rem}.spotlight-stats{gap:8px}.spotlight-pct{font-size:1.15rem}.spotlight-wins{font-size:.72rem}.results-ranks{gap:4px}.player-rank-row{gap:8px;padding:4px 8px}.rank-portrait{border-width:2px;border-radius:5px;width:28px;height:28px}.rank-name{min-width:60px;font-size:.78rem}.rank-pct{min-width:40px;font-size:.85rem}.rank-wins{min-width:20px;font-size:.78rem}.team-arena{gap:4px}.team-block{border-radius:10px;gap:4px;padding:8px 4px}.team-label{letter-spacing:.08em;font-size:.7rem}.team-players{gap:6px}.team-portrait{border-width:2px;width:36px;height:36px}.team-player-pct{font-size:.66rem}.team-total{font-size:1.05rem}.team-vs{font-size:1.4rem}.results-stats{gap:8px;margin-top:0}.stats-block{gap:5px;padding:8px 10px}.stats-section-title{letter-spacing:.1em;font-size:.6rem}.coverage-graph{height:64px}.stats-items-list{gap:4px}.stats-items-row{gap:6px;padding:3px 6px}.stats-items-label{min-width:26px;font-size:.72rem}.stats-items-chips{gap:4px}.stats-item-chip{padding:2px 5px;font-size:.72rem}.results-actions{gap:8px}#results-overlay .menu-start-btn{padding:10px 28px;font-size:.95rem}#results-overlay .pause-btn-secondary{padding:8px 22px;font-size:.82rem}#hud-notifications{gap:6px;max-width:calc(100vw - 16px);top:56px;right:8px}.hud-notification{border-left-width:4px;border-radius:10px;gap:8px;padding:6px 12px 6px 6px}.hud-notification-portrait{border-width:2px;border-radius:6px;width:32px;height:32px}.hud-notification-text{font-size:.78rem}#hud-status-bar{gap:6px;width:calc(100vw - 24px);bottom:12px}.hud-status-zone{border-radius:6px;height:32px;font-size:.95rem}.hud-status-zone-round{flex:0 0 100px}.hud-status-zone-battle{flex:0 0 130px}}@media (max-height:500px) and (orientation:landscape){#menu-overlay,#online-lobby-overlay{justify-content:flex-start;gap:6px;padding:6px 16px;overflow-y:auto}.menu-logo{margin-top:10px;padding:2px 0}.menu-logo-battle{margin-right:.9em;font-size:1.7rem}.menu-logo-painters{margin-top:-.3em;margin-left:.4em;font-size:2.6rem}.menu-segmented-btn{padding:4px 16px;font-size:.82rem}.player-cards{gap:6px}.player-card{border-top-width:3px;border-radius:10px;gap:5px;width:132px;padding:6px 6px 8px}.char-grid{grid-template-columns:repeat(4,132px);gap:6px}.char-grid .player-card{min-height:220px}.player-portrait{border-radius:8px;width:70px;height:70px}.player-label{letter-spacing:.06em;font-size:.72rem}.player-type-btn{padding:3px 6px;font-size:.7rem}.player-input-btn{padding:3px 6px;font-size:.66rem}.player-keymap-btn{padding:2px 6px;font-size:.6rem}.player-card:hover,.player-card-you:hover{--holo-lift:0px}.vs-divider{margin:0 -3px;font-size:1.7rem}.player-cards[data-mode=team] .vs-divider{width:54px}.game-bar{gap:2px;padding:4px 6px}.game-bar-item{gap:6px;padding:2px 6px 2px 12px}.game-bar-item-label{letter-spacing:.1em;font-size:.62rem}.menu-cycle-btn{min-width:64px;padding:3px 10px;font-size:.76rem}.menu-start-btn{padding:8px 36px;font-size:.95rem}#results-overlay{align-items:stretch;padding:0}#results-overlay .results-card{width:100%;max-width:none;box-shadow:none;border-radius:0;flex-direction:column;gap:10px;height:100vh;margin:0;padding:10px 16px;display:flex;overflow:hidden}#results-overlay .results-title{flex-shrink:0;margin:0;font-size:1.2rem}#results-overlay .results-content-row{flex-direction:row;flex:1;gap:14px;min-height:0;display:flex}#results-overlay .results-players-col{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex;overflow-y:auto}#results-overlay .results-stats-col{flex-direction:column;flex:1;min-width:0;display:flex;overflow-y:auto}#results-overlay .player-spotlight{gap:10px;padding:8px 10px}#results-overlay .spotlight-portrait{width:52px;height:52px}#results-overlay .spotlight-info{gap:3px}#results-overlay .spotlight-name{font-size:.88rem}#results-overlay .spotlight-pct{font-size:1.1rem}#results-overlay .spotlight-wins{font-size:.72rem}#results-overlay .results-ranks{gap:4px}#results-overlay .player-rank-row{gap:8px;padding:4px 8px}#results-overlay .rank-portrait{border-radius:5px;width:28px;height:28px}#results-overlay .rank-name{min-width:60px;font-size:.78rem}#results-overlay .rank-pct{min-width:42px;font-size:.85rem}#results-overlay .rank-wins{min-width:20px;font-size:.8rem}#results-overlay .team-arena{gap:8px}#results-overlay .team-block{gap:4px;padding:8px 6px}#results-overlay .team-label{font-size:.78rem}#results-overlay .team-portrait{width:36px;height:36px}#results-overlay .team-total{font-size:1.1rem}#results-overlay .team-vs{font-size:1.4rem}#results-overlay .results-stats{gap:6px;margin-top:0}#results-overlay .stats-block{gap:4px;padding:8px 10px}#results-overlay .stats-section-title{font-size:.62rem}#results-overlay .coverage-graph{height:60px}#results-overlay .stats-items-list{gap:3px}#results-overlay .stats-items-row{gap:6px;padding:2px 6px}#results-overlay .stats-items-label{min-width:28px;font-size:.78rem}#results-overlay .stats-item-chip{padding:2px 6px;font-size:.78rem}#results-overlay .results-actions{flex-direction:row;flex-shrink:0;gap:8px}#results-overlay .menu-start-btn{padding:8px 24px;font-size:.95rem}#results-overlay .pause-btn-secondary{padding:7px 20px;font-size:.85rem}#hud-notifications{gap:5px;top:8px;right:8px}.hud-notification{border-left-width:4px;border-radius:10px;gap:8px;padding:5px 12px 5px 5px}.hud-notification-portrait{border-width:2px;border-radius:6px;width:32px;height:32px}.hud-notification-text{font-size:.78rem}#hud-status-bar{gap:6px;width:calc(100vw - 24px);bottom:8px}.hud-status-zone{border-radius:6px;height:30px;font-size:.9rem}.hud-status-zone-round{flex:0 0 110px}.hud-status-zone-battle{flex:0 0 140px}}html.vt-active .menu-logo-battle,html.vt-active .menu-logo-painters{animation:none}html.vt-active #pause-overlay,html.vt-active #client-pause-overlay,html.vt-active #disconnect-overlay,html.vt-active #settings-overlay,html.vt-active .pause-card,html.vt-active .settings-card{animation-duration:0s}@media (prefers-reduced-motion:reduce){.menu-logo-battle,.menu-logo-painters,.player-cards[data-mode=team] .vs-divider{animation:none}.vs-divider,.player-card{transition-duration:0s}.player-card,.player-card:hover{--holo-lift:0px;--holo-tilt-x:0deg;--holo-tilt-y:0deg}}.menu-start-btn{background:linear-gradient(135deg, var(--bp-accent), #c1121f);color:#fff;border-radius:var(--radius-pill);cursor:pointer;box-shadow:0 4px 24px rgb(var(--bp-accent-rgb) / .25);transition:transform var(--duration-fast), box-shadow var(--duration-fast);letter-spacing:.03em;border:none;padding:14px 56px;font-family:inherit;font-size:1.15rem;font-weight:800}.menu-start-btn:hover{box-shadow:0 8px 32px rgb(var(--bp-accent-rgb) / .38);transform:translateY(-2px)}.menu-start-btn:active{transform:translateY(0)}:root[data-contrast=high] .menu-start-btn{background:var(--bp-accent);color:#000;box-shadow:inset 0 0 0 3px var(--bp-text);background-image:none}:root[data-theme=light][data-contrast=high] .menu-start-btn{color:#fff}:root[data-contrast=high] .menu-start-btn:hover{box-shadow:inset 0 0 0 3px var(--bp-text);filter:brightness(1.15);transform:none}:root[data-contrast=high] .pause-btn-secondary{border:2px solid var(--bp-text);color:var(--bp-text);background:0 0}:root[data-contrast=high] .pause-btn-secondary:hover{background:rgb(var(--bp-fg-rgb) / .2);border-color:var(--bp-text)}.pause-btn-secondary{background:rgb(var(--bp-fg-rgb) / var(--opacity-subtle));border:1px solid rgb(var(--bp-fg-rgb) / var(--opacity-soft));width:100%;color:var(--bp-text);border-radius:var(--radius-pill);cursor:pointer;transition:background var(--duration-base), border-color var(--duration-base), transform 80ms;padding:10px 28px;font-family:inherit;font-size:.92rem}.pause-btn-secondary:hover{background:rgb(var(--bp-fg-rgb) / var(--opacity-quiet));border-color:rgb(var(--bp-fg-rgb) / var(--opacity-medium))}.pause-btn-secondary:active{transform:scale(.97)}.results-actions{flex-direction:column;gap:10px;margin-top:6px;display:flex}.dialog-card{background:linear-gradient(160deg, var(--bp-card-a) 0%, var(--bp-card-b) 100%);border:1px solid rgb(var(--bp-fg-rgb) / var(--opacity-subtle));border-radius:var(--radius-xl);box-shadow:var(--shadow-card);animation:pause-card-in var(--duration-slow) cubic-bezier(.34, 1.56, .64, 1)}:root[data-contrast=high] .dialog-card{background:var(--bp-bg);border:2px solid var(--bp-text);box-shadow:none}@keyframes pause-card-in{0%{opacity:0;transform:scale(.85)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.pause-title{letter-spacing:.18em;text-transform:uppercase;color:var(--bp-text);margin:0;font-family:inherit;font-size:1.8rem;font-weight:800;line-height:1}#pause-overlay,#client-pause-overlay{background:rgb(var(--bp-ov-rgb) / .72);z-index:110}#client-pause-overlay .menu-start-btn{width:100%;padding:12px 40px;font-size:1.05rem}#client-pause-overlay .menu-hint{opacity:.45;margin-top:6px}.pause-card{flex-direction:column;align-items:center;gap:22px;min-width:380px;padding:40px 56px 32px;display:flex}.pause-card .menu-logo{transform-origin:50%;margin:-28px 0 -20px;padding:0;transform:scale(.55)}#pause-overlay .menu-start-btn{width:100%;padding:12px 40px;font-size:1.05rem}.pause-evict-list{flex-direction:column;gap:6px;width:100%;margin-top:2px;display:flex}.pause-evict-row{background:rgb(var(--bp-fg-rgb) / .031);border:1px solid rgb(var(--pc-rgb,255 255 255) / .3);border-radius:10px;align-items:center;gap:10px;padding:6px 10px;display:flex}.pause-evict-portrait{border:2px solid var(--pc,#fff);object-fit:cover;border-radius:8px;flex-shrink:0;width:36px;height:36px}.pause-evict-name{color:var(--bp-text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.88rem;overflow:hidden}.pause-evict-btn{background:rgb(var(--color-destructive-rgb) / .13);border:1px solid rgb(var(--color-destructive-rgb) / .53);color:var(--color-error);border-radius:var(--radius-xs);cursor:pointer;transition:background var(--duration-base);white-space:nowrap;padding:4px 10px;font-family:inherit;font-size:.78rem}.pause-evict-btn:hover{background:rgb(var(--color-destructive-rgb) / .27)}:root[data-contrast=high] .pause-evict-btn,:root[data-contrast=high] .pause-evict-confirm-btn{background:var(--color-destructive);border-color:var(--color-destructive);color:#fff;box-shadow:inset 0 0 0 2px var(--bp-text)}:root[data-contrast=high] .pause-evict-btn:hover,:root[data-contrast=high] .pause-evict-confirm-btn:hover{background:var(--color-destructive);border-color:var(--color-destructive);filter:brightness(1.2)}.pause-guest-portrait{border:3px solid var(--pc,#fff);border-radius:14px;width:64px;height:64px}.pause-guest-hint{opacity:.75;text-align:center;margin:0;font-size:.9rem}.pause-evict-confirm-btn{background:rgb(var(--color-destructive-rgb) / .13);border-color:rgb(var(--color-destructive-rgb) / .53);color:var(--color-error)}.pause-evict-confirm-btn:hover{background:rgb(var(--color-destructive-rgb) / .27);border-color:rgb(var(--color-destructive-rgb) / .8)}#pause-overlay .menu-hint{opacity:.45;margin-top:6px}#disconnect-overlay{background:rgb(var(--bp-ov-rgb) / .82);z-index:120}.disconnect-title{color:var(--color-error)}.disconnect-msg{opacity:.75;text-align:center;margin:0;font-size:.92rem}.disconnect-reconnect-hint{opacity:.55;text-align:center;margin:0;font-size:.85rem;animation:1.4s ease-in-out infinite disconnect-pulse}.disconnect-countdown{opacity:.8;text-align:center;margin:0;font-size:.9rem;font-weight:600}@keyframes disconnect-pulse{0%,to{opacity:.35}50%{opacity:.75}}:root[data-contrast=high] #pause-overlay,:root[data-contrast=high] #client-pause-overlay,:root[data-contrast=high] #disconnect-overlay{background:var(--bp-bg)}.online-panel{flex-direction:column;align-items:center;gap:16px;width:100%;max-width:480px;display:flex}.online-panel .menu-segmented-btn.active{background:rgb(var(--bp-fg-rgb) / .094);border:1px solid rgb(var(--bp-fg-rgb) / .157);box-shadow:none}:root[data-contrast=high] .online-panel .menu-segmented-btn.active{background:var(--bp-accent);color:#000;border:2px solid var(--bp-text)}:root[data-theme=light][data-contrast=high] .online-panel .menu-segmented-btn.active{color:#fff}.online-subpanel{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.online-join-hint{color:rgb(var(--bp-fg-rgb) / .667);text-align:center;font-size:.9rem}.online-code-input-row{align-items:center;width:100%;max-width:380px;display:flex;position:relative}.online-code-input-row .online-copy-btn{position:absolute;right:8px}.online-code-input-row .online-code-input{flex:1;min-width:0;max-width:none}.online-code-input{background:var(--bp-input-bg);border:1.5px solid rgb(var(--bp-fg-rgb) / .188);width:100%;max-width:320px;color:var(--bp-text);text-align:left;letter-spacing:.08em;border-radius:10px;outline:none;padding:10px 76px 10px 14px;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,monospace;font-size:1.05rem;transition:border-color .15s}.online-code-input:focus{border-color:var(--color-info)}.online-slots{flex-direction:column;gap:8px;width:100%;max-width:360px;display:flex}.online-slot-row{background:var(--bp-input-bg);border:1.5px solid var(--pc,rgb(var(--bp-fg-rgb) / .125));border-radius:10px;align-items:center;gap:10px;padding:8px 12px;display:flex}.online-slot-portrait{object-fit:cover;border:2px solid var(--pc,rgb(var(--bp-fg-rgb) / .251));border-radius:50%;width:36px;height:36px}.online-slot-name{color:var(--pc,var(--bp-text));flex:1;font-size:.9rem;font-weight:700}.online-slot-you{color:var(--color-success);font-size:.8rem;font-weight:700}.online-type-btn{background:rgb(var(--bp-fg-rgb) / .078);border:1.5px solid rgb(var(--bp-fg-rgb) / .145);color:var(--bp-text);cursor:pointer;border-radius:8px;padding:5px 14px;font-family:inherit;font-size:.82rem;font-weight:700;transition:background .15s}.online-type-btn:hover{background:rgb(var(--bp-fg-rgb) / .133)}#online-lobby-overlay{justify-content:flex-start;padding:24px 0;overflow-y:auto}#online-lobby-overlay .online-code-row{width:calc(100% - 40px);max-width:600px}.online-code-row{background:var(--bp-bg);border:1px solid rgb(var(--bp-fg-rgb) / .094);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;width:100%;padding:12px 16px;display:flex}.online-lobby-label{color:rgb(var(--bp-fg-rgb) / .667);white-space:nowrap;margin-right:auto;font-size:.86rem}.online-code-value{letter-spacing:.12em;color:#4fc3f7;text-align:center;word-break:break-all;background:#4fc3f71a;border:1px dashed #4fc3f76b;border-radius:8px;flex:100%;order:99;min-width:0;padding:5px 14px;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,monospace;font-size:1rem;font-weight:700;transition:filter .2s}@media (min-width:761px){.online-code-value{white-space:nowrap}}.online-code-value.online-code-hidden{filter:blur(6px);-webkit-user-select:none;user-select:none}.online-copy-btn{background:rgb(var(--bp-fg-rgb) / .094);border:1px solid rgb(var(--bp-fg-rgb) / .157);color:var(--bp-text);cursor:pointer;white-space:nowrap;border-radius:8px;padding:6px 13px;font-family:inherit;font-size:.82rem;font-weight:700;transition:background .15s,border-color .15s,color .15s,transform .1s}.online-copy-btn:hover{background:rgb(var(--bp-fg-rgb) / .157)}.online-share-btn{background:rgb(var(--bp-accent-rgb) / .12);border-color:rgb(var(--bp-accent-rgb) / .45);color:var(--bp-accent)}.online-share-btn:hover{background:rgb(var(--bp-accent-rgb) / .2);border-color:rgb(var(--bp-accent-rgb) / .6)}:root[data-contrast=high] .online-code-row{border:2px solid var(--bp-text);background:0 0}:root[data-contrast=high] .online-lobby-label{color:var(--bp-text)}:root[data-contrast=high] .online-code-value{color:var(--bp-accent);border:2px dashed var(--bp-accent);background:0 0}:root[data-contrast=high] .online-code-input{border-color:var(--bp-text);color:var(--bp-text);background:0 0;border-width:2px}:root[data-contrast=high] .online-code-input:focus{border-color:var(--bp-accent);outline:2px solid var(--bp-accent);outline-offset:2px}:root[data-contrast=high] .online-copy-btn{border:2px solid var(--bp-text);color:var(--bp-text);background:0 0}:root[data-contrast=high] .online-copy-btn:hover{background:rgb(var(--bp-fg-rgb) / .2);border-color:var(--bp-text)}.online-copy-btn:active{transform:scale(.96)}.online-copy-btn--copied{background:var(--color-success-bg);border-color:var(--color-success-bg2);color:var(--color-success);animation:.18s ease-out copy-btn-pop}.online-copy-btn--copy-failed{background:var(--color-error-bg);border-color:var(--color-destructive);color:var(--color-error)}@keyframes copy-btn-pop{0%{transform:scale(.92)}60%{transform:scale(1.06)}to{transform:scale(1)}}@media (max-width:760px) and (orientation:portrait){.online-code-row{gap:8px;padding:8px 12px}.online-code-value{font-size:.82rem}.online-copy-btn{padding:4px 8px;font-size:.72rem}}@media (max-height:500px) and (orientation:landscape){.online-code-row{gap:8px;padding:6px 12px}.online-lobby-label,.online-code-value{font-size:.76rem}.online-copy-btn{padding:3px 8px;font-size:.72rem}}.lobby-ready-btn{background:rgb(var(--bp-fg-rgb) / .078);border:1.5px solid rgb(var(--bp-fg-rgb) / .145);color:var(--bp-text);cursor:pointer;border-radius:8px;width:100%;padding:4px 10px;font-family:inherit;font-size:.78rem;font-weight:700;transition:background .15s,border-color .15s,color .15s}.lobby-ready-btn:hover{background:rgb(var(--bp-fg-rgb) / .133)}.lobby-ready-btn.lobby-ready-btn-active{background:var(--color-success-bg);border-color:rgb(var(--color-success-rgb) / .38);color:var(--color-success)}.lobby-ready-btn.lobby-ready-btn-active:hover{background:var(--color-success-bg2)}.lobby-evict-btn{background:rgb(var(--color-destructive-rgb) / .1);border:1px solid rgb(var(--color-destructive-rgb) / .4);color:var(--color-error);border-radius:var(--radius-xs);cursor:pointer;width:100%;transition:background var(--duration-base);padding:6px 10px;font-family:inherit;font-size:.85rem}.lobby-evict-btn:hover{background:rgb(var(--color-destructive-rgb) / .25)}.host-exit-stats{background:rgb(var(--bp-fg-rgb) / .031);border:1px solid rgb(var(--bp-fg-rgb) / .078);border-radius:12px;flex-direction:column;gap:8px;width:100%;max-width:320px;padding:14px 16px;display:flex}.host-exit-stat-row{align-items:center;gap:10px;display:flex}.host-exit-stat-label{width:70px;color:var(--pc);text-transform:uppercase;letter-spacing:.08em;flex-shrink:0;font-size:.78rem;font-weight:700}.host-exit-stat-bar{background:rgb(var(--bp-fg-rgb) / .094);border-radius:4px;flex:1;height:8px;overflow:hidden}.host-exit-stat-fill{background:var(--pc);border-radius:4px;width:0%;height:100%;transition:width .4s}.host-exit-stat-pct{text-align:right;width:44px;color:var(--pc);flex-shrink:0;font-size:.78rem;font-weight:700}#host-exit-overlay{background:rgb(var(--bp-ov-rgb) / .82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:120;justify-content:center;align-items:center;animation:.18s ease-out pause-overlay-in;display:flex;position:fixed;inset:0}#host-exit-overlay .pause-card{gap:16px}#host-exit-overlay .menu-start-btn,#host-exit-overlay .pause-btn-secondary{width:100%}.host-exit-msg{color:rgb(var(--bp-fg-rgb) / .8);text-align:center;margin:0;font-size:1rem}.host-exit-stat-portrait{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px}.char-grid{grid-template-columns:repeat(4,168px);justify-content:center;gap:14px;width:100%;max-width:100%;display:grid}.char-grid .player-card{justify-content:flex-start;min-height:360px}.char-grid .vs-divider{grid-column:1/-1;width:auto;margin:0;display:none}.char-grid[data-mode=team] .vs-divider{opacity:1;margin:4px 0;animation:1.8s ease-in-out .5s infinite vs-pulse;display:block;transform:scale(1)rotate(-8deg)}.char-input-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}span.menu-cycle-btn--readonly{cursor:default;pointer-events:none;opacity:.55;color:rgb(var(--bp-fg-rgb) / .6);background:rgb(var(--bp-fg-rgb) / .04);border-color:rgb(var(--bp-fg-rgb) / .094)}.online-join-status{color:rgb(var(--bp-fg-rgb) / .733);text-align:center;margin:0;font-size:.95rem}#loading-overlay{background:linear-gradient(160deg, var(--bp-bg) 0%, var(--bp-bg-2) 100%);z-index:500;flex-direction:column;justify-content:center;align-items:center;gap:max(14px,min(3vh,30px));padding:20px;display:flex;position:fixed;inset:0}.loading-logo{-webkit-user-select:none;user-select:none;filter:drop-shadow(0 4px 12px #00000059);view-transition-name:main-logo;flex-direction:column;align-items:center;font-family:Pacifico,cursive;line-height:.85;display:flex}.loading-logo-battle,.loading-logo-painters{text-shadow:-2px 0 #fff,2px 0 #fff,0 -2px #fff,0 2px #fff,-2px -2px #fff,2px -2px #fff,-2px 2px #fff,2px 2px #fff,0 4px #0000002e}.loading-logo-battle{color:var(--color-brand-red);z-index:2;margin-right:1.5em;font-size:max(1.4rem,min(3.5vw,2.4rem));position:relative;transform:rotate(-7deg)}.loading-logo-painters{color:var(--color-brand-blue);margin-top:-.35em;margin-left:.6em;font-size:max(2.1rem,min(5.2vw,3.6rem));transform:rotate(-3deg)}.loading-portraits{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:max(8px,min(2vmin,14px));max-width:100%;display:flex}.loading-portrait-card{--card-w:clamp(96px, 15vmin, 148px);width:var(--card-w);background:linear-gradient(180deg, rgb(var(--pc-rgb) / .22) 0%, rgb(var(--pc-rgb) / .06) 60%, rgb(var(--bp-fg-rgb) / .031) 100%);border:1px solid rgb(var(--pc-rgb) / .38);border-top:4px solid var(--pc);box-shadow:0 6px 22px rgb(var(--pc-rgb) / .18);animation:1.8s ease-in-out infinite loading-portrait-bob;animation-delay:calc(var(--rank,0) * .15s);border-radius:14px;flex-direction:column;flex-shrink:0;align-items:center;gap:8px;padding:12px 10px 14px;display:flex}.loading-portrait-img{width:calc(var(--card-w) - 20px);height:calc(var(--card-w) - 20px);aspect-ratio:1;object-fit:cover;border:2px solid var(--pc);box-shadow:0 4px 14px rgb(var(--pc-rgb) / .4);border-radius:10px;flex-shrink:0;display:block}.loading-portrait-name{color:var(--pc);letter-spacing:.09em;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:max(.68rem,min(1.8vmin,.88rem));font-weight:800;line-height:1.2;overflow:hidden}.loading-subtitle{color:rgb(var(--bp-fg-rgb) / .65);text-align:center;letter-spacing:.03em;font-size:max(.78rem,min(2vmin,1rem));font-weight:600}.loading-portrait-status{letter-spacing:.06em;text-transform:uppercase;text-align:center;border-radius:20px;padding:2px 8px;font-size:max(.58rem,min(1.5vmin,.72rem));font-weight:800;line-height:1.5;transition:background .2s,color .2s}.loading-portrait-ready{background:var(--color-success-bg2);color:var(--color-success)}.loading-portrait-waiting{background:rgb(var(--bp-fg-rgb) / var(--opacity-subtle));color:rgb(var(--bp-fg-rgb) / var(--opacity-muted))}.loading-portrait-latency{font-variant-numeric:tabular-nums;letter-spacing:.04em;text-align:center;color:rgb(var(--bp-fg-rgb) / .45);font-size:max(.62rem,min(1.6vmin,.78rem));font-weight:700;line-height:1}.loading-portrait-latency[data-quality=good]{color:var(--color-brand-green)}.loading-portrait-latency[data-quality=ok]{color:#ff9800}.loading-portrait-latency[data-quality=poor]{color:#f44336}@keyframes loading-portrait-bob{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-6px)scale(1.04)}}.loading-dots{align-items:center;gap:10px;display:flex}.loading-dot{background:var(--bp-accent);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite loading-dot-pulse}.loading-dot:nth-child(2){animation-delay:.2s}.loading-dot:nth-child(3){animation-delay:.4s}@keyframes loading-dot-pulse{0%,80%,to{opacity:.45;transform:scale(.65)}40%{opacity:1;transform:scale(1)}}@media (max-height:440px){.loading-logo{display:none}.loading-portrait-card{--card-w:clamp(72px, 11vmin, 96px);border-top-width:3px;border-radius:10px;gap:5px;padding:8px 6px 10px}.loading-portrait-name,.loading-portrait-latency,.loading-portrait-status,.loading-subtitle{display:none}#loading-overlay{gap:10px}}@media (prefers-reduced-motion:reduce){.loading-portrait-card,.loading-portrait-img{animation:none}.loading-dot{animation-duration:2s}}:root[data-contrast=high] #loading-overlay{background:var(--bp-bg)}:root[data-contrast=high] .loading-logo{filter:none}:root[data-theme=light][data-contrast=high] .loading-logo-battle,:root[data-theme=light][data-contrast=high] .loading-logo-painters{text-shadow:-2px 0 #000,2px 0 #000,0 -2px #000,0 2px #000,-2px -2px #000,2px -2px #000,-2px 2px #000,2px 2px #000}:root[data-contrast=high] .loading-portrait-card{border:2px solid var(--pc);box-shadow:none;background:0 0;border-top-width:4px}:root[data-contrast=high] .loading-portrait-img{box-shadow:none}:root[data-contrast=high] .loading-subtitle,:root[data-contrast=high] .loading-portrait-latency{color:var(--bp-text);opacity:1}:root[data-contrast=high] .loading-portrait-latency[data-quality=good]{color:var(--color-success)}:root[data-contrast=high] .loading-portrait-latency[data-quality=ok]{color:var(--color-warning)}:root[data-contrast=high] .loading-portrait-latency[data-quality=poor]{color:var(--color-error)}.results-card{flex-direction:column;align-items:stretch;gap:18px;width:min(560px,100vw - 32px);min-width:0;padding:32px max(14px,min(5vw,40px)) 26px;display:flex;overflow-x:hidden}.results-title{color:var(--bp-text);text-align:center;letter-spacing:.04em;margin:0 0 4px;font-size:2.1rem;font-weight:900}.results-title-team-1{color:var(--bp-accent)}.results-title-team-2{color:var(--color-brand-green)}.player-spotlight{background:linear-gradient(135deg, rgb(var(--pc-rgb) / .32), rgb(var(--pc-rgb) / .08));border:2px solid rgb(var(--pc-rgb) / .6);box-shadow:0 0 28px rgb(var(--pc-rgb) / .28);border-radius:14px;align-items:center;gap:18px;padding:18px 20px;display:flex}.spotlight-portrait{object-fit:cover;border:3px solid var(--pc);border-radius:12px;flex-shrink:0;width:96px;height:96px}.spotlight-info{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.spotlight-name{color:var(--pc);letter-spacing:.08em;font-size:1.25rem;font-weight:800}.spotlight-stats{align-items:baseline;gap:12px;display:flex}.spotlight-pct{color:var(--bp-text);font-size:1.6rem;font-weight:900}.spotlight-wins{color:var(--pc);opacity:.85;font-size:.9rem}.results-ranks{flex-direction:column;gap:6px;display:flex}.coverage-bar{background:rgb(var(--bp-fg-rgb) / .063);border-radius:5px;flex:1;height:10px;overflow:hidden}.coverage-fill{background:var(--pc);width:0%;height:100%;box-shadow:0 0 8px rgb(var(--pc-rgb) / .6);border-radius:5px;transition:width .7s cubic-bezier(.22,1,.36,1)}.sparkline-line{fill:none;stroke:var(--pc);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.win-pips{gap:6px;margin-left:auto;display:flex}.pip{background:rgb(var(--bp-fg-rgb) / .078);border:1px solid rgb(var(--bp-fg-rgb) / .157);border-radius:50%;width:12px;height:12px}.pip.pip-on{background:var(--pc);border-color:var(--pc);box-shadow:0 0 8px rgb(var(--pc-rgb) / .7)}.team-arena{align-items:center;gap:12px;display:flex}.team-block{background:rgb(var(--bp-fg-rgb) / .031);border:1px solid rgb(var(--bp-fg-rgb) / .094);border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:10px;padding:16px 12px;transition:border-color .3s,box-shadow .3s;display:flex}.team-block.team-winner{border-color:var(--color-warning);box-shadow:0 0 28px rgb(var(--color-warning-rgb) / .32);background:rgb(var(--color-warning-rgb) / .05)}.team-label{letter-spacing:.12em;text-transform:uppercase;color:var(--bp-text);opacity:.7;font-size:.95rem;font-weight:800}.team-block.team-winner .team-label{color:var(--color-warning);opacity:1}.team-players{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.team-player{flex-direction:column;align-items:center;gap:4px;display:flex}.team-portrait{object-fit:cover;border:2px solid var(--pc);border-radius:8px;width:56px;height:56px}.team-player-pct{color:var(--pc);font-size:.78rem;font-weight:700}.team-total{color:var(--bp-text);font-size:1.6rem;font-weight:900}.team-vs{color:var(--color-brand-red);text-shadow:-2px 0 #fff,2px 0 #fff,0 -2px #fff,0 2px #fff,-2px -2px #fff,2px -2px #fff,-2px 2px #fff,2px 2px #fff,0 4px #0000004d;flex-shrink:0;font-family:Pacifico,cursive;font-size:2.4rem;line-height:1;transform:rotate(-8deg)}.results-stats{flex-direction:column;gap:14px;margin-top:4px;display:flex}.stats-block{background:rgb(var(--bp-fg-rgb) / .024);border:1px solid rgb(var(--bp-fg-rgb) / .071);border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.stats-section-title{letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--bp-fg-rgb) / .502);font-size:.7rem;font-weight:800}.coverage-graph{width:100%;height:100px;display:block}.stats-items-list{flex-direction:column;gap:6px;display:flex}.stats-items-row{border-left:3px solid var(--pc);background:rgb(var(--pc-rgb) / .1);border-radius:6px;align-items:center;gap:10px;padding:4px 8px;display:flex}.stats-items-label{color:var(--pc);min-width:32px;font-size:.9rem;font-weight:800}.stats-items-chips{flex-wrap:wrap;flex:1;gap:6px;display:flex}.stats-item-chip{padding:3px 8px;font-size:.85rem}.stats-items-empty{opacity:.5;font-size:.85rem;font-style:italic}.results-content-row,.results-players-col{flex-direction:column;gap:18px;display:flex}#results-overlay .menu-start-btn{width:100%;padding:12px 40px;font-size:1.05rem}#results-overlay .pause-btn-secondary{width:100%}:root[data-contrast=high] .results-title-team-2{color:var(--color-success)}:root[data-contrast=high] .player-spotlight{border:2px solid var(--pc);box-shadow:none;background:0 0}:root[data-contrast=high] .spotlight-wins,:root[data-contrast=high] .team-label,:root[data-contrast=high] .stats-items-empty{opacity:1}:root[data-contrast=high] .stats-section-title{color:var(--bp-text)}:root[data-contrast=high] .stats-block{border:2px solid var(--bp-text);background:0 0}:root[data-contrast=high] .stats-items-row{background:rgb(var(--pc-rgb) / .32);border-left-width:4px}:root[data-contrast=high] .coverage-bar{background:rgb(var(--bp-fg-rgb) / .4)}:root[data-contrast=high] .coverage-fill{box-shadow:none}:root[data-contrast=high] .pip{border:2px solid var(--bp-text);background:0 0}:root[data-contrast=high] .pip.pip-on{background:var(--pc);border-color:var(--bp-text);box-shadow:none}:root[data-contrast=high] .team-block{border:2px solid var(--bp-text);background:0 0}:root[data-contrast=high] .team-block.team-winner{border-color:var(--color-warning);box-shadow:none;background:0 0}:root[data-theme=light][data-contrast=high] .team-vs{text-shadow:-2px 0 #000,2px 0 #000,0 -2px #000,0 2px #000,-2px -2px #000,2px -2px #000,-2px 2px #000,2px 2px #000}:root[data-contrast=high] .coverage-graph>line{stroke:rgb(var(--bp-fg-rgb) / .4)}:root[data-contrast=high] .coverage-graph>text{fill:var(--bp-text)}:root[data-contrast=high] .sparkline-line{stroke-width:3px}:root[data-contrast=high] .spotlight-portrait{box-shadow:none}