@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-ext-wght-normal-DdQaqQDo.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-wght-normal-Bc-8i84L.woff2)format("woff2-variations");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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");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:Bebas Neue;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bebas-neue-latin-ext-400-normal-DWiEslNC.woff2)format("woff2"),url(/assets/bebas-neue-latin-ext-400-normal-HFKRJXnW.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bebas Neue;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bebas-neue-latin-400-normal-9mHNbWWO.woff2)format("woff2"),url(/assets/bebas-neue-latin-400-normal-Bi-ndsyu.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}img{max-width:100%;display:block}button,input{font:inherit;color:inherit}}@layer theme{:root,[data-theme=neon]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-body:"Outfit Variable", system-ui, sans-serif;--font-display:"Outfit Variable", system-ui, sans-serif;--display-weight:900;--display-tracking:-.02em;--bg:#0b0614;--bg-glow-1:#ff2d95;--bg-glow-2:#00e5ff;--surface:#170f26;--surface-2:#231738;--line:#3a2a57;--text:#f6f0ff;--muted:#a99bc4;--accent:#ff2d95;--accent-2:#00e5ff;--on-accent:#12001f;--good:#2bff88;--bad:#ff4d5e;--opt-1:#ff2d95;--opt-2:#00c2ff;--opt-3:#ffd400;--opt-4:#7c4dff;--radius:18px;--glow:0 0 24px color-mix(in oklab, var(--accent) 55%, transparent)}[data-theme=studio]{--font-body:"Outfit Variable", system-ui, sans-serif;--font-display:"Bebas Neue", "Outfit Variable", sans-serif;--display-weight:400;--display-tracking:.03em;--bg:#070b1a;--bg-glow-1:#f5b700;--bg-glow-2:#2448ff;--surface:#0f1630;--surface-2:#17204a;--line:#2a3770;--text:#fdf8ec;--muted:#9aa5cf;--accent:#f5b700;--accent-2:#4f7bff;--on-accent:#1a1200;--good:#3ddc84;--bad:#ff5a4f;--opt-1:#e63946;--opt-2:#2f6bff;--opt-3:#f5b700;--opt-4:#21b573;--radius:10px;--glow:0 0 28px color-mix(in oklab, var(--accent) 45%, transparent)}[data-theme=arcade]{--font-body:"Space Grotesk Variable", system-ui, sans-serif;--font-display:"Space Grotesk Variable", system-ui, sans-serif;--display-weight:700;--display-tracking:-.03em;--bg:#050505;--bg-glow-1:#c6ff00;--bg-glow-2:#ff6b00;--surface:#111;--surface-2:#1b1b1b;--line:#2e2e2e;--text:#f2f2f2;--muted:#9a9a9a;--accent:#c6ff00;--accent-2:#ff6b00;--on-accent:#0b0b0b;--good:#c6ff00;--bad:#ff3b3b;--opt-1:#ff6b00;--opt-2:#00d1ff;--opt-3:#c6ff00;--opt-4:#ff3df2;--radius:4px;--glow:0 0 0 3px var(--accent)}}@layer base{html{accent-color:var(--accent);-webkit-tap-highlight-color:transparent}body{min-height:100dvh;font-family:var(--font-body);color:var(--text);background:radial-gradient(60rem 40rem at 10% -10%, color-mix(in oklab, var(--bg-glow-1) 22%, transparent), transparent 60%), radial-gradient(50rem 40rem at 110% 110%, color-mix(in oklab, var(--bg-glow-2) 18%, transparent), transparent 60%), var(--bg);background-attachment:fixed;line-height:1.4}h1,h2,.display{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);text-wrap:balance;line-height:1.05}:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}}@layer components{.app{min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;display:flex}.main{flex-direction:column;flex:1;gap:20px;width:100%;max-width:880px;margin-inline:auto;padding:12px 16px 32px;display:flex}.topbar{flex-wrap:wrap;align-items:center;gap:8px;width:100%;max-width:880px;margin-inline:auto;padding:12px 16px;display:flex}.brand{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);align-items:center;gap:8px;margin-right:auto;font-size:1.35rem;display:flex}.brand-dot{background:conic-gradient(var(--accent), var(--accent-2), var(--accent));width:14px;height:14px;box-shadow:var(--glow);border-radius:50%}.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:600}.chip[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.chip-group{gap:4px;display:inline-flex}.btn{border-radius:var(--radius);background:var(--surface-2);border:none;border:1px solid var(--line);min-height:52px;padding:14px 22px;font-size:1.05rem;font-weight:800;transition:transform .12s,box-shadow .2s}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary{background:linear-gradient(135deg, var(--accent), color-mix(in oklab, var(--accent) 60%, var(--accent-2)));color:var(--on-accent);box-shadow:var(--glow);border:none}.btn-big{width:100%;min-height:72px;padding:20px 32px;font-size:clamp(1.2rem,1rem + 1.5vw,1.7rem)}.btn-ghost{background:0 0}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.btn-row>.btn{flex:200px}.card{background:color-mix(in oklab, var(--surface) 88%, transparent);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);flex-direction:column;gap:14px;padding:18px;display:flex}.card h2{font-size:1.4rem}.hint{color:var(--muted);text-wrap:pretty;font-size:.92rem}.warning{border-left:4px solid var(--accent-2);background:color-mix(in oklab, var(--accent-2) 12%, transparent);border-radius:6px;padding:10px 12px;font-size:.92rem}.error{border-left:4px solid var(--bad);background:color-mix(in oklab, var(--bad) 14%, transparent);text-wrap:pretty;border-radius:6px;padding:10px 12px;font-size:.95rem}.success{color:var(--good);font-weight:700}.segmented{flex-wrap:wrap;gap:8px;display:flex}.segmented button{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-2);flex:1 1 0;min-width:72px;min-height:48px;padding:8px 12px;font-weight:700}.segmented button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:var(--glow)}.field{flex-direction:column;gap:8px;display:flex}.field-label{justify-content:space-between;gap:8px;font-weight:700;display:flex}.text-input{border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);width:100%;min-height:48px;padding:10px 14px}.number-input{width:88px}.inline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline>.text-input{flex:200px;width:auto}.inline>.number-input{flex:0 0 88px}input[type=range]{width:100%}.playlist-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;max-height:420px;padding:2px;display:grid;overflow-y:auto}.playlist{text-align:left;background:var(--surface-2);border-radius:var(--radius);border:2px solid #0000;flex-direction:column;gap:6px;padding:8px;display:flex}.playlist[aria-pressed=true]{border-color:var(--accent);box-shadow:var(--glow)}.playlist img,.playlist .ph{aspect-ratio:1;object-fit:cover;border-radius:calc(var(--radius) - 4px);background:var(--line);width:100%}.playlist-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.92rem;font-weight:700;display:-webkit-box;overflow:hidden}.playlist-meta{color:var(--muted);font-size:.8rem}.players{flex-direction:column;gap:8px;display:flex}.player-row{gap:8px;display:flex}.icon-btn{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-2);width:48px;min-height:48px;font-size:1.2rem}.devices{flex-direction:column;gap:8px;display:flex}.device{text-align:left;border-radius:var(--radius);background:var(--surface-2);border:2px solid #0000;justify-content:space-between;align-items:center;gap:8px;min-height:52px;padding:12px 14px;display:flex}.device[aria-pressed=true]{border-color:var(--accent)}.sticky-start{background:linear-gradient(transparent, var(--bg) 40%);flex-direction:column;gap:8px;margin-inline:-16px;padding:24px 16px 12px;display:flex;position:sticky;bottom:0}.sticky-start .btn:disabled{opacity:1;background:var(--surface-2);color:var(--muted);box-shadow:none}.hero{text-align:center;flex-direction:column;align-items:center;gap:18px;padding:6dvh 0 2dvh;display:flex}.hero h1{background:linear-gradient(90deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(2.6rem,1.5rem + 6vw,5.2rem)}.hero p{color:var(--muted);font-size:1.15rem}.hero .subtitle{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-2);margin-top:-10px;font-size:clamp(1.1rem,.9rem + 1vw,1.6rem)}.vinyl{aspect-ratio:1;background:radial-gradient(circle, var(--accent) 0 14%, var(--bg) 14% 16%, transparent 16%), repeating-radial-gradient(circle, #151515 0 2px, #222 2px 4px);width:min(42vw,200px);box-shadow:var(--glow);border-radius:50%;animation:6s linear infinite spin}code{background:var(--surface-2);word-break:break-all;border-radius:4px;padding:2px 6px;font-size:.85em}.game-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.round-label{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);color:var(--muted);font-size:1.3rem}.turn{text-align:center;font-size:clamp(1.8rem,1.2rem + 3vw,3rem)}.question{text-align:center;color:var(--muted);font-size:clamp(1.3rem,1rem + 1.5vw,1.9rem)}.stage{place-items:center;gap:12px;padding:8px 0;display:grid}.timer{width:clamp(120px,22dvh,210px);box-shadow:0 0 40px color-mix(in oklab, var(--accent) 25%, transparent);aspect-ratio:1;border-radius:50%;place-items:center;display:grid;position:relative}.timer svg{position:absolute;inset:0;transform:rotate(-90deg)}.timer-track{stroke:var(--surface-2)}.timer-bar{stroke:var(--accent);transition:stroke .3s}.timer[data-phase=answering] .timer-bar{stroke:var(--accent-2)}.timer[data-urgent=true] .timer-bar{stroke:var(--bad)}.timer-num{font-family:var(--font-display);font-weight:var(--display-weight);font-variant-numeric:tabular-nums;font-size:clamp(3rem,2rem + 5vw,4.6rem)}.timer-sub{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;font-weight:700;position:absolute;bottom:22%}.eq{align-items:flex-end;gap:5px;height:28px;display:flex}.eq span{background:var(--accent);border-radius:3px;width:6px;animation:.9s ease-in-out infinite eq}.eq span:nth-child(2){background:var(--accent-2);animation-delay:-.3s}.eq span:nth-child(3){animation-delay:-.6s}.eq span:nth-child(4){background:var(--accent-2);animation-delay:-.15s}.eq span:nth-child(5){animation-delay:-.45s}.eq[data-paused=true] span{opacity:.4;animation-play-state:paused}.options{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=520px){.options{gap:8px}}.option{--c:var(--opt-1);border-radius:var(--radius);border:2px solid color-mix(in oklab, var(--c) 70%, transparent);background:linear-gradient(135deg, color-mix(in oklab, var(--c) 30%, var(--surface)), var(--surface));text-align:left;text-wrap:balance;min-height:84px;padding:14px 18px 14px 58px;font-size:clamp(1.05rem,.95rem + .6vw,1.35rem);font-weight:800;transition:transform .15s,opacity .3s,box-shadow .2s;position:relative}.option:nth-child(2){--c:var(--opt-2)}.option:nth-child(3){--c:var(--opt-3)}.option:nth-child(4){--c:var(--opt-4)}.option:before{content:attr(data-key);background:var(--c);color:#000;text-transform:uppercase;border-radius:50%;place-items:center;width:32px;height:32px;font-size:1rem;display:grid;position:absolute;top:50%;left:14px;translate:0 -50%}.option:hover:not(:disabled){box-shadow:0 0 22px color-mix(in oklab, var(--c) 50%, transparent)}.option:active:not(:disabled){transform:scale(.97)}.option:disabled{opacity:1;cursor:default}.options[data-revealed=true] .option{opacity:.35}.options[data-revealed=true] .option[data-state=correct]{opacity:1;border-color:var(--good);box-shadow:0 0 26px color-mix(in oklab, var(--good) 55%, transparent);animation:.45s pop}.options[data-revealed=true] .option[data-state=wrong]{opacity:1;border-color:var(--bad);animation:.4s shake}.options[data-locked=true] .option{pointer-events:none}.reveal{grid-template-columns:minmax(120px,220px) 1fr;align-items:center;gap:18px;animation:.5s rise;display:grid}@media (width<=520px){.reveal{text-align:center;grid-template-columns:1fr;justify-items:center}}.cover{aspect-ratio:1;border-radius:var(--radius);object-fit:cover;width:100%;max-width:220px;animation:.6s flip;box-shadow:0 18px 50px #000a}.reveal h2{font-size:clamp(1.8rem,1.2rem + 2.5vw,2.8rem)}.reveal .artist{font-size:1.3rem;font-weight:700}.reveal .meta{color:var(--muted)}.verdict{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--display-tracking);text-align:center;font-size:clamp(1.8rem,1.3rem + 2vw,2.6rem);animation:.45s pop}.verdict[data-correct=true]{color:var(--good)}.verdict[data-correct=false]{color:var(--bad)}.verdict small{font-family:var(--font-body);color:var(--muted);letter-spacing:0;font-size:1rem;font-weight:600;display:block}.scoreboard{flex-direction:column;gap:6px;display:flex}.score-row{border-radius:var(--radius);background:var(--surface-2);grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:10px 14px;font-weight:700;display:grid}.score-row[data-active=true]{outline:2px solid var(--accent)}.score-rank{color:var(--muted)}.score-points{font-variant-numeric:tabular-nums;font-family:var(--font-display);font-weight:var(--display-weight);font-size:1.25rem}.delta{color:var(--good);margin-left:6px;font-size:.85rem;animation:.5s rise}.podium{text-align:center;grid-template-columns:repeat(3,1fr);align-items:end;gap:10px;display:grid}.podium-step{border-radius:var(--radius) var(--radius) 0 0;background:linear-gradient(var(--surface-2), var(--surface));border:1px solid var(--line);flex-direction:column;gap:4px;padding:12px 6px;animation:.6s both rise;display:flex}.podium-step[data-place="1"]{border-color:var(--accent);min-height:190px;box-shadow:var(--glow);order:2;animation-delay:.4s}.podium-step[data-place="2"]{order:1;min-height:150px;animation-delay:.2s}.podium-step[data-place="3"]{order:3;min-height:120px}.podium-place{font-family:var(--font-display);font-weight:var(--display-weight);color:var(--accent);font-size:2.2rem}.podium-name{overflow-wrap:anywhere;font-weight:800}.center{text-align:center}.big-title{text-align:center;font-size:clamp(2.2rem,1.4rem + 4vw,4rem)}.spinner{border:3px solid var(--line);border-top-color:var(--accent);vertical-align:middle;border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin;display:inline-block}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes eq{0%,to{height:20%}50%{height:100%}}@keyframes pop{0%{transform:scale(.85)}60%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}@keyframes flip{0%{opacity:0;transform:perspective(600px)rotateY(90deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=520px){@layer components{.main{gap:14px}.topbar{padding-block:8px}}}
