@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-card:#fffffff2;--bg-glass:#ffffffeb;--border-color:#0000001a;--border-highlight:#ef444459;--accent-purple:#ef4444;--accent-cyan:#06b6d4;--accent-pink:#ec4899;--accent-amber:#f59e0b;--accent-emerald:#10b981;--accent-active:#ef4444;--accent-gradient:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--accent-gradient-hover:linear-gradient(135deg, #f87171 0%, #ef4444 100%);--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--shadow-sm:0 2px 8px #0000000f;--shadow-md:0 8px 24px #00000014;--shadow-lg:0 16px 48px #0000001f;--shadow-glow:0 0 30px #ef444433;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-full:9999px;--transition-fast:.18s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#ef444414 0%,#f8fafc00 70%);width:500px;height:500px;position:fixed;top:-150px;left:15%}body:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#06b6d40f 0%,#f8fafc00 70%);width:600px;height:600px;position:fixed;bottom:-200px;right:10%}#root{z-index:1;min-height:100vh;position:relative}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-md)}.glass-panel-interactive{transition:transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal)}.glass-panel-interactive:hover{border-color:#ef444459;transform:translateY(-2px);box-shadow:0 10px 30px #00000014,0 0 20px #ef444426}.gradient-text{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.btn-primary{background:var(--accent-gradient);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.95rem;font-weight:600;display:inline-flex;box-shadow:0 4px 14px #ef44444d}.btn-primary:hover{background:var(--accent-gradient-hover);transform:translateY(-1px);box-shadow:0 6px 20px #ef444473}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:#0000000a;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.95rem;font-weight:500;display:inline-flex}.btn-secondary:hover{border-color:var(--border-highlight);background:#00000014}.btn-icon{border-radius:var(--radius-sm);border:1px solid var(--border-color);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#0000000a;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{color:var(--text-primary);border-color:var(--border-highlight);background:#00000014}.modal-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1000;background:#0f172a99;justify-content:center;align-items:center;padding:20px;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-highlight);border-radius:var(--radius-lg);width:100%;max-width:960px;max-height:90vh;box-shadow:var(--shadow-lg), 0 0 40px #ef444426;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.custom-play-overlay{z-index:20;cursor:pointer;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.play-style-glow{background:var(--accent-gradient);width:86px;height:86px;box-shadow:0 0 35px var(--accent-active), 0 10px 25px #0000004d;color:#fff;border-radius:50%;justify-content:center;align-items:center;animation:2.5s infinite pulseGlow;display:flex}.play-style-glow:hover{box-shadow:0 0 50px var(--accent-active), 0 12px 30px #0006;transform:translate(-50%,-50%)scale(1.12)}.play-style-glass{-webkit-backdrop-filter:blur(16px);color:#fff;background:#ffffff4d;border:2px solid #fff9;border-radius:50%;justify-content:center;align-items:center;width:90px;height:90px;display:flex;box-shadow:0 10px 30px #0003}.play-style-glass:hover{background:#ffffff73;border-color:#fff;transform:translate(-50%,-50%)scale(1.1)}.play-style-minimal{border:3px solid var(--accent-active);width:76px;height:76px;color:var(--accent-active);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.play-style-minimal:hover{background:var(--accent-active);color:#fff;transform:translate(-50%,-50%)scale(1.1)}.play-style-pill{border-radius:var(--radius-full);background:var(--accent-gradient);color:#fff;letter-spacing:.5px;gap:10px;padding:16px 32px;font-size:1.1rem;font-weight:700;box-shadow:0 8px 24px #00000040}.play-style-pill:hover{transform:translate(-50%,-50%)scale(1.08)}@keyframes pulseGlow{0%{box-shadow:0 0 25px var(--accent-active)}50%{box-shadow:0 0 45px var(--accent-active)}to{box-shadow:0 0 25px var(--accent-active)}}.instant-controls-bar{z-index:25;opacity:1;background:linear-gradient(#07090e00 0%,#07090e99 30%,#07090ef2 100%);flex-direction:column;gap:10px;padding:16px 20px 12px;transition:opacity .3s,transform .3s;display:flex;position:absolute;bottom:0;left:0;right:0}.instant-controls-bar.autohide{opacity:0;pointer-events:none;transform:translateY(10px)}.scrubber-container{cursor:pointer;background:#fff3;border-radius:4px;width:100%;height:6px;transition:height .15s;position:relative}.scrubber-container:hover{height:10px}.scrubber-buffer{background:#ffffff59;border-radius:4px;height:100%;position:absolute;top:0;left:0}.scrubber-progress{background:var(--accent-gradient);border-radius:4px;height:100%;position:absolute;top:0;left:0}.scrubber-thumb{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:50%;transform:translate(-50%,-50%)scale(0);box-shadow:0 0 8px #0006}.scrubber-container:hover .scrubber-thumb{transform:translate(-50%,-50%)scale(1)}.controls-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.controls-left,.controls-right{align-items:center;gap:12px;display:flex}.ctrl-btn{color:#fff;cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex}.ctrl-btn:hover{color:var(--accent-active);transform:scale(1.1)}.time-display{color:#fffc;-webkit-user-select:none;user-select:none;font-family:JetBrains Mono,monospace;font-size:.85rem}.volume-group{align-items:center;gap:6px;display:flex}.volume-slider{opacity:0;width:0;accent-color:var(--accent-active);transition:width .25s,opacity .25s}.volume-group:hover .volume-slider{opacity:1;width:60px}.toast-container{z-index:2000;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast-item{border:1px solid var(--accent-purple);border-radius:var(--radius-md);box-shadow:var(--shadow-lg), 0 0 20px #ef444426;color:var(--text-primary);background:#fff;align-items:center;gap:10px;padding:12px 20px;font-weight:600;animation:.25s ease-out slideInRight;display:flex}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}
