:root{--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-full: 9999px;--color-accent: #8b5cf6;--color-accent-hover: #7c3aed;--color-accent-light: #a78bfa;--transition-fast: .15s ease;--transition-normal: .25s ease;--player-bar-height: 72px;--color-success: #15803d;--color-success-subtle: rgba(34, 197, 94, .15);--color-success-subtle: color-mix(in srgb, #22c55e 15%, transparent);--color-error: #dc2626;--color-error-subtle: rgba(239, 68, 68, .15);--color-error-subtle: color-mix(in srgb, #ef4444 15%, transparent);--color-error-hover: #b91c1c;--color-warning: #b45309;--color-warning-subtle: rgba(245, 158, 11, .15);--color-warning-subtle: color-mix(in srgb, #f59e0b 15%, transparent);--color-on-accent: #ffffff;--color-info: #3b82f6;--color-info-subtle: rgba(59, 130, 246, .15);--color-info-subtle: color-mix(in srgb, #3b82f6 15%, transparent);--color-accent-subtle: rgba(139, 92, 246, .12);--color-accent-subtle: color-mix(in srgb, #8b5cf6 12%, transparent);--bottom-tab-bar-height: 56px;color-scheme:light dark}:root{--color-bg: #ffffff;--color-bg-secondary: #f8f9fa;--color-bg-tertiary: #f1f3f5;--color-text: #1a1a2e;--color-text-secondary: #6b7280;--color-text-muted: #616872;--color-border: #e5e7eb;--color-border-light: #f3f4f6}@media(prefers-color-scheme:dark){:root{--color-bg: #0f0f1a;--color-bg-secondary: #1a1a2e;--color-bg-tertiary: #25253e;--color-text: #f0f0f5;--color-text-secondary: #9ca3af;--color-text-muted: #a3aab6;--color-border: #2d2d44;--color-border-light: #1f1f35;--color-success-subtle: rgba(34, 197, 94, .15);--color-success-subtle: color-mix(in srgb, #22c55e 15%, var(--color-bg));--color-error-subtle: rgba(239, 68, 68, .15);--color-error-subtle: color-mix(in srgb, #ef4444 15%, var(--color-bg));--color-warning-subtle: rgba(245, 158, 11, .15);--color-warning-subtle: color-mix(in srgb, #f59e0b 15%, var(--color-bg));--color-info-subtle: rgba(59, 130, 246, .15);--color-info-subtle: color-mix(in srgb, #3b82f6 15%, var(--color-bg));--color-accent-subtle: rgba(139, 92, 246, .12);--color-accent-subtle: color-mix(in srgb, #8b5cf6 12%, var(--color-bg))}}[data-theme=dark]{--color-bg: #0f0f1a;--color-bg-secondary: #1a1a2e;--color-bg-tertiary: #25253e;--color-text: #f0f0f5;--color-text-secondary: #9ca3af;--color-text-muted: #a3aab6;--color-border: #2d2d44;--color-border-light: #1f1f35;--color-success-subtle: rgba(34, 197, 94, .15);--color-success-subtle: color-mix(in srgb, #22c55e 15%, var(--color-bg));--color-error-subtle: rgba(239, 68, 68, .15);--color-error-subtle: color-mix(in srgb, #ef4444 15%, var(--color-bg));--color-warning-subtle: rgba(245, 158, 11, .15);--color-warning-subtle: color-mix(in srgb, #f59e0b 15%, var(--color-bg));--color-info-subtle: rgba(59, 130, 246, .15);--color-info-subtle: color-mix(in srgb, #3b82f6 15%, var(--color-bg));--color-accent-subtle: rgba(139, 92, 246, .12);--color-accent-subtle: color-mix(in srgb, #8b5cf6 12%, var(--color-bg))}[data-theme=light]{--color-bg: #ffffff;--color-bg-secondary: #f8f9fa;--color-bg-tertiary: #f1f3f5;--color-text: #1a1a2e;--color-text-secondary: #6b7280;--color-text-muted: #616872;--color-border: #e5e7eb;--color-border-light: #f3f4f6;--color-success-subtle: rgba(34, 197, 94, .15);--color-success-subtle: color-mix(in srgb, #22c55e 15%, var(--color-bg));--color-error-subtle: rgba(239, 68, 68, .15);--color-error-subtle: color-mix(in srgb, #ef4444 15%, var(--color-bg));--color-warning-subtle: rgba(245, 158, 11, .15);--color-warning-subtle: color-mix(in srgb, #f59e0b 15%, var(--color-bg));--color-info-subtle: rgba(59, 130, 246, .15);--color-info-subtle: color-mix(in srgb, #3b82f6 15%, var(--color-bg));--color-accent-subtle: rgba(139, 92, 246, .12);--color-accent-subtle: color-mix(in srgb, #8b5cf6 12%, var(--color-bg))}body,.persistent-nav,.player-bar,.settings-page,.sidebar,.bottom-tab-bar{transition:background-color .15s ease,color .15s ease,border-color .15s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;overflow:hidden}body{height:100%;overflow:hidden;font-family:var(--font-family);font-size:var(--text-base);line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.toast.svelte-1cpok13{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--color-on-accent);box-shadow:0 4px 12px #00000026;min-width:280px;max-width:420px;font-size:var(--text-sm);line-height:1.4}.toast-success.svelte-1cpok13{background-color:var(--color-success)}.toast-error.svelte-1cpok13{background-color:var(--color-error)}.toast-warning.svelte-1cpok13{background-color:var(--color-warning)}.toast-info.svelte-1cpok13{background-color:var(--color-accent)}.toast-message.svelte-1cpok13{flex:1}.toast-dismiss.svelte-1cpok13{background:none;border:none;color:var(--color-on-accent);font-size:var(--text-lg);cursor:pointer;padding:0 var(--space-xs);opacity:.8;transition:opacity var(--transition-fast);line-height:1;flex-shrink:0}.toast-dismiss.svelte-1cpok13:hover{opacity:1}.toast-dismiss.svelte-1cpok13:focus-visible{outline:2px solid var(--color-on-accent);outline-offset:2px}.toast-container.svelte-cqwvc2{position:fixed;bottom:1rem;right:1rem;display:flex;flex-direction:column-reverse;gap:var(--space-sm);z-index:9999;pointer-events:none}.toast-container.svelte-cqwvc2 .toast{pointer-events:auto}.queue-backdrop.svelte-1ou7k0t{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:140}.queue-panel.svelte-1ou7k0t{position:fixed;top:0;right:0;bottom:var(--player-bar-height);width:350px;z-index:150;background:var(--color-bg);border-left:1px solid var(--color-border);transform:translate(100%);transition:transform .3s ease-in-out;display:flex;flex-direction:column;overflow:hidden}.queue-panel.open.svelte-1ou7k0t{transform:translate(0)}.queue-header.svelte-1ou7k0t{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border);flex-shrink:0}.queue-header.svelte-1ou7k0t h2:where(.svelte-1ou7k0t){font-size:var(--text-lg);font-weight:700;color:var(--color-text)}.queue-close.svelte-1ou7k0t{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-full);transition:background var(--transition-fast),color var(--transition-fast)}.queue-close.svelte-1ou7k0t:hover{background:var(--color-bg-tertiary);color:var(--color-text)}.queue-close.svelte-1ou7k0t:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.queue-content.svelte-1ou7k0t{flex:1;overflow-y:auto;padding:var(--space-md) 0}.queue-section.svelte-1ou7k0t{padding:0 var(--space-lg);margin-bottom:var(--space-lg)}.section-header.svelte-1ou7k0t{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.section-label.svelte-1ou7k0t{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.section-header.svelte-1ou7k0t .section-label:where(.svelte-1ou7k0t){margin-bottom:0}.clear-btn.svelte-1ou7k0t{font-size:var(--text-xs);color:var(--color-text-secondary);background:transparent;border:none;cursor:pointer;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.clear-btn.svelte-1ou7k0t:hover{color:var(--color-accent);background:var(--color-bg-tertiary)}.clear-btn.svelte-1ou7k0t:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.now-playing-item.svelte-1ou7k0t{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-bg-secondary);border-left:3px solid var(--color-accent)}.now-playing-art.svelte-1ou7k0t img:where(.svelte-1ou7k0t){border-radius:var(--radius-sm);object-fit:cover}.queue-list.svelte-1ou7k0t{display:flex;flex-direction:column;gap:2px;min-height:36px}.queue-item.svelte-1ou7k0t{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.queue-item.svelte-1ou7k0t:hover{background:var(--color-bg-tertiary)}.drag-handle.svelte-1ou7k0t{display:flex;align-items:center;justify-content:center;width:16px;flex-shrink:0;color:var(--color-text-muted);cursor:grab;padding:var(--space-xs) 0}.drag-handle.svelte-1ou7k0t:active{cursor:grabbing}.track-art.svelte-1ou7k0t{flex-shrink:0}.track-art.svelte-1ou7k0t img:where(.svelte-1ou7k0t){border-radius:var(--radius-sm);object-fit:cover;display:block}.art-placeholder.svelte-1ou7k0t{display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);color:var(--color-text-muted);border-radius:var(--radius-sm)}.art-placeholder.small.svelte-1ou7k0t{width:40px;height:40px}.art-placeholder.tiny.svelte-1ou7k0t{width:36px;height:36px}.track-info.svelte-1ou7k0t{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.track-title.svelte-1ou7k0t{font-size:var(--text-sm);font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-artist.svelte-1ou7k0t{font-size:var(--text-xs);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artist-link.svelte-1ou7k0t{color:inherit;text-decoration:none;display:block}.artist-link.svelte-1ou7k0t:hover,.artist-link.svelte-1ou7k0t:focus{text-decoration:underline}.track-duration.svelte-1ou7k0t{font-size:var(--text-xs);color:var(--color-text-muted);flex-shrink:0}.pre-download-spinner.svelte-1ou7k0t{display:inline-block;width:12px;height:12px;border:1.5px solid var(--color-border);border-top-color:var(--color-accent);border-radius:var(--radius-full);animation:svelte-1ou7k0t-pre-download-spin .9s linear infinite;flex-shrink:0;margin-right:var(--space-2xs)}@keyframes svelte-1ou7k0t-pre-download-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.pre-download-spinner.svelte-1ou7k0t{animation:none;border-top-color:var(--color-accent)}}.queue-item-remove.svelte-1ou7k0t{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-full);flex-shrink:0;opacity:0;transition:opacity var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.queue-item.svelte-1ou7k0t:hover .queue-item-remove:where(.svelte-1ou7k0t){opacity:1}.queue-item-remove.svelte-1ou7k0t:hover{background:var(--color-bg-tertiary);color:var(--color-text)}.queue-item-remove.svelte-1ou7k0t:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;opacity:1}.queue-empty.svelte-1ou7k0t{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl) var(--space-lg);color:var(--color-text-muted);text-align:center;gap:var(--space-sm)}.queue-empty.svelte-1ou7k0t p:where(.svelte-1ou7k0t){font-size:var(--text-sm);color:var(--color-text-secondary)}.queue-empty-hint.svelte-1ou7k0t{font-size:var(--text-xs);color:var(--color-text-muted)!important}.queue-item.long-press-active.svelte-1ou7k0t{background-color:var(--color-bg-tertiary)}@media(max-width:768px){.queue-panel.svelte-1ou7k0t{width:100%}}.progress-bar.svelte-1qjgclg{display:flex;align-items:center;gap:var(--space-sm);width:100%;user-select:none;-webkit-user-select:none}.progress-bar.thin.svelte-1qjgclg{height:3px;gap:0}.progress-bar.full.svelte-1qjgclg{height:auto;padding:var(--space-xs) 0}.progress-bar.svelte-1qjgclg:focus-visible{box-shadow:0 0 0 2px var(--color-accent);border-radius:var(--radius-md)}.track.svelte-1qjgclg{position:relative;flex:1;height:4px;background:var(--color-border);border-radius:var(--radius-full);cursor:pointer;overflow:visible;touch-action:none}.track.svelte-1qjgclg:before{content:"";position:absolute;top:50%;left:0;right:0;height:44px;transform:translateY(-50%)}.thin.svelte-1qjgclg .track:where(.svelte-1qjgclg){height:3px;border-radius:0}.full.svelte-1qjgclg .track:where(.svelte-1qjgclg){height:4px}.full.svelte-1qjgclg .track:where(.svelte-1qjgclg):hover{height:6px}.buffer.svelte-1qjgclg{position:absolute;top:0;left:0;height:100%;background:var(--color-text-muted);opacity:.3;border-radius:inherit;transition:width var(--transition-fast)}.fill.svelte-1qjgclg{position:absolute;top:0;left:0;height:100%;background:var(--color-accent);border-radius:inherit;transition:width 50ms linear}.thin.svelte-1qjgclg .fill:where(.svelte-1qjgclg){border-radius:0}.thumb.svelte-1qjgclg{position:absolute;top:50%;width:12px;height:12px;background:var(--color-accent);border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity var(--transition-fast);pointer-events:none}.thumb.visible.svelte-1qjgclg{opacity:1}.full.svelte-1qjgclg .thumb:where(.svelte-1qjgclg){opacity:1}.full.svelte-1qjgclg .track:where(.svelte-1qjgclg):hover .thumb:where(.svelte-1qjgclg){width:16px;height:16px}.timestamp.svelte-1qjgclg{font-size:var(--text-xs);color:var(--color-text-secondary);min-width:3.5em;text-align:center;font-variant-numeric:tabular-nums}.elapsed.svelte-1qjgclg{text-align:right}.remaining.svelte-1qjgclg{text-align:left}.volume-control.svelte-1ng8u97{position:relative;display:flex;align-items:center}.volume-btn.svelte-1ng8u97{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:color var(--transition-fast)}.volume-btn.svelte-1ng8u97:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.volume-btn.svelte-1ng8u97:hover{color:var(--color-text)}.popup.svelte-1ng8u97{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md) var(--space-sm);box-shadow:0 -4px 12px #00000026;display:flex;align-items:center;justify-content:center;z-index:110}.volume-slider.svelte-1ng8u97{writing-mode:vertical-lr;direction:rtl;width:4px;height:100px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer}.volume-slider.svelte-1ng8u97:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.volume-slider.svelte-1ng8u97::-webkit-slider-runnable-track{width:4px;height:100%;background:var(--color-border);border-radius:var(--radius-full)}.volume-slider.svelte-1ng8u97::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--color-accent);margin-left:-5px;cursor:pointer}.volume-slider.svelte-1ng8u97::-moz-range-track{width:4px;height:100%;background:var(--color-border);border-radius:var(--radius-full)}.volume-slider.svelte-1ng8u97::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--color-accent);border:none;cursor:pointer}@media(max-width:768px){.volume-control.svelte-1ng8u97{display:none}}.podcast-controls.svelte-v3aqej{display:flex;align-items:center;gap:var(--space-md)}.skip-btn.svelte-v3aqej{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;background:none;border:none;color:var(--color-text);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-full);transition:transform .2s ease-out,color var(--transition-fast),background-color var(--transition-fast)}.skip-btn.svelte-v3aqej:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.skip-btn.svelte-v3aqej:hover{color:var(--color-accent);background:var(--color-bg-tertiary)}.skip-btn.svelte-v3aqej:active{transform:scale(.85);transition:transform .1s ease-in}.play-btn.svelte-v3aqej{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-accent);border:none;color:var(--color-on-accent);cursor:pointer;border-radius:var(--radius-full);transition:background-color var(--transition-fast)}.play-btn.svelte-v3aqej:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.play-btn.svelte-v3aqej:hover{background:var(--color-accent-hover)}.spinner.svelte-v3aqej{animation:svelte-v3aqej-spin 1s linear infinite}.morph-icon.svelte-v3aqej{transition:d .35s cubic-bezier(.4,0,.2,1)}.morph-a.svelte-v3aqej{d:path("M 6 4 L 13 8.5 L 13 15.5 L 6 20 Z")}.morph-b.svelte-v3aqej{d:path("M 13 8.5 L 20 12 L 20 12 L 13 15.5 Z")}.morph-a.is-playing.svelte-v3aqej{d:path("M 5 4 L 9 4 L 9 20 L 5 20 Z")}.morph-b.is-playing.svelte-v3aqej{d:path("M 15 4 L 19 4 L 19 20 L 15 20 Z")}@keyframes svelte-v3aqej-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.speed-pill.svelte-1r141o4{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:28px;padding:4px 8px;background:var(--color-bg-tertiary);border:none;border-radius:9999px;color:var(--color-text);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast);white-space:nowrap}.speed-pill.svelte-1r141o4:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.speed-pill.svelte-1r141o4:hover,.speed-pill.speed-active.svelte-1r141o4{background:var(--color-accent);color:var(--color-on-accent)}.speed-presets.svelte-1r141o4{display:flex;flex-wrap:wrap;gap:var(--space-xs);justify-content:center}.preset-pill.svelte-1r141o4{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:28px;padding:4px 8px;background:var(--color-bg-tertiary);border:none;border-radius:9999px;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast);white-space:nowrap}.preset-pill.svelte-1r141o4:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.preset-pill.svelte-1r141o4:hover{background:color-mix(in srgb,var(--color-accent) 30%,var(--color-bg-tertiary));color:var(--color-text)}.preset-pill.preset-active.svelte-1r141o4{background:var(--color-accent);color:var(--color-on-accent)}.player-bar.svelte-1kz01ly{position:fixed;bottom:0;left:0;right:0;height:var(--player-bar-height);background:var(--color-bg-secondary);border-top:1px solid var(--color-border);z-index:100;display:flex;flex-direction:column;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.top-progress.svelte-1kz01ly{width:100%;flex-shrink:0;position:relative}.download-buffer-bar.svelte-1kz01ly{position:absolute;bottom:0;left:0;height:2px;background:color-mix(in srgb,var(--color-accent) 50%,transparent);transition:width .3s ease;width:0%}.player-content.svelte-1kz01ly{flex:1;display:flex;align-items:center;padding:0 var(--space-md);gap:var(--space-md);min-height:0}.left-section.svelte-1kz01ly{display:flex;align-items:center;gap:var(--space-sm);flex:1;min-width:0;overflow:hidden}.album-art-btn.svelte-1kz01ly{flex-shrink:0;background:none;border:none;padding:0;cursor:pointer;border-radius:var(--radius-sm);overflow:hidden;transition:opacity var(--transition-fast)}.album-art-btn.svelte-1kz01ly:hover{opacity:.85}.album-art-btn.svelte-1kz01ly:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.album-thumb.svelte-1kz01ly{width:48px;height:48px;object-fit:cover;border-radius:var(--radius-sm);display:block}.track-info.svelte-1kz01ly{display:flex;flex-direction:column;min-width:0;gap:1px}.track-title.svelte-1kz01ly{font-size:var(--text-sm);font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-artist.svelte-1kz01ly{font-size:var(--text-xs);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artist-link.svelte-1kz01ly{color:inherit;text-decoration:none;display:block}.artist-link.svelte-1kz01ly:hover,.artist-link.svelte-1kz01ly:focus{text-decoration:underline}.player-heart-btn.svelte-1kz01ly{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;cursor:pointer;color:var(--color-text-secondary);opacity:.4;border-radius:var(--radius-full);transition:color var(--transition-fast),opacity var(--transition-fast);flex-shrink:0}.player-heart-btn.svelte-1kz01ly:hover,.player-heart-btn.favorited.svelte-1kz01ly{color:var(--color-error);opacity:1}.player-heart-btn.svelte-1kz01ly:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.player-heart-btn.just-favorited.svelte-1kz01ly{animation:svelte-1kz01ly-heartPulse .4s ease-in-out}@keyframes svelte-1kz01ly-heartPulse{0%{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(.95)}75%{transform:scale(1.1)}to{transform:scale(1)}}.download-status.svelte-1kz01ly{font-size:var(--text-xs);color:var(--color-accent);white-space:nowrap;display:flex;align-items:center;gap:4px}.download-status.download-failed.svelte-1kz01ly{color:var(--color-error)}.download-spinner-icon.svelte-1kz01ly{display:inline-block;width:12px;height:12px;animation:svelte-1kz01ly-spin 1s linear infinite;flex-shrink:0}.download-check-icon.svelte-1kz01ly{display:inline-block;width:12px;height:12px;flex-shrink:0;color:var(--color-success)}.center-section.svelte-1kz01ly{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.control-btn.svelte-1kz01ly{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-full);transition:transform .2s ease-out,color var(--transition-fast),background-color var(--transition-fast)}.control-btn.svelte-1kz01ly:not(.play-btn):not(.queue-btn):active:not(:disabled){transform:scale(.85);transition:transform .1s ease-in}.control-btn.svelte-1kz01ly:hover:not(:disabled){color:var(--color-accent);background:var(--color-bg-tertiary)}.control-btn.svelte-1kz01ly:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.control-btn.svelte-1kz01ly:disabled{opacity:.5;cursor:default}.play-btn.svelte-1kz01ly{width:40px;height:40px;background:var(--color-accent);color:var(--color-on-accent)}.play-btn.svelte-1kz01ly:hover:not(:disabled){background:var(--color-accent-hover);color:var(--color-on-accent)}.autoplay-btn.svelte-1kz01ly{position:relative}.autoplay-btn.active.svelte-1kz01ly{color:var(--color-accent)}.queue-btn.svelte-1kz01ly{position:relative}.queue-badge.svelte-1kz01ly{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--color-accent);color:var(--color-on-accent);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none}.spinner.svelte-1kz01ly{animation:svelte-1kz01ly-spin 1s linear infinite}.morph-icon.svelte-1kz01ly{transition:d .35s cubic-bezier(.4,0,.2,1)}.morph-a.svelte-1kz01ly{d:path("M 6 4 L 13 8.5 L 13 15.5 L 6 20 Z")}.morph-b.svelte-1kz01ly{d:path("M 13 8.5 L 20 12 L 20 12 L 13 15.5 Z")}.morph-a.is-playing.svelte-1kz01ly{d:path("M 5 4 L 9 4 L 9 20 L 5 20 Z")}.morph-b.is-playing.svelte-1kz01ly{d:path("M 15 4 L 19 4 L 19 20 L 15 20 Z")}@keyframes svelte-1kz01ly-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.right-section.svelte-1kz01ly{display:flex;align-items:center;gap:var(--space-sm);flex:1;justify-content:flex-end;min-width:0}.indicator-dot.svelte-1kz01ly{width:6px;height:6px;border-radius:50%;background:var(--color-accent);flex-shrink:0}@media(max-width:768px){.player-bar.svelte-1kz01ly{height:64px}.player-content.svelte-1kz01ly{padding:0 var(--space-sm)}.album-thumb.svelte-1kz01ly{width:40px;height:40px}.right-section.svelte-1kz01ly{gap:var(--space-xs)}}.lyrics-view.svelte-1f5bwk3{width:100%;height:100%;overflow-y:auto;scroll-behavior:smooth;padding:var(--space-2xl) var(--space-md);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 10%,black 90%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 10%,black 90%,transparent 100%)}.synced-lyrics.svelte-1f5bwk3{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:40vh 0}.lyric-line.svelte-1f5bwk3{display:block;width:100%;text-align:center;background:none;border:none;cursor:pointer;font-family:var(--font-family);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);transition:font-size .2s ease,color .2s ease,opacity .2s ease,background-color .2s ease;line-height:1.4}.lyric-line.svelte-1f5bwk3:hover{background:color-mix(in srgb,var(--color-on-accent) 10%,transparent)}.lyric-line.svelte-1f5bwk3:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lyric-line.active.svelte-1f5bwk3{font-size:1.4em;font-weight:700;color:var(--color-accent);opacity:1}.lyric-line.past.svelte-1f5bwk3{font-size:1em;font-weight:400;color:color-mix(in srgb,var(--color-on-accent) 50%,transparent);opacity:.5}.lyric-line.future.svelte-1f5bwk3{font-size:1em;font-weight:400;color:color-mix(in srgb,var(--color-on-accent) 40%,transparent);opacity:.4}.lyric-line.svelte-1f5bwk3:not(.active):not(.past):not(.future){font-size:1em;font-weight:400;color:color-mix(in srgb,var(--color-on-accent) 60%,transparent)}.plain-lyrics.svelte-1f5bwk3{padding:var(--space-lg)}.plain-text.svelte-1f5bwk3{font-size:var(--text-sm);color:color-mix(in srgb,var(--color-on-accent) 60%,transparent);line-height:1.8;white-space:pre-wrap;text-align:center}.no-lyrics.svelte-1f5bwk3{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-md)}.lyrics-icon.svelte-1f5bwk3{font-size:3rem;color:color-mix(in srgb,var(--color-on-accent) 30%,transparent)}.lyrics-message.svelte-1f5bwk3{font-size:var(--text-base);color:color-mix(in srgb,var(--color-on-accent) 50%,transparent)}.now-playing.svelte-gs8b8u{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;transform:translateY(100%);transition:transform .3s ease-in-out,visibility 0ms .3s;visibility:hidden;overflow:hidden;display:flex;flex-direction:column}.now-playing.open.svelte-gs8b8u{transform:translateY(0);visibility:visible;transition:transform .3s ease-in-out,visibility 0ms 0ms}.np-backdrop.svelte-gs8b8u{position:absolute;top:0;right:0;bottom:0;left:0;backdrop-filter:blur(60px);-webkit-backdrop-filter:blur(60px);z-index:0}.np-content.svelte-gs8b8u{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-lg) var(--space-xl);gap:var(--space-lg);max-width:480px;margin:0 auto;width:100%}.close-btn.svelte-gs8b8u{position:absolute;top:var(--space-lg);left:50%;transform:translate(-50%);background:none;border:none;color:#ffffffb3;cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-full);transition:color var(--transition-fast);z-index:2}.close-btn.svelte-gs8b8u:hover{color:var(--color-on-accent)}.close-btn.svelte-gs8b8u:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.main-area.svelte-gs8b8u{width:min(70vw,350px);aspect-ratio:1;flex-shrink:0;position:relative}.art-container.svelte-gs8b8u{width:100%;height:100%;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 8px 32px #0006;transition:opacity .3s ease}.album-art.svelte-gs8b8u{width:100%;height:100%;object-fit:cover;display:block}.lyrics-container.svelte-gs8b8u{width:100%;height:100%;border-radius:var(--radius-lg);overflow:hidden;background:#0000004d;transition:opacity .3s ease}.track-info.svelte-gs8b8u{text-align:center;width:100%;min-width:0}.track-title-row.svelte-gs8b8u{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%}.track-title.svelte-gs8b8u{font-size:var(--text-xl);font-weight:700;color:var(--color-on-accent);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.np-heart-btn.svelte-gs8b8u{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;cursor:pointer;color:#ffffff80;border-radius:var(--radius-full);transition:color var(--transition-fast);flex-shrink:0}.np-heart-btn.svelte-gs8b8u:hover,.np-heart-btn.favorited.svelte-gs8b8u{color:var(--color-error)}.np-heart-btn.svelte-gs8b8u:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.np-heart-btn.just-favorited.svelte-gs8b8u{animation:svelte-gs8b8u-heartPulse .4s ease-in-out}@keyframes svelte-gs8b8u-heartPulse{0%{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(.95)}75%{transform:scale(1.1)}to{transform:scale(1)}}.track-artist.svelte-gs8b8u{font-size:var(--text-base);color:#ffffffb3;margin:var(--space-xs) 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artist-link.svelte-gs8b8u{color:inherit;text-decoration:none}.artist-link.svelte-gs8b8u:hover,.artist-link.svelte-gs8b8u:focus{text-decoration:underline}.track-album.svelte-gs8b8u{font-size:var(--text-sm);color:#ffffff80;margin:var(--space-xs) 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scrubber.svelte-gs8b8u{width:100%}.scrubber.svelte-gs8b8u .timestamp{color:#fff9}.scrubber.svelte-gs8b8u .track{background:#fff3}.scrubber.svelte-gs8b8u .buffer{background:#ffffff26}.controls-row.svelte-gs8b8u{display:flex;align-items:center;justify-content:center;gap:var(--space-lg);width:100%}.np-btn.svelte-gs8b8u{position:relative;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#ffffffb3;cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-full);transition:transform .2s ease-out,color var(--transition-fast),background-color var(--transition-fast)}.np-btn.svelte-gs8b8u:not(.play-btn):not(.lyrics-btn):active{transform:scale(.85);transition:transform .1s ease-in}.np-btn.svelte-gs8b8u:hover{color:var(--color-on-accent)}.np-btn.active.svelte-gs8b8u{color:var(--color-accent)}.np-btn.active.svelte-gs8b8u:hover{color:var(--color-accent-light)}.np-btn.svelte-gs8b8u:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.np-btn.shuffle-animate.svelte-gs8b8u svg:where(.svelte-gs8b8u){animation:svelte-gs8b8u-shuffleActivate .3s ease-in-out}@keyframes svelte-gs8b8u-shuffleActivate{0%{transform:scale(1) rotate(0)}40%{transform:scale(1.2) rotate(15deg)}70%{transform:scale(.95) rotate(-5deg)}to{transform:scale(1) rotate(0)}}.np-btn.repeat-animate.svelte-gs8b8u svg:where(.svelte-gs8b8u){animation:svelte-gs8b8u-repeatActivate .3s ease-in-out}@keyframes svelte-gs8b8u-repeatActivate{0%{transform:scale(1) rotate(0)}30%{transform:scale(1.15) rotate(-15deg)}60%{transform:scale(.95) rotate(5deg)}to{transform:scale(1) rotate(0)}}.play-btn.svelte-gs8b8u{width:56px;height:56px;background:var(--color-accent);color:var(--color-on-accent)}.play-btn.svelte-gs8b8u:hover{background:var(--color-accent-hover);color:var(--color-on-accent)}.lyrics-btn.svelte-gs8b8u{width:32px;height:32px}.lyrics-icon-text.svelte-gs8b8u{font-size:14px;font-weight:700;font-family:var(--font-family);line-height:1}.repeat-badge.svelte-gs8b8u{position:absolute;top:-2px;right:-2px;width:14px;height:14px;background:var(--color-accent);color:var(--color-on-accent);font-size:9px;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.spinner.svelte-gs8b8u{animation:svelte-gs8b8u-spin 1s linear infinite}.morph-icon.svelte-gs8b8u{transition:d .35s cubic-bezier(.4,0,.2,1)}.morph-a.svelte-gs8b8u{d:path("M 6 4 L 13 8.5 L 13 15.5 L 6 20 Z")}.morph-b.svelte-gs8b8u{d:path("M 13 8.5 L 20 12 L 20 12 L 13 15.5 Z")}.morph-a.is-playing.svelte-gs8b8u{d:path("M 5 4 L 9 4 L 9 20 L 5 20 Z")}.morph-b.is-playing.svelte-gs8b8u{d:path("M 15 4 L 19 4 L 19 20 L 15 20 Z")}@keyframes svelte-gs8b8u-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.speed-presets-row.svelte-gs8b8u{display:flex;align-items:center;gap:var(--space-sm);justify-content:center;margin-top:var(--space-md);width:100%}.speed-label.svelte-gs8b8u{font-size:var(--text-xs);color:#ffffff80;font-weight:600;flex-shrink:0}.episode-description.svelte-gs8b8u{font-size:var(--text-sm);color:#fff9;max-height:200px;overflow-y:auto;padding:var(--space-md);width:100%;text-align:left;line-height:1.5}@media(max-width:768px){.np-content.svelte-gs8b8u{padding:var(--space-md);gap:var(--space-md)}.main-area.svelte-gs8b8u{width:min(80vw,320px)}.speed-presets-row.svelte-gs8b8u{overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start;padding:0 var(--space-sm)}}@media(max-width:480px){.np-content.svelte-gs8b8u{padding:var(--space-sm)}.controls-row.svelte-gs8b8u{gap:var(--space-sm)}.np-btn.svelte-gs8b8u{padding:0}.np-btn.svelte-gs8b8u svg:where(.svelte-gs8b8u){width:20px;height:20px}.np-btn.play-btn.svelte-gs8b8u{width:48px;height:48px}.np-btn.play-btn.svelte-gs8b8u svg:where(.svelte-gs8b8u){width:28px;height:28px}}.theme-toggle.svelte-1cmi4dh{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:color var(--transition-fast);flex-shrink:0}.theme-toggle.svelte-1cmi4dh:hover{color:var(--color-accent)}.theme-toggle.svelte-1cmi4dh:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.persistent-nav.svelte-kwc8la{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-xl);background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);position:relative;z-index:100;gap:var(--space-md);flex-shrink:0}.brand.svelte-kwc8la{font-size:var(--text-xl);font-weight:700;color:var(--color-accent);letter-spacing:-.02em;text-decoration:none;flex-shrink:0}.brand.svelte-kwc8la:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.brand.svelte-kwc8la:hover{opacity:.85}.sidebar-toggle.svelte-kwc8la{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:color var(--transition-fast);flex-shrink:0}.sidebar-toggle.svelte-kwc8la:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.sidebar-toggle.svelte-kwc8la:hover{color:var(--color-accent)}.sidebar-toggle.svelte-kwc8la svg:where(.svelte-kwc8la){width:20px;height:20px}.search-container.svelte-kwc8la{flex:1;max-width:600px;margin:0 var(--space-lg)}.search-bar.svelte-kwc8la{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-tertiary, var(--color-bg-secondary));border:1px solid var(--color-border);border-radius:var(--radius-full);transition:border-color var(--transition-fast)}.search-bar.svelte-kwc8la:focus-within{border-color:var(--color-accent)}.search-icon.svelte-kwc8la{width:18px;height:18px;color:var(--color-text-muted);flex-shrink:0}.search-input.svelte-kwc8la{flex:1;border:none;outline:none;background:transparent;font-size:var(--text-base);font-family:var(--font-family);color:var(--color-text)}.search-input.svelte-kwc8la::placeholder{color:var(--color-text-muted)}.nav-right.svelte-kwc8la{display:flex;align-items:center;gap:var(--space-md);flex-shrink:0}.settings-link.svelte-kwc8la{font-size:var(--text-sm);color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}.settings-link.svelte-kwc8la:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.settings-link.svelte-kwc8la:hover{color:var(--color-accent-hover)}.btn-logout.svelte-kwc8la{padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);font-family:var(--font-family);font-weight:500;color:var(--color-text-secondary);background-color:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.btn-logout.svelte-kwc8la:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-logout.svelte-kwc8la:hover{color:var(--color-text);border-color:var(--color-text-muted)}.mobile-search-toggle.svelte-kwc8la{display:none;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-md);transition:color var(--transition-fast)}.mobile-search-toggle.svelte-kwc8la:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.mobile-search-toggle.svelte-kwc8la:hover{color:var(--color-accent)}.mobile-search-toggle.svelte-kwc8la svg:where(.svelte-kwc8la){width:20px;height:20px}.mobile-search-overlay.svelte-kwc8la{display:none;position:fixed;top:0;left:0;right:0;z-index:200;padding:var(--space-sm);background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.mobile-bar.svelte-kwc8la{width:100%}.mobile-close-btn.svelte-kwc8la{display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:var(--space-xs);flex-shrink:0}.mobile-close-btn.svelte-kwc8la:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.mobile-close-btn.svelte-kwc8la:hover{color:var(--color-text)}@media(max-width:480px){.persistent-nav.svelte-kwc8la{padding:var(--space-sm) var(--space-md)}.brand.svelte-kwc8la{font-size:var(--text-lg)}.desktop-search.svelte-kwc8la{display:none}.mobile-search-toggle.svelte-kwc8la{display:flex}.mobile-search-overlay.svelte-kwc8la{display:block}.nav-right.svelte-kwc8la{gap:var(--space-sm)}.btn-logout.svelte-kwc8la{padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs)}.settings-link.svelte-kwc8la{font-size:var(--text-xs)}}@media(max-width:375px){.persistent-nav.svelte-kwc8la{padding:var(--space-xs) var(--space-sm);gap:var(--space-sm)}.brand.svelte-kwc8la{font-size:var(--text-base)}}.modal-overlay.svelte-1wn0cj6{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:300;display:flex;align-items:center;justify-content:center;padding:var(--space-md)}.modal-dialog.svelte-1wn0cj6{background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:var(--space-xl);width:100%;max-width:460px;box-shadow:0 8px 32px #0000004d}.modal-title.svelte-1wn0cj6{font-size:var(--text-xl);font-weight:700;color:var(--color-text);margin-bottom:var(--space-lg)}.form-group.svelte-1wn0cj6{margin-bottom:var(--space-md)}.form-label.svelte-1wn0cj6{display:block;font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.form-input.svelte-1wn0cj6{width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--text-base);font-family:inherit;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;transition:border-color var(--transition-fast);box-sizing:border-box}.form-input.svelte-1wn0cj6:focus{border-color:var(--color-accent)}.form-input.svelte-1wn0cj6:disabled{opacity:.6;cursor:not-allowed}.file-input.svelte-1wn0cj6{cursor:pointer}.form-help.svelte-1wn0cj6,.status-message.svelte-1wn0cj6,.error-message.svelte-1wn0cj6,.preview-message.svelte-1wn0cj6{font-size:var(--text-sm);line-height:1.4}.form-help.svelte-1wn0cj6{color:var(--color-text-muted);margin-top:var(--space-xs)}.status-message.svelte-1wn0cj6{color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.error-message.svelte-1wn0cj6,.preview-message.svelte-1wn0cj6{border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm)}.error-message.svelte-1wn0cj6{color:var(--color-error, #ff6b6b);background:color-mix(in srgb,var(--color-error, #ff6b6b) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-error, #ff6b6b) 35%,transparent)}.preview-message.svelte-1wn0cj6{color:var(--color-success, #4ade80);background:color-mix(in srgb,var(--color-success, #4ade80) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-success, #4ade80) 35%,transparent)}.modal-actions.svelte-1wn0cj6{display:flex;justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-lg)}.btn-cancel.svelte-1wn0cj6,.btn-create.svelte-1wn0cj6{padding:var(--space-sm) var(--space-lg);font-size:var(--text-sm);font-weight:600;font-family:inherit;border-radius:var(--radius-md);cursor:pointer;border:none;transition:background-color var(--transition-fast),color var(--transition-fast)}.btn-cancel.svelte-1wn0cj6{background:transparent;color:var(--color-text-secondary)}.btn-cancel.svelte-1wn0cj6:focus-visible,.btn-create.svelte-1wn0cj6:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-cancel.svelte-1wn0cj6:hover:not(:disabled){color:var(--color-text);background:var(--color-bg-tertiary)}.btn-create.svelte-1wn0cj6{background:var(--color-accent);color:var(--color-on-accent)}.btn-create.svelte-1wn0cj6:hover:not(:disabled){background:var(--color-accent-hover)}.btn-create.svelte-1wn0cj6:disabled,.btn-cancel.svelte-1wn0cj6:disabled{opacity:.5;cursor:not-allowed}.install-wrapper.svelte-12bs7hz{position:relative;padding:var(--space-sm) var(--space-sm);border-top:1px solid var(--color-border);margin-top:auto}.install-btn.svelte-12bs7hz{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);font-weight:500;font-family:var(--font-family);color:var(--color-text-secondary);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast)}.install-btn.svelte-12bs7hz:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.install-btn.svelte-12bs7hz:hover{color:var(--color-accent);border-color:var(--color-accent);background-color:var(--color-bg-tertiary)}.install-icon.svelte-12bs7hz{width:16px;height:16px;flex-shrink:0}.safari-tooltip.svelte-12bs7hz{position:absolute;bottom:calc(100% + var(--space-xs));left:var(--space-sm);right:var(--space-sm);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:0 4px 12px #00000026;z-index:200}.safari-tooltip.svelte-12bs7hz p:where(.svelte-12bs7hz){margin:0 0 var(--space-sm) 0;font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.safari-tooltip.svelte-12bs7hz ol:where(.svelte-12bs7hz){margin:0 0 var(--space-sm) 0;padding-left:var(--space-lg);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6}.share-icon-hint.svelte-12bs7hz{font-size:var(--text-xs);color:var(--color-text-muted)}.tooltip-dismiss.svelte-12bs7hz{display:block;width:100%;padding:var(--space-xs) var(--space-sm);background:var(--color-accent);color:var(--color-on-accent);border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;cursor:pointer;font-family:var(--font-family)}.sidebar-backdrop.svelte-129hoe0{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:119;border:none;cursor:default}.sidebar.svelte-129hoe0{width:0;overflow:hidden;background-color:var(--color-bg-secondary);border-right:1px solid var(--color-border);transition:width .2s ease;flex-shrink:0;display:flex;flex-direction:column}.sidebar.open.svelte-129hoe0{width:240px}.sidebar-content.svelte-129hoe0{width:240px;min-width:240px;padding:var(--space-md) 0;overflow-y:auto;height:100%;display:flex;flex-direction:column}.sidebar-section.svelte-129hoe0{margin-bottom:var(--space-lg)}.section-header.svelte-129hoe0{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.section-icon.svelte-129hoe0{width:14px;height:14px}.section-header-row.svelte-129hoe0{display:flex;align-items:center;justify-content:space-between;padding-right:var(--space-md)}.playlist-header-actions.svelte-129hoe0{display:flex;align-items:center;gap:var(--space-xs)}.new-playlist-btn.svelte-129hoe0{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast),background-color var(--transition-fast)}.new-playlist-btn.svelte-129hoe0:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.new-playlist-btn.svelte-129hoe0:hover{color:var(--color-accent);background-color:var(--color-bg-tertiary)}.new-playlist-btn.svelte-129hoe0 svg:where(.svelte-129hoe0){width:16px;height:16px}.sidebar-nav.svelte-129hoe0{display:flex;flex-direction:column;gap:2px;padding:0 var(--space-sm)}.nav-link.svelte-129hoe0{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);font-weight:500;font-family:var(--font-family);color:var(--color-text-secondary);text-decoration:none;border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast);text-align:left;width:100%;white-space:nowrap}.nav-link.svelte-129hoe0:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.nav-link.svelte-129hoe0:hover{color:var(--color-text);background-color:var(--color-bg-tertiary)}.nav-link.active.svelte-129hoe0{color:var(--color-accent);background-color:var(--color-bg-tertiary)}.nav-icon.svelte-129hoe0{width:16px;height:16px;flex-shrink:0}.playlist-name.svelte-129hoe0{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.playlist-count.svelte-129hoe0{font-size:var(--text-xs);color:var(--color-text-muted);flex-shrink:0}.download-badge.svelte-129hoe0{background:var(--color-accent);color:var(--color-on-accent);border-radius:9999px;font-size:12px;font-weight:600;min-width:16px;height:16px;padding:0 var(--space-xs);text-align:center;line-height:16px;margin-left:auto;flex-shrink:0}.empty-state.svelte-129hoe0{padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);color:var(--color-text-muted);font-style:italic}@media(max-width:768px){.sidebar-backdrop.svelte-129hoe0{display:block}.sidebar.svelte-129hoe0{position:fixed;top:0;left:0;bottom:0;z-index:120;width:0;transform:translate(-100%);transition:transform .2s ease,width 0s .2s}.sidebar.open.svelte-129hoe0{width:240px;transform:translate(0);transition:transform .2s ease,width 0s}}.update-prompt.svelte-ksczdt{position:fixed;top:var(--space-md);right:var(--space-md);z-index:10000;background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:0 4px 16px #0003;max-width:360px;font-size:var(--text-sm)}.update-content.svelte-ksczdt{margin-bottom:var(--space-sm)}.update-content.svelte-ksczdt strong:where(.svelte-ksczdt){color:var(--color-text)}.update-notes.svelte-ksczdt{color:var(--color-text-secondary);margin:var(--space-xs) 0 0;font-size:var(--text-xs);max-height:60px;overflow:hidden;text-overflow:ellipsis}.update-actions.svelte-ksczdt{display:flex;gap:var(--space-sm);justify-content:flex-end}.btn-update.svelte-ksczdt{background:var(--color-accent);color:var(--color-on-accent);border:none;border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-md);cursor:pointer;font-size:var(--text-sm);font-weight:500}.btn-update.svelte-ksczdt:focus-visible,.btn-later.svelte-ksczdt:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-update.svelte-ksczdt:hover{filter:brightness(1.1)}.btn-later.svelte-ksczdt{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-md);cursor:pointer;font-size:var(--text-sm)}.btn-later.svelte-ksczdt:hover{background:var(--color-hover)}.offline-banner.svelte-1cjtxgc{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);background:var(--color-warning);color:var(--color-text);font-size:var(--text-sm);font-weight:500;text-align:center;justify-content:center;z-index:1000}.offline-icon.svelte-1cjtxgc{width:16px;height:16px;flex-shrink:0}.app-root.svelte-12qhfyh{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.app-body.svelte-12qhfyh{flex:1;display:flex;min-height:0;overflow:hidden}main.svelte-12qhfyh{flex:1;min-width:0;overflow-y:auto}main.has-player.svelte-12qhfyh{padding-bottom:var(--player-bar-height)}
