.upgrade-overlay{align-items:center;animation:fadeInOverlay .2s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.upgrade-modal{animation:slideInUp .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:360px;padding:28px 24px 24px;position:relative;text-align:center;width:90%}.upgrade-close{align-items:center;background:#f0f0f0;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:12px;height:28px;justify-content:center;position:absolute;right:16px;top:14px;transition:background .2s;width:28px}.upgrade-close:hover{background:#e0e0e0}.upgrade-lock-icon{font-size:36px;margin-bottom:12px}.upgrade-title{color:#1c1c1e;font-size:20px;font-weight:700;margin:0 0 4px}.upgrade-feature-name{color:#000;font-size:15px;font-weight:600;margin:0 0 10px}.upgrade-description{color:#666;font-size:14px;line-height:1.5;margin:0 0 16px}.upgrade-divider{background:#e5e5ea;height:1px;margin:0 0 16px}.upgrade-benefits-label{color:#1c1c1e;font-size:13px;font-weight:600;margin:0 0 10px;text-align:left}.upgrade-benefits{list-style:none;margin:0 0 20px;padding:0;text-align:left}.upgrade-benefits li{align-items:flex-start;color:#444;display:flex;font-size:13px;gap:8px;padding:3px 0}.upgrade-check{color:#34c759;flex-shrink:0;font-weight:700;margin-top:1px}.upgrade-cta{background:#000;border:none;border-radius:12px;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;padding:14px;transition:opacity .2s ease;width:100%}.upgrade-cta:hover{opacity:.85}:root.dark-mode .upgrade-modal{background:#2c2c2e}:root.dark-mode .upgrade-benefits-label,:root.dark-mode .upgrade-title{color:#fff}:root.dark-mode .upgrade-benefits li{color:#ebebf5cc}:root.dark-mode .upgrade-close{background:#424245;color:#ebebf5}:root.dark-mode .upgrade-close:hover{background:#545458}:root.dark-mode .upgrade-divider{background:#424245}:root.dark-mode .upgrade-description{color:#a0a0a0}:root.dark-mode .upgrade-cta{background:#fff;color:#000}@media (max-width:480px){.upgrade-modal{padding:24px 18px 20px;width:95%}}.delete-confirmation-overlay{align-items:center;animation:fadeInOverlay .2s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.delete-confirmation-modal{animation:slideInUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:320px;padding:24px 20px;position:relative;width:90%}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.delete-confirmation-title{color:#1c1c1e;font-size:18px;font-weight:600;margin:0 0 12px;text-align:center}.delete-confirmation-message{color:#666;font-size:16px;line-height:1.5;margin:0 0 24px;text-align:center}.delete-confirmation-message strong{color:#1c1c1e;font-weight:600;word-break:break-word}.delete-confirmation-actions{display:flex;gap:12px;width:100%}.delete-confirmation-cancel,.delete-confirmation-confirm{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-family:inherit;font-size:15px;font-weight:600;padding:12px 16px;transition:all .2s ease}.delete-confirmation-cancel{background:#f0f0f0;color:#1c1c1e}.delete-confirmation-cancel:hover:not(:disabled){background:#e0e0e0;transform:translateY(-1px)}.delete-confirmation-cancel:active:not(:disabled){transform:translateY(0)}.delete-confirmation-confirm{background:#ff3b30;color:#fff}.delete-confirmation-confirm:hover:not(:disabled){background:#ff2d20;box-shadow:0 4px 12px #ff3b304d;transform:translateY(-1px)}.delete-confirmation-confirm:active:not(:disabled){transform:translateY(0)}.delete-confirmation-cancel:disabled,.delete-confirmation-confirm:disabled{cursor:not-allowed;opacity:.6}:root.dark-mode .delete-confirmation-modal{background:#2c2c2e}:root.dark-mode .delete-confirmation-title{color:#fff}:root.dark-mode .delete-confirmation-message{color:#a0a0a0}:root.dark-mode .delete-confirmation-message strong{color:#fff}:root.dark-mode .delete-confirmation-cancel{background:#424245;color:#fff}:root.dark-mode .delete-confirmation-cancel:hover:not(:disabled){background:#545458}:root.dark-mode .delete-confirmation-confirm{background:#ff3b30;color:#fff}:root.dark-mode .delete-confirmation-confirm:hover:not(:disabled){background:#ff453a}.confirm-modal-confirm{background:#1c1c1e;border:none;border-radius:10px;color:#fff;cursor:pointer;flex:1 1;font-family:inherit;font-size:15px;font-weight:600;padding:12px 16px;transition:all .2s ease}.confirm-modal-confirm:hover{background:#3a3a3c;box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.confirm-modal-confirm:active{transform:translateY(0)}:root.dark-mode .confirm-modal-confirm{background:#e5e5ea;color:#1c1c1e}:root.dark-mode .confirm-modal-confirm:hover{background:#d1d1d6}@media (max-width:480px){.delete-confirmation-modal{padding:20px 16px;width:95%}.delete-confirmation-title{font-size:17px}.delete-confirmation-message{font-size:15px;margin-bottom:20px}.delete-confirmation-cancel,.delete-confirmation-confirm{font-size:14px;padding:10px 14px}}.error-message-container{animation:slideIn .3s ease-out;max-width:320px;position:fixed;right:var(--space-lg);top:80px;z-index:1000}@keyframes slideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(450px)}}.error-message{background:#fff;border-left:4px solid #e53e3e;border-radius:8px;box-shadow:0 2px 8px #0000001f;padding:var(--space-md)}.error-header{align-items:center;display:flex;gap:var(--space-sm);margin-bottom:var(--space-sm)}.error-icon{flex-shrink:0;font-size:18px}.error-title{color:#1a202c;flex:1 1;font-size:14px;font-weight:600;margin:0}.error-close{align-items:center;background:none;border:none;border-radius:4px;color:#a0aec0;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.error-close:hover{background:#f7fafc;color:#718096}.error-text{color:#4a5568;font-size:12px;line-height:1.4;margin:0 0 var(--space-sm) 0}.error-actions{display:flex;gap:var(--space-xs)}.error-button{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:12px;font-weight:600;padding:var(--space-sm) var(--space-md);transition:all .2s ease}.retry-button{background:#000;color:#fff}.retry-button:hover{background:#2c5aa0}.retry-button:active{transform:scale(.98)}.dismiss-button{background:#f7fafc;border:1px solid #e2e8f0;color:#718096}.dismiss-button:hover{background:#edf2f7;border-color:#cbd5e0}.dismiss-button:active{transform:scale(.98)}:root.dark-mode .error-message{background:#2c2c2e}:root.dark-mode .error-title{color:#fff}:root.dark-mode .error-close{color:#aeaeb2}:root.dark-mode .error-close:hover{background:#3a3a3c;color:#a0aec0}:root.dark-mode .error-text{color:#a0aec0}:root.dark-mode .dismiss-button{background:#3a3a3c;border-color:#424245;color:#a0aec0}:root.dark-mode .dismiss-button:hover{background:#424245;border-color:#555558}@media (max-width:768px){.error-message-container{left:var(--space-lg);max-width:none;right:var(--space-lg)}.error-actions{flex-direction:column}.error-button{width:100%}}.track-image{border-radius:6px;flex-shrink:0;height:40px;object-fit:cover;width:40px}.track-info{flex:1 1;min-width:0}.track-name{align-items:center;color:#333;display:flex;font-size:.9rem;font-weight:600;gap:5px;line-height:1.2;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.explicit-badge{align-items:center;border:1px solid #8e8e93;border-radius:3px;color:#8e8e93;display:inline-flex;flex-shrink:0;font-size:9px;font-weight:700;height:16px;justify-content:center;line-height:1;width:16px}:root.dark-mode .explicit-badge{border-color:#8e8e93;color:#aeaeb2}.track-artist{color:#666;font-size:.8rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-number{color:#999;flex-shrink:0;font-size:.9rem;font-weight:600;min-width:25px}.track-checkbox{cursor:pointer;height:18px;width:18px}:root.dark-mode .track-name{color:#fff;margin-bottom:2px}:root.dark-mode .track-artist{color:#a0aec0}:root.dark-mode .track-number{color:#aeaeb2}.track-item{align-items:center;background:#f2f2f7;border-radius:0;color:#1c1c1e;display:flex;gap:10px;margin-bottom:0;padding:8px;transition:all .2s ease}.track-item:hover{background:#e5e5ea}.track-item.selected-for-removal{background:#fff5f5;border-color:#ff3b30}.track-item .track-checkbox{accent-color:#ff3b30}:root.dark-mode .track-item{background:#2c2c2e}:root.dark-mode .track-item:hover{background:#424245}:root.dark-mode .track-item.selected-for-removal{background:#ff3b301a;border-color:#ff3b30}:root.dark-mode .track-item .track-checkbox{accent-color:#ff3b30}.generator-context .track-item{align-items:center;background:#fff;border-radius:6px;display:flex;gap:10px;margin-bottom:0;padding:8px;transition:all .2s ease}.generator-context .track-item:hover{background:#e5e5ea}.generator-context .track-item.selected{background:#e8edff;border-left:4px solid #000}.generator-context .track-checkbox{accent-color:#000}:root.dark-mode .generator-context .track-item{background:#3a3a3c;color:#fff}:root.dark-mode .generator-context .track-item:hover{background:#424245}:root.dark-mode .generator-context .track-item.selected{background:#0000001a;border-left-color:#000}:root.dark-mode .generator-context .track-checkbox{accent-color:#000}.apple-theme .track-item{align-items:center;border-bottom:.5px solid #d1d1d6;display:flex;gap:10px;padding:12px 0;transition:all .2s ease}.apple-theme .track-item:last-child{border-bottom:none}.apple-theme .track-checkbox{accent-color:#000;align-items:center;border:2px solid #c4c4c6;border-radius:12px;cursor:pointer;display:flex;height:24px;justify-content:center;width:24px}.apple-theme .track-checkbox.selected{background:#000;border-color:#000}.apple-theme .track-checkbox.selected:after{color:#fff;content:"✓";font-size:14px;font-weight:700}:root.dark-mode .apple-theme .track-item{border-bottom-color:#424245}:root.dark-mode .apple-theme .track-checkbox{border-color:#8e8e93}:root.dark-mode .apple-theme .track-checkbox.selected{background:#000;border-color:#000}.modal-context .track-item{align-items:center;background:#fff;border-radius:0;cursor:pointer;display:flex;gap:10px;padding:8px;transition:all .2s ease}.modal-context .track-item:hover{background:#e5e5ea}.modal-context .track-item.selected{background:#e8edff;border-left:4px solid #000}.modal-context .track-image{height:40px;width:40px}.modal-context .track-checkbox{accent-color:#000}:root.dark-mode .modal-context .track-item{background:#3a3a3c;color:#fff}:root.dark-mode .modal-context .track-item:hover{background:#424245}:root.dark-mode .modal-context .track-item.selected{background:#0000001a;border-left-color:#000}:root.dark-mode .modal-context .track-checkbox{accent-color:#000}.my-playlists{--track-bg-color:#f2f2f7;background:#fff;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;min-height:100%;padding:0 20px var(--space-lg) 20px}.loading-container{align-items:center;color:#8e8e93;display:flex;flex-direction:column;gap:var(--space-lg);justify-content:center;min-height:60vh}.loading-container .spinner{animation:spin .8s linear infinite;border:3px solid #f2f2f7;border-radius:50%;border-top-color:#000;height:32px;width:32px}.playlists-loading{display:flex;justify-content:center;padding-top:48px}.playlists-loading-spinner{animation:spin .8s linear infinite;border:2px solid #e5e5ea;border-radius:50%;border-top-color:#8e8e93;height:24px;width:24px}:root.dark-mode .playlists-loading-spinner{border-color:#636366 #3a3a3c #3a3a3c}.playlists-header{color:#1c1c1e;margin-bottom:32px;padding-top:0;text-align:left}.playlists-header h1{color:#1c1c1e;font-size:34px;font-weight:700;margin:0;padding:var(--space-xl) 0 var(--space-sm) 0}.playlists-count{color:#8e8e93;font-size:15px}.back-button,.playlists-count{font-weight:400;margin-bottom:var(--space-lg)}.back-button{color:#000;font-size:17px;padding:0;transition:opacity .2s ease}.back-button:hover{opacity:.7}.import-button{background:#1c1c1e;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-top:var(--space-md);padding:10px 20px;transition:all .2s ease}.import-button:hover{opacity:.82;transform:translateY(-1px)}.error-message{background:#fff5f5;border-left:4px solid #ff3b30;color:#ff3b30;font-size:14px;margin-bottom:var(--space-lg);padding:var(--space-md) var(--space-lg)}.empty-state{background:#f2f2f7;border-radius:12px;margin:32px auto;max-width:400px;padding:32px 24px;text-align:center}.empty-state p{color:#8e8e93;font-size:17px;line-height:1.4;margin-bottom:32px}.create-first-button{background:#fff;border:none;border-radius:10px;color:#000;cursor:pointer;font-size:15px;font-weight:600;padding:var(--space-md) 32px;transition:all .2s ease}.create-first-button:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.playlists-list{display:flex;flex-direction:column;gap:var(--space-md);margin:0 auto;max-width:100%}.playlist-card{background:#f2f2f7;border-radius:12px;overflow:visible;position:relative;transition:all .2s ease}.playlist-card:hover:not(.expanded){background:#e5e5ea}.playlist-card-header{border-radius:12px;cursor:pointer;overflow:visible;padding:var(--space-md);position:relative}.playlist-header-actions{align-items:center;display:flex;flex-direction:column;gap:4px;position:absolute;right:var(--space-sm);top:var(--space-sm);z-index:100}.playlist-header-content{align-items:center;display:flex;gap:var(--space-lg);min-width:0;padding-right:80px;width:100%}.playlist-info{flex:1 1;min-width:0}.playlist-info h2{align-items:center;color:#1c1c1e;display:flex;flex-wrap:wrap;font-size:17px;font-weight:600;gap:var(--space-sm);margin-bottom:var(--space-xs);overflow:visible}.imported-badge{background:#f2f2f7;border:1px solid #000;border-radius:10px;color:#000;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.3px;padding:var(--space-xs) var(--space-sm);text-transform:uppercase}.platform-badge{align-items:center;background:#f2f2f7;border-radius:8px;display:inline-flex;justify-content:center;margin-left:8px;padding:4px 6px}.platform-badge.platform-spotify{border:1px solid #1db954;color:#1db954}.platform-badge.platform-apple{border:1px solid #fa243c;color:#fa243c}.platform-badge svg{flex-shrink:0}.readonly-badge{cursor:help;display:inline-block;font-size:14px;margin-left:6px}.auto-update-badge{align-items:center;cursor:default;display:inline-flex;margin-left:6px;position:relative;vertical-align:middle}.auto-update-icon{display:flex;opacity:.6}.auto-update-tooltip{background:#1c1c1e;border-radius:8px;box-shadow:0 2px 8px #0000004d;color:#fff;font-size:13px;font-weight:400;left:50%;padding:6px 10px;pointer-events:none;position:absolute;top:calc(100% + 6px);transform:translateX(-50%);white-space:nowrap;z-index:100}:root.dark-mode .auto-update-tooltip{background:#3a3a3c;box-shadow:0 2px 8px #00000080}.error-badge{cursor:help;display:inline-block;font-size:14px;margin-left:6px}.playlist-meta{color:#8e8e93;font-size:12px;font-weight:400;margin:0}.playlist-cover-image{object-fit:cover}.playlist-cover-image,.playlist-cover-placeholder{border-radius:8px;flex-shrink:0;height:60px;width:60px}.playlist-cover-placeholder{align-items:center;background:linear-gradient(135deg,#000,#1a1a1a);color:#ffffffe6;display:flex;font-size:28px;justify-content:center}.playlist-description{color:#8e8e93;font-size:15px;line-height:1.3;margin-top:var(--space-xs)}.open-spotify-button{background:#fff;border-radius:8px;color:#000;font-size:14px;font-weight:600;padding:var(--space-sm) var(--space-lg);text-decoration:none;transition:all .2s ease}.open-spotify-button:hover{background:#e5e5e5;transform:translateY(-1px)}.delete-playlist-button{align-items:center;background:#ffffffe6;border:1px solid #e5e5ea;border-radius:6px;color:#ff3b30;cursor:pointer;display:flex;font-size:18px;font-weight:600;height:32px;justify-content:center;opacity:0;transition:all .2s ease;visibility:hidden;width:32px}.playlist-card-header:hover .delete-playlist-button{opacity:1;visibility:visible}.delete-playlist-button:hover{background:#ff3b30;border-color:#ff3b30;color:#fff;transform:translateY(-1px)}.playlist-menu-container{position:relative}.playlist-menu-button{align-items:center;background:#0000;border:none;border-radius:8px;color:#8e8e93;cursor:pointer;display:flex;font-size:24px;font-weight:600;height:36px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:36px}.playlist-menu-button:hover{background:#0000000d;color:#1c1c1e}.playlist-dropdown-menu{animation:dropdownFadeIn .2s ease-out;background:#fff;border:1px solid #e5e5ea;border-radius:12px;box-shadow:0 8px 24px #0000001f;margin-top:8px;min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.playlist-dropdown-item{align-items:center;background:none;border:none;border-bottom:1px solid #e5e5ea;color:#1c1c1e;cursor:pointer;display:flex;font-size:15px;font-weight:400;gap:12px;padding:12px 16px;text-align:left;transition:background .15s ease;width:100%}.playlist-dropdown-item:last-child{border-bottom:none}.playlist-dropdown-item:hover{background:#f2f2f7}.playlist-dropdown-item svg{flex-shrink:0}.playlist-dropdown-item.delete-item{color:#ff3b30}.playlist-dropdown-item.delete-item:hover{background:#fff5f5}.expand-icon{color:#8e8e93;cursor:pointer;display:inline-block;font-size:16px;max-width:24px;overflow:hidden;padding:4px;transition:transform .2s ease}.playlist-details{animation:slideDown .2s ease;border-top:1px solid #d1d1d6;padding:0 var(--space-lg) var(--space-lg) var(--space-lg)}.playlist-controls{margin-bottom:var(--space-lg);margin-top:var(--space-lg)}.edit-button{background:#fff;border:none;border-radius:10px;color:#000;cursor:pointer;font-size:15px;font-weight:600;padding:10px 20px;transition:all .2s ease}.edit-button:hover{background:#e5e5e5;transform:translateY(-1px)}.edit-controls{display:flex;gap:var(--space-sm)}.cancel-button{background:#8e8e93;border:none;border-radius:8px;color:#fff;font-size:14px;padding:var(--space-sm) var(--space-xl)}.cancel-button:hover{background:#7a7a7f}.remove-button{background:#ff3b30;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:var(--space-sm) var(--space-xl);transition:all .2s ease}.remove-button:hover:not(:disabled){background:#d62d24}.remove-button:disabled{cursor:not-allowed;opacity:.5}.add-tracks-section{background:#f2f2f7;border:1px solid #d1d1d6;border-radius:10px;margin-bottom:var(--space-lg);padding:var(--space-lg)}.add-tracks-section h3{color:#1c1c1e;font-size:17px;font-weight:600;margin-bottom:var(--space-md)}.search-box{display:flex;gap:var(--space-sm);margin-bottom:var(--space-lg)}.search-input{background:#f2f2f7;border:1px solid #d1d1d6;border-radius:10px;flex:1 1;font-size:15px;padding:var(--space-sm) var(--space-lg);transition:all .2s ease}.search-input:focus{background:#fff;box-shadow:0 0 0 3px #0000000f}.search-button{background:#fff;border:none;border-radius:10px;color:#000;cursor:pointer;font-size:15px;font-weight:600;padding:var(--space-sm) 24px;transition:all .2s ease}.search-button:hover:not(:disabled){background:#e5e5e5}.search-button:disabled{cursor:not-allowed;opacity:.5}.search-results{margin-top:var(--space-md)}.search-results-label{color:#8e8e93;font-size:13px;font-weight:600;letter-spacing:.3px;margin-bottom:var(--space-sm);text-transform:uppercase}.search-result-item{background:#f2f2f7;gap:var(--space-md);margin-bottom:var(--space-xs);padding:var(--space-sm);transition:all .2s ease}.search-result-item:hover{background:#e5e5ea}.add-track-button{background:#fff;border:none;border-radius:6px;color:#000;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:600;padding:var(--space-xs) var(--space-lg);transition:all .2s ease}.add-track-button:hover{background:#e5e5e5;transform:scale(1.05)}.tracks-list{border:1px solid #e0e0e0;border-radius:10px;margin-top:var(--space-lg);overflow:hidden}.tracks-list::-webkit-scrollbar{background:#0000}.tracks-list .track-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.track-reaction-button{align-items:center;background:none;border:none;color:#8e8e93;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:4px;transition:opacity .2s ease}.track-reaction-button:hover{opacity:.75}.track-reaction-button:active{opacity:.5}.track-thumb-circle{background:#1c1c1e;border-radius:50%;height:28px;width:28px}.track-exclude-button,.track-thumb-circle{align-items:center;display:flex;flex-shrink:0;justify-content:center}.track-exclude-button{background:none;border:none;border-radius:50%;color:#ff3b30;cursor:pointer;padding:8px;transition:all .2s ease}.track-exclude-button:hover{background:#ffebee;transform:scale(1.1)}.track-exclude-button:active{transform:scale(.95)}.spotify-link-button{padding:6px}.no-tracks{color:#8e8e93;font-size:15px;font-style:italic;padding:var(--space-xl);text-align:center}.spinner{border:3px solid #f2f2f7;border-top-color:#000;height:32px;width:32px}@media (max-width:768px){.playlists-header h1{font-size:20px}.playlist-card-header{padding:var(--space-md)}.playlist-header-content{align-items:center;gap:var(--space-md)}.playlist-cover-image{height:50px;width:50px}.expand-icon{font-size:16px}.search-box{flex-direction:column}.search-button{width:100%}.edit-controls{flex-direction:column;width:100%}.cancel-button,.remove-button{width:100%}.track-item{gap:6px;padding:6px 8px}.tracks-list .track-actions{grid-gap:4px;align-items:center;display:grid;gap:4px;grid-template-columns:24px 24px 24px;justify-items:center}.tracks-list .spotify-link-button,.tracks-list .track-reaction-button{height:auto;min-width:0;min-width:auto;padding:0;width:auto}}.playlist-settings-section{background:#f2f2f7;border:1px solid #d1d1d6;border-radius:10px;margin-bottom:var(--space-lg);padding:var(--space-lg)}.playlist-settings-section h3{color:#1c1c1e;font-size:17px;font-weight:600;margin-bottom:var(--space-md)}.settings-display{flex-direction:column}.setting-row,.settings-display{display:flex;gap:var(--space-sm)}.setting-row{align-items:center}.setting-label{color:#8e8e93;font-size:14px;font-weight:500;min-width:100px}.setting-value{align-items:center;color:#1c1c1e;display:flex;font-size:14px;gap:var(--space-sm)}.edit-settings-button{background:#fff;border:none;border-radius:8px;color:#000;cursor:pointer;font-size:14px;font-weight:600;margin-top:var(--space-sm);padding:var(--space-sm) var(--space-xl);transition:all .2s ease}.edit-settings-button:hover{background:#e5e5e5;transform:translateY(-1px)}.settings-edit{display:flex;flex-direction:column;gap:var(--space-md)}.settings-edit .form-group{display:flex;flex-direction:column;gap:var(--space-xs)}.settings-edit .form-group label{color:#1c1c1e;font-size:14px;font-weight:600}.settings-edit .playlist-select{-webkit-appearance:none;appearance:none;background-color:#f2f2f7;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border:1px solid #d1d1d6;border-radius:10px;cursor:pointer;font-family:inherit;font-size:15px;padding:var(--space-sm) var(--space-md);padding-right:36px;transition:all .2s ease;width:100%}.settings-edit .playlist-select:focus{background-color:#1c1c1e;border-color:#000;box-shadow:0 0 0 3px #0000000f;outline:none}.settings-edit-controls{display:flex;gap:var(--space-sm);margin-top:var(--space-sm)}.save-settings-button{background:#fff;border-radius:8px;color:#000;font-size:14px;padding:var(--space-sm) var(--space-xl)}.save-settings-button:hover{background:#e5e5e5}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#000000bf;bottom:0;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2500}.modal-content,.modal-overlay{box-sizing:border-box;display:flex}.modal-content{animation:fadeInModal .2s ease-in-out;background:#fff;border-radius:20px;box-shadow:0 25px 70px #00000080;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;padding:0;width:95%}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#0000}.modal-content::-webkit-scrollbar-thumb{background:#a0aec0;border-radius:4px}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}.modal-header{align-items:center;background:#fff;border-bottom:2px solid #f0f0f0;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 30px 15px;position:relative}.modal-header h2{color:#1c1c1e;flex:1 1;font-size:1.5rem;font-weight:700;margin:0}.modal-header .back-button{left:var(--space-xl);position:absolute;top:50%;transform:translateY(-50%)}.modal-header .close-modal-button{position:absolute;right:var(--space-xl);top:50%;transform:translateY(-50%)}.close-modal-button{align-items:center;background:none;border:none;border-radius:50%;color:#8e8e93;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.close-modal-button:hover{background:#e5e5ea;color:#1c1c1e}.back-button{align-items:center;background:none;border:none;border-radius:50%;color:#8e8e93;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.back-button:hover{background:#e5e5ea;color:#1c1c1e}.modal-empty,.modal-loading{align-items:center;color:#8e8e93;display:flex;flex-direction:column;gap:var(--space-lg);justify-content:center;padding:40px var(--space-xl)}.modal-loading .spinner{border-color:#000 #f2f2f7 #f2f2f7}.modal-empty p{font-size:15px;line-height:1.5;text-align:center}.spotify-playlists-list{display:flex;flex:1 1;flex-direction:column;gap:var(--space-md);overflow-y:auto;padding:0 var(--space-md) var(--space-md)}.spotify-playlist-item{align-items:center;background:#fff;border-radius:10px;color:#1c1c1e;display:flex;gap:var(--space-md);padding:var(--space-md);transition:all .2s ease}.spotify-playlist-item:hover{background:#f2f2f7}.spotify-playlist-image{border-radius:8px;flex-shrink:0;height:60px;object-fit:cover;width:60px}.spotify-playlist-info{flex:1 1}.spotify-playlist-name{color:#1c1c1e;font-size:15px;font-weight:600;margin-bottom:var(--space-xs)}.spotify-playlist-meta{color:#8e8e93;font-size:13px;font-weight:500;margin-bottom:var(--space-xs)}.spotify-playlist-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#8e8e93;display:-webkit-box;font-size:13px;margin-top:var(--space-xs);overflow:hidden}.import-playlist-button{background:#1c1c1e;border:none;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:600;padding:var(--space-sm) var(--space-xl);transition:all .2s ease}.import-playlist-button:hover:not(:disabled){background:#3a3a3c;transform:scale(1.05)}.import-playlist-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.modal-content{max-height:90vh;width:95%}.modal-header h2{font-size:16px}.spotify-playlist-item{align-items:flex-start;flex-direction:column}.spotify-playlist-image{aspect-ratio:1;height:auto;width:100%}.import-playlist-button{width:100%}}.refresh-button{background:#fff;border:none;border-radius:8px;color:#000;cursor:pointer;font-size:14px;font-weight:600;padding:var(--space-sm) var(--space-xl);transition:all .2s ease}.refresh-button:hover{background:#e5e5e5;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.refresh-button:active{transform:translateY(0)}.refresh-modal-content{max-width:500px}.refresh-options{display:flex;flex-direction:column;gap:var(--space-xl)}.refresh-option-item{align-items:center;background:#fff;border:1px solid #d1d1d6;border-radius:12px;color:#1c1c1e;cursor:pointer;display:flex;gap:var(--space-md);padding:var(--space-md);transition:all .2s ease}.refresh-option-item:hover{background:#f2f2f7;border-color:#000}.refresh-option-item.active{background:#f5f0ff;border-color:#000}.option-checkbox{align-items:center;border:2px solid #000;border-radius:6px;display:flex;flex-shrink:0;height:22px;justify-content:center;transition:all .2s ease;width:22px}.refresh-option-item.active .option-checkbox{background:#000;border-color:#000}.checkmark{align-items:center;color:#fff;display:flex;font-size:14px;font-weight:700;justify-content:center;line-height:1}.option-label{color:#1c1c1e;font-size:14px}.option-description{color:#8e8e93;font-size:12px}.option-items-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.option-item-compact{padding:10px 12px}.option-item-compact .option-label{font-size:13px}:root.dark-mode .option-label{color:#f5f5f5}.song-count-input-large{background:#f2f2f7;border:1px solid #d1d1d6;border-radius:10px;font-family:inherit;font-size:15px;padding:var(--space-sm) var(--space-md);transition:all .2s ease;width:100%}.song-count-input-large:focus{background:#fff;border-color:#000;box-shadow:0 0 0 3px #0000000f;outline:none}.refresh-confirm-button{background:#fff;border-radius:10px;color:#000;padding:var(--space-md) 24px}.refresh-confirm-button:hover{background:#e5e5e5;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.refresh-confirm-button:disabled{opacity:.5;transform:none}.modal-body{flex:1 1;min-height:0;overflow-y:auto;padding:var(--space-lg)}.modal-footer{background:#fff;border-top:2px solid #f0f0f0;flex-shrink:0;gap:var(--space-md);justify-content:space-between;padding:20px 30px}.form-group{gap:var(--space-xs)}.form-group label{color:#1c1c1e}.playlist-select{background-color:#f2f2f7;background-position:right 14px center;border:1px solid #d1d1d6;border-radius:10px;color:#1c1c1e;font-family:inherit;font-size:15px;padding:var(--space-sm) var(--space-md);padding-right:36px;transition:all .2s ease;width:100%}.playlist-select:focus{background-color:#f2f2f7;border-color:#000;box-shadow:0 0 0 3px #0000000f;color:#1c1c1e;outline:none}@media (max-width:768px){.refresh-button{margin-top:var(--space-sm);width:100%}.modal-overlay{align-items:stretch;padding:0}.modal-content,.refresh-modal-content{border-radius:0;height:100%;max-height:100vh;max-width:none;width:100%}.modal-body,.modal-header{padding:15px 20px}.modal-footer{flex-direction:row;gap:12px;padding:12px 20px}.modal-footer button{flex:1 1;min-width:0}}:root.dark-mode .my-playlists{--track-bg-color:#2c2c2e;background:#1c1c1e;color:#fff}:root.dark-mode .loading-container{color:#aeaeb2}:root.dark-mode .loading-container .spinner{border-color:#000 #3a3a3c #3a3a3c}:root.dark-mode .playlists-header,:root.dark-mode .playlists-header h1{color:#fff}:root.dark-mode .playlists-count{color:#aeaeb2}:root.dark-mode .back-button{color:#000}:root.dark-mode .import-button{background:#fff;color:#000}:root.dark-mode .import-button:hover{opacity:.88}:root.dark-mode .delete-playlist-button{background:#0000004d;border-color:#424245;color:#ff3b30}:root.dark-mode .delete-playlist-button:hover{background:#ff3b30;border-color:#ff3b30;color:#fff}:root.dark-mode .playlist-menu-button{background:#0000;border:none;color:#a0a0a0}:root.dark-mode .playlist-menu-button:hover{background:#ffffff1a;color:#fff}:root.dark-mode .playlist-dropdown-menu{background:#2c2c2e;border-color:#424245;box-shadow:0 8px 24px #0006}:root.dark-mode .playlist-dropdown-item{border-bottom-color:#424245;color:#fff}:root.dark-mode .playlist-dropdown-item:hover{background:#3a3a3c}:root.dark-mode .playlist-dropdown-item.delete-item{color:#ff453a}:root.dark-mode .playlist-dropdown-item.delete-item:hover{background:#ff453a1a}:root.dark-mode .error-message{background:#ff3b301a;border-left-color:#ff3b30;color:#ff3b30}:root.dark-mode .empty-state{background:#2c2c2e}:root.dark-mode .empty-state p{color:#aeaeb2}:root.dark-mode .create-first-button{background:#fff;color:#000}:root.dark-mode .create-first-button:hover{background:#e5e5e5}:root.dark-mode .playlist-card{background:#2c2c2e;border-color:#424245}:root.dark-mode .playlist-card:hover:not(.expanded){background:#3a3a3c}:root.dark-mode .playlist-info h2{color:#fff}:root.dark-mode .playlist-meta{color:#aeaeb2}:root.dark-mode .playlist-cover-image{border:1px solid #424245}:root.dark-mode .playlist-cover-placeholder{background:linear-gradient(135deg,#000,#1a1a1a)}:root.dark-mode .playlist-description{color:#aeaeb2}:root.dark-mode .open-spotify-button{background:#fff;color:#000}:root.dark-mode .open-spotify-button:hover{background:#e5e5e5}:root.dark-mode .expand-icon{color:#aeaeb2}:root.dark-mode .playlist-details{border-top-color:#424245}:root.dark-mode .edit-button{background:#fff;color:#000}:root.dark-mode .edit-button:hover{background:#e5e5e5}:root.dark-mode .cancel-button{background:#8e8e93}:root.dark-mode .cancel-button:hover{background:#7a7a7f}:root.dark-mode .remove-button{background:#ff3b30}:root.dark-mode .remove-button:hover:not(:disabled){background:#d62d24}:root.dark-mode .add-tracks-section{background:#2c2c2e;border-color:#424245}:root.dark-mode .add-tracks-section h3{color:#fff}:root.dark-mode .search-input{background:#3a3a3c;border-color:#424245;color:#fff}:root.dark-mode .search-input:focus{background:#424245;border-color:#000}:root.dark-mode .search-button{background:#fff;color:#000}:root.dark-mode .search-button:hover:not(:disabled){background:#e5e5e5}:root.dark-mode .search-results-label{color:#aeaeb2}:root.dark-mode .search-result-item{background:#3a3a3c}:root.dark-mode .search-result-item:hover{background:#424245}:root.dark-mode .search-result-item,:root.dark-mode .search-result-item *{color:#fff}:root.dark-mode .add-track-button{background:#fff;color:#000}:root.dark-mode .add-track-button:hover{background:#e5e5e5}:root.dark-mode .tracks-list{background:#0000;border-color:#424245}:root.dark-mode .track-reaction-button{color:#aeaeb2}:root.dark-mode .track-thumb-circle{background:#3a3a3c}:root.dark-mode .track-exclude-button{color:#ff453a}:root.dark-mode .track-exclude-button:hover{background:#ff453a1a}:root.dark-mode .spotify-link-button{color:#1db954}:root.dark-mode .spotify-link-button:hover{background:#1a3a2a}:root.dark-mode .no-tracks{color:#aeaeb2}:root.dark-mode .spinner{border-color:#000 #3a3a3c #3a3a3c}:root.dark-mode .modal-content{background:#2c2c2e;color:#fff}:root.dark-mode .modal-header{background:#3a3a3c;border-bottom-color:#424245}:root.dark-mode .modal-header h2{color:#fff}:root.dark-mode .close-modal-button{color:#aeaeb2}:root.dark-mode .close-modal-button:hover{background:#424245;color:#fff}:root.dark-mode .back-button{color:#aeaeb2}:root.dark-mode .back-button:hover{background:#424245;color:#fff}:root.dark-mode .modal-empty,:root.dark-mode .modal-loading{color:#aeaeb2}:root.dark-mode .modal-loading .spinner{border-color:#3a3a3c}:root.dark-mode .modal-empty p{color:#aeaeb2}:root.dark-mode .spotify-playlists-list{background:#2c2c2e}:root.dark-mode .spotify-playlist-item{background:#3a3a3c}:root.dark-mode .spotify-playlist-item:hover{background:#424245}:root.dark-mode .spotify-playlist-name{color:#fff}:root.dark-mode .spotify-playlist-description,:root.dark-mode .spotify-playlist-meta{color:#aeaeb2}:root.dark-mode .import-playlist-button{background:#fff;color:#000}:root.dark-mode .import-playlist-button:hover:not(:disabled){background:#e5e5e5}:root.dark-mode .playlist-settings-section{background:#2c2c2e;border-color:#424245}:root.dark-mode .playlist-settings-section h3{color:#fff}:root.dark-mode .setting-label{color:#aeaeb2}:root.dark-mode .setting-value{color:#fff}:root.dark-mode .edit-settings-button{background:#fff;color:#000}:root.dark-mode .edit-settings-button:hover{background:#e5e5e5}:root.dark-mode .form-group label{color:#fff}:root.dark-mode .playlist-select{background-color:#3a3a3c;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23ebebf5' d='M6 9 1 4h10z'/%3E%3C/svg%3E");border-color:#424245;color:#fff}:root.dark-mode .playlist-select:focus{background-color:#424245;border-color:#000}:root.dark-mode .refresh-button{background:#fff;color:#000}:root.dark-mode .refresh-button:hover{background:#e5e5e5}:root.dark-mode .refresh-option-item{background:#3a3a3c;border-color:#424245;color:#fff}:root.dark-mode .refresh-option-item:hover{background:#424245;border-color:#8e8e93}:root.dark-mode .refresh-option-item.active{background:#ffffff14;border-color:#fff}:root.dark-mode .option-checkbox{border-color:#fff}:root.dark-mode .refresh-option-item.active .option-checkbox{background:#fff;border-color:#fff}:root.dark-mode .refresh-option-item.active .checkmark{color:#000}:root.dark-mode .song-count-input-large{background:#3a3a3c;border-color:#424245;color:#fff}:root.dark-mode .song-count-input-large:focus{background:#424245;border-color:#000}:root.dark-mode .refresh-confirm-button:hover{background:#e5e5e5}:root.dark-mode .modal-body{background:#2c2c2e;color:#fff}:root.dark-mode .modal-footer{background:#3a3a3c}:root.dark-mode .form-help-text{color:#aeaeb2}:root.dark-mode .imported-badge{background:#2c2c2e;border-color:#424245;color:#fff}:root.dark-mode .tracks-list{scrollbar-color:#a0aec0 #0000}:root.dark-mode .tracks-list::-webkit-scrollbar,:root.dark-mode .tracks-list::-webkit-scrollbar-track{background:#0000}:root.dark-mode .tracks-list::-webkit-scrollbar-thumb{background:#a0aec0;border-radius:4px}.edit-options-modal{animation:fadeIn .2s ease-out;background:#f7fafc;border-radius:20px;box-shadow:0 10px 40px #0003;box-sizing:border-box;max-height:90vh;max-width:500px;min-width:280px;overflow-y:auto;position:relative;width:100%}.edit-options-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;margin-bottom:0;padding:var(--space-sm) var(--space-md);position:-webkit-sticky;position:sticky;top:0;z-index:10}.playlist-icon{align-items:center;background:#2d3748;border-radius:12px;display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;margin-bottom:var(--space-xs);object-fit:cover;width:48px}.edit-options-title{color:#1a202c;font-size:17px;font-weight:600;margin:var(--space-xs) 0 0 0;text-align:center}.edit-options-list{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-sm);padding:var(--space-md)}.modal-section{border-top:1px solid #e2e8f0;padding:var(--space-sm) var(--space-md)}.modal-section:first-of-type{border-top:none;padding-top:var(--space-xs)}.section-title{color:#1a202c;font-size:16px;font-weight:600;margin:0 0 var(--space-sm) 0}.section-description{color:#718096;font-size:13px;line-height:1.4;margin:0 0 var(--space-sm) 0}.modal-section.dropdown-section{border-top:1px solid #e2e8f0;padding:0}.modal-section.dropdown-section:first-of-type{border-top:none}.dropdown-header{align-items:center;background:none;border:none;border-radius:12px;cursor:pointer;display:flex;font-family:inherit;justify-content:space-between;padding:var(--space-sm) var(--space-md);text-align:left;transition:all .2s ease;width:100%}.dropdown-header:hover{background:#f7fafc}.dropdown-header:active{background:#edf2f7}.dropdown-title{color:#1a202c;font-size:16px;font-weight:600;margin:0}.dropdown-arrow{color:#718096;display:inline-block;font-size:12px;margin-left:var(--space-md);transition:transform .2s ease}.dropdown-arrow.expanded{transform:rotate(180deg)}.dropdown-content{animation:slideDown .2s ease-out;border-top:1px solid #e2e8f0;padding:var(--space-xs) var(--space-md) var(--space-md) var(--space-md)}.dropdown-content .form-group{margin-bottom:var(--space-sm)}.dropdown-content .form-group:has(.refresh-option-item){gap:0;margin-bottom:0}.dropdown-content .form-group:first-child:has(.refresh-option-item){margin-bottom:0}.dropdown-content .form-group:first-child:has(.refresh-option-item) .refresh-option-item{border-radius:12px 12px 0 0;margin-bottom:0}.dropdown-content .form-group:nth-child(2):has(.refresh-option-item){margin-bottom:var(--space-lg)}.dropdown-content .form-group:nth-child(2):has(.refresh-option-item) .refresh-option-item{border-radius:0 0 12px 12px;border-top:1px solid #e2e8f0;margin-bottom:0}.dropdown-content .form-group:nth-child(4):has(.refresh-option-item){margin-bottom:0}.dropdown-content .form-group:nth-child(4):has(.refresh-option-item) .refresh-option-item{border-radius:12px;margin-bottom:0}.dropdown-section .section-description{margin:0 0 var(--space-sm) 0;padding-left:var(--space-md);padding-right:var(--space-md)}.modal-section label{color:#8e8e93;display:block;font-size:13px;font-weight:600;letter-spacing:.4px;margin-bottom:var(--space-xs);text-transform:uppercase}.modal-body .playlist-select,.modal-section .playlist-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%238e8e93' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border:1px solid #e2e8f0;border-radius:12px;color:#1c1c1e;cursor:pointer;font-family:inherit;font-size:15px;margin-bottom:0;padding:var(--space-sm) var(--space-md);padding-right:36px;transition:border-color .15s;width:100%}.modal-body .playlist-select:focus,.modal-section .playlist-select:focus{background-color:#fff;border-color:#000;box-shadow:0 0 0 3px #0000000f;outline:none}.form-help-text{color:#8e8e93;font-size:13px}.form-help-text,.section-description{margin-bottom:var(--space-sm);margin-top:var(--space-xs)}.edit-option-item{align-items:center;background:#fff;border:none;border-radius:12px;color:#1a202c;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:var(--space-md);padding:var(--space-sm) var(--space-md);text-align:left;transition:all .2s ease;width:100%}.edit-option-item:hover{background:#f0f0f0;transform:scale(1.02)}.edit-option-item:active{transform:scale(.98)}.option-icon{background:#f7fafc;border-radius:8px;font-size:15px;height:28px;width:28px}.option-text{flex:1 1}.option-arrow{color:#a0aec0;font-size:24px;font-weight:300}.edit-options-cancel{background:#fff;border:none;border-radius:12px;color:#e53e3e;cursor:pointer;font-size:15px;font-weight:600;margin:0 var(--space-md) var(--space-md) var(--space-md);padding:var(--space-sm) var(--space-md);transition:all .2s ease;width:calc(100% - var(--space-md)*2)}.edit-options-cancel:hover{background:#fee}.edit-options-cancel:active{transform:scale(.98)}.modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-md) var(--space-md) var(--space-md)}.cancel-button{background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#718096;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:12px 20px;transition:all .2s ease}.cancel-button:hover{background:#f7fafc;border-color:#cbd5e0}.cancel-button:active{transform:scale(.98)}.save-settings-button{background:#000;border:none;border-radius:12px;color:#fff;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:12px 20px;transition:all .2s ease}.save-settings-button:hover:not(:disabled){background:#1a1a1a;box-shadow:0 2px 8px #f59e0b4d;transform:translateY(-1px)}.save-settings-button:active:not(:disabled){transform:translateY(0)}.save-settings-button:disabled{cursor:not-allowed;opacity:.6}.refresh-confirm-button{background:#000;border:none;border-radius:12px;color:#fff;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:12px 20px;transition:all .2s ease}.refresh-confirm-button:hover:not(:disabled){background:#1a1a1a;box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.refresh-confirm-button:active:not(:disabled){transform:translateY(0)}.refresh-confirm-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.edit-options-modal{border-radius:20px;max-width:100%;width:100%}.edit-options-header{padding:var(--space-sm) var(--space-md)}.edit-options-header h3{font-size:18px}.edit-options-list{padding:var(--space-md)}.edit-option-item{font-size:15px;padding:var(--space-md) var(--space-lg)}.edit-options-cancel{margin:0 var(--space-md) var(--space-md) var(--space-md);width:calc(100% - var(--space-md)*2)}.playlist-icon{font-size:24px;height:50px;width:50px}.modal-section{padding:var(--space-md)}.section-title{font-size:15px}.section-description{font-size:12px}.dropdown-header{padding:var(--space-md)}.dropdown-title{font-size:15px}.dropdown-content{padding:0 var(--space-md) var(--space-md) var(--space-md)}.modal-footer{flex-direction:row;gap:var(--space-sm);padding:var(--space-sm) var(--space-md) var(--space-md) var(--space-md)}.cancel-button,.refresh-confirm-button,.save-settings-button{flex:1 1;font-size:15px;padding:12px 16px}}:root.dark-mode .edit-options-modal{background:#1c1c1e}:root.dark-mode .edit-options-header{background:#2c2c2e;border-bottom-color:#424245}:root.dark-mode .edit-options-title{color:#fff}:root.dark-mode .playlist-icon{background:#3a3a3c}:root.dark-mode .edit-option-item{background:#2c2c2e;color:#fff}:root.dark-mode .edit-option-item:hover{background:#3a3a3c}:root.dark-mode .edit-option-item:active{background:#424245}:root.dark-mode .option-icon{background:#3a3a3c;color:#aeaeb2}:root.dark-mode .option-text{color:#fff}:root.dark-mode .option-arrow{color:#aeaeb2}:root.dark-mode .edit-options-cancel{background:#2c2c2e;color:#ff3b30}:root.dark-mode .edit-options-cancel:hover{background:#3a3a3c}:root.dark-mode .edit-options-cancel:active{background:#424245}:root.dark-mode .modal-section{border-top-color:#424245}:root.dark-mode .modal-section label{color:#aeaeb2}:root.dark-mode .section-description{color:#a0aec0}:root.dark-mode .modal-body .playlist-select,:root.dark-mode .modal-section .playlist-select{background-color:#2c2c2e;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23636366' d='M6 9 1 4h10z'/%3E%3C/svg%3E");border-color:#424245;color:#f5f5f5}:root.dark-mode .modal-body .playlist-select:focus,:root.dark-mode .modal-section .playlist-select:focus{background-color:#2c2c2e;border-color:#fff;box-shadow:0 0 0 3px #ffffff0f}:root.dark-mode .dropdown-header{color:#fff}:root.dark-mode .dropdown-header:hover{background:#3a3a3c}:root.dark-mode .dropdown-header:active{background:#424245}:root.dark-mode .dropdown-title{color:#fff}:root.dark-mode .dropdown-arrow{color:#aeaeb2}:root.dark-mode .dropdown-content,:root.dark-mode .modal-footer{border-top-color:#424245}:root.dark-mode .cancel-button{background:#2c2c2e;border-color:#424245;color:#a0aec0}:root.dark-mode .cancel-button:hover{background:#3a3a3c;border-color:#424245}:root.dark-mode .cancel-button:active{background:#424245}:root.dark-mode .save-settings-button{background:#fff;color:#000}:root.dark-mode .save-settings-button:hover:not(:disabled){background:#e5e5e5}:root.dark-mode .refresh-confirm-button{background:#fff;color:#000}:root.dark-mode .refresh-confirm-button:hover:not(:disabled){background:#e5e5e5}.refinement-item{align-items:center;background:#f5f5f5;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:8px;padding:10px 12px}.refinement-item-text{color:#1c1c1e;flex:1 1;font-size:14px}.remove-refinement-button{background:none;border:none;color:#f44;cursor:pointer;font-size:18px;font-weight:700;line-height:1;padding:0 8px}:root.dark-mode .refinement-item{background:#3a3a3c}:root.dark-mode .refinement-item-text{color:#ebebf5}.playlist-generator{background:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;padding:20px 2px}.header{color:#fff;margin-bottom:40px;padding-top:20px;text-align:center}.header h1{font-size:3rem;margin-bottom:10px;text-shadow:2px 2px 4px #0003}.subtitle{font-size:1.2rem;opacity:.9}.auth-section{align-items:center;display:flex;justify-content:center;min-height:60vh}.auth-card{border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:50px;text-align:center}.auth-card h2{color:#333;font-size:2rem;margin-bottom:15px}.auth-card p{color:#666;font-size:1.1rem;margin-bottom:30px}.auth-card .spotify-button{align-items:center;background:#1db954;border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:10px;padding:15px 40px;transition:all .3s ease}.auth-card .spotify-button:hover{background:#1ed760;box-shadow:0 10px 25px #1db9544d;transform:translateY(-2px)}.spotify-icon{font-size:1.5rem}.top-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;box-shadow:0 2px 10px #0000001a;height:70px;padding:0 30px}.profile-section-topnav{position:relative}.profile-button-topnav{border-radius:50%;cursor:pointer;height:45px;transition:all .3s ease;width:45px}.profile-button-topnav:hover{box-shadow:0 4px 15px #667eea4d;transform:scale(1.05)}.profile-image-topnav{border:2px solid #000;border-radius:50%;height:45px;object-fit:cover;transition:all .3s ease;width:45px}.profile-placeholder-topnav{align-items:center;background:#000;border-radius:50%;display:flex;height:45px;justify-content:center;transition:all .3s ease;width:45px}.profile-dropdown-topnav{animation:dropdownSlide .2s ease;box-shadow:0 8px 25px #0003;top:calc(100% + 10px);width:200px;z-index:1001}.dropdown-user-info{background:#000;color:#000;padding:20px}.dropdown-profile-image{border:3px solid #fff;height:60px;margin-bottom:10px;object-fit:cover;width:60px}.dropdown-user-name{font-size:1.1rem;font-weight:700;margin-bottom:5px}.dropdown-user-email{font-size:.85rem;opacity:.9}.dropdown-divider{background:#f0f0f0}.search-section{flex:1 1;max-width:500px;position:relative}.search-bar-container{position:relative;width:100%}.search-input{background:#fff;border:2px solid #e0e0e0;border-radius:25px;font-family:inherit;font-size:.95rem;padding:12px 45px 12px 20px;transition:all .3s ease;width:100%}.search-input:focus{border-color:#000;box-shadow:0 0 0 3px #667eea1a;outline:none}.search-icon{color:#999;font-size:1.1rem;pointer-events:none;position:absolute;right:18px;top:50%;transform:translateY(-50%)}.search-results-dropdown{animation:dropdownSlide .2s ease;background:#fff;border-radius:12px;box-shadow:0 8px 25px #00000026;left:0;max-height:500px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 10px);z-index:1001}.search-loading{align-items:center;color:#666;display:flex;gap:12px;justify-content:center;padding:30px}.search-section-results{padding:15px}.search-section-results:not(:last-child){border-bottom:1px solid #f0f0f0}.search-results-title{color:#999;font-size:.85rem;font-weight:700;letter-spacing:.5px;margin-bottom:10px;padding:0 10px;text-transform:uppercase}.search-result-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:background .2s ease}.search-result-item:hover{background:#f8f9fa}.search-result-image{object-fit:cover}.search-result-image,.search-result-placeholder{border-radius:50%;flex-shrink:0;height:40px;width:40px}.search-result-placeholder{align-items:center;background:#000;display:flex;font-size:1.2rem;justify-content:center}.search-result-info{flex:1 1;min-width:0}.search-result-name{color:#333;font-size:.95rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-meta{color:#666;font-size:.8rem;margin-top:2px}.search-result-link{background:#000;border-radius:15px;color:#000;flex-shrink:0;font-size:.85rem;font-weight:600;padding:6px 16px;text-decoration:none;transition:all .2s ease}.search-result-link:hover{background:#1a1a1a;transform:translateY(-1px)}.search-no-results{color:#666;font-size:.95rem;padding:30px;text-align:center}.main-content{display:flex;flex-direction:row;gap:20px;margin:90px auto 0;max-width:1400px;min-height:calc(100vh - 160px);overflow:visible!important;padding:0 20px}.side-panel{display:flex;flex-direction:column;flex-shrink:0;gap:15px;width:200px}.profile-placeholder-icon{filter:brightness(0) invert(1);font-size:1.5rem}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{color:#333;font-size:.9rem;font-weight:600;padding:12px 15px;transition:all .2s ease}.dropdown-item:hover{background:#f5f5f5}.dropdown-item.logout{border-top:1px solid #f0f0f0;color:#e74c3c}.dropdown-item.logout:hover{background:#fee}.dropdown-icon{font-size:1.2rem}.side-panel-button{align-items:center;background:#ffffffe6;border:2px solid #fff;border-radius:15px;box-shadow:0 4px 15px #0003;cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:20px 15px;transition:all .3s ease}.side-panel-button:hover{background:#fff;box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.side-panel-icon{font-size:2rem}.side-panel-label{color:#000;font-size:.95rem;font-weight:700;text-align:center}.content-wrapper{display:flex;flex:1 1;flex-direction:column;min-width:0}.tab-navigation{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:15px;display:flex;gap:10px;margin-bottom:30px;padding:5px;width:-webkit-fit-content;width:fit-content}.tab-button{align-items:center;background:#0000;border:none;border-radius:10px;color:#ffffffb3;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.tab-button:hover{background:#ffffff26;color:#fff}.tab-button.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#000}.tab-icon{font-size:1.2rem}.tab-label{font-size:.95rem}.tab-content-container{width:100%}.my-playlists-nav{display:flex;gap:15px;justify-content:flex-end;margin-bottom:20px}.content-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 350px;margin-bottom:30px}.my-playlists-button,.settings-button{background:#ffffffe6;border:2px solid #fff;border-radius:50px;box-shadow:0 4px 15px #0003;color:#000;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 30px;transition:all .3s ease}.my-playlists-button:hover,.settings-button:hover{background:#fff;box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.top-artists-loading{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;margin-bottom:30px;padding:40px;text-align:center}.top-artists-loading p{color:#666;font-size:1.1rem;margin-top:15px}.top-artists-sidebar{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;height:-webkit-fit-content;height:fit-content;padding:25px;position:-webkit-sticky;position:sticky;top:20px}.top-artists-loading-sidebar{padding:20px;text-align:center}.top-artists-loading-sidebar p{color:#666;font-size:.9rem;margin-top:10px}.top-artists-sidebar .top-artists-header h3{color:#333;font-size:1.3rem;margin:0 0 10px}.top-artists-sidebar .top-artists-description{color:#666;font-size:.85rem;margin-bottom:20px}.top-artists-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.top-artist-tile{background:#fafafa;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:16px;transition:all .3s ease}.top-artist-tile:hover{background:#f0f0f0;box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.artist-tile-image-container{aspect-ratio:1;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:hidden;position:relative;width:100%}.artist-tile-image{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.top-artist-tile:hover .artist-tile-image{transform:scale(1.05)}.artist-tile-overlay{align-items:center;background:#0000;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:all .3s ease}.top-artist-tile:hover .artist-tile-overlay{background:#0006;opacity:1}.artist-tile-plus-button{align-items:center;background:#1db954;border:none;border-radius:50%;box-shadow:0 4px 12px #1db95466;color:#fff;cursor:pointer;display:flex;font-size:2rem;font-weight:300;height:48px;justify-content:center;transform:scale(.8);transition:all .2s ease;width:48px}.top-artist-tile:hover .artist-tile-plus-button{transform:scale(1)}.artist-tile-plus-button:hover{background:#1ed760;transform:scale(1.1)!important}.artist-tile-plus-button:active{transform:scale(.95)!important}.artist-tile-plus-button:disabled{cursor:not-allowed;opacity:.5}.artist-tile-name{text-align:left}.artist-tile-name h4{color:#333;font-size:.95rem;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-artist-image-small{border-radius:50%;box-shadow:0 2px 8px #0003;flex-shrink:0;height:60px;object-fit:cover;width:60px}.top-artist-info-vertical{flex:1 1;min-width:0}.top-artist-name-small{color:#333;font-size:.95rem;font-weight:700;margin:0 0 4px}.top-artist-genres-small,.top-artist-name-small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-artist-genres-small{color:#999;font-size:.75rem;font-style:italic;margin:0}.create-from-artist-button-small{background:linear-gradient(135deg,#f093fb,#f5576c);border:none;border-radius:15px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.create-from-artist-button-small:hover:not(:disabled){box-shadow:0 4px 12px #f5576c4d;transform:scale(1.05)}.create-from-artist-button-small:disabled{cursor:not-allowed;opacity:.6}.top-artists-section{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;margin-bottom:30px;padding:30px}.top-artists-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.top-artists-header h3{color:#333;font-size:1.5rem;margin:0}.close-top-artists-button{background:#f5f5f5;border:none;border-radius:8px;color:#666;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 15px;transition:all .2s ease}.close-top-artists-button:hover{background:#e0e0e0;color:#333}.top-artists-description{color:#666;font-size:.95rem;margin-bottom:25px}.top-artists-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.top-artist-card{background:#fafafa;border:2px solid #0000;border-radius:15px;padding:20px;text-align:center;transition:all .3s ease}.top-artist-card:hover{background:#f0f0f0;border-color:#f5576c;box-shadow:0 10px 25px #f5576c33;transform:translateY(-5px)}.top-artist-image{border-radius:50%;box-shadow:0 4px 15px #0003;height:120px;object-fit:cover;width:120px}.top-artist-image,.top-artist-info{margin-bottom:15px}.top-artist-name{color:#333;font-size:1.1rem;font-weight:700;margin-bottom:5px}.top-artist-genres{color:#999;font-size:.85rem;font-style:italic;margin:0}.create-from-artist-button{background:linear-gradient(135deg,#f093fb,#f5576c);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .2s ease;width:100%}.create-from-artist-button:hover{box-shadow:0 5px 15px #f5576c4d;transform:scale(1.05)}.input-section{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;margin-bottom:30px;overflow:visible!important;padding:40px}.input-section h2{color:#333;font-size:1.8rem;margin-bottom:30px}.form-label{color:#555;display:block;font-size:.95rem;font-weight:600;margin-bottom:10px}.description-input,.prompt-input{border:2px solid #e0e0e0;border-radius:10px;font-family:inherit;font-size:1rem;padding:15px;transition:border-color .3s ease;width:100%}.prompt-input{min-height:80px;resize:vertical}.description-input{height:50px}.description-input:focus,.prompt-input:focus{border-color:#000;outline:none}.checkbox-label{align-items:center;cursor:pointer;display:flex;gap:10px;margin-bottom:5px}.explicit-checkbox{accent-color:#000;cursor:pointer;height:20px;width:20px}.checkbox-text{color:#333;font-size:.95rem;font-weight:600}.checkbox-hint{color:#999;font-size:.85rem;margin-left:30px;margin-top:0}.reference-search-box{display:flex;gap:10px;margin-bottom:15px}.reference-input{border:2px solid #e0e0e0;border-radius:8px;flex:1 1;font-family:inherit;font-size:1rem;padding:12px 15px;transition:border-color .3s ease}.reference-input:focus{border-color:#000;outline:none}.reference-search-button{background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 25px;transition:all .2s ease}.reference-search-button:hover:not(:disabled){background:#1a1a1a}.reference-search-button:disabled{cursor:not-allowed;opacity:.5}.reference-results{background:#f8f9fa;border-radius:10px;margin-bottom:15px;padding:15px}.reference-results-label{color:#666;font-size:.85rem;font-weight:600;margin-bottom:10px}.reference-result-item{align-items:center;background:#fff;border-radius:8px;display:flex;gap:12px;margin-bottom:8px;padding:12px;transition:all .2s ease}.reference-result-item:hover{background:#f0f0f0;transform:translateX(3px)}.reference-image{border-radius:5px;height:50px;object-fit:cover;width:50px}.reference-info{align-items:center;display:flex;flex:1 1;gap:10px}.reference-type-icon{font-size:1.3rem}.reference-name{color:#333;font-size:.95rem;font-weight:600}.reference-artist{color:#666;font-size:.85rem}.add-reference-button{background:#000;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.9rem;font-weight:600;padding:12px 20px;transition:all .2s ease}.add-reference-button:hover{background:#1a1a1a;transform:scale(1.05)}.selected-references{margin-top:15px}.selected-references-label{color:#666;font-size:.85rem;font-weight:600;margin-bottom:10px}.selected-references-list{display:flex;flex-wrap:wrap;gap:10px}.selected-reference-chip{align-items:center;background:#e8edff;border:2px solid #000;border-radius:20px;display:inline-flex;font-size:.9rem;gap:8px;padding:8px 12px;transition:all .2s ease}.selected-reference-chip:hover{background:#d4dcff}.reference-chip-name{color:#333;font-weight:500}.remove-reference-button{align-items:center;background:none;border:none;color:#000;cursor:pointer;display:flex;font-size:1.5rem;height:20px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:20px}.remove-reference-button:hover{color:#e74c3c;transform:scale(1.2)}.examples-section{margin-bottom:25px}.examples-label{color:#666;font-size:.9rem;margin-bottom:10px}.example-chips{display:flex;flex-wrap:wrap;gap:10px}.example-chip{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:20px;color:#555;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s ease}.example-chip:hover{background:#000;border-color:#000;color:#000;transform:translateY(-2px)}.generate-button{align-items:center;background:#000;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:10px;justify-content:center;padding:15px;transition:all .3s ease;width:100%}.generate-button:hover:not(:disabled){box-shadow:0 10px 25px #667eea66;transform:translateY(-2px)}.generate-button:disabled{cursor:not-allowed;opacity:.7}.spinner{animation:spin .8s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.error-message{background:#fee;border-left:4px solid #c33;border-radius:10px;color:#c33;margin-top:20px;padding:15px}.results-section{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;padding:40px}.playlist-header{border-bottom:2px solid #f0f0f0;margin-bottom:30px;padding-bottom:20px;text-align:center}.playlist-header h2{color:#333;font-size:2rem;margin-bottom:10px}.playlist-description{color:#666;font-size:1.1rem;margin-bottom:10px}.track-count{color:#000;font-size:.9rem;font-weight:600;margin-bottom:15px}.select-all-button{background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 25px;transition:all .2s ease}.select-all-button:hover{background:#1a1a1a;transform:translateY(-1px)}.tracks-list{margin-bottom:30px;max-height:600px;overflow-y:auto;padding-right:10px;scrollbar-color:#a0aec0 #0000;scrollbar-gutter:stable;scrollbar-width:thin}.tracks-list::-webkit-scrollbar{width:8px}.tracks-list::-webkit-scrollbar-track{background:#0000}.tracks-list::-webkit-scrollbar-thumb{background:#a0aec0;border-radius:4px}.track-actions{gap:8px}.preview-button,.track-actions{align-items:center;display:flex}.preview-button{background:#000;border:none;border-radius:50%;color:#fff;cursor:pointer;flex-shrink:0;font-size:1rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.preview-button:hover:not(:disabled){background:#1a1a1a;transform:scale(1.1)}.preview-button:disabled{background:#ccc;cursor:not-allowed;opacity:.5}.preview-button.playing{animation:pulse 1.5s ease-in-out infinite;background:#1db954}.spotify-link-button{align-items:center;border-radius:50%;color:#1db954;display:flex;flex-shrink:0;justify-content:center;padding:8px;text-decoration:none;transition:all .2s ease}.spotify-link-button:hover{background:#e8f5e9;transform:scale(1.1)}.create-playlist-button{align-items:center;background:#1db954;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:10px;justify-content:center;padding:15px;transition:all .3s ease;width:100%}.create-playlist-button:hover:not(:disabled){background:#1ed760;box-shadow:0 10px 25px #1db9544d;transform:translateY(-2px)}.create-playlist-button:disabled{cursor:not-allowed;opacity:.7}.bottom-input-section{margin-left:auto;margin-right:auto;margin-top:auto;max-width:900px;padding:30px 0;width:100%}.options-menu-wrapper{overflow:visible!important;position:relative}.options-menu-button{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:300;height:36px;justify-content:center;transition:all .2s ease;width:36px}.options-menu-button:hover{background:#f5f5f5;border-color:#000;color:#000}.options-menu-button.has-active-option{background:#000;border-color:#000;color:#fff}.options-icon{font-size:1.5rem;line-height:1}.options-dropdown{animation:dropdownSlideUp .2s ease;background:#fff;border-radius:12px;bottom:calc(100% + 10px);box-shadow:0 8px 25px #00000026;min-width:320px;overflow:hidden;position:absolute;right:0;z-index:1001}@keyframes dropdownSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.options-dropdown-header{background:#f8f9fa;border-bottom:1px solid #e0e0e0;color:#999;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.option-item{align-items:center;background:#fff;border:none;cursor:pointer;display:flex;gap:12px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.option-item:hover{background:#f8f9fa}.option-item.active{background:#f0f4ff}.option-icon{font-size:1.2rem;line-height:1}.option-content{display:flex;flex:1 1;flex-direction:column;gap:2px}.option-label{color:#333;font-size:.9rem;font-weight:600}.option-description{color:#666;font-size:.75rem;line-height:1.3}.option-check{align-items:center;color:#000;display:flex;flex-shrink:0;font-size:1rem;font-weight:700;height:24px;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s ease;width:24px}.artist-option-item.active .option-check{opacity:1;pointer-events:auto}.option-item-input{cursor:default}.song-count-input{border:2px solid #e0e0e0;font-family:inherit;font-size:.9rem;padding:6px 10px;transition:all .2s ease;width:60px}.input-container{align-items:center;background:#fff;border-radius:50px;box-shadow:0 10px 40px #0000004d;display:flex;gap:15px;padding:8px 8px 8px 25px;transition:all .3s ease}.input-container:focus-within{box-shadow:0 15px 50px #0006;transform:translateY(-2px)}.bottom-prompt-input{background:#0000;border:none;color:#333;flex:1 1;font-family:inherit;font-size:1.1rem;outline:none;padding:12px 0}.bottom-prompt-input::placeholder{color:#999}.music-note-button{align-items:center;background:#000;border:none;border-radius:50%;color:#000;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;margin:0;min-height:32px;min-width:32px;overflow:visible;padding:0;transition:background .2s ease;width:32px}.music-note-button:hover:not(:disabled){background:#1a1a1a}.music-note-button:disabled{background:#c4c4c6;cursor:not-allowed}.music-note-button svg{fill:#fff;stroke:#fff;height:16px;width:16px}.music-note-button svg path{fill:#fff;stroke:#fff}.wave-loader{align-items:center;display:flex;gap:3px;height:12px;justify-content:center}.wave-bar{animation:wave 1s ease-in-out infinite;background:#fff;border-radius:2px;height:100%;width:3px}.wave-bar:first-child{animation-delay:0s}.wave-bar:nth-child(2){animation-delay:.1s}.wave-bar:nth-child(3){animation-delay:.2s}.wave-bar:nth-child(4){animation-delay:.3s}@keyframes wave{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.error-message-bottom{background:#fffffff2;border-left:4px solid #c33;border-radius:25px;box-shadow:0 4px 15px #0003;color:#c33;font-weight:600;margin-top:15px;padding:15px 25px}.draft-playlist-widget{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-left:6px solid #ff9800;border-radius:20px;box-shadow:0 20px 60px #0000004d;margin-bottom:30px;padding:25px}.draft-widget-header{align-items:center;display:flex;gap:20px;margin-bottom:20px}.draft-widget-icon{font-size:3rem;line-height:1}.draft-widget-info h3{color:#e65100;font-size:1.3rem;font-weight:700;margin:0 0 8px}.draft-widget-name{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 5px}.draft-widget-meta{color:#666;font-size:.9rem;margin:0}.draft-widget-actions{display:flex;gap:12px}.resume-button{background:#000;border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.resume-button:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.discard-button{background:#fff;border:2px solid #ddd;border-radius:12px;color:#666;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.discard-button:hover{background:#f5f5f5;border-color:#999;color:#333}.top-artists-section-full{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;margin-bottom:30px;padding:30px}.top-artists-section-full .top-artists-header h3{color:#333;font-size:1.5rem;margin:0 0 15px}.top-artists-section-full .top-artists-description{color:#666;font-size:.95rem;margin-bottom:25px}.top-artists-carousel{align-items:center;display:flex;gap:10px;position:relative}.top-artists-section-full .top-artists-list{-ms-overflow-style:none;display:flex;flex:1 1;gap:20px;overflow-x:auto;overflow-y:hidden;padding-bottom:10px;scroll-behavior:smooth;scrollbar-width:none}.top-artists-section-full .top-artists-list::-webkit-scrollbar{display:none}.top-artists-section-full .top-artist-tile{flex:0 0 160px;min-width:160px}.carousel-arrow{align-items:center;background:#fff;border:none;border-radius:50%;box-shadow:0 2px 8px #0003;color:#000;cursor:pointer;display:flex;flex-shrink:0;font-size:2rem;height:40px;justify-content:center;transition:all .2s ease;width:40px;z-index:10}.carousel-arrow:hover{background:#f8f8f8;box-shadow:0 4px 12px #0000004d;transform:scale(1.1)}.carousel-arrow:active{transform:scale(.95)}.footer{color:#fff;margin-top:50px;opacity:.8;padding:20px;text-align:center}@media (max-width:1024px){.content-grid{grid-template-columns:1fr 300px}.top-artist-name-small{font-size:.85rem}.top-artist-genres-small{font-size:.7rem}.create-from-artist-button-small{font-size:.75rem;padding:6px 12px}}@media (max-width:768px){.header h1{font-size:2rem}.auth-card{padding:30px}.main-content{flex-direction:column}.side-panel{flex-direction:row;justify-content:center;width:100%}.side-panel-button{flex:1 1;max-width:150px}.top-nav{height:60px;padding:0 15px}.main-content{margin-top:70px}.profile-dropdown-topnav{border-radius:12px;bottom:auto;left:auto;max-height:calc(100vh - 150px);min-width:220px;overflow-y:auto;position:absolute;right:0;top:50px;width:auto}.content-grid{gap:20px;grid-template-columns:1fr}.top-artists-sidebar{order:2;position:static}.input-section{order:1}.input-section,.results-section{padding:25px}.example-chips{flex-direction:column}.example-chip{text-align:center;width:100%}.track-item{padding:10px}.track-image{height:40px;width:40px}.reference-search-box{flex-direction:column}.reference-search-button{width:100%}.reference-result-item{padding:10px}.reference-image{height:40px;width:40px}.top-artists-grid{grid-template-columns:1fr}.top-artist-image{height:100px;width:100px}.fetch-top-artists-button{padding:12px 30px;width:100%}.bottom-input-section{padding:20px 0}.input-container{padding:6px 6px 6px 20px}.bottom-prompt-input{font-size:1rem;padding:10px 0}.music-note-button{font-size:1.5rem;height:50px;width:50px}.top-artists-section-full .top-artists-list{gap:15px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.playlist-modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#000000bf;bottom:0;box-sizing:border-box;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.playlist-modal-content{animation:fadeIn .2s ease;background:#fff;border-radius:20px;box-shadow:0 25px 70px #00000080;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;width:95%}.playlist-modal-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;padding:20px 30px 15px}.playlist-modal-header h2{color:#1c1c1e;flex:1 1;font-size:1.8rem;margin:0}.playlist-modal-description{border-bottom:1px solid #f0f0f0;color:#666;font-size:.95rem;margin:0;padding:10px 30px}.description-more{color:#000;cursor:pointer;font-size:.95rem;font-weight:400;text-decoration:underline}.description-more:hover{color:#1a1a1a}:root.dark-mode .description-more{color:#aeaeb2}:root.dark-mode .description-more:hover{color:#fff}.description-more:active{opacity:.6}.playlist-modal-body{background:#fff;display:flex;flex:1 1;flex-direction:column;gap:0;overflow:hidden;padding:20px 30px}.playlist-modal-body-step2{flex:1 1;overflow-y:auto;padding:30px}.playlist-modal-tracks{background:#fff;border-radius:10px;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.playlist-modal-tracks-header{align-items:center;background:#0000;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.playlist-modal-tracks-header h3{color:#333;font-size:1.1rem;margin:0}.tracks-header-buttons{align-items:center;display:flex;gap:8px}.select-all-button-modal{background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.select-all-button-modal:hover{background:#1a1a1a;transform:translateY(-1px)}.track-list-menu-button{align-items:center;background:#0000;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.track-list-menu-button:hover{background:#f0f0f0;color:#1c1c1e}.track-list-menu-button:active{background:#e0e0e0}.tracks-header-buttons{position:relative}.track-list-menu-dropdown{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:4px;min-width:180px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.track-list-menu-item{align-items:center;background:#fff;border:none;color:#1c1c1e;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:12px 16px;text-align:left;transition:background .2s ease;width:100%}.track-list-menu-item:hover:not(:disabled){background:#f8f8f8}.track-list-menu-item:disabled{cursor:not-allowed;opacity:.6}.add-more-songs-button-small{background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.add-more-songs-button-small:hover:not(:disabled){background:#1a1a1a;transform:translateY(-1px)}.add-more-songs-button-small:disabled{cursor:not-allowed;opacity:.6}.spinner-small{border:2px solid #78350f4d;border-top-color:#000;height:12px;margin-right:6px;width:12px}.playlist-modal-tracks-list{background:#fff;border:1px solid #e0e0e0;border-radius:10px;flex:1 1;overflow-x:hidden;overflow-y:auto;padding:0;scrollbar-color:#a0aec0 #0000;scrollbar-width:thin}.playlist-modal-tracks-list::-webkit-scrollbar{background:#0000;width:8px}.playlist-modal-tracks-list::-webkit-scrollbar-track{background:#0000}.playlist-modal-tracks-list::-webkit-scrollbar-thumb{background:#a0aec0;border-radius:4px}.track-actions-modal{align-items:center;display:flex;gap:8px;margin-left:auto}.track-exclude-button-modal{align-items:center;background:none;border:none;border-radius:50%;color:#ff3b30;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.track-exclude-button-modal:hover{background:#ffebee;transform:scale(1.1)}.track-exclude-button-modal:active{transform:scale(.95)}:root.dark-mode .track-exclude-button-modal{color:#ff453a}:root.dark-mode .track-exclude-button-modal:hover{background:#ff453a1a}.spotify-link-modal{align-items:center;border-radius:50%;color:#1db954;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.spotify-link-modal:hover{background:#e8f5e9;transform:scale(1.1)}.add-more-songs-button{align-items:center;background:#000;border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;margin-top:12px;padding:10px 20px;transition:all .3s ease}.add-more-songs-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.add-more-songs-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.playlist-modal-chat-below{border-top:2px solid #f0f0f0;display:flex;flex-direction:column;flex-shrink:0;gap:8px;margin-top:15px;padding:12px 0 0}.playlist-modal-chat-below h3{color:#333;font-size:1.1rem;margin:0;padding:0}.playlist-modal-chat-below .chat-description{color:#666;font-size:.85rem;margin:0;padding:0}.playlist-modal-chat-below .chat-messages{display:flex;flex:1 1;flex-direction:column;gap:0;margin:0;min-height:0;overflow-y:auto;padding:0}.playlist-modal-chat-below .chat-input-container{align-items:center;background:#f2f2f7;border:none;border-radius:20px;display:flex;flex-shrink:0;gap:12px;padding:8px 16px}.playlist-modal-chat{border-left:2px solid #f0f0f0;display:flex;flex-direction:column;overflow:hidden;padding-left:20px}.playlist-modal-chat h3{color:#333;font-size:1.2rem;margin:0 0 8px}.chat-description{color:#666;font-size:.85rem;margin:0 0 15px}.chat-messages{flex:1 1;gap:12px;margin:0;overflow-y:auto;padding:0}.chat-empty,.chat-messages{display:flex;flex-direction:column}.chat-empty{align-items:center;color:#999;height:100%;justify-content:center;text-align:center}.chat-empty p{font-size:1rem;margin-bottom:20px}.chat-suggestions{display:flex;flex-direction:column;gap:8px;width:100%}.chat-suggestion{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#000;cursor:pointer;font-size:.85rem;font-weight:600;padding:10px 15px;transition:all .2s ease}.chat-suggestion:hover{background:#f5f7ff;border-color:#000;transform:translateY(-1px)}.chat-message{word-wrap:break-word;border-radius:12px;max-width:85%;padding:12px 15px}.chat-message.user{background:#000;color:#000;margin-left:auto}.chat-message.assistant{background:#fff;border:1px solid #e0e0e0;color:#333}.chat-message-content{font-size:.9rem;line-height:1.4}.chat-typing{animation:pulse 1.5s ease-in-out infinite;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-and-next-container{align-items:center;display:flex;gap:8px}.chat-input-container{align-items:center;background:#f2f2f7;border-radius:20px;cursor:pointer;display:flex;flex:1 1;gap:12px;padding:8px 16px}.chat-next-button{border-radius:8px;box-shadow:none!important;flex-shrink:0;font-size:.85rem;font-weight:600;height:auto;min-width:90px;padding:12px 16px;white-space:nowrap;width:auto}.chat-input{background:none;border:none;color:#1c1c1e;flex:1 1;font-size:16px;transition:all .2s ease}.chat-input,.chat-input:focus{outline:none}.chat-input::placeholder{color:#8e8e93}.chat-input:disabled{background:none;cursor:not-allowed}:root.dark-mode .chat-input-container{padding:8px 16px}:root.dark-mode .chat-input-container,:root.dark-mode .playlist-modal-chat-below .chat-input-container{background:#3a3a3c;border:none;border-radius:20px}:root.dark-mode .chat-input{color:#fff}:root.dark-mode .chat-input::placeholder{color:#aeaeb2}.chat-send-button{background:#fff;border-radius:10px;color:#000;font-size:.9rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.chat-send-button:hover:not(:disabled){background:#e5e5e5;transform:translateY(-1px)}.chat-send-button:disabled{opacity:.5}.playlist-preview{background:#fff;border-radius:15px;color:#000;margin-bottom:30px;padding:30px;text-align:center}.playlist-preview h3{font-size:1.5rem;margin:0 0 10px}.preview-track-count{font-size:1.1rem;margin:0;opacity:.9}.playlist-form{margin:0 auto;max-width:600px}.form-group{margin-bottom:25px}.form-group label{color:#333;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.playlist-input,.playlist-select,.playlist-textarea{border:2px solid #e0e0e0;border-radius:10px;font-family:inherit;font-size:1rem;padding:12px 15px;transition:all .2s ease;width:100%}.playlist-input:focus,.playlist-select:focus,.playlist-textarea:focus{border-color:#000;outline:none}.playlist-textarea{min-height:100px;resize:vertical}.playlist-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.form-help-text{color:#666;font-size:.85rem;font-weight:400;line-height:1.4;margin:8px 0 0}.playlist-modal-footer{align-items:center;border-top:2px solid #f0f0f0;display:flex;gap:15px;justify-content:center;padding:15px 30px}.modal-button-primary,.modal-button-secondary{border:none;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 30px;transition:all .3s ease}.modal-button-secondary{background:#f0f0f0;color:#666}.modal-button-secondary:hover{background:#e0e0e0;transform:translateY(-2px)}.modal-button-primary{align-items:center;background:#1c1c1e;box-shadow:none;color:#fff;display:flex;gap:8px;justify-content:center}.modal-button-primary:hover:not(:disabled){box-shadow:none;transform:translateY(-2px)}.modal-button-primary:disabled{cursor:not-allowed;opacity:.6}.modal-error-message{background:#fee;border-left:4px solid #c33;border-radius:8px;color:#c33;font-size:.9rem;margin:15px 30px;padding:12px 15px}.spinner-small{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;width:16px}@media (max-width:1024px){.playlist-modal-body{gap:20px;grid-template-columns:1fr}.playlist-modal-chat{border-left:none;border-top:2px solid #f0f0f0;max-height:300px;padding-left:0;padding-top:20px}}@media (max-width:768px){.playlist-modal-overlay{align-items:stretch;bottom:0;left:0;padding:0;position:fixed;right:0;top:0}.playlist-modal-content{border-radius:0;height:100%;max-width:none;position:relative;width:100%}.playlist-modal-header{flex-shrink:0;padding:15px 20px 12px}.playlist-modal-header h2{font-size:1.3rem}.playlist-modal-description{color:#1c1c1e;flex-shrink:0;font-size:.9rem;line-height:1.4;padding:10px 20px;text-align:left}.description-more{-webkit-tap-highlight-color:transparent;color:#000;cursor:pointer;font-size:.85rem;font-weight:400;text-decoration:underline}.description-more:hover{color:#1a1a1a}.description-more:active{opacity:.6}.playlist-modal-body{padding:15px 0}.playlist-modal-body,.playlist-modal-body-step2{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-y:auto}.playlist-modal-body-step2{padding:15px 20px}.playlist-modal-tracks{display:flex;flex:1 1;flex-direction:column;gap:10px;min-height:0;padding:0}.playlist-modal-tracks-header{flex-shrink:0;padding:0 20px}.playlist-modal-tracks-list{-webkit-overflow-scrolling:touch;flex:1 1;margin:0 20px;min-height:150px;overflow-y:auto;padding:0}.modal-context .track-item{padding:8px}.playlist-modal-chat-below{border-top:2px solid #f0f0f0;flex-shrink:0;margin-top:0;padding:10px 20px 0}.playlist-modal-footer{flex-direction:row;flex-shrink:0;gap:12px;justify-content:space-between;padding:12px 20px}.modal-button-primary,.modal-button-secondary{flex:1 1;min-width:0}.modal-button-single{margin:0 auto;max-width:200px}.chat-suggestions{gap:6px}.chat-input-container{align-items:center;background:#f2f2f7;border-radius:20px;cursor:pointer;display:flex;flex:1 1;gap:12px;height:auto;min-width:0;padding:12px 16px;transition:background .2s ease}.chat-input-container:active{background:#e5e5ea}.chat-input{flex:1 1;font-size:16px}.music-note-button{height:32px;min-height:32px;min-width:32px;width:32px}.chat-and-next-container{align-items:center;display:flex;gap:8px}.chat-next-button{align-items:center;border-radius:8px;box-shadow:none!important;display:flex;flex-grow:0;flex-shrink:0;font-size:.85rem;font-weight:600;height:auto;justify-content:center;max-width:90px;min-width:90px;padding:12px 16px;white-space:nowrap;width:auto}}.artist-settings-modal-content{animation:fadeIn .2s ease;background:#fff;border-radius:20px;box-shadow:0 25px 70px #00000080;max-width:500px;overflow:hidden;width:90%}.artist-settings-modal-header{background:#fff;border-bottom:2px solid #f0f0f0;padding:25px 30px 20px}.artist-settings-modal-header h2{color:#fff;font-size:1.5rem;margin:0;text-align:center}.artist-settings-modal-body{background:#fff;box-sizing:border-box;display:flex;flex-direction:column;gap:25px;max-height:70vh;overflow-y:scroll;padding:30px}.artist-settings-modal-body:before{content:"";display:none}.artist-modal-image-container{align-items:center;background:#0000;border-radius:50%;display:flex;height:150px;justify-content:center;line-height:0;margin:0 auto;overflow:hidden;padding:0;width:150px}.artist-modal-image{border:none;border-radius:50%;box-shadow:0 8px 20px #0003;display:block;flex-shrink:0;height:100%;object-fit:cover;width:100%}.artist-settings-options{display:flex;flex-direction:column;gap:15px}.artist-settings-options h3{color:#333;font-size:1.1rem;margin:0 0 10px}.artist-option-item{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:12px;box-shadow:0 0 0 0 #667eea00;cursor:pointer;display:flex;gap:12px;padding:15px;transition:all .2s ease}.artist-option-item:hover{background:#f8f9fa;box-shadow:0 0 0 2px #667eea4d}.artist-option-item.active{background:#f0f4ff;box-shadow:0 0 0 2px #667eea80}.artist-settings-modal-footer{border-top:2px solid #f0f0f0;display:flex;gap:15px;justify-content:space-between;padding:20px 30px}@media (max-width:600px){.artist-settings-modal-content{max-width:none;width:95%}.artist-settings-modal-header{padding:20px}.artist-settings-modal-header h2{font-size:1.3rem}.artist-settings-modal-body{padding:20px}.artist-modal-image{height:120px;width:120px}.artist-settings-modal-footer{flex-direction:row;gap:12px;padding:15px 20px}.artist-settings-modal-footer .modal-button-primary,.artist-settings-modal-footer .modal-button-secondary{flex:1 1}}:root.dark-mode .artist-modal-image-container{background:#0000}:root.dark-mode .playlist-modal-overlay{background:#00000080}:root.dark-mode .playlist-modal-header{background:#2c2c2e}:root.dark-mode .playlist-modal-tracks{background:#1c1c1e}:root.dark-mode .playlist-modal-tracks-header{background:#0000}:root.dark-mode .checkbox-modal{border-color:#424245}:root.dark-mode .checkbox-modal:checked{background:#fff;border-color:#000}:root.dark-mode .playlist-modal-tracks-list{background:#1c1c1e;border-color:#424245;scrollbar-color:#8e8e93 #0000}:root.dark-mode .playlist-modal-tracks-list::-webkit-scrollbar-thumb{background:#8e8e93}:root.dark-mode .tracks-list{scrollbar-color:#8e8e93 #0000}:root.dark-mode .tracks-list::-webkit-scrollbar-thumb{background:#8e8e93}:root.dark-mode .modal-content{scrollbar-color:#8e8e93 #0000}:root.dark-mode .modal-content::-webkit-scrollbar-thumb{background:#8e8e93}:root.dark-mode .artist-settings-modal-body{background:#2c2c2e;color:#fff}:root.dark-mode .artist-settings-options h3{color:#fff}:root.dark-mode .artist-option-item{background:#3a3a3c;border-color:#424245;color:#fff}:root.dark-mode .artist-option-item:hover{background:#424245;box-shadow:0 0 0 2px #667eea4d}:root.dark-mode .artist-option-item.active{background:#424245;box-shadow:0 0 0 2px #667eea80}:root.dark-mode .option-label{color:#fff}:root.dark-mode .option-description{color:#aeaeb2}.option-icon{align-items:center;background:#f2f2f7;border-radius:10px;color:#666;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}:root.dark-mode .option-icon{background:#424245;color:#fff}:root.dark-mode .option-check{color:#fff}.generating-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1001}.generating-modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:40px;text-align:center}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.generating-modal-header{margin-bottom:30px}.generating-modal-header h2{color:#1a202c;font-size:1.5rem;font-weight:600;margin:0}.generating-modal-body{align-items:center;display:flex;flex-direction:column;gap:20px}.generating-modal-spinner{align-items:flex-end;display:flex;gap:6px;height:40px}.generating-modal-spinner>div{animation:spinnerWave 1s ease-in-out infinite;background:#000;border-radius:3px;width:6px}.generating-modal-spinner>div:first-child{animation-delay:0s;height:20px}.generating-modal-spinner>div:nth-child(2){animation-delay:.1s;height:30px}.generating-modal-spinner>div:nth-child(3){animation-delay:.2s;height:20px}@keyframes spinnerWave{0%,to{height:20px}50%{height:40px}}.generating-modal-message{animation:fadeInOut .3s ease-in-out;color:#000;font-size:1rem;font-weight:500;margin:0;min-height:24px}@keyframes fadeInOut{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}:root.dark-mode .generating-modal-content{background:#2c2c2e}:root.dark-mode .generating-modal-header h2,:root.dark-mode .generating-modal-message{color:#fff}.chat-modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10001}.chat-modal-content{animation:fadeIn .2s ease;background:#fff;border-radius:20px;box-shadow:0 25px 70px #00000080;display:flex;flex-direction:column;max-height:80vh;max-width:600px;overflow:hidden;width:100%}.chat-modal-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;flex-shrink:0;justify-content:space-between;padding:20px}.chat-modal-header h2{color:#1c1c1e;font-size:1.5rem;font-weight:700;margin:0}.chat-modal-body{flex:1 1;gap:16px;min-height:0;overflow-y:auto;padding:20px}.chat-message,.chat-modal-body{display:flex;flex-direction:column}.chat-message{gap:6px;width:100%}.chat-message.original-prompt{background:#f2f2f7!important;border:none;border-radius:12px;box-shadow:none;padding:16px}.chat-message-label{color:#8e8e93;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.chat-message-content{word-wrap:break-word;color:#1c1c1e;font-size:.95rem;line-height:1.5}.chat-message.user{align-self:flex-end;background:#0000!important;border:none!important;box-shadow:none!important;max-width:80%}.chat-message.user .chat-message-content{background:#000!important;border:none!important;border-radius:18px;border-bottom-right-radius:4px;box-shadow:none!important;color:#fff!important;padding:12px 16px}.chat-message.assistant{align-self:flex-start;background:#0000!important;border:none!important;box-shadow:none!important;max-width:80%}.chat-message.assistant .chat-message-content{background:#f2f2f7!important;border:none!important;border-radius:18px;border-bottom-left-radius:4px;box-shadow:none!important;color:#1c1c1e!important;padding:12px 16px}.chat-history{display:flex;flex-direction:column;gap:12px}.chat-modal-input-area{background:#fff;border-top:2px solid #f0f0f0;flex-shrink:0;padding:16px 20px}.chat-modal-input-container{align-items:center;background:#f2f2f7;border-radius:20px;display:flex;gap:12px;height:44px;padding:0 16px}.chat-modal-input{background:#0000;border:none;color:#1c1c1e;flex:1 1;font-size:16px;outline:none}.chat-modal-input::placeholder{color:#8e8e93}.chat-modal-send-button{align-items:center;background:#000;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;min-height:32px;min-width:32px;padding:0;transition:all .2s ease;width:32px}.chat-modal-send-button:hover:not(:disabled){background:#1a1a1a;transform:scale(1.05)}.chat-modal-send-button:disabled{cursor:not-allowed;opacity:.4}.chat-modal-send-button svg{fill:#fff;height:18px;width:18px}:root.dark-mode .chat-modal-send-button{background:#fff}:root.dark-mode .chat-modal-send-button:hover:not(:disabled){background:#e5e5e5}:root.dark-mode .chat-modal-send-button svg{fill:#000}:root.dark-mode .chat-modal-content{background:#2c2c2e}:root.dark-mode .chat-modal-header{border-bottom-color:#424245}:root.dark-mode .chat-modal-header h2{color:#fff}:root.dark-mode .chat-modal-input-area{background:#2c2c2e;border-top-color:#424245}:root.dark-mode .chat-modal-input-container{background:#3a3a3c}:root.dark-mode .chat-modal-input{color:#fff}:root.dark-mode .chat-modal-input::placeholder{color:#aeaeb2}:root.dark-mode .chat-message{color:#fff}:root.dark-mode .chat-message.original-prompt{background:#3a3a3c!important}:root.dark-mode .chat-message-content{color:#fff}@media (max-width:768px){.chat-modal-overlay{padding:0}.chat-modal-content{border-radius:0;bottom:0;height:100%;left:0;max-height:100%;max-width:100%;position:fixed;right:0;top:0}.chat-modal-header{flex-shrink:0;padding:16px 20px}.chat-modal-header h2{font-size:1.25rem}.chat-modal-body{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-y:auto;padding:16px}.chat-modal-input-area{flex-shrink:0;padding:12px 16px max(12px,env(safe-area-inset-bottom))}.chat-message.assistant,.chat-message.user{max-width:85%}}.platform-selector{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:12px;display:inline-flex;gap:4px;padding:4px}.platform-selector-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.platform-selector-btn:hover{background:#ffffff1a}.platform-selector-btn.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#000}.platform-selector-btn svg{flex-shrink:0}@media (max-width:768px){.platform-selector{max-width:400px;width:100%}.platform-selector-btn{flex:1 1;font-size:13px;justify-content:center;padding:12px 16px}}.create-playlist-options{background:#f8f9fa;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:16px}.create-playlist-options .option-row{align-items:center;background:#fff;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:background .2s ease}.create-playlist-options .option-row:hover{background:#f0f0f0}.create-playlist-options .option-row.active{background:#e8f4ff}.create-playlist-options .option-row input[type=number]{border:1px solid #e2e8f0;border-radius:6px;font-size:14px;margin-left:auto;padding:4px 8px;width:60px}.create-playlist-options .option-row span{color:#333;font-size:14px}.generating-chat-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10002}.generating-chat-modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:80vh;max-width:500px;overflow:hidden;width:90%}.generating-chat-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.generating-chat-header h2{color:#111;font-size:18px;font-weight:600;margin:0}.generating-chat-body{display:flex;flex:1 1;flex-direction:column;gap:4px;overflow-y:auto;padding:16px}.generating-chat-body .chat-message{display:flex;flex-direction:column;max-width:85%}.generating-chat-body .chat-message.user{align-self:flex-end}.generating-chat-body .chat-message.user .chat-message-content{background:#000;border-radius:18px 18px 4px 18px;color:#000;font-size:15px;line-height:1.3;padding:8px 12px}.generating-chat-body .chat-message.assistant{align-self:flex-start}.generating-chat-body .chat-message.assistant .chat-message-content{background:#e9e9eb;border-radius:18px 18px 18px 4px;color:#000;font-size:15px;line-height:1.3;padding:8px 12px}.generating-text{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.typing-indicator{align-items:center;display:inline-flex;gap:4px;padding-left:4px}.typing-indicator .dot{animation:typing-bounce 1.4s ease-in-out infinite both;background:#888;border-radius:50%;height:6px;width:6px}.typing-indicator .dot:first-child{animation-delay:-.32s}.typing-indicator .dot:nth-child(2){animation-delay:-.16s}.typing-indicator .dot:nth-child(3){animation-delay:0s}@keyframes typing-bounce{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.generating-error{display:flex;flex-direction:column;gap:12px}.retry-button-inline{align-self:flex-start;background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s ease}.retry-button-inline:hover{background:#1a1a1a}:root.dark-mode .retry-button-inline{background:#fff;color:#000}:root.dark-mode .retry-button-inline:hover{background:#e5e5e5}:root.dark-mode .generating-chat-modal-content{background:#1a1a1a;box-shadow:0 20px 60px #0009}:root.dark-mode .generating-chat-header{border-bottom-color:#333}:root.dark-mode .generating-chat-header h2{color:#f5f5f5}:root.dark-mode .generating-chat-body .chat-message.assistant .chat-message-content{background:#2a2a2a;color:#e5e5e5}:root.dark-mode .generating-chat-body .chat-message.user .chat-message-content{background:#fff;color:#000}:root.dark-mode .typing-indicator .dot{background:#aaa}@media (max-width:480px){.generating-chat-modal-content{max-height:70vh;width:95%}.generating-chat-body .chat-message{max-width:90%}}.refine-chat-modal .chat-modal-body.refine-chat-body{display:flex;flex-direction:column;gap:4px;padding:16px}.refine-chat-modal .chat-message{display:flex;flex-direction:column;max-width:85%}.refine-chat-modal .chat-message.user{align-self:flex-end}.refine-chat-modal .chat-message.user .chat-message-content{background:#000;border-radius:18px 18px 4px 18px;color:#000;font-size:15px;line-height:1.3;padding:8px 12px}.refine-chat-modal .chat-message.assistant{align-self:flex-start}.refine-chat-modal .chat-message.assistant .chat-message-content{background:#e9e9eb;border-radius:18px 18px 18px 4px;color:#000;font-size:15px;line-height:1.3;padding:8px 12px}@media (max-width:480px){.refine-chat-modal .chat-message{max-width:90%}}.loading-status{align-items:center;align-self:flex-start;display:flex;gap:8px;padding:8px 0 8px 12px}.loading-status-text{color:#888;font-size:13px;font-weight:400}.generating-error-standalone{display:flex;flex-direction:column;font-size:14px;gap:12px;margin-left:4px;padding:8px 0}.loading-status .typing-indicator{align-items:center;display:inline-flex;gap:3px}.loading-status .typing-indicator .dot{animation:typing-bounce 1.4s ease-in-out infinite both;background:#888;border-radius:50%;height:4px;width:4px}.wave-loader-small{align-items:center;display:flex;gap:2px;height:14px}.wave-loader-small .wave-bar{animation:wave-animation 1s ease-in-out infinite;background:#888;border-radius:2px;height:10px;width:3px}.wave-loader-small .wave-bar:first-child{animation-delay:0s}.wave-loader-small .wave-bar:nth-child(2){animation-delay:.1s}.wave-loader-small .wave-bar:nth-child(3){animation-delay:.2s}.wave-loader-small .wave-bar:nth-child(4){animation-delay:.3s}@keyframes wave-animation{0%,to{transform:scaleY(.5)}50%{transform:scaleY(1)}}.upgrade-locked-row{align-items:center;background:#f8f8f8;border:1.5px dashed #d0d0d0;border-radius:10px;color:#888;cursor:pointer;display:flex;font-family:inherit;font-size:14px;justify-content:space-between;padding:10px 14px;transition:background .2s;width:100%}.upgrade-locked-row:hover{background:#f0f0f0}.upgrade-locked-badge{background:#0000000f;border-radius:20px;color:#000;font-size:11px;font-weight:600;padding:2px 8px}:root.dark-mode .upgrade-locked-row{background:#2c2c2e;border-color:#424245;color:#888}:root.dark-mode .upgrade-locked-row:hover{background:#333336}.settings-page{background-color:#fff;display:flex;flex-direction:column;height:100%}.settings-header{align-items:center;background-color:initial;border-bottom:none;display:flex;justify-content:center;padding:20px 20px 10px}.settings-header h1{color:#1c1c1e;font-size:34px;font-weight:700;margin:0}.settings-header .back-button{align-items:center;background:none;border:none;color:#007aff;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:opacity .2s}.settings-header .back-button:active{opacity:.5}.settings-content{flex:1 1;overflow-y:auto;padding:20px}.settings-list{background-color:#fff;border:1px solid #e5e5ea;border-radius:16px;margin-left:200px;margin-right:200px;overflow:hidden}.settings-item{align-items:center;background:none;border-bottom:.5px solid #e5e5ea;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s;width:100%}.settings-item:last-child{border-bottom:none}.settings-item:hover{background-color:#f9f9fb}.settings-item-left{display:flex;flex:1 1;flex-direction:column;gap:4px}.settings-label{color:#1c1c1e;font-size:16px;font-weight:400}.settings-description{color:#8e8e93;font-size:13px;line-height:1.4}.toggle-switch{display:inline-block;flex-shrink:0;height:31px;margin-left:16px;position:relative;width:51px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#e5e5ea;border-radius:15.5px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:background-color .3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:2px;box-shadow:0 3px 1px 0 #0000000a,0 3px 8px 0 #0000001f;content:"";height:27px;left:2px;position:absolute;transition:transform .3s;width:27px}.toggle-switch input:checked+.toggle-slider{background-color:#000}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #0000001a}.settings-item-with-input{padding-right:12px}.song-count-input{border:1px solid #e5e5ea;border-radius:6px;color:#1c1c1e;flex-shrink:0;font-size:15px;padding:8px 12px;text-align:center;transition:border-color .2s;width:70px}.song-count-input:focus{border-color:#000;box-shadow:0 0 0 3px #0000000f;outline:none}.song-count-input::-webkit-inner-spin-button,.song-count-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.song-count-input[type=number]{-moz-appearance:textfield}.settings-success-message{animation:slideUp .3s ease;background-color:#000;border-radius:8px;bottom:20px;box-shadow:0 4px 12px #00000026;color:#fff;font-size:14px;font-weight:500;left:50%;padding:12px 24px;position:fixed;transform:translateX(-50%)}@keyframes slideUp{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}:root.dark-mode .settings-page{background-color:#1c1c1e}:root.dark-mode .settings-header{background-color:initial;border-bottom-color:#0000}:root.dark-mode .settings-header h1{color:#fff}:root.dark-mode .settings-header .back-button{color:#0a84ff}:root.dark-mode .settings-list{background-color:#2c2c2e;border-color:#0000}:root.dark-mode .settings-item{background-color:#2c2c2e;border-bottom-color:#424245;color:#fff}:root.dark-mode .settings-item:hover{background-color:#3a3a3c}:root.dark-mode .settings-label{color:#fff}:root.dark-mode .settings-description{color:#aeaeb2}:root.dark-mode .toggle-slider{background-color:#424245}:root.dark-mode .toggle-slider:before{background-color:#fff}:root.dark-mode .song-count-input{background-color:#3a3a3c;border-color:#424245;color:#fff}:root.dark-mode .song-count-input:focus{background-color:#3a3a3c;border-color:#000;color:#fff}:root.dark-mode .settings-success-message{background-color:#000;color:#fff}@media (max-width:768px){.settings-content{padding:16px}.settings-list{margin-left:0;margin-right:0}}.account-page{background-color:#fff;display:flex;flex-direction:column;height:100%}.account-header{align-items:center;background-color:initial;border-bottom:none;display:flex;justify-content:center;padding:20px 2px 16px;position:relative}.account-header h1{color:#1c1c1e;font-size:34px;font-weight:700;margin:0}.account-back-btn{align-items:center;background:none;border:none;border-radius:8px;color:#007aff;cursor:pointer;display:flex;justify-content:center;left:8px;padding:6px;position:absolute}.account-back-btn:active{opacity:.6}.account-content{flex:1 1;overflow-y:auto;padding:20px 2px}.account-list{background-color:#fff;border:1px solid #e5e5ea;border-radius:16px;margin-left:200px;margin-right:200px}.account-list-item{background:none;border-bottom:.5px solid #e5e5ea;padding:12px 16px;transition:background-color .2s}.account-list-item:hover{background-color:#f9f9fb}.account-list-item:active{background-color:#f2f2f7}.account-list-label{color:#1c1c1e}.account-section-header{cursor:default!important;padding:24px 16px 12px!important}.account-section-header,.account-section-header:hover{background-color:initial!important}.account-list-value{color:#8e8e93;gap:12px}.account-list-value span:first-child{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.platform-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.platform-option{background-color:#f2f2f7;border:2px solid #e5e5ea;border-radius:10px;color:#1c1c1e;cursor:pointer;font-size:15px;justify-content:space-between;transition:all .2s}.platform-option:hover{background-color:#e5e5ea}.platform-option.selected{background-color:#f5ebff;border-color:#000}.platform-name{font-weight:500}.platform-check{color:#000;font-size:18px;font-weight:700}.platforms-dropdown-header{border-bottom:.5px solid #e5e5ea!important}.account-platforms-dropdown{animation:slideDown .2s ease;background-color:initial;border-bottom:none;box-sizing:border-box;display:flex;flex-direction:column;gap:0;padding:0}.platform-card{background-color:#fff;border:1px solid #e5e5ea;border-radius:12px;box-sizing:border-box;padding:16px;transition:all .2s;width:100%}.platform-card:hover{box-shadow:0 2px 8px #00000014}.account-platforms-dropdown .platform-card{background-color:initial;border:none;border-bottom:.5px solid #e5e5ea;border-radius:0;box-shadow:none;margin:0;padding:12px 16px}.account-platforms-dropdown .platform-card:last-child{border-bottom:none}.account-platforms-dropdown .platform-card:hover{background-color:#f9f9fb;box-shadow:none}.platform-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.platform-card-info{align-items:center;display:flex;flex:1 1;gap:12px}.platform-logo{flex-shrink:0;height:32px;object-fit:contain;width:32px}.platform-card-text{display:flex;flex-direction:column;gap:4px}.platform-card-name{color:#1c1c1e;font-size:16px;font-weight:500}.platform-card-status{color:#8e8e93;font-size:13px}.platform-toggle-btn{background-color:#fff;border:1px solid #e5e5ea;border-radius:8px;color:#1c1c1e;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s;white-space:nowrap}.platform-toggle-btn:hover{background-color:#f9f9fb;border-color:#d1d1d6}.platform-toggle-btn:active{background-color:#f2f2f7}.platform-toggle-btn.connected{background:#000;border-color:#000;color:#fff}.platform-toggle-btn.connected:hover{background:#1a1a1a;border-color:#1a1a1a}.platform-toggle-btn:disabled{cursor:not-allowed;opacity:.5}:root.dark-mode .platform-checkbox-option{background-color:#2c2c2e;border-color:#424245}:root.dark-mode .platform-checkbox-option:hover{background-color:#3a3a3c}:root.dark-mode .platform-checkbox-option input[type=checkbox]{accent-color:#000}:root.dark-mode .platform-checkbox-option .platform-name{color:#fff}:root.dark-mode .account-page{background-color:#1c1c1e}:root.dark-mode .account-header{background-color:initial;border-bottom-color:#0000}:root.dark-mode .account-header h1{color:#fff}:root.dark-mode .account-back-btn{color:#0a84ff}:root.dark-mode .account-content{background-color:#1c1c1e;color:#fff}:root.dark-mode .account-list{background-color:#2c2c2e;border-color:#0000}:root.dark-mode .account-list-item{background-color:#2c2c2e}:root.dark-mode .account-list-item:hover{background-color:#3a3a3c}:root.dark-mode .account-list-item:active{background-color:#424245}:root.dark-mode .platform-options{background-color:#1c1c1e}:root.dark-mode .platform-option{background-color:#2c2c2e;color:#fff}:root.dark-mode .platform-option:hover{background-color:#3a3a3c}:root.dark-mode .platform-option.selected{background-color:#3a3a3c;border-color:#000}:root.dark-mode .platform-name{color:#fff}:root.dark-mode .platform-check{color:#000}:root.dark-mode .account-section-header{background-color:initial!important}:root.dark-mode .account-section-header .account-list-label{color:#fff}:root.dark-mode .platforms-dropdown-header{border-bottom-color:#424245!important}:root.dark-mode .account-platforms-dropdown{background-color:initial;border-bottom-color:#424245}:root.dark-mode .account-platforms-dropdown .platform-card{background-color:initial;border:none;border-bottom:.5px solid #424245;border-radius:0;padding:12px 16px}:root.dark-mode .account-platforms-dropdown .platform-card:hover{background-color:#3a3a3c;box-shadow:none}:root.dark-mode .account-platforms-dropdown-standalone{background-color:#2c2c2e;border-bottom-color:#424245}:root.dark-mode .platform-card{background-color:#2c2c2e;border-color:#424245}:root.dark-mode .platform-card:hover{box-shadow:0 2px 8px #0000004d}:root.dark-mode .platform-card-name{color:#fff}:root.dark-mode .platform-card-status{color:#aeaeb2}:root.dark-mode .platform-toggle-btn{background-color:#3a3a3c;border-color:#424245;color:#fff}:root.dark-mode .platform-toggle-btn:hover{background-color:#424245;border-color:#555558}:root.dark-mode .platform-toggle-btn:active{background-color:#4a4a4d}:root.dark-mode .platform-toggle-btn.connected{background:#fff;border-color:#fff;color:#1c1c1e}:root.dark-mode .platform-toggle-btn.connected:hover{background:#e5e5ea;border-color:#e5e5ea}.account-plan-badge{background:#f2f2f7;border-radius:20px;color:#8e8e93;display:inline-block;font-size:12px;font-weight:600;margin-right:4px;padding:3px 10px}.account-plan-badge-pro{background:#000;color:#fff}:root.dark-mode .account-plan-badge{background:#3a3a3c;color:#ebebf5cc}:root.dark-mode .account-plan-badge-pro{background:#fff;color:#000}@media (max-width:768px){.account-list{margin-left:0;margin-right:0}}.reactions-page{background-color:#fff;display:flex;flex-direction:column;height:100%}.reactions-header{align-items:center;border-bottom:1px solid #e5e5ea;display:flex;justify-content:center;padding:20px 16px 16px;position:relative}.reactions-header h1{color:#1c1c1e;font-size:20px;font-weight:700;margin:0}.reactions-back-btn{align-items:center;background:none;border:none;border-radius:8px;color:#007aff;cursor:pointer;display:flex;left:8px;padding:6px;position:absolute}.reactions-back-btn:active{opacity:.6}.reactions-segment{background:#f2f2f7;border-radius:100px;display:flex;gap:2px;margin:16px auto 0;padding:3px;width:-webkit-fit-content;width:fit-content}.reactions-segment-btn{background:none;border:none;border-radius:100px;color:#8e8e93;cursor:pointer;font-size:14px;font-weight:500;padding:7px 20px;transition:background .15s,color .15s;white-space:nowrap}.reactions-segment-btn.active{background:#fff;box-shadow:0 1px 3px #0000001f;color:#1c1c1e}.reactions-content{flex:1 1;overflow-y:auto;padding:12px 16px 24px}.reactions-loading{display:flex;justify-content:center;padding-top:48px}.reactions-loading-spinner{animation:spin .8s linear infinite;border:2px solid #e5e5ea;border-radius:50%;border-top-color:#8e8e93;height:24px;width:24px}@keyframes spin{to{transform:rotate(1turn)}}:root.dark-mode .reactions-loading-spinner{border-color:#636366 #3a3a3c #3a3a3c}.reactions-empty{color:#8e8e93;font-size:15px;line-height:1.5;margin-top:40px;padding:0 24px;text-align:center}.reactions-list{list-style:none;margin:0;padding:0}.reactions-track{align-items:center;border-bottom:1px solid #f2f2f7;display:flex;gap:12px;padding:10px 0}.reactions-track:last-child{border-bottom:none}.reactions-track-art{background:#f2f2f7;border-radius:8px;flex-shrink:0;height:48px;object-fit:cover;width:48px}.reactions-track-art-placeholder{align-items:center;color:#c7c7cc;display:flex;justify-content:center}.reactions-track-info{flex:1 1;min-width:0}.reactions-track-name{color:#1c1c1e;font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reactions-track-artist{color:#8e8e93;font-size:13px}.reactions-track-artist,.reactions-track-playlist{margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reactions-track-playlist{color:#c7c7cc;font-size:12px}.reactions-track-icon-btn{align-items:center;background:none;border:none;cursor:pointer;display:flex;flex-shrink:0;padding:4px;transition:opacity .15s}.reactions-track-icon-btn:active{opacity:.6}.reactions-track-icon-btn:disabled{cursor:default}.reactions-thumb-circle{align-items:center;background:#1c1c1e;border-radius:50%;display:flex;flex-shrink:0;height:34px;justify-content:center;transition:background .15s;width:34px}.reactions-thumb-circle--loading{background:#c7c7cc}:root.dark-mode .reactions-thumb-circle{background:#3a3a3c}:root.dark-mode .reactions-thumb-circle--loading{background:#48484a}:root.dark-mode .reactions-page{background:#1c1c1e}:root.dark-mode .reactions-header{border-bottom-color:#3a3a3c}:root.dark-mode .reactions-header h1{color:#f5f5f5}:root.dark-mode .reactions-back-btn{color:#0a84ff}:root.dark-mode .reactions-segment{background:#2c2c2e}:root.dark-mode .reactions-segment-btn{color:#aeaeb2}:root.dark-mode .reactions-segment-btn.active{background:#3a3a3c;color:#f5f5f5}:root.dark-mode .reactions-track{border-bottom-color:#2c2c2e}:root.dark-mode .reactions-track-name{color:#f5f5f5}:root.dark-mode .reactions-track-art-placeholder{background:#2c2c2e}:root.dark-mode .reactions-empty{color:#aeaeb2}.faq-page{background-color:#fff;display:flex;flex-direction:column;height:100%}.faq-header{align-items:center;background-color:initial;border-bottom:none;display:flex;justify-content:center;padding:20px 20px 10px}.faq-header h1{color:#1c1c1e;font-size:34px;font-weight:700;margin:0}.faq-content{flex:1 1;overflow-y:auto;padding:20px}.faq-list{background-color:#fff;border:1px solid #e5e5ea;border-radius:16px;margin-left:200px;margin-right:200px;overflow:hidden}.faq-item-wrapper{border-bottom:.5px solid #e5e5ea}.faq-item-wrapper:last-child{border-bottom:none}.faq-question-button{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:16px;text-align:left;transition:background-color .2s;width:100%}.faq-question-button:hover{background-color:#f9f9fb}.faq-question-button:active{background-color:#f2f2f7}.faq-question-text{color:#1c1c1e;flex:1 1;font-size:16px;font-weight:500;padding-right:16px}.faq-answer{animation:slideDown .2s ease;background-color:#f9f9fb;color:#3c3c43;font-size:15px;line-height:1.6;padding:0 16px 16px}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}:root.dark-mode .faq-page{background-color:#1c1c1e}:root.dark-mode .faq-header{background-color:initial;border-bottom-color:#0000}:root.dark-mode .faq-header h1{color:#fff}:root.dark-mode .faq-list{background-color:#2c2c2e;border-color:#0000}:root.dark-mode .faq-item-wrapper{border-bottom-color:#424245}:root.dark-mode .faq-question-button{background-color:#2c2c2e}:root.dark-mode .faq-question-button:hover{background-color:#3a3a3c}:root.dark-mode .faq-question-button:active{background-color:#424245}:root.dark-mode .faq-question-text{color:#fff}:root.dark-mode .faq-answer{background-color:#2c2c2e;color:#e5e5ea}@media (max-width:768px){.faq-content{padding:16px}.faq-list{margin-left:0;margin-right:0}.faq-question-button{padding:14px 12px}.faq-question-text{font-size:15px}.faq-answer{font-size:14px;padding:0 12px 14px}}.feedback-page{background:#fff;display:flex;flex-direction:column;height:100%}.feedback-header{align-items:center;display:flex;justify-content:space-between;padding:20px 20px 10px}.feedback-header h1{color:#1c1c1e;font-size:20px;font-weight:700;margin:0}.feedback-back-btn{align-items:center;background:none;border:none;border-radius:50%;color:#1c1c1e;cursor:pointer;display:flex;height:36px;justify-content:center;transition:background .2s;width:36px}.feedback-back-btn:hover{background:#f2f2f7}.feedback-content{align-items:center;display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:24px 20px 40px}.feedback-title{color:#1c1c1e;font-size:26px;font-weight:700;margin:0 0 8px;text-align:center}.feedback-subtitle{color:#8e8e93;font-size:15px;margin:0 0 28px;text-align:center}.feedback-stars{display:flex;gap:8px;margin-bottom:28px}.feedback-star{background:none;border:none;cursor:pointer;padding:4px;transition:transform .15s}.feedback-star.active,.feedback-star:hover{transform:scale(1.15)}.feedback-textarea-wrapper{margin-bottom:8px;max-width:480px;position:relative;width:100%}.feedback-textarea{background:#f9f9fb;border:1.5px solid #e5e5ea;border-radius:14px;box-sizing:border-box;color:#1c1c1e;font-family:inherit;font-size:15px;min-height:140px;outline:none;padding:14px 16px 32px;resize:none;transition:border-color .2s;width:100%}.feedback-textarea:focus{background:#fff;border-color:#1c1c1e}.feedback-textarea::placeholder{color:#aeaeb2}.feedback-char-count{bottom:10px;color:#aeaeb2;font-size:12px;position:absolute;right:14px}.feedback-error{color:#ff3b30;font-size:14px;margin:0 0 12px;text-align:center}.feedback-submit-btn{background:#1c1c1e;border:none;border-radius:14px;color:#fff;cursor:pointer;font-family:inherit;font-size:17px;font-weight:600;margin-top:16px;max-width:480px;padding:16px;transition:background .2s,transform .15s;width:100%}.feedback-submit-btn:hover:not(:disabled){background:#3a3a3c;transform:translateY(-1px)}.feedback-submit-btn:disabled{cursor:not-allowed;opacity:.6}.feedback-success{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.feedback-success-illustration{margin-bottom:24px}.feedback-success h2{color:#1c1c1e;font-size:28px;font-weight:700;margin:0 0 10px}.feedback-success p{color:#8e8e93;font-size:15px;margin:0 0 32px}:root.dark-mode .feedback-page{background:#1c1c1e}:root.dark-mode .feedback-back-btn,:root.dark-mode .feedback-header h1{color:#fff}:root.dark-mode .feedback-back-btn:hover{background:#3a3a3c}:root.dark-mode .feedback-title{color:#fff}:root.dark-mode .feedback-textarea{background:#2c2c2e;border-color:#424245;color:#fff}:root.dark-mode .feedback-textarea:focus{background:#2c2c2e;border-color:#fff}:root.dark-mode .feedback-textarea::placeholder{color:#636366}:root.dark-mode .feedback-submit-btn{background:#fff;color:#000}:root.dark-mode .feedback-submit-btn:hover:not(:disabled){background:#e5e5ea}:root.dark-mode .feedback-success h2{color:#fff}.auth-container{background:#f2f2f7;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;justify-content:center;min-height:100vh;padding:20px}.auth-card,.auth-container{align-items:center;display:flex}.auth-card{background:#fff;border-radius:24px;box-shadow:0 4px 24px #00000014;flex-direction:column;max-width:380px;padding:40px 32px 36px;width:100%}.auth-logo{align-items:center;border-radius:14px;display:flex;height:60px;justify-content:center;margin-bottom:24px;overflow:hidden;width:60px}.auth-logo-img{border-radius:14px;height:100%;object-fit:cover;width:100%}.auth-title{color:#1c1c1e;font-size:26px;font-weight:700;letter-spacing:-.3px;margin:0 0 8px;text-align:center}.auth-subtitle{color:#8e8e93;font-size:15px;line-height:1.4;margin:0 0 28px;text-align:center}.auth-error{background:#ff3b3014;border:1px solid #ff3b3040;border-radius:12px;box-sizing:border-box;color:#ff3b30;font-size:14px;margin-bottom:16px;padding:12px 16px;text-align:center;width:100%}.auth-form{display:flex;flex-direction:column;gap:10px;width:100%}.auth-input{animation:authSlideIn .25s ease;background:#fff;border:1.5px solid #e5e5ea;border-radius:12px;box-sizing:border-box;color:#1c1c1e;font-family:inherit;font-size:16px;padding:15px 18px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.auth-input:focus{border-color:#1c1c1e;box-shadow:0 0 0 3px #1c1c1e0f;outline:none}.auth-input::placeholder{color:#c7c7cc}.auth-input-wrapper{position:relative;width:100%}.auth-input-wrapper .auth-input{padding-right:48px}.auth-password-toggle{align-items:center;background:none;border:none;color:#8e8e93;cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:14px;top:50%;transform:translateY(-50%);transition:color .2s}.auth-password-toggle:hover{color:#1c1c1e}.auth-password-toggle svg{height:18px;width:18px}:root.dark-mode .auth-password-toggle{color:#aeaeb2}.auth-cta,:root.dark-mode .auth-password-toggle:hover{color:#fff}.auth-cta{background:#1c1c1e;border:none;border-radius:12px;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;margin-top:4px;padding:15px 18px;transition:opacity .2s ease,transform .15s ease;width:100%}.auth-cta:hover:not(:disabled){opacity:.85;transform:translateY(-1px)}.auth-cta:active:not(:disabled){transform:translateY(0)}.auth-cta:disabled{cursor:not-allowed;opacity:.5}.auth-link-btn{background:none;border:none;color:#8e8e93;cursor:pointer;font-family:inherit;font-size:14px;padding:4px 0;text-align:center;transition:color .2s}.auth-link-btn:hover{color:#1c1c1e}.auth-toggle{background:none;border:none;color:#8e8e93;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;margin-top:2px;padding:8px 0 0;text-align:center;transition:color .2s}.auth-toggle:hover{color:#1c1c1e}@keyframes authSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}:root.dark-mode .auth-container{background:#1c1c1e}:root.dark-mode .auth-card{background:#2c2c2e;box-shadow:0 4px 24px #0000004d}:root.dark-mode .auth-logo{background:#3a3a3c;color:#fff}:root.dark-mode .auth-title{color:#fff}:root.dark-mode .auth-subtitle{color:#aeaeb2}:root.dark-mode .auth-input{background:#3a3a3c;border-color:#48484a;color:#fff}:root.dark-mode .auth-input:focus{border-color:#fff;box-shadow:0 0 0 3px #ffffff14}:root.dark-mode .auth-input::placeholder{color:#aeaeb2}:root.dark-mode .auth-cta{background:#fff;color:#000}:root.dark-mode .auth-cta:hover:not(:disabled){opacity:.88}:root.dark-mode .auth-link-btn{color:#aeaeb2}:root.dark-mode .auth-link-btn:hover{color:#fff}:root.dark-mode .auth-toggle{color:#aeaeb2}:root.dark-mode .auth-toggle:hover{color:#fff}@media (max-width:480px){.auth-container{align-items:flex-start;padding:60px 16px 16px}.auth-card{border-radius:20px;padding:32px 24px 28px}.auth-logo{height:52px;margin-bottom:20px;width:52px}.auth-title{font-size:22px}}.platform-selection-container{align-items:center;background:#1c1c1e;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;justify-content:center;min-height:100vh;padding:20px}.platform-selection-card{align-items:center;background:#2c2c2e;border-radius:20px;box-shadow:0 8px 24px #0000004d;display:flex;flex-direction:column;max-width:500px;padding:30px 24px;width:100%}.platform-selection-header{margin-bottom:28px;text-align:center;width:100%}.platform-selection-header h2{color:#fff;font-size:28px;font-weight:600;margin:0 0 12px}.platform-selection-header p{color:#8e8e93;font-size:14px;line-height:1.5;margin:0}.platform-selection-error{background:#ff3b301a;border:1px solid #ff3b30;border-radius:12px;box-sizing:border-box;color:#ff3b30;font-size:14px;margin-bottom:24px;padding:12px 16px;text-align:center;width:100%}.platform-selection-content{display:flex;flex-direction:column;gap:16px;margin-bottom:24px;width:100%}.platform-option{align-items:center;background:#3a3a3c;border:2px solid #424245;border-radius:16px;display:flex;flex-direction:row;gap:12px;padding:16px;transition:all .2s ease}.platform-option:hover{background:#424245;border-color:#555558}.platform-icon-wrapper{align-items:center;background:#0000;border-radius:12px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.platform-option-content{display:flex;flex:1 1;flex-direction:column;min-width:0}.apple-bg,.spotify-bg{background:#0000}.platform-icon{font-size:32px}.platform-logo-img{height:48px;object-fit:contain;width:48px}.platform-option h3{color:#fff;font-size:16px;font-weight:600;margin:0}.platform-option p{color:#8e8e93;font-size:12px;line-height:1.4;margin:0;text-align:left}.platform-button{align-items:center;border:none;border-radius:50px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;font-weight:600;height:34px;justify-content:center;min-width:100px;padding:10px 24px;text-rendering:optimizeLegibility;transition:all .2s ease;white-space:nowrap}.spotify-button{background:#1aa34a;height:34px;width:100px}.spotify-button:hover:not(:disabled){background:#1ed760;box-shadow:0 4px 12px #1db9544d;transform:translateY(-2px)}.apple-button{background:#ff3b30;height:34px;width:100px}.apple-button:hover:not(:disabled){background:#ff453a;box-shadow:0 4px 12px #ff3b304d;transform:translateY(-2px)}.platform-button:active:not(:disabled){transform:translateY(0)}.platform-button:disabled{cursor:not-allowed;opacity:.6}.platform-button.connected{background:#34c759;cursor:default}.platform-divider{align-items:center;color:#8e8e93;display:flex;font-size:13px;font-weight:500;justify-content:center;margin:12px 0;position:relative;width:100%}.platform-divider:after,.platform-divider:before{background:#424245;content:"";flex:1 1;height:1px}.platform-divider:before{margin-right:12px}.platform-divider:after{margin-left:12px}.platform-selection-actions{display:flex;flex-direction:column;gap:12px;width:100%}.platform-selection-primary-button,.platform-selection-secondary-button{border:none;border-radius:50px;cursor:pointer;font-family:inherit;font-size:15px;font-weight:600;padding:14px 20px;transition:all .2s ease;width:100%}.platform-selection-primary-button{background:#000;color:#fff}.platform-selection-primary-button:hover:not(:disabled){background:#1a1a1a;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.platform-selection-primary-button:active:not(:disabled){transform:translateY(0)}.platform-selection-primary-button:disabled{cursor:not-allowed;opacity:.6}.platform-selection-secondary-button{background:#3a3a3c;border:1px solid #424245;color:#fff}.platform-selection-secondary-button:hover:not(:disabled){background:#424245;border-color:#555558;box-shadow:0 2px 8px #0003;transform:translateY(-1px)}.platform-selection-secondary-button:active:not(:disabled){transform:translateY(0)}.platform-selection-secondary-button:disabled{cursor:not-allowed;opacity:.6}.platform-selection-note{color:#8e8e93;font-size:12px;line-height:1.5;margin-bottom:0;margin-top:16px;text-align:center}:root.dark-mode .platform-selection-container{background:#1c1c1e}:root.dark-mode .platform-selection-card{background:#2c2c2e;box-shadow:0 8px 24px #00000080}:root.dark-mode .platform-option{background:#3a3a3c;border-color:#424245}:root.dark-mode .platform-option:hover{background:#424245;border-color:#555558}@media (max-width:480px){.platform-selection-container{padding:16px}.platform-selection-card{max-width:100%;padding:30px 20px}.platform-selection-header h2{font-size:24px;margin-bottom:10px}.platform-selection-header p{font-size:13px}.platform-option{margin-bottom:8px;padding:20px}.platform-button{font-size:14px;padding:11px 16px}.platform-selection-primary-button,.platform-selection-secondary-button{font-size:14px;padding:12px 16px}}.pricing-page{background:#f2f2f7;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;min-height:100vh;padding:24px 20px 60px}.pricing-back-btn{align-items:center;background:none;border:none;color:#000;cursor:pointer;display:inline-flex;font-family:inherit;font-size:15px;font-weight:500;gap:4px;margin-bottom:24px;padding:8px 0}.pricing-back-btn:hover{opacity:.7}.pricing-header{margin-bottom:36px;text-align:center}.pricing-title{color:#1c1c1e;font-size:32px;font-weight:700;letter-spacing:-.5px;margin:0 0 8px}.pricing-subtitle{color:#6e6e73;font-size:17px;margin:0 0 24px}.pricing-toggle{background:#e5e5ea;border-radius:12px;display:inline-flex;gap:2px;padding:3px}.pricing-toggle-btn{align-items:center;background:none;border:none;border-radius:10px;color:#6e6e73;cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:500;gap:6px;padding:8px 20px;transition:all .2s ease}.pricing-toggle-btn.active{background:#fff;box-shadow:0 1px 4px #0000001f;color:#1c1c1e;font-weight:600}.pricing-save-badge{background:#34c759;border-radius:20px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.2px;padding:2px 7px}.pricing-cards{align-items:flex-start;display:flex;gap:16px;margin:0 auto;max-width:720px}.pricing-card{background:#fff;border-radius:20px;box-shadow:0 2px 12px #00000014;flex:1 1;padding:28px 24px 24px;position:relative}.pricing-card-pro{background:#000;box-shadow:0 8px 32px #00000040}.pricing-pro-badge{background:#000;border:2px solid #fff;border-radius:20px;color:#fff;font-size:12px;font-weight:700;left:50%;letter-spacing:1.5px;padding:3px 14px;position:absolute;text-transform:uppercase;top:-12px;transform:translateX(-50%)}.pricing-card-pro .pricing-pro-badge{background:#fff;border-color:#000;color:#000}.pricing-card-header{margin-bottom:20px}.pricing-plan-name{color:#1c1c1e;font-size:22px;font-weight:700;margin:0 0 6px}.pricing-card-pro .pricing-plan-name{color:#fff}.pricing-price{align-items:baseline;display:flex;gap:3px;margin-bottom:6px}.pricing-amount{color:#1c1c1e;font-size:42px;font-weight:700;letter-spacing:-1px}.pricing-card-pro .pricing-amount{color:#fff}.pricing-period{color:#6e6e73;font-size:16px;font-weight:400}.pricing-card-pro .pricing-period{color:#fff9}.pricing-plan-desc{color:#8e8e93;font-size:13px;margin:0}.pricing-card-pro .pricing-plan-desc{color:#ffffff8c}.pricing-features{border-top:1px solid #f0f0f0;list-style:none;margin:0 0 24px;padding:18px 0 0}.pricing-card-pro .pricing-features{border-top-color:#ffffff1f}.pricing-feature-row{align-items:flex-start;display:flex;gap:10px;padding:5px 0}.pricing-check{color:#34c759;flex-shrink:0;font-size:14px;font-weight:700;margin-top:1px}.pricing-check-pro{color:#34c759}.pricing-feature-text{color:#3a3a3c;display:flex;flex-direction:column;font-size:14px;gap:1px;line-height:1.4}.pricing-card-pro .pricing-feature-text{color:#ffffffe6}.pricing-feature-detail{color:#8e8e93;font-size:12px;line-height:1.3}.pricing-card-pro .pricing-feature-detail{color:#ffffff73}.pricing-cta{border:none;border-radius:12px;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;padding:15px;transition:all .2s ease;width:100%}.pricing-cta-free{background:#f2f2f7;color:#8e8e93;cursor:default}.pricing-cta-pro{background:#fff;color:#000}.pricing-cta-pro:hover:not(:disabled){background:#e5e5ea;transform:translateY(-1px)}.pricing-cta-pro:disabled{cursor:default;opacity:.6;transform:none}.pricing-error{color:#ff453a;font-size:13px;margin-bottom:10px;text-align:center}.pricing-footer-note{color:#8e8e93;font-size:13px;margin-top:28px;text-align:center}:root.dark-mode .pricing-page{background:#1c1c1e}:root.dark-mode .pricing-back-btn,:root.dark-mode .pricing-title{color:#fff}:root.dark-mode .pricing-toggle{background:#2c2c2e}:root.dark-mode .pricing-toggle-btn.active{background:#3a3a3c;color:#fff}:root.dark-mode .pricing-card{background:#2c2c2e;box-shadow:0 2px 12px #0000004d}:root.dark-mode .pricing-card-pro{background:#fff;box-shadow:0 8px 32px #ffffff1a}:root.dark-mode .pricing-card-pro .pricing-amount,:root.dark-mode .pricing-card-pro .pricing-plan-name{color:#1c1c1e}:root.dark-mode .pricing-card-pro .pricing-feature-detail,:root.dark-mode .pricing-card-pro .pricing-period,:root.dark-mode .pricing-card-pro .pricing-plan-desc{color:#6e6e73}:root.dark-mode .pricing-card-pro .pricing-feature-text{color:#1c1c1e}:root.dark-mode .pricing-card-pro .pricing-features{border-top-color:#e5e5ea}:root.dark-mode .pricing-amount,:root.dark-mode .pricing-plan-name{color:#fff}:root.dark-mode .pricing-feature-text{color:#ebebf5cc}:root.dark-mode .pricing-features{border-top-color:#3a3a3c}:root.dark-mode .pricing-cta-free{background:#3a3a3c;color:#6e6e73}:root.dark-mode .pricing-cta-pro{background:#000;color:#fff}:root.dark-mode .pricing-cta-pro:hover:not(:disabled){background:#1a1a1a}:root.dark-mode .pricing-pro-badge{border-color:#2c2c2e}:root.dark-mode .pricing-card-pro .pricing-pro-badge{background:#000;border-color:#fff;color:#fff}@media (max-width:600px){.pricing-cards{flex-direction:column}.pricing-title{font-size:26px}.pricing-card{padding:24px 20px 20px}}.pricing-skip-btn{background:none;border:none;color:#8e8e93;cursor:pointer;display:block;font-family:inherit;font-size:15px;margin:8px auto 0;padding:10px 20px;transition:color .2s}.pricing-skip-btn:hover{color:#1c1c1e}:root.dark-mode .pricing-skip-btn{color:#aeaeb2}:root.dark-mode .pricing-skip-btn:hover{color:#fff}.toast-container{display:flex;flex-direction:column;gap:10px;left:50%;pointer-events:none;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:10000}.toast{align-items:center;animation:toastSlideIn .3s ease,toastFadeOut .3s ease 2.7s;border-radius:16px;box-shadow:0 10px 40px #0003;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;gap:15px;max-width:500px;min-width:320px;padding:20px 30px;pointer-events:all}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastFadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.toast-success{background:#000;color:#fff}.toast-error{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.toast-info{background:#000;color:#fff}.toast-icon{align-items:center;background:#fff3;border-radius:50%;display:flex;flex-shrink:0;font-size:1.2rem;font-weight:700;height:32px;justify-content:center;width:32px}.toast-message{flex:1 1;font-size:1rem;font-weight:500;line-height:1.5}@media (max-width:600px){.toast{max-width:90vw;min-width:280px;padding:16px 24px}.toast-icon{font-size:1rem;height:28px;width:28px}.toast-message{font-size:.95rem}}.product-tour-overlay{animation:fadeIn .3s ease;background:#0000;bottom:0;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:10000}.product-tour-tooltip{animation:slideIn .25s ease;background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000002e;max-width:400px;padding:24px;pointer-events:auto;position:fixed;width:90%;z-index:10010}.product-tour-tooltip.center{animation:scaleIn .25s ease;left:50%;max-width:500px;top:50%;transform:translate(-50%,-50%)}.product-tour-tooltip:before{content:none}.product-tour-tooltip.arrow-down:before,.product-tour-tooltip.arrow-left:before,.product-tour-tooltip.arrow-right:before,.product-tour-tooltip.arrow-up:before{background:#fff;content:"";height:14px;position:absolute;width:14px}.product-tour-tooltip.arrow-up:before{border-radius:2px 0 0 0;left:28px;left:var(--arrow-x,28px);top:-7px;transform:translateX(-50%) rotate(45deg)}.product-tour-tooltip.arrow-down:before{border-radius:0 0 2px 0;bottom:-7px;left:28px;left:var(--arrow-x,28px);transform:translateX(-50%) rotate(45deg)}.product-tour-tooltip.arrow-right:before{border-radius:0 2px 0 0;right:-7px;top:24px;top:var(--arrow-y,24px);transform:translateY(-50%) rotate(45deg)}.product-tour-tooltip.arrow-left:before{border-radius:0 0 0 2px;left:-7px;top:24px;top:var(--arrow-y,24px);transform:translateY(-50%) rotate(45deg)}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.product-tour-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.product-tour-header h3{color:#1c1c1e;flex:1 1;font-size:20px;font-weight:700;margin:0;padding-right:16px}.tour-close-button{align-items:center;background:none;border:none;border-radius:50%;color:#8e8e93;cursor:pointer;display:flex;flex-shrink:0;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.tour-close-button:hover{background:#f2f2f7;color:#1c1c1e}.product-tour-body{margin-bottom:24px}.product-tour-body p{color:#3c3c43;font-size:15px;line-height:1.6;margin:0}.product-tour-footer{display:flex;flex-direction:column;gap:16px}.tour-progress{align-items:center;display:flex;gap:12px;justify-content:space-between}.tour-progress span{color:#8e8e93;font-size:13px;font-weight:500}.tour-progress-dots{display:flex;flex:1 1;gap:6px;justify-content:center}.tour-dot{background:#d1d1d6;border-radius:50%;height:8px;transition:all .3s;width:8px}.tour-dot.active{background:#000;transform:scale(1.3)}.tour-dot.completed{background:#34c759}.tour-buttons{display:flex;gap:12px;justify-content:flex-end}.tour-button{border:none;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;padding:10px 20px;transition:all .2s;white-space:nowrap}.tour-button.primary{background:#000;color:#fff}.tour-button.primary:hover{background:#1a1a1a;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.tour-button.primary:active{transform:translateY(0)}.tour-button.secondary{background:#f2f2f7;color:#1c1c1e}.tour-button.secondary:hover{background:#e5e5ea}.tour-button.secondary:active{background:#d1d1d6}:root.dark-mode .product-tour-tooltip,:root.dark-mode .product-tour-tooltip.arrow-down:before,:root.dark-mode .product-tour-tooltip.arrow-left:before,:root.dark-mode .product-tour-tooltip.arrow-right:before,:root.dark-mode .product-tour-tooltip.arrow-up:before{background:#2c2c2e}:root.dark-mode .product-tour-header h3{color:#fff}:root.dark-mode .tour-close-button{color:#aeaeb2}:root.dark-mode .tour-close-button:hover{background:#3a3a3c;color:#fff}:root.dark-mode .product-tour-body p{color:#e5e5ea}:root.dark-mode .tour-dot.active{background:#fff}:root.dark-mode .tour-button.primary{background:#fff;color:#000}:root.dark-mode .tour-button.primary:hover{background:#e5e5ea}:root.dark-mode .tour-button.secondary{background:#3a3a3c;color:#fff}:root.dark-mode .tour-button.secondary:hover{background:#424245}:root.dark-mode .tour-button.secondary:active{background:#4a4a4d}.tour-demo-playlist-container{background:#f5f5f7}:root.dark-mode .tour-demo-playlist-container{background:#1c1c1e}:root.dark-mode .tour-demo-playlist-card{background:#2c2c2e!important;border-color:#424245!important}:root.dark-mode .tour-demo-playlist-card h2{color:#fff!important}:root.dark-mode .tour-demo-playlist-card .playlist-meta{color:#aeaeb2!important}:root.dark-mode .tour-demo-playlist-card .track-name{color:#fff!important}:root.dark-mode .tour-demo-playlist-card .track-artist{color:#aeaeb2!important}:root.dark-mode .tour-demo-edit-button{background:#3a3a3c!important;color:#fff!important}:root.dark-mode .tour-demo-edit-modal{background:#2c2c2e!important;color:#fff!important}:root.dark-mode .tour-demo-edit-modal h2,:root.dark-mode .tour-demo-edit-modal h3{color:#fff!important}:root.dark-mode .tour-demo-edit-modal p{color:#aeaeb2!important}:root.dark-mode .modal-section{background:#0000!important}:root.dark-mode .tour-demo-select{background-color:#3a3a3c!important;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23aeaeb2' d='M6 9 1 4h10z'/%3E%3C/svg%3E")!important;background-position:right 14px center!important;background-repeat:no-repeat!important;border-color:#424245!important;color:#fff!important}:root.dark-mode .tour-demo-chat-input{align-items:center!important;background:#2c2c2e!important;border:1px solid #424245!important;border-radius:20px!important;display:flex!important;gap:12px!important;padding:12px 16px!important;position:relative!important}:root.dark-mode .tour-demo-chat-input input{background:#0000!important;border:none!important;color:#fff!important}@media (max-width:768px){.product-tour-tooltip{max-width:calc(100% - 32px);padding:20px}.product-tour-tooltip.center{bottom:auto!important;left:50%!important;max-width:calc(100% - 32px);top:50%!important;transform:translate(-50%,-50%)!important}.product-tour-header h3{font-size:18px}.product-tour-body p{font-size:14px}.tour-buttons{flex-direction:row;gap:8px}.tour-button{flex:1 1;font-size:14px;padding:12px 16px}.tour-progress{align-items:flex-start;flex-direction:column}.tour-progress-dots{width:100%}.track-reaction-button{align-items:center;display:flex;justify-content:center;min-height:44px;min-width:44px;padding:12px!important}}*{box-sizing:border-box;margin:0;padding:0}body{background:#fff;color:#1c1c1e;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.playlist-generator{background:#fff!important;min-height:100vh;padding:0!important;padding-bottom:0}.top-nav{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffc;border-bottom:.5px solid #0000001a;height:50px;justify-content:space-between;left:0;padding:0 20px;position:fixed;right:0;top:0;z-index:1000}.nav-left,.top-nav{align-items:center;display:flex}.nav-left{flex:1 1}.nav-logo{border-radius:8px;display:block;height:32px;object-fit:cover;width:32px}.nav-center{align-items:center;display:flex;flex:2 1;gap:8px;justify-content:center}.nav-tabs-center{display:flex!important;gap:8px}.nav-tab-item{background:none;border:none;border-radius:8px;color:#8e8e93;cursor:pointer;font-family:inherit;font-size:15px;font-weight:500;padding:6px 16px;transition:all .2s ease}.nav-tab-item:hover{background:#0000000d;color:#1c1c1e}.nav-tab-item.active{color:#1c1c1e;font-weight:600}.nav-right{display:flex;flex:1 1;justify-content:flex-end;position:relative}.profile-button-apple{border-radius:50%;overflow:hidden;transition:all .2s ease}.profile-button-apple:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.05)}.profile-button-apple svg{height:18px;width:18px}.profile-dropdown-topnav{animation:fadeIn .15s ease;background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000026;min-width:200px;overflow:hidden;position:absolute;right:0;top:44px;z-index:2000}.dropdown-user-info{background:#f2f2f7;padding:16px;text-align:center}.dropdown-profile-image{border-radius:50%;height:48px;margin-bottom:8px;width:48px}.dropdown-user-name{color:#1c1c1e;font-size:16px;font-weight:600;margin-bottom:2px}.dropdown-user-email{color:#8e8e93;font-size:13px}.dropdown-divider{background:#e5e5ea;height:1px;margin:0}.dropdown-item{align-items:center;background:none;border:none;color:#1c1c1e;cursor:pointer;display:flex;font-family:inherit;font-size:15px;gap:12px;padding:12px 16px;text-align:left;transition:background .15s ease;width:100%}.dropdown-item:hover{background:#f2f2f7}.dropdown-item:active{background:#e5e5ea}.dropdown-item.logout{color:#ff3b30}.dropdown-item.logout:hover{background:#fff5f5}.dropdown-icon{font-size:18px;text-align:center;width:24px}.main-content{background:#fff!important;display:block!important;flex-direction:column!important;gap:0!important;margin:0!important;max-width:100%!important;min-height:100vh!important;padding-bottom:40px!important;padding-top:50px!important;width:100%!important}.page-title{color:#1c1c1e;display:block;font-size:34px;font-weight:700;letter-spacing:-.5px;margin:0;padding:20px 20px 10px;width:100%}.section-header{align-items:flex-start;display:flex;justify-content:space-between;padding:12px 0 6px}.section-header>div{display:flex;flex-direction:column;width:100%}.section-title{color:#1c1c1e;font-size:22px;font-weight:700;letter-spacing:-.3px;margin:0;padding:0}.section-subtitle{color:#8e8e93;font-size:15px;font-weight:400;margin:4px 0 0;padding:0}.section-arrow{color:#8e8e93;font-size:20px;font-weight:600}.horizontal-scroll-section{box-sizing:border-box;margin-bottom:32px;padding:0 20px;width:100%}.horizontal-scroll-container{-webkit-overflow-scrolling:touch;display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory}.horizontal-scroll-container::-webkit-scrollbar{display:none}.playlist-card-apple{flex:0 0 auto;scroll-snap-align:start;width:180px}.playlist-card-image{align-items:center;background:#000;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;font-size:48px;height:180px;justify-content:center;margin-bottom:10px;overflow:hidden;width:180px}.playlist-card-image img{height:100%;object-fit:cover;width:100%}.playlist-card-title{color:#1c1c1e;font-size:15px;font-weight:600;line-height:1.3;margin-bottom:4px}.playlist-card-subtitle{color:#8e8e93;font-size:13px;font-weight:400}.artist-card-apple{flex:0 0 auto;position:relative;scroll-snap-align:start;text-align:center;width:140px}.artist-card-image{align-items:center;background:#f2f2f7;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;height:140px;justify-content:center;margin-bottom:10px;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:140px}.artist-card-apple:hover .artist-card-image{box-shadow:0 8px 24px #00000026}.artist-card-image img{height:100%;object-fit:cover;width:100%}.artist-card-image:after{align-items:center;background:#000000d9;border-radius:50%;color:#fff;content:"+";display:flex;font-size:28px;font-weight:300;height:50px;justify-content:center;left:50%;line-height:1;opacity:0;padding-bottom:2px;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .3s ease,opacity .3s ease;width:50px}.artist-card-apple:hover .artist-card-image:after{opacity:1;transform:translate(-50%,-50%) scale(1)}.artist-card-name{color:#1c1c1e;font-size:14px;font-weight:600;transition:color .2s ease}.artist-card-apple:hover .artist-card-name{color:#000}.draft-cards-container{-webkit-overflow-scrolling:touch;display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory}.draft-cards-container::-webkit-scrollbar{display:none}.draft-card-apple{flex:0 0 auto;position:relative;scroll-snap-align:start;text-align:center;width:140px}.draft-card-image{align-items:center;background:#f2f2f7;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;height:140px;justify-content:center;margin-bottom:10px;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:140px}.draft-card-apple:hover .draft-card-image{box-shadow:0 8px 24px #00000026;transform:scale(1.05)}.draft-card-image img{height:100%;object-fit:cover;width:100%}.draft-card-placeholder{color:#8e8e93;height:100%;width:100%}.draft-card-image:after,.draft-card-placeholder{align-items:center;display:flex;justify-content:center}.draft-card-image:after{background:#000000d9;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/%3E%3Cpath d='M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:24px 24px;border-radius:50%;content:"";height:50px;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .3s ease,opacity .3s ease;width:50px}.draft-card-apple:hover .draft-card-image:after{opacity:1;transform:translate(-50%,-50%) scale(1)}.draft-card-info{align-items:center;display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.draft-card-name{color:#1c1c1e;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;transition:color .2s ease;white-space:nowrap;width:100%}.draft-card-apple:hover .draft-card-name{color:#000}.draft-card-meta{color:#8e8e93;font-size:12px;white-space:nowrap}.draft-card-delete{align-items:center;background:#ffffffe6;border:1px solid #e5e5ea;border-radius:50%;color:#ff3b30;cursor:pointer;display:none;font-size:20px;height:28px;justify-content:center;position:absolute;right:8px;top:8px;transition:all .2s ease;width:28px}.draft-card-apple:hover .draft-card-delete{display:flex}.draft-card-delete:hover{background:#ff3b30;border-color:#ff3b30;color:#fff}.unfinished-playlists-section{box-sizing:border-box;margin-bottom:4px;padding:0 20px;width:100%}.tab-bar{align-items:flex-start;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffc;border-top:.5px solid #0000001a;bottom:0;display:flex;height:83px;justify-content:space-around;left:0;padding-bottom:34px;padding-top:8px;position:fixed;right:0;z-index:1000}.tab-item{align-items:center;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:4px 16px;transition:all .2s ease}.tab-icon{color:#8e8e93;font-size:24px}.tab-label{color:#8e8e93;font-size:10px;font-weight:500}.tab-item.active .tab-icon,.tab-item.active .tab-label,.tab-item:hover .tab-icon,.tab-item:hover .tab-label{color:#000}.profile-button-apple{align-items:center;background:#000;border:none;border-radius:16px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:transform .2s ease;width:32px}.profile-button-apple:hover{transform:scale(1.1)}.profile-button-apple svg{fill:#fff;height:20px;width:20px}.search-bar-apple{align-items:center;background:#f2f2f7;border-radius:10px;box-sizing:border-box;display:flex;gap:8px;margin:0 20px 20px;padding:10px 16px;width:calc(100% - 40px)}.search-bar-apple input{background:none;border:none;color:#1c1c1e;font-size:17px;outline:none;width:100%}.search-bar-apple input::placeholder{color:#8e8e93}.search-bar-apple svg{fill:#8e8e93;height:18px;width:18px}.chat-input-container-apple{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-top:.5px solid #0000001a;bottom:0;left:0;padding:12px 20px;position:fixed;right:0;z-index:999}.chat-input-wrapper{align-items:center;background:#f2f2f7;border-radius:20px;display:flex;gap:12px;padding:8px 16px}.prompt-tooltip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2c2c2efa;border-radius:12px;bottom:35px;box-shadow:0 8px 24px #0000004d;color:#fff;font-size:13px;left:0;line-height:1.5;max-width:calc(100vw - 40px);padding:16px;position:absolute;width:320px;z-index:10002}.prompt-tooltip:after{border:8px solid #0000;border-top-color:#2c2c2efa;content:"";left:20px;position:absolute;top:100%}.prompt-tooltip-header{color:#4facfe;font-size:14px;font-weight:600;margin-bottom:12px}.prompt-tooltip-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.prompt-tooltip-list li{color:#e5e5e7;padding-left:0}.prompt-tooltip-list li strong{color:#fff;font-weight:600}.chat-input-wrapper input{background:none;border:none;color:#1c1c1e;flex:1 1;font-size:16px;outline:none}.chat-input-wrapper input::placeholder{color:#8e8e93}.chat-send-button{align-items:center;background:#000;border:none;border-radius:50%;cursor:pointer;display:flex;height:32px;justify-content:center;margin:0;min-height:32px;min-width:32px;overflow:visible;padding:0;transition:background .2s ease;width:32px}.chat-send-button:hover{background:#e5e5e5}.chat-send-button:disabled{background:#c4c4c6;cursor:not-allowed}.chat-send-button svg{fill:#fff;stroke:#fff;height:16px;width:16px}.chat-send-button svg path{fill:#fff;stroke:#fff}.options-menu-apple{animation:fadeInUp .2s ease;background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000026;padding:16px;width:280px;z-index:10001}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.options-menu-item{align-items:center;background:none;border:none;border-radius:10px;color:#1c1c1e;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:12px;padding:14px 16px;text-align:left;transition:all .2s ease;width:100%}.options-menu-item:hover{background:#f2f2f7}.options-menu-apply-button{background:#000;border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;margin-top:12px;padding:12px 16px;transition:all .2s ease;width:100%}.options-menu-apply-button:hover{background:#1a1a1a;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.options-menu-apply-button:active{transform:translateY(0)}.playlist-results-apple{padding:20px}.track-item-apple{align-items:center;border-bottom:.5px solid #0000001a;display:flex;gap:12px;padding:12px 0}.track-item-apple:last-child{border-bottom:none}.track-image img{height:100%;object-fit:cover;width:100%}.empty-state-apple{padding:60px 40px;text-align:center}.empty-state-icon{font-size:64px;margin-bottom:16px}.empty-state-title{color:#1c1c1e;font-size:24px;font-weight:600;margin-bottom:8px}.empty-state-description{color:#8e8e93;font-size:16px;line-height:1.4}.button-primary-apple{background:#000;border:none;border-radius:12px;color:#000;cursor:pointer;font-size:17px;font-weight:600;padding:14px 24px;transition:all .2s ease}.button-primary-apple:hover{background:#e5e5e5;transform:translateY(-1px)}.button-primary-apple:disabled{background:#c4c4c6;cursor:not-allowed;transform:none}.button-secondary-apple{background:#f2f2f7;border:none;border-radius:12px;color:#1c1c1e;cursor:pointer;font-size:17px;font-weight:600;padding:14px 24px;transition:all .2s ease}.button-secondary-apple:hover{background:#e5e5ea}.loading-spinner-apple{align-items:center;display:flex;gap:2px;height:16px;justify-content:center;width:16px}.loading-spinner-apple>div{background-color:#000;border-radius:1px;height:12px;width:2px;will-change:transform,opacity}@keyframes waveBars{0%,to{opacity:.5;transform:scaleY(.4)}50%{opacity:1;transform:scaleY(1)}}.wave-bar-1{animation:waveBars .8s ease-in-out infinite!important;animation-delay:-.4s!important}.wave-bar-2{animation:waveBars .8s ease-in-out infinite!important;animation-delay:-.2s!important}.wave-bar-3{animation:waveBars .8s ease-in-out infinite!important;animation-delay:0s!important}@media (max-width:768px){.page-title{font-size:28px;padding:16px 16px 8px}.section-title{font-size:20px}.playlist-card-apple{width:150px}.playlist-card-image{height:150px;width:150px}.artist-card-apple{width:120px}.artist-card-image{height:120px;width:120px}.draft-card-apple{width:120px}.draft-card-image{height:120px;width:120px}.horizontal-scroll-section{padding:0 16px}.chat-input-wrapper{background:#f2f2f7;border-radius:20px;gap:12px;padding:8px 16px}.chat-input-wrapper input{font-size:16px}.chat-send-button{height:32px;min-height:32px;min-width:32px;width:32px}}@media (prefers-color-scheme:dark){body{background:#000;color:#fff}.playlist-generator{background:#000!important}.top-nav{background:#000c;border-bottom-color:#ffffff1a}.main-content{background:#000}.page-title,.section-title{color:#fff}.section-subtitle{color:#8e8e93}.artist-card-name,.playlist-card-title{color:#fff}.tab-bar{background:#000c;border-top-color:#ffffff1a}.search-bar-apple{background:#1c1c1e}.search-bar-apple input{color:#fff}.chat-input-container-apple{background:#1c1c1ef2;border-top-color:#424245}.chat-input-wrapper{background:#3a3a3c}.chat-input-wrapper input{background:#0000;color:#fff}.options-menu-apple{background:#2c2c2e}.options-menu-item{color:#fff}.options-menu-item:hover{background:#3a3a3c}.track-name{color:#fff}.button-secondary-apple{background:#2c2c2e;color:#fff}.button-secondary-apple:hover{background:#3a3a3c}}:root.dark-mode{color-scheme:dark}:root.dark-mode body{background:#1c1c1e;color:#fff}:root.dark-mode .playlist-generator{background:#1c1c1e!important;color:#fff}:root.dark-mode .top-nav{background:#1c1c1ee6;border-bottom-color:#ffffff1a}:root.dark-mode .profile-dropdown-topnav{background:#2c2c2e}:root.dark-mode .dropdown-item{color:#fff}:root.dark-mode .dropdown-item:hover{background:#3a3a3c}:root.dark-mode .main-content{background:#1c1c1e!important;color:#1c1c1e!important}:root.dark-mode .page-title{color:#fff}:root.dark-mode .search-bar-apple input{background:#2c2c2e;border-color:#424245;color:#fff}:root.dark-mode .search-bar-apple svg{color:#aeaeb2}:root.dark-mode .search-result-name{color:#fff}:root.dark-mode .search-result-meta{color:#aeaeb2}:root.dark-mode .section-title{color:#fff}:root.dark-mode .chat-input-container-apple{background:#1c1c1ef2;border-top-color:#424245}:root.dark-mode .chat-input-wrapper{background:#3a3a3c}:root.dark-mode .chat-input-wrapper input{background:#0000;color:#fff}:root.dark-mode .chat-input-wrapper input::placeholder{color:#aeaeb2}:root.dark-mode .chat-send-button{align-items:center!important;background:#fff!important;border:none!important;border-radius:50%!important;cursor:pointer!important;display:flex!important;height:32px!important;justify-content:center!important;margin:0!important;min-height:32px!important;min-width:32px!important;overflow:visible!important;padding:0!important;transition:background .2s ease!important;width:32px!important}:root.dark-mode .chat-send-button:hover{background:#e5e5e5}:root.dark-mode .chat-send-button:disabled{background:#8e8e93;cursor:not-allowed}:root.dark-mode .chat-send-button svg{height:16px!important;width:16px!important}:root.dark-mode .chat-send-button svg,:root.dark-mode .chat-send-button svg path{fill:#000!important;stroke:#000!important}:root.dark-mode .options-menu-apple{background:#2c2c2e}:root.dark-mode .options-menu-item{color:#fff}:root.dark-mode .options-menu-item:hover{background:#3a3a3c}:root.dark-mode .options-menu-apply-button{background:#fff;color:#000}:root.dark-mode .options-menu-apply-button:hover{background:#e5e5e5}:root.dark-mode .tab-bar{background:#1c1c1ee6;border-top-color:#ffffff1a}:root.dark-mode .tab-item{color:#aeaeb2}:root.dark-mode .tab-item.active{color:#000}:root.dark-mode .modal-overlay{background:#000000b3}:root.dark-mode .playlist-modal-content{background:#2c2c2e;color:#fff}:root.dark-mode .playlist-modal-body,:root.dark-mode .playlist-modal-tracks{background:#2c2c2e}:root.dark-mode .playlist-modal-header{border-bottom-color:#424245}:root.dark-mode .playlist-modal-header h2{color:#fff}:root.dark-mode .playlist-modal-description{border-bottom-color:#424245;color:#aeaeb2}:root.dark-mode .playlist-modal-tracks-header{background:#2c2c2e}:root.dark-mode .playlist-modal-tracks-header h3{color:#fff}:root.dark-mode .playlist-modal-tracks-list{background:#2c2c2e;border:1px solid #424245}:root.dark-mode .playlist-modal-track-item{background:#2c2c2e;border-bottom-color:#424245;color:#fff}:root.dark-mode .playlist-modal-track-item.selected{background:#2c2c2e}:root.dark-mode .playlist-modal-track-item.selected:hover,:root.dark-mode .playlist-modal-track-item:hover{background:#3a3a3c}:root.dark-mode .playlist-modal-chat-below{background:#2c2c2e;border-top-color:#424245}:root.dark-mode .playlist-modal-chat{background:#2c2c2e;border-left-color:#424245}:root.dark-mode .playlist-modal-chat-below .chat-input-container{background:#424245;border-color:#565658}:root.dark-mode .playlist-modal-footer{border-top-color:#424245}:root.dark-mode .track-name-modal{color:#fff}:root.dark-mode .track-artist-modal{color:#aeaeb2}:root.dark-mode .modal-button-primary{background:#fff;color:#000}:root.dark-mode .modal-button-primary:hover{background:#e5e5e5}:root.dark-mode .modal-button-secondary{background:#3a3a3c;color:#fff}:root.dark-mode .modal-button-secondary:hover{background:#424245}:root.dark-mode .artist-settings-modal-content{background:#2c2c2e;color:#fff}:root.dark-mode .artist-modal-image-container{background:#3a3a3c}:root.dark-mode .account-modal-content{background:#2c2c2e;color:#fff}:root.dark-mode .account-list{background:#3a3a3c}:root.dark-mode .account-list-item{border-bottom-color:#424245;color:#fff}:root.dark-mode .account-list-label{color:#fff}:root.dark-mode .account-list-value{color:#aeaeb2}:root.dark-mode .account-input{background:#3a3a3c;border-color:#424245;color:#fff}:root.dark-mode .account-button-primary{background:#fff;color:#000}:root.dark-mode .account-button-primary:hover{background:#e5e5e5}:root.dark-mode .account-error-message{background:#c70039;color:#fff}:root.dark-mode .draft-playlist-widget{background:#2c2c2e;border-color:#424245}:root.dark-mode .draft-widget-header,:root.dark-mode .draft-widget-name{color:#fff}:root.dark-mode .draft-widget-meta{color:#aeaeb2}:root.dark-mode .resume-button{background:#fff;color:#000}:root.dark-mode .resume-button:hover{background:#e5e5e5}:root.dark-mode .discard-button{background:#3a3a3c;color:#fff}:root.dark-mode .discard-button:hover{background:#424245}:root.dark-mode .nav-center,:root.dark-mode .nav-left,:root.dark-mode .nav-right{color:#fff}:root.dark-mode .profile-button-apple{background:#fff}:root.dark-mode .profile-button-apple svg{fill:#000}:root.dark-mode .profile-button-apple:hover{box-shadow:0 2px 8px #fbbf2480}:root.dark-mode .dropdown-user-info{background:#3a3a3c}:root.dark-mode .dropdown-user-name{color:#fff}:root.dark-mode .dropdown-user-email{color:#aeaeb2}:root.dark-mode .dropdown-divider{background:#424245}:root.dark-mode .dropdown-item.logout{color:#ff3b30}:root.dark-mode .dropdown-item.logout:hover{background:#ff3b301a}:root.dark-mode .section-header{color:#fff}:root.dark-mode .section-arrow,:root.dark-mode .section-subtitle{color:#aeaeb2}:root.dark-mode .horizontal-scroll-section,:root.dark-mode .playlist-card-title{color:#fff}:root.dark-mode .playlist-card-subtitle{color:#aeaeb2}:root.dark-mode .artist-card-apple,:root.dark-mode .artist-card-name{color:#fff}:root.dark-mode .artist-card-meta{color:#aeaeb2}:root.dark-mode .draft-card-image{background:#2c2c2e}:root.dark-mode .draft-card-placeholder{color:#aeaeb2}:root.dark-mode .draft-card-name{color:#fff}:root.dark-mode .draft-card-meta{color:#aeaeb2}:root.dark-mode .draft-card-delete{background:#0000004d;border-color:#424245}:root.dark-mode .draft-card-delete:hover{background:#ff3b30;border-color:#ff3b30}:root.dark-mode .empty-state-apple{color:#fff}:root.dark-mode .empty-state-icon{color:#aeaeb2}:root.dark-mode .empty-state-title{color:#fff}:root.dark-mode .empty-state-description{color:#aeaeb2}:root.dark-mode .track-item-apple{border-bottom-color:#424245}:root.dark-mode .track-item-apple:hover{background:#2c2c2e}:root.dark-mode .search-results-dropdown{background:#2c2c2e;border-color:#424245}:root.dark-mode .search-result-item{border-bottom-color:#424245;color:#fff}:root.dark-mode .search-result-item:hover{background:#3a3a3c}:root.dark-mode .playlist-results-apple{background:#1c1c1e}:root.dark-mode .button-secondary-apple{background:#2c2c2e;border-color:#424245;color:#fff}:root.dark-mode .button-secondary-apple:hover{background:#3a3a3c}:root.dark-mode .button-primary-apple{background:#fff;color:#000}:root.dark-mode .button-primary-apple:hover{background:#e5e5e5}:root.dark-mode .nav-tab-item{color:#aeaeb2}:root.dark-mode .nav-tab-item:hover{background:#ffffff1a;color:#fff}:root.dark-mode .nav-tab-item.active{color:#fff}.account-modal-content{animation:fadeIn .2s ease-out;background:#f7fafc;border-radius:20px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.account-modal-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:16px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.account-modal-header h2{color:#1a202c;flex:1 1;font-size:20px;font-weight:600;margin:0;text-align:center}.account-back-button{align-items:center;background:none;border:none;color:#000;cursor:pointer;display:flex;font-size:28px;font-weight:300;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.account-back-button:hover{opacity:.7}.account-error-message{background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:14px;margin:16px 20px;padding:12px 16px;text-align:center}.account-modal-body{min-height:calc(100vh - 60px);padding:20px}.account-list{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.account-list-item{align-items:center;background:#fff;border:none;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;font-family:inherit;justify-content:space-between;padding:16px 20px;text-align:left;transition:background .2s ease;width:100%}.account-list-item:last-child{border-bottom:none}.account-list-item:hover{background:#f7fafc}.account-list-item:active{background:#edf2f7}.account-list-label{color:#1a202c;font-size:16px;font-weight:400}.account-list-value{align-items:center;color:#718096;display:flex;font-size:15px;gap:8px}.account-arrow{color:#cbd5e0;font-size:24px;font-weight:300}.account-form{gap:20px}.account-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#4a5568;font-size:14px;font-weight:500}.account-input{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-sizing:border-box;color:#1a202c;font-family:inherit;font-size:16px;padding:14px 16px;transition:all .2s ease;width:100%}.account-input:focus{border-color:#000;box-shadow:0 0 0 3px #667eea1a;outline:none}.account-input::placeholder{color:#a0aec0}.account-select{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-sizing:border-box;color:#1a202c;cursor:pointer;font-family:inherit;font-size:16px;padding:14px 16px;transition:all .2s ease;width:100%}.account-select:focus{border-color:#000;box-shadow:0 0 0 3px #667eea1a;outline:none}.account-button-primary{background:#000;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:8px;padding:14px 16px;transition:all .2s ease;width:100%}.account-button-primary:hover:not(:disabled){background:#5a67d8;box-shadow:0 4px 12px #667eea40;transform:translateY(-1px)}.account-button-primary:active:not(:disabled){transform:translateY(0)}.account-button-primary:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.account-modal-content{max-width:100%;width:100%}.account-modal-header{padding:14px 16px}.account-modal-header h2{font-size:18px}.account-modal-body{padding:16px}.account-list-item{padding:14px 16px}.account-list-label{font-size:15px}.account-list-value{font-size:14px}.account-button-primary,.account-input,.account-select{font-size:15px;padding:12px 14px}}@media (prefers-color-scheme:dark){.account-modal-content{background:#1a202c}.account-modal-header{background:#2d3748;border-bottom-color:#4a5568}.account-modal-header h2{color:#f7fafc}.account-back-button{color:#000}.account-modal-body{background:#1a202c}.account-list{background:#2d3748}.account-list-item{background:#2d3748;border-bottom-color:#4a5568}.account-list-item:hover{background:#374151}.account-list-item:active{background:#4a5568}.account-list-label{color:#f7fafc}.account-list-value{color:#a0aec0}.account-arrow{color:#718096}.form-group label{color:#cbd5e0}.account-input,.account-select{background:#2d3748;border-color:#4a5568;color:#f7fafc}.account-input:focus,.account-select:focus{background:#2d3748;border-color:#000}.account-input::placeholder{color:#718096}.account-button-primary{background:#000}.account-button-primary:hover:not(:disabled){background:#5a67d8}}:root{--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:20px}html{scrollbar-gutter:stable}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{min-height:100vh}
/*# sourceMappingURL=main.15bcd2c5.css.map*/