@import"https://fonts.googleapis.com/css2?family=Outfit:wght@400;600;800&display=swap";:root{--bg-color: #0f111a;--text-color: #ffffff;--accent-primary: #00f2fe;--accent-secondary: #4facfe;--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Outfit,sans-serif;background-color:var(--bg-color);background-image:radial-gradient(circle at 15% 50%,rgba(79,172,254,.15),transparent 25%),radial-gradient(circle at 85% 30%,rgba(0,242,254,.1),transparent 25%);color:var(--text-color);min-height:100vh;display:flex;flex-direction:column}#root{min-height:100vh;display:flex;flex-direction:column}.container{max-width:800px;margin:0 auto;padding:2rem;flex:1;display:flex;flex-direction:column;width:100%}.title{text-align:center;font-size:3rem;font-weight:800;margin-bottom:2rem;background:linear-gradient(to right,var(--accent-secondary),var(--accent-primary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 30px rgba(0,242,254,.3)}.glass-card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:20px;padding:2rem;box-shadow:0 8px 32px #0000004d;transition:transform .3s ease,box-shadow .3s ease}.glass-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px #00f2fe33}.btn{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-color);padding:1rem 2rem;font-size:1.1rem;font-family:Outfit,sans-serif;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;text-transform:uppercase;letter-spacing:1px}.btn:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,var(--accent-secondary),var(--accent-primary));opacity:0;transition:opacity .3s ease;z-index:-1}.btn:hover{border-color:var(--accent-primary);box-shadow:0 0 15px #00f2fe4d}.btn:hover:before{opacity:.2}.btn:active{transform:scale(.95)}.btn.primary{background:linear-gradient(45deg,var(--accent-secondary),var(--accent-primary));color:#000;border:none;font-weight:800}.btn.primary:hover{box-shadow:0 0 20px #00f2fe99;transform:translateY(-2px)}.btn.primary:hover:before{opacity:0}.btn.danger{background:#ff32321a;border-color:#ff32324d}.btn.danger:hover{background:#ff323233;border-color:#ff323280;box-shadow:0 0 15px #ff32324d}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.input-field{width:100%;background:#0003;border:1px solid var(--glass-border);color:var(--text-color);padding:1rem;font-size:1rem;font-family:inherit;border-radius:12px;outline:none;transition:all .3s ease}.input-field:focus{border-color:var(--accent-primary);box-shadow:0 0 10px #00f2fe33;background:#0006}.input-group{display:flex;gap:1rem;margin-bottom:2rem}.nav{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.nav-link{color:var(--text-color);text-decoration:none;opacity:.6;font-weight:600;padding:.5rem 1rem;border-bottom:2px solid transparent;transition:all .3s ease}.nav-link:hover,.nav-link.active{opacity:1;border-bottom-color:var(--accent-primary);text-shadow:0 0 10px rgba(0,242,254,.5)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .5s cubic-bezier(.4,0,.2,1) forwards}.toast-container{position:fixed;bottom:2rem;right:2rem;display:flex;flex-direction:column;gap:.75rem;z-index:9999;pointer-events:none}.toast-item{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:14px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:.95rem;font-weight:600;max-width:340px;color:#fff;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s ease;pointer-events:auto}.toast-success{background:#00f2fe1f;border:1px solid rgba(0,242,254,.4);box-shadow:0 4px 20px #00f2fe33}.toast-error{background:#ff3c3c26;border:1px solid rgba(255,60,60,.4);box-shadow:0 4px 20px #ff3c3c33}.toast-warning{background:#ffc8001f;border:1px solid rgba(255,200,0,.4);box-shadow:0 4px 20px #ffc80033}.toast-icon{font-size:1.2rem;flex-shrink:0}.step-control{display:flex;align-items:center;gap:.25rem}.step-btn{padding:.3rem .6rem!important;font-size:1.1rem!important;min-width:34px;line-height:1;border-radius:8px!important;text-transform:none!important;letter-spacing:0!important}.duration-input{width:60px!important;padding:.4rem .3rem!important;text-align:center;font-size:1rem}.song-list{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto;padding-right:.5rem}.song-item{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1rem;background:#0003;border-radius:10px;gap:.75rem;flex-wrap:wrap}.song-info{display:flex;flex-direction:column;gap:.2rem;flex:1 1 180px;overflow:hidden}.song-info strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-artist{font-size:.8rem;opacity:.6}.song-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.label-sm{font-size:.9rem;opacity:.8}.quiz-view{text-align:center;padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center}.quiz-header{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:2rem}.player-wrapper{position:relative;width:100%;max-width:640px;aspect-ratio:16 / 9;background:#000;border-radius:12px;overflow:hidden;margin-bottom:2rem;border:2px solid rgba(255,255,255,.1);transition:box-shadow .5s ease}.player-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#0f111af2,#003250f2);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.answer-area{height:80px;margin-bottom:2rem;display:flex;flex-direction:column;justify-content:center}.quiz-controls{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;align-items:center}.duration-group{display:flex;align-items:center;gap:.5rem;background:#0000004d;padding:.5rem .9rem;border-radius:10px;border:1px solid rgba(255,255,255,.1)}.spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(0,0,0,.3);border-top-color:#000;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
