/* Global Styles */ :root { --primary-color: #1DB954; --secondary-color: #191414; --background-color: #121212; --sidebar-color: #000000; --player-color: #181818; } body { margin: 0; padding: 0; box-sizing: border-box; background-color: var(--background-color); color: white; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; height: 100vh; overflow: hidden; } /* Scrollbar Styling */ .playlist-container::-webkit-scrollbar { width: 8px; } .playlist-container::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.05); border-radius: 4px; } .playlist-container::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.1); border-radius: 4px; } .playlist-container::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.2); } /* Track Item Styles */ .track-item { transition: all 0.2s ease; cursor: grab; } .track-item:active { cursor: grabbing; } .track-item.drag-over { border-top: 2px solid var(--primary-color); } .track-item.drag-over-after { border-bottom: 2px solid var(--primary-color); } /* Progress Bar Customization */ .progress-bar { -webkit-appearance: none; appearance: none; height: 4px; background: rgba(255, 255, 255, 0.3); outline: none; border-radius: 2px; } .progress-bar::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 12px; height: 12px; border-radius: 50%; background: var(--primary-color); cursor: pointer; opacity: 0; transition: opacity 0.2s; } .progress-bar:hover::-webkit-slider-thumb { opacity: 1; } /* Volume Slider Customization */ .volume-slider { -webkit-appearance: none; appearance: none; height: 4px; background: rgba(255, 255, 255, 0.3); outline: none; border-radius: 2px; } .volume-slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 12px; height: 12px; border-radius: 50%; background: white; cursor: pointer; } /* Button Hover Effects */ button:hover { transform: scale(1.05); transition: transform 0.2s; } /* Responsive Design */ @media (max-width: 768px) { .playlist-header { display: none; } .track-item { padding: 1rem 0; } #player { padding: 1rem; } #player .grid { grid-template-columns: 1fr; gap: 1rem; } #player > div:nth-child(2) { order: 3; } #player > div:nth-child(3) { order: 2; } }