/* Modern archive presentation for the Older Mixes page. */
#older-mixes.older-archive {
  --archive-accent: #f0b44c;
  --archive-muted: #b8bdc8;
  width: min(100% - 32px, 1040px);
  margin: 28px auto 56px;
  color: #f5f5f7;
  text-align: left;
}

#older-mixes .archive-hero,
#older-mixes .archive-list {
  padding: clamp(22px, 4vw, 38px);
  border: 1px solid rgba(240, 180, 76, .28);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(30, 27, 38, .97), rgba(10, 12, 18, .97));
  box-shadow: 0 14px 38px rgba(0, 0, 0, .28);
}

#older-mixes .archive-hero { text-align: left; }

#older-mixes .archive-kicker {
  margin: 0 0 10px;
  color: var(--archive-accent);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

#older-mixes h1 {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  color: #fff;
  font-size: clamp(2.1rem, 6vw, 3.6rem);
  line-height: 1.05;
  text-align: left;
}

#older-mixes .archive-intro {
  max-width: 650px;
  margin: 14px 0 0;
  color: #d6d7de;
  font-size: clamp(1rem, 2vw, 1.15rem);
  line-height: 1.65;
}

#older-mixes .archive-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

#older-mixes .archive-stats li {
  display: flex;
  align-items: baseline;
  gap: 7px;
  padding: 9px 13px;
  border: 1px solid rgba(255, 255, 255, .11);
  border-radius: 999px;
  background: rgba(255, 255, 255, .045);
}

#older-mixes .archive-stats strong { color: var(--archive-accent); }
#older-mixes .archive-stats span { color: var(--archive-muted); font-size: .9rem; }

#older-mixes .archive-note {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin: 16px 0;
  padding: 17px 20px;
  border: 1px solid rgba(240, 180, 76, .2);
  border-radius: 14px;
  background: rgba(240, 180, 76, .07);
}

#older-mixes .note-mark {
  display: grid;
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 50%;
  background: var(--archive-accent);
  color: #17130c;
  font-size: .9rem;
  font-weight: 800;
}

#older-mixes .archive-note p {
  margin: 0;
  color: #dedfe5;
  line-height: 1.6;
}

#older-mixes .archive-list-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}

#older-mixes .archive-list-heading .archive-kicker { margin-bottom: 6px; }
#older-mixes h2 { margin: 0; color: #fff; font-size: clamp(1.35rem, 3vw, 1.8rem); }
#older-mixes .archive-list-count { margin: 0; color: var(--archive-muted); font-size: .9rem; white-space: nowrap; }
#older-mixes .archive-list-count span { padding: 0 4px; color: var(--archive-accent); }

#older-mixes .archive-table-scroll {
  overflow-x: auto;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 12px;
  scrollbar-color: rgba(240, 180, 76, .6) rgba(255, 255, 255, .06);
}

#older-mixes #oldmixes {
  width: 100%;
  min-width: 720px;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  color: #e4e5ea;
  text-align: left;
}

#older-mixes #oldmixes caption {
  padding: 13px 16px;
  background: #17161d;
  color: var(--archive-muted);
  font-size: .88rem;
  text-align: left;
}

#older-mixes #oldmixes th {
  padding: 13px 16px;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, .09);
  border-bottom: 1px solid rgba(240, 180, 76, .28);
  background: rgba(240, 180, 76, .09);
  color: #f4d28f;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

#older-mixes #oldmixes td {
  padding: 15px 16px;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  background: rgba(255, 255, 255, .015);
  vertical-align: top;
  line-height: 1.55;
}

#older-mixes #oldmixes tbody tr:last-child td { border-bottom: 0; }
#older-mixes #oldmixes tbody tr:hover td { background: rgba(240, 180, 76, .045); }
#older-mixes #oldmixes td:nth-child(2),
#older-mixes #oldmixes td:nth-child(3) { color: var(--archive-muted); font-size: .92rem; }

#older-mixes #oldmixes .archive-download {
  color: var(--archive-accent);
  font-weight: 700;
  text-decoration: none;
}

#older-mixes #oldmixes .archive-download::after {
  content: "↓";
  display: inline-block;
  margin-left: 7px;
  font-size: .85em;
  opacity: .8;
}

#older-mixes #oldmixes .archive-download:hover,
#older-mixes #oldmixes .archive-download:focus-visible {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 3px;
}

#older-mixes .archive-return { margin: 18px 4px 0; text-align: right; }
#older-mixes .archive-return a { color: var(--archive-accent); font-weight: 700; text-decoration: none; }
#older-mixes .archive-return a:hover { color: #fff; }

@media (max-width: 600px) {
  #older-mixes.older-archive { width: min(100% - 24px, 560px); margin-top: 18px; }
  #older-mixes .archive-list-heading { align-items: flex-start; flex-direction: column; gap: 8px; }
  #older-mixes .archive-stats { gap: 8px; }
  #older-mixes .archive-stats li { padding: 8px 10px; }
  #older-mixes .archive-note { padding: 15px; }

  /* Stack each row as a card so descriptions stay visible on narrow screens. */
  #older-mixes .archive-table-scroll { overflow: visible; border: 0; }
  #older-mixes #oldmixes { display: block; min-width: 0; }
  #older-mixes #oldmixes caption { display: block; border-radius: 12px 12px 0 0; }
  #older-mixes #oldmixes thead { display: none; }
  #older-mixes #oldmixes tbody { display: grid; gap: 12px; }
  #older-mixes #oldmixes tbody tr {
    display: block;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 13px;
    background: rgba(255, 255, 255, .025);
  }
  #older-mixes #oldmixes tbody td {
    display: grid;
    grid-template-columns: minmax(76px, .32fr) minmax(0, 1fr);
    gap: 12px;
    width: auto;
    padding: 11px 13px;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
    background: transparent;
    overflow-wrap: anywhere;
  }
  #older-mixes #oldmixes tbody td::before {
    content: attr(data-label);
    color: var(--archive-accent);
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
  }
  #older-mixes #oldmixes tbody td:first-child {
    display: block;
    padding: 14px 13px;
    background: rgba(240, 180, 76, .07);
    font-size: 1.05rem;
  }
  #older-mixes #oldmixes tbody td:first-child::before { content: none; }
  #older-mixes #oldmixes tbody td:nth-child(4) { grid-template-columns: minmax(0, 1fr); }
  #older-mixes #oldmixes tbody td:empty { display: none; }
  #older-mixes #oldmixes tbody tr:last-child td { border-bottom: 0; }
}

@media (prefers-reduced-motion: reduce) {
  #older-mixes * { scroll-behavior: auto !important; }
}
