.rs-practice-container{margin-top:16px}.rs-practice-start-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:white;border:none;border-radius:12px;font-weight:600;font-size:15px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px rgba(59,130,246,.35)}.rs-practice-start-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(59,130,246,.45);background:linear-gradient(135deg,#2563eb,#1d4ed8)}.rs-practice-start-btn:active{transform:translateY(0)}.rs-practice-state-container{display:flex;align-items:center;gap:16px;padding:20px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.rs-practice-icon-wrapper{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;flex-shrink:0;position:relative}.rs-practice-listening{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#93c5fd}.rs-practice-listening-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:white}.rs-practice-sound-wave{display:flex;align-items:center;gap:3px;margin-top:8px}.rs-wave-bar{width:4px;height:16px;background:#3b82f6;border-radius:2px;animation:waveAnimation 1s ease-in-out infinite}.rs-wave-bar:first-child{animation-delay:0s}.rs-wave-bar:nth-child(2){animation-delay:.1s}.rs-wave-bar:nth-child(3){animation-delay:.2s}.rs-wave-bar:nth-child(4){animation-delay:.3s}.rs-wave-bar:nth-child(5){animation-delay:.4s}@keyframes waveAnimation{0%,to{height:8px}50%{height:24px}}.rs-practice-preparing{background:linear-gradient(135deg,#fefce8,#fef9c3);border-color:#fde047}.rs-practice-countdown-wrapper{flex-shrink:0}.rs-practice-countdown-circle{position:relative;width:80px;height:80px}.rs-countdown-svg{width:100%;height:100%;transform:rotate(-90deg)}.rs-countdown-bg{fill:none;stroke:#fef08a;stroke-width:8}.rs-countdown-progress{fill:none;stroke:#eab308;stroke-width:8;stroke-linecap:round}.rs-countdown-number{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:32px;font-weight:700;color:#ca8a04;animation:countdownPulse 1s ease-in-out infinite}@keyframes countdownPulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}}.rs-practice-recording{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#fca5a5}.rs-practice-recording-icon{background:linear-gradient(135deg,#ef4444,#dc2626);color:white}.rs-recording-pulse{position:absolute;width:100%;height:100%;border-radius:50%;background:rgba(239,68,68,.3);animation:recordingPulse 1.5s ease-out infinite}@keyframes recordingPulse{0%{transform:scale(1);opacity:.6}to{transform:scale(1.8);opacity:0}}.rs-practice-recording-info{flex:1}.rs-practice-recording-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rs-recording-title{color:#dc2626}.rs-recording-time{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:#dc2626;background:white;padding:4px 10px;border-radius:20px;border:1px solid #fca5a5}.rs-practice-progress-container{margin:12px 0}.rs-practice-progress-bar{width:100%;height:8px;background:#fecaca;border-radius:4px;overflow:hidden}.rs-practice-progress-fill{height:100%;background:linear-gradient(90deg,#ef4444,#dc2626);border-radius:4px;transition:width 1s linear;position:relative}.rs-practice-progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShine 2s linear infinite}@keyframes progressShine{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.rs-practice-complete{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}.rs-practice-complete-icon{background:linear-gradient(135deg,#22c55e,#16a34a);color:white}.rs-practice-evaluating{background:linear-gradient(135deg,#faf5ff,#f3e8ff);border-color:#d8b4fe}.rs-practice-evaluating-icon{background:linear-gradient(135deg,#a855f7,#9333ea)}.rs-evaluating-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.rs-practice-state-info{flex:1}.rs-practice-state-title{font-size:18px;font-weight:700;color:#1e293b;margin:0 0 4px}.rs-practice-state-desc{font-size:14px;color:#64748b;margin:0}.rs-practice-cancel-btn,.rs-practice-stop-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:white;border:1px solid #e2e8f0;border-radius:10px;font-size:14px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.rs-practice-cancel-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.rs-practice-stop-btn{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.rs-practice-stop-btn:hover{background:#fee2e2;border-color:#f87171}.rs-practice-action-buttons{display:flex;gap:10px}.rs-practice-retry-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:white;border:1px solid #e2e8f0;border-radius:10px;font-size:14px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s ease}.rs-practice-retry-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.rs-practice-submit-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:10px;font-size:14px;font-weight:600;color:white;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px rgba(34,197,94,.35)}.rs-practice-submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(34,197,94,.45);background:linear-gradient(135deg,#16a34a,#15803d)}.rs-practice-submit-btn:active{transform:translateY(0)}.rs-practice-auth-error{display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px 16px;background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;font-size:14px;color:#dc2626}.rs-practice-signin-btn{padding:6px 14px;background:#dc2626;color:white;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease}.rs-practice-signin-btn:hover{background:#b91c1c}.rs-practice-credit-error{display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px 16px;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;font-size:14px;color:#b45309}@media (max-width:640px){.rs-practice-state-container{flex-direction:column;text-align:center;padding:24px 16px}.rs-practice-state-info{width:100%}.rs-practice-recording-header{flex-direction:column;gap:8px}.rs-practice-action-buttons{flex-direction:column;width:100%}.rs-practice-retry-btn,.rs-practice-submit-btn{justify-content:center}.rs-practice-cancel-btn,.rs-practice-stop-btn{margin-top:12px}}.rs-game-overlay{display:flex;flex-direction:column;width:100%;height:calc(100vh - 60px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:box-shadow .1s;border-radius:12px;overflow:hidden}.rs-game-overlay.life-flash{box-shadow:inset 0 0 60px rgba(239,68,68,.7)}.rs-game-overlay:fullscreen{height:100vh;border-radius:0}.rs-game-overlay.theme-slate{background:#334155}.rs-game-overlay.theme-slate .rs-game-hud,.rs-game-overlay.theme-slate .rs-game-mic-bar{background:#293548}.rs-game-overlay.theme-slate .rs-game-transcript{background:#334155;border-color:#6366f1;color:white}.rs-game-overlay.theme-slate .rs-game-transcript::placeholder{color:#94a3b8}.rs-game-overlay.theme-navy{background:#1e3a5f}.rs-game-overlay.theme-navy .rs-game-hud,.rs-game-overlay.theme-navy .rs-game-mic-bar{background:#16304f}.rs-game-overlay.theme-navy .rs-game-transcript{background:#1e3a5f;border-color:#6366f1;color:white}.rs-game-overlay.theme-navy .rs-game-transcript::placeholder{color:#94a3b8}.rs-game-overlay.theme-sky{background:#e0f2fe}.rs-game-overlay.theme-sky .rs-game-hud,.rs-game-overlay.theme-sky .rs-game-mic-bar{background:#bae6fd}.rs-game-overlay.theme-sky .rs-game-hud-btn,.rs-game-overlay.theme-sky .rs-game-hud-score,.rs-game-overlay.theme-sky .rs-game-hud-title{color:#0c4a6e}.rs-game-overlay.theme-sky .rs-game-hud-combo{color:#f97316}.rs-game-hud{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;flex-shrink:0;gap:8px}.rs-game-hud-stats{display:flex;gap:20px;min-width:120px}.rs-game-hud-stat-block{display:flex;flex-direction:column;align-items:center;line-height:1.1}.rs-game-hud-stat-value{color:#fbbf24;font-weight:800;font-size:22px}.rs-game-hud-stat-label{color:#94a3b8;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.rs-game-hud-combo{color:#fb923c}.rs-game-hud-title{color:white;font-weight:700;letter-spacing:1px;font-size:13px;flex:1;text-align:center}.rs-game-hud-lives{font-size:16px}.rs-game-hud-btn{background:none;border:none;color:#cbd5e1;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;transition:color .15s}.rs-game-hud-btn:hover{color:white}.rs-game-fall-area{flex:1;position:relative;overflow:hidden}.rs-game-glow{inset:0;background:radial-gradient(ellipse at 25% 20%,rgba(99,102,241,.22) 0,transparent 55%),radial-gradient(ellipse at 75% 70%,rgba(139,92,246,.15) 0,transparent 50%)}.rs-game-glow,.rs-game-star{position:absolute;pointer-events:none}.rs-game-star{background:white;border-radius:50%;opacity:var(--lo);animation:rs-twinkle var(--dur) ease-in-out infinite var(--delay)}@keyframes rs-twinkle{0%,to{opacity:var(--lo);transform:scale(1)}50%{opacity:1;transform:scale(1.5)}}.rs-game-cloud{position:absolute;left:-250px;background:rgba(255,255,255,.9);border-radius:100px;pointer-events:none;filter:blur(4px);animation:rs-cloud-drift var(--cloud-dur) linear infinite var(--cloud-delay)}@keyframes rs-cloud-drift{0%{transform:translateX(0)}to{transform:translateX(2400px)}}.rs-game-danger-line{position:absolute;bottom:0;left:0;right:0;height:3px;background:rgba(248,113,113,.6)}.rs-game-hint-line{position:absolute;left:0;right:0;height:1px;background:rgba(251,191,36,.45)}.rs-game-sentence{position:absolute;background:white;border-radius:8px;padding:10px 14px;box-shadow:0 2px 12px rgba(0,0,0,.25);white-space:normal;word-break:break-word;max-width:42%;font-size:14px;transition:transform .15s,opacity .15s;animation:sentence-appear .2s ease-out}@keyframes sentence-appear{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.rs-game-sentence.crushed{animation:sentence-crush .3s ease-out forwards}@keyframes sentence-crush{0%{transform:scale(1);opacity:1;background:white}30%{transform:scale(1.08);opacity:1;background:#bbf7d0}to{transform:scale(1.1);opacity:0;background:#bbf7d0}}.rs-game-sentence-ko{font-size:13px;color:#64748b;margin-bottom:4px;white-space:nowrap}.rs-game-sentence-visible{font-weight:700;color:#1e293b}.rs-game-sentence-blurred{color:#64748b;filter:blur(4px);user-select:none}.rs-game-mic-bar{padding:12px 16px;position:relative;gap:12px}.rs-game-mic-bar,.rs-game-mic-icon{flex-shrink:0;display:flex;justify-content:center;align-items:center}.rs-game-mic-icon{width:40px;height:40px;border-radius:50%;background:rgba(99,102,241,.25);border:2px solid rgba(99,102,241,.5);transition:background .2s,border-color .2s}.rs-game-mic-icon.listening{background:rgba(239,68,68,.3);border-color:#ef4444;animation:rs-mic-pulse 1.2s ease-in-out infinite}@keyframes rs-mic-pulse{0%,to{box-shadow:0 0 0 0 rgba(239,68,68,.4)}50%{box-shadow:0 0 0 8px rgba(239,68,68,0)}}.rs-game-transcript{flex:1;max-width:480px;min-height:38px;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.2);border-radius:8px;padding:8px 12px;font-size:18px;color:#e2e8f0;display:flex;align-items:center;justify-content:center;gap:10px;text-align:center}.rs-game-overlay.theme-sky .rs-game-transcript{background:rgba(12,74,110,.08);border-color:rgba(12,74,110,.3);color:#0c4a6e}.rs-game-transcript-placeholder{opacity:.45;font-style:italic}.rs-game-speech-panel{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);width:min(520px,86%);background:rgba(15,23,42,.82);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px 14px 8px;pointer-events:none;display:flex;flex-direction:column;gap:7px;animation:rs-speech-fadein .15s ease}.rs-game-overlay.theme-sky .rs-game-speech-panel{background:rgba(224,242,254,.88);border-color:rgba(12,74,110,.2)}@keyframes rs-speech-fadein{0%{opacity:0;transform:translateX(-50%) translateY(4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.rs-game-speech-row{display:flex;align-items:center;justify-content:center;gap:8px}.rs-game-speech-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.rs-game-speech-dot.interim{background:#facc15;animation:rs-dot-pulse .9s ease-in-out infinite}.rs-game-speech-dot.final{background:#4ade80}@keyframes rs-dot-pulse{0%,to{opacity:1}50%{opacity:.3}}.rs-game-speech-text{font-size:15px;color:#e2e8f0;line-height:1.3;flex:1}.rs-game-overlay.theme-sky .rs-game-speech-text{color:#0c4a6e}.rs-game-speech-pct{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;min-width:36px;text-align:right}.rs-game-speech-pct.good{color:#4ade80}.rs-game-speech-pct.bad{color:#f87171}.rs-game-speech-bar-track{height:3px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}.rs-game-overlay.theme-sky .rs-game-speech-bar-track{background:rgba(12,74,110,.12)}.rs-game-speech-bar-fill{height:100%;border-radius:99px;transition:width .15s ease,background .2s ease}.rs-game-mic-blocked{position:absolute;inset:0;flex-direction:column;gap:14px;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);color:#f87171;font-size:18px;animation:rs-speech-fadein .2s ease;z-index:10}.rs-game-mic-blocked,.rs-game-setup-mic-warning{display:flex;align-items:center;justify-content:center;font-weight:600}.rs-game-setup-mic-warning{gap:10px;max-width:min(520px,92%);color:#fecaca;font-size:14px;text-align:center}.rs-game-score-popup{position:absolute;pointer-events:none;transform:translateX(-50%);font-size:26px;font-weight:900;color:#fbbf24;text-shadow:0 2px 12px rgba(0,0,0,.6),0 0 20px rgba(251,191,36,.5);animation:rs-score-float .85s cubic-bezier(.22,1,.36,1) forwards;white-space:nowrap}.rs-game-score-popup.half{color:#94a3b8;text-shadow:0 2px 8px rgba(0,0,0,.4);font-size:20px}@keyframes rs-score-float{0%{opacity:1;transform:translateX(-50%) translateY(0) scale(1.4)}30%{opacity:1;transform:translateX(-50%) translateY(-28px) scale(1)}to{opacity:0;transform:translateX(-50%) translateY(-72px) scale(.8)}}.rs-game-lives-bottom{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:16px;display:flex;align-items:center;gap:6px}.rs-game-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;gap:24px;color:white}.rs-game-overlay.theme-sky .rs-game-screen{color:#0c4a6e}.rs-game-screen-title{font-size:24px;font-weight:700;text-align:center}.rs-game-screen-subtitle{font-size:15px;opacity:.8;text-align:center}.rs-game-color-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.rs-game-color-btn{padding:8px 20px;border-radius:20px;border:2px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:white;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.rs-game-overlay.theme-sky .rs-game-color-btn{border-color:rgba(12,74,110,.3);background:rgba(12,74,110,.08);color:#0c4a6e}.rs-game-color-btn.active{background:rgba(255,255,255,.25);border-color:rgba(255,255,255,.8)}.rs-game-overlay.theme-sky .rs-game-color-btn.active{background:rgba(12,74,110,.2);border-color:#0c4a6e}.rs-game-color-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px}.rs-game-color-dot.green{background:#22c55e}.rs-game-color-dot.blue{background:#3b82f6}.rs-game-color-dot.orange{background:#f97316}.rs-game-color-dot.yellow{background:#eab308}.rs-game-color-dot.red{background:#ef4444}.rs-game-btn-primary{padding:12px 40px;background:#6366f1;color:white;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:background .15s}.rs-game-btn-primary:hover{background:#4f46e5}.rs-game-btn-primary:disabled{background:#94a3b8;cursor:not-allowed}.rs-game-btn-secondary{padding:10px 32px;background:rgba(255,255,255,.15);color:white;border:2px solid rgba(255,255,255,.4);border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s}.rs-game-btn-secondary:hover{background:rgba(255,255,255,.25)}.rs-game-overlay.theme-sky .rs-game-btn-secondary{background:rgba(12,74,110,.1);color:#0c4a6e;border-color:rgba(12,74,110,.4)}.rs-game-stat{font-size:48px;font-weight:800}.rs-game-stat-label{font-size:13px;opacity:.7;margin-top:-8px}