:root{--ink:#0a0908;--ink-soft:#131110;--panel:#ffffff09;--panel-2:#ffffff0f;--line:#f6c54424;--line-soft:#ffffff14;--gold:#f6c544;--gold-bright:#ffdc6b;--gold-deep:#b07d16;--cream:#f5efe3;--smoke:#a39a8c;--coral:#ff5d56;--good:#5ad6a0;--token:#ffd76b;--r:16px;--r-lg:26px;--r-pill:999px;--shadow-deep:0 24px 60px -18px #000000d9;--glow-gold:0 0 30px -6px #f6c54473;--display:"Anton", "Arial Narrow", sans-serif;--ui:"Hanken Grotesk", system-ui, -apple-system, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0;overflow-x:hidden}body{font-family:var(--ui);color:var(--cream);background-color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background-image:radial-gradient(120% 80% at 50% -10%,#f6c54429 0%,#f6c5440a 28%,#0000 56%),radial-gradient(100% 100% at 50% 120%,#ff5d5612 0%,#0000 50%),linear-gradient(#0c0a09 0%,#070605 100%);background-attachment:fixed}body:after{content:"";z-index:9999;pointer-events:none;opacity:.4;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}#root{justify-content:center;width:100%;display:flex}h1,h2,h3,p{margin:0}button{font-family:var(--ui);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;transition:transform .12s,background .2s,border-color .2s,box-shadow .2s,color .2s}button:active{transform:scale(.96)}input,select{font-family:var(--ui)}::selection{color:var(--cream);background:#f6c5444d}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.container{width:100%;max-width:480px;min-height:100svh;padding:max(20px, env(safe-area-inset-top)) 18px max(20px, env(safe-area-inset-bottom)) 18px;text-align:center;flex-direction:column;align-items:center;margin:0 auto;display:flex;position:relative}.container>h1,.top-ui,.game-box,.back-setup-btn,.sp-banner{z-index:1;position:relative}.ambient-cover{z-index:0;pointer-events:none;filter:blur(64px)saturate(1.7)brightness(.5);opacity:0;background-position:50%;background-size:cover;animation:.9s forwards ambientIn;position:fixed;inset:0;transform:scale(1.25)}.ambient-cover:after{content:"";background:radial-gradient(125% 95% at 50% 32%,#0000 0%,#07060580 62%,#070605eb 100%);position:absolute;inset:0}@keyframes ambientIn{to{opacity:.9}}@media (prefers-reduced-motion:reduce){.ambient-cover{opacity:.9;animation:none}}:root[data-hitstar-theme=classic] .ambient-cover{display:none}h1{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--cream);margin:8px 0 22px;font-size:clamp(2.4rem,12vw,3.4rem);line-height:1;animation:.6s cubic-bezier(.2,.7,.2,1) both rise;position:relative}h1:after{content:"★";font-family:var(--ui);color:var(--gold);vertical-align:super;text-shadow:var(--glow-gold);margin-left:.12em;font-size:.42em}.game-box{background:linear-gradient(180deg, var(--panel) 0%, #ffffff04 100%);border:1px solid var(--line);border-radius:var(--r-lg);width:100%;box-shadow:var(--shadow-deep);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:28px 20px;animation:.6s cubic-bezier(.2,.7,.2,1) 60ms both rise;display:flex}.setup-screen{flex-direction:column;align-items:center;gap:22px;width:100%;display:flex}.setup-group{flex-direction:column;align-items:center;gap:9px;width:100%;display:flex}.setup-group label{color:var(--gold);text-transform:uppercase;letter-spacing:.22em;font-size:.66rem;font-weight:700}.setup-hint{color:var(--smoke);letter-spacing:.06em;text-transform:none;font-weight:500}.music-pick-btn{cursor:pointer;background:linear-gradient(180deg, var(--panel) 0%, #ffffff04 100%);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;align-items:center;gap:4px;width:100%;max-width:320px;padding:12px 16px;transition:border-color .15s;display:flex}.music-pick-btn:hover{border-color:var(--gold)}.music-pick-title{letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-size:.74rem;font-weight:700}.music-pick-sum{color:var(--smoke);text-align:center;font-size:.82rem;line-height:1.3}.mp-box{gap:16px;max-width:360px}.pause-box{text-align:center;align-items:center;gap:6px;max-width:320px}.yt-hidden{opacity:0;pointer-events:none;z-index:-1;width:160px;height:160px;position:fixed;bottom:0;right:0}.corner-toggles{z-index:5;gap:8px;display:flex;position:absolute;top:14px;right:14px}.yt-corner{font:inherit;letter-spacing:.04em;border-radius:var(--r-pill);cursor:pointer;border:1px solid var(--line-soft);color:var(--smoke);background:#00000059;padding:8px 12px;font-size:.74rem;font-weight:700}.yt-corner.on{background:linear-gradient(180deg, var(--gold-bright), var(--gold));color:#1a1205;border-color:var(--gold)}@media (width<=520px){.settings-corner .corner-label{display:none}.settings-corner{padding:8px 11px;font-size:1rem}}.yt-opts{border:1px solid var(--line-soft);border-radius:var(--r);padding:12px}.sp-banner{color:var(--coral);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-bottom:12px;font-size:.82rem;display:flex}.sp-banner-btn{font:inherit;cursor:pointer;border-radius:var(--r-pill);color:var(--cream);border:1px solid var(--line-soft);background:#00000059;padding:5px 10px;font-size:.78rem;font-weight:700;text-decoration:none}.correct-slot-label{color:var(--smoke);text-transform:uppercase;letter-spacing:.18em;margin-bottom:6px;font-size:.62rem;font-weight:700}.correct-slot{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:14px;display:flex}.slot-chip{border-radius:var(--r-pill);color:var(--smoke);border:1px solid var(--line-soft);background:#ffffff0d;padding:4px 11px;font-size:.84rem}.slot-chip.hit{background:linear-gradient(180deg, var(--gold-bright), var(--gold));color:#1a1205;border-color:var(--gold);font-weight:800}.mode-toggle{border-radius:var(--r-pill);border:1px solid var(--line-soft);background:#00000059;gap:4px;width:100%;max-width:320px;padding:5px;display:flex}.mode-toggle button{border-radius:var(--r-pill);color:var(--smoke);letter-spacing:.02em;background:0 0;flex:1;padding:11px 8px;font-size:.9rem;font-weight:700}.mode-toggle button.active{background:linear-gradient(180deg, var(--gold-bright), var(--gold));color:#2a1d00;box-shadow:var(--glow-gold)}.setup-row{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;display:flex}.setup-row .setup-group{flex:1;min-width:84px}.year-inputs{border-radius:var(--r);border:1px solid var(--line-soft);background:#0000004d;align-items:center;gap:6px;padding:8px 16px;display:flex}.year-inputs span{color:var(--smoke);font-size:.85rem}.year-inputs input{color:var(--cream);text-align:center;background:0 0;border:none;outline:none;width:62px;font-size:16px;font-weight:700}select,input[type=number]{border:1px solid var(--line-soft);color:var(--cream);border-radius:var(--r);text-align:center;background:#0000004d;outline:none;width:100%;max-width:130px;padding:11px 12px;font-size:16px;font-weight:600;transition:border-color .2s,box-shadow .2s}select:focus,input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #f6c5442e}.checkbox-group{border-radius:var(--r);border:1px solid var(--line-soft);background:#0000004d;width:auto;padding:11px 20px;flex-direction:row!important;justify-content:center!important;gap:14px!important}.checkbox-group input{width:22px;height:22px;accent-color:var(--gold)}.loading-phase,.error-phase,.guess-phase,.reveal-phase{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.error-phase p{color:var(--smoke);margin-bottom:18px}.top-ui{width:100%;max-width:480px;margin-bottom:14px;animation:.5s both rise}.score-display{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.team-score{background:var(--panel);border-radius:var(--r);border:1px solid var(--line-soft);letter-spacing:.1em;min-width:66px;color:var(--smoke);text-transform:uppercase;flex-direction:column;align-items:center;gap:2px;padding:9px 14px;font-size:.7rem;font-weight:700;transition:all .25s;display:flex}.team-score.active-turn{border-color:var(--gold);box-shadow:var(--glow-gold);background:#f6c54414}.team-score span{font-family:var(--display);color:var(--cream);letter-spacing:0;font-size:1.4rem}.active-turn span{color:var(--gold)}.token-count{color:var(--token);letter-spacing:0;font-size:.72rem}.turn-indicator{color:var(--gold);text-transform:uppercase;letter-spacing:.2em;margin-top:10px;font-size:.72rem;font-weight:700}.timer{font-family:var(--display);color:var(--cream);font-variant-numeric:tabular-nums;margin-bottom:22px;font-size:clamp(2.6rem,14vw,3.4rem);line-height:1}.vinyl-placeholder{--p:1;aspect-ratio:1;border-radius:50%;place-items:center;width:clamp(190px,60vw,270px);margin-bottom:30px;display:grid;position:relative}@property --p{syntax:"<number>";inherits:true;initial-value:0}.vinyl-placeholder:before{content:"";z-index:2;pointer-events:none;background:conic-gradient(var(--gold) calc(var(--p) * 360deg), #ffffff0f 0);filter:drop-shadow(0 0 6px #f6c54466);border-radius:50%;transition:--p 1s linear;position:absolute;inset:-7px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 calc(100% - 5px));mask:radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 calc(100% - 5px))}@media (prefers-reduced-motion:reduce){.vinyl-placeholder:before,.time-ring{transition:none}}.vinyl-disc{isolation:isolate;width:100%;height:100%;font-family:var(--display);color:#2a1d00;background:radial-gradient(circle at 72% 36%,#ffffff29 0 1.5px,#0000 2.5px),radial-gradient(circle at 30% 66%,#0000008c 0 2px,#0000 3px),radial-gradient(circle at 60% 74%,#ffffff1a 0 1px,#0000 2px),radial-gradient(circle at 40% 24%,#0006 0 1.5px,#0000 2.5px),conic-gradient(from -30deg,#ffffff1c,#0000 55deg 305deg,#ffffff12),repeating-radial-gradient(circle,#000000eb 0 1.5px,#3a342ceb 1.5px 3.5px),radial-gradient(circle at 36% 30%,#ffffff1a,#0000 42%),#0c0b0a;border-radius:50%;place-items:center;font-size:clamp(1.8rem,7vw,2.4rem);display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffffff0a,0 0 0 7px #050403,0 18px 50px -10px #000000e6}.vinyl-disc.spinning{animation:5.5s linear infinite spin}.vinyl-disc:after{content:"";aspect-ratio:1;z-index:-1;background:radial-gradient(circle at 38% 34%, var(--gold-bright), var(--gold) 55%, var(--gold-deep));border-radius:50%;width:42%;position:absolute;box-shadow:inset 0 1px 4px #00000073,0 0 0 4px #0006}.reveal-phase{animation:.45s cubic-bezier(.2,.7,.2,1) both rise}.reveal-cover{place-items:center;margin-bottom:22px;display:inline-grid}.cover-art{aspect-ratio:1;object-fit:cover;z-index:2;width:clamp(170px,54vw,220px);box-shadow:0 16px 50px -10px #000c, 0 0 0 2px var(--gold), 0 0 0 8px #f6c5441f;border-radius:18px;position:relative}.song-info{width:100%;margin-bottom:22px}.year{font-family:var(--display);background:linear-gradient(180deg, var(--gold-bright), var(--gold-deep));color:#0000;filter:drop-shadow(0 4px 16px #f6c5444d);-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(3.4rem,20vw,5.2rem);line-height:.92;animation:.5s cubic-bezier(.2,1.4,.4,1) both pop}.title{color:var(--cream);max-width:92%;margin:8px auto 4px;font-size:1.35rem;font-weight:800;line-height:1.2}.artist{color:var(--smoke);font-size:1.05rem;font-weight:500}.decision-box{flex-direction:column;align-items:center;width:100%;display:flex}.decision-grid{flex-direction:column;gap:10px;width:100%;max-width:300px;display:flex}.steals-row{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;margin-top:4px;display:flex}.steal-btn-small{background:var(--panel);border:1px solid var(--line-soft);color:var(--cream);border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.05em;padding:8px 14px;font-size:.78rem;font-weight:700}.steal-btn-small:hover{border-color:var(--gold)}.fail-btn-simple{color:var(--coral);letter-spacing:.04em;background:0 0;border:none;margin-top:10px;font-size:.92rem;font-weight:700}.start-btn,.main-action-btn,.reveal-btn-main{background:linear-gradient(180deg, var(--gold-bright), var(--gold));color:#2a1d00;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--r);border:none;width:100%;font-weight:800;box-shadow:0 10px 26px -8px #f6c5448c,inset 0 1px #ffffff80}.start-btn{max-width:300px;margin-top:4px;padding:17px;font-size:1.05rem}.main-action-btn{padding:15px;font-size:.95rem}.reveal-btn-main{max-width:300px;padding:17px;font-size:1rem}.start-btn:disabled{opacity:.5;filter:grayscale(.6);box-shadow:none}.secondary-action-btn{color:var(--gold);border:1.5px solid var(--gold);border-radius:var(--r);text-transform:uppercase;letter-spacing:.06em;background:0 0;width:100%;padding:14px;font-size:.95rem;font-weight:800}.secondary-action-btn:hover{background:#f6c5441a}.skip-btn-sub{color:var(--smoke);letter-spacing:.04em;background:0 0;border:none;margin-top:16px;font-size:.88rem;font-weight:600}.skip-btn-sub:hover{color:var(--cream)}.back-setup-btn{color:var(--smoke);text-transform:uppercase;letter-spacing:.12em;background:0 0;border:none;margin-top:22px;font-size:.78rem;font-weight:600}.back-setup-btn:hover{color:var(--cream)}.volume-control{border-radius:var(--r-pill);border:1px solid var(--line-soft);background:#0000004d;justify-content:center;align-items:center;gap:12px;margin-bottom:22px;padding:10px 18px;font-size:.9rem;display:flex}.volume-control input[type=range]{width:120px;accent-color:var(--gold)}.history-hint{margin-bottom:18px}.year-chips{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.year-chip{color:var(--gold);border:1px solid var(--line);border-radius:var(--r-pill);font-variant-numeric:tabular-nums;background:#f6c5441f;padding:4px 10px;font-size:.76rem;font-weight:700}.winner-text{font-family:var(--display);background:linear-gradient(180deg, var(--gold-bright), var(--gold-deep));color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:6px;font-size:clamp(2.4rem,13vw,3.6rem);animation:.5s cubic-bezier(.2,1.4,.4,1) both pop}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media (width>=520px){.container{justify-content:center;padding-block:28px}.game-box{flex:none;min-height:540px}}.team-name-inputs{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.team-name-input{border:1px solid var(--line-soft);color:var(--cream);border-radius:var(--r);text-align:center;background:#0000004d;outline:none;width:120px;padding:8px 12px;font-size:16px}.team-name-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #f6c5442e}.join-row{justify-content:center;align-items:center;gap:8px;display:flex}h1.fit{letter-spacing:.02em;max-width:100%;margin:6px 0 16px;font-size:clamp(1rem,4.7vw,1.9rem)}h1.fit:after{content:none}.decade-toggles{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.decade-btn{border:1px solid var(--line-soft);color:var(--smoke);border-radius:var(--r-pill);cursor:pointer;background:#0000004d;padding:8px 12px;font-size:.85rem;font-weight:700;transition:background .15s,color .15s,border-color .15s}.decade-btn.on{background:linear-gradient(180deg, var(--gold-bright), var(--gold));color:#2a1d00;border-color:var(--gold)}@keyframes eqbar{0%{height:14%}to{height:74%}}.hero-wave,.hero-term{justify-content:center;gap:7px;width:100%;height:100%;display:flex}.hero-wave{align-items:center}.hero-wave span{background:var(--gold);width:8px;height:20%;animation:.9s ease-in-out infinite alternate eqbar;animation-delay:calc(var(--i) * .11s);border-radius:6px}.hero-term{border:1px solid #2f8f5f;align-items:flex-end;padding:16% 14%}.hero-term span{width:7px;animation:.7s ease-in-out infinite alternate eqbar;animation-delay:calc(var(--i) * 80ms);background:#4bff9f;box-shadow:0 0 6px #4bff9f99}:root.audio-live .hero-wave span,:root.audio-live .hero-term span{transition:height 60ms linear;animation:none}.hero-cassette{aspect-ratio:1.58;background:linear-gradient(150deg,#4d4d52 0%,#343438 55%,#232326 100%);border:2px solid #141416;border-radius:12px;width:84%;margin:auto;position:relative;box-shadow:inset 0 2px 3px #ffffff38,inset 0 -8px 16px #00000073,0 12px 26px -8px #0009}.hero-cassette:before{content:"";z-index:1;background:repeating-linear-gradient(#f2e9cf 0 5px,#e6d9b6 5px 6px);border:1px solid #b6a87c;border-radius:3px;height:27%;position:absolute;top:9%;left:9%;right:9%;box-shadow:inset 0 0 0 3px #ffffff40}.hero-cassette:after{content:"";z-index:1;background:radial-gradient(120% 140% at 50% 0,#2a2a2e,#111114);border:2px solid #0c0c0e;border-radius:46%/62%;height:38%;position:absolute;bottom:13%;left:14%;right:14%}.hero-cassette .reel{aspect-ratio:1;z-index:2;background:radial-gradient(closest-side,#4a382c 62%,#2e231b 63%);border:2px solid #16100b;border-radius:50%;place-items:center;width:20%;animation:2.2s linear infinite spin;display:grid;position:absolute;bottom:19%;box-shadow:0 1px 3px #00000080}.hero-cassette .reel:after{content:"";background:repeating-conic-gradient(#ececec 0 18deg, #a6a6a6 18deg 36deg);border-radius:50%;width:54%;height:54%;box-shadow:0 0 0 2px #cdcdcd,inset 0 0 0 3px #2e231b}.hero-cassette .reel:first-of-type{left:19%}.hero-cassette .reel:last-of-type{right:19%}:root[data-hitstar-theme=modern]{--ink:#eef0f4;--ink-soft:#e4e7ee;--panel:#fff;--panel-2:#f4f5f8;--line:#e2e5ee;--line-soft:#e2e5ee;--gold:#3b5bff;--gold-bright:#5b78ff;--gold-deep:#2340d8;--cream:#0d0f14;--smoke:#5c6270;--coral:#e5484d;--good:#2fa96b;--token:#3b5bff;--display:"Helvetica Neue", Arial, system-ui, sans-serif;--ui:"Helvetica Neue", Arial, system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-hitstar-theme=modern] body{color:#0d0f14;background:linear-gradient(160deg,#eef1fb 0%,#e7ecf6 45%,#f3eef7 100%) fixed}:root[data-hitstar-theme=modern] body:after{display:none}:root[data-hitstar-theme=modern] .game-box{-webkit-backdrop-filter:blur(22px)saturate(1.4);backdrop-filter:blur(22px)saturate(1.4);background:#ffffff8c;border:1px solid #ffffffb3;box-shadow:0 20px 50px #0d0f141f,inset 0 1px #fff9}:root[data-hitstar-theme=modern] .ambient-cover{filter:blur(72px)saturate(1.8)brightness(.95);opacity:.6;animation:none}:root[data-hitstar-theme=modern] .ambient-cover:after{background:0 0}:root[data-hitstar-theme=modern] h1{color:#0d0f14;letter-spacing:-.03em}:root[data-hitstar-theme=modern] h1:after{color:var(--gold);text-shadow:none}:root[data-hitstar-theme=modern] .mode-toggle{background:#e7e9ef;border:none}:root[data-hitstar-theme=modern] .mode-toggle button.active{color:#0d0f14;background:#fff;box-shadow:0 2px 8px #0d0f141f}:root[data-hitstar-theme=modern] .decade-btn{color:#5c6270;background:#e7e9ef;border:none}:root[data-hitstar-theme=modern] .decade-btn.on{background:var(--gold);color:#fff;border-color:var(--gold)}:root[data-hitstar-theme=modern] .start-btn,:root[data-hitstar-theme=modern] .main-action-btn,:root[data-hitstar-theme=modern] .reveal-btn-main{background:var(--gold);color:#fff;text-transform:none;letter-spacing:-.01em;box-shadow:0 8px 22px -8px #3b5bff99}:root[data-hitstar-theme=modern] .secondary-action-btn{border-color:var(--gold);color:var(--gold)}:root[data-hitstar-theme=modern] .timer{color:#0d0f14;font-family:var(--ui);font-weight:800}:root[data-hitstar-theme=modern] .year,:root[data-hitstar-theme=modern] .winner-text{color:#0d0f14;-webkit-text-fill-color:#0d0f14;filter:none;font-family:var(--ui);background:0 0;font-weight:800}:root[data-hitstar-theme=modern] .team-score{border-color:var(--line);background:#f4f5f8}:root[data-hitstar-theme=modern] .team-score span{color:#0d0f14;font-family:var(--ui);font-weight:800}:root[data-hitstar-theme=modern] input,:root[data-hitstar-theme=modern] select,:root[data-hitstar-theme=modern] .team-name-input{color:#0d0f14;border:1px solid var(--line);background:#f4f5f8}:root[data-hitstar-theme=modern] .log-box{color:#0d0f14;background:#fff}:root[data-hitstar-theme=modern] .yt-corner{color:#0d0f14;border:1px solid var(--line);background:#fff}:root[data-hitstar-theme=modern] .slot-chip{color:#5c6270;background:#e7e9ef;border:none}:root[data-hitstar-theme=modern] .slot-chip.hit{background:var(--gold);color:#fff}:root[data-hitstar-theme=nerd]{--ink:#06090a;--ink-soft:#0a0f0c;--panel:#4bff9f0a;--panel-2:#4bff9f0f;--line:#2f8f5f;--line-soft:#1e5c3d;--gold:#4bff9f;--gold-bright:#7dffbd;--gold-deep:#2f8f5f;--cream:#4bff9f;--smoke:#2f8f5f;--coral:#ff5f56;--good:#4bff9f;--token:#7dffbd;--display:"SFMono-Regular", Menlo, Consolas, monospace;--ui:"SFMono-Regular", Menlo, Consolas, monospace}:root[data-hitstar-theme=nerd] body{color:#4bff9f;background:#06090a}:root[data-hitstar-theme=nerd] body:after{opacity:1;mix-blend-mode:normal;background-image:repeating-linear-gradient(#0000 0 2px,#00000038 2px 3px)}:root[data-hitstar-theme=nerd] .game-box{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#4bff9f08;border:1px solid #2f8f5f}:root[data-hitstar-theme=nerd] h1{color:#4bff9f;text-shadow:0 0 8px #4bff9f80;letter-spacing:.08em;font-size:clamp(1.8rem,9vw,2.6rem)}:root[data-hitstar-theme=nerd] h1:after{color:#d7ffea;text-shadow:none}:root[data-hitstar-theme=nerd] .mode-toggle{background:0 0;border:1px solid #2f8f5f}:root[data-hitstar-theme=nerd] .mode-toggle button{color:#4bff9f}:root[data-hitstar-theme=nerd] .mode-toggle button.active{color:#06090a;box-shadow:none;background:#4bff9f}:root[data-hitstar-theme=nerd] .decade-btn{color:#4bff9f;background:0 0;border:1px solid #2f8f5f;border-radius:2px}:root[data-hitstar-theme=nerd] .decade-btn.on{color:#06090a;background:#4bff9f}:root[data-hitstar-theme=nerd] .start-btn,:root[data-hitstar-theme=nerd] .main-action-btn,:root[data-hitstar-theme=nerd] .reveal-btn-main{color:#4bff9f;box-shadow:none;text-transform:uppercase;background:0 0;border:1px solid #4bff9f;border-radius:2px}:root[data-hitstar-theme=nerd] .start-btn:before,:root[data-hitstar-theme=nerd] .main-action-btn:before,:root[data-hitstar-theme=nerd] .reveal-btn-main:before{content:"[ "}:root[data-hitstar-theme=nerd] .start-btn:after,:root[data-hitstar-theme=nerd] .main-action-btn:after,:root[data-hitstar-theme=nerd] .reveal-btn-main:after{content:" ]"}:root[data-hitstar-theme=nerd] .secondary-action-btn{color:#4bff9f;border-color:#4bff9f;border-radius:2px}:root[data-hitstar-theme=nerd] .timer{color:#4bff9f;font-family:var(--ui)}:root[data-hitstar-theme=nerd] .year,:root[data-hitstar-theme=nerd] .winner-text{color:#4bff9f;-webkit-text-fill-color:#4bff9f;filter:none;font-family:var(--ui);text-shadow:0 0 10px #4bff9f80;background:0 0}:root[data-hitstar-theme=nerd] .cover-art{filter:grayscale()brightness(.9)sepia()hue-rotate(80deg)saturate(2.5);border-radius:0;box-shadow:0 0 0 1px #2f8f5f}:root[data-hitstar-theme=nerd] .vinyl-placeholder:before{display:none}:root[data-hitstar-theme=nerd] input,:root[data-hitstar-theme=nerd] select,:root[data-hitstar-theme=nerd] .team-name-input,:root[data-hitstar-theme=nerd] .log-box{color:#4bff9f;background:#06090a;border:1px solid #2f8f5f}:root[data-hitstar-theme=nerd] .yt-corner{color:#4bff9f;background:0 0;border:1px solid #2f8f5f}:root[data-hitstar-theme=nerd] .team-score{background:#4bff9f0d;border-color:#2f8f5f}:root[data-hitstar-theme=nerd] .team-score span{color:#4bff9f;font-family:var(--ui)}:root[data-hitstar-theme=nerd] .ambient-cover{display:none}:root[data-hitstar-theme=retro]{--ink:teal;--ink-soft:#007070;--panel:silver;--panel-2:#d4d4d4;--line:gray;--line-soft:gray;--gold:navy;--gold-bright:#00e;--gold-deep:navy;--cream:#000;--smoke:navy;--coral:red;--good:green;--token:red;--display:"Comic Sans MS", "Times New Roman", serif;--ui:"Times New Roman", Times, serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-hitstar-theme=retro] body{color:#000;background:teal}:root[data-hitstar-theme=retro] body:after{display:none}:root[data-hitstar-theme=retro] .game-box{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:repeating-linear-gradient(45deg,#d9d9d9 0 10px,#cfcfcf 10px 20px);border:3px solid gray;border-color:#fff gray gray #fff;border-radius:0}:root[data-hitstar-theme=retro] h1{color:navy;text-transform:none;letter-spacing:0;text-shadow:2px 2px #f0f,4px 4px #fc0;font-family:Comic Sans MS,serif}:root[data-hitstar-theme=retro] h1:after{color:red;text-shadow:none}:root[data-hitstar-theme=retro] .mode-toggle{background:0 0;border:none;gap:6px;padding:0}:root[data-hitstar-theme=retro] .mode-toggle button{color:#000;background:silver;border:2px solid gray;border-color:#fff gray gray #fff;border-radius:0;font-family:Arial,sans-serif}:root[data-hitstar-theme=retro] .mode-toggle button.active{box-shadow:none;background:#d4d4d4;border-color:gray #fff #fff gray}:root[data-hitstar-theme=retro] .decade-btn{color:#000;background:silver;border:1px solid gray;border-radius:0;font-family:Arial,sans-serif}:root[data-hitstar-theme=retro] .decade-btn.on{color:#000;background:#ff9;border-color:gray;font-weight:700}:root[data-hitstar-theme=retro] .start-btn,:root[data-hitstar-theme=retro] .main-action-btn,:root[data-hitstar-theme=retro] .reveal-btn-main{color:#000;box-shadow:none;text-transform:none;background:silver;border:3px solid gray;border-color:#fff gray gray #fff;border-radius:0;font-family:Arial,sans-serif}:root[data-hitstar-theme=retro] .start-btn:active,:root[data-hitstar-theme=retro] .main-action-btn:active,:root[data-hitstar-theme=retro] .reveal-btn-main:active{border-color:gray #fff #fff gray}:root[data-hitstar-theme=retro] .secondary-action-btn{color:#000;background:silver;border:3px solid gray;border-color:#fff gray gray #fff;border-radius:0}:root[data-hitstar-theme=retro] .timer{color:red;background:#000;border:2px inset gray;border-radius:0;padding:2px 14px;font-family:Courier New,monospace}:root[data-hitstar-theme=retro] .year,:root[data-hitstar-theme=retro] .winner-text{color:red;-webkit-text-fill-color:red;filter:none;text-shadow:1px 1px #000;background:0 0;font-family:Comic Sans MS,serif}:root[data-hitstar-theme=retro] .cover-art{box-shadow:none;border:4px ridge silver;border-radius:0}:root[data-hitstar-theme=retro] .vinyl-placeholder:before{display:none}:root[data-hitstar-theme=retro] .setup-group label{color:navy;font-family:Arial,sans-serif}:root[data-hitstar-theme=retro] .title,:root[data-hitstar-theme=retro] .artist{color:#000}:root[data-hitstar-theme=retro] input,:root[data-hitstar-theme=retro] select,:root[data-hitstar-theme=retro] .team-name-input{color:#000;background:#fff;border:2px inset gray;border-radius:0}:root[data-hitstar-theme=retro] .log-box{color:#000;background:silver;border:3px solid gray;border-color:#fff gray gray #fff;border-radius:0}:root[data-hitstar-theme=retro] .yt-corner{color:#000;background:silver;border:2px solid gray;border-color:#fff gray gray #fff;border-radius:0;font-family:Arial,sans-serif}:root[data-hitstar-theme=retro] .team-score{color:#000;background:silver;border:2px inset gray}:root[data-hitstar-theme=retro] .team-score span{color:navy;font-family:Comic Sans MS,serif}:root[data-hitstar-theme=retro] .ambient-cover{display:none}.online-join{gap:18px}.online-name{border:1px solid var(--line-soft);color:var(--cream);border-radius:var(--r);text-align:center;background:#0000004d;width:100%;max-width:280px;padding:12px 16px;font-size:16px}.online-room-label{color:var(--smoke);text-transform:uppercase;letter-spacing:.18em;font-size:.8rem}.online-room-code{font-family:var(--display);color:var(--gold);letter-spacing:.2em;font-size:2rem;display:block}.online-share{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-bottom:18px;display:flex}.online-qr{background:var(--ink);border:1px solid var(--line);border-radius:12px;padding:8px;line-height:0}.online-code{flex-direction:column;align-items:center;gap:8px;display:flex}.online-players{flex-direction:column;gap:6px;width:100%;margin-bottom:18px;display:flex}.online-lobby{gap:14px}.tl{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;margin:14px 0;display:flex}.tl-card{font-family:var(--display);color:var(--cream);border:1px solid var(--line-soft);background:#ffffff0f;border-radius:10px;padding:6px 10px;font-size:1.1rem}.tl-gap{border:1px dashed var(--line);width:26px;height:34px;color:var(--smoke);cursor:pointer;background:0 0;border-radius:8px;font-weight:700}.tl-gap:not(:disabled):hover{border-color:var(--gold);color:var(--gold)}.tl-gap.sel{background:var(--gold);color:#2a1d00;border-style:solid}.round-status{color:var(--smoke);letter-spacing:.08em;margin-bottom:8px;font-size:.85rem}.steal-count{font-family:var(--display);color:var(--gold);margin-bottom:8px;font-size:2.4rem}.tl-gap.taken{border-style:solid;border-color:var(--coral);color:var(--coral);opacity:.9}.time-ring{background:conic-gradient(var(--gold) calc(var(--p) * 360deg), #ffffff0f 0);filter:drop-shadow(0 0 6px #f6c54440);border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;margin:0 auto 12px;transition:--p 1s linear;display:flex;position:relative}.time-ring:before{content:"";background:var(--ink-soft);border-radius:50%;position:absolute;inset:4px}.time-ring span{color:var(--gold);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:800;position:relative}.log-overlay{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.log-box{background:var(--ink-soft);border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;gap:8px;width:100%;max-width:440px;max-height:80vh;padding:20px;display:flex;overflow-y:auto}.log-title{font-family:var(--display);color:var(--gold);text-align:center;margin-bottom:6px;font-size:1.6rem}.log-entry{border-bottom:1px solid var(--line-soft);text-align:left;align-items:center;gap:12px;padding:8px 6px;display:flex}.log-year{font-family:var(--display);color:var(--cream);min-width:56px;font-size:1.3rem}.log-info{flex:1}.log-song{color:var(--cream);font-size:.92rem;font-weight:600}.log-meta{color:var(--smoke);margin-top:2px;font-size:.8rem}.tinder-page{color:#eee;text-align:center;background:#1a1a2e;flex-direction:column;justify-content:center;align-items:center;gap:1.2rem;min-height:100vh;padding:1rem;font-family:system-ui,sans-serif;display:flex}.tinder-header{opacity:.8;font-size:.95rem}.tinder-card{background:#16213e;border-radius:16px;width:100%;max-width:420px;padding:1.5rem 2rem;box-shadow:0 8px 32px #0006}.tinder-card h2{margin:1rem 0 .25rem;font-size:1.5rem}.tinder-artist{opacity:.85;margin:0;font-size:1.1rem}.tinder-meta{opacity:.6;margin-top:.5rem}.tinder-art{object-fit:cover;border-radius:12px;width:240px;height:240px}.tinder-art-empty{background:#0f3460;justify-content:center;align-items:center;margin:0 auto;font-size:4rem;display:flex}.tinder-actions{flex-direction:column;gap:.5rem;display:flex}.tinder-undo{color:#fff;cursor:pointer;background:#4a4e69;border:none;border-radius:10px;width:100%;padding:.45rem;font-size:.95rem}.tinder-undo:disabled{opacity:.4;cursor:default}.tinder-buttons{align-items:stretch;gap:1rem;display:flex}.tinder-btn{cursor:pointer;color:#fff;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;min-width:110px;padding:.8rem 1.4rem;font-size:1.1rem;display:flex}.tinder-btn span{opacity:.6;font-size:.7rem}.tinder-btn.keep{background:#2e7d32}.tinder-btn.drop{background:#c62828}.tinder-mid{flex-direction:column;gap:.5rem;display:flex}.tinder-mid .tinder-btn{flex:1 1 0;gap:0;padding:.2rem 1rem;font-size:.95rem}.tinder-btn.skip{background:#455a64}.tinder-btn.pause{background:#0f3460}.tinder-btn:disabled{opacity:.5;cursor:wait}.tinder-start{color:#fff;cursor:pointer;background:#e94560;border:none;border-radius:12px;padding:1rem 2.5rem;font-size:1.3rem}.tinder-error{color:#fff;background:#c62828;border-radius:8px;padding:.5rem 1rem}@media (width<=520px){.tinder-page{justify-content:flex-start;gap:.7rem;min-height:100dvh;padding:.8rem .8rem 12rem}.tinder-card{padding:.8rem 1rem}.tinder-card h2{margin:.6rem 0 .2rem;font-size:1.15rem}.tinder-artist{font-size:1rem}.tinder-meta{margin-top:.3rem;font-size:.9rem}.tinder-art{width:130px;height:130px}.tinder-art-empty{font-size:2.5rem}.tinder-actions{padding:.7rem .7rem calc(.7rem + env(safe-area-inset-bottom));background:#16213ef7;gap:.5rem;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #0006}.tinder-buttons{gap:.6rem}.tinder-btn{flex:1 1 0;min-width:0;min-height:6rem;padding:.4rem;font-size:1.05rem}.tinder-mid{flex:1 1 0;min-width:0}.tinder-mid .tinder-btn{min-height:0;font-size:.9rem}}
