*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial;
}

body{
background:#121212;
color:white;
display:flex;
}

/* Sidebar */

.sidebar{
width:220px;
height:100vh;
background:#000;
padding:20px;
position:fixed;
}

.logo{
color:#1db954;
margin-bottom:30px;
}

.sidebar ul{
list-style:none;
}

.sidebar li{
padding:12px 0;
cursor:pointer;
opacity:0.8;
}

.sidebar li:hover{
opacity:1;
}

/* Main */

.main{
margin-left:240px;
padding:20px;
width:100%;
}

/* Header */

.header{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:20px;
}

.header input{
padding:10px;
border-radius:20px;
border:none;
width:250px;
}

.profile{
display:flex;
align-items:center;
gap:10px;
}

.profile img{
border-radius:50%;
}

/* Cards */

.horizontal-scroll{
display:flex;
gap:20px;
overflow-x:auto;
margin-bottom:30px;
margin-top: 20px;
}

.grid{
display:grid;
grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
gap:20px;
margin-bottom:30px;
}

.card{
background:#1e1e1e;
padding:10px;
border-radius:10px;
transition:0.3s;
}

.card img{
width:100%;
border-radius:8px;
}

.card:hover{
transform:scale(1.05);
}

/* Artists */

.artists{
display:flex;
gap:20px;
}

.artists img{
width:80px;
height:80px;
border-radius:50%;
}

/* Player */

.player{
position:fixed;
bottom:0;
left:0;
width:100%;
background:#181818;
display:flex;
align-items:center;
justify-content:space-between;
padding:10px 20px;
}

.song-info{
display:flex;
align-items:center;
gap:10px;
}

.song-info img{
border-radius:5px;
}

.controls button{
background:none;
border:none;
color:white;
font-size:18px;
margin:0 5px;
cursor:pointer;
}

#progress{
width:300px;
}

.volume{
display:flex;
align-items:center;
gap:5px;
}
:root {
  --bg-color: #121212;
  --sidebar-bg: #000;
  --card-bg: #1e1e1e;
  --player-bg: #181818;
  --text-color: #ffffff;
  --accent-color: #1db954;
}

body {
  background: var(--bg-color);
  color: var(--text-color);
}

.sidebar {
  background: var(--sidebar-bg);
}

.card {
  background: var(--card-bg);
}

.player {
  background: var(--player-bg);
}

.logo {
  color: var(--accent-color);
}

/* Light theme overrides */
body.light-mode {
  --bg-color: #f0f0f0;
  --sidebar-bg: #ffffff;
  --card-bg: #e0e0e0;
  --player-bg: #f5f5f5;
  --text-color: #121212;
  --accent-color: #1db954;
}
#darkModeToggle{
   background-color: transparent;
   border: none;
   font-size: 18px;
}
@media (max-width: 768px) {
  .sidebar { width: 60px; padding: 10px; }
  .sidebar ul li { font-size: 12px; }
  .main { margin-left: 70px; padding: 10px; }
  .header input { width: 150px; }
  #progress { width: 200px; }
  .artists img { width: 60px; height: 60px; }
}
@media (max-width: 480px) {
  .header { flex-direction: column; gap: 10px; }
  .controls { margin-top: 5px; }
  #progress { width: 150px; }
}