:root{--bg:#1b1530;--bg-2:#241c3f;--surface:#2c2350;--surface-2:#382d63;--text:#f6f2ff;--muted:#b5abd6;--line:#4a3e7d;--accent:#ff5d8f;--accent-2:#ffc94a;--ok:#4fd18b;--ko:#ff6b6b;--radius:16px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;color:var(--text);background:radial-gradient(1200px 600px at 80% -10%, #3b2a6e 0%, transparent 60%), var(--bg);margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}button,input{font:inherit;color:inherit}h1,h2{letter-spacing:-.01em;margin:0 0 .5em;line-height:1.15}h1{font-size:clamp(2rem,6vw,3.2rem);font-weight:800}h1 span{color:var(--accent);display:block}h2{font-size:1.15rem;font-weight:700}.muted{color:var(--muted)}.note{color:var(--muted);margin:.5rem 0 0;font-size:.875rem}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0;font-size:.78rem;font-weight:700}button,.button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:.4em;min-height:44px;padding:.55em 1em;font-weight:650;text-decoration:none;transition:background .15s,transform 50ms,opacity .15s;display:inline-flex}a.button{color:inherit}button:hover:not(:disabled){background:var(--surface-2)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.45;cursor:default}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:#1b1530}button.primary:hover:not(:disabled){background:var(--accent);opacity:.9}button.big{min-height:54px;padding:.7em 1.4em;font-size:1.1rem}:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}input:not([type]){border:1px solid var(--line);background:var(--bg-2);border-radius:12px;width:100%;min-height:46px;padding:.6em .8em}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.tag{text-transform:uppercase;letter-spacing:.05em;background:var(--surface-2);color:var(--muted);vertical-align:2px;border-radius:6px;padding:1px 6px;font-size:.68rem;font-weight:800;display:inline-block}.tag.you{background:var(--accent);color:#1b1530}.online{background:var(--muted);opacity:.5;border-radius:50%;width:8px;height:8px;display:inline-block}.online.on{background:var(--ok);opacity:1}.top{padding:10px 16px;padding-top:max(10px, env(safe-area-inset-top));align-items:center;gap:12px;max-width:1200px;margin:0 auto;display:flex}.top .spacer{flex:1}.top .icon{min-height:36px;padding:.3em .8em;font-size:.85rem}.brand{color:inherit;align-items:center;gap:10px;font-size:1.15rem;font-weight:800;text-decoration:none;display:inline-flex}.disc{background:radial-gradient(circle, var(--bg) 0 18%, var(--accent) 19% 34%, #2b2140 35% 100%);border-radius:50%;width:26px;height:26px;box-shadow:inset 0 0 0 2px #fff2}.conn{color:var(--muted);background:var(--surface);border-radius:999px;padding:2px 8px;font-size:.8rem}.home,.lobby{gap:18px;max-width:720px;margin:0 auto;padding:8px 16px 48px;display:grid}.hero{padding:18px 0 4px}.hero p{color:var(--muted);max-width:55ch;margin:0;font-size:1.08rem}.create{gap:18px;display:grid}.field{gap:6px;font-weight:650;display:grid}fieldset{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}legend{width:100%;margin-bottom:10px;padding:0;font-weight:650}form.settings fieldset+fieldset{margin-top:22px}form.settings+.note{border-top:1px solid var(--line,#ffffff14);margin-top:18px;padding-top:14px}.chip input,.mode input{opacity:0;pointer-events:none;position:absolute}.chip span{border:1px solid var(--line);background:var(--bg-2);cursor:pointer;border-radius:999px;align-items:center;min-height:40px;padding:6px 14px;font-size:.92rem;font-weight:600;display:inline-flex}.chip input:checked+span{background:var(--accent);border-color:var(--accent);color:#1b1530}.chip input:focus-visible+span,.mode input:focus-visible+span{outline:3px solid var(--accent-2);outline-offset:2px}.modes{grid-template-columns:1fr 1fr;display:grid}.mode span{border:2px solid var(--line);background:var(--bg-2);cursor:pointer;border-radius:12px;gap:2px;height:100%;padding:12px;display:grid}.mode small{color:var(--muted);font-size:.82rem;line-height:1.35}.mode input:checked+span{border-color:var(--accent)}.summary{color:var(--muted);margin:0}.how ol{gap:.45em;margin:0;padding-left:1.2em;display:grid}.center{text-align:center;justify-items:center;gap:12px;max-width:480px;margin:15vh auto 0;padding:16px;display:grid}.share{flex-wrap:wrap;gap:8px;display:flex}.share input{flex:220px;font-family:ui-monospace,monospace;font-size:.88rem}.seatlist{gap:6px;margin:0 0 10px;padding:0;list-style:none;display:grid}.seatlist li{background:var(--bg-2);border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:8px 12px;display:flex}.seatlist .who{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.seatlist button{min-height:36px;padding:.25em .8em;font-size:.85rem}.sit{gap:8px;margin-top:10px;display:flex}.actions{justify-items:start;gap:8px;display:grid}.game{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-areas:"stage line""players line";align-items:start;gap:16px;max-width:1200px;margin:0 auto;padding:0 16px 24px;display:grid}.stage{grid-area:stage;gap:12px;display:grid}.line{grid-area:line;gap:10px;display:grid}.players{grid-area:players}.now{align-items:center;gap:18px;min-height:150px;display:flex;position:relative;overflow:hidden}.now .q{margin:2px 0 0;font-size:1.6rem;font-weight:800}.now .decade{color:var(--accent-2);margin:6px 0 0}.now .speaker{color:var(--accent-2);margin:8px 0 0;font-weight:700}.now .tap{margin-top:10px}.mystery{background:linear-gradient(135deg, var(--accent), #8a5cff);color:#1b1530;border-radius:14px;flex:none;place-items:center;font-weight:900;display:grid}.mystery.big{width:96px;height:96px}.mystery.small{border-radius:8px;width:30px;height:30px;font-size:1rem}.eq{align-items:flex-end;gap:5px;height:40px;display:flex}.eq i{background:#1b1530;border-radius:3px;width:8px;animation:.9s ease-in-out infinite eq}.eq i:nth-child(2){animation-delay:-.3s}.eq i:nth-child(3){animation-delay:-.6s}.eq i:nth-child(4){animation-delay:-.15s}@keyframes eq{0%,to{height:20%}50%{height:100%}}.timer{background:var(--bg-2);border-radius:4px;height:8px;margin-top:-6px;overflow:hidden}.timer i{height:100%;width:var(--w);background:linear-gradient(90deg, var(--accent-2), var(--accent));animation:drain var(--t) linear forwards;display:block}@keyframes drain{to{width:0}}.now.revealed .big-year{color:var(--accent-2);flex:none;font-size:3.4rem;font-weight:900;line-height:1}.now.revealed .title{margin:0;font-size:1.3rem;font-weight:800}.now.revealed .artist{color:var(--muted);margin:0}.now.revealed .verdict{margin:8px 0 0;font-weight:750}.now.revealed .verdict .pts{margin-right:4px;font-size:1.3em;animation:.5s ease-out pop;display:inline-block}.now.revealed .breakdown{color:var(--muted);margin:2px 0 0;font-size:.8rem}.confirm .worth{opacity:.85;font-variant-numeric:tabular-nums;font-weight:600}.now.revealed.ok{border-color:var(--ok)}.now.revealed.ok .verdict{color:var(--ok)}.now.revealed.ko .verdict{color:var(--ko)}.options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.options .label{grid-column:1/-1;margin:0;font-weight:650}.options .label small{color:var(--muted);font-weight:500}.opt{text-align:center;min-height:50px;line-height:1.2}.opt.chosen{border-color:var(--accent-2);box-shadow:inset 0 0 0 1px var(--accent-2)}.opt.good{background:var(--ok);border-color:var(--ok);color:#10251a;opacity:1}.opt.bad{background:var(--ko);border-color:var(--ko);color:#2a0f0f;opacity:1}.hint{color:var(--accent-2);text-align:left;flex-wrap:wrap;justify-content:flex-start;justify-self:start;gap:0 .5em}.hint small{color:var(--muted);font-weight:500}.status{min-height:1.5em;margin:0}.status .err{color:var(--ko);font-weight:650}.timeline{gap:4px;display:grid}.card-song{background:var(--surface);border:1px solid var(--line);border-radius:14px;align-items:center;gap:14px;padding:10px 14px;display:flex}.card-song .year{color:var(--accent-2);min-width:3.2ch;font-size:1.5rem;font-weight:900}.card-song .what{min-width:0;display:grid}.card-song b,.card-song small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.card-song small{color:var(--muted)}.card-song.fresh{border-color:var(--ok);box-shadow:0 0 0 2px var(--ok);animation:.5s ease-out pop}@keyframes pop{0%{opacity:0;transform:translateY(6px)scale(.8)}to{opacity:1;transform:none}}.slot{border:2px dashed var(--line);min-height:44px;color:var(--muted);background:0 0;border-radius:12px;justify-content:flex-start;align-items:center;gap:10px;padding:4px 12px;font-weight:600;display:flex}.slot .plus{background:var(--surface-2);width:26px;height:26px;color:var(--text);border-radius:50%;place-items:center;display:grid}.slot:hover:not(:disabled){border-color:var(--accent);color:var(--text);background:0 0}.slot.picked{border-style:solid;border-color:var(--accent);color:var(--text);background:#ff5d8f1f;min-height:54px}.slot:disabled{opacity:.5}.slot.picked:disabled{opacity:1}.slot.right{border-style:solid;border-color:var(--ok);color:var(--ok)}.slot.right .mini-card{background:var(--ok);color:#10251a;border-radius:8px;padding:2px 8px;font-weight:900}.slot.wrong{border-color:var(--ko);color:var(--ko)}.gap{height:4px}.confirm{bottom:max(10px, env(safe-area-inset-bottom));position:sticky;box-shadow:0 8px 24px #0008}.players ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.players li{grid-template-columns:1fr auto 74px 22px;align-items:center;gap:10px;font-size:.95rem;display:grid}.players .extra{align-items:center;gap:6px;display:flex}.players .streak{color:#ff9f43;font-size:.8rem;font-weight:750}.players .score{text-align:right;font-variant-numeric:tabular-nums;line-height:1.1}.players .score b{font-size:1.05rem}.players .gain{color:var(--ok);opacity:1;font-size:.8rem;font-weight:800;animation:.5s ease-out pop;display:block}.players li.me .pname{color:var(--accent);font-weight:750}.players li.winner .pname:after{content:" 🏆"}.players .pname{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.players .progress{background:var(--bg-2);border-radius:4px;height:8px;overflow:hidden}.players .progress i{background:var(--accent);height:100%;display:block}.players .count{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.85rem}.players .tokens{color:var(--accent-2);min-width:1ch;font-size:.8rem}.players .mark{text-align:center;font-weight:800}.mark.done,.mark.ok{color:var(--ok)}.mark.ko{color:var(--ko)}.mark.wait{color:var(--muted)}.result{z-index:10;background:#0009;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.result .card{width:min(440px,100%)}.ranking{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.ranking li{background:var(--bg-2);border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:8px 12px;display:grid}.ranking b{font-size:1.4rem}.ranking small{color:var(--accent-2)}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (width<=820px){.game{grid-template-columns:minmax(0,1fr);grid-template-areas:"stage""line""players"}.now{gap:14px;min-height:120px;padding:14px}.mystery.big{width:74px;height:74px}.now .q{font-size:1.3rem}.now.revealed .big-year{font-size:2.6rem}.top .eyebrow{display:none}}@media (width<=480px){.modes{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.eq i,.card-song.fresh{animation:none}}
