@import url('https://fonts.googleapis.com/css2?family=Anton&family=Funnel+Display:wght@300..800&family=Itim&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Libre+Franklin:ital,wght@0,100..900;1,100..900&family=Lilita+One&family=Luckiest+Guy&family=Nunito:ital,wght@0,200..1000;1,200..1000&family=Parkinsans:wght@300..800&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap');
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  body {
    font-family: Arial, sans-serif;
    background-color: #121212;
    color: white;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    list-style: none;
    height: 100vh;
  }
  
  .container {
    display: flex;
    flex: 1;
    overflow: hidden;
  }
  
  /* Sidebar */
  .sidebar {
    width: 240px;
    background-color: #1e1e1e;
    padding: 20px;
    display: flex;
    flex-direction: column;
  }
  
  .logo {
    font-family: Lilita One, sans-serif;
    font-size: 32px;
    font-weight: 300;
    background: linear-gradient( #6d779a, #1319ab);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: fadeSlideIn 1.5s ease-in-out forwards;
    opacity: 0;
    color: blue;
    margin-left: 10px;
    margin-top: 20px;
    transform: translateY(-20px);
    letter-spacing: 1.5px;
    margin-bottom: 40px;
    text-shadow: 0 0 5px rgba(41, 71, 206, 0.386);
  }
  
  /* Animation keyframes */
  @keyframes fadeSlideIn {
    0% {
      opacity: 0;
      transform: translateY(-20px);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }
  
  .nav a {
    display: block;
    margin-bottom: 15px;
    color: white;
    text-decoration: none;
    transition: background 0.2s;
    padding: 8px;
    border-radius: 4px;
  }
  
  .nav a:hover {
    background-color: #333;
  }
  
  /* Main Content */
  .main {
    flex: 1;
    padding: 30px;
    overflow-y: auto;
    background: linear-gradient(to bottom, #121212, #181818);
  }
  
  .albums {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 20px;
    margin-top: 20px;
  }
  
  .album {
    background: linear-gradient(#15161f, #333232);
    border-radius: 12px;
    padding: 25px;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.3s;
  }
  
  .album:hover {
    background: linear-gradient(#333232,#15161f);

  }
  
  .album img {
    width: 100%;
    border-radius: 8px;
    margin-bottom: 10px;
  }
  
  .album h3 {
    font-size: 16px;
    margin-bottom: 5px;
    color: #fff;
    text-decoration: none;
  }
  
  .album p {
    font-size: 14px;
    color: #aaa;
  }
  
  /* Player Bar */
  .player {
    background-color: #181818;
    padding: 15px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #333;
  }
  .player i{
    font-size: 20px;

  }
  
  .controls button {
    font-size: 20px;
    margin: 0 10px;
    background: none;
    border: none;
    color: white;
    cursor: pointer;
  }
  
  .volume {
    width: 100px;
  }
  
 i{
  font-size: 17px;
 }
 .page-section {
  display: none;
}
.page-section i {
  font-size: 20px;
}


.page-section.active {
  display: block;
}

.search-box {
  margin-top: 20px;
  padding: 10px;
  width: 100%;
  max-width: 400px;
  font-size: 16px;
  border-radius: 5px;
  border: none;
  background: #fff;
  outline: none;
}

/* ========== LIBRARY SECTION ========== */
#library {
  padding: 20px;
  color: #fff;
}

/* Playlists */
.library-playlists {
  margin-bottom: 30px;
}
.library-playlists h3 {
  margin-bottom: 10px;
}
.playlist {
  background-color: #222;
  padding: 12px 15px;
  margin-bottom: 10px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  transition: background 0.2s ease;
}
.playlist:hover {
  background-color: #333;
}

/* Saved Songs */
.library-songs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 20px;
  margin-bottom: 40px;
}
#library h2{
  margin-top: -14px;
  font-size: 40px;
}
#library i{
font-size: 40px;
}

.song {
  background-color: #1a1a1a;
  border-radius: 10px;
  padding: 10px;
  display: flex;
  gap: 10px;
  align-items: center;
}
.song img {
  width: 60px;
  height: 60px;
  object-fit: cover;
  border-radius: 5px;
}
.song-info h4 {
  margin: 0;
  font-size: 16px;
}
.song-info p {
  font-size: 14px;
  color: #aaa;
}

/* Recently Played */
.recently-played {
  margin-bottom: 30px;
}
.recently-played h3 {
  margin-top: 40px;
  margin-bottom: 10px;
}
.recently-played ul {
  list-style: none;
  padding-left: 0;
}
.recently-played ul li {
  padding: 8px 0;
  border-bottom: 1px solid #333;
  color: #ccc;
}

/* Liked Albums */
.liked-albums h3 {
  margin-bottom: 15px;
}
.liked-albums .album {
  display: inline-block;
  background-color: #1a1a1a;
  padding: 10px;
  margin-right: 15px;
  margin-bottom: 15px;
  border-radius: 10px;
  width: 160px;
  text-align: center;
}
.liked-albums .album img {
  width: 100%;
  border-radius: 8px;
  margin-bottom: 10px;
}
.liked-albums .album h4 {
  margin: 0;
  font-size: 15px;
}
.liked-albums .album p {
  font-size: 13px;
  color: #888;
}
.volume {
  -webkit-appearance: none;
  width: 150px;
  height: 6px;
  background: linear-gradient(to right, #1d51b9 0%, #1a3eaa 50%, #052899 50%, #2f0c90 100%);
  border-radius: 50px;
  outline: none;
  transition: background 450ms ease-in;
  margin-left: 15px;
  cursor: pointer;
}

/* Chrome, Safari, Edge */
.volume::-webkit-slider-thumb {
  -webkit-appearance: none;
  height: 16px;
  width: 16px;
  background: #fff;
  border: 2px solid #1db954;
  border-radius: 50%;
  cursor: pointer;
  transition: 0.3s ease;
}

.volume::-webkit-slider-thumb:hover {
  background: #1db954;
}

/* Firefox */
.volume::-moz-range-thumb {
  height: 16px;
  width: 16px;
  background: #0d278d;
  border: 2px solid #05115e;
  border-radius: 50%;
  cursor: pointer;
}

/* Firefox track */
.volume::-moz-range-track {
  height: 6px;
  background: #444;
  border-radius: 50px;
}

/* Active fill (JS update below for dynamic color fill) */


/* ========== ALBUM SECTION ========== */
.album-header {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}
.album-header img {
  width: 200px;
  height: 200px;
  border-radius: 10px;
}
.tra, .tra1, .tra2 {
  background-color: #222;
  padding: 12px 15px;
  margin-bottom: 10px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  list-style: none;
  cursor: pointer;
  transition: background 0.2s ease;
}

.tra img,
.tra1 img,
.tra2 img {
  height: 50px;
  border-radius: 5px;
}

.tracklist {
  margin-top: 40px;
  text-align: center;
}

.tracklist h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 400;
  text-align: left;
}
