.melody-game.svelte-1m758a3{display:flex;flex-direction:column;flex:1;overflow:hidden}.game-screen.svelte-1m758a3{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;flex:1;padding:24px;width:100%;animation:screenFadeIn .3s ease-out}.game-header.svelte-1m758a3{display:flex;flex-direction:column;align-items:center;gap:4px}.round-indicator.svelte-1m758a3{font-size:var(--text-caption);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.5px}.phase-label.svelte-1m758a3{font-family:"Syne",var(--font-primary);font-size:18px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.watching.svelte-1m758a3{color:#a855f7}.responding.svelte-1m758a3{color:var(--text-secondary)}.progress-dots.svelte-1m758a3{display:flex;gap:8px;justify-content:center}.dot.svelte-1m758a3{width:8px;height:8px;border-radius:50%;background:var(--border-subtle);transition:background .2s ease,transform .2s ease}.dot.filled.svelte-1m758a3{background:#a855f7}.dot.wrong.svelte-1m758a3{background:#f43f5e}.dot.playing.svelte-1m758a3{background:#a855f7;transform:scale(1.4)}.button-row.svelte-1m758a3{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px 0}.btn-wrap.svelte-1m758a3{position:relative;flex-shrink:0}.particle.svelte-1m758a3{position:absolute;bottom:100%;pointer-events:none;opacity:0;animation:svelte-1m758a3-particleFloat .9s ease-out forwards;text-shadow:0 0 8px currentColor;transform-origin:center}@keyframes svelte-1m758a3-particleFloat{0%{opacity:0;transform:translateY(0) scale(.3) rotate(0)}15%{opacity:.85;transform:translateY(-8px) scale(1) rotate(-5deg)}to{opacity:0;transform:translateY(-70px) scale(.4) rotate(15deg)}}.ripple.svelte-1m758a3{position:absolute;top:50%;left:50%;width:100%;height:100%;margin-left:-50%;margin-top:-50%;border-radius:50%;border:1.5px solid var(--ripple-color);pointer-events:none;animation:svelte-1m758a3-rippleExpand .6s ease-out forwards}@keyframes svelte-1m758a3-rippleExpand{0%{opacity:.45;transform:scale(1)}to{opacity:0;transform:scale(3)}}.tone-btn.svelte-1m758a3{width:100%;height:100%;border-radius:50%;border:2px solid var(--border-subtle);background:var(--bg-primary);cursor:pointer;position:relative;transition:border-color .15s ease,transform .12s var(--ease-spring),box-shadow .15s ease,opacity .15s ease;-webkit-tap-highlight-color:transparent;padding:0}.tone-btn.svelte-1m758a3:not(:disabled):hover{border-color:#a855f7;transform:scale(1.1)}.tone-btn.svelte-1m758a3:not(:disabled):active{transform:scale(.9)}.tone-btn.svelte-1m758a3:disabled{cursor:default}.tone-btn.active.svelte-1m758a3{border-color:#a855f7;background:color-mix(in srgb,#a855f7 15%,var(--bg-primary));box-shadow:0 0 16px #a855f759;transform:scale(1.15)}.tone-btn.wrong.svelte-1m758a3{border-color:#f43f5e;background:color-mix(in srgb,#f43f5e 15%,var(--bg-primary));animation:svelte-1m758a3-wrongShake .4s ease}.tone-btn.dimmed.svelte-1m758a3{opacity:.4}.glow.svelte-1m758a3{position:absolute;inset:-6px;border-radius:50%;border:1px solid #a855f7;opacity:.4;animation:svelte-1m758a3-glowPulse .3s ease-out}.hint.svelte-1m758a3{font-size:var(--text-caption);color:var(--text-muted);letter-spacing:.5px}.round-result.svelte-1m758a3{justify-content:center;gap:16px}.round-score-display.svelte-1m758a3{display:flex;align-items:baseline;gap:6px}.round-score-value.svelte-1m758a3{font-family:var(--font-mono, var(--font-primary));font-size:56px;font-weight:700;letter-spacing:-2px;animation:numSlideIn .35s var(--ease-smooth)}.round-score-max.svelte-1m758a3{font-size:var(--text-body-lg);color:var(--text-tertiary)}.round-detail.svelte-1m758a3{font-size:var(--text-body);color:var(--text-secondary);animation:descFadeIn .3s ease-out}.round-rating.svelte-1m758a3{font-family:Syne,var(--font-primary);font-size:22px;font-weight:800;letter-spacing:2px;text-transform:uppercase;text-align:center;animation:screenFadeIn .3s ease-out}.near-miss.svelte-1m758a3{display:block;font-size:13px;font-weight:600;letter-spacing:1px;opacity:.6;margin-top:4px}.challenge-section.svelte-1m758a3{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;width:100%}.challenge-prompt.svelte-1m758a3{font-size:var(--text-caption);color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-weight:600}@keyframes svelte-1m758a3-glowPulse{0%{transform:scale(.8);opacity:.6}to{transform:scale(1);opacity:.4}}@keyframes svelte-1m758a3-wrongShake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}
