
/* Credits archive. Built on the live-site palette and 1120px container. */

.credits-hero {
  max-width: 1120px;
  margin: 0 auto;
  padding: 4.5rem 1.25rem 3rem;
  display: grid;
  grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
  gap: 3rem;
  align-items: end;
  border-bottom: 1px solid rgba(148,163,184,.2);
}

.credits-hero h1 {
  margin: .45rem 0 0;
  font-size: clamp(3.5rem,7vw,6.4rem);
  line-height: .9;
  letter-spacing: -.065em;
}

.credits-hero-copy > p {
  margin: 0;
  max-width: 650px;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.75;
}

.archive-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 1.6rem;
}

.archive-stat strong {
  display: block;
  font-size: 1.35rem;
}

.archive-stat span {
  display: block;
  margin-top: .15rem;
  color: var(--muted);
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .09em;
}

.credits-controls-wrap {
  position: sticky;
  top: 49px;
  z-index: 8;
  border-bottom: 1px solid rgba(148,163,184,.18);
  background: rgba(5,7,10,.94);
  backdrop-filter: blur(12px);
}

.credits-controls {
  max-width: 1120px;
  margin: 0 auto;
  padding: .85rem 1.25rem;
  display: grid;
  grid-template-columns: minmax(0,1.7fr) repeat(2,minmax(0,1fr));
  gap: .65rem;
}

.credits-controls input,
.credits-controls select {
  width: 100%;
  min-width: 0;
  padding: .72rem .8rem;
  border: 1px solid rgba(148,163,184,.28);
  border-radius: .65rem;
  background: #020617;
  color: var(--text);
  font: inherit;
  font-size: .78rem;
}

.credits-results {
  max-width: 1120px;
  margin: 0 auto;
  padding: 1.2rem 1.25rem 4rem;
}

.credits-results-meta {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: .25rem 0 1rem;
  color: var(--muted);
  font-size: .75rem;
}

.credit-list {
  border-top: 1px solid rgba(148,163,184,.2);
}

.credit-row {
  display: grid;
  grid-template-columns: 54px minmax(0,1.15fr) minmax(0,.9fr) minmax(0,1.3fr) 90px 18px;
  gap: .9rem;
  align-items: center;
  padding: 1rem .35rem;
  border-bottom: 1px solid rgba(148,163,184,.18);
  color: inherit;
}

.credit-row:hover {
  background: rgba(255,255,255,.025);
  text-decoration: none;
}

.credit-year {
  color: var(--muted);
  font-size: .72rem;
}

.credit-title {
  font-size: 1rem;
  font-weight: 650;
  line-height: 1.2;
}

.credit-artist,
.credit-project {
  margin-top: .2rem;
  color: var(--muted);
  font-size: .75rem;
  line-height: 1.35;
}

.credit-roles {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem;
}

.credit-role {
  padding: .25rem .38rem;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 999px;
  color: var(--muted);
  font-size: .6rem;
  line-height: 1.1;
  letter-spacing: .035em;
}

.credit-cert {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: .4rem;
  color: var(--text);
  font-size: .72rem;
  font-weight: 650;
}

.cert-disc {
  position: relative;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  border-radius: 50%;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.3);
}

.cert-disc::before {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid rgba(0,0,0,.22);
  border-radius: 50%;
}

.cert-disc::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  left: 9.5px;
  top: 9.5px;
  border-radius: 50%;
  background: #111827;
}

.cert-disc.platinum {
  background: linear-gradient(135deg,#858b90,#f0f2f2 52%,#777d82);
}

.cert-disc.gold {
  background: linear-gradient(135deg,#a98728,#f8e08b 52%,#96731d);
}

.credit-arrow {
  color: var(--muted);
  font-size: 1.05rem;
  text-align: right;
}

.credits-empty {
  display: none;
  padding: 4rem 0;
  color: var(--muted);
  text-align: center;
}

/* Detail pages */

.credit-detail-hero {
  max-width: 1120px;
  margin: 0 auto;
  padding: 4.5rem 1.25rem 3.2rem;
  border-bottom: 1px solid rgba(148,163,184,.2);
}

.credit-back {
  display: inline-block;
  margin-bottom: 1.6rem;
  color: var(--muted);
  font-size: .78rem;
}

.credit-detail-hero h1 {
  margin: .45rem 0 .55rem;
  max-width: 850px;
  font-size: clamp(3.2rem,7vw,6rem);
  line-height: .92;
  letter-spacing: -.06em;
}

.credit-detail-artist {
  color: var(--muted);
  font-size: 1.05rem;
}

.credit-detail-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 1.1rem;
  margin-top: 1.35rem;
  color: var(--muted);
  font-size: .72rem;
}

.credit-detail-section {
  max-width: 1120px;
  margin: 0 auto;
  padding: 2.5rem 1.25rem 2.8rem;
  border-bottom: 1px solid rgba(148,163,184,.16);
}

.credit-detail-section-head {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: 2rem;
  margin-bottom: 1.4rem;
  align-items: baseline;
}

.credit-detail-section-head h2 {
  margin: 0;
  font-size: 1.35rem;
}

.credit-detail-section-head p {
  margin: 0;
  color: var(--muted);
  font-size: .82rem;
}

.credit-cards {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .8rem;
}

.credit-card {
  padding: 1rem;
  border: 1px solid rgba(148,163,184,.2);
  border-radius: .85rem;
  background: var(--card-bg);
}

.credit-card strong {
  display: block;
  margin-bottom: .65rem;
}

.release-list {
  border-top: 1px solid rgba(148,163,184,.18);
}

.release {
  display: grid;
  grid-template-columns: 55px minmax(0,1fr) auto;
  gap: 1rem;
  align-items: center;
  padding: .85rem 0;
  border-bottom: 1px solid rgba(148,163,184,.18);
}

.release-year {
  color: var(--muted);
  font-size: .72rem;
}

.release-title {
  font-size: .9rem;
  font-weight: 600;
}

.release-type {
  margin-top: .1rem;
  color: var(--muted);
  font-size: .72rem;
}

.release-open {
  font-size: .72rem;
  white-space: nowrap;
}

.recording {
  margin-bottom: .7rem;
  border: 1px solid rgba(148,163,184,.2);
  border-radius: .85rem;
  background: var(--card-bg);
  overflow: hidden;
}

.recording summary {
  padding: .9rem 1rem;
  cursor: pointer;
  font-weight: 600;
}

.recording-body {
  display: grid;
  grid-template-columns: 90px minmax(0,1fr);
  gap: .6rem 1rem;
  padding: 0 1rem 1rem;
  color: var(--muted);
  font-size: .78rem;
}

.recording-body b {
  color: var(--text);
}

.recording-roles {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem;
}

.credit-detail-nav {
  max-width: 1120px;
  margin: 0 auto;
  padding: 1.6rem 1.25rem 3.5rem;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 1rem;
  align-items: center;
  font-size: .78rem;
}

.credit-detail-nav a:last-child {
  text-align: right;
}

@media (max-width: 900px) {
  .credits-hero {
    grid-template-columns: 1fr;
  }

  .credits-controls {
    grid-template-columns: 1fr 1fr;
  }

  .credit-row {
    grid-template-columns: 50px minmax(0,1fr) 86px;
  }

  .credit-project {
    grid-column: 2;
  }

  .credit-roles {
    grid-column: 2;
  }

  .credit-cert {
    grid-column: 3;
    grid-row: 1 / 4;
  }

  .credit-arrow {
    display: none;
  }
}

@media (max-width: 767px) {
  .credits-controls-wrap {
    position: static;
    top: auto;
  }

  .credits-controls {
    grid-template-columns: 1fr;
  }

  .credits-results-meta {
    display: block;
  }

  .credits-results-meta span:last-child {
    display: block;
    margin-top: .25rem;
  }

  .credit-row {
    grid-template-columns: 42px minmax(0,1fr) 70px;
    gap: .7rem;
  }

  .credit-title {
    font-size: .94rem;
  }

  .credit-detail-hero h1 {
    overflow-wrap: anywhere;
  }

  .credit-project {
    display: none;
  }

  .credit-role {
    font-size: .57rem;
  }

  .credit-detail-section-head,
  .credit-cards {
    grid-template-columns: 1fr;
  }

  .release {
    grid-template-columns: 45px minmax(0,1fr);
  }

  .release-open {
    grid-column: 2;
  }

  .recording-body {
    grid-template-columns: 1fr;
  }
}


/* V44 certification sync */
.credit-row {
  grid-template-columns: 54px minmax(0,1.15fr) minmax(0,.9fr) minmax(0,1.3fr) minmax(90px,auto) 18px;
}

.cert-context {
  color: var(--muted);
  font-size: .62rem;
  font-weight: 500;
  white-space: nowrap;
}

.certification-note {
  margin: 0 0 1rem;
  padding: .7rem .85rem;
  border-left: 2px solid var(--accent);
  background: rgba(250,204,21,.04);
  color: var(--text);
  font-size: .78rem;
}

.release {
  grid-template-columns: 55px minmax(0,1fr) auto auto;
}

.release-certification {
  justify-self: end;
  color: var(--accent);
  font-size: .72rem;
  font-weight: 650;
  white-space: nowrap;
}

@media (max-width: 900px) {
  .credit-row {
    grid-template-columns: 50px minmax(0,1fr) 110px;
  }
}

@media (max-width: 767px) {
  .release {
    grid-template-columns: 45px minmax(0,1fr);
  }
  .release-certification {
    grid-column: 2;
    justify-self: start;
  }
}


/* V46 v75 sync */
.recording-occurrence-note {
  margin: 0 0 1rem;
  padding: .75rem .9rem;
  border-left: 2px solid var(--accent);
  color: var(--muted);
  font-size: .78rem;
  line-height: 1.6;
}

.credits-nontrack {
  border-top: 1px solid rgba(148,163,184,.16);
}

.credits-nontrack h2 {
  margin: .45rem 0 .65rem;
  font-size: clamp(1.8rem,3vw,2.5rem);
  letter-spacing: -.035em;
}

.credits-nontrack-intro {
  max-width: 680px;
  margin: 0 0 1.4rem;
  color: var(--muted);
}

.nontrack-entity {
  margin: 0 0 .65rem;
  color: var(--muted);
  font-size: .78rem;
}

.nontrack-card p {
  margin: .8rem 0 0;
  color: var(--muted);
  font-size: .76rem;
  line-height: 1.6;
}

/* Mobile detail navigation may contain long adjacent song titles. */
@media (max-width: 767px) {
  .credit-detail-nav a {
    overflow-wrap: anywhere;
  }
}


/* V61 prototype: inline, searchable mobile-first discography. Old detail URLs remain intact. */
.credits-hero {align-items:center;}
.credits-hero h1 {font-size:clamp(2.8rem,6vw,5rem);line-height:1;overflow-wrap:anywhere;}
.archive-stats{margin-top:1.3rem;}
.archive-stat strong{font-size:1.6rem;}
.credits-controls{grid-template-columns:minmax(0,1.7fr) repeat(2,minmax(0,1fr));}
.discography-item{border-bottom:1px solid rgba(148,163,184,.18);scroll-margin-top:125px;}
.discography-toggle{width:100%;display:flex;align-items:center;gap:1.15rem;text-align:left;background:transparent;color:var(--text);border:0;font:inherit;padding:1.15rem .35rem;cursor:pointer;min-height:68px;}
.discography-toggle:hover{background:rgba(255,255,255,.028);}
.discography-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:5px;}
.discography-song{display:flex;flex-direction:column;gap:.22rem;min-width:0;flex:1;}
.discography-song strong{display:block;font-size:1.06rem;font-weight:650;line-height:1.28;overflow-wrap:anywhere;}
.discography-sub{font-size:.77rem;color:var(--muted);line-height:1.35;overflow-wrap:anywhere;}
.discography-cert{display:block;max-width:33%;padding:.35rem .6rem;flex-shrink:0;border:1px solid rgba(245,210,80,.28);color:var(--accent);border-radius:999px;font-size:.72rem;font-weight:600;white-space:normal;text-align:center;line-height:1.2;overflow-wrap:anywhere;}
.discography-chevron{font-size:1.32rem;color:var(--muted);width:1.35rem;text-align:center;flex-shrink:0;}
.discography-detail{margin:0 0 1.25rem;padding:.5rem 1.15rem .8rem;border:1px solid rgba(148,163,184,.18);border-radius:.75rem;background:rgba(255,255,255,.024);min-width:0;}
.discography-detail .credit-detail-section{max-width:none;margin:0;padding:1.4rem 0 1.5rem;}
.discography-detail .credit-detail-section:last-of-type{border-bottom:0;}
.discography-detail .credit-detail-section-head{gap:1.3rem;margin-bottom:1rem;}
.discography-detail .credit-detail-section-head h2{font-size:1.1rem;}
.discography-detail .credit-card{background:rgba(2,6,23,.35);}
.discography-detail .release{grid-template-columns:55px minmax(0,1fr) auto;}
.discography-detail .release-title,.discography-detail .recording summary{overflow-wrap:anywhere;}
.discography-detail .release-open{white-space:nowrap;}
.discography-legacy{border-top:1px solid rgba(148,163,184,.15);padding:.8rem 0 0;font-size:.75rem;}
.discography-legacy a{color:var(--muted);}
@media(max-width:900px){.credits-controls{grid-template-columns:1fr 1fr;}.discography-item{scroll-margin-top:140px;}}
@media(max-width:767px){
  .credits-hero{padding:3rem 1.25rem 2rem;gap:1.5rem;}
  .credits-hero h1{font-size:clamp(2.65rem,12vw,4rem);}
  .credits-controls-wrap{position:static;}
  .credits-controls{grid-template-columns:1fr 1fr;gap:.55rem;}
  .credits-controls #q{grid-column:1/-1;}
  .credits-controls input,.credits-controls select{font-size:16px;}
  .credits-results-meta{display:flex;flex-wrap:wrap;}
  .credits-results-meta span:last-child{margin:0;}
  .discography-item{scroll-margin-top:75px;}
  .discography-toggle{gap:.65rem;padding:1rem .2rem;}
  .discography-song strong{font-size:.99rem;}
  .discography-cert{font-size:.66rem;max-width:37%;}
  .discography-detail{padding:.2rem .8rem .8rem;}
  .discography-detail .credit-detail-section{padding:1.1rem 0;}
  .discography-detail .credit-detail-section-head,.discography-detail .credit-cards{grid-template-columns:1fr;gap:.65rem;}
  .discography-detail .release{grid-template-columns:38px minmax(0,1fr);gap:.6rem;}
  .discography-detail .release-open{grid-column:2;justify-self:start;}
  .discography-detail .recording-body{grid-template-columns:1fr;}
}
@media(max-width:350px){.credits-controls{grid-template-columns:1fr;}.credits-controls #q{grid-column:auto;}.discography-cert{max-width:40%;}}

/* V64: Certification belongs to its release, not the Open-link column. */
.discography-detail .release-certification{display:inline-block;margin-top:.32rem;max-width:100%;white-space:normal;justify-self:auto;text-align:left;font-size:.75rem;}

/* V65: Song certifications appear on verified original single releases. */
.discography-detail .discography-single-cert{display:block;margin-top:.32rem;color:var(--accent);line-height:1.5;}
.discography-detail .discography-ifpi-link{font-size:.73rem;color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;}
/* V111: Match the sourced certification links on preserved standalone song pages. */
.certification-note .discography-ifpi-link{font-size:.73rem;color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;}
.certification-note .discography-ifpi-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}
.discography-detail .discography-track-source{display:inline-block;color:var(--accent);font-size:.72rem;font-weight:500;white-space:normal;text-decoration:underline;text-underline-offset:3px;}
.discography-detail .credit-detail-section-head:has(.discography-track-source){display:flex;flex-wrap:wrap;align-items:baseline;gap:.55rem 1rem;}
@media(max-width:767px){.discography-detail .discography-track-source{font-size:.7rem;}}

/* V73 · Focused improvements to the inline Discography UI. */
.credits-filter-actions{max-width:1120px;margin:0 auto;padding:0 1.25rem .7rem;display:flex;justify-content:flex-end;}
.credits-clear-filters,.credits-empty-reset{background:transparent;border:1px solid rgba(148,163,184,.32);border-radius:.55rem;padding:.48rem .8rem;color:var(--text);font:inherit;font-size:.75rem;cursor:pointer;}
.credits-clear-filters:hover,.credits-empty-reset:hover{border-color:var(--accent);}
.credits-clear-filters:focus-visible,.credits-empty-reset:focus-visible,.discography-permalink:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}
.credits-clear-filters[hidden]{display:none!important;}
.credits-empty-reset{display:block;margin:1rem auto 0;}
.discography-detail-tools{display:flex;justify-content:flex-end;padding:.5rem 0 .2rem;}
.discography-permalink{color:var(--muted);font-size:.74rem;text-decoration:underline;text-underline-offset:3px;}
.discography-permalink:hover{color:var(--accent);}
@media(max-width:767px){.credits-filter-actions{padding:0 1.25rem .65rem;}.discography-detail-tools{padding:.6rem 0 .2rem;}}
@media(prefers-reduced-motion:reduce){.discography-item{scroll-behavior:auto;}}


/* V78: albums/songs views. No editorial or song-credit changes. */
.discography-tabs{border-bottom:1px solid rgba(148,163,184,.2);background:#05070a}
.discography-tabs-inner{max-width:1120px;margin:auto;display:flex;gap:.8rem;padding:1.15rem 1.25rem 0}
.discography-tab{appearance:none;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font:inherit;font-weight:650;font-size:1rem;cursor:pointer;padding:.75rem 1.15rem .9rem;letter-spacing:-.015em}
.discography-tab:hover{color:var(--text)}
.discography-tab.is-active{color:var(--text);border-bottom-color:#e5e7eb}
.discography-tab span{font-size:.65rem;font-weight:500;opacity:.7;margin-left:.35rem}
.discography-albums-view[hidden],.discography-songs-view[hidden],.albums-empty[hidden]{display:none!important}
.albums-intro{max-width:1120px;margin:0 auto;padding:1.6rem 1.25rem 1.2rem;color:var(--muted);font-size:.86rem;line-height:1.65}
.albums-intro p{max-width:700px;margin:0}
.albums-controls-wrap{border-bottom:1px solid rgba(148,163,184,.18);background:#05070a}
.albums-controls{max-width:1120px;margin:0 auto;padding:.75rem 1.25rem;display:grid;grid-template-columns:minmax(0,1.7fr) repeat(2,minmax(0,1fr));gap:.65rem}
.albums-controls input,.albums-controls select{width:100%;min-width:0;padding:.72rem .8rem;border:1px solid rgba(148,163,184,.28);border-radius:.65rem;background:#020617;color:var(--text);font:inherit;font-size:.78rem}
.albums-filter-actions{max-width:1120px;margin:0 auto;padding:0 1.25rem}
#albumClear{background:transparent;border:0;color:var(--muted);padding:.3rem 0 .65rem;cursor:pointer;font:inherit;font-size:.75rem;text-decoration:underline}
.albums-results{max-width:1120px;margin:0 auto;padding:1.4rem 1.25rem 4rem}
.albums-results-meta{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.75rem;margin-bottom:1.25rem}
.albums-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}
.album-card{border:1px solid rgba(148,163,184,.18);border-radius:.95rem;background:rgba(15,23,42,.26);overflow:hidden;min-width:0;scroll-margin-top:7rem}
.album-card:hover{border-color:rgba(148,163,184,.4)}
.album-card-button{display:grid;grid-template-columns:138px minmax(0,1fr);width:100%;gap:1.15rem;align-items:center;padding:.85rem;background:transparent;border:0;text-align:left;color:inherit;cursor:pointer;font:inherit}
.album-art{aspect-ratio:1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:.4rem;background:radial-gradient(circle at 56% 45%,#303b4e,#0d1320 61%,#07090e 100%);border:1px solid rgba(148,163,184,.13)}
.album-art-record{position:absolute;width:85%;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,#121927 0 4px,#253044 5px,#121927 6px);box-shadow:0 3px 17px #0009;transform:translate(13%,2%)}
.album-art-record::after{content:'';position:absolute;inset:39%;border-radius:50%;background:#a0a8b2;box-shadow:inset 0 0 0 9px #1f2937,inset 0 0 0 12px #778390}
.album-art-label{position:absolute;bottom:.65rem;left:.7rem;color:#fff9;font-size:.55rem;letter-spacing:.2em;font-weight:700}
.album-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:.38rem;min-width:0;overflow-wrap:anywhere}
.album-card-title{font-size:1.1rem;font-weight:680;line-height:1.2;letter-spacing:-.025em}
.album-card-meta{font-size:.76rem;color:var(--muted);line-height:1.45}
.album-card-cert{font-size:.73rem;color:#e9d7a3;border:1px solid rgba(215,183,115,.38);padding:.25rem .48rem;border-radius:99px;font-weight:650}
.album-card-foot{display:flex;width:100%;justify-content:space-between;gap:1rem;margin-top:.3rem;padding-top:.45rem;border-top:1px solid rgba(148,163,184,.14);font-size:.74rem;color:var(--muted)}
.album-detail{padding:.65rem 1rem 1.2rem;border-top:1px solid rgba(148,163,184,.2)}
.album-detail-intro{margin:.35rem 0 .65rem;font-size:.78rem;color:var(--muted)}
.album-detail ul{margin:0 0 .8rem;padding:0;list-style:none}
.album-detail li{margin:0;border-bottom:1px solid rgba(148,163,184,.12)}
.album-detail li a{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem 0;font-size:.83rem;color:var(--text)}
.album-song-link{color:var(--muted);font-size:.7rem;white-space:nowrap}
.album-open{display:inline-block;color:var(--text);font-size:.77rem;margin-top:.4rem}
.album-cert-note{font-size:.68rem;color:var(--muted);margin:1rem 0 0}
.albums-empty{text-align:center;color:var(--muted);padding:3rem .5rem;font-size:.9rem}
.albums-empty button{display:block;margin:1rem auto 0;padding:.6rem .9rem;border:1px solid #64748b;border-radius:.5rem;background:transparent;color:var(--text);cursor:pointer}
@media(max-width:800px){.albums-grid{grid-template-columns:1fr}}
@media(max-width:600px){.albums-results-meta{flex-direction:column;gap:.3rem}.albums-controls{grid-template-columns:1fr 1fr}.albums-controls input{grid-column:span 2}.album-card-button{grid-template-columns:112px minmax(0,1fr);gap:.8rem}.album-card-title{font-size:1rem}}
@media(max-width:350px){.album-card-button{grid-template-columns:88px minmax(0,1fr)}.album-art-label{font-size:.48rem}}

/* V79: source link is a separate, unobtrusive evidence row. */
.album-ifpi{display:block;color:var(--muted);margin-top:.55rem;}
.album-ifpi:hover{color:var(--text)}

/* V114 – verified Apple Music cover imagery, preserving vinyl as a safe fallback. */
.album-art-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .24s ease;}
.album-art-image.is-ready{opacity:1;}
.album-artwork-source:not(:empty){display:block;margin-top:.45rem;}
.album-artwork-source .album-open{margin-top:.2rem;}
@media(prefers-reduced-motion:reduce){.album-art-image{transition:none;}}

/* V133: Equal-height controls and steady background between Albums and Sange. */
.discography-albums-view,.discography-songs-view{background:transparent;}
.albums-controls-wrap,.credits-controls-wrap{
  position:sticky;top:49px;z-index:8;
  background:#05070a;backdrop-filter:none;
  border-bottom:1px solid rgba(148,163,184,.18);
}
.albums-controls,.credits-controls{
  max-width:1120px;margin:0 auto;padding:.85rem 1.25rem;
  display:grid;grid-template-columns:minmax(0,1.7fr) repeat(2,minmax(0,1fr));gap:.65rem;
}
.albums-controls input,.albums-controls select,.credits-controls input,.credits-controls select{
  width:100%;min-width:0;padding:.72rem .8rem;
  border:1px solid rgba(148,163,184,.28);border-radius:.65rem;
  background:#020617;color:var(--text);font:inherit;font-size:.78rem;
}
.albums-filter-actions,.credits-filter-actions{
  max-width:1120px;margin:0 auto;padding:0 1.25rem;
  display:flex;justify-content:flex-end;
}
#albumClear,.credits-clear-filters{
  margin:0 0 .7rem;padding:.48rem .8rem;
  background:transparent;border:1px solid rgba(148,163,184,.32);border-radius:.55rem;
  color:var(--text);font:inherit;font-size:.75rem;cursor:pointer;text-decoration:none;
}
#albumClear[hidden],.credits-clear-filters[hidden]{display:none!important;}
.albums-results,.credits-results{max-width:1120px;margin:0 auto;padding:1.2rem 1.25rem 4rem;}
.albums-results-meta,.credits-results-meta{
  display:flex;justify-content:flex-start;gap:1rem;
  padding:.25rem 0 1rem;margin:0;color:var(--muted);font-size:.75rem;
}
@media(max-width:900px){
  .albums-controls,.credits-controls{grid-template-columns:1fr 1fr;}
  .albums-controls input,.credits-controls input{grid-column:1/-1;}
}
@media(max-width:767px){
  .albums-controls-wrap,.credits-controls-wrap{position:static;top:auto;}
  .albums-controls,.credits-controls{gap:.55rem;}
  .albums-controls input,.albums-controls select,.credits-controls input,.credits-controls select{font-size:16px;}
  .albums-results-meta,.credits-results-meta{flex-wrap:wrap;}
  .albums-filter-actions,.credits-filter-actions{padding:0 1.25rem;}
}
@media(max-width:350px){
  .albums-controls,.credits-controls{grid-template-columns:1fr;}
  .albums-controls input,.credits-controls input{grid-column:auto;}
}
