:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-s:10px;--radius-m:16px;--radius-l:24px;--radius-full:999px;--touch:44px;--touch-primary:56px;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", sans-serif;--font-display:var(--font-body);--text-s:14px;--text-m:16px;--text-l:20px;--text-xl:28px;--text-xxl:36px;--ease-spring:cubic-bezier(.2, .8, .2, 1.2);--ease-out:cubic-bezier(.2, .8, .2, 1);--dur-fast:.12s;--dur-m:.24s;--dur-slow:.4s;--player-0:#ff4d6d;--player-1:#ff9f1c;--player-2:#ffd60a;--player-3:#70e000;--player-4:#00c2a8;--player-5:#00b4ff;--player-6:#4361ee;--player-7:#9d4edd;--player-8:#f15bb5;--player-9:#a47148;--player-10:#8d99ae;--player-11:#f8f9fa;--player-ink-light:#fff;--player-ink-dark:#14121f}:root,[data-theme=nazar]{--bg:#142273;--bg-glow-1:#5b7bff55;--bg-glow-2:#ff8fb83a;--bg-glow-3:#ffd84a26;--surface:#1c2d8a;--surface-2:#26399f;--border:#ffffff24;--text:#f4f6ff;--text-muted:#bcc6f2;--accent:#ffd84a;--accent-2:#ff8fb8;--accent-ink:#1a1600;--success:#7ee08a;--danger:#ff8a8a;--warning:#ffb347;--shadow:0 8px 24px #0006, 0 0 0 1px #ffffff0d;--shadow-accent:0 6px 22px #ffd84a40;--overlay:#142273cc;--player-6:#9aa8ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=cizgi]{--bg:#fff4d6;--bg-glow-1:#ff5a4a33;--bg-glow-2:#3a7bff2e;--bg-glow-3:#ffd23f40;--surface:#fff;--surface-2:#ffeab0;--border:#1a1a1a55;--text:#1a1a1a;--text-muted:#57503f;--accent:#d02815;--accent-2:#1f5fd6;--accent-ink:#fff;--success:#1f8a3b;--danger:#c41d10;--warning:#9a6200;--shadow:4px 4px 0 #1a1a1a;--shadow-accent:4px 4px 0 #1a1a1a;--overlay:#fff4d6e6;--font-display:"Trebuchet MS", "Segoe UI", system-ui, sans-serif;--player-2:#d9a300;--player-11:#a3a0b4;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=cuha]{--bg:#0f3b2c;--bg-glow-1:#3fbf8a40;--bg-glow-2:#e9c46a2e;--bg-glow-3:#e76f5126;--surface:#145039;--surface-2:#1b6347;--border:#f5efe024;--text:#f7f1e3;--text-muted:#bcd4c3;--accent:#e9c46a;--accent-2:#f08a6c;--accent-ink:#2a1d00;--success:#a7e08f;--danger:#ffa093;--warning:#ffd27a;--shadow:0 8px 24px #0006, 0 0 0 1px #ffffff0d;--shadow-accent:0 6px 22px #e9c46a40;--overlay:#0f3b2ccc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=gunbatimi]{--bg:#1f1035;--bg-glow-1:#ff7a4a40;--bg-glow-2:#ff4fa03a;--bg-glow-3:#7a5cff30;--surface:#2c1849;--surface-2:#3a2160;--border:#ffe6f224;--text:#fff1f6;--text-muted:#d6bfdc;--accent:#ffa24c;--accent-2:#ff6fb0;--accent-ink:#2a1000;--success:#8fe3a0;--danger:#ff7a8a;--warning:#ffd36b;--shadow:0 8px 24px #0006, 0 0 0 1px #ffffff0d;--shadow-accent:0 6px 22px #ffa24c40;--overlay:#1f1035cc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=fosfor]{--bg:#06120a;--bg-glow-1:#39ff7a2a;--bg-glow-2:#ffb0001c;--bg-glow-3:#39ff7a18;--surface:#0c1f12;--surface-2:#122b19;--border:#7dff9e2e;--text:#d8ffe0;--text-muted:#86c896;--accent:#46f07f;--accent-2:#ffb000;--accent-ink:#02130a;--success:#46f07f;--danger:#ff6b5e;--warning:#ffb000;--shadow:0 8px 24px #0006, 0 0 0 1px #ffffff0d;--shadow-accent:0 6px 22px #46f07f40;--overlay:#06120acc;--font-display:ui-monospace, "Cascadia Mono", Consolas, "Courier New", monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=buz]{--bg:#eaf3fb;--bg-glow-1:#3d7bff2e;--bg-glow-2:#ff4a5a26;--bg-glow-3:#9fd3ff40;--surface:#fff;--surface-2:#dcebf8;--border:#0f223624;--text:#0f2236;--text-muted:#4a5f74;--accent:#d62839;--accent-2:#1f4fbf;--accent-ink:#fff;--success:#1d7a46;--danger:#b3121f;--warning:#9a5a00;--shadow:0 6px 18px #0f22361f;--shadow-accent:0 6px 22px #d6283940;--overlay:#eaf3fbe6;--player-2:#d9a300;--player-11:#a3a0b4;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=seker]{--bg:#fdeef6;--bg-glow-1:#b06cff30;--bg-glow-2:#ff6fae30;--bg-glow-3:#ffd1e840;--surface:#fff;--surface-2:#f8dcec;--border:#3d1d4f26;--text:#341845;--text-muted:#6c5079;--accent:#7a35e0;--accent-2:#d63a85;--accent-ink:#fff;--success:#2f7d3a;--danger:#b3261e;--warning:#8f5a00;--shadow:0 6px 18px #0f22361f;--shadow-accent:0 6px 22px #7a35e040;--overlay:#fdeef6e6;--player-2:#d9a300;--player-11:#a3a0b4;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=lunapark]{--bg:#14171f;--bg-glow-1:#ffcc0030;--bg-glow-2:#ff4d6d2e;--bg-glow-3:#4dd2ff20;--surface:#1e2330;--surface-2:#282f40;--border:#fff6d824;--text:#f8f4ea;--text-muted:#b3bccd;--accent:#fc0;--accent-2:#ff5c7a;--accent-ink:#1a1400;--success:#7ee08a;--danger:#ff7070;--warning:#ffb347;--shadow:0 8px 24px #0006, 0 0 0 1px #ffffff0d;--shadow-accent:0 6px 22px #ffcc0040;--overlay:#14171fcc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=grafit]{--bg:#111214;--bg-glow-1:#ff5a3626;--bg-glow-2:#ffffff14;--bg-glow-3:#ff5a3614;--surface:#1c1d21;--surface-2:#27292e;--border:#ffffff1f;--text:#f4f4f5;--text-muted:#a9abb3;--accent:#f4f4f5;--accent-2:#ff6a45;--accent-ink:#111214;--success:#7fdc8f;--danger:#ff7a6a;--warning:#ffc163;--shadow:0 8px 24px #0006, 0 0 0 1px #ffffff0d;--shadow-accent:0 6px 22px #f4f4f540;--overlay:#111214cc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=bahar]{--bg:#eef7e4;--bg-glow-1:#7cc24a33;--bg-glow-2:#f9b8002e;--bg-glow-3:#ffffff60;--surface:#fff;--surface-2:#ddeecd;--border:#1b2e1226;--text:#162a0e;--text-muted:#4a6140;--accent:#2f7a2f;--accent-2:#b57d00;--accent-ink:#fff;--success:#2f7a2f;--danger:#b3261e;--warning:#8f5f00;--shadow:0 6px 18px #0f22361f;--shadow-accent:0 6px 22px #2f7a2f40;--overlay:#eef7e4e6;--player-2:#d9a300;--player-11:#a3a0b4;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=gece]{--bg:#0b0d14;--bg-glow-1:#22d3ee1f;--bg-glow-2:#3b82f614;--bg-glow-3:#22d3ee0f;--surface:#131724;--surface-2:#1c2132;--border:#ffffff1a;--text:#eaf0fa;--text-muted:#9aa6bd;--accent:#22d3ee;--accent-2:#7aa2ff;--accent-ink:#04141a;--success:#6ee7a8;--danger:#ff8a8a;--warning:#fbbf5c;--shadow:0 8px 24px #00000080, 0 0 0 1px #ffffff0a;--shadow-accent:0 6px 22px #22d3ee33;--overlay:#0b0d14cc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=zifiri]{--bg:#000;--bg-glow-1:#ffb00014;--bg-glow-2:#ffffff0a;--bg-glow-3:#ffb0000d;--surface:#0a0a0a;--surface-2:#161616;--border:#ffffff26;--text:#f5f1e8;--text-muted:#a8a294;--accent:#ffb000;--accent-2:#ffc94d;--accent-ink:#1a1000;--success:#7fe08a;--danger:#ff8070;--warning:#ffc163;--shadow:0 8px 24px #000c, 0 0 0 1px #ffffff14;--shadow-accent:0 6px 22px #ffb00033;--overlay:#000000d9;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.gh-btn{appearance:none;min-height:var(--touch);min-width:var(--touch);padding:0 var(--space-4);border-radius:var(--radius-full);font:600 var(--text-m) / 1 var(--font-body);color:var(--text);background:var(--surface-2);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);transition:transform var(--dur-fast) var(--ease-spring), opacity var(--dur-fast), box-shadow var(--dur-m) var(--ease-out), background-color var(--dur-m);-webkit-tap-highlight-color:transparent;isolation:isolate;border:0;display:inline-flex;position:relative;overflow:hidden}.gh-btn:not(:disabled):active{transition-duration:0s, var(--dur-fast), var(--dur-m), var(--dur-m);transform:scale(.94)}.gh-btn:before{content:"";z-index:-1;border-radius:inherit;background:radial-gradient(circle at 50% 50%, color-mix(in srgb, currentColor 28%, transparent) 0%, transparent 62%);opacity:0;pointer-events:none;position:absolute;inset:0;transform:scale(.2)}.gh-btn:not(:disabled):active:before{animation:gh-ripple .52s var(--ease-out) both}@keyframes gh-ripple{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(1.7)}}.gh-btn:disabled{opacity:.5;cursor:default}.gh-btn:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}.gh-btn--primary{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-accent)}.gh-btn--primary:after{content:"";z-index:-1;background:linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--accent-ink) 14%, transparent) 50%, transparent 70%);pointer-events:none;position:absolute;inset:0;transform:translate(-120%)}@media (hover:hover){.gh-btn:not(:disabled):not(.gh-btn--primary):hover{box-shadow:0 6px 16px color-mix(in srgb, var(--accent) 18%, transparent);background-color:color-mix(in srgb, var(--accent) 10%, var(--surface-2));transform:translateY(-1px)}.gh-btn--ghost:not(:disabled):hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));background-color:color-mix(in srgb, var(--accent) 8%, transparent)}.gh-btn:not(:disabled):not(.gh-btn--primary):active{transform:translateY(0)scale(.95)}.gh-btn--primary:not(:disabled):hover{box-shadow:var(--shadow-accent), 0 10px 26px color-mix(in srgb, var(--accent) 28%, transparent);transform:translateY(-2px)}.gh-btn--primary:not(:disabled):hover:after{transition:transform .7s var(--ease-out);transform:translate(120%)}.gh-btn--primary:not(:disabled):active{transform:translateY(0)scale(.95)}.gh-card--lift:hover{box-shadow:var(--shadow), 0 12px 28px color-mix(in srgb, var(--accent) 16%, transparent);border-color:color-mix(in srgb, var(--accent) 45%, var(--border));transform:translateY(-3px)}}.gh-btn--ghost{border:1px solid var(--border);background:0 0}.gh-btn--big{min-height:var(--touch-primary);padding:0 var(--space-5);font-size:var(--text-l)}.gh-btn--block{width:100%}.gh-card{transition:transform var(--dur-m) var(--ease-spring), box-shadow var(--dur-m) var(--ease-out), border-color var(--dur-m);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow);padding:var(--space-4)}.gh-avatar{--size:40px;width:var(--size);height:var(--size);border-radius:var(--radius-full);font:700 calc(var(--size) * .42) / 1 var(--font-display);box-shadow:inset 0 0 0 1px var(--border);transition:transform var(--dur-m) var(--ease-spring), opacity var(--dur-m);animation:gh-pop var(--dur-slow) var(--ease-spring);flex:none;place-items:center;display:inline-grid;position:relative}.gh-avatar.gh-avatar--still{animation:none}.gh-avatar--away{opacity:.4;filter:grayscale()}.gh-avatar__crown{color:var(--warning);top:calc(var(--size) * -.32);font-size:calc(var(--size) * .4);line-height:1;display:grid;position:absolute}.gh-avatar__badge{width:calc(var(--size) * .36);height:calc(var(--size) * .36);border-radius:var(--radius-full);background:var(--surface);border:2px solid var(--bg);font-size:calc(var(--size) * .22);place-items:center;display:grid;position:absolute;bottom:-2px;right:-2px}.gh-sheet-backdrop{background:var(--overlay);z-index:50;animation:gh-fade var(--dur-m) var(--ease-out);position:fixed;inset:0}.gh-sheet{z-index:51;background:var(--surface);border-radius:var(--radius-l) var(--radius-l) 0 0;max-height:85vh;box-shadow:var(--shadow);padding:var(--space-5) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));animation:gh-rise var(--dur-slow) var(--ease-spring);position:fixed;bottom:0;left:0;right:0;overflow:auto}@media (min-width:720px){.gh-sheet{left:auto;right:var(--space-4);top:calc(var(--space-7) + env(safe-area-inset-top));border-radius:var(--radius-l);width:380px;bottom:auto}}.gh-sheet__title{margin:0 0 var(--space-4);overflow-wrap:anywhere;font:700 var(--text-l) / 1.2 var(--font-display)}.gh-toast{left:50%;bottom:calc(var(--space-5) + env(safe-area-inset-bottom));z-index:80;background:var(--text);max-width:min(92vw,420px);color:var(--bg);border-radius:var(--radius-m);padding:var(--space-3) var(--space-4);font:500 var(--text-m) / 1.35 var(--font-body);box-shadow:var(--shadow);animation:gh-toast var(--dur-slow) var(--ease-spring);position:fixed;transform:translate(-50%)}.gh-swap{display:inline-grid}.gh-swap__item{justify-content:center;align-items:center;gap:var(--space-2);grid-area:1/1;display:inline-flex}.gh-swap__item--off{visibility:hidden}.gh-countdown{--cd-size:clamp(120px, 34vw, 240px);width:var(--cd-size);height:var(--cd-size);font:800 var(--text-xxl) / 1 var(--font-display);font-variant-numeric:tabular-nums;color:var(--text);place-items:center;display:inline-grid;position:relative}.gh-countdown__svg{grid-area:1/1;width:100%;height:100%;display:block;overflow:visible}.gh-countdown__ring{transform-box:view-box;transform-origin:50%;transform:rotate(-90deg)}.gh-countdown__track,.gh-countdown__arc{fill:none;stroke-width:5px;stroke-linecap:round}.gh-countdown__track{stroke:var(--border)}.gh-countdown__arc{stroke:var(--accent);stroke-dasharray:100;stroke-dashoffset:0;animation:1s linear both gh-ring}.gh-countdown__svg .gh-countdown__num{font:800 52px / 1 var(--font-display);font-variant-numeric:tabular-nums;fill:currentColor;transform-box:view-box;transform-origin:50%;filter:drop-shadow(0 2px 5px color-mix(in srgb, var(--accent) 22%, transparent));animation:gh-count-pop var(--dur-slow) var(--ease-spring) both}.gh-countdown__svg .gh-countdown__num--long{font-size:36px}.gh-countdown--urgent .gh-countdown__arc{stroke:var(--accent-2)}.gh-countdown--urgent .gh-countdown__num{color:var(--accent-2);animation:gh-count-pop var(--dur-slow) var(--ease-spring) both, gh-count-pulse 1s ease-in-out var(--dur-slow) infinite}.gh-countdown--s{--cd-size:auto;width:auto;height:auto;display:inline-block}.gh-countdown--s .gh-countdown__num{animation:none;display:block}@keyframes gh-count-pop{0%{opacity:0;transform:scale(1.4)}60%{opacity:1}}@keyframes gh-count-pulse{50%{transform:scale(1.06)}}@keyframes gh-ring{to{stroke-dashoffset:100px}}.gh-score{font-variant-numeric:tabular-nums}.gh-confetti{pointer-events:none;z-index:5;position:fixed;inset:0;overflow:hidden}.gh-confetti__piece{top:-4vh;left:var(--x);width:calc(9px * var(--s));height:calc(15px * var(--s));background:var(--c);opacity:0;animation:gh-confetti-fall var(--dur) cubic-bezier(.3, .1, .5, 1) var(--delay) 1 both;border-radius:2px;position:absolute}@keyframes gh-confetti-fall{0%{opacity:1;transform:translate(0,0)rotate(0)}85%{opacity:1}to{opacity:0;transform:translate3d(var(--drift), 108vh, 0) rotate(var(--spin))}}.gh-secret{width:100%;min-height:180px;padding:var(--space-5);border:2px dashed var(--text-muted);border-radius:var(--radius-l);background:var(--surface-2);color:var(--text);font:inherit;text-align:center;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;cursor:pointer;place-items:center;display:grid}.gh-secret:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}.gh-secret--open{border-style:solid;border-color:var(--accent);background:var(--surface)}.gh-secret__label{color:var(--text-muted);font-size:var(--text-m)}.gh-secret__body{gap:var(--space-2);font-size:var(--text-l);flex-direction:column;display:flex}@keyframes gh-pop{0%{opacity:0;transform:scale(.4)}}@keyframes gh-fade{0%{opacity:0}}@keyframes gh-rise{0%{opacity:0;transform:translateY(56px)scale(.96)}}@keyframes gh-toast{0%{opacity:0;transform:translate(-50%,36px)scale(.9)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.gh-countdown__num,.gh-countdown__arc,.gh-confetti__piece{animation:none!important}.gh-confetti{display:none}.gh-btn:hover,.gh-btn:active,.gh-card--lift:hover{transform:none!important}.gh-btn--primary:after,.gh-btn:before{display:none}}[data-reduce-motion=true] *,[data-reduce-motion=true] :before,[data-reduce-motion=true] :after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}[data-reduce-motion=true] .gh-countdown__num,[data-reduce-motion=true] .gh-countdown__arc,[data-reduce-motion=true] .gh-confetti__piece{animation:none!important}[data-reduce-motion=true] .gh-confetti{display:none}[data-reduce-motion=true] .gh-btn:hover,[data-reduce-motion=true] .gh-btn:active,[data-reduce-motion=true] .gh-card--lift:hover{transform:none!important}[data-reduce-motion=true] .gh-btn--primary:after,[data-reduce-motion=true] .gh-btn:before{display:none}[data-reduce-motion=true] .gh-countdown__svg .gh-countdown__num{filter:none}.gh-timebar{align-self:stretch;align-items:center;gap:var(--space-2);flex:none;width:100%;height:20px;display:flex}.gh-timebar__track{border-radius:var(--radius-full);background:var(--surface-2);flex:1;height:10px;overflow:hidden}.gh-timebar__fill{border-radius:var(--radius-full);background:var(--accent-2);transform-origin:0;will-change:transform;width:100%;height:100%}.gh-timebar__num{text-align:right;width:2.5ch;font:800 var(--text-m) / 1 var(--font-display);font-variant-numeric:tabular-nums;color:var(--danger);flex:none}.gh-timebar[data-idle=true] .gh-timebar__track{opacity:.35}.gh-timebar[data-panic=true] .gh-timebar__fill{background:var(--danger)}.gh-timebar[data-panic=true] .gh-timebar__track{animation:.5s ease-in-out infinite gh-timebar-shake}.gh-timebar[data-panic=true] .gh-timebar__num{animation:1s ease-in-out infinite gh-timebar-pulse}@keyframes gh-timebar-shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}@keyframes gh-timebar-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.gh-judge{pointer-events:none}.gh-judge--overlay{z-index:40;justify-content:center;height:0;display:flex;position:fixed;top:28%;left:0;right:0}.gh-judge--slot{width:100%;height:calc(var(--text-xxl) * 1.05 + var(--text-l) + 4px);flex:none;align-self:stretch;position:relative}.gh-judge--slot .gh-judge__pop{justify-content:center;animation-name:gh-judge-pop-slot;position:absolute;inset:0}.gh-judge__pop{text-align:center;animation:gh-judge-pop .9s var(--ease-spring,ease-out) both;text-shadow:0 2px 14px color-mix(in srgb, var(--bg,#000) 70%, transparent);flex-direction:column;align-items:center;gap:2px;display:flex}.gh-judge__text{font:800 var(--text-xxl) / 1.05 var(--font-display)}.gh-judge__bonus{font:800 var(--text-l) / 1 var(--font-display);font-variant-numeric:tabular-nums}.gh-judge__pop--perfect{color:var(--success)}.gh-judge__pop--great{color:var(--accent)}.gh-judge__pop--good{color:var(--text)}.gh-judge__pop--miss{color:var(--danger)}@keyframes gh-judge-pop{0%{opacity:0;transform:scale(.5)translateY(10px)}18%{opacity:1;transform:scale(1.15)translateY(0)}32%{transform:scale(1)}75%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(1)translateY(-18px)}}@keyframes gh-judge-pop-slot{0%{opacity:0;transform:scale(.5)translateY(6px)}18%{opacity:1;transform:scale(1.1)translateY(0)}32%{transform:scale(1)}75%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(1)translateY(-4px)}}.gh-scorepop-layer{z-index:45;pointer-events:none;position:fixed;inset:0;overflow:hidden}.gh-scorepop{font:800 var(--text-xl) / 1 var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;text-shadow:0 2px 10px color-mix(in srgb, var(--bg,#000) 75%, transparent);animation:gh-scorepop .7s var(--ease-out,ease-out) both;position:absolute;translate:-50% -50%}.gh-scorepop--plus{color:var(--success)}.gh-scorepop--minus{color:var(--danger)}.gh-scorepop--zero{color:var(--text-muted)}@keyframes gh-scorepop{0%{opacity:0;transform:translateY(6px)scale(.7)}15%{opacity:1;transform:translateY(-4px)scale(1.12)}70%{opacity:1}to{opacity:0;transform:translateY(-46px)scale(1)}}.gh-press{touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .14s var(--ease-spring,ease-out)}.gh-press:not([data-disabled=true]):active{animation:gh-press-ring .32s var(--ease-out,ease-out) both;transition-duration:0s;transform:scale(.94)}@keyframes gh-press-ring{0%{outline:3px solid color-mix(in srgb, currentColor 40%, transparent);outline-offset:0}to{outline-offset:9px;outline:3px solid #0000}}.gh-readout{justify-content:center;align-items:baseline;gap:var(--space-1);border-radius:var(--radius-full);background:var(--surface-2);font:700 var(--text-m) / 1.3 var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;box-sizing:content-box;padding:2px 10px;display:inline-flex}.gh-readout__label{font-size:var(--text-s);color:var(--text-muted);font-weight:600}.gh-readout__value[data-bump=true]{animation:gh-readout-bump .26s var(--ease-spring,ease-out)}.gh-readout[data-tone=good] .gh-readout__value{color:var(--success)}.gh-readout[data-tone=bad] .gh-readout__value{color:var(--danger)}@keyframes gh-readout-bump{0%{transform:scale(1.3)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.gh-timebar[data-panic=true] .gh-timebar__track,.gh-timebar[data-panic=true] .gh-timebar__num,.gh-judge__pop,.gh-scorepop,.gh-press:not([data-disabled=true]):active,.gh-readout__value[data-bump=true]{animation:none!important}.gh-press:not([data-disabled=true]):active{transform:none!important}}[data-reduce-motion=true] .gh-timebar[data-panic=true] .gh-timebar__track,[data-reduce-motion=true] .gh-timebar[data-panic=true] .gh-timebar__num,[data-reduce-motion=true] .gh-judge__pop,[data-reduce-motion=true] .gh-scorepop,[data-reduce-motion=true] .gh-press:not([data-disabled=true]):active,[data-reduce-motion=true] .gh-readout__value[data-bump=true]{animation:none!important}[data-reduce-motion=true] .gh-press:not([data-disabled=true]):active{transform:none!important}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);font:400 var(--text-m) / 1.45 var(--font-body);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;margin:0}button,[role=button],a,img,svg{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body{overscroll-behavior-y:none;background:0 0}h1{font:800 var(--text-xl) / 1.15 var(--font-display);margin:0 0 var(--space-3);letter-spacing:-.01em}h2{font:700 var(--text-l) / 1.2 var(--font-display);margin:0 0 var(--space-2)}p{margin:0 0 var(--space-3)}input,select,textarea{font:inherit;font-size:max(16px, var(--text-m));color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-m);min-height:var(--touch);padding:0 var(--space-3);width:100%}input:focus-visible{outline:3px solid var(--accent-2);outline-offset:1px}input[aria-invalid=true]{border-color:var(--danger)}.muted{color:var(--text-muted)}.center{text-align:center}.grow{flex:1}.stack{gap:var(--space-3);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.error-text{color:var(--danger);font-size:var(--text-s);margin:0}.bg{z-index:-1;pointer-events:none;position:fixed;inset:0}.bg__dots{background:radial-gradient(color-mix(in srgb, var(--text) 10%, transparent) 1px, transparent 1.7px) 0 0 / 28px 28px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 50% 45%,#000 20%,#0000 85%);mask-image:radial-gradient(at 50% 45%,#000 20%,#0000 85%)}.bg__blob{will-change:transform;border-radius:50%;width:84vmax;height:84vmax;position:absolute;translate:-50% -50%}.bg__blob--1{background:radial-gradient(closest-side, var(--bg-glow-1) 0%, transparent 52%), radial-gradient(closest-side, var(--bg-glow-1), transparent 100%);animation:28s ease-in-out infinite alternate bg-drift-a;top:34%;left:26%}.bg__blob--2{background:radial-gradient(closest-side, var(--bg-glow-2) 0%, transparent 52%), radial-gradient(closest-side, var(--bg-glow-2), transparent 100%);animation:36s ease-in-out infinite alternate bg-drift-b;top:62%;left:76%}.bg__blob--3{background:radial-gradient(closest-side, var(--bg-glow-3,var(--bg-glow-1)) 0%, transparent 52%), radial-gradient(closest-side, var(--bg-glow-3,var(--bg-glow-1)), transparent 100%);animation:22s ease-in-out infinite alternate bg-drift-c;top:22%;left:60%}.room:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(34vmax 34vmax at 26% 34%, var(--bg-glow-1), transparent 100%), radial-gradient(34vmax 34vmax at 76% 62%, var(--bg-glow-2), transparent 100%), radial-gradient(30vmax 30vmax at 60% 22%, var(--bg-glow-3,var(--bg-glow-1)), transparent 100%);animation:26s ease-in-out infinite alternate bg-drift;position:fixed;inset:-20vmax}@media (prefers-reduced-motion:reduce),(pointer:coarse){.bg__blob,.room:before{will-change:auto;animation:none}}[data-reduce-motion=true] .bg__blob,[data-reduce-motion=true] .room:before{will-change:auto;animation:none}@keyframes bg-drift{to{transform:translate(4vmax,-3vmax)rotate(8deg)}}@keyframes bg-drift-a{to{transform:translate(10vmax,7vmax)scale(1.14)}}@keyframes bg-drift-b{to{transform:translate(-11vmax,-8vmax)scale(.9)}}@keyframes bg-drift-c{to{transform:translate(-7vmax,10vmax)scale(1.12)}}.topbar{z-index:20;justify-content:space-between;align-items:center;gap:var(--space-2);padding:calc(var(--space-2) + env(safe-area-inset-top)) calc(var(--space-3) + env(safe-area-inset-right)) var(--space-2) calc(var(--space-3) + env(safe-area-inset-left));display:flex;position:sticky;top:0}.topbar:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(color-mix(in srgb, var(--bg) 85%, transparent), transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:absolute;inset:0 0 -12px;-webkit-mask-image:linear-gradient(#000 55%,#0000);mask-image:linear-gradient(#000 55%,#0000)}.topbar__right{align-items:center;gap:var(--space-2);min-width:0;display:flex}.logo{all:unset;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;align-items:center;gap:var(--space-2);cursor:pointer;min-height:var(--touch);display:flex}.logo__mark{background:conic-gradient(from 200deg, var(--accent), var(--accent-2), var(--accent));width:28px;height:28px;box-shadow:var(--shadow-accent);border-radius:9px;animation:8s linear infinite logo-spin}@keyframes logo-spin{to{transform:rotate(360deg)}}.logo__text{font:800 var(--text-l) / 1 var(--font-display)}.party-strip{all:unset;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:var(--radius-full);background:var(--surface);border:1px solid var(--border);cursor:pointer;scrollbar-width:none;align-items:center;gap:2px;max-width:62vw;min-height:36px;padding:4px;display:flex;overflow-x:auto}.party-strip:focus-visible{outline:3px solid var(--accent-2)}.party-strip__plus{border-radius:var(--radius-full);background:var(--accent);width:34px;height:34px;color:var(--accent-ink);flex:none;place-items:center;display:grid}.dot{border-radius:var(--radius-full);flex:none;width:10px;height:10px}.dot--ok{background:var(--success)}.dot--warn{background:var(--warning);animation:1s ease-in-out infinite alternate pulse}.dot--bad{background:var(--danger)}@keyframes pulse{to{opacity:.35}}.screen{padding:var(--space-3) calc(var(--space-4) + env(safe-area-inset-right)) calc(var(--space-7) + env(safe-area-inset-bottom)) calc(var(--space-4) + env(safe-area-inset-left));max-width:1100px;animation:screen-in var(--dur-m) var(--ease-out);margin:0 auto}.screen--center{text-align:center;flex-direction:column;justify-content:center;align-items:stretch;max-width:480px;min-height:80vh;display:flex}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}}.welcome__hero{margin-bottom:var(--space-4);place-items:center;display:grid}.welcome form{text-align:left}.field{gap:var(--space-1);flex-direction:column;font-weight:600;display:flex}.color-grid{gap:var(--space-1);flex-wrap:wrap;display:flex}.color-dot{appearance:none;width:var(--touch);height:var(--touch);border-radius:var(--radius-full);cursor:pointer;min-height:0;transition:transform var(--dur-fast) var(--ease-spring), border-color var(--dur-fast);background-clip:content-box;border:2px solid #0000;flex:none;padding:3px}.color-dot--on{border-color:var(--text);transform:scale(1.08)}.search{align-items:center;gap:var(--space-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-full);padding:0 var(--space-3);color:var(--text-muted);display:flex}.search input{background:0 0;border:0;padding:0}.tabs{gap:var(--space-2);padding:var(--space-3) 0;scrollbar-width:none;display:flex;overflow-x:auto}.tab{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-full);min-height:var(--touch);padding:0 var(--space-4);font:600 var(--text-s) / 1 var(--font-body);white-space:nowrap;cursor:pointer}.tab--on{background:var(--accent);color:var(--accent-ink);border-color:#0000}.grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-auto-rows:1fr;display:grid}@media (min-width:720px){.grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.game-card{appearance:none;text-align:left;gap:var(--space-1);min-width:0;padding:var(--space-4);border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text);cursor:pointer;transition:transform var(--dur-m) var(--ease-spring);flex-direction:column;display:flex}.game-card:active{transform:scale(.97)}@media (hover:hover){.game-card{transition:transform var(--dur-m) var(--ease-spring), box-shadow var(--dur-m) var(--ease-out)}.game-card:hover{box-shadow:var(--shadow), 0 12px 28px color-mix(in srgb, var(--accent) 18%, transparent);transform:translateY(-4px)}.game-card:active{transform:scale(.97)}}.game-card__icon{border-radius:var(--radius-m);background:var(--surface-2);width:48px;height:48px;color:var(--accent);flex:none;place-items:center;display:grid}.game-card__title{font:700 var(--text-m) / 1.2 var(--font-display);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.game-card__short{font-size:var(--text-s);color:var(--text-muted);-webkit-line-clamp:var(--short-lines,2);line-clamp:var(--short-lines,2);min-height:calc(var(--short-lines,2) * 1.4em);-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.game-card__badges{margin-top:var(--space-1);flex-wrap:wrap;gap:4px;display:flex}.game-card .game-card__badges{height:20px;margin-top:auto;overflow:hidden}.badge{border-radius:var(--radius-full);background:var(--surface-2);color:var(--text-muted);padding:2px 8px;font-size:12px;line-height:16px}.badge--tag{box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent);background:0 0}.empty{text-align:center;padding:var(--space-7) var(--space-4)}.empty__art{justify-content:center;gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.empty__art span{border-radius:var(--radius-full);background:var(--accent);width:18px;height:18px;animation:hop .9s var(--ease-spring) infinite alternate}.empty__art span:nth-child(2){background:var(--accent-2);animation-delay:.15s}.empty__art span:nth-child(3){background:var(--warning);animation-delay:.3s}@keyframes hop{to{transform:translateY(-14px)}}.toggle{min-height:var(--touch);justify-content:space-between;align-items:center;font-weight:600;display:flex}.toggle input{width:48px;min-height:28px;accent-color:var(--accent)}.themes{border:1px solid var(--border);border-radius:var(--radius-m);padding:var(--space-3);gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.themes legend{padding:0 var(--space-1)}.theme-chip{font-family:var(--font-display);box-shadow:var(--shadow);transition:transform var(--dur-fast) var(--ease-spring), border-color var(--dur-fast);align-items:center;gap:var(--space-2);min-height:var(--touch);padding:0 var(--space-3);border-radius:var(--radius-m);background:var(--bg);color:var(--text);cursor:pointer;border:2px solid #0000;display:flex}.theme-chip input{width:auto;min-height:0}.theme-chip--on{border-color:var(--accent)}@media (hover:hover){.theme-chip:hover{transform:translateY(-2px)}}.theme-chip:active{transform:scale(.97)}.theme-chip__swatch{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--accent), var(--accent-2));flex:none;width:22px;height:22px}.system{z-index:90;padding:var(--space-4);background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:gh-fade var(--dur-m) var(--ease-out);place-items:center;display:grid;position:fixed;inset:0}.system__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);width:min(100%,420px);box-shadow:var(--shadow);padding:var(--space-6) var(--space-5);gap:var(--space-3);text-align:center;flex-direction:column;align-items:center;display:flex}.system__card .gh-btn{width:100%}.wake-art{color:var(--accent-2);animation:3s ease-in-out infinite alternate float}@keyframes float{to{transform:translateY(-10px)rotate(-8deg)}}.spinner{border-radius:var(--radius-full);border:4px solid var(--surface-2);border-top-color:var(--accent);width:40px;height:40px;animation:.8s linear infinite logo-spin}.banner{top:calc(56px + env(safe-area-inset-top));z-index:40;align-items:center;gap:var(--space-2);background:var(--warning);color:#1a1400;border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);font-size:var(--text-s);max-width:92vw;font-weight:600;display:flex;position:fixed;left:50%;transform:translate(-50%)}.banner-inline{background:color-mix(in srgb, var(--warning) 25%, transparent);border-radius:var(--radius-m);padding:var(--space-2) var(--space-3);font-size:var(--text-s)}.divider{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-s);display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.code-input{text-transform:uppercase;letter-spacing:.3em;text-align:center;font-weight:800}.invite{align-items:center;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-l);background:var(--surface-2);flex-direction:column;display:flex}.invite__code{font:800 var(--text-xxl) / 1 var(--font-display);letter-spacing:.18em}.invite__url{color:var(--text-muted);word-break:break-all;-webkit-user-select:all;user-select:all;font-size:12px}.members{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.member{align-items:center;gap:var(--space-3);min-height:52px;display:flex}.member__name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.member__status{font-size:var(--text-s)}.detail,.lobby{gap:var(--space-4);flex-direction:column;display:flex}.link-back{align-self:flex-start;align-items:center;gap:var(--space-2);min-height:var(--touch);color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;display:inline-flex}.detail__head{gap:var(--space-4);align-items:center;display:flex}.screen.detail{max-width:860px}.detail__head .game-card__icon{width:64px;height:64px}.detail__head{min-width:0}.detail__head h1{margin:0 0 var(--space-1);font-family:var(--font-display);font-size:var(--text-xl)}.detail__head p{margin:0 0 var(--space-2)}.howto{gap:var(--space-2);flex-direction:column;margin:0;padding-left:1.3em;display:flex}.detail__actions{margin-top:var(--space-1)}.why{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.why li:before{content:"★";margin-right:var(--space-2);color:var(--accent)}.guide h3{margin:var(--space-3) 0 var(--space-2);font-size:var(--text-m)}.faq{border-top:1px solid var(--border);padding:var(--space-2) 0}.faq summary{min-height:var(--touch);cursor:pointer;align-items:center;font-weight:600;display:flex}.faq p{margin:0 0 var(--space-2);color:var(--text-muted)}.setting{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--touch);display:flex}.setting--wide{flex-direction:column;align-items:stretch}.stepper{align-items:center;gap:var(--space-2);display:flex}.stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:4.5em;font-weight:700}.choice{gap:var(--space-2);flex-wrap:wrap;display:flex}.lobby__players{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(76px,1fr));margin:0;padding:0;list-style:none;display:grid}.lobby__players li{align-items:center;gap:var(--space-1);min-width:0;font-size:var(--text-s);text-align:center;overflow-wrap:anywhere;flex-direction:column;display:flex}.room{z-index:20;isolation:isolate;background:var(--bg);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);animation:screen-in var(--dur-m) var(--ease-out);flex-direction:column;display:flex;position:fixed;inset:0}.room__bar{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);min-height:52px;display:flex}.room__title{font-family:var(--font-display);font-size:var(--text-l);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.room__stage{flex:1;position:relative;overflow:auto}.room__stage>.center{padding:var(--space-6) var(--space-4)}.cover{z-index:30;justify-content:center;align-items:center;gap:var(--space-4);background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-direction:column;display:flex;position:absolute;inset:0}.cover__title{font-family:var(--font-display);font-size:var(--text-xl);margin:0}.room__end{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:var(--surface);display:flex}.seats{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.seats li{align-items:center;gap:var(--space-2);display:flex}.seats input{min-width:0;min-height:var(--touch);padding:0 var(--space-3);border-radius:var(--radius-s);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:var(--text-m);flex:1}.reactions{z-index:35;pointer-events:none;position:fixed;inset:0;overflow:hidden}.reaction{color:var(--accent);filter:drop-shadow(0 2px 6px #0006);flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute}.reaction__who{border-radius:var(--radius-full);background:var(--surface);color:var(--text);white-space:nowrap;padding:0 6px;font-size:12px}.reaction--rise{animation:reaction-rise 2.5s var(--ease-out) forwards;bottom:-60px}.reaction--targeted{animation:2.5s linear forwards reaction-fly;top:0;left:0}.reaction--targeted .reaction__who{position:absolute;top:100%;left:50%;translate:-50%}.reaction--tomato{color:#e63946}.reaction--heart{color:#ff4d8d}.reaction--clap,.reaction--laugh{color:#ffb703}.reaction--shock{color:var(--accent-2)}.reaction--poke{color:var(--text)}@keyframes reaction-rise{to{opacity:0;transform:translateY(-70vh)}}@keyframes reaction-fly{0%{opacity:0;animation-timing-function:cubic-bezier(.2,.7,.3,1);transform:translate(calc(50vw - 50%),100vh)scale(.6)rotate(-200deg)}8%{opacity:1}30%{transform:translate(calc(var(--to-x) - 50%), calc(var(--to-y) - 50%)) scale(1) rotate(0deg)}36%{transform:translate(calc(var(--to-x) - 50%), calc(var(--to-y) - 50%)) scale(1.5, .6)}80%{opacity:1}to{transform:translate(calc(var(--to-x) - 50%), calc(var(--to-y) - 50%)) scale(1.5, .6);opacity:0}}.member-dot{display:inline-flex;position:relative}.splat{mix-blend-mode:multiply;pointer-events:none;background:radial-gradient(circle at 42% 38%,#ff8a8a 0 18%,#e63946 19% 58%,#e6394600 60%),#e63946cc;border-radius:50%;animation:1.75s ease-out .75s both splat;position:absolute;inset:-3px}@keyframes splat{0%{opacity:0;transform:scale(.2)}10%{opacity:1;transform:scale(1.25)}20%{transform:scale(1)}75%{opacity:.9}to{opacity:0}}.reaction-bar{gap:var(--space-1);flex-wrap:wrap;display:flex}.reaction-btn{min-width:var(--touch);min-height:var(--touch)}.shake{animation:.25s ease-in-out .75s 3 shake;display:inline-flex}@keyframes shake{25%{transform:translate(-4px)rotate(-6deg)}75%{transform:translate(4px)rotate(6deg)}}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.room__reactions{padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--border);justify-content:center;display:flex}.member .reaction-bar{flex-wrap:nowrap}.secret-curtain{z-index:1000;background:var(--bg);opacity:0;pointer-events:none;position:fixed;inset:0}.sp{gap:var(--space-4);flex-direction:column;display:flex}.sp__bar{justify-content:space-between;align-items:center;display:flex}.sp__intro h1{font-family:var(--font-display);margin:0}.sp__countdown{place-items:center;min-height:50vh;display:grid}.sp__result{text-align:center}.sp__score{margin:var(--space-5) 0 0;font:800 72px / 1 var(--font-display);color:var(--accent);font-variant-numeric:tabular-nums}.race-pick,.race-shuffle{gap:var(--space-2);flex-wrap:wrap;align-items:end;display:flex}.field--inline input{width:5em}.race-shuffle{--hint-h:1.25rem}.race-shuffle .field--inline{padding-bottom:var(--hint-h);position:relative}.field__hint{white-space:nowrap;line-height:var(--hint-h);color:var(--danger);visibility:hidden;font-size:.875rem;font-weight:400;position:absolute;bottom:0;left:0}.field__hint[data-visible=true]{visibility:visible}.race-shuffle>button{margin-bottom:var(--hint-h)}.race-board__actions{margin-top:var(--space-3)}.race-board__wait{margin-top:var(--space-3);text-align:center}.race-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.race-list__item,.race-scores li,.race-total{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-m);background:var(--surface-2);display:flex}.race-list__n,.race-rank{font-variant-numeric:tabular-nums;min-width:2ch;font-weight:800}.badge--double{background:var(--accent);color:var(--bg);font-weight:800}.race__bar{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.race-intro,.race-wait,.race-final{text-align:center;align-items:center}.race-intro{padding-top:var(--space-5)}.race-intro h1,.race-board h1,.race-final h1{font-family:var(--font-display);margin:0}.race-intro__how{max-width:32ch}.race-intro__bar{border-radius:var(--radius-full);background:var(--surface-2);width:min(16rem,80%);height:6px;overflow:hidden}.race-intro__bar span{background:var(--accent);transform-origin:0;height:100%;animation:linear both race-bar;display:block}@keyframes race-bar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.race-banner{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);background:var(--accent);color:#fff;font:800 1.6rem / 1.2 var(--font-display);letter-spacing:.02em;margin:0;animation:.6s ease-out both race-pop}.race-banner--sudden{color:#fff;background:#d7263d}@keyframes race-pop{0%{opacity:0;transform:scale(.6)}}.race-wait__title{font:700 var(--text-l) / 1.2 var(--font-display)}.race-dots{justify-content:center;gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.race-dots li{opacity:.45;transition:opacity .3s}.race-dots li.is-done{opacity:1}.race-scores,.race-totals{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.race-num{font-variant-numeric:tabular-nums;font-weight:800}.race-label{opacity:.8}.race-up{color:#2bb673;font-weight:700}.race-down{color:#d7263d;font-weight:700}.race-total{animation:.8s ease-out both race-shift}@keyframes race-shift{0%{transform:translateY(calc(var(--rank-shift,0) * 100%))}}[data-reduce-motion=true] .game-card:hover,[data-reduce-motion=true] .screen,[data-reduce-motion=true] .room{animation:none;transform:none}[data-reduce-motion=true] .race-total,[data-reduce-motion=true] .race-banner{animation:none}.podium{justify-content:center;align-items:end;gap:var(--space-2);margin:0;padding:0;list-style:none;display:flex}.podium__step{align-items:center;gap:var(--space-1);flex-direction:column;min-width:6.5rem;display:flex}.podium__step--1{order:2}.podium__step--2{order:1}.podium__step--3{order:3}.podium__rank{border-radius:var(--radius-m) var(--radius-m) 0 0;background:var(--surface-2);width:100%;font:800 var(--text-l) / 1 var(--font-display);padding-top:var(--space-2)}.podium__step--1 .podium__rank{background:var(--accent);height:6rem;color:var(--bg)}.podium__step--2 .podium__rank{height:4.5rem}.podium__step--3 .podium__rank{height:3rem}.podium__name{font-weight:700}.race-board h1 .badge{margin-left:var(--space-2);vertical-align:middle}.sudden{--accent:#e0263d;--accent-2:#ff8a3d;border-radius:var(--radius-l);background:radial-gradient(circle at 50% 40%,#e0263d2e,#0000 70%)}.race[data-sudden=true] .race__bar{color:#ff6b7d}.guides{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.guides__head{justify-content:space-between;align-items:baseline;display:flex}.guides__head h2,.guides__title,.catalog__title{font:700 var(--text-l) / 1.2 var(--font-display);margin:0}.link-more{min-height:var(--touch);color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:600}.catalog__title{margin:0 0 var(--space-3)}.guides__row{gap:var(--space-3);scroll-snap-type:x mandatory;margin:-10px calc(-1 * var(--space-4));padding:10px var(--space-4) 18px;display:flex;overflow-x:auto}.guides__row .guide-card{scroll-snap-align:start;flex:0 0 200px}.guide-card{--short-lines:3;appearance:none;text-align:left;gap:var(--space-1);min-width:0;padding:var(--space-4);border-radius:var(--radius-l);background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;transition:transform var(--dur-m) var(--ease-spring);flex-direction:column;display:flex}.guide-card .game-card__title{white-space:normal;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:2.4em;display:-webkit-box}.guide-card:active{transform:scale(.97)}.picks{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pick{appearance:none;text-align:left;gap:var(--space-1);width:100%;padding:var(--space-3);border-radius:var(--radius-m);background:var(--surface-2);border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;flex-direction:column;display:flex}.pick .badge{background:var(--surface)}.pick__why{font-size:var(--text-s);color:var(--text-muted)}.set-list,.set-items{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.set-item{align-items:center;gap:var(--space-2);display:flex}.set-item__body{appearance:none;min-width:0;min-height:var(--touch);padding:var(--space-2) var(--space-3);border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--border);color:var(--text);font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;flex-direction:column;flex:1;align-items:flex-start;gap:2px;display:flex}.set-code{width:100%;font-family:ui-monospace,monospace;font-size:var(--text-s);word-break:break-all}@keyframes gh-enter{0%{opacity:0;transform:translateY(14px)scale(.97)}}@keyframes gh-title-sweep{to{background-position:-200% 0}}@keyframes gh-breathe{0%,to{opacity:.12}50%{opacity:.7}}.enter,:is(.detail,.lobby)>.gh-card,.members>li,.set-list>li,.set-items>li,.lobby__players>li{animation:gh-enter var(--dur-slow) var(--ease-spring) backwards;animation-delay:calc(var(--i,0) * 40ms)}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:first-child{--i:0}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(2){--i:1}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(3){--i:2}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(4){--i:3}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(5){--i:4}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(6){--i:5}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(7){--i:6}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(8){--i:7}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(9){--i:8}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(10){--i:9}:is(.detail,.lobby,.members,.set-list,.set-items,.lobby__players)>:nth-child(n+11){--i:10}@media (min-width:720px){.guides{padding:var(--space-4);margin-bottom:var(--space-6);border-radius:var(--radius-l);border:1px solid var(--border);background:color-mix(in srgb, var(--surface-2) 60%, transparent);gap:var(--space-3)}.guides__row{gap:var(--space-4);scroll-snap-type:none;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-auto-rows:1fr;margin:0;padding:0;display:grid;overflow:visible}.guide-card{--short-lines:2}.guide-card .game-card__title{white-space:nowrap;min-height:0;display:block}.guides__row .guide-card{flex:none}}.guide-card,.pick,.set-item__body,.tab,.link-more,.link-back,.member,.setting,.toggle,.faq summary,.lobby__players li,.party-strip,.color-dot,.detail>.gh-card,.lobby>.gh-card{transition:transform var(--dur-m) var(--ease-spring), box-shadow var(--dur-m) var(--ease-out), border-color var(--dur-m), background-color var(--dur-m), color var(--dur-fast)}.game-card{transition:transform var(--dur-m) var(--ease-spring), box-shadow var(--dur-m) var(--ease-out), border-color var(--dur-m);position:relative}.member,.setting,.toggle{padding-inline:var(--space-2);margin-inline:calc(-1 * var(--space-2));border-radius:var(--radius-m)}.member{padding-block:4px}.link-back{padding-right:var(--space-2)}.link-back svg{transition:transform var(--dur-m) var(--ease-spring)}.link-more{position:relative}.link-more:after{content:"";transform-origin:0;height:2px;transition:transform var(--dur-m) var(--ease-out);background:currentColor;border-radius:1px;position:absolute;top:calc(50% + .78em);left:0;right:0;transform:scaleX(0)}.logo__mark,.logo__text{transition:scale var(--dur-m) var(--ease-spring)}.game-card--feature:after{content:"";border-radius:inherit;pointer-events:none;box-shadow:0 0 0 1.5px var(--accent), 0 0 24px color-mix(in srgb, var(--accent) 40%, transparent);opacity:.25;animation:4.4s ease-in-out infinite gh-breathe;position:absolute;inset:-1px}.game-card:active,.guide-card:active,.pick:active,.set-item__body:active,.tab:not(:disabled):active,.link-more:active,.link-back:active,.party-strip:active{transform:scale(.96)}:is(.game-card,.guide-card,.pick,.set-item__body,.tab,.link-back,.link-more,.logo,.color-dot,.faq summary,.party-strip):focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}@media (hover:hover){.game-card:hover,.guide-card:hover,.pick:hover,.set-item__body:hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.game-card:hover{box-shadow:var(--shadow), 0 14px 30px color-mix(in srgb, var(--accent) 22%, transparent);transform:translateY(-5px)}.guide-card:hover,.pick:hover,.set-item__body:hover{box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 20%, transparent);transform:translateY(-3px)}.detail>.gh-card:hover,.lobby>.gh-card:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));box-shadow:var(--shadow), 0 10px 24px color-mix(in srgb, var(--accent) 12%, transparent);transform:translateY(-2px)}.tab:not(.tab--on):not(:disabled):hover{border-color:color-mix(in srgb, var(--accent) 60%, var(--border));box-shadow:0 5px 14px color-mix(in srgb, var(--accent) 16%, transparent);transform:translateY(-2px)}.member:hover,.setting:hover,.toggle:hover{background-color:color-mix(in srgb, var(--accent) 8%, transparent)}.faq summary:hover{color:var(--accent)}.link-back:hover{color:var(--text)}.link-back:hover svg{transform:translate(-4px)}.link-more:hover:after{transform:scaleX(1)}.party-strip:hover{border-color:color-mix(in srgb, var(--accent) 60%, var(--border));box-shadow:0 5px 14px color-mix(in srgb, var(--accent) 18%, transparent);transform:translateY(-1px)}.color-dot:not(.color-dot--on):hover{transform:scale(1.14)}.lobby__players li:hover .gh-avatar{transform:translateY(-4px)scale(1.08)}.logo:hover .logo__mark{scale:1.14}.logo:hover .logo__text{scale:1.04}.game-card:hover .game-card__title,.guide-card:hover .game-card__title,.pick:hover .game-card__title,.set-item__body:hover strong,.logo:hover .logo__text{background-image:linear-gradient(100deg, var(--accent), var(--accent-2), var(--accent));-webkit-text-fill-color:transparent;color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:2.4s linear infinite gh-title-sweep}.game-card:hover:active,.guide-card:hover:active,.pick:hover:active,.set-item__body:hover:active,.party-strip:hover:active{transform:scale(.96)}}@media (prefers-reduced-motion:reduce){.enter,:is(.detail,.lobby)>.gh-card,.members>li,.set-list>li,.set-items>li,.lobby__players>li,.game-card--feature:after,.logo:hover .logo__text,.game-card:hover .game-card__title,.guide-card:hover .game-card__title,.pick:hover .game-card__title,.set-item__body:hover strong{animation:none!important}.game-card--feature:after{opacity:.35}.game-card,.guide-card,.pick,.set-item__body,.tab,.party-strip,.color-dot,.detail>.gh-card,.lobby>.gh-card,.lobby__players li .gh-avatar,.link-back svg{transform:none!important}.logo__mark,.logo__text{scale:none!important}}[data-reduce-motion=true] .enter,[data-reduce-motion=true] :is(.detail,.lobby)>.gh-card,[data-reduce-motion=true] .members>li,[data-reduce-motion=true] .set-list>li,[data-reduce-motion=true] .set-items>li,[data-reduce-motion=true] .lobby__players>li,[data-reduce-motion=true] .game-card--feature:after,[data-reduce-motion=true] .logo:hover .logo__text,[data-reduce-motion=true] .game-card:hover .game-card__title,[data-reduce-motion=true] .guide-card:hover .game-card__title,[data-reduce-motion=true] .pick:hover .game-card__title,[data-reduce-motion=true] .set-item__body:hover strong{animation:none!important}[data-reduce-motion=true] .game-card--feature:after{opacity:.35}[data-reduce-motion=true] .game-card,[data-reduce-motion=true] .guide-card,[data-reduce-motion=true] .pick,[data-reduce-motion=true] .set-item__body,[data-reduce-motion=true] .tab,[data-reduce-motion=true] .party-strip,[data-reduce-motion=true] .color-dot,[data-reduce-motion=true] .detail>.gh-card,[data-reduce-motion=true] .lobby>.gh-card,[data-reduce-motion=true] .lobby__players li .gh-avatar,[data-reduce-motion=true] .link-back svg{transform:none!important}[data-reduce-motion=true] .logo__mark,[data-reduce-motion=true] .logo__text{scale:none!important}
