.play{--unit: calc(var(--disc) / 100);--beat: .469s;--font-display: "Arial Black", "Helvetica Neue", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif;position:relative;display:grid;place-items:center}.play--message{flex-direction:column;gap:calc(var(--unit) * 2);font-size:calc(var(--unit) * 2);text-align:center;padding:12%}.play__dim{color:var(--text-dim);font-size:calc(var(--unit) * 1.4);font-weight:600}.play__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.08) brightness(.9);pointer-events:none}.play__backdrop--still{filter:blur(calc(var(--unit) * 1.2)) saturate(1.05) brightness(.85);transform:scale(1.15)}.play__veil{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,transparent 26%,color-mix(in srgb,var(--accent) 18%,transparent) 74%,transparent 100%),radial-gradient(circle at 50% 50%,#0606129e 28%,#04040ce6);animation:play-veil calc(var(--beat) * 2) ease-in-out infinite alternate}.play__vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,transparent 58%,rgba(3,3,10,.72) 100%);box-shadow:inset 0 0 calc(var(--unit) * 7) color-mix(in srgb,var(--accent) 15%,transparent)}@keyframes play-veil{0%{opacity:.88}to{opacity:1}}.play__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.play__progress{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.play__progress-track,.play__progress-fill,.play__progress-head{transform-box:view-box;transform-origin:50% 50%}.play__progress-track,.play__progress-fill{fill:none;stroke-linecap:round;transform:rotate(-90deg)}.play__progress-track{stroke:#e8f2ff14;stroke-width:.5}.play__progress-fill{stroke:var(--accent);stroke-width:.55;opacity:.8;transition:stroke-dashoffset .2s cubic-bezier(.22,1,.36,1)}.play__progress-head{fill:#e8f2ff;opacity:.8;transition:transform .2s cubic-bezier(.22,1,.36,1)}.play__hud{position:absolute;display:flex;align-items:center;gap:calc(var(--unit) * 1);pointer-events:none}.play__hud--top{top:6%;flex-direction:column;gap:calc(var(--unit) * .4)}.play__difficulty{padding:calc(var(--unit) * .3) calc(var(--unit) * 1.6);border-radius:var(--radius-pill);background:var(--accent);font-family:var(--font-display);font-size:calc(var(--unit) * 1.6);font-weight:900;letter-spacing:.08em;text-transform:uppercase;transform:skew(-8deg);padding-right:calc(var(--unit) * 1.8);box-shadow:0 calc(var(--unit) * .3) 0 #00000073;animation:hud-beat var(--beat) cubic-bezier(.12,.85,.3,1) infinite}@keyframes hud-beat{0%{filter:brightness(1.3)}55%,to{filter:brightness(1)}}.play__level{font-family:var(--font-display);font-size:calc(var(--unit) * 2.6);font-weight:900;line-height:1;transform:skew(-8deg);padding-right:.12em;font-variant-numeric:tabular-nums;text-shadow:0 calc(var(--unit) * .3) 0 rgba(0,0,0,.55)}.play__hud--title{bottom:1.5%;flex-direction:column;gap:0;max-width:46%;text-align:center}.play__song{font-size:calc(var(--unit) * 1.7);text-shadow:0 2px 0 rgba(0,0,0,.5)}.play__artist{color:var(--text-dim);font-size:calc(var(--unit) * 1.05);font-weight:600}.play__combo{position:absolute;display:flex;flex-direction:column;align-items:center;gap:calc(var(--unit) * .2);pointer-events:none}.play__combo-label{font-size:calc(var(--unit) * .95);font-weight:800;letter-spacing:.16em;color:var(--text-faint)}.play__combo[data-active=true] .play__combo-label{color:color-mix(in srgb,var(--accent) 70%,#ffffff)}.play__combo[data-muted=true]{opacity:.2}.play__combo-row{display:flex;align-items:baseline;gap:calc(var(--unit) * .5)}.play__combo-value{display:inline-block;font-family:var(--font-display);font-size:calc(var(--unit) * 5);font-weight:900;line-height:1;transform:skew(-8deg);padding-right:.12em;font-variant-numeric:tabular-nums;text-shadow:0 calc(var(--unit) * .4) 0 rgba(0,0,0,.6);animation:combo-pop .22s cubic-bezier(.3,1.6,.5,1)}.play__combo-total{color:var(--text-faint);font-size:calc(var(--unit) * 1.5);font-variant-numeric:tabular-nums}@keyframes combo-pop{0%{transform:skew(-8deg) scale(1.16);filter:brightness(1.5)}to{transform:skew(-8deg) scale(1);filter:brightness(1)}}.play__countin{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none}.play__countin-digit{font-family:var(--font-display);font-size:calc(var(--unit) * 26);font-weight:900;line-height:1;color:transparent;-webkit-text-stroke:calc(var(--unit) * .36) var(--accent);transform:skew(-8deg);padding-right:.12em;animation:countin var(--beat) cubic-bezier(.12,.85,.3,1) both}@keyframes countin{0%{opacity:.95;transform:skew(-8deg) scale(1.45)}45%{opacity:.9;transform:skew(-8deg) scale(1)}to{opacity:0;transform:skew(-8deg) scale(.9)}}.play__controls{position:absolute;bottom:5%;display:flex;align-items:center;gap:calc(var(--unit) * 1.4)}.play__button{display:grid;place-items:center;min-width:calc(var(--unit) * 6);height:calc(var(--unit) * 6);padding:0 calc(var(--unit) * 1.4);border-radius:var(--radius-pill);background:var(--surface-raised);border:2px solid var(--border);font-size:calc(var(--unit) * 1.5);transition:transform 70ms ease-out}.play__button--main{width:calc(var(--unit) * 8);height:calc(var(--unit) * 8);background:linear-gradient(180deg,#fff3b0,var(--nav));color:var(--nav-ink);font-size:calc(var(--unit) * 2.4);box-shadow:var(--shadow-button)}.play__button:active{transform:scale(.94)}.play__button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.play__time{color:var(--text-dim);font-size:calc(var(--unit) * 1.4);font-variant-numeric:tabular-nums}.play__time-span{color:var(--text-faint)}.play__exit{padding:calc(var(--unit) * .8) calc(var(--unit) * 2.4);border-radius:var(--radius-pill);background:var(--surface-raised);border:2px solid var(--border);font-size:calc(var(--unit) * 1.5)}.play--intro .play__canvas{animation:enter-field .62s cubic-bezier(.22,1,.36,1) both}.play--intro .play__progress{animation:enter-fade .7s .22s ease-out both}.play--intro .play__hud--top{animation:enter-drop .42s .12s cubic-bezier(.34,1.42,.64,1) both}.play--intro .play__combo{animation:enter-fade .42s .22s ease-out both}.play--intro .play__hud--title{animation:enter-rise .42s .3s cubic-bezier(.34,1.42,.64,1) both}.play--intro .play__controls{animation:enter-rise .42s .38s cubic-bezier(.34,1.42,.64,1) both}@keyframes enter-field{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes enter-fade{0%{opacity:0}to{opacity:1}}@keyframes enter-drop{0%{opacity:0;transform:translateY(calc(var(--unit) * -2.5))}to{opacity:1;transform:translateY(0)}}@keyframes enter-rise{0%{opacity:0;transform:translateY(calc(var(--unit) * 2.5))}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.play__veil,.play__difficulty,.play__combo-value,.play__countin-digit,.play--intro .play__canvas,.play--intro .play__progress,.play--intro .play__hud--top,.play--intro .play__combo,.play--intro .play__hud--title,.play--intro .play__controls{animation:none}.play__progress-fill,.play__progress-head{transition:none}}.play__field{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}.score{position:absolute;top:15%;display:flex;align-items:baseline;gap:calc(var(--unit) * .8);pointer-events:none}.score__value{font-family:var(--font-display, inherit);font-size:calc(var(--unit) * 3.2);line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 calc(var(--unit) * .25) 0 rgba(0,0,0,.6)}.score__rank{padding:0 calc(var(--unit) * .8);border-radius:var(--radius-sm);background:var(--accent, #a855f7);font-size:calc(var(--unit) * 1.5);letter-spacing:.06em}.verdict{position:absolute;top:38%;font-family:var(--font-display, inherit);font-size:calc(var(--unit) * 2.6);letter-spacing:.08em;pointer-events:none;animation:verdict-pop .5s ease-out forwards;text-shadow:0 0 calc(var(--unit) * 1.2) currentColor}@keyframes verdict-pop{0%{transform:translateY(calc(var(--unit) * 1.2)) scale(.8);opacity:0}20%{transform:translateY(0) scale(1.08);opacity:1}70%{opacity:1}to{transform:translateY(calc(var(--unit) * -1.4));opacity:0}}.settings{position:absolute;bottom:13%;display:flex;flex-direction:column;gap:calc(var(--unit) * .9);width:min(62%,calc(var(--unit) * 44));padding:calc(var(--unit) * 1.6);border-radius:var(--radius-lg);background:#0a0a18f0;border:2px solid var(--border);box-shadow:var(--shadow-card)}.settings__row{display:grid;grid-template-columns:calc(var(--unit) * 8) 1fr calc(var(--unit) * 7);align-items:center;gap:calc(var(--unit) * 1)}.settings__row--toggle{grid-template-columns:calc(var(--unit) * 8) auto 1fr}.settings__label{color:var(--text-dim);font-size:calc(var(--unit) * 1.1);letter-spacing:.1em}.settings__value{font-size:calc(var(--unit) * 1.3);font-variant-numeric:tabular-nums;text-align:right}.settings input[type=range]{width:100%;accent-color:var(--accent, #a855f7);cursor:pointer}.settings input[type=checkbox]{width:calc(var(--unit) * 1.8);height:calc(var(--unit) * 1.8);accent-color:var(--accent, #a855f7);cursor:pointer}.settings__hint{color:var(--text-faint);font-size:calc(var(--unit) * 1);font-weight:600;line-height:1.4}.play__button.is-active{background:var(--accent, #a855f7);color:#fff}.results{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--unit) * 1.2);padding:12%;background:#07070fed;animation:results-in .32s cubic-bezier(.22,1,.36,1) both}@keyframes results-in{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.results__head{display:flex;align-items:center;gap:calc(var(--unit) * 1)}.results__difficulty{padding:calc(var(--unit) * .2) calc(var(--unit) * 1.2);border-radius:var(--radius-pill);background:var(--accent, #a855f7);font-size:calc(var(--unit) * 1.3)}.results__level{font-size:calc(var(--unit) * 1.8)}.results__title{max-width:100%;font-size:calc(var(--unit) * 2.2);text-align:center}.results__score{display:flex;align-items:baseline;gap:calc(var(--unit) * 1.2)}.results__rank{font-family:var(--font-display, inherit);font-size:calc(var(--unit) * 6);line-height:1;color:var(--accent, #a855f7);text-shadow:0 0 calc(var(--unit) * 2) var(--accent, #a855f7)}.results__percent{font-size:calc(var(--unit) * 3.4);font-variant-numeric:tabular-nums}.results__badge{padding:calc(var(--unit) * .3) calc(var(--unit) * 1);border-radius:var(--radius-sm);background:var(--nav);color:var(--nav-ink);font-size:calc(var(--unit) * 1.4)}.results__best{color:var(--text-dim);font-size:calc(var(--unit) * 1.2);font-weight:600}.results__best.is-new{color:var(--nav)}.results__breakdown{display:flex;flex-direction:column;gap:calc(var(--unit) * .4);width:min(100%,calc(var(--unit) * 40))}.results__row{display:grid;grid-template-columns:calc(var(--unit) * 8) 1fr calc(var(--unit) * 4);align-items:center;gap:calc(var(--unit) * .8);font-size:calc(var(--unit) * 1.1)}.results__row-label{letter-spacing:.08em}.results__row-bar{height:calc(var(--unit) * .7);border-radius:var(--radius-pill);background:#ffffff14;overflow:hidden}.results__row-bar>span{display:block;height:100%;border-radius:inherit;transition:width .4s ease-out}.results__row-value{text-align:right;font-variant-numeric:tabular-nums}.results__meta{display:flex;gap:calc(var(--unit) * 2.4)}.results__stat{display:flex;flex-direction:column;align-items:center}.results__stat-label{color:var(--text-faint);font-size:calc(var(--unit) * .95);letter-spacing:.1em}.results__stat-value{font-size:calc(var(--unit) * 1.6);font-variant-numeric:tabular-nums}.results__actions{display:flex;gap:calc(var(--unit) * 1.4)}.results__button{padding:calc(var(--unit) * .9) calc(var(--unit) * 2.6);border-radius:var(--radius-pill);background:var(--surface-raised);border:2px solid var(--border);font-size:calc(var(--unit) * 1.5);letter-spacing:.08em}.results__button--primary{background:linear-gradient(180deg,#ff7aa8,var(--action-next));border-color:transparent}.results__button:active{transform:scale(.96)}.play__corner{position:absolute;z-index:7;display:grid;place-items:center;width:calc(var(--unit) * 5);height:calc(var(--unit) * 5);border-radius:50%;background:#0a0a18b8;border:2px solid var(--border);color:var(--text-dim);font-size:calc(var(--unit) * 1.6);line-height:1;opacity:.42;transition:opacity .18s ease,transform .12s ease}.play__corner:hover,.play__corner.is-active{opacity:1}.play__corner:active{transform:scale(.92)}.play__corner.is-active{color:var(--text);border-color:var(--accent)}.play__corner--tl{top:calc(var(--unit) * 2);left:calc(var(--unit) * 2)}.play__corner--tr{top:calc(var(--unit) * 2);right:calc(var(--unit) * 2)}.play__corner--bl{bottom:calc(var(--unit) * 2);left:calc(var(--unit) * 2)}.play__launch{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--unit) * 2);background:#07070f8c;-webkit-backdrop-filter:blur(calc(var(--unit) * .3));backdrop-filter:blur(calc(var(--unit) * .3))}.play__launch-icon{display:grid;place-items:center;width:calc(var(--unit) * 13);height:calc(var(--unit) * 13);border-radius:50%;background:linear-gradient(180deg,#fff3b0,var(--nav));color:var(--nav-ink);font-size:calc(var(--unit) * 4.4);padding-left:calc(var(--unit) * .6);box-shadow:var(--shadow-button),0 0 calc(var(--unit) * 4) #ffd11a59;animation:launch-pulse 1.6s ease-in-out infinite}.play__launch-label{font-family:var(--font-display, inherit);font-size:calc(var(--unit) * 2);letter-spacing:.14em;text-shadow:0 calc(var(--unit) * .25) 0 rgba(0,0,0,.6)}@keyframes launch-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@media(prefers-reduced-motion:reduce){.play__launch-icon{animation:none}}.tally{position:absolute;top:calc(var(--unit) * 6);display:flex;gap:calc(var(--unit) * 1.6);pointer-events:none;opacity:.5}.tally__cell{display:flex;flex-direction:column;align-items:center;gap:calc(var(--unit) * .1);min-width:calc(var(--unit) * 5)}.tally__label{font-size:calc(var(--unit) * .85);letter-spacing:.1em}.tally__value{font-size:calc(var(--unit) * 1.6);line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 calc(var(--unit) * .2) 0 rgba(0,0,0,.6)}.backdrop{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:var(--backdrop-intensity, 1)}.backdrop__room{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,var(--accent-veil) 0%,transparent 46%);filter:blur(calc(var(--unit) * 6));animation:backdrop-room calc(var(--beat) * 8) ease-in-out infinite alternate}@keyframes backdrop-room{0%{transform:scale(1)}to{transform:scale(1.045)}}.backdrop__disc{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;overflow:hidden}.backdrop__layer{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%}.backdrop__ray-fan--a,.backdrop__ray-fan--b,.backdrop__pulse,.backdrop__ticks{transform-box:view-box;transform-origin:50% 50%}.backdrop__ray-fan--a{fill:var(--ice);opacity:.05;animation:backdrop-spin calc(var(--beat) * 96) linear infinite}.backdrop__ray-fan--b{fill:var(--accent);opacity:.035;animation:backdrop-spin-reverse calc(var(--beat) * 160) linear infinite}@keyframes backdrop-spin{to{transform:rotate(360deg)}}@keyframes backdrop-spin-reverse{to{transform:rotate(-360deg)}}.backdrop__pulse{animation:backdrop-beat var(--beat) var(--e-beat) infinite}@keyframes backdrop-beat{0%{transform:scale(1)}22%{transform:scale(1.015)}to{transform:scale(1)}}.backdrop__ring{fill:none;stroke:var(--accent-line)}.backdrop__ring--1{stroke-width:.5;opacity:.1;stroke-dasharray:18 6;animation:backdrop-dash-1 calc(var(--beat) * 24) linear infinite}.backdrop__ring--2{stroke-width:.35;opacity:.07;stroke-dasharray:4 10;animation:backdrop-dash-2 calc(var(--beat) * 32) linear infinite}.backdrop__ring--3{stroke-width:.25;opacity:.05;stroke-dasharray:40 90;animation:backdrop-dash-3 calc(var(--beat) * 48) linear infinite}@keyframes backdrop-dash-1{to{stroke-dashoffset:-24}}@keyframes backdrop-dash-2{to{stroke-dashoffset:14}}@keyframes backdrop-dash-3{to{stroke-dashoffset:-130}}.backdrop__ticks{animation:backdrop-spin calc(var(--beat) * 40) steps(40,end) infinite}.backdrop__tick{stroke:var(--ice);stroke-width:.8;opacity:.16}.backdrop__tick--quarter{stroke:var(--accent);stroke-width:1.2;opacity:.42}.backdrop__core{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent) 10%,transparent) 0%,transparent 46%);animation:backdrop-core calc(var(--beat) * 2) ease-in-out infinite alternate}@keyframes backdrop-core{0%{opacity:.5}to{opacity:.8}}.backdrop__particles{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;color:var(--accent)}@media(prefers-reduced-motion:reduce){.backdrop *,.backdrop *:before,.backdrop *:after{animation:none!important}}.select{--unit: calc(var(--disc) / 100);--b: var(--beat, 469ms);--dur-tap: var(--t-tap, 70ms);--dur-level: var(--t-level, .18s);--dur-song: var(--t-song, .22s);--dur-diff: var(--t-diff, .32s);--ez-snap: var(--e-snap, cubic-bezier(.22, 1, .36, 1));--ez-pop: var(--e-pop, cubic-bezier(.34, 1.42, .64, 1));--ez-beat: var(--e-beat, cubic-bezier(.12, .85, .3, 1));--ice-c: var(--ice, #e8f2ff);--ink-c: var(--ink, #07070f);--scrim-c: var(--scrim, rgba(3, 3, 10, .72));--font-d: var(--font-display, "Arial Black", "Helvetica Neue", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif);--font-u: var(--font-ui, "Segoe UI", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif);font-family:var(--font-u);font-size:calc(var(--unit) * 1.4)}.select :focus-visible{outline:2px solid var(--accent, var(--nav));outline-offset:3px;animation:focus-beat var(--b) var(--ez-beat) infinite}@keyframes focus-beat{0%,to{outline-offset:3px}24%{outline-offset:6px}}.select--message{align-items:center;justify-content:center;gap:calc(var(--unit) * 1.5)}.message{font-size:calc(var(--unit) * 2.4);text-align:center}.message--dim{color:var(--text-dim);font-size:calc(var(--unit) * 1.6);font-weight:600}.header{--accent-lit: color-mix(in srgb, var(--accent) 82%, #ffffff);--accent-deep: color-mix(in srgb, var(--accent) 55%, #07070f);--on-accent: #ffffff;position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:calc(var(--unit) * 1.2);width:82%;align-self:center;padding:calc(var(--unit) * .6) calc(var(--unit) * 1);border-radius:var(--radius-pill);overflow:hidden;color:var(--on-accent);background:linear-gradient(180deg,var(--accent-lit) 0%,var(--accent) 58%,var(--accent-deep) 100%);box-shadow:0 calc(var(--unit) * .5) 0 var(--accent-deep),0 calc(var(--unit) * 1.2) calc(var(--unit) * 2.4) #00000080;transition:background var(--dur-diff) ease,box-shadow var(--dur-diff) ease,color var(--dur-diff) ease;flex:0 0 auto}.header[data-difficulty="6"]{--on-accent: #3a1550}.header:after{content:"";position:absolute;top:0;right:0;bottom:52%;left:0;background:linear-gradient(180deg,rgba(255,255,255,.3),transparent);pointer-events:none}.header__label{position:relative;text-align:center;overflow:hidden}.header__label-text{display:inline-block;font-family:var(--font-d);font-weight:900;font-size:calc(var(--unit) * 4.6);line-height:1.05;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 3px 0 rgba(0,0,0,.45),0 -1px 0 rgba(255,255,255,.35);animation:diff-flip .2s var(--ez-pop) .1s backwards}.header__label[data-latin=true] .header__label-text{transform:skew(-8deg);padding-right:.12em}@keyframes diff-flip{0%{opacity:0;transform:translateY(.6em) skew(-8deg)}}.header__label[data-latin=false] .header__label-text{animation-name:diff-flip-upright}@keyframes diff-flip-upright{0%{opacity:0;transform:translateY(.6em)}}.header__step{width:calc(var(--unit) * 6.4);height:calc(var(--unit) * 6.4);border-radius:50%;background:#00000052;color:inherit;font-family:var(--font-d);font-size:calc(var(--unit) * 3.6);line-height:1;box-shadow:inset 0 -3px #00000059;transition:transform var(--dur-tap) ease-out,background var(--dur-level) ease}.header__step:hover{background:#00000070}.header__step:active{transform:scale(.92);background:#00000080}.status{display:flex;align-items:baseline;gap:calc(var(--unit) * 1);align-self:center;padding:calc(var(--unit) * .4) calc(var(--unit) * 2);border-radius:var(--radius-pill);background:var(--surface-sunken);border:2px solid var(--border);box-shadow:var(--shadow-raised);max-width:86%;flex:0 0 auto}.status__icon{color:var(--nav);font-size:calc(var(--unit) * 1.6)}.status__value{font-family:var(--font-d);font-weight:900;font-size:calc(var(--unit) * 2.6);line-height:1;font-variant-numeric:tabular-nums;transform:skew(-8deg);padding-right:.12em;display:inline-block}.status__caption{color:var(--text-dim);font-size:calc(var(--unit) * 1.3);font-weight:600}.levels{display:flex;align-items:center;justify-content:center;gap:calc(var(--unit) * 1);flex:0 0 auto}.levels__track{display:flex;align-items:center;gap:calc(var(--unit) * .8)}.levels__chip{display:flex;align-items:baseline;gap:calc(var(--unit) * .4);padding:calc(var(--unit) * .45) calc(var(--unit) * 1.1);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--surface-raised),var(--surface));border:2px solid var(--border);color:var(--text-dim);font-family:var(--font-u);font-weight:700;font-size:calc(var(--unit) * 1.8);line-height:1;font-variant-numeric:tabular-nums;transition:color var(--dur-level) var(--ez-snap),border-color var(--dur-level) var(--ez-snap),background var(--dur-level) var(--ez-snap),transform var(--dur-level) var(--ez-snap)}.levels__chip:hover{border-color:var(--border-strong);color:var(--text)}.levels__chip-tag{font-size:calc(var(--unit) * 1);opacity:.7;letter-spacing:.16em}.levels__chip-value{display:inline-block}.levels__chip.is-active{background:linear-gradient(180deg,#fff3b0,var(--nav) 60%,var(--nav-dark));border-color:#fff;color:var(--nav-ink);font-family:var(--font-d);font-weight:900;font-size:calc(var(--unit) * 2.6);letter-spacing:.02em;transform:translateY(calc(var(--unit) * -.3));box-shadow:0 calc(var(--unit) * .4) 0 var(--nav-dark);animation:chip-pop .24s cubic-bezier(.3,1.6,.5,1),chip-beat var(--b) ease-out .24s infinite}.levels__chip.is-active .levels__chip-value[data-latin=true]{transform:skew(-8deg);padding-right:.12em}@keyframes chip-pop{0%{transform:translateY(calc(var(--unit) * -.3)) scale(1)}45%{transform:translateY(calc(var(--unit) * -.3)) scale(1.14)}to{transform:translateY(calc(var(--unit) * -.3)) scale(1)}}@keyframes chip-beat{0%{filter:brightness(1)}18%{filter:brightness(1.12)}to{filter:brightness(1)}}.levels__arrow{width:calc(var(--unit) * 5);height:calc(var(--unit) * 5);border-radius:50%;background:var(--surface-raised);border:2px solid var(--border);color:var(--nav);font-size:calc(var(--unit) * 1.8);line-height:1;transition:transform var(--dur-tap) ease-out,border-color var(--dur-level) ease}.levels__arrow:hover{border-color:var(--nav)}.levels__arrow:active{transform:scale(.9)}.carousel{position:relative;display:flex;align-items:center;justify-content:center;gap:calc(var(--unit) * 1);flex:1 1 auto;min-height:0;width:calc(var(--unit) * 88);margin-inline:calc(var(--unit) * -8)}.carousel__stage{position:relative;width:100%;height:100%;perspective:calc(var(--unit) * 90)}.carousel__track{display:flex;align-items:center;justify-content:center;gap:calc(var(--unit) * 1.2);height:100%;min-width:0}.carousel__arrow{flex:0 0 auto;display:grid;place-items:center;width:calc(var(--unit) * 9);height:calc(var(--unit) * 9);border-radius:50%;background:linear-gradient(180deg,#fff3b0 0%,var(--nav) 55%,var(--nav-dark) 100%);color:var(--nav-ink);font-size:calc(var(--unit) * 3.4);line-height:1;box-shadow:var(--shadow-button);transition:transform var(--dur-tap) ease-out}.carousel__arrow:active{transform:translateY(4px);box-shadow:0 1px 0 var(--nav-dark),0 4px 10px #00000080}.carousel__arrow--float{position:absolute;top:50%;z-index:6;transform:translateY(-50%)}.carousel__arrow--float.carousel__arrow--left{left:0}.carousel__arrow--float.carousel__arrow--right{right:0}.carousel__arrow--float:active{transform:translateY(-50%) translateY(4px)}.carousel__chevron{display:block;animation:chevron-beat var(--b) ease-in-out infinite alternate}.carousel__arrow--left .carousel__chevron{animation-name:chevron-beat-left}@keyframes chevron-beat{0%{transform:translate(0)}to{transform:translate(calc(var(--unit) * .6))}}@keyframes chevron-beat-left{0%{transform:translate(0)}to{transform:translate(calc(var(--unit) * -.6))}}.card{--accent-lit: color-mix(in srgb, var(--accent) 82%, #ffffff);--accent-deep: color-mix(in srgb, var(--accent) 55%, #07070f);--accent-line: color-mix(in srgb, var(--accent) 45%, transparent);--on-accent: #ffffff;--card-clip: polygon( calc(var(--unit) * 1.8) 0, 100% 0, 100% calc(100% - var(--unit) * 1.8), calc(100% - var(--unit) * 1.8) 100%, 0 100%, 0 calc(var(--unit) * 1.8) );position:relative;border-radius:calc(var(--unit) * 1.8)}.card[data-difficulty="6"]{--on-accent: #3a1550}.card__glow{position:absolute;inset:calc(var(--unit) * -.35);clip-path:var(--card-clip);overflow:hidden;z-index:0;opacity:0;pointer-events:none;transition:opacity var(--dur-song) ease}.card__glow:before{content:"";position:absolute;left:50%;top:50%;width:175%;aspect-ratio:1;background:conic-gradient(from 0deg,transparent 0deg,var(--accent-lit) 38deg,transparent 108deg,var(--accent) 190deg,transparent 262deg,var(--accent-lit) 330deg,transparent 360deg);animation:card-ring calc(var(--b) * 8) linear infinite}@keyframes card-ring{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.card--slot[data-slot="0"] .card__glow,.card--active .card__glow{opacity:1}.card__face{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;overflow:hidden;clip-path:var(--card-clip);background:linear-gradient(180deg,var(--surface-raised) 0%,var(--surface) 42%,var(--surface-sunken) 100%)}.card__veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;clip-path:var(--card-clip);background:linear-gradient(90deg,var(--scrim-c),transparent 60%);opacity:0;pointer-events:none;transition:opacity var(--dur-song) ease}.card[data-side=left] .card__veil{opacity:.55}.card[data-side=right] .card__veil{opacity:.55;transform:scaleX(-1)}.card[data-depth="2"] .card__veil{opacity:.85}.card__flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;clip-path:var(--card-clip);background:#fff;opacity:0;pointer-events:none}.card--slot[data-slot="0"] .card__flash,.card--active .card__flash{animation:card-flash .16s ease-out backwards}@keyframes card-flash{0%{opacity:.35}to{opacity:0}}.card--slot{position:absolute;left:50%;top:50%;width:calc(var(--unit) * 34);height:min(100%,calc(var(--unit) * 46));transform-origin:50% 45%;will-change:transform;--dx: 0px;--dy: calc(var(--unit) * -1.2);--ry: 0deg;--sc: 1;--hover: 1;transform:translate(-50%,-50%) translate(calc(var(--dx) + var(--slot-shift, 0px))) translateY(var(--dy)) rotateY(var(--ry)) scale(calc(var(--sc) * var(--hover)));z-index:5;transition:transform var(--dur-song) var(--ez-snap),opacity var(--dur-song) var(--ez-snap),filter var(--dur-song) var(--ez-snap);animation:slot-in var(--dur-song) var(--ez-snap) backwards}.card--slot[data-slot="0"],.card--active{transition-timing-function:var(--ez-pop);box-shadow:0 calc(var(--unit) * 1.6) calc(var(--unit) * 4) #0009,var(--glow-accent, 0 0 calc(var(--unit) * 3) color-mix(in srgb, var(--accent) 55%, transparent))}@keyframes slot-in{0%{opacity:0}}.card--slot[data-slot="-1"]{--dx: calc(var(--unit) * -19.5);--dy: calc(var(--unit) * 1.6);--ry: 16deg;--sc: .62;opacity:.78;z-index:4}.card--slot[data-slot="1"]{--dx: calc(var(--unit) * 19.5);--dy: calc(var(--unit) * 1.6);--ry: -16deg;--sc: .62;opacity:.78;z-index:4}.card--slot[data-slot="-2"]{--dx: calc(var(--unit) * -33);--dy: calc(var(--unit) * 3.4);--ry: 26deg;--sc: .46;opacity:.52;filter:blur(calc(var(--unit) * .25));z-index:3}.card--slot[data-slot="2"]{--dx: calc(var(--unit) * 33);--dy: calc(var(--unit) * 3.4);--ry: -26deg;--sc: .46;opacity:.52;filter:blur(calc(var(--unit) * .25));z-index:3}.card--slot:not([data-slot="0"]){cursor:pointer}.card--slot:not([data-slot="0"]):hover{--hover: 1.05;opacity:.92}.card--slot[data-slot="0"]:hover{--hover: 1.02}.card[data-depth="1"] .card__artist,.card[data-depth="1"] .bars,.card[data-depth="1"] .card__meta,.card[data-depth="1"] .card__difficulty,.card[data-depth="2"] .card__artist,.card[data-depth="2"] .bars,.card[data-depth="2"] .card__meta,.card[data-depth="2"] .card__difficulty,.card[data-depth="2"] .card__title{opacity:0;visibility:hidden}.card--slot .card__difficulty,.card--slot .card__title,.card--slot .card__artist,.card--slot .bars,.card--slot .card__meta{transition:opacity var(--dur-song) ease}.card--active{width:calc(var(--unit) * 34);height:100%;max-height:calc(var(--unit) * 46);z-index:2}.card--neighbor{width:calc(var(--unit) * 15);height:calc(var(--unit) * 24);opacity:.62}.card--neighbor .card__artist,.card--neighbor .bars,.card--neighbor .card__meta,.card--neighbor .card__difficulty{display:none}.card--neighbor .card__title{font-size:calc(var(--unit) * 1.1)}.card--neighbor .card__level{font-size:calc(var(--unit) * 2);-webkit-text-stroke-width:calc(var(--unit) * .1)}.card--empty{display:grid;place-items:center;width:calc(var(--unit) * 34);height:calc(var(--unit) * 30);border:3px dashed var(--border);border-radius:var(--radius-lg);color:var(--text-dim);text-align:center;padding:calc(var(--unit) * 2)}.carousel__stage>.card--empty{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.card__art{position:relative;flex:1 1 auto;min-height:calc(var(--unit) * 12);overflow:hidden;background:var(--surface-sunken)}.card__art img{width:100%;height:100%;object-fit:cover;display:block;animation:art-in .26s var(--ez-snap) backwards}@keyframes art-in{0%{opacity:0;transform:scale(1.06)}}.card__art-fallback{width:100%;height:100%;background:repeating-linear-gradient(45deg,transparent 0 10px,rgba(232,242,255,.05) 10px 20px),linear-gradient(180deg,var(--surface),var(--surface-sunken))}.card__sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 36%,rgba(232,242,255,.16) 46%,transparent 56%);pointer-events:none}.card__badges{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:space-between;gap:calc(var(--unit) * .6);padding:calc(var(--unit) * 2) calc(var(--unit) * 1) calc(var(--unit) * .5);background:linear-gradient(180deg,transparent,rgba(0,0,0,.85))}.card__difficulty{padding:calc(var(--unit) * .25) calc(var(--unit) * 1);border-radius:var(--radius-pill);background:linear-gradient(180deg,var(--accent-lit),var(--accent));box-shadow:0 2px 0 var(--accent-deep);color:var(--on-accent);font-family:var(--font-d);font-weight:900;font-size:calc(var(--unit) * 1.5);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.card__level{display:inline-block;font-family:var(--font-d);font-weight:900;font-size:calc(var(--unit) * 3.6);line-height:1;letter-spacing:.01em;white-space:nowrap;font-variant-numeric:tabular-nums;text-shadow:0 3px 0 rgba(0,0,0,.6)}.card__level[data-latin=true]{transform:skew(-8deg);padding-right:.12em;text-shadow:none;-webkit-text-stroke:calc(var(--unit) * .18) var(--ink-c);paint-order:stroke fill}.card__utage{position:absolute;top:calc(var(--unit) * .7);left:calc(var(--unit) * .7);display:grid;place-items:center;width:calc(var(--unit) * 3.6);height:calc(var(--unit) * 3.6);border-radius:50%;background:var(--diff-utage);box-shadow:0 2px #0006;font-size:calc(var(--unit) * 2)}.card__title{flex:0 0 auto;padding:calc(var(--unit) * .6) calc(var(--unit) * 1) calc(var(--unit) * .1);font-family:var(--font-u);font-weight:800;font-size:calc(var(--unit) * 2);letter-spacing:-.005em;text-shadow:0 2px 0 rgba(0,0,0,.5)}.card__artist{flex:0 0 auto;padding:0 calc(var(--unit) * 1) calc(var(--unit) * .5);color:var(--text-dim);font-size:calc(var(--unit) * 1.2);font-weight:600}.bars{flex:0 0 auto;display:grid;gap:calc(var(--unit) * .45);padding:0 calc(var(--unit) * 1) calc(var(--unit) * .7)}.bars__row{display:grid;grid-template-columns:calc(var(--unit) * 6) minmax(0,1fr) calc(var(--unit) * 4.4);align-items:center;gap:calc(var(--unit) * .6)}.bars__label{color:var(--text-faint);font-size:calc(var(--unit) * .95);font-weight:800;letter-spacing:.16em}.bars__track{position:relative;height:calc(var(--unit) * .9);border-radius:var(--radius-pill);background:var(--surface-sunken);overflow:hidden}.bars__fill{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,var(--accent-deep),var(--accent) 70%,var(--accent-lit));transform-origin:left center;transform:scaleX(var(--fill, 0));animation:bar-in .26s var(--ez-snap) calc(var(--i, 0) * 40ms) backwards}@keyframes bar-in{0%{transform:scaleX(0)}}.bars__value{text-align:right;color:var(--text-dim);font-size:calc(var(--unit) * 1);font-weight:700;font-variant-numeric:tabular-nums}.card__meta{flex:0 0 auto;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:0 calc(var(--unit) * 1.2);padding:calc(var(--unit) * .5) calc(var(--unit) * 1);margin-top:auto;background:#00000052;border-top:2px solid var(--accent-line)}.meta{display:flex;flex-direction:column;min-width:0}.meta--wide{min-width:0}.meta__label{color:var(--text-faint);font-size:calc(var(--unit) * .95);font-weight:800;letter-spacing:.16em}.meta__value{font-size:calc(var(--unit) * 1.3);font-weight:700;font-variant-numeric:tabular-nums}.select__bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:calc(var(--unit) * 1);width:90%;align-self:center;flex:0 0 auto}.select__bottom>.counter{grid-column:2}.select__bottom>.category{grid-column:3}.stats{justify-self:start;width:calc(var(--unit) * 21);padding:calc(var(--unit) * .5) calc(var(--unit) * 1);border-radius:var(--radius-md);background:var(--surface-sunken);border:2px solid var(--border);border-left:3px solid var(--accent, var(--border-strong));box-shadow:var(--shadow-raised)}.stats__title{color:var(--nav);font-size:calc(var(--unit) * .95);font-weight:800;letter-spacing:.16em;margin-bottom:calc(var(--unit) * .3)}.stats__row{display:flex;align-items:baseline;gap:calc(var(--unit) * .4);font-size:calc(var(--unit) * 1.15);font-weight:600;font-variant-numeric:tabular-nums}.stats__row>span:first-child{color:var(--text-dim)}.stats__dots{flex:1 1 auto;border-bottom:2px dotted rgba(255,255,255,.18)}.stats__value{color:var(--text)}.counter{display:flex;align-items:baseline;gap:calc(var(--unit) * .5);justify-content:center}.counter__value{display:inline-block;font-family:var(--font-d);font-weight:900;font-size:calc(var(--unit) * 6.5);line-height:.9;font-variant-numeric:tabular-nums;transform:skew(-8deg);padding-right:.12em;-webkit-text-stroke:calc(var(--unit) * .2) var(--ink-c);paint-order:stroke fill;text-shadow:0 4px 0 rgba(0,0,0,.55)}.counter__total{color:var(--text-faint);font-size:calc(var(--unit) * 1.6);font-variant-numeric:tabular-nums}.category{justify-self:end;display:flex;flex-direction:column;align-items:center;justify-content:center;width:calc(var(--unit) * 13);height:calc(var(--unit) * 13);border-radius:50%;overflow:hidden;background:linear-gradient(180deg,var(--category) 0%,var(--category) 52%,#ffffff 52%,#eef3ff 100%);color:#fff;box-shadow:var(--shadow-raised);border:3px solid rgba(255,255,255,.5);transition:transform var(--dur-tap) ease-out,border-color var(--dur-level) ease}.category:hover{border-color:#fff}.category__top{font-size:calc(var(--unit) * 1.05);font-weight:700;letter-spacing:.04em}.category__arrow{font-size:calc(var(--unit) * 1.5)}.category__bottom{color:var(--category-dark);font-size:calc(var(--unit) * 1.05);max-width:88%}.category:active{transform:scale(.95)}.actions{display:flex;justify-content:center;gap:calc(var(--unit) * 2);flex:0 0 auto;width:70%;align-self:center}.actions__button{position:relative;flex:1 1 0;padding:calc(var(--unit) * .9) calc(var(--unit) * 1.5);border-radius:var(--radius-md);overflow:hidden;transform:skew(-12deg)}.actions__label{display:inline-block;transform:skew(4deg);padding-right:.12em;font-family:var(--font-d);font-weight:900;font-size:calc(var(--unit) * 2.4);letter-spacing:.1em;text-shadow:0 3px 0 rgba(0,0,0,.45)}.actions__button:after{content:"";position:absolute;top:0;right:0;bottom:62%;left:0;background:linear-gradient(180deg,rgba(255,255,255,.22),transparent);pointer-events:none}.actions__button--back{background:linear-gradient(180deg,#9aa3af,var(--action-back));box-shadow:0 5px #4b5563,var(--shadow-raised)}.actions__button--next{background:linear-gradient(180deg,#ff7aa8,var(--action-next));box-shadow:0 5px #b3195a,var(--shadow-raised);animation:next-beat var(--b) var(--ez-beat) infinite}@keyframes next-beat{0%{transform:skew(-12deg) scale(1)}22%{transform:skew(-12deg) scale(1.03)}to{transform:skew(-12deg) scale(1)}}.actions__button:active{animation:none;transform:skew(-12deg) translateY(4px);box-shadow:0 1px #0006}.select.is-cat>*{animation:row-in .26s var(--ez-pop) backwards}.select.is-cat>*:nth-child(1){animation-delay:0ms}.select.is-cat>*:nth-child(2){animation-delay:40ms}.select.is-cat>*:nth-child(3){animation-delay:80ms}.select.is-cat>*:nth-child(4){animation-delay:.12s}.select.is-cat>*:nth-child(5){animation-delay:.16s}.select.is-cat>*:nth-child(6){animation-delay:.2s}@keyframes row-in{0%{opacity:0;transform:translateY(calc(var(--unit) * 1.5))}to{opacity:1;transform:translateY(0)}}.fx{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;border-radius:50%;overflow:hidden;pointer-events:none}.fx>*{position:absolute;left:50%;top:50%;display:block}.fx__impact{width:calc(var(--unit) * 88);height:calc(var(--unit) * 88);margin:calc(var(--unit) * -44) 0 0 calc(var(--unit) * -44);border:calc(var(--unit) * .4) solid var(--accent);border-radius:50%;opacity:0;animation:fx-impact .42s cubic-bezier(.1,.7,.2,1) forwards}@keyframes fx-impact{0%{opacity:.45;transform:translate(-50%,-50%) scale(.3)}to{opacity:0;transform:translate(-50%,-50%) scale(1.15)}}.fx__sweep{width:calc(var(--unit) * 100);height:calc(var(--unit) * 100);margin:calc(var(--unit) * -50) 0 0 calc(var(--unit) * -50);border-radius:50%;background:radial-gradient(circle,var(--accent) 0%,var(--accent) 42%,transparent 72%);opacity:0;animation:fx-sweep .38s cubic-bezier(.16,.84,.3,1) forwards}@keyframes fx-sweep{0%{opacity:.55;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.1)}}.fx__beam{width:calc(var(--unit) * 8);height:calc(var(--unit) * 160);margin:calc(var(--unit) * -80) 0 0 calc(var(--unit) * -4);background:linear-gradient(90deg,transparent,var(--ice, #e8f2ff) 45%,var(--ice, #e8f2ff) 55%,transparent);opacity:0;animation:fx-beam .52s cubic-bezier(.3,0,.7,1) forwards}@keyframes fx-beam{0%{opacity:.18;transform:translate(calc(var(--unit) * -60)) rotate(14deg)}to{opacity:.18;transform:translate(calc(var(--unit) * 60)) rotate(14deg)}}@media(prefers-reduced-motion:reduce){.select,.select *,.select *:before,.select *:after{animation:none!important;transition-property:opacity!important;transition-duration:.12s!important}.fx{display:none}}.levels__chip--all .levels__chip-value{font-size:calc(var(--unit) * 1.5);letter-spacing:.06em}.levels__chip--all.is-active .levels__chip-value{font-size:calc(var(--unit) * 1.9)}.category__ring{display:grid;place-items:center;animation:category-spin .42s cubic-bezier(.34,1.28,.64,1) both}@keyframes category-spin{0%{transform:rotate(0) scale(1)}60%{transform:rotate(280deg) scale(1.16)}to{transform:rotate(360deg) scale(1)}}.category__arrow{display:block}@media(prefers-reduced-motion:reduce){.category__ring{animation:none}}.select__status-row{position:relative;display:flex;align-items:center;justify-content:center;gap:calc(var(--unit) * .8);flex:0 0 auto}.audio-toggle{display:grid;place-items:center;width:calc(var(--unit) * 3.4);height:calc(var(--unit) * 3.4);border-radius:50%;background:var(--surface-sunken);border:2px solid var(--border);color:var(--text-dim);font-size:calc(var(--unit) * 1.4);line-height:1}.audio-toggle.is-on{color:var(--accent, var(--nav));border-color:color-mix(in srgb,var(--accent, #a855f7) 60%,transparent)}.audio-toggle:active{transform:scale(.92)}.audio-popover{position:absolute;top:110%;right:0;z-index:5;display:flex;align-items:center;gap:calc(var(--unit) * .8);padding:calc(var(--unit) * .6) calc(var(--unit) * 1.2);border-radius:var(--radius-pill);background:#0a0a18f5;border:2px solid var(--border);box-shadow:var(--shadow-raised)}.audio-popover input[type=range]{width:calc(var(--unit) * 16);accent-color:var(--accent, #a855f7);cursor:pointer}.audio-popover__value{min-width:calc(var(--unit) * 2.6);font-size:calc(var(--unit) * 1.2);font-variant-numeric:tabular-nums;text-align:right}:root{--diff-easy: #22b3e8;--diff-basic: #46c94f;--diff-advanced: #f5a623;--diff-expert: #f5455f;--diff-master: #a855f7;--diff-remaster: #e9c7ff;--diff-utage: #ff5fa8;--accent: var(--diff-master);--bg-abyss: #030308;--bg-void: #05050e;--bg-deep: #0a0a18;--bg-mid: #141433;--bg-glow: #2a1a5e;--surface: #16162f;--surface-raised: #21214a;--surface-sunken: #0e0e22;--scrim: rgba(3, 3, 10, .72);--border: rgba(255, 255, 255, .14);--border-strong: rgba(255, 255, 255, .3);--nav: #ffd11a;--nav-dark: #c99a00;--nav-ink: #2b1f00;--category: #2f7fff;--category-dark: #1a4fb5;--action-back: #6b7280;--action-next: #ff3d7f;--text: #ffffff;--text-dim: rgba(255, 255, 255, .62);--text-faint: rgba(255, 255, 255, .36);--ink: #07070f;--ice: #e8f2ff;--shadow-card: 0 12px 32px rgba(0, 0, 0, .55);--shadow-raised: 0 6px 18px rgba(0, 0, 0, .45);--shadow-button: 0 5px 0 var(--nav-dark), 0 10px 20px rgba(0, 0, 0, .5);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--radius-pill: 999px;--disc: min(100vw, 100vh);--unit: calc(var(--disc) / 100);--font-display: "Arial Black", "Helvetica Neue", "Hiragino Sans", "Noto Sans JP", "Yu Gothic UI", system-ui, sans-serif;--font-ui: "Segoe UI", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif;--t-tap: 70ms;--t-level: .18s;--t-song: .22s;--t-diff: .32s;--t-cat: .42s;--t-launch: .52s;--e-snap: cubic-bezier(.22, 1, .36, 1);--e-pop: cubic-bezier(.34, 1.42, .64, 1);--e-in: cubic-bezier(.5, 0, .9, .2);--e-beat: cubic-bezier(.12, .85, .3, 1)}:root,.stage,.disc,.select,.play,.header,.card,.backdrop{--accent-lit: color-mix(in srgb, var(--accent) 82%, #ffffff);--accent-deep: color-mix(in srgb, var(--accent) 55%, #07070f);--accent-veil: color-mix(in srgb, var(--accent) 12%, transparent);--accent-line: color-mix(in srgb, var(--accent) 45%, transparent);--glow-accent: 0 0 calc(var(--unit) * 3) color-mix(in srgb, var(--accent) 55%, transparent);--beat: calc(60s / var(--bpm, 128))}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}body{background:radial-gradient(circle at 50% 45%,var(--bg-deep) 0%,var(--bg-abyss) 72%);color:var(--text);font-family:var(--font-ui);font-weight:700;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}button{font:inherit;color:inherit;border:none;background:none;cursor:pointer}.stage{position:relative;display:grid;place-items:center;width:100%;height:100%;background:var(--bg-abyss)}.disc{position:relative;width:var(--disc);height:var(--disc);border-radius:50%;overflow:hidden;background:radial-gradient(circle at 50% 20%,rgba(120,80,255,.28),transparent 55%),radial-gradient(circle at 50% 100%,rgba(255,61,127,.16),transparent 60%),var(--bg-mid);box-shadow:inset 0 0 0 3px #ffffff1a,inset 0 0 120px #0009,0 0 80px #5a3cc859}.disc:before,.disc:after{content:"";position:absolute;top:4%;right:4%;bottom:4%;left:4%;border-radius:50%;border:2px solid rgba(255,255,255,.06);pointer-events:none}.disc:after{top:11%;right:11%;bottom:11%;left:11%;border-style:dashed;border-color:#ffffff0a}.disc__inner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72%;height:88%;display:flex;flex-direction:column;gap:1.1%;padding:1% 0;z-index:1}.u-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
