:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#111014;--rail:#16151a;--deck:#1a191e;--raise:#232228;--line:#2e2c33;--line-soft:#25232b;--text:#f5f1ea;--soft:#cfcad3;--muted:#a29fa8;--faint:#6e6b75;--tangerine:#ff7a2f;--aqua:#2fe0c8;--butter:#ffd36b;--rose:#ff4d6d;--lemon:#ffea00;--medal-3:#ffb057;--discord:#5865f2;--display:"Big Shoulders Display", "Arial Narrow", sans-serif;--body:"Rethink Sans", "Segoe UI", system-ui, sans-serif;--mono:"Martian Mono", ui-monospace, Menlo, Consolas, monospace;--press:inset 0 -5px 0 #0003;--ease:cubic-bezier(.22, 1, .36, 1);--vv-top:0px;--vv-bottom:0px}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--line) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line);background-clip:padding-box;border:2px solid #0000;border-radius:5px}::-webkit-scrollbar-thumb:hover{background-color:var(--faint)}::-webkit-scrollbar-corner{background:0 0}html,body{margin:0}body{background:var(--ink);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.45}h1,h2,h3,p{margin:0}a{color:var(--aqua)}a:hover{color:var(--butter)}button,input{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--lemon);outline-offset:2px}.mono{font-family:var(--mono);font-weight:800}.faint{color:var(--faint)}.spacer{flex-grow:1}.hint{color:var(--muted);font-size:15px}.error{color:var(--rose);font-size:15px;font-weight:700}.link{font-weight:800;text-decoration:none}.music-glyph{justify-content:center;align-items:center;font-family:Noto Music,serif;font-weight:400;line-height:1;display:inline-flex}.wordmark{align-items:center;gap:.32em;display:inline-flex}.logo-bars{align-items:flex-end;gap:.1em;height:.8em;display:inline-flex}.logo-bars i{width:.2em;height:var(--h);background:var(--butter);border-radius:999px;display:block}.logo-bars i:first-child{--h:50%}.logo-bars i:nth-child(2){--h:100%;background:var(--lemon)}.logo-bars i:nth-child(3){--h:72%;background:var(--tangerine)}.logo-bars i:nth-child(4){--h:88%;background:var(--rose)}.logo-bars i:nth-child(5){--h:60%;background:var(--aqua)}.wordmark.live .logo-bars{gap:.08em;height:.66em}.wordmark.live .logo-bars i{width:.12em;animation:1.1s ease-in-out infinite meter}.wordmark.live .logo-bars i:nth-child(2){animation-duration:.9s;animation-delay:-.4s}.wordmark.live .logo-bars i:nth-child(3){animation-duration:1.3s;animation-delay:-.7s}.wordmark.live .logo-bars i:nth-child(4){animation-duration:1s;animation-delay:-.2s}.wordmark.live .logo-bars i:nth-child(5){animation-duration:1.2s;animation-delay:-.9s}@keyframes meter{0%,to{height:var(--h)}50%{height:calc(var(--h) * .45)}}.wordmark{font-family:var(--display);letter-spacing:.5px;color:var(--text);font-size:26px;font-weight:900;line-height:1;text-decoration:none}.wordmark:hover{color:var(--text)}.wordmark-beat{color:var(--lemon)}.wordmark.small{font-size:24px}.btn{background:var(--tone,var(--text));height:48px;color:var(--ink);cursor:pointer;white-space:nowrap;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:800;text-decoration:none;transition:transform 80ms,box-shadow 80ms,filter .15s;display:inline-flex;box-shadow:inset 0 -4px #0003}.btn:hover{color:var(--ink);filter:brightness(1.06)}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 -2px #0003}.btn:disabled{opacity:.5;cursor:default}.tone-tangerine{--tone:var(--tangerine)}.tone-aqua{--tone:var(--aqua)}.tone-butter{--tone:var(--butter)}.tone-rose{--tone:var(--rose)}.tone-cream{--tone:var(--text)}.btn-lg{height:64px;font-family:var(--display);box-shadow:var(--press);border-radius:14px;padding:0 22px;font-size:26px;font-weight:900}.btn-xl{height:66px;font-family:var(--display);box-shadow:var(--press);border-radius:33px;padding:0 32px;font-size:28px;font-weight:900}.btn-block{width:100%}.btn.small,.btn-quiet.small{border-radius:10px;height:36px;padding:0 12px;font-size:13px}.btn-quiet{background:var(--deck);height:44px;color:var(--soft);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.btn-quiet:hover{background:var(--raise);color:var(--text)}.btn-quiet:disabled{opacity:.4;cursor:default}.btn.btn-quiet{box-shadow:none}.btn-xl.btn-quiet{height:66px;font-family:var(--body);border-radius:33px;padding:0 28px;font-size:16px;font-weight:800}.btn-discord{--tone:var(--discord);color:#fff;font-family:var(--body);font-weight:800}.btn-discord:hover{color:#fff}.btn-lg.btn-discord{font-size:17px}.icon-btn{background:var(--deck);width:44px;height:44px;color:var(--soft);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--raise);color:var(--text)}.link-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:6px 2px;font-size:14px;font-weight:700}.link-btn:hover,.link-btn[aria-expanded=true]{color:var(--text)}.field{flex-direction:column;gap:8px;display:flex}.field>label,.field>span,.field-label{color:var(--muted);font-size:15px;font-weight:700}.field em{color:var(--faint);font-style:normal}input[type=text],input[type=password],input[type=url],input[type=number]{background:var(--deck);border:1.5px solid var(--line);height:56px;color:var(--text);border-radius:14px;outline:none;min-width:0;padding:0 18px;font-size:17px;font-weight:700}input::placeholder{color:var(--faint)}input:focus{border-color:var(--butter)}input:disabled{opacity:.5}.code-input{font-family:var(--mono);letter-spacing:6px;text-align:center;text-transform:uppercase;font-size:20px;font-weight:800;color:var(--butter)!important;background:var(--ink)!important}.avatar{--size:30px;width:var(--size);height:var(--size);background:var(--hue,var(--soft));color:var(--ink);font-family:var(--display);font-weight:900;font-size:calc(var(--size) * .52);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.avatar.ring{box-shadow:0 0 0 4px var(--ink), 0 0 0 7px var(--hue)}.avatar.discord{background:var(--discord)}.avatar-img{object-fit:cover;background:var(--raise);border-radius:50%;flex-shrink:0}.stack{display:inline-flex}.stack .avatar{box-shadow:0 0 0 3px var(--stack-ground,var(--ink))}.stack .avatar+.avatar{margin-left:-6px}.tabs{background:var(--deck);border-radius:12px;padding:4px;display:inline-flex}.tab{height:36px;color:var(--soft);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:0 14px;font-size:14px;font-weight:700}.tab:hover{color:var(--text)}.tab[aria-selected=true]{background:var(--text);color:var(--ink);font-weight:800}.tabs.small .tab{height:32px;font-size:13px}.section-head{flex-wrap:wrap;align-items:baseline;gap:8px 12px;display:flex}.section-head h2{font-family:var(--display);font-size:26px;font-weight:800;line-height:1.1}.section-head label h2{display:inline}.section-note{color:var(--muted);font-size:14px}.section-sub{color:var(--muted);margin-top:-4px;font-size:14px}.note{color:var(--muted);font-size:14px}.note.bad{color:var(--rose)}.note.ok{color:var(--aqua)}.loading-dots:after{content:"";text-align:left;width:1.2em;animation:1.2s steps(4,end) infinite dots;display:inline-block}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.home{min-height:100dvh;padding:0 48px 72px;position:relative;overflow:hidden}.home-note{pointer-events:none;position:absolute}.note-a{color:var(--tangerine);font-size:170px;top:52%;left:6%;transform:rotate(-12deg)}.note-b{color:var(--aqua);font-size:110px;top:15%;left:16%;transform:rotate(10deg)}.note-c{color:var(--rose);font-size:130px;bottom:5%;right:19%;transform:rotate(14deg)}.home-top{z-index:1;justify-content:flex-end;align-items:center;height:88px;display:flex;position:relative}.whoami{align-items:center;gap:10px;display:flex}.whoami-name{font-size:15px;font-weight:700}.home-main{z-index:1;flex-direction:column;align-items:stretch;width:min(540px,100%);margin:4vh auto 0;display:flex;position:relative}.home-title{text-align:center}.home-title .wordmark{font-size:clamp(68px,10vw,116px);line-height:.9}.home-tagline{text-align:center;color:var(--soft);margin-top:12px;font-size:19px}.home-name{margin-top:40px}.home-name input{height:60px;font-size:20px}.home-modes{gap:12px;margin-top:18px;display:flex}.mode-btn{background:var(--tone,var(--text));min-width:0;height:100px;color:var(--ink);text-align:left;cursor:pointer;border:none;border-radius:20px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:flex-start;padding:0 22px;text-decoration:none;transition:transform 80ms,filter .15s;display:flex;box-shadow:inset 0 -6px #0003}.mode-btn:hover{color:var(--ink);filter:brightness(1.06)}.mode-btn:active{transform:translateY(2px)}.mode-btn:disabled{opacity:.6}.mode-btn-title{font-family:var(--display);font-size:34px;font-weight:900;line-height:1}.mode-btn-sub{opacity:.75;margin-top:5px;font-size:14px;font-weight:700}.mode-btn-sub .mono{font-size:13px}.friends{flex-direction:column;gap:8px;margin-top:26px;display:flex}.friends-head{justify-content:space-between;align-items:baseline;display:flex}.friends-panel{background:var(--deck);border-radius:20px;align-items:center;gap:12px;padding:12px;display:flex}.friends-create{flex:1 1 0}.friends-or{text-align:center;width:28px;color:var(--faint);font-size:14px;font-weight:700}.friends-join{flex:1 1 0;gap:8px;min-width:0;display:flex}.friends-join .code-input{flex:auto;width:0;height:64px;padding:0 10px}.friends-join .btn{flex-shrink:0;width:84px;padding:0}.friends-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:4px;display:grid}.home-board{background:var(--deck);z-index:1;border-radius:20px;flex-direction:column;gap:12px;width:300px;padding:22px;display:flex;position:absolute;top:250px;right:48px}.home-board-head h2{font-family:var(--display);font-size:26px;font-weight:800}.mini-board{margin:0;padding:0;list-style:none}.mini-board li{border-bottom:1px solid var(--line-soft);align-items:center;gap:10px;height:42px;display:flex}.mini-board li.me{color:var(--butter)}.mini-board .who{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}.mini-board .score{font-family:var(--mono);font-size:14px;font-weight:800}.rank{width:22px;font-family:var(--mono);color:var(--faint);flex-shrink:0;font-size:13px;font-weight:800}.rank-1{color:var(--butter)}.rank-2{color:var(--soft)}.rank-3{color:var(--medal-3)}.credits{text-align:center;color:var(--faint);font-size:13px;position:absolute;bottom:24px;left:0;right:0}.page{min-height:100dvh}.page-top{align-items:center;gap:14px;height:76px;padding:0 56px;display:flex}.card{background:var(--deck);border-radius:20px;flex-direction:column;gap:20px;padding:26px;display:flex}.card-lead{color:var(--soft);font-size:17px;line-height:1.5}.card .tabs{background:var(--ink);align-self:flex-start}.daily-body{gap:64px;padding:12px 56px 48px;display:flex}.daily-main{flex-direction:column;flex-shrink:0;gap:24px;width:540px;display:flex}.daily-title{font-family:var(--display);color:var(--tangerine);font-size:clamp(56px,7vw,76px);font-weight:900;line-height:.95}.daily-sub{color:var(--soft);margin-top:8px;font-size:18px}.result-stats{align-items:flex-end;gap:28px;display:flex}.stat{flex-direction:column;gap:4px;display:flex}.stat.right{align-items:flex-end;margin-left:auto}.stat-label{color:var(--muted);font-size:15px;font-weight:700}.stat-value{font-family:var(--display);font-size:44px;font-weight:900;line-height:1}.stat-value.big{font-size:72px}.stat-value.butter{color:var(--butter)}.speed-cells{gap:8px;margin:0;padding:0;list-style:none;display:flex}.speed-cell{height:74px;color:var(--ink);border-radius:14px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;display:flex}.speed-cell .mono{font-size:15px}.speed-word{opacity:.75;font-size:12px;font-weight:700}.speed-cell.fast{background:var(--aqua)}.speed-cell.slow{background:var(--butter)}.speed-cell.miss{background:var(--ink);color:var(--muted);border:2px dashed var(--line)}.round-list{margin:0;padding:0;list-style:none}.round-list li{border-bottom:1px solid var(--line-soft);align-items:center;gap:14px;padding:10px 0;display:flex}.round-list .n{width:18px;font-family:var(--mono);color:var(--faint);font-size:13px;font-weight:800}.round-list .song{flex-direction:column;flex:1;min-width:0;display:flex}.round-list .song span{color:var(--muted);font-size:13px}.round-list .time{font-family:var(--mono);font-size:13px;font-weight:800}.time.fast{color:var(--aqua)}.time.slow{color:var(--butter)}.time.miss{color:var(--rose)}.daily-reset{color:var(--muted);align-items:baseline;gap:14px;padding:0 4px;font-weight:700;display:flex}.daily-clock{color:var(--butter);font-size:28px}.daily-boards{flex-direction:column;flex:1;gap:14px;min-width:0;padding-top:14px;display:flex}.boards-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.boards-head h2{font-family:var(--display);font-size:34px;font-weight:800}.board-caption{color:var(--muted);margin-bottom:4px;font-size:14px}.board-list{margin:0;padding:0;list-style:none}.board-list li{border-bottom:1px solid var(--line-soft);border-radius:12px;align-items:center;gap:14px;height:58px;padding:0 14px;display:flex}.board-list li.me{background:var(--raise);border-bottom-color:#0000}.board-list .rank{width:26px;font-size:14px}.board-list .who{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:16px;font-weight:800;overflow:hidden}.board-list .meta{color:var(--muted);font-size:14px}.board-list .score{text-align:right;width:80px;font-family:var(--mono);font-size:16px;font-weight:800}.room{height:100dvh;display:flex;overflow:hidden}.stage{flex-direction:column;flex:1;min-width:0;display:flex}.stage-body{flex:1;min-height:0;overflow:auto}.topbar{flex-shrink:0;align-items:center;gap:14px;height:72px;padding:0 28px;display:flex}.code-chip{background:var(--deck);letter-spacing:3px;height:34px;color:var(--butter);border-radius:10px;align-items:center;padding:0 12px;font-size:14px;display:inline-flex}.topbar-pack{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.topbar-clock{color:var(--aqua);white-space:nowrap;font-size:15px;font-weight:700}.round-progress{align-items:center;gap:10px;font-size:14px;display:inline-flex}.pips{gap:4px;display:inline-flex}.pips span{background:var(--line);border-radius:3px;width:14px;height:6px}.pips span.done{background:var(--soft)}.pips span.now{background:var(--butter);width:26px}.volume{align-items:center;gap:8px;display:inline-flex}.volume input[type=range],.slider{appearance:none;background:linear-gradient(90deg, var(--track-fill,var(--butter)) var(--fill,50%), var(--line) var(--fill,50%));cursor:pointer;border-radius:4px;outline:none;height:8px}.volume input[type=range]{width:96px}.volume input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--text);width:22px;height:22px;box-shadow:0 0 0 4px var(--ink);border-radius:50%}.slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--text);width:22px;height:22px;box-shadow:0 0 0 4px var(--ink);border-radius:50%}.volume input[type=range]::-moz-range-thumb{background:var(--text);border:none;border-radius:50%;width:22px;height:22px}.slider::-moz-range-thumb{background:var(--text);border:none;border-radius:50%;width:22px;height:22px}.slider{--track-fill:var(--tangerine);width:100%}.slider::-webkit-slider-thumb{width:26px;height:26px;box-shadow:0 0 0 5px var(--ink)}.lobby{flex-direction:column;min-height:100%;padding:4px 40px 0;display:flex}.lobby-cols{flex:1;gap:48px;display:flex}.lobby-left{flex-direction:column;flex-shrink:0;gap:30px;width:380px;display:flex}.lobby-right{flex-direction:column;flex:1;gap:28px;min-width:0;padding-bottom:24px;display:flex}.lobby-title{font-family:var(--display);font-size:40px;font-weight:900;line-height:1}.code-card{background:var(--butter);color:var(--ink);border-radius:22px;flex-direction:column;gap:6px;padding:22px 24px 24px;display:flex;transform:rotate(-1.5deg);box-shadow:inset 0 -7px #00000029}.code-card-label{opacity:.7;font-size:15px;font-weight:800}.code-card-code{font-family:var(--mono);letter-spacing:10px;font-size:76px;font-weight:800;line-height:1}.code-card-copy{--tone:var(--ink);color:var(--butter);box-shadow:none;align-self:flex-start;margin-top:10px}.code-card-copy:hover{color:var(--butter)}.roster{flex-direction:column;gap:16px;display:flex}.roster-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 8px;margin:0;padding:0;list-style:none;display:grid}.roster-player{flex-direction:column;align-items:center;gap:8px;display:flex;position:relative}.roster-player.away{opacity:.4}.roster-crown{width:24px;height:16px;color:var(--butter);z-index:1;position:absolute;top:-13px}.roster-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:700;overflow:hidden}.roster-player.open .roster-name{color:var(--faint)}.avatar-open{border:2px dashed var(--line);border-radius:50%;width:72px;height:72px}.config{flex-direction:column;gap:12px;display:flex}.mode-toggle{gap:10px;display:flex}.mode-opt{background:var(--deck);min-height:76px;color:var(--text);text-align:left;cursor:pointer;border:none;border-radius:16px;flex:1 1 0;align-items:center;gap:14px;padding:12px 18px;display:flex}.mode-opt:hover{background:var(--raise)}.mode-opt>span{flex-direction:column;display:flex}.mode-opt b{font-size:18px;font-weight:800}.mode-opt span span{color:var(--muted);font-size:14px;font-weight:600}.mode-opt.on{background:var(--tangerine);color:var(--ink);box-shadow:var(--press)}.mode-opt.on span span{color:var(--ink);opacity:.75}.switch{background:var(--deck);height:42px;color:var(--soft);cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}.switch-track{background:var(--line);border-radius:9px;width:32px;height:18px;transition:background .2s;position:relative}.switch-knob{background:var(--muted);width:12px;height:12px;transition:transform .2s var(--ease), background .2s;border-radius:50%;position:absolute;top:3px;left:3px}.switch.on{color:var(--text)}.switch.on .switch-track{background:var(--tangerine)}.switch.on .switch-knob{background:var(--ink);transform:translate(14px)}.pack-chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--deck);height:44px;color:var(--soft);cursor:pointer;border:none;border-radius:22px;align-items:center;gap:8px;padding:0 16px;font-size:15px;font-weight:800;display:inline-flex}.chip:hover{background:var(--raise);color:var(--text)}.chip.on{color:var(--tangerine);background:#ff7a2f2e}.import{flex-direction:column;gap:10px;display:flex}.import-row{align-items:flex-end;gap:10px;display:flex}.import-row .field{flex:1}.import-row .btn{height:56px}.pool-rows{flex-direction:column;gap:10px;display:flex}.pool-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pool-who{min-width:100px;font-weight:800}.pool-chips{flex-wrap:wrap;gap:8px;display:flex}.pool-chip{background:var(--deck);border-radius:14px;align-items:center;gap:10px;padding:8px 14px 8px 8px;display:inline-flex}.pool-chip.idle{opacity:.6}.pool-icon{background:var(--raise);width:32px;height:32px;font-family:var(--mono);color:var(--butter);border-radius:9px;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.pool-meta{flex-direction:column;line-height:1.25;display:flex}.pool-meta b{font-size:14px}.pool-meta span{color:var(--muted);font-size:12px}.diff-name{color:var(--tangerine);font-size:16px;font-weight:800}.slider-scale{color:var(--faint);justify-content:space-between;font-size:13px;font-weight:700;display:flex}.slider-scale .on{color:var(--tangerine)}.round-stops{gap:8px;display:flex}.stop{background:var(--deck);height:48px;color:var(--soft);cursor:pointer;border:none;border-radius:12px;flex:1;font-size:16px}.stop:hover{background:var(--raise)}.stop.on{background:var(--text);color:var(--ink)}.lobby-foot{border-top:1px solid var(--line-soft);background:var(--ink);align-items:center;gap:20px;min-height:104px;margin-top:auto;padding:16px 0;display:flex;position:sticky;bottom:0}.settings-line{color:var(--soft);flex:1;font-size:16px}.start-btn{font-size:30px}.lobby-error{padding-bottom:16px}.play{flex-direction:column;align-items:center;gap:12px;min-height:100%;padding:6px 24px 28px;display:flex}.answer{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:118px;display:flex}.artist-hint{visibility:hidden;border-radius:17px;align-items:center;gap:8px;min-height:34px;padding:0 14px;display:inline-flex}.artist-hint.on{visibility:visible;animation:hint-land .6s var(--ease);background:#ffd36b24}@keyframes hint-land{0%{opacity:0;transform:scale(.6);box-shadow:0 0 #ffd36b99}55%{opacity:1;transform:scale(1.08)}to{transform:none;box-shadow:0 0 0 14px #ffd36b00}}.artist-hint-label{color:var(--butter);font-size:13px;font-weight:700}.artist-hint b{font-size:16px}.mask{flex-wrap:wrap;justify-content:center;gap:8px 20px;max-width:900px;display:flex}.mask-word{gap:5px;display:flex}.tile{background:var(--deck);width:clamp(24px,3vw,40px);height:clamp(32px,4vw,52px);box-shadow:inset 0 -3px 0 var(--line);font-family:var(--display);border-radius:9px;justify-content:center;align-items:center;font-size:clamp(20px,2.4vw,32px);font-weight:900;display:inline-flex}.mask{perspective:600px}.tile.shown{background:var(--text);color:var(--ink);animation:flip-in .55s var(--ease) backwards;animation-delay:calc(var(--i,0) * 32ms);box-shadow:inset 0 -3px #00000026}.mask.solved .tile.shown{background:var(--aqua);animation-name:flip-in-solved}@keyframes flip-in{0%{background:var(--butter);transform:rotateX(90deg)}55%{background:var(--butter);transform:rotateX(-12deg)}to{transform:none}}@keyframes flip-in-solved{0%{transform:rotateX(90deg)}55%{transform:rotateX(-12deg)}to{transform:none}}@keyframes pop{0%{transform:scale(.7)}to{transform:scale(1)}}.answer-reveal h1{font-family:var(--display);animation:rise .45s var(--ease);font-size:clamp(40px,5vw,64px);font-weight:900;line-height:1}.answer-reveal p{color:var(--soft);margin-top:6px;font-size:19px;font-weight:600}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.viz{width:clamp(260px, min(92vw, calc(100dvh - var(--reserve,300px))), 760px);aspect-ratio:1;flex-shrink:0;position:relative}.viz-canvas{width:100%;height:100%;position:absolute;inset:0}.viz-disc{aspect-ratio:1;background:var(--rail);border-radius:50%;justify-content:center;align-items:center;width:52%;display:flex;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.viz-grooves,.viz-grooves:before,.viz-grooves:after{border:1px solid var(--line-soft);border-radius:50%;position:absolute}.viz-grooves{inset:7%}.viz-grooves:before{content:"";inset:9%}.viz-grooves:after{content:"";inset:20%}.viz-clock{flex-direction:column;align-items:center;gap:4px;transition:opacity .35s;display:flex;position:relative}.viz-timer{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:clamp(44px,8vmin,84px);font-weight:800;line-height:1}.viz-timer.urgent{color:var(--rose);animation:1s ease-in-out infinite tick}.viz-timer.glyph{color:var(--butter);font-family:Noto Music,serif;font-weight:400}@keyframes tick{50%{transform:scale(1.08)}}.viz-caption{color:var(--muted);text-align:center;max-width:80%;font-size:14px;font-weight:700}.viz-disc.has-art .viz-clock{opacity:0}.viz-label{opacity:0;transition:opacity .45s, transform .45s var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:11%;overflow:hidden;transform:scale(.94)}.viz-label.on{opacity:1;transform:scale(1)}.viz-label img{object-fit:cover;width:100%;height:100%}.viz-label.on img{animation:9s linear infinite spin}.viz-spindle{aspect-ratio:1;background:var(--ink);border-radius:50%;width:9%;position:absolute;box-shadow:0 0 0 4px #f5f1ea59}@keyframes spin{to{transform:rotate(360deg)}}.status-line{min-height:30px;color:var(--soft);text-align:center;justify-content:center;align-items:center;gap:12px;font-size:16px;display:flex}.status-line .good{color:var(--aqua);font-weight:800}.status-line .bad{color:var(--rose);font-weight:700}.status-line .warm{color:var(--butter);font-weight:700}.choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(900px,100%);display:grid}.choice{background:var(--tone,var(--text));min-height:80px;color:var(--ink);text-align:left;cursor:pointer;border:none;border-radius:16px;align-items:center;gap:14px;padding:10px 18px;transition:opacity .25s,transform 80ms,background .25s;display:flex;position:relative;box-shadow:inset 0 -5px #0000002e}.choice:active:not(:disabled){transform:translateY(2px)}.choice:disabled{cursor:default}.choices.locked:not(.revealed) .choice:not(.picked):not(.right):not(.wrong):not(.dim){opacity:.55}.choice-mark{flex-shrink:0;width:34px;font-size:32px}.choice-text{flex-direction:column;flex:1;min-width:0;display:flex}.choice-title{font-size:18px;font-weight:800;line-height:1.2}.choice-artist{opacity:.7;font-size:14px;font-weight:600}.choice-tag{color:var(--rose);font-size:13px;font-weight:800}.choice-check{background:var(--ink);width:32px;height:32px;color:var(--tone,var(--text));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.choice-key{font-family:var(--mono);opacity:.45;font-size:10px;font-weight:800;position:absolute;top:8px;right:10px}.choice .stack{--stack-ground:var(--tone)}.choice.picked{box-shadow:inset 0 -5px 0 #0000002e, 0 0 0 3px var(--ink), 0 0 0 6px var(--tone)}.choice.wrong,.choice.dim{background:var(--deck);color:var(--text);box-shadow:none}.choice.wrong .choice-mark,.choice.dim .choice-mark{color:var(--tone,var(--text))}.choice.wrong{background:#ff4d6d1f}.choice.wrong .stack,.choice.dim .stack{--stack-ground:var(--deck)}.choice.dim{opacity:.45}.guess-bar{gap:8px;width:min(620px,100%);display:flex}.guess-bar input{flex:1}.guess-bar .btn{min-width:96px;height:56px}.skip-row{justify-content:center;min-height:44px;display:flex}.skip-row .btn-quiet{opacity:0;transition:opacity .2s}.skip-row .btn-quiet.on{opacity:1}.sidebar{background:var(--rail);flex-direction:column;flex-shrink:0;width:370px;min-height:0;display:flex}.side-head{align-items:baseline;gap:10px;padding:20px 22px 10px;display:flex}.side-head h2{font-family:var(--display);font-size:24px;font-weight:800}.side-head .section-note{margin-left:auto;font-size:12px}.guessing{font-family:var(--mono);letter-spacing:1px;color:var(--tangerine);margin-left:auto;font-size:11px;font-weight:800}.scores{flex-direction:column;gap:2px;margin:0;padding:0 12px;list-style:none;display:flex}.score-row{height:50px;transition:transform .5s var(--ease);border-radius:12px;align-items:center;gap:12px;padding:0 12px;display:flex;position:relative}.score-row.you{background:var(--raise)}.score-row.away{opacity:.45}.score-row .rank{width:16px}.score-row .rank.lead{color:var(--butter)}.score-row .nm{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:16px;font-weight:700;overflow:hidden}.score-row .answered{font-size:10px}.score-row .gain{font-size:12px}.score-row .pts{text-align:right;width:60px;font-size:15px}.pts.bumped{animation:bump .6s var(--ease)}@keyframes bump{30%{color:var(--butter);transform:scale(1.25)}}.kick{background:var(--raise);width:28px;height:28px;color:var(--soft);cursor:pointer;opacity:0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s;display:inline-flex;position:absolute;right:-6px}.score-row:hover .kick,.score-row:focus-within .kick{opacity:1}.kick:hover{color:var(--rose)}@media (hover:none){.kick{opacity:.7}}.kick-bar{background:var(--raise);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 12px 10px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.kick-bar.live{background:#ff4d6d1f}.kick-acts{gap:6px;margin-left:auto;display:inline-flex}.chat{border-top:1px solid var(--line-soft);flex-direction:column;flex:1;min-height:0;margin-top:12px;display:flex}.chat-log{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:8px;min-height:120px;padding:0 22px 8px;font-size:15px;line-height:1.4;display:flex;overflow-y:auto}.chat-log>:first-child{margin-top:auto}.msg-text{color:var(--soft)}.msg.private .msg-text{color:var(--muted)}.lock{color:var(--faint);margin-left:6px;font-size:11px;font-weight:700}.msg.nudge{color:var(--butter);font-weight:700}.msg.solve{align-items:center;gap:8px;font-weight:700;display:flex}.solve-dot{border-radius:50%;width:8px;height:8px}.solve-time{opacity:.85;font-size:12px}.msg.answer{background:var(--deck);border-radius:12px;flex-direction:column;padding:10px 12px;display:flex}.answer-kicker{color:var(--muted);font-size:12px;font-weight:700}.msg.answer b{font-size:16px}.msg.answer span:last-child:not(.answer-kicker){color:var(--soft);font-size:13px}.msg.sysline{color:var(--muted);font-size:13px}.chat-note{color:var(--muted);margin:0 22px 8px;font-size:13px}.chat-form{gap:8px;padding:12px 14px 14px;display:flex}.chat-form input{background:var(--ink);flex:1;height:48px;font-size:15px}.final{gap:56px;padding:4px 48px 40px;display:flex}.final-left{flex-direction:column;flex-shrink:1;gap:22px;width:760px;min-width:0;display:flex}.final-right{flex-direction:column;flex:1;gap:12px;min-width:300px;padding-top:12px;display:flex}.final-head{flex-wrap:wrap;align-items:baseline;gap:6px 16px;display:flex}.final-head h1{font-family:var(--display);font-size:clamp(48px,6vw,72px);font-weight:900;line-height:1}.final-head p{color:var(--soft);font-size:17px}.podium{justify-content:center;align-items:flex-end;gap:12px;margin-top:6px;display:flex}.podium-col{--d:0s;flex-direction:column;align-items:center;gap:10px;width:210px;display:flex}.podium-col.place-1{--d:.4s;width:230px}.podium-col.place-2{--d:.2s}.podium-col.place-3{--d:0s}.podium-block{transform-origin:bottom;animation:grow .6s var(--ease) backwards;animation-delay:var(--d)}.podium-col>.avatar,.podium-name{animation:drop .5s var(--ease) backwards;animation-delay:calc(var(--d) + .45s)}.podium-crown{width:44px;height:30px;color:var(--butter);animation:crown .7s var(--ease) backwards;animation-delay:1.2s;transform:rotate(-8deg)}@keyframes grow{0%{transform:scaleY(0)}}@keyframes drop{0%{opacity:0;transform:translateY(-24px)}}@keyframes crown{0%{opacity:0;transform:translateY(-40px)rotate(-30deg)scale(.6)}60%{opacity:1;transform:translateY(4px)rotate(-4deg)scale(1.1)}to{transform:rotate(-8deg)}}.final-head h1{animation:rise .5s var(--ease) backwards}.final-rest li{animation:rise .45s var(--ease) backwards;animation-delay:calc(.9s + var(--i,0) * 70ms)}.honor{animation:rise .45s var(--ease) backwards;animation-delay:calc(1.3s + var(--i,0) * .12s)}.song{animation:rise .4s var(--ease) backwards;animation-delay:calc(.3s + var(--i,0) * 45ms)}.podium-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:18px;font-weight:800;overflow:hidden}.podium-block{background:var(--hue);color:var(--ink);border-radius:16px 16px 0 0;flex-direction:column;align-self:stretch;align-items:center;padding-top:14px;display:flex;box-shadow:inset 0 -6px #00000024}.podium-place{font-family:var(--display);font-size:48px;font-weight:900;line-height:1}.place-1 .podium-place{font-size:60px}.final-rest{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.final-rest li{background:var(--deck);border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:6px 14px;display:flex}.final-rest li.you{background:var(--raise)}.final-rest .rank{width:auto}.final-rest .nm{flex-direction:column;flex:1;min-width:0;font-weight:700;display:flex}.final-rest small{color:var(--muted);font-size:12px;font-weight:600}.final-rest .pts{font-size:14px}.solo-stats{flex-wrap:wrap;gap:10px;display:flex}.solo-stat{background:var(--deck);border-radius:14px;padding:12px 16px;font-size:16px;font-weight:700}.honors{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.honor{background:var(--deck);border-radius:16px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.honor-cap{color:var(--muted);font-size:14px;font-weight:700}.honor-row{align-items:center;gap:10px;display:flex}.honor-value{font-family:var(--display);font-size:40px;font-weight:900;line-height:1}.honor-sub{color:var(--soft);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.recap{margin:0;padding:0;list-style:none}.song{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;min-height:56px;padding:6px 0;display:flex}.song .num{width:22px;color:var(--faint);font-size:12px}.song.mine .num{color:var(--aqua)}.song.missed .info{opacity:.6}.cover-glyph{font-size:20px}.cover{background:var(--raise);width:38px;height:38px;color:var(--faint);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.cover img{object-fit:cover;width:100%;height:100%}.song .info{flex-direction:column;flex:1;min-width:0;display:flex}.song .info b{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.song .info span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.song .who{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;font-size:13px;display:flex}.first-solver{font-weight:700}.first-solver .mono{font-size:12px}.song .count{color:var(--muted)}.song .none{color:var(--faint)}.song .fast{color:var(--aqua)}.song .ok{color:var(--butter)}.song .slow{color:var(--tangerine)}.final-actions{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.final-actions .grow{flex:1}.overlay{z-index:50;background:#0a090cd1;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.gate{background:var(--deck);width:min(420px,100%);animation:rise .3s var(--ease);border-radius:20px;flex-direction:column;gap:16px;padding:28px;display:flex}.gate h1{font-family:var(--display);font-size:38px;font-weight:900;line-height:1}.gate .field input{background:var(--ink)}.gate-back{color:var(--muted);align-self:center;font-size:14px;font-weight:600;text-decoration:none}@media (width<=1240px){.home-board{width:min(540px,100%);margin:36px auto 0;position:relative;top:auto;right:auto}.home-note.note-c{display:none}}@media (width<=1100px){.lobby-cols{flex-direction:column;gap:28px}.lobby-left{width:100%}.code-card{align-self:flex-start}.roster-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}.final{flex-direction:column;gap:32px}.final-left{width:100%}.daily-body{flex-direction:column;gap:40px}.daily-main{width:min(540px,100%)}}@media (width<=860px){.room{flex-direction:column;height:auto;min-height:100dvh;overflow:visible}.stage-body{overflow:visible}.sidebar{width:100%}.chat-log{max-height:50vh}.topbar{flex-wrap:wrap;gap:10px;height:auto;min-height:60px;padding:8px 16px}.topbar-pack,.volume input[type=range],.pips{display:none}.lobby{padding:4px 16px 0}.play{padding:4px 12px 20px}.final{padding:4px 16px 32px}.page-top{padding:0 16px}.daily-body{padding:8px 16px 40px}.choice{min-height:72px;padding:10px 14px}.choice-title{font-size:16px}.room.bar-input{padding-bottom:88px}.room.bar-input .guess-bar{left:0;right:0;bottom:var(--vv-bottom);z-index:20;background:var(--ink);border-top:1px solid var(--line-soft);width:auto;padding:12px;position:fixed}}@media (width<=600px){.home{padding:0 16px 64px}.home-top{height:64px}.note-a{display:none}.note-b{width:40px;height:40px;top:18px;left:16px}.home-name{margin-top:28px}.home-modes{flex-direction:column}.mode-btn{flex:none;height:88px}.friends-panel{flex-wrap:wrap}.friends-create{flex:100%}.friends-or{display:none}.friends-join{flex:100%}.friends-options{grid-template-columns:1fr}.code-card-code{font-size:60px}.mode-toggle{flex-direction:column}.round-stops{flex-wrap:wrap}.stop{flex:60px}.lobby-foot{flex-direction:column;align-items:stretch}.start-btn{width:100%}.choices{grid-template-columns:1fr 1fr;gap:8px}.choice{flex-direction:column;align-items:flex-start;gap:4px}.choice-mark{width:auto;font-size:22px}.podium-col,.podium-col.place-1{flex:1;width:auto}.result-stats{flex-wrap:wrap}.stat-value.big{font-size:56px}.speed-cell{height:64px}.speed-cell .mono{font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.room.solo .lobby-right{width:100%;max-width:960px;margin:0 auto}.room.solo .lobby-foot{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.play{--reserve:322px;justify-content:center}.play.barred{--reserve:444px}.play.choosing{--reserve:464px}.play.choosing.solo{--reserve:522px}@media (width<=480px){.topbar .wordmark{display:none}}.final.solo{flex-direction:column;align-items:stretch;gap:24px;width:100%;max-width:760px;margin:0 auto;padding-top:20px}.final.solo .final-head{text-align:center;flex-direction:column;align-items:center}.final.solo .final-head h1{color:var(--butter);font-size:clamp(56px,8vw,96px)}.final.solo .solo-stats{justify-content:center}.final-songs{flex-direction:column;gap:12px;display:flex}.final.solo .final-actions{justify-content:center}.answer{min-height:158px}.play.choosing .answer{min-height:118px}.home-title .wordmark{flex-direction:column;gap:.12em}.home-tagline{margin-top:22px}.home-title{justify-content:center;display:flex}.slider-scale button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:4px 0}.slider-scale button:hover{color:var(--soft)}.slider-scale button.on{color:var(--tangerine)}@media (width<=600px){.slider-scale{font-size:11px}}.stop-slider{--thumb:26px;padding:0 44px;position:relative}.stop-slider .slider{z-index:1;width:100%;margin:0;display:block;position:relative}.stop-slider .slider::-moz-range-thumb{width:26px;height:26px}.stop-slider .slider-scale{height:40px;display:block;position:relative}.stop-slider .slider-scale button{top:8px;left:calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--at) / var(--stops));white-space:nowrap;text-align:center;position:absolute;transform:translate(-50%)}.stop-slider .slider-scale button:before{content:"";background:var(--faint);border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;top:-4px;left:50%}.stop-slider .slider-scale button.on:before{background:var(--tangerine)}@media (width<=600px){.stop-slider{padding:0 24px}.stop-slider .slider-scale{height:48px}.stop-slider .slider-scale button{white-space:normal;width:64px;line-height:1.2}}
