body {
  font-family: 'Poppins', sans-serif;
  margin: 0;
  background: #000;
  color: #fff;
}

strong {
  color: #FFD700;
}

.container {
  max-width: 1200px;
  margin: auto;
  padding: 2rem;
  background: #111;
  border-radius: 12px;
}

.artist-header {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2rem;
  background: #111827;
  padding: 1.5rem;
  border-radius: 12px;
  color: white;
}

.artist-header img {
  width: 200px;
  height: 200px;
  border-radius: 12px;
  object-fit: cover;
}

.artist-badges {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-top: 1.5rem;
}

.badge {
  background: #000;
  color: #FFD700;
  border: 1px solid #FFD700;
  padding: 6px 12px;
  font-size: 12px;
  border-radius: 999px;
  cursor: pointer;
  transition: 0.2s;
}

.badge:hover {
  background: #333;
}

.main-layout {
  display: flex;
  gap: 2rem;
}

.sidebar {
  width: 45%;
  max-height: 80vh;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.album-item {
  background: #333;
  padding: 0.5rem 0.75rem;
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  border: 1px solid #444;
  cursor: pointer;
  position: relative;
}

.album-item:hover,
.album-item.active {
  background: #444;
}

.album-item img {
  width: 75px;
  height: 75px;
  border-radius: 6px;
  object-fit: cover;
}

.album-type-badge {
  position: absolute;
  top: 8px;
  right: 8px;
  font-size: 11px;
  padding: 2px 6px;
  border-radius: 999px;
  color: white;
}

.badge-cd { background: #2563eb; }
.badge-lp { background: #f59e0b; }
.badge-digital { background: #10b981; }

/* === Album Preview Section === */

.album-preview {
  flex: 1;
  background: #111827;
  padding: 1.5rem;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  color: white;
}

.album-preview .top {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  justify-content: flex-start;
}

.album-preview img {
  width: 200px;
  height: 200px;
  border-radius: 12px;
  object-fit: cover;
}

.album-info {
  flex: 1;
  min-width: 240px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.4;
}

.album-info h2 {
  font-size: 20px;
  margin: 0 0 10px;
  color: #FFD700;
}

.album-info p {
  font-size: 14px;
  margin: 4px 0;
  color: white;
}

.album-info strong {
  color: #FFD700;
}

/* === Tracklist Section === */

.tracklist {
  margin-top: 1.5rem;
  width: 100%;
  max-width: 600px;
}

.tracklist h4 {
  color: #FFD700;
  margin-bottom: 0.5rem;
}

.tracklist ol {
  padding-left: 1.5rem;
  margin: 0;
  list-style-position: inside;
}

.tracklist li {
  font-size: 14px;
  color: white;
  line-height: 1.7;
  padding-left: 0;
  margin-left: 0;
  text-indent: 0;
}

.tracklist li::marker {
  color: #FFD700;
}

/* === Pagination === */

.pagination {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1rem;
}

.pagination button {
  background-color: #333;
  color: #fff;
  border: 1px solid #555;
  padding: 0.5rem 1rem;
  cursor: pointer;
}

.pagination button.active {
  background-color: #FFD700;
  color: #000;
}

/* === Album Count === */

.album-count {
  margin-top: 1rem;
  font-size: 14px;
  color: #d1d5db;
  text-align: center;
}

/* === Responsive Fixes === */

@media (max-width: 768px) {
  .main-layout {
    flex-direction: column;
  }

  .sidebar {
    width: 100%;
    max-height: unset;
  }

  .album-preview {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .album-preview .top {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .album-preview img {
    margin-bottom: 1rem;
  }

  .album-info {
    margin-left: 0;
    text-align: center;
  }

  .tracklist {
    text-align: left;
    padding: 0 1rem;
  }

  .artist-header {
    flex-direction: column;
    text-align: center;
  }

  .artist-header img {
    width: 150px;
    height: 150px;
  }
}
body {
      font-family: 'Poppins', sans-serif;
      margin: 0;
      background: #000;
      color: #fff;
      padding-top: 70px; /* espace pour ruban fixe */
    }

    /* 🔤 Ruban alphabétique fixe */
    .fixed-alphabet-ribbon {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 1000;
      background: rgba(17, 17, 17, 0.92);
      backdrop-filter: blur(6px);
      border-bottom: 1px solid #333;
      padding: 0.5rem 1rem;
      overflow-x: auto;
    }

    .alphabet-track {
      display: flex;
      gap: 0.5rem;
      white-space: nowrap;
      overflow-x: auto;
      scrollbar-width: none;
    }

    .alphabet-track::-webkit-scrollbar {
      display: none;
    }

    .alphabet-track a {
      color: #FFD700;
      text-decoration: none;
      font-weight: bold;
      padding: 6px 12px;
      border-radius: 6px;
      border: 1px solid transparent;
      transition: 0.2s;
      flex-shrink: 0;
    }

    .alphabet-track a:hover {
      background: #FFD700;
      color: #000;
    }

    /* 💿 Structure de contenu */
    .container {
      max-width: 1850px;
      margin: auto;
      padding: 2rem;
      background: #111;
      border-radius: 12px;
    }

    .artist-header {
        display: flex;
      gap: 1.5rem;
      flex-wrap: wrap;
      background: #111827;
      padding: 1.5rem;
      border-radius: 12px;
      margin-bottom: 2rem;
    }

    .artist-header img {
      width: 180px;
      height: 180px;
      border-radius: 12px;
      object-fit: cover;
    }

    .artist-badges {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 0.5rem;
      margin-bottom: 1.5rem;
    }

    .badge {
      background: #000;
      color: #FFD700;
      border: 1px solid #FFD700;
      padding: 6px 12px;
      font-size: 13px;
      border-radius: 999px;
      cursor: pointer;
      transition: 0.2s ease;
    }

    .badge:hover {
      background: #333;
    }

    .badge.active {
      background: #FFD700;
      color: #000;
    }

    .main-layout {
      display: flex;
      flex-wrap: wrap;
      gap: 2rem;
    }

    .sidebar {
      flex: 1;
      min-width: 300px;
      max-width: 400px;
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
      max-height: 70vh;
      overflow-y: auto;
    }

    .album-item {
      opacity: 0;
      transform: translateY(10px);
      animation: fadeInUp 0.4s ease forwards;
      background: #222;
      padding: 0.5rem;
      border-radius: 10px;
      display: flex;
      align-items: center;
      gap: 0.75rem;
      border: 1px solid #333;
      cursor: pointer;
    }

    .album-item:hover,
    .album-item.active {
      background: #333;
    }

    .album-item img {
      width: 60px;
      height: 60px;
      border-radius: 6px;
      object-fit: cover;
    }

    @keyframes fadeInUp {
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    .album-preview {
      flex: 2;
      min-width: 280px;
      background: #111827;
      padding: 1.5rem;
      border-radius: 12px;
      display: flex;
      flex-wrap: wrap;
      gap: 2rem;
    }

    .cover-and-info {
      max-width: 300px;
      flex: 1;
    }

    .cover-and-info img {
      width: 100%;
      border-radius: 12px;
      margin-bottom: 1rem;
    }

    .album-meta p {
      font-size: 14px;
      color: #ccc;
      margin: 4px 0;
    }

    .tracklist-container {
      flex: 2;
    }

    .tracklist-container ol {
      padding-left: 1rem;
    }

    .tracklist-container li {
      background: #1f2937;
      margin-bottom: 0.4rem;
      padding: 6px 10px;
      border-radius: 6px;
      font-size: 14px;
    }

    .badge-format {
      background: #2563eb;
      color: #fff;
    }

    @media (max-width: 768px) {
      .main-layout {
        flex-direction: column;
      }
      .album-preview {
        flex-direction: column;
      }
    }