@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-base:#f8fafc;--bg-elevated:#fff;--bg-glass:#ffffffe0;--bg-glass-hover:#f8fafcf5;--bg-surface:#f1f5f9;--bg-surface-hover:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent:#2563eb;--accent-2:#3b82f6;--accent-gradient:linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--accent-glow:#2563eb29;--success:#16a34a;--error:#dc2626;--warning:#d97706;--border:#e2e8f0;--border-accent:#93c5fd;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:24px;--r-full:9999px;--shadow-sm:0 1px 3px #0f172a0d, 0 1px 2px #0f172a08;--shadow-md:0 4px 16px -2px #0f172a14, 0 2px 6px -1px #0f172a0a;--shadow-lg:0 12px 32px -4px #0f172a1f, 0 4px 12px -2px #0f172a0f;--shadow-glow:0 4px 20px var(--accent-glow);--t-fast:.12s ease;--t-mid:.25s ease;--t-slow:.45s cubic-bezier(.4, 0, .2, 1);--sidebar-w:260px;--header-h:64px;--player-h:80px;--bottom-nav-h:60px}[data-theme=dark]{--bg-base:#0b0f19;--bg-elevated:#151c2c;--bg-glass:#0f172ae0;--bg-glass-hover:#151c2cf5;--bg-surface:#1e293b;--bg-surface-hover:#334155;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--accent:#3b82f6;--accent-2:#60a5fa;--accent-gradient:linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--accent-glow:#3b82f640;--border:#2a364f;--border-accent:#3b82f6;--shadow-sm:0 1px 3px #0000004d, 0 1px 2px #0003;--shadow-md:0 4px 16px -2px #0006, 0 2px 6px -1px #0003;--shadow-lg:0 12px 32px -4px #00000080, 0 4px 12px -2px #0000004d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(60% 40% at 20% 0,#2563eb0d 0%,#0000 60%),radial-gradient(50% 50% at 80% 100%,#3b82f60a 0%,#0000 60%);min-height:100dvh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}#root{flex-direction:column;min-height:100dvh;display:flex}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px)saturate(180%);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.icon-btn{cursor:pointer;color:var(--text-secondary);border-radius:var(--r-full);transition:color var(--t-fast), background var(--t-fast);-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:inline-flex}.icon-btn:hover{color:var(--accent);background:var(--bg-surface)}.icon-btn:active{transform:scale(.92)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.btn{border-radius:var(--r-md);cursor:pointer;transition:all var(--t-fast);-webkit-tap-highlight-color:transparent;border:none;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:.875rem;font-weight:500;display:inline-flex}.btn--primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.btn--primary:hover{box-shadow:0 6px 18px var(--accent-glow);transform:translateY(-1px)}.btn--ghost{background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border)}.btn--ghost:hover{background:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--border-accent)}.btn--ghost:disabled{opacity:.5;cursor:not-allowed}.btn--sm{padding:6px 12px;font-size:.8rem}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-content{padding:0 1.5rem calc(var(--bottom-nav-h) + var(--player-h) + 3rem);box-sizing:border-box;flex:1;width:100%;max-width:1280px;margin:0 auto}.app-header{z-index:200;height:var(--header-h);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;max-width:100%;padding:0 1.5rem;display:flex;position:sticky;top:0}.header-left,.header-right{align-items:center;gap:8px;display:flex}.header-logo-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:10px;text-decoration:none;display:flex}.logo-icon{border-radius:var(--r-md);background:var(--accent-gradient);width:36px;height:36px;box-shadow:0 4px 12px var(--accent-glow);flex-shrink:0;justify-content:center;align-items:center;display:flex}.logo-text{color:var(--text-primary);letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.header-search-btn{padding:8px}.home-page{padding-top:2rem;animation:.4s fadeIn}.home-hero{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:3rem 1rem 3.5rem;display:flex}.home-hero-icon{border-radius:var(--r-xl);background:var(--accent-gradient);width:80px;height:80px;box-shadow:0 12px 32px var(--accent-glow);justify-content:center;align-items:center;margin-bottom:4px;animation:4s ease-in-out infinite float;display:flex}.home-title{color:var(--text-primary);letter-spacing:-.03em;font-size:clamp(2.2rem,6vw,3rem);font-weight:800;line-height:1.1}.home-tagline{color:var(--text-muted);margin-top:-2px;font-size:1.05rem;font-weight:500}.home-subtitle{color:var(--text-secondary);font-size:.95rem}.home-folders-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-size:.8rem;font-weight:700}.section-count{color:var(--text-muted);font-size:.8rem}.home-folders-grid{padding-bottom:calc(var(--player-h) + 2rem);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.folder-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;transition:all var(--t-mid);-webkit-tap-highlight-color:transparent;min-height:110px;box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:1.25rem 1.25rem 1rem;display:flex;position:relative;overflow:hidden}.folder-card:before{content:"";opacity:0;transition:opacity var(--t-mid);background:linear-gradient(135deg,#2563eb0d 0%,#0000 60%);position:absolute;inset:0}.folder-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-accent);transform:translateY(-3px)}.folder-card:hover:before{opacity:1}.folder-card:active{transform:translateY(-1px)}.folder-card-top{justify-content:space-between;align-items:center;width:100%;display:flex}.folder-card-icon{flex-shrink:0;width:44px;height:44px}.folder-card-name{color:var(--text-primary);word-break:break-word;margin-top:2px;font-size:.9rem;font-weight:600;line-height:1.35}.folder-card-actions{opacity:.85;transition:opacity var(--t-fast);align-items:center;gap:4px;display:flex}.folder-card:hover .folder-card-actions{opacity:1}.folder-card-action-btn{background:var(--bg-surface);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--r-full);transition:all var(--t-fast);justify-content:center;align-items:center;padding:6px;display:inline-flex}.folder-card-action-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:scale(1.08)}.folder-card-download{color:var(--accent);border-color:var(--border-accent);background:#2563eb14}.folder-card-download:hover{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.folder-card-progress{color:var(--accent);padding:0 4px;font-size:.72rem;font-weight:700}.folder-page{grid-template-columns:var(--sidebar-w) 1fr;padding-top:1.5rem;padding-bottom:calc(var(--player-h) + 2rem);min-height:calc(100dvh - var(--header-h));align-items:start;gap:1.5rem;animation:.3s fadeIn;display:grid}.sidebar{top:calc(var(--header-h) + 1.5rem);padding:1rem;position:sticky}.sidebar-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.sidebar-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:.75rem;font-weight:700}.back-btn{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;color:var(--text-secondary);transition:all var(--t-fast);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;padding:4px;display:inline-flex}.back-btn:hover{background:var(--bg-surface-hover);color:var(--accent);border-color:var(--border-accent)}.folder-list{flex-direction:column;gap:4px;display:flex}.folder-item{border-radius:var(--r-md);cursor:pointer;transition:all var(--t-fast);color:var(--text-secondary);-webkit-tap-highlight-color:transparent;border:1px solid #0000;align-items:center;gap:10px;padding:10px 12px;display:flex;position:relative}.folder-item:hover{background:var(--bg-surface);color:var(--text-primary)}.folder-item:hover .folder-item-actions{opacity:1}.folder-item--active{color:var(--accent);border-color:var(--border-accent);background:#2563eb14;font-weight:600}.folder-item-icon{flex-shrink:0}.folder-item-name{word-break:break-word;flex:1;font-size:.875rem;font-weight:500;line-height:1.3}.folder-item-actions{opacity:0;transition:opacity var(--t-fast);flex-shrink:0;align-items:center;gap:2px;margin-left:auto;display:flex}.folder-item-download-btn{padding:4px}.folder-item-download-btn:hover{color:var(--accent)}.folder-item-progress{color:var(--accent);padding:0 2px;font-size:.7rem;font-weight:700}.folder-share-btn{transition:opacity var(--t-fast);flex-shrink:0}.folder-list-empty{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:2rem 1rem;font-size:.8rem;display:flex}.folder-main{flex-direction:column;gap:1rem;min-width:0;display:flex}.folder-main-header{padding:1.25rem 1.5rem}.folder-main-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.folder-main-title{letter-spacing:-.02em;color:var(--text-primary);font-size:clamp(1.2rem,3.5vw,1.6rem);font-weight:700;line-height:1.2}.folder-main-count{color:var(--text-muted);margin-top:4px;font-size:.85rem;font-weight:500;display:block}.folder-main-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.folder-download-btn{background:var(--accent-gradient);color:#fff;border-radius:var(--r-md);cursor:pointer;box-shadow:0 4px 16px var(--accent-glow);-webkit-tap-highlight-color:transparent;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex}.folder-download-btn:hover{box-shadow:0 6px 24px var(--accent-glow);filter:brightness(1.06);transform:translateY(-2px)}.folder-download-btn:active{box-shadow:0 2px 10px var(--accent-glow);transform:translateY(0)}.folder-download-btn:disabled{opacity:.85;cursor:wait;transform:none}.track-list{flex-direction:column;gap:4px;padding:.75rem;display:flex}.track-list-empty{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:4rem 1rem;font-size:.9rem;display:flex}.track-item{border-radius:var(--r-md);cursor:pointer;transition:all var(--t-fast);background:var(--bg-elevated);-webkit-tap-highlight-color:transparent;box-shadow:var(--shadow-sm);border:1px solid #0000;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:10px 14px;display:grid;position:relative}.track-item:hover{background:var(--bg-surface);border-color:var(--border)}.track-item:hover .track-actions{opacity:1}.track-item:active{transform:scale(.99)}.track-item--active{border-color:var(--border-accent);background:#2563eb0f}.track-num{border-radius:var(--r-sm);background:var(--bg-surface);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.track-item--active .track-num{background:var(--accent-gradient)}.track-index{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:500}.track-info{flex-direction:column;gap:3px;min-width:0;display:flex}.track-title{white-space:nowrap;text-overflow:ellipsis;color:var(--text-primary);font-size:.9rem;font-weight:500;overflow:hidden}.track-title--active{color:var(--accent);font-weight:600}.track-meta{color:var(--text-muted);font-size:.75rem}.track-actions{opacity:0;transition:opacity var(--t-fast);align-items:center;gap:4px;display:flex}.playing-bars{align-items:flex-end;gap:2px;width:18px;height:16px;display:flex}.playing-bar{background:#fff;border-radius:2px;width:3px;animation:.9s ease-in-out infinite equalize}.playing-bar:first-child{height:6px;animation-delay:0s}.playing-bar:nth-child(2){height:14px;animation-delay:-.3s}.playing-bar:nth-child(3){height:10px;animation-delay:-.6s}.playing-bar:nth-child(4){height:16px;animation-delay:-.1s}@keyframes equalize{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.player-bar-wrapper{bottom:calc(var(--bottom-nav-h) + .6rem);z-index:200;pointer-events:none;background:0 0;width:100%;max-width:1280px;margin:0 auto;padding:0 1rem;position:fixed;left:0;right:0}.player-bar-wrapper .glass-panel{pointer-events:all}.player-bar{overflow:hidden;background:var(--bg-elevated)!important;border-color:var(--border)!important;box-shadow:var(--shadow-lg)!important;padding:0!important}.player-compact{height:var(--player-h);cursor:pointer;grid-template-columns:1fr auto auto;align-items:center;gap:1.5rem;padding:0 1.5rem;display:grid}.player-track-info{flex-shrink:0;align-items:center;gap:12px;width:220px;min-width:0;display:flex}.player-cover{border-radius:var(--r-md);background:var(--bg-surface);width:46px;height:46px;box-shadow:var(--shadow-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.player-cover--playing{background:var(--accent-gradient);box-shadow:0 4px 14px var(--accent-glow);animation:2s ease-in-out infinite pulseGlow}.player-cover--playing svg{color:#fff!important}.player-text{min-width:0}.player-title{white-space:nowrap;text-overflow:ellipsis;color:var(--text-primary);max-width:170px;font-size:.875rem;font-weight:600;overflow:hidden}.player-subtitle{color:var(--text-muted);font-size:.75rem}.marquee-wrapper{max-width:170px;overflow:hidden}.marquee{animation:8s linear infinite marquee;display:inline-block}@keyframes marquee{0%{transform:translate(0)}30%{transform:translate(0)}70%{transform:translate(calc(150px - 100%))}to{transform:translate(calc(150px - 100%))}}.player-controls-center{flex-direction:column;flex:1;align-items:center;gap:8px;max-width:560px;display:flex}.player-controls{align-items:center;gap:10px;display:flex}.control-btn{padding:8px}.control-btn--sm{padding:5px}.control-btn--lg{padding:10px}.control-btn--active{color:var(--accent)!important}.play-pause-btn{border-radius:var(--r-full);background:var(--accent);color:#fff;cursor:pointer;width:44px;height:44px;transition:transform var(--t-fast), box-shadow var(--t-fast);-webkit-tap-highlight-color:transparent;box-shadow:0 4px 12px var(--accent-glow);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.play-pause-btn:hover{box-shadow:0 6px 18px var(--accent-glow);transform:scale(1.06)}.play-pause-btn:active{transform:scale(.95)}.play-pause-btn--sm{width:36px;height:36px}.play-pause-btn--xl{background:var(--accent-gradient);color:#fff;width:72px;height:72px;box-shadow:0 8px 24px var(--accent-glow)}.play-pause-btn--xl:hover{box-shadow:0 12px 32px var(--accent-glow)}.player-right{justify-content:flex-end;align-items:center;gap:10px;width:200px;display:flex}.speed-btn{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--t-fast);-webkit-tap-highlight-color:transparent;padding:4px 8px;font-family:inherit;font-size:.75rem;font-weight:600}.speed-btn:hover{color:var(--accent);border-color:var(--border-accent)}.player-mobile-controls{display:none}.player-mini-progress{background:var(--bg-surface);border-radius:0 0 var(--r-lg) var(--r-lg);height:3px;overflow:hidden}.player-mini-progress-fill{background:var(--accent-gradient);border-radius:var(--r-full);height:100%;transition:width .3s linear}.player-overlay{z-index:99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);touch-action:none;overscroll-behavior:none;background:#0f172a66;animation:.25s fadeIn;position:fixed;inset:0}.player-bar-wrapper--expanded{z-index:300;touch-action:none;overscroll-behavior:none;background:0 0;width:100vw;height:100dvh;position:fixed;overflow:hidden;max-width:100%!important;margin:0!important;padding:0!important;inset:0!important}.player-bar--expanded{flex-direction:column;width:100%;height:100%;display:flex;-webkit-backdrop-filter:blur(40px)saturate(180%)!important;box-shadow:none!important;background:#fffffffa!important;border-radius:0!important}.player-drag-handle{cursor:grab;touch-action:none;justify-content:center;padding:10px 0 2px;display:flex}.drag-handle-bar{background:var(--text-muted);border-radius:var(--r-full);opacity:.5;width:36px;height:4px}.player-expanded{box-sizing:border-box;flex-direction:column;justify-content:space-between;align-items:center;gap:1.25rem;height:100%;max-height:100dvh;padding:1rem 1.5rem 2rem;animation:.35s cubic-bezier(.4,0,.2,1) slideUp;display:flex;overflow-y:auto}.expanded-header{justify-content:space-between;align-items:center;width:100%;padding-top:.25rem;display:flex}.expanded-header-title{letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary);font-size:.85rem;font-weight:700}.expanded-header-close-btn,.expanded-header-btn{background:var(--bg-surface);border:1px solid var(--border);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--t-fast);-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;display:flex}.expanded-header-close-btn:hover,.expanded-header-btn:hover{background:var(--bg-surface-hover);color:var(--accent);transform:translateY(1px)}.expanded-cover{border-radius:var(--r-xl);background:var(--accent-gradient);width:min(220px,52vw);height:min(220px,52vw);box-shadow:0 16px 40px var(--accent-glow);flex-shrink:0;justify-content:center;align-items:center;margin:.25rem 0;display:flex;position:relative;overflow:hidden}.expanded-disc{background:#fff3;border:2px solid #fff6;border-radius:50%;justify-content:center;align-items:center;width:min(150px,36vw);height:min(150px,36vw);display:flex}.expanded-disc--spinning{animation:8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.expanded-track-info{text-align:center;width:100%;position:relative}.expanded-title{letter-spacing:-.02em;word-break:break-word;color:var(--text-primary);margin-bottom:4px;font-size:1.15rem;font-weight:700}.expanded-subtitle{color:var(--text-secondary);font-size:.875rem}.share-btn--expanded{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-full);cursor:pointer;color:var(--text-secondary);transition:all var(--t-fast);justify-content:center;align-items:center;padding:8px;display:inline-flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.share-btn--expanded:hover{color:var(--text-primary);border-color:var(--border-accent)}.expanded-controls,.expanded-secondary{justify-content:center;align-items:center;gap:16px;width:100%;display:flex}.expanded-close-btn{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-full);cursor:pointer;width:48px;height:48px;color:var(--text-primary);box-shadow:var(--shadow-sm);-webkit-tap-highlight-color:transparent;flex-shrink:0;justify-content:center;align-items:center;margin-top:.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.expanded-close-btn:hover{background:var(--bg-surface-hover);border-color:var(--border-accent);color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(2px)scale(1.04)}.expanded-close-btn:active{transform:translateY(3px)scale(.96)}.progress-wrapper{align-items:center;gap:10px;width:100%;display:flex}.progress-time{color:var(--text-muted);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;min-width:36px;font-size:.75rem}.progress-time:last-child{text-align:right}.progress-bar-bg{background:var(--bg-surface);border-radius:var(--r-full);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;height:5px;transition:height var(--t-fast);flex:1;position:relative;overflow:visible}.progress-bar-bg:hover{height:7px}.progress-bar-bg:hover .progress-thumb{opacity:1}.progress-bar-fill{background:var(--accent-gradient);border-radius:var(--r-full);justify-content:flex-end;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0}.progress-thumb{background:var(--accent);opacity:0;width:13px;height:13px;transition:opacity var(--t-fast);border:2px solid #fff;border-radius:50%;flex-shrink:0;transform:translate(50%);box-shadow:0 2px 6px #2563eb66}.volume-control{align-items:center;gap:6px;display:flex}.volume-slider{background:var(--bg-surface);border-radius:var(--r-full);cursor:pointer;width:80px;height:4px;transition:height var(--t-fast);position:relative}.volume-slider:hover{height:6px}.volume-fill{background:var(--accent);border-radius:var(--r-full);pointer-events:none;transition:width 50ms linear;position:absolute;top:0;bottom:0;left:0}.search-overlay{z-index:400;-webkit-backdrop-filter:blur(8px);background:#0f172a66;flex-direction:column;align-items:center;padding:5vh 1rem 1rem;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.search-modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;max-width:620px;box-shadow:var(--shadow-lg);flex-direction:column;max-height:85vh;animation:.2s cubic-bezier(.4,0,.2,1) slideDown;display:flex;overflow:hidden}.search-input-row{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:14px 16px;display:flex}.search-input-box{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-full);min-width:0;transition:border-color var(--t-fast), background var(--t-fast), box-shadow var(--t-fast);flex:1;align-items:center;gap:10px;padding:8px 14px;display:flex}.search-input-box:focus-within{border-color:var(--accent);background:var(--bg-elevated);box-shadow:0 0 0 3px var(--accent-glow)}.search-icon{color:var(--text-muted);flex-shrink:0}.search-input{color:var(--text-primary);-webkit-appearance:none;background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:16px;line-height:1.4}.search-input::-webkit-search-decoration{-webkit-appearance:none;display:none}.search-input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}.search-input::-webkit-search-results-button{-webkit-appearance:none;display:none}.search-input::-webkit-search-results-decoration{-webkit-appearance:none;display:none}.search-input::placeholder{color:var(--text-muted);opacity:.85}.search-clear-btn{border-radius:var(--r-full);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;transition:background var(--t-fast), color var(--t-fast);background:#94a3b840;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.search-clear-btn:hover{color:var(--text-primary);background:#94a3b866}.search-close-btn{cursor:pointer;color:var(--text-muted);transition:color var(--t-fast), border-color var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;display:flex}.search-close-desktop{border:1px solid var(--border);border-radius:var(--r-sm);padding:4px 8px;font-size:.75rem;font-weight:500}.search-close-btn:hover .search-close-desktop{color:var(--accent);border-color:var(--border-accent)}.search-close-mobile{display:none}.search-results{overscroll-behavior:contain;flex:1;padding:8px 0;overflow-y:auto}.search-status{color:var(--text-muted);align-items:center;gap:10px;padding:1rem 1.25rem;font-size:.875rem;display:flex}.search-placeholder{color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:3rem 1rem;display:flex}.search-placeholder p{color:var(--text-secondary);font-size:.95rem;font-weight:500}.search-placeholder span{font-size:.8rem}.search-empty{text-align:center;color:var(--text-muted);padding:2rem 1.25rem;font-size:.875rem}.search-section{margin-bottom:4px}.search-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:8px 16px 4px;font-size:.7rem;font-weight:700}.search-result-item{cursor:pointer;width:100%;transition:background var(--t-fast);text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:12px;padding:10px 16px;display:flex}.search-result-item:hover{background:var(--bg-surface)}.search-result-icon{border-radius:var(--r-sm);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.search-result-icon--folder{color:var(--accent);background:#2563eb1a}.search-result-icon--track{color:var(--accent-2);background:#3b82f61a}.search-result-text{flex:1;min-width:0}.search-result-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:500;display:block;overflow:hidden}.search-result-sub{color:var(--text-muted);margin-top:1px;font-size:.75rem;display:block}.toast-container{bottom:calc(var(--player-h) + 1.5rem);z-index:500;pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;right:1.5rem}.toast{border-radius:var(--r-md);background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow-md);pointer-events:all;cursor:pointer;opacity:0;max-width:300px;color:var(--text-primary);align-items:center;gap:8px;padding:10px 16px;font-size:.875rem;font-weight:500;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s;display:flex;transform:translate(120%)}.toast--visible{opacity:1;transform:translate(0)}.toast--success .toast-icon{color:var(--success)}.toast--error .toast-icon{color:var(--error)}.toast--info .toast-icon{color:var(--accent)}.toast-icon{flex-shrink:0;font-size:.9rem}.skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;animation:1.6s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-track{border-radius:var(--r-md);grid-template-columns:40px 1fr 60px;align-items:center;gap:12px;padding:10px 12px;display:grid}.skeleton-icon{border-radius:var(--r-sm);width:40px;height:40px}.skeleton-info{flex-direction:column;gap:6px;display:flex}.skeleton-title{border-radius:var(--r-full);width:60%;height:14px}.skeleton-subtitle{border-radius:var(--r-full);width:40%;height:11px}.skeleton-meta{border-radius:var(--r-full);height:12px}.skeleton-folder{border-radius:var(--r-sm);height:44px}.skeleton-card{min-height:100px}.page-center{justify-content:center;align-items:center;min-height:60vh;padding:2rem;display:flex}.error-card{text-align:center;background:var(--bg-elevated);border-radius:var(--r-xl);width:100%;max-width:400px;box-shadow:var(--shadow-md);border:1px solid #dc262633;flex-direction:column;align-items:center;gap:12px;padding:2.5rem;display:flex}.error-card h2{color:#dc2626;font-size:1.1rem}.error-card p{color:var(--text-secondary);font-size:.875rem}.spinner{animation:.9s linear infinite spinAnim}@keyframes spinAnim{to{transform:rotate(360deg)}}.bottom-nav-wrapper{z-index:250;padding:0 1rem max(.6rem, env(safe-area-inset-bottom));pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav{width:100%;max-width:480px;height:var(--bottom-nav-h);background:var(--bg-glass);-webkit-backdrop-filter:blur(24px)saturate(180%);border:1px solid var(--border);border-radius:var(--r-full);pointer-events:all;justify-content:space-around;align-items:center;padding:0 .4rem;display:flex;box-shadow:0 8px 32px #0f172a1f}.bottom-nav-item{color:var(--text-muted);cursor:pointer;border-radius:var(--r-full);transition:color var(--t-fast), transform var(--t-fast);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 12px;display:flex}.bottom-nav-item:hover{color:var(--text-primary)}.bottom-nav-item--active{color:var(--accent)!important}.bottom-nav-icon{transition:transform var(--t-fast);justify-content:center;align-items:center;display:flex}.bottom-nav-item--active .bottom-nav-icon{transform:translateY(-2px)scale(1.1)}.bottom-nav-label{font-size:.72rem;font-weight:600;line-height:1}.albums-page{flex-direction:column;gap:1.5rem;padding-top:1.5rem;animation:.35s fadeIn;display:flex}.albums-header{justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.albums-header-title{align-items:center;gap:12px;display:flex}.albums-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem;display:grid}.album-card{cursor:pointer;transition:transform var(--t-mid), box-shadow var(--t-mid), border-color var(--t-mid);border:1px solid var(--border);-webkit-tap-highlight-color:transparent;background:var(--bg-elevated);border-radius:var(--r-lg);flex-direction:column;display:flex;overflow:hidden}.album-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-accent);transform:translateY(-4px)}.album-cover{justify-content:center;align-items:center;height:160px;display:flex;position:relative;overflow:hidden}.album-disc{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff2e;border:2px solid #ffffff59;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;transition:transform .4s;display:flex;box-shadow:0 8px 24px #00000026}.album-card:hover .album-disc{transform:scale(1.1)rotate(15deg)}.album-actions{opacity:.85;position:absolute;top:10px;right:10px}.album-info{flex-direction:column;gap:4px;padding:1rem 1.25rem;display:flex}.album-name{color:var(--text-primary);word-break:break-word;font-size:.95rem;font-weight:700}.album-sub{color:var(--text-muted);font-size:.78rem}.more-page{flex-direction:column;gap:1.5rem;padding-top:1.5rem;padding-bottom:2rem;animation:.35s fadeIn;display:flex}.more-header{padding:1.25rem 1.5rem}.more-header-title{align-items:center;gap:14px;display:flex}.more-logo-icon{border-radius:var(--r-md);background:var(--accent-gradient);width:44px;height:44px;box-shadow:0 4px 14px var(--accent-glow);flex-shrink:0;justify-content:center;align-items:center;display:flex}.more-header-sub{color:var(--text-muted);margin-top:2px;font-size:.85rem}.more-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.more-card{flex-direction:column;gap:12px;padding:1.5rem;display:flex}.more-card-header{align-items:center;gap:10px;display:flex}.more-card-header h3{color:var(--text-primary);font-size:1rem;font-weight:700}.more-card-icon{border-radius:var(--r-md);background:#2563eb14;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.more-card-text{color:var(--text-secondary);font-size:.875rem;line-height:1.5}.more-action-btn{align-self:flex-start;margin-top:4px}.more-shortcut-list{flex-direction:column;gap:8px;margin-top:4px;display:flex}.shortcut-item{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.85rem;display:flex}kbd{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-primary);padding:3px 8px;font-family:inherit;font-size:.75rem;font-weight:600;box-shadow:0 1px 2px #0000000d}.more-version-info{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:8px;padding-top:10px;display:flex}.version-item{justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.version-label{color:var(--text-muted)}.version-value{color:var(--text-secondary);font-weight:600}.more-contact-info{flex-direction:column;gap:8px;display:flex}.contact-subtitle{color:var(--text-muted);font-size:.82rem;font-weight:500}.contact-name{color:var(--text-primary);font-size:.95rem;font-weight:700}.contact-links{flex-direction:column;gap:6px;display:flex}.contact-link{color:var(--accent);transition:opacity var(--t-fast);align-items:center;gap:8px;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.contact-link:hover{opacity:.8;text-decoration:underline}.contact-link--whatsapp{color:#16a34a}.pwa-card{background:linear-gradient(135deg, var(--bg-card), #2563eb0d);border-color:#2563eb40}.pwa-icon{background:#2563eb26!important}.pwa-btn{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.pwa-status-installed{border-radius:var(--r-md);color:#22c55e;background:#22c55e1a;border:1px solid #22c55e40;align-items:center;gap:8px;padding:10px 14px;font-size:.88rem;font-weight:600;display:flex}.pwa-modal-backdrop{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000a6;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.pwa-modal-content{border-radius:var(--r-lg);width:100%;max-width:440px;box-shadow:var(--shadow-xl);border:1px solid var(--border-accent);flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.pwa-modal-header{justify-content:space-between;align-items:center;display:flex}.pwa-modal-header h3{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:700}.pwa-modal-close{color:var(--text-muted);cursor:pointer;transition:color var(--t-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;display:flex}.pwa-modal-close:hover{color:var(--text-primary)}.pwa-modal-body{color:var(--text-secondary);font-size:.9rem}.pwa-steps-title{color:var(--text-primary);margin-bottom:.75rem;font-weight:600}.pwa-steps-list{flex-direction:column;gap:8px;margin:0;padding-left:1.25rem;display:flex}.pwa-steps-list li{line-height:1.45}.pwa-modal-footer{justify-content:flex-end;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulseGlow{0%,to{box-shadow:0 4px 14px var(--accent-glow)}50%{box-shadow:0 4px 24px var(--accent-glow), 0 0 0 4px #2563eb1a}}@media (width<=900px){:root{--sidebar-w:220px}.player-track-info{width:160px}.player-right{width:140px}.marquee-wrapper,.player-title{max-width:120px}}@media (width<=640px){.app-content{padding:0 .75rem calc(var(--bottom-nav-h) + var(--player-h) + 3rem)}.app-header{padding:0 .75rem}.home-hero{padding:2rem 1rem 2.5rem}.home-hero-icon{width:72px;height:72px}.home-folders-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}.folder-page{grid-template-columns:1fr;gap:.75rem;padding-top:.75rem}.sidebar{padding:.75rem;position:static}.track-item{gap:8px;padding:10px 8px}.track-actions,.folder-share-btn,.folder-card-share{opacity:1}.player-bar-wrapper{padding:.5rem .75rem .75rem}.player-compact{cursor:pointer;grid-template-columns:1fr auto;gap:8px;height:64px;padding:0 1rem}.player-controls-center,.player-right{display:none}.player-mobile-controls{pointer-events:all;align-items:center;gap:4px;display:flex}.player-track-info{flex:1;width:auto;min-width:0}.player-title,.marquee-wrapper{max-width:180px}.player-cover{width:40px;height:40px}.search-overlay{background:#0f172a73;padding:0}.search-modal{height:100dvh;max-height:100dvh;box-shadow:none;border:none;border-radius:0;animation:.22s cubic-bezier(.16,1,.3,1) slideUp}.search-input-row{padding-top:max(12px, env(safe-area-inset-top));background:var(--bg-elevated);gap:8px;padding-bottom:12px;padding-left:12px;padding-right:12px}.search-input-box{border-radius:var(--r-full);padding:10px 14px}.search-input{font-size:16px}.search-clear-btn{width:28px;height:28px}.search-close-desktop{display:none}.search-close-mobile{color:var(--accent);-webkit-tap-highlight-color:transparent;padding:6px 4px;font-size:.95rem;font-weight:600;display:inline-block}.search-close-btn{background:0 0;border:none;padding:4px}.search-results{padding-bottom:max(24px, env(safe-area-inset-bottom))}.search-result-item{gap:14px;min-height:54px;padding:12px 16px}.search-result-item:active{background:var(--bg-surface)}.search-result-icon{width:40px;height:40px}.toast-container{align-items:stretch;bottom:calc(64px + 1rem);left:.75rem;right:.75rem}.toast{max-width:100%}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--r-full);background:#cbd5e1}::-webkit-scrollbar-thumb:hover{background:#94a3b8}::selection{color:var(--text-primary);background:#2563eb33}.login-container{background:var(--bg-main);background-image:radial-gradient(at 0 0,#2563eb1f 0,#0000 50%),radial-gradient(at 100% 100%,#6366f11f 0,#0000 50%);justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:1.5rem;display:flex}.login-card{border-radius:var(--r-xl);width:100%;max-width:400px;box-shadow:var(--shadow-xl);border:1px solid var(--border-accent);flex-direction:column;gap:1.75rem;padding:2.5rem 2rem;animation:.3s ease-out fadeIn;display:flex}.login-header{text-align:center;flex-direction:column;align-items:center;display:flex}.login-logo{border-radius:var(--r-full);background:var(--accent-gradient);width:64px;height:64px;box-shadow:0 8px 24px var(--accent-glow);justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.login-title{letter-spacing:-.02em;color:var(--text-primary);margin:0 0 .4rem;font-size:1.75rem;font-weight:800}.login-subtitle{color:var(--text-muted);margin:0;font-size:.9rem}.login-form{flex-direction:column;gap:1.25rem;display:flex}.login-error{border-radius:var(--r-md);color:#ef4444;background:#ef44441a;border:1px solid #ef444440;align-items:center;gap:8px;padding:10px 14px;font-size:.85rem;font-weight:500;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-muted);pointer-events:none;align-items:center;display:flex;position:absolute;left:12px}.input-field{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-md);width:100%;color:var(--text-primary);transition:border-color var(--t-fast), box-shadow var(--t-fast);outline:none;padding:12px 14px 12px 40px;font-size:.95rem}.input-field:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.password-toggle{color:var(--text-muted);cursor:pointer;transition:color var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:12px}.password-toggle:hover{color:var(--text-primary)}.login-btn{letter-spacing:.02em;border-radius:var(--r-full);background:linear-gradient(135deg, var(--accent) 0%, #4f46e5 100%);color:#fff;cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:.5rem;padding:13px 20px;font-size:1rem;font-weight:700;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 18px #2563eb61}.login-btn:hover{background:linear-gradient(135deg,#3b82f6 0%,#4338ca 100%);transform:translateY(-2px);box-shadow:0 6px 24px #2563eb85}.login-btn:active{transform:translateY(0)scale(.98);box-shadow:0 2px 10px #2563eb4d}.login-btn-icon{transition:transform .22s}.login-btn:hover .login-btn-icon{transform:translate(4px)}.login-footer{border-top:1px solid var(--border);color:var(--text-muted);flex-direction:column;align-items:center;gap:6px;margin-top:.5rem;padding-top:1.25rem;font-size:.85rem;display:flex}.login-contact-link{color:#16a34a;transition:opacity var(--t-fast);align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.login-contact-link:hover{opacity:.85;text-decoration:underline}.lang-card{border-color:#2563eb40}.lang-select-container{width:100%;position:relative}.lang-select-input{border-radius:var(--r-md);background:var(--bg-card);width:100%;color:var(--text-primary);border:1px solid var(--border);cursor:pointer;transition:all var(--t-fast);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;padding:10px 36px 10px 14px;font-size:.92rem;font-weight:600}.lang-select-input:hover,.lang-select-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.lang-notice-badge{border-radius:var(--r-md);color:#d97706;background:#f59e0b1f;border:1px solid #f59e0b4d;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;font-size:.82rem;font-weight:600;display:flex}[data-theme=dark] .lang-notice-badge{color:#fbbf24;background:#f59e0b26}
