.add-to-menu.svelte-bbnlth{position:relative}.trigger-button.svelte-bbnlth{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-default);border-radius:4px;color:var(--text-tertiary);cursor:pointer;transition:all .2s}.trigger-button.svelte-bbnlth:hover,.trigger-button.menu-open.svelte-bbnlth{background:var(--bg-tertiary);border-color:var(--accent);color:var(--accent)}.trigger-button.liked.svelte-bbnlth{color:var(--accent);border-color:var(--accent)}.trigger-button.svelte-bbnlth:disabled{opacity:.5;cursor:not-allowed}.trigger-button.disabled-state.svelte-bbnlth{opacity:.4;border-color:var(--text-muted);color:var(--text-muted)}.trigger-button.loading.svelte-bbnlth{animation:svelte-bbnlth-pulse 1s ease-in-out infinite}@keyframes svelte-bbnlth-pulse{0%,to{opacity:1}50%{opacity:.5}}.trigger-button.svelte-bbnlth svg:where(.svelte-bbnlth){width:16px;height:16px;transition:transform .2s}.menu-dropdown.svelte-bbnlth{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:8px;box-shadow:0 4px 16px #0000004d;overflow:hidden;z-index:10}.menu-item.svelte-bbnlth{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:transparent;border:none;color:var(--text-primary);font-size:.9rem;font-family:inherit;cursor:pointer;transition:background .15s;text-align:left}.menu-item.svelte-bbnlth:hover{background:var(--bg-tertiary)}.menu-item.svelte-bbnlth:disabled{opacity:.5}.menu-item.svelte-bbnlth .chevron:where(.svelte-bbnlth){margin-left:auto;color:var(--text-muted)}.playlist-picker.svelte-bbnlth{display:flex;flex-direction:column}.back-button.svelte-bbnlth{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:transparent;border:none;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);font-size:.85rem;font-family:inherit;cursor:pointer;transition:background .15s}.back-button.svelte-bbnlth:hover{background:var(--bg-tertiary)}.playlist-list.svelte-bbnlth{max-height:240px;overflow-y:auto}.playlist-item.svelte-bbnlth{width:100%;display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;background:transparent;border:none;color:var(--text-primary);font-size:.9rem;font-family:inherit;cursor:pointer;transition:background .15s;text-align:left}.playlist-item.svelte-bbnlth:hover{background:var(--bg-tertiary)}.playlist-item.svelte-bbnlth:disabled{opacity:.6}.playlist-thumb.svelte-bbnlth,.playlist-thumb-placeholder.svelte-bbnlth{width:32px;height:32px;border-radius:4px;flex-shrink:0}.playlist-thumb.svelte-bbnlth{object-fit:cover}.playlist-thumb-placeholder.svelte-bbnlth{background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.playlist-name.svelte-bbnlth{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loading-state.svelte-bbnlth,.empty-state.svelte-bbnlth{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem 1rem;color:var(--text-tertiary);font-size:.85rem}.create-playlist-link.svelte-bbnlth{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;color:var(--accent);font-size:.9rem;font-family:inherit;text-decoration:none;border-top:1px solid var(--border-subtle);transition:background .15s}.create-playlist-link.svelte-bbnlth:hover{background:var(--bg-tertiary)}.spinner.svelte-bbnlth{width:16px;height:16px;border:2px solid var(--border-default);border-top-color:var(--accent);border-radius:50%;animation:svelte-bbnlth-spin .8s linear infinite}.spinner.small.svelte-bbnlth{width:14px;height:14px}@keyframes svelte-bbnlth-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.trigger-button.svelte-bbnlth{width:28px;height:28px}.trigger-button.svelte-bbnlth svg:where(.svelte-bbnlth){width:14px;height:14px}.menu-dropdown.svelte-bbnlth{position:fixed;inset:auto 0 0;min-width:100%;border-radius:16px 16px 0 0;padding-bottom:env(safe-area-inset-bottom,0);animation:svelte-bbnlth-slideUp .2s ease-out}@keyframes svelte-bbnlth-slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.menu-item.svelte-bbnlth{padding:1rem 1.25rem;font-size:1rem}.back-button.svelte-bbnlth{padding:1rem 1.25rem}.playlist-item.svelte-bbnlth{padding:.875rem 1.25rem}.playlist-list.svelte-bbnlth{max-height:50vh}}.actions-menu.svelte-if95lj{position:relative}.menu-button.svelte-if95lj{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-default);border-radius:4px;color:var(--text-tertiary);cursor:pointer;transition:all .2s}.menu-button.svelte-if95lj:hover{background:var(--bg-tertiary);border-color:var(--accent);color:var(--accent)}.menu-backdrop.svelte-if95lj{position:fixed;inset:0;z-index:100;background:#0006}.menu-panel.svelte-if95lj{position:fixed;bottom:0;left:0;right:0;background:var(--bg-secondary);border-radius:16px 16px 0 0;box-shadow:0 -4px 24px #0006;z-index:101;animation:svelte-if95lj-slideUp .2s ease-out;padding-bottom:env(safe-area-inset-bottom,0);max-height:70vh;overflow-y:auto}@keyframes svelte-if95lj-slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.menu-item.svelte-if95lj{display:flex;align-items:center;gap:.75rem;background:transparent;border:none;color:var(--text-primary);cursor:pointer;padding:1rem 1.25rem;transition:all .15s;font-family:inherit;width:100%;text-align:left;border-bottom:1px solid var(--border-subtle)}.menu-item.svelte-if95lj:last-child{border-bottom:none}.menu-item.svelte-if95lj:hover,.menu-item.svelte-if95lj:active{background:var(--bg-tertiary)}.menu-item.svelte-if95lj span:where(.svelte-if95lj){font-size:1rem;font-weight:400;flex:1}.menu-item.svelte-if95lj svg:where(.svelte-if95lj){width:20px;height:20px;flex-shrink:0}.menu-item.svelte-if95lj .chevron:where(.svelte-if95lj){color:var(--text-muted)}.menu-item.svelte-if95lj:disabled{opacity:.5;cursor:not-allowed}.playlist-picker.svelte-if95lj{display:flex;flex-direction:column}.back-button.svelte-if95lj{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem;background:transparent;border:none;border-bottom:1px solid var(--border-default);color:var(--text-secondary);font-size:.9rem;font-family:inherit;cursor:pointer;transition:background .15s}.back-button.svelte-if95lj:hover,.back-button.svelte-if95lj:active{background:var(--bg-tertiary)}.playlist-list.svelte-if95lj{max-height:50vh;overflow-y:auto}.playlist-item.svelte-if95lj{width:100%;display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;background:transparent;border:none;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-size:1rem;font-family:inherit;cursor:pointer;transition:background .15s;text-align:left}.playlist-item.svelte-if95lj:last-child{border-bottom:none}.playlist-item.svelte-if95lj:hover,.playlist-item.svelte-if95lj:active{background:var(--bg-tertiary)}.playlist-item.svelte-if95lj:disabled{opacity:.6}.playlist-thumb.svelte-if95lj,.playlist-thumb-placeholder.svelte-if95lj{width:36px;height:36px;border-radius:4px;flex-shrink:0}.playlist-thumb.svelte-if95lj{object-fit:cover}.playlist-thumb-placeholder.svelte-if95lj{background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.playlist-name.svelte-if95lj{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loading-state.svelte-if95lj,.empty-state.svelte-if95lj{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1rem;color:var(--text-tertiary);font-size:.9rem}.create-playlist-link.svelte-if95lj{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;color:var(--accent);font-size:1rem;font-family:inherit;text-decoration:none;border-top:1px solid var(--border-subtle);transition:background .15s}.create-playlist-link.svelte-if95lj:hover,.create-playlist-link.svelte-if95lj:active{background:var(--bg-tertiary)}.spinner.svelte-if95lj{width:18px;height:18px;border:2px solid var(--border-default);border-top-color:var(--accent);border-radius:50%;animation:svelte-if95lj-spin .8s linear infinite}.spinner.small.svelte-if95lj{width:16px;height:16px}@keyframes svelte-if95lj-spin{to{transform:rotate(360deg)}}@media(min-width:769px){.menu-backdrop.svelte-if95lj{background:transparent}.menu-panel.svelte-if95lj{position:absolute;inset:50% 100% auto auto;transform:translateY(-50%);margin-right:.5rem;border-radius:8px;min-width:180px;max-height:none;animation:svelte-if95lj-slideIn .15s cubic-bezier(.16,1,.3,1);padding-bottom:0}@keyframes svelte-if95lj-slideIn{0%{opacity:0;transform:translateY(-50%) scale(.95)}to{opacity:1;transform:translateY(-50%) scale(1)}}.menu-item.svelte-if95lj{padding:.75rem 1rem}.menu-item.svelte-if95lj span:where(.svelte-if95lj){font-size:.9rem}.menu-item.svelte-if95lj svg:where(.svelte-if95lj){width:18px;height:18px}.back-button.svelte-if95lj{padding:.75rem 1rem}.playlist-item.svelte-if95lj{padding:.625rem 1rem;font-size:.9rem}.playlist-thumb.svelte-if95lj,.playlist-thumb-placeholder.svelte-if95lj{width:32px;height:32px}.playlist-list.svelte-if95lj{max-height:200px}.loading-state.svelte-if95lj,.empty-state.svelte-if95lj{padding:1.5rem 1rem}}.likers-tooltip.svelte-1v3cx9f{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:.5rem;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:8px;padding:.75rem;min-width:240px;max-width:320px;box-shadow:0 4px 12px #00000080;z-index:1000;pointer-events:auto}.likers-tooltip.position-below.svelte-1v3cx9f{bottom:auto;top:100%;margin-bottom:0;margin-top:.5rem}.loading.svelte-1v3cx9f,.error.svelte-1v3cx9f,.empty.svelte-1v3cx9f{color:var(--text-tertiary);font-size:.85rem;text-align:center;padding:.5rem}.error.svelte-1v3cx9f{color:var(--error)}.likers-list.svelte-1v3cx9f{display:flex;flex-direction:column;gap:.5rem;max-height:240px;overflow-y:auto}.liker.svelte-1v3cx9f{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:6px;text-decoration:none;transition:background .2s}.liker.svelte-1v3cx9f:hover{background:var(--bg-hover)}.avatar.svelte-1v3cx9f,.avatar-placeholder.svelte-1v3cx9f{width:32px;height:32px;border-radius:50%;flex-shrink:0}.avatar.svelte-1v3cx9f{object-fit:cover;border:1px solid var(--border-default)}.avatar-placeholder.svelte-1v3cx9f{background:var(--border-default);display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-weight:600;font-size:.9rem}.liker-info.svelte-1v3cx9f{flex:1;min-width:0}.display-name.svelte-1v3cx9f{color:var(--text-primary);font-weight:500;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.handle.svelte-1v3cx9f{color:var(--text-tertiary);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.liked-time.svelte-1v3cx9f{color:var(--text-muted);font-size:.75rem;flex-shrink:0}.likers-list.svelte-1v3cx9f::-webkit-scrollbar{width:6px}.likers-list.svelte-1v3cx9f::-webkit-scrollbar-track{background:var(--bg-tertiary)}.likers-list.svelte-1v3cx9f::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:3px}.likers-list.svelte-1v3cx9f::-webkit-scrollbar-thumb:hover{background:var(--border-emphasis)}.track-container.svelte-f3f34c{display:flex;align-items:center;gap:.75rem;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-left:3px solid transparent;padding:1rem;transition:all .15s ease-in-out}.track-index.svelte-f3f34c{width:24px;font-size:.85rem;color:var(--text-muted);text-align:center;flex-shrink:0;font-variant-numeric:tabular-nums}.track-container.svelte-f3f34c:hover{background:var(--bg-tertiary);border-left-color:var(--accent);border-color:var(--border-default)}.track-container.playing.svelte-f3f34c{background:color-mix(in srgb,var(--accent) 10%,var(--bg-tertiary));border-left-color:var(--accent);border-color:color-mix(in srgb,var(--accent) 20%,var(--border-subtle))}.track-container.likers-tooltip-open.svelte-f3f34c{position:relative;z-index:60}.track.svelte-f3f34c{background:transparent;border:none;cursor:pointer;text-align:left;padding:0;flex:1;min-width:0;display:flex;align-items:center;gap:.75rem;font-family:inherit}.track-image.svelte-f3f34c,.track-image-placeholder.svelte-f3f34c{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:4px;overflow:hidden;background:var(--bg-tertiary);border:1px solid var(--border-subtle)}.track-avatar.svelte-f3f34c{flex-shrink:0;width:48px;height:48px;display:block}.track-avatar.svelte-f3f34c{text-decoration:none;transition:transform .2s}.track-avatar.svelte-f3f34c:hover{transform:scale(1.05)}.track-image.svelte-f3f34c img:where(.svelte-f3f34c),.track-avatar.svelte-f3f34c img:where(.svelte-f3f34c){width:100%;height:100%;object-fit:cover}.track-image-placeholder.svelte-f3f34c{color:var(--text-muted)}.track-avatar.svelte-f3f34c img:where(.svelte-f3f34c){border-radius:50%;border:2px solid var(--border-default);transition:border-color .2s}.track-avatar.svelte-f3f34c:hover img:where(.svelte-f3f34c){border-color:var(--accent)}.track-info.svelte-f3f34c{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.track-actions.svelte-f3f34c{display:flex;gap:.5rem;flex-shrink:0;align-items:center}.desktop-actions.svelte-f3f34c{display:flex;gap:.5rem;align-items:center}.mobile-actions.svelte-f3f34c{display:none}.track-title.svelte-f3f34c{font-family:inherit;font-weight:600;font-size:1.05rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-metadata.svelte-f3f34c{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;color:var(--text-secondary);font-size:.9rem;font-family:inherit;min-width:0;width:100%}.artist-line.svelte-f3f34c{display:inline-flex;align-items:center;gap:.35rem;min-width:0;flex-wrap:nowrap}.artist-line.only-features.svelte-f3f34c{gap:.25rem}.metadata-separator.svelte-f3f34c{display:none;font-size:.7rem}.artist-link.svelte-f3f34c{color:var(--text-secondary);text-decoration:none;transition:color .2s;font-weight:500;font-family:inherit;max-width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artist-link.svelte-f3f34c:hover{color:var(--accent)}.features-inline.svelte-f3f34c{display:inline-flex;align-items:center;gap:.25rem;color:var(--text-secondary);white-space:nowrap}.features-label.svelte-f3f34c{color:var(--accent-hover);font-weight:500;text-transform:lowercase}.feature-link.svelte-f3f34c{color:var(--accent-hover);text-decoration:none;font-weight:500;transition:color .2s}.feature-link.svelte-f3f34c:hover{color:var(--accent);text-decoration:underline}.feature-separator.svelte-f3f34c{color:var(--accent-hover)}.album.svelte-f3f34c{color:var(--text-tertiary);display:inline-flex;align-items:center;gap:.35rem;min-width:0;width:100%}.album-link.svelte-f3f34c{color:var(--text-tertiary);text-decoration:none;transition:color .2s;display:inline-block;max-width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.album-link.svelte-f3f34c:hover{color:var(--accent)}.album-icon.svelte-f3f34c{width:14px;height:14px;opacity:.7;flex-shrink:0}.tags-line.svelte-f3f34c{display:flex;flex-wrap:nowrap;gap:.25rem;margin-top:.15rem;overflow:hidden}.tags-line.expanded.svelte-f3f34c{flex-wrap:wrap}.tag-badge.svelte-f3f34c{display:inline-block;padding:.1rem .4rem;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent-hover);border-radius:3px;font-size:.75rem;font-weight:500;text-decoration:none;transition:all .15s;flex-shrink:0;white-space:nowrap}.tag-badge.svelte-f3f34c:hover{background:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--accent)}.tags-more.svelte-f3f34c{display:inline-block;padding:.1rem .4rem;background:var(--bg-tertiary);color:var(--text-muted);border:none;border-radius:3px;font-size:.75rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s;flex-shrink:0;white-space:nowrap}.tags-more.svelte-f3f34c:hover{background:var(--bg-hover);color:var(--text-secondary)}.track-meta.svelte-f3f34c{font-size:.8rem;color:var(--text-tertiary);display:flex;align-items:center;gap:.5rem}.plays.svelte-f3f34c{color:var(--text-tertiary);font-family:inherit}.meta-separator.svelte-f3f34c{color:var(--text-muted);font-size:.7rem}.likes.svelte-f3f34c{color:var(--text-tertiary);font-family:inherit;position:relative;cursor:help;transition:color .2s}.likes.svelte-f3f34c:hover{color:var(--accent)}.comments.svelte-f3f34c{color:var(--text-tertiary);font-family:inherit;display:inline-flex;align-items:center;gap:.25rem;text-decoration:none;transition:color .2s}.comments.svelte-f3f34c:hover{color:var(--accent)}.comment-icon.svelte-f3f34c{width:12px;height:12px;flex-shrink:0}.comment-count.svelte-f3f34c{font-family:inherit}.action-button.svelte-f3f34c{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-default);border-radius:4px;color:var(--text-tertiary);cursor:pointer;transition:all .2s;text-decoration:none}.action-button.svelte-f3f34c:hover{background:var(--bg-tertiary);border-color:var(--accent);color:var(--accent)}.action-button.svelte-f3f34c svg:where(.svelte-f3f34c){width:16px;height:16px}@media(max-width:768px){.desktop-actions.svelte-f3f34c{display:none}.mobile-actions.svelte-f3f34c{display:flex}.track-container.svelte-f3f34c{padding:.65rem .75rem;gap:.5rem}.track-index.svelte-f3f34c{display:none}.track.svelte-f3f34c{gap:.5rem}.track-image.svelte-f3f34c,.track-image-placeholder.svelte-f3f34c,.track-avatar.svelte-f3f34c{width:40px;height:40px}.track-title.svelte-f3f34c{font-size:.9rem}.track-metadata.svelte-f3f34c{font-size:.8rem;gap:.35rem}.track-meta.svelte-f3f34c{font-size:.7rem}.track-actions.svelte-f3f34c{gap:.35rem}.action-button.svelte-f3f34c{width:32px;height:32px}.action-button.svelte-f3f34c svg:where(.svelte-f3f34c){width:14px;height:14px}}@media(max-width:480px){.track-container.svelte-f3f34c{padding:.5rem .65rem}.track-image.svelte-f3f34c,.track-image-placeholder.svelte-f3f34c,.track-avatar.svelte-f3f34c{width:36px;height:36px}.track-title.svelte-f3f34c{font-size:.85rem}.track-metadata.svelte-f3f34c{font-size:.75rem}.metadata-separator.svelte-f3f34c{font-size:.6rem}.track-meta.svelte-f3f34c{font-size:.65rem;gap:.35rem}.meta-separator.svelte-f3f34c{font-size:.6rem}.action-button.svelte-f3f34c{width:30px;height:30px}.action-button.svelte-f3f34c svg:where(.svelte-f3f34c){width:13px;height:13px}}
