.player-track.svelte-d0ylmv{display:flex;align-items:center;gap:.85rem;min-width:0;flex:0 1 420px;overflow:visible;height:56px}.player-artwork.svelte-d0ylmv{flex-shrink:0;width:56px;height:56px;border-radius:4px;overflow:hidden;background:#1a1a1a;border:1px solid #333;display:block;text-decoration:none;transition:transform .18s ease,border-color .2s ease;will-change:transform}.player-artwork.svelte-d0ylmv:hover{transform:scale(1.05);border-color:var(--accent)}.player-artwork.svelte-d0ylmv img:where(.svelte-d0ylmv){width:100%;height:100%;object-fit:cover}.player-artwork-placeholder.svelte-d0ylmv{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#666}.player-info.svelte-d0ylmv{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem;justify-content:center}.player-title.svelte-d0ylmv,.player-title-link.svelte-d0ylmv{font-size:.95rem;font-weight:600;color:#e8e8e8;margin-bottom:0;position:relative;overflow:hidden;text-overflow:ellipsis;line-height:1.15}.player-title-link.svelte-d0ylmv{text-decoration:none}.player-title-link.svelte-d0ylmv:hover{color:var(--accent)}.player-title.scrolling.svelte-d0ylmv,.player-title-link.scrolling.svelte-d0ylmv{overflow:hidden;mask-image:linear-gradient(to right,black 0%,black calc(100% - 20px),transparent 100%);-webkit-mask-image:linear-gradient(to right,black 0%,black calc(100% - 20px),transparent 100%)}.player-title.svelte-d0ylmv span:where(.svelte-d0ylmv),.player-title-link.svelte-d0ylmv span:where(.svelte-d0ylmv){display:inline-block;white-space:nowrap}.player-title.scrolling.svelte-d0ylmv span:where(.svelte-d0ylmv),.player-title-link.scrolling.svelte-d0ylmv span:where(.svelte-d0ylmv){padding-right:2rem;animation:svelte-d0ylmv-scroll-text 10s linear infinite}.text-container.scrolling.svelte-d0ylmv{mask-image:linear-gradient(to right,black 0%,black calc(100% - 15px),transparent 100%);-webkit-mask-image:linear-gradient(to right,black 0%,black calc(100% - 15px),transparent 100%)}.text-container.svelte-d0ylmv>span:where(.svelte-d0ylmv){display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.text-container.scrolling.svelte-d0ylmv>span:where(.svelte-d0ylmv){padding-right:3rem;animation:svelte-d0ylmv-scroll-text 15s linear infinite}.player-metadata.svelte-d0ylmv{display:flex;flex-direction:column;justify-content:center;gap:.15rem;color:#a0a0a0;font-size:.82rem;min-width:0;height:32px}.metadata-entry.svelte-d0ylmv,.metadata-link.svelte-d0ylmv{display:inline-flex;align-items:center;gap:.35rem;color:inherit;text-decoration:none;transition:color .2s;min-width:0;white-space:nowrap;line-height:1.15}.metadata-link.svelte-d0ylmv:hover,.inline-artist.svelte-d0ylmv:hover,.feature-link.svelte-d0ylmv:hover{color:var(--accent)}.metadata-icon.svelte-d0ylmv{width:12px;height:12px;opacity:.7;flex-shrink:0}.text-container.svelte-d0ylmv{overflow:hidden;position:relative;min-width:0;flex:1;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center}.inline-artist.svelte-d0ylmv,.feature-link.svelte-d0ylmv{color:inherit;text-decoration:none}.features-inline.svelte-d0ylmv{color:#b5b5b5;display:inline-flex;align-items:center;gap:.25rem}.features-label.svelte-d0ylmv{margin-right:.25rem;text-transform:lowercase}.feature-separator.svelte-d0ylmv{margin:0 .1rem}.metadata-line.svelte-d0ylmv{height:16px;display:flex;align-items:center;min-width:0}.metadata-fallback.svelte-d0ylmv{opacity:.5;cursor:default;padding-left:0;gap:.3rem;align-items:center}.metadata-icon-spacer.svelte-d0ylmv{opacity:.45}@keyframes svelte-d0ylmv-scroll-text{0%,15%{transform:translate(0)}85%,to{transform:translate(-100%)}}@media(max-width:768px){.player-track.svelte-d0ylmv{display:contents;height:auto}.player-metadata.svelte-d0ylmv{height:auto;gap:.1rem}.metadata-line.svelte-d0ylmv{height:auto}.player-artwork.svelte-d0ylmv{width:48px;height:48px;grid-row:1;grid-column:1}.player-info.svelte-d0ylmv{grid-row:1;grid-column:2 / 4;min-width:0;overflow:hidden;display:flex;flex-direction:column;gap:.25rem}.player-title.svelte-d0ylmv,.player-title-link.svelte-d0ylmv{font-size:.9rem;margin-bottom:0}.player-metadata.svelte-d0ylmv{font-size:.8rem}.player-title.scrolling.svelte-d0ylmv,.player-title-link.scrolling.svelte-d0ylmv{mask-image:linear-gradient(to right,black 0%,black calc(100% - 15px),transparent 100%);-webkit-mask-image:linear-gradient(to right,black 0%,black calc(100% - 15px),transparent 100%)}}.player-controls.svelte-r2dr6x{flex:1;display:flex;align-items:center;gap:1rem;min-width:0;width:100%}.control-btn.svelte-r2dr6x{background:transparent;border:none;color:inherit;cursor:pointer;padding:.6rem;display:flex;align-items:center;justify-content:center;transition:all .2s;border-radius:50%}.control-btn.svelte-r2dr6x svg:where(.svelte-r2dr6x){width:24px;height:24px}.control-btn.svelte-r2dr6x:hover{color:var(--accent);background:#6a9fff1a}.control-btn.play-pause.svelte-r2dr6x:active{transform:scale(.95)}.control-btn.disabled.svelte-r2dr6x{opacity:.4;pointer-events:none}.playback-options.svelte-r2dr6x{display:flex;align-items:center;gap:.5rem}.option-btn.svelte-r2dr6x{background:transparent;border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s;position:relative}.option-btn.svelte-r2dr6x svg:where(.svelte-r2dr6x){width:20px;height:20px}.option-btn.svelte-r2dr6x:hover{color:var(--text-primary);border-color:var(--accent)}.option-btn.active.svelte-r2dr6x{color:var(--accent);border-color:var(--accent)}.time-control.svelte-r2dr6x{flex:1;display:flex;align-items:center;gap:.75rem}.time.svelte-r2dr6x{font-size:.85rem;color:#909090;min-width:45px;font-variant-numeric:tabular-nums}.seek-bar.svelte-r2dr6x,.volume-bar.svelte-r2dr6x{flex:1}.volume-control.svelte-r2dr6x{display:flex;align-items:center;gap:.5rem;color:#909090;min-width:140px;position:relative}.volume-icon.svelte-r2dr6x{display:flex;align-items:center;transition:all .3s}.volume-icon.muted.svelte-r2dr6x{color:#ff6b6b;animation:svelte-r2dr6x-shake .5s ease-in-out}.volume-icon.svelte-r2dr6x .max-volume:where(.svelte-r2dr6x){color:var(--accent);animation:svelte-r2dr6x-pulse .5s ease-in-out}@keyframes svelte-r2dr6x-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}@keyframes svelte-r2dr6x-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}input[type=range].svelte-r2dr6x{-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer}input[type=range].svelte-r2dr6x::-webkit-slider-runnable-track{background:linear-gradient(to right,color-mix(in srgb,var(--accent) 60%,transparent) 0%,color-mix(in srgb,var(--accent) 60%,transparent) var(--progress, 0%),color-mix(in srgb,var(--accent) 20%,transparent) var(--progress, 0%),color-mix(in srgb,var(--accent) 20%,transparent) 100%);height:4px;border-radius:2px}input[type=range].svelte-r2dr6x::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--accent);height:14px;width:14px;border-radius:50%;margin-top:-5px;transition:all .2s;box-shadow:0 0 0 8px transparent}input[type=range].svelte-r2dr6x::-webkit-slider-thumb:hover{background:var(--accent-hover);transform:scale(1.2);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 20%,transparent)}input[type=range].muted.svelte-r2dr6x::-webkit-slider-thumb{background:#ff6b6b}input[type=range].max.svelte-r2dr6x::-webkit-slider-thumb{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 30%,transparent)}input[type=range].svelte-r2dr6x::-moz-range-track{background:color-mix(in srgb,var(--accent) 20%,transparent);height:4px;border-radius:2px}input[type=range].svelte-r2dr6x::-moz-range-progress{background:color-mix(in srgb,var(--accent) 60%,transparent);height:4px;border-radius:2px}input[type=range].svelte-r2dr6x::-moz-range-thumb{background:var(--accent);height:14px;width:14px;border-radius:50%;border:none;transition:all .2s;box-shadow:0 0 0 8px transparent}input[type=range].svelte-r2dr6x::-moz-range-thumb:hover{background:var(--accent-hover);transform:scale(1.2);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 20%,transparent)}input[type=range].muted.svelte-r2dr6x::-moz-range-thumb{background:#ff6b6b}input[type=range].max.svelte-r2dr6x::-moz-range-thumb{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 30%,transparent)}@media(max-width:768px){.player-controls.svelte-r2dr6x{display:contents}.control-btn.svelte-r2dr6x{grid-row:1;padding:.5rem}.control-btn.svelte-r2dr6x:nth-of-type(1){grid-column:4}.control-btn.play-pause.svelte-r2dr6x{grid-column:5}.control-btn.svelte-r2dr6x:nth-of-type(3){grid-column:6}.control-btn.svelte-r2dr6x svg:where(.svelte-r2dr6x){width:28px;height:28px}.control-btn.play-pause.svelte-r2dr6x svg:where(.svelte-r2dr6x){width:32px;height:32px}.playback-options.svelte-r2dr6x{grid-row:2;grid-column:1}.option-btn.svelte-r2dr6x{width:36px;height:36px}.option-btn.svelte-r2dr6x svg:where(.svelte-r2dr6x){width:18px;height:18px}.time-control.svelte-r2dr6x{grid-row:2;grid-column:2 / 7}.time.svelte-r2dr6x{font-size:.75rem;min-width:38px}.volume-control.svelte-r2dr6x{display:none}}.player.svelte-1abixwz{position:fixed;bottom:0;left:0;right:0;background:#1a1a1a;border-top:1px solid #333;padding:.75rem 2rem;padding-bottom:max(.75rem,env(safe-area-inset-bottom));z-index:100;transform:translate3d(0,var(--visual-viewport-offset, 0px),0);-webkit-transform:translate3d(0,var(--visual-viewport-offset, 0px),0);will-change:transform}.player-content.svelte-1abixwz{width:100%;margin:0;display:grid;grid-template-columns:minmax(200px,420px) minmax(0,1fr);align-items:center;gap:1.5rem}@media(max-width:1100px){.player-content.svelte-1abixwz{grid-template-columns:minmax(160px,360px) minmax(0,1fr);gap:1rem}}@media(max-width:768px){.player.svelte-1abixwz{padding:.5rem 1rem;padding-bottom:max(.5rem,env(safe-area-inset-bottom))}.player-content.svelte-1abixwz{grid-template-columns:48px 1fr auto auto auto auto;grid-template-rows:auto auto;gap:.5rem .75rem}}.toast-container.svelte-1cpok13{position:fixed;bottom:calc(var(--player-height, 0px) + 1rem);left:1rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.toast.svelte-1cpok13{display:inline-flex;align-items:flex-start;gap:.5rem;padding:.5rem 1rem;background:#0a0a0a99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:8px;pointer-events:none;font-size:.85rem;max-width:450px;box-shadow:0 4px 12px #0006}.toast-icon.svelte-1cpok13{font-size:.8rem;flex-shrink:0;opacity:.7;margin-top:.1rem}.toast-message.svelte-1cpok13{max-width:350px;font-weight:500;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.toast-success.svelte-1cpok13 .toast-icon:where(.svelte-1cpok13){color:var(--success)}.toast-success.svelte-1cpok13 .toast-message:where(.svelte-1cpok13){color:var(--text-primary)}.toast-error.svelte-1cpok13 .toast-icon:where(.svelte-1cpok13){color:var(--error)}.toast-error.svelte-1cpok13 .toast-message:where(.svelte-1cpok13){color:var(--text-primary)}.toast-info.svelte-1cpok13 .toast-icon:where(.svelte-1cpok13){color:var(--accent)}.toast-info.svelte-1cpok13 .toast-message:where(.svelte-1cpok13){color:var(--text-primary)}.toast-warning.svelte-1cpok13 .toast-icon:where(.svelte-1cpok13){color:var(--warning)}.toast-warning.svelte-1cpok13 .toast-message:where(.svelte-1cpok13){color:var(--text-primary)}@media(max-width:768px){.toast-container.svelte-1cpok13{bottom:calc(var(--player-height, 0px) + .75rem);left:.75rem}.toast.svelte-1cpok13{padding:.35rem .7rem;font-size:.8rem;max-width:90vw}.toast-icon.svelte-1cpok13{font-size:.75rem}.toast-message.svelte-1cpok13{max-width:calc(90vw - 4rem)}}@media(prefers-reduced-motion:reduce){.toast.svelte-1cpok13{transition:opacity .2s}}.queue.svelte-a7cxk7{display:flex;flex-direction:column;height:100%;padding:1.5rem 1.25rem calc(var(--player-height, 0px) + 40px + env(safe-area-inset-bottom,0px));background:var(--bg-primary);border-left:1px solid var(--border-subtle);gap:1rem}.queue-header.svelte-a7cxk7 h2:where(.svelte-a7cxk7){margin:0;font-size:1rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-tertiary)}.queue-header.svelte-a7cxk7{display:flex;justify-content:space-between;align-items:center}.clear-btn.svelte-a7cxk7{padding:.25rem .75rem;font-size:.75rem;font-family:inherit;text-transform:uppercase;letter-spacing:.08em;background:transparent;border:1px solid var(--border-subtle);color:var(--text-tertiary);border-radius:4px;cursor:pointer;transition:all .15s ease}.clear-btn.svelte-a7cxk7:hover{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--border-medium)}.queue-body.svelte-a7cxk7{display:flex;flex-direction:column;gap:1.25rem;flex:1;overflow:hidden}.section-label.svelte-a7cxk7{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:.5rem}.now-playing-card.svelte-a7cxk7{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.1rem;border-radius:10px;background:var(--bg-secondary);border:1px solid var(--border-default);gap:1rem;box-shadow:0 0 20px color-mix(in srgb,var(--accent) 15%,transparent)}.now-playing-card.svelte-a7cxk7 .track-title:where(.svelte-a7cxk7){font-weight:600;color:var(--text-primary);margin-bottom:.35rem}.now-playing-card.svelte-a7cxk7 .track-artist:where(.svelte-a7cxk7){font-size:.9rem;color:var(--text-secondary)}.now-playing-card.svelte-a7cxk7 .track-artist:where(.svelte-a7cxk7) a:where(.svelte-a7cxk7){color:inherit;text-decoration:none;transition:color .2s}.now-playing-card.svelte-a7cxk7 .track-artist:where(.svelte-a7cxk7) a:where(.svelte-a7cxk7):hover{color:var(--accent)}.queue-upcoming.svelte-a7cxk7{display:flex;flex-direction:column;flex:1;min-height:0;gap:.75rem}.section-header.svelte-a7cxk7{display:flex;justify-content:space-between;align-items:center;color:var(--text-tertiary);font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}.section-header.svelte-a7cxk7 h3:where(.svelte-a7cxk7){margin:0;font-size:.85rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em}.queue-tracks.svelte-a7cxk7{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding-right:.35rem}.queue-track.svelte-a7cxk7{display:flex;align-items:center;justify-content:space-between;padding:.85rem .9rem;border-radius:8px;cursor:pointer;transition:all .2s;border:1px solid var(--border-subtle);background:var(--bg-secondary)}.queue-track.svelte-a7cxk7:hover{background:var(--bg-hover);border-color:var(--border-default)}.queue-track.drag-over.svelte-a7cxk7{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.track-info.svelte-a7cxk7{flex:1;min-width:0}.track-title.svelte-a7cxk7{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:.25rem}.track-artist.svelte-a7cxk7{font-size:.85rem;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-artist.svelte-a7cxk7 a:where(.svelte-a7cxk7){color:inherit;text-decoration:none;transition:color .2s}.track-artist.svelte-a7cxk7 a:where(.svelte-a7cxk7):hover{color:var(--text-secondary)}.remove-btn.svelte-a7cxk7{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s;border-radius:4px;opacity:0}.queue-track.svelte-a7cxk7:hover .remove-btn:where(.svelte-a7cxk7){opacity:1}.remove-btn.svelte-a7cxk7:hover{color:var(--error);background:color-mix(in srgb,var(--error) 12%,transparent)}.empty-up-next.svelte-a7cxk7{border:1px dashed var(--border-subtle);border-radius:6px;padding:1.25rem;text-align:center;color:var(--text-tertiary)}.queue.empty.svelte-a7cxk7{display:flex;align-items:center;justify-content:center}.empty-state.svelte-a7cxk7{text-align:center;color:var(--text-tertiary);padding:2rem}.empty-state.svelte-a7cxk7 svg:where(.svelte-a7cxk7){margin-bottom:1rem;opacity:.5}.empty-state.svelte-a7cxk7 p:where(.svelte-a7cxk7){margin:.5rem 0 .25rem;font-size:1.1rem;color:var(--text-secondary)}.empty-state.svelte-a7cxk7 span:where(.svelte-a7cxk7){font-size:.9rem}.queue-tracks.svelte-a7cxk7::-webkit-scrollbar{width:8px}.queue-tracks.svelte-a7cxk7::-webkit-scrollbar-track{background:transparent}.queue-tracks.svelte-a7cxk7::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:4px}.queue-tracks.svelte-a7cxk7::-webkit-scrollbar-thumb:hover{background:var(--border-emphasis)}*,*:before,*:after{box-sizing:border-box}:root{--accent: #6a9fff;--accent-hover: #8ab3ff;--accent-muted: #4a7ddd;--bg-primary: #0a0a0a;--bg-secondary: #141414;--bg-tertiary: #1a1a1a;--bg-hover: #1f1f1f;--border-subtle: #282828;--border-default: #333333;--border-emphasis: #444444;--text-primary: #e8e8e8;--text-secondary: #b0b0b0;--text-tertiary: #808080;--text-muted: #666666;--text-page-heading: 1.5rem;--text-section-heading: 1.2rem;--text-body: 1rem;--text-small: .9rem;--success: #4ade80;--warning: #fbbf24;--error: #ef4444}body{margin:0;padding:0;font-family:SF Mono,Monaco,Inconsolata,Fira Code,Consolas,monospace;background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased}.app-layout.svelte-12qhfyh{display:flex;min-height:100vh;width:100%;overflow-x:hidden}@supports (min-height: 100dvh){.app-layout.svelte-12qhfyh{min-height:100dvh}}.main-content.svelte-12qhfyh{flex:1;min-width:0;width:100%;transition:margin-right .3s ease}.main-content.with-queue.svelte-12qhfyh{margin-right:360px}.queue-sidebar.svelte-12qhfyh{position:fixed;top:0;right:0;width:min(360px,100%);height:100vh;background:var(--bg-primary);border-left:1px solid var(--border-subtle);z-index:50}@supports (height: 100dvh){.queue-sidebar.svelte-12qhfyh{height:100dvh}}.queue-toggle.svelte-12qhfyh{position:fixed;bottom:calc(var(--player-height, 0px) + 20px + env(safe-area-inset-bottom,0px));right:20px;width:48px;height:48px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:60;box-shadow:0 4px 12px #0000004d;transform:translate3d(0,var(--visual-viewport-offset, 0px),0);will-change:transform}.queue-toggle.svelte-12qhfyh:hover{background:var(--bg-hover);color:var(--accent);border-color:var(--accent);transform:translate3d(0,var(--visual-viewport-offset, 0px),0) scale(1.05)}@media(max-width:768px){.main-content.with-queue.svelte-12qhfyh{margin-right:0}.queue-sidebar.svelte-12qhfyh{width:100%}.queue-toggle.svelte-12qhfyh{bottom:calc(var(--player-height, 0px) + 20px + env(safe-area-inset-bottom,0px))}}
