@layer theme,base,components;@layer surfaces{.ec-game{--ec-night:#121216;--ec-night-soft:#1b1b22;--ec-pink:#ff4d9d;--ec-cyan:#3ef0ff;--ec-lime:#b6ff3d;--ec-on-night:#f6f5f2;--ec-on-night-muted:#f6f5f2b8;--ec-glass:#1212169e;--ec-glass-strong:#121216db;--ec-glass-edge:#ffffff1a;--ec-radius:22px;gap:1.5rem;padding:1rem 0 2.5rem;display:grid}.ec-game__stageWrap{align-items:start;gap:1rem;display:grid}@media (min-width:900px){.ec-game__stageWrap{grid-template-columns:minmax(0,1fr) 16rem;gap:1.5rem}}.ec-game__stageCol{justify-self:center;gap:.65rem;width:min(100%,30rem);display:grid}.ec-game__bar{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.ec-game__exit,.ec-game__pause{letter-spacing:0;min-height:2.75rem;color:var(--color-ink);background:var(--color-raised);border:var(--line-hair) solid var(--color-border);border-radius:var(--radius-pill,999px);box-shadow:var(--shadow-1);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-press) var(--ease-out), background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);align-items:center;gap:.45rem;padding:.4rem 1rem;font-size:.86rem;font-weight:600;text-decoration:none;display:inline-flex}.ec-game__exit:active,.ec-game__pause:active{transform:scale(.97)}.ec-game__exit:focus-visible,.ec-game__pause:focus-visible{outline:3px solid var(--color-calm-deep);outline-offset:2px}.ec-game__exitMark,.ec-game__pauseMark{color:var(--color-ink-muted);font-size:.75em;line-height:1}.ec-game__stageFrame{border-radius:var(--ec-radius);isolation:isolate;width:100%;position:relative;overflow:hidden;box-shadow:0 24px 60px -28px #121216a6;container-type:inline-size}.ec-game__stage{aspect-ratio:360/480;background:var(--ec-night);border-radius:var(--ec-radius);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;width:100%;display:block;position:relative;overflow:hidden;box-shadow:inset 0 2px #fff6}.ec-game__stage:focus-visible{outline:3px solid var(--color-calm-deep);outline-offset:-5px}.ec-game__stage:before{content:"";border-radius:inherit;pointer-events:none;z-index:1;background:radial-gradient(72% 60% at 50% 55%,#12121600 55%,#121216c7 100%);position:absolute;inset:0}.ec-game__stage:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;transition:opacity var(--dur-panel) var(--ease-out);z-index:3;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #b6ff3dbf,0 0 42px 2px #b6ff3d59}.ec-game__stage[data-ecstatic=true]:after{opacity:1;animation:ec-game-ecstatic-breathe calc(var(--beat) * 2) var(--ease-breath) infinite}@keyframes ec-game-ecstatic-breathe{0%,to{opacity:.55}50%{opacity:1}}.ec-game__canvas{width:100%;height:100%;display:block}.ec-game__hudTop{pointer-events:none;z-index:2;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem;display:grid;position:absolute;inset:.8rem .8rem auto}.ec-game__lives,.ec-game__topScore{font-variant-numeric:tabular-nums;letter-spacing:0;min-height:1.8rem;color:var(--ec-on-night);background:var(--ec-glass);border:1px solid var(--ec-glass-edge);border-radius:var(--radius-pill,999px);align-items:center;padding:0 .6rem;font-size:.82rem;font-weight:700;display:inline-flex}.ec-game__lives{letter-spacing:.22em;color:var(--ec-pink)}.ec-game__meterTrack{background:#ffffff24;border-radius:999px;height:.45rem;display:block;overflow:hidden}.ec-game__meterFill{transform-origin:100%;background:linear-gradient(90deg, var(--ec-pink), var(--ec-cyan), var(--ec-lime));border-radius:inherit;width:100%;height:100%;display:block;transform:scaleX(0)}.ec-game[dir=ltr] .ec-game__meterFill{transform-origin:0}.ec-game__combo{pointer-events:none;opacity:0;transition:opacity var(--dur-fast) var(--ease-out);z-index:2;inset-inline-end:.9rem;justify-items:end;display:grid;position:absolute;top:3.2rem}.ec-game__combo[data-visible=true]{opacity:1}.ec-game__comboValue{font-family:var(--font-display), var(--font-sans), system-ui, sans-serif;font-variant-numeric:tabular-nums;color:var(--ec-on-night);text-shadow:0 0 14px #3ef0ff8c,0 2px #0006;transform-origin:100%;animation:ec-game-combo-pop var(--dur-base) var(--ease-pop) 1;font-size:clamp(1.6rem,9cqi,2.6rem);font-weight:500;line-height:1}.ec-game__comboValue[data-tier="1"]{color:var(--ec-cyan)}.ec-game__comboValue[data-tier="2"]{color:var(--ec-lime);font-size:clamp(1.9rem,10.5cqi,3rem)}.ec-game__comboValue[data-tier="3"]{color:var(--ec-pink);text-shadow:0 0 22px #ff4d9db3,0 2px #0006;font-size:clamp(2.2rem,12cqi,3.4rem)}.ec-game__comboLabel{letter-spacing:0;color:var(--ec-on-night-muted);font-size:.66rem}@keyframes ec-game-combo-pop{0%{transform:scale(1.35)}to{transform:scale(1)}}.ec-game__feedback{text-align:end;max-width:42%;font-family:var(--font-display), var(--font-sans), system-ui, sans-serif;letter-spacing:0;white-space:nowrap;color:var(--ec-on-night);text-shadow:0 0 18px #ffffff80;opacity:0;transform-origin:100% 100%;pointer-events:none;z-index:2;inset-inline-end:5%;margin:0;padding:0;font-size:clamp(1.3rem,7.5cqi,2.1rem);font-weight:500;position:absolute;top:68%;transform:translateY(0)scale(.9)}.ec-game__feedback:not(:empty){animation:ec-game-feedback .56s var(--ease-out) 1 forwards}.ec-game__feedback[data-grade=perfect]{color:var(--ec-lime);text-shadow:0 0 22px #b6ff3dbf}.ec-game__feedback[data-grade=slip]{white-space:normal;width:min-content;color:var(--ec-pink);text-shadow:0 0 20px #ff4d9d99;font-size:clamp(1.15rem,6.5cqi,1.8rem);line-height:1.05}@keyframes ec-game-feedback{0%{opacity:0;transform:translateY(6px)scale(.85)}18%{opacity:1;transform:translateY(-4px)scale(1.06)}60%{opacity:1;transform:translateY(-14px)scale(1)}to{opacity:0;transform:translateY(-26px)scale(.98)}}.ec-game__ecstaticBadge{letter-spacing:0;color:var(--ec-night);background:var(--ec-lime);border-radius:var(--radius-pill,999px);opacity:0;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);pointer-events:none;z-index:2;margin:0;padding:.25rem .8rem;font-size:.74rem;font-weight:700;position:absolute;top:3.3rem;left:50%;transform:translate(-50%,-6px)}.ec-game__stage[data-ecstatic=true] .ec-game__ecstaticBadge{opacity:1;transform:translate(-50%)}.ec-game__overlay{text-align:center;color:var(--ec-on-night);z-index:4;pointer-events:none;align-content:center;justify-items:center;gap:.6rem;padding:1.25rem;display:grid;position:absolute;inset:0}.ec-game__overlay button,.ec-game__overlay a,.ec-game__overlay input,.ec-game__overlay label,.ec-game__titleCard,.ec-game__results{pointer-events:auto}.ec-game__overlay--title{overscroll-behavior:contain;background:linear-gradient(#12121699 0%,#121216e0 40%,#121216eb 100%);align-content:start;padding:1rem 1rem 1.1rem;overflow-y:auto}@container (min-width:400px){.ec-game__overlay--title{align-content:center}}@container (max-width:479px){.ec-game__titleName{display:none}}.ec-game[data-phase=intro] .ec-game__hudTop{display:none}.ec-game__titleCard{width:100%;max-width:24rem;animation:ec-game-rise var(--dur-reveal) var(--ease-out) 1 both;justify-items:center;gap:.55rem;display:grid}@keyframes ec-game-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.ec-game__titleName{font-family:var(--font-display), var(--font-sans), system-ui, sans-serif;letter-spacing:.06em;color:var(--ec-on-night);text-shadow:0 0 26px #3ef0ff73,0 0 2px #fff9;animation:ec-game-title-glow calc(var(--beat) * 4) var(--ease-breath) infinite;margin:0;font-size:clamp(1.7rem,10cqi,3rem);font-weight:500;line-height:1}@keyframes ec-game-title-glow{0%,to{text-shadow:0 0 26px #3ef0ff73,0 0 2px #fff9}50%{text-shadow:0 0 34px #ff4d9d8c,0 0 2px #fff9}}.ec-game__titleLead{max-width:20rem;color:var(--ec-on-night-muted);font-size:clamp(.88rem,4cqi,1.05rem);font-weight:400;line-height:1.5}.ec-game__titleActions{justify-items:center;gap:.5rem;width:100%;margin-top:.3rem;display:grid}.ec-game__cta{letter-spacing:0;min-width:11rem;min-height:3rem;color:var(--ec-night);background:var(--ec-lime);border-radius:var(--radius-pill,999px);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-press) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border:0;justify-content:center;align-items:center;padding:.6rem 1.6rem;font-size:1rem;font-weight:700;display:inline-flex;box-shadow:0 10px 28px -12px #b6ff3db3,inset 0 1px #ffffff80}.ec-game__cta:active{transform:scale(.97)}.ec-game__cta:focus-visible{outline:3px solid var(--ec-on-night);outline-offset:3px}.ec-game__cta--small{min-width:0;min-height:2.75rem;padding:.4rem 1.1rem;font-size:.9rem}.ec-game__secondary{letter-spacing:0;min-width:11rem;min-height:3rem;color:var(--ec-on-night);border-radius:var(--radius-pill,999px);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-press) var(--ease-out), background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:#ffffff14;border:1px solid #ffffff38;justify-items:center;gap:.1rem;padding:.5rem 1.4rem;font-size:.92rem;font-weight:600;display:inline-grid}.ec-game__secondary:active{transform:scale(.97)}.ec-game__secondary:focus-visible{outline:3px solid var(--ec-cyan);outline-offset:3px}.ec-game__secondary--suggested{border-color:var(--ec-cyan);animation:ec-game-suggest calc(var(--beat) * 4) var(--ease-breath) infinite}@keyframes ec-game-suggest{0%,to{box-shadow:0 0 #3ef0ff80}50%{box-shadow:0 0 0 7px #3ef0ff00}}.ec-game__secondarySub{color:var(--ec-on-night-muted);font-size:.7rem;font-weight:400}.ec-game__textButton{letter-spacing:0;min-height:2.75rem;color:var(--ec-cyan);border-radius:var(--radius-sm,8px);cursor:pointer;text-underline-offset:3px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:.35rem .6rem;font-size:.78rem;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.ec-game__textButton:focus-visible{outline:2px solid var(--ec-cyan);outline-offset:2px}.ec-game__textButton--light{color:var(--ec-on-night-muted)}.ec-game__titleFoot{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-top:.2rem;display:flex}.ec-game__offsetNote{color:var(--ec-on-night-muted);font-size:.72rem}.ec-game__inlineActions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem .8rem;display:flex}.ec-game__overlay--banner{background:var(--ec-glass-strong);border:1px solid var(--ec-glass-edge);animation:ec-game-banner-in var(--dur-base) var(--ease-out) 1 both;border-radius:16px;align-content:start;gap:.35rem;padding:.8rem 1rem .9rem;inset:3.6rem .8rem auto}@keyframes ec-game-banner-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.ec-game__overlay--fail{background:var(--ec-glass-strong);border-color:#ff4d9d8c}.ec-game__overlay--cleared{background:var(--ec-glass-strong)}.ec-game__overlay--cleared .ec-game__overlayTitle{color:var(--ec-lime)}.ec-game__overlay--tutorial{text-align:start;justify-items:start}.ec-game__dotsRow{gap:.4rem;margin-top:.2rem;display:inline-flex}.ec-game__dot{width:.5rem;height:.5rem;transition:background-color var(--dur-fast) var(--ease-out);background:#ffffff38;border-radius:50%}.ec-game__dot[data-filled=true]{background:var(--ec-cyan)}.ec-game__tutorialLine{font-size:clamp(.95rem,4.6cqi,1.1rem);font-weight:500;line-height:1.45}.ec-game__overlay--ready{background:#12121673}.ec-game__overlay--ready .ec-game__overlayTitle{font-family:var(--font-display), var(--font-sans), system-ui, sans-serif;color:var(--ec-lime);text-shadow:0 0 24px #b6ff3d99;animation:ec-game-title-in var(--dur-draw) var(--ease-pop) 1 both;font-size:clamp(1.8rem,10cqi,2.8rem);font-weight:500}.ec-game__overlay--count{background:#12121638;gap:.2rem}.ec-game__overlay--title-card{background:#121216db}.ec-game__rhythmTitle{max-width:100%;animation:ec-game-title-in var(--dur-draw) var(--ease-pop) 1 both;justify-items:center;gap:.35rem;display:grid}.ec-game__rhythmName{max-width:100%;font-family:var(--font-display), var(--font-sans), system-ui, sans-serif;letter-spacing:0;text-wrap:balance;overflow-wrap:anywhere;color:var(--ec-pink);text-shadow:0 0 30px #ff4d9d8c,0 2px #00000080;margin:0;font-size:clamp(2.2rem,14cqi,3.8rem);font-weight:500;line-height:1.05}.ec-game__rhythmGroove{letter-spacing:0;color:var(--ec-on-night-muted);margin:0;font-size:.95rem}.ec-game__rhythmMeta{color:var(--ec-on-night-muted);margin:.2rem 0 0;font-size:.95rem}.ec-game__rhythmBpm{letter-spacing:.16em;font-variant-numeric:tabular-nums;color:var(--ec-cyan);font-weight:700}@keyframes ec-game-title-in{0%{opacity:0;transform:scale(1.18)}to{opacity:1;transform:scale(1)}}.ec-game__count{font-family:var(--font-display), var(--font-sans), system-ui, sans-serif;letter-spacing:.04em;font-variant-numeric:tabular-nums;color:var(--ec-lime);text-shadow:0 0 36px #b6ff3d99,0 3px #00000080;animation:ec-game-count-pop var(--dur-draw) var(--ease-out) 1;margin:0;font-size:clamp(4rem,26cqi,7rem);font-weight:500;line-height:1}.ec-game__overlay--count .ec-game__hint{letter-spacing:0;color:var(--ec-on-night-muted);font-size:.76rem}@keyframes ec-game-count-pop{0%{opacity:.4;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}.ec-game__overlayTitle{letter-spacing:0;color:var(--ec-on-night);margin:0;font-size:clamp(1.1rem,5cqi,1.5rem);font-weight:700}.ec-game__overlay--fail .ec-game__overlayTitle{color:var(--ec-pink)}.ec-game__rulesFold{width:100%;max-width:22rem;margin-top:.2rem}.ec-game__rulesSummary{min-height:2.75rem;color:var(--ec-on-night-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;list-style:none;display:flex}.ec-game__rulesSummary::-webkit-details-marker{display:none}.ec-game__rulesSummary:after{content:"";width:.45rem;height:.45rem;transition:transform var(--dur-fast) var(--ease-out);border-inline-end:1.5px solid;border-bottom:1.5px solid;margin-inline-start:.5rem;transform:rotate(45deg)translateY(-2px)}.ec-game__rulesFold[open] .ec-game__rulesSummary:after{transform:rotate(-135deg)translateY(-2px)}.ec-game__rulesSummary:focus-visible{outline:2px solid var(--ec-cyan);outline-offset:2px;border-radius:var(--radius-sm,8px)}.ec-game__rules{text-align:start;width:100%;max-width:22rem;color:var(--ec-on-night-muted);gap:.2rem 1rem;margin:.2rem 0 0;padding:0;font-size:.72rem;line-height:1.4;list-style:none;display:grid}.ec-game__rules li{padding-inline-start:.9rem;position:relative}.ec-game__rules li:before{content:"";background:var(--ec-cyan);opacity:.8;inset-inline-start:0;border-radius:50%;width:.35rem;height:.35rem;position:absolute;top:.55em}@container (min-width:380px){.ec-game__rules{grid-template-columns:1fr 1fr}}.ec-game__hint{max-width:24rem;color:var(--color-ink-muted);margin:0;font-size:.8rem;line-height:1.55}.ec-game__overlay .ec-game__hint{color:var(--ec-on-night-muted)}.ec-game__overlay--paused{background:#121216b8;gap:.8rem}.ec-game__overlay--paused .ec-game__hint{color:#f6f5f2d9}.ec-game__overlay--results{background:#1212168c;padding:1rem}.ec-game__results{background:var(--ec-glass-strong);border:1px solid var(--ec-glass-edge);width:100%;max-width:22rem;animation:ec-game-rise var(--dur-draw) var(--ease-out) 1 both;border-radius:18px;justify-items:center;gap:.4rem;padding:1.1rem 1.1rem 1.2rem;display:grid}.ec-game__resultsScoreLabel{letter-spacing:0;color:var(--ec-on-night-muted);margin:.3rem 0 0;font-size:.72rem}.ec-game__resultsScore{font-family:var(--font-display), var(--font-sans), system-ui, sans-serif;font-variant-numeric:tabular-nums;color:var(--ec-on-night);text-shadow:0 0 28px #3ef0ff73;margin:0;font-size:clamp(2.6rem,16cqi,4rem);font-weight:500;line-height:1}.ec-game__resultsGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;width:100%;margin:.4rem 0 .3rem;display:grid}.ec-game__resultsGrid div{background:#ffffff0f;border-radius:12px;gap:.1rem;padding:.5rem .3rem;display:grid}.ec-game__resultsGrid dt{color:var(--ec-on-night-muted);font-size:.64rem;line-height:1.3}.ec-game__resultsGrid dd{font-variant-numeric:tabular-nums;color:var(--ec-on-night);margin:0;font-size:1.1rem;font-weight:700}.ec-game__srOnly{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ec-game__hud{background:var(--color-raised);border:var(--line-hair) solid var(--color-hairline);border-radius:var(--radius-lg,16px);box-shadow:var(--shadow-1);gap:.5rem;padding:1rem 1.1rem;display:grid}.ec-game__hudRow{justify-content:space-between;align-items:baseline;gap:.5rem;margin:0;display:flex}.ec-game__hudLabel{letter-spacing:0;color:var(--color-ink-muted);font-size:.74rem}.ec-game__hudValue{font-variant-numeric:tabular-nums;color:var(--color-ink);font-size:1.1rem;font-weight:700}.ec-game__genre{letter-spacing:0;color:var(--color-ink-muted);margin:0;font-size:.74rem}.ec-game__dots{letter-spacing:.22em;color:var(--color-commerce)}.ec-game__hudValue--provisional{color:var(--color-ink-muted)}.ec-game__attempt{letter-spacing:0;color:var(--color-commerce);margin:0;font-size:.74rem;font-weight:700}.ec-game__hint--hud{letter-spacing:0;font-size:.74rem}.ec-game__button{letter-spacing:0;min-height:2.75rem;color:var(--color-on-inverse);background:var(--color-ink);border:var(--line-hair) solid var(--color-ink);border-radius:var(--radius-pill,999px);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-press) var(--ease-out), background-color var(--dur-fast) var(--ease-out);padding:.5rem 1.1rem;font-size:.88rem;font-weight:700}.ec-game__button:active{transform:scale(.97)}.ec-game__button:focus-visible{outline:3px solid var(--color-calm-deep);outline-offset:2px}.ec-game__button:disabled{opacity:.55;cursor:default;transform:none}.ec-game__button--quiet{color:var(--color-ink);border-color:var(--color-border);background:0 0}.ec-game__button--restart{color:var(--ec-night);background:var(--ec-lime);border-color:var(--ec-lime);margin-top:.3rem}.ec-game__status{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ec-game__board{gap:.9rem;display:grid}.ec-game__boardTitle{letter-spacing:0;color:var(--color-ink);margin:0;font-size:clamp(1.1rem,2.4vw,1.4rem)}.ec-game__boardEmpty{text-align:center;background:var(--color-sunken);border-radius:var(--radius-lg,16px);padding:1.2rem}.ec-game__form{background:var(--color-raised);border:var(--line-hair) solid var(--color-hairline);border-radius:var(--radius-lg,16px);box-shadow:var(--shadow-1);justify-items:start;gap:.5rem;padding:1rem 1.1rem;display:grid}.ec-game__field{letter-spacing:0;color:var(--color-ink-muted);font-size:.78rem}.ec-game__formRow{flex-wrap:wrap;align-items:center;gap:.5rem;width:100%;display:flex}.ec-game__input{min-width:0;min-height:2.75rem;color:var(--color-ink);background:var(--color-ground);border:var(--line-hair) solid var(--color-border-strong);border-radius:var(--radius-pill,999px);transition:border-color var(--dur-fast) var(--ease-out);flex:12rem;padding:.5rem .85rem;font-size:1rem}.ec-game__input:focus-visible{outline:3px solid var(--color-calm-deep);outline-offset:2px;border-color:var(--color-ink)}.ec-game__formNote[data-registered=true]{color:var(--color-good-text);font-weight:600}.ec-game__podium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.ec-game__podium:has(>:first-child:last-child){grid-template-columns:minmax(0,20rem);justify-content:center}.ec-game__podium:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.ec-game__podiumStep[data-rank="1"]{order:2}.ec-game__podiumStep[data-rank="2"]{order:1}.ec-game__podiumStep[data-rank="3"]{order:3}.ec-game__podiumStep{text-align:center;background:var(--color-raised);border:var(--line-hair) solid var(--color-hairline);border-radius:var(--radius-lg,16px);min-height:7rem;box-shadow:var(--shadow-1);justify-items:center;gap:.25rem;padding:.9rem .6rem .8rem;display:grid}.ec-game__podiumStep[data-rank="1"]{background:var(--color-raised);min-height:8.6rem;color:var(--color-ink);border:var(--line-ink) solid var(--color-ink);box-shadow:var(--shadow-2)}.ec-game__podiumRank{font-variant-numeric:tabular-nums;width:1.9rem;height:1.9rem;color:var(--color-ink);background:var(--color-sunken);border-radius:50%;place-items:center;font-size:.86rem;font-weight:700;display:inline-grid}.ec-game__podiumStep[data-rank="1"] .ec-game__podiumRank{color:var(--color-on-inverse);background:var(--color-ink)}.ec-game__podiumStep[data-rank="2"] .ec-game__podiumRank{background:var(--ec-cyan)}@supports (color:color-mix(in lab, red, red)){.ec-game__podiumStep[data-rank="2"] .ec-game__podiumRank{background:color-mix(in srgb, var(--ec-cyan) 35%, var(--color-sunken))}}.ec-game__podiumStep[data-rank="3"] .ec-game__podiumRank{background:var(--ec-pink)}@supports (color:color-mix(in lab, red, red)){.ec-game__podiumStep[data-rank="3"] .ec-game__podiumRank{background:color-mix(in srgb, var(--ec-pink) 30%, var(--color-sunken))}}.ec-game__podiumName{overflow-wrap:anywhere;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.2rem;max-width:100%;font-size:.88rem;font-weight:600;display:inline-flex}.ec-game__podiumScore{font-family:var(--font-display), var(--font-sans), system-ui, sans-serif;font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:500;line-height:1}.ec-game__podiumStep[data-rank="1"] .ec-game__podiumScore{color:var(--color-ink);font-size:1.8rem}.ec-game__podiumLevel{color:var(--color-ink-muted);font-size:.68rem}.ec-game__podiumStep[data-rank="1"] .ec-game__podiumLevel{color:var(--color-ink-muted)}.ec-game__rowName{overflow-wrap:anywhere}.ec-game__youBadge{color:var(--ec-night);background:var(--ec-lime);border-radius:var(--radius-pill,999px);vertical-align:middle;margin-inline-start:.4rem;padding:.05rem .5rem;font-size:.66rem;font-weight:700;display:inline-block}.ec-game__tableWrap{background:var(--color-raised);border:var(--line-hair) solid var(--color-hairline);border-radius:var(--radius-lg,16px);overflow-x:auto}.ec-game__table{border-collapse:collapse;width:100%;font-size:.88rem}.ec-game__table th,.ec-game__table td{text-align:start;border-bottom:var(--line-hair) solid var(--color-hairline);padding:.6rem .9rem}.ec-game__table tbody tr:last-child td{border-bottom:0}.ec-game__table th{letter-spacing:0;color:var(--color-ink-muted);font-size:.72rem;font-weight:600}.ec-game__table td{font-variant-numeric:tabular-nums;color:var(--color-ink)}.ec-game__table tr[data-own-row=true] td,.ec-game__podiumStep[data-own-row=true]{background:var(--ec-lime)}@supports (color:color-mix(in lab, red, red)){.ec-game__table tr[data-own-row=true] td,.ec-game__podiumStep[data-own-row=true]{background:color-mix(in srgb, var(--ec-lime) 18%, var(--color-raised))}}.ec-game__guestStar{color:var(--color-ink-muted);font-size:.7rem}.ec-game-btn{background:var(--color-ink);border:var(--line-hair) solid var(--color-ink);border-radius:var(--radius-pill,999px);max-width:100%;min-height:64px;box-shadow:var(--shadow-2);color:var(--color-on-inverse);white-space:nowrap;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-press) var(--ease-out), background-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);align-items:center;gap:.9rem;padding-inline:1.6rem 1.7rem;text-decoration:none;display:inline-flex}.ec-game-btn:active{transform:scale(.97)}.ec-game-btn__sprite{flex:none;align-items:flex-end;gap:3px;width:1.6rem;height:1.5rem;display:inline-flex}.ec-game-btn__bar{background:var(--ec-cyan,#3ef0ff);transform-origin:50% 100%;height:100%;animation:ec-game-btn-bar var(--beat,.5s) var(--ease-breath) infinite alternate;border-radius:1px;flex:1 1 0}.ec-game-btn__bar:nth-child(2){background:var(--ec-lime,#b6ff3d);animation-delay:calc(var(--beat,.5s) * -.33)}.ec-game-btn__bar:nth-child(3){background:var(--ec-pink,#ff4d9d);animation-delay:calc(var(--beat,.5s) * -.66)}@keyframes ec-game-btn-bar{0%{transform:scaleY(.35)}to{transform:scaleY(1)}}.ec-game-btn__title{letter-spacing:.06em;font-size:1.125rem;font-weight:600}@media (max-width:639px){.ec-game-btn__title{font-size:1.0625rem}}@media (hover:hover) and (pointer:fine){.ec-game-btn:hover{background:var(--color-ink-hover);box-shadow:var(--shadow-3)}.ec-game__exit:hover,.ec-game__pause:hover{background:var(--color-hover);border-color:var(--color-border-strong)}.ec-game__cta:hover{box-shadow:0 14px 32px -12px #b6ff3dd9,inset 0 1px #ffffff80}.ec-game__secondary:hover{background:#ffffff24;border-color:#fff6}.ec-game__button:hover{background:var(--color-ink-hover)}.ec-game__button--quiet:hover{background:var(--color-hover)}.ec-game__button--restart:hover{background:var(--ec-lime)}@supports (color:color-mix(in lab, red, red)){.ec-game__button--restart:hover{background:color-mix(in srgb, var(--ec-lime) 85%, white)}}.ec-game__textButton:hover{color:var(--ec-on-night)}}@media (prefers-reduced-motion:reduce){.ec-game-btn__sprite{animation:none}.ec-game-btn__bar{animation:none;transform:scaleY(.7)}.ec-game__count,.ec-game__rhythmTitle,.ec-game__titleCard,.ec-game__titleName,.ec-game__results,.ec-game__overlay--banner,.ec-game__overlay--ready .ec-game__overlayTitle,.ec-game__comboValue,.ec-game__secondary--suggested,.ec-game__stage[data-ecstatic=true]:after{animation:none}.ec-game__feedback:not(:empty){animation:ec-game-feedback-calm .7s var(--ease-out) 1 forwards}@keyframes ec-game-feedback-calm{0%,60%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(0)scale(1)}}}}@layer utilities{.ec-game__table th:is(.p-1,.pb-1,.pb-2,.pe-1,.pe-3,.px-2,.px-3,.py-1,.py-1\.5,.py-2,.py-3,.text-center,.text-end,.text-right,.text-start){padding-right:revert-layer;padding-left:revert-layer;padding-top:revert-layer;padding-bottom:revert-layer;text-align:revert-layer}.ec-game__table td:is(.border,.border-\[var\(--color-border\)\],.p-1,.pe-3,.px-2,.px-3,.py-1,.py-1\.5,.py-2,.py-2\.5,.py-3,.text-center,.text-end,.text-right,.text-start){padding-right:revert-layer;padding-left:revert-layer;padding-top:revert-layer;padding-bottom:revert-layer;text-align:revert-layer;border-bottom-width:revert-layer;border-bottom-style:revert-layer;border-bottom-color:revert-layer}.ec-game__table th:is(.text-\[var\(--color-text-secondary\)\],.text-\[var\(--dash-muted\)\],.text-xs){color:revert-layer;font-size:revert-layer}.ec-game__table td:is(.tabular-nums,.text-\[var\(--color-text-primary\)\],.text-\[var\(--color-text-secondary\)\],.text-\[var\(--dash-ink\)\],.text-\[var\(--dash-muted\)\]){color:revert-layer;font-variant-numeric:revert-layer}}
