/* =========================================================
   CRCE LISTEN VOLUME — clean stable integration (FINAL v2)
   ========================================================= */

/* ---------------------------------------------------------
   Global page column
   --------------------------------------------------------- */

.crce-listen-page {
  width: min(100%, 760px); /* ← MÁS ANCHO (antes 640px) */
  margin: 0 auto;
  padding: 1.6rem 1rem 4rem 1rem;
  box-sizing: border-box;
}

/* ---------------------------------------------------------
   Header
   --------------------------------------------------------- */

.crce-volume-header {
  margin-bottom: 1.4rem;
}

.crce-volume-header h1 {
  margin-top: 1.6rem;
  margin-bottom: 0.9rem;
}

/* FIX: remove faded grey text */

.crce-volume-intro {
  font-size: 0.95em;
  opacity: 1;
  color: var(--text-color);
}

/* ---------------------------------------------------------
   FIX — header links (top intro)
   --------------------------------------------------------- */

.crce-volume-header a,
.crce-volume-header a:visited,
.crce-volume-intro a,
.crce-volume-intro a:visited {
  color: var(--text-color);
  text-decoration: none;
  border-bottom: 1px solid var(--text-color);
}

.crce-volume-header a:hover,
.crce-volume-intro a:hover {
  color: var(--link-hover-color);
  border-bottom-color: var(--link-hover-color);
}

/* ---------------------------------------------------------
   Player
   --------------------------------------------------------- */

.crce-player-wrap {
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--bg-color);

  margin: 2.4rem 0 2rem 0;   /* ← MÁS ESPACIO ARRIBA (antes 1.6rem) */
  padding: 1.4rem 0 0.4rem 0; /* ← ligera respiración superior */
}

.crce-now-playing {
  font-size: 0.9em;
  margin-bottom: 0.35rem;
  opacity: 0.7;
}

#crce-audio {
  width: 100%;
  display: block;
}

/* ---------------------------------------------------------
   Tracklist
   --------------------------------------------------------- */

#crce-tracklist {
  margin-top: 1.4rem;
}

.crce-track {
  padding: 0.6rem 0;
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.crce-track:hover {
  background: #f2f2f2;
}

.crce-track.is-selected {
  background: #eaeaea;
}

.crce-track.is-playing {
  font-weight: 500;
}

/* ---------------------------------------------------------
   Track typography
   --------------------------------------------------------- */

.crce-main {
  display: flex;
  gap: 0.45rem;
  flex-wrap: wrap;
}

.crce-ex {
  min-width: 3em;
}

.crce-type {
  opacity: 0.85;
}

.crce-meta {
  font-size: 0.82em;
  opacity: 0.65;
  margin-top: 0.15rem;
}

.crce-tech {
  font-size: 0.8em;
  opacity: 0.55;
  margin-top: 0.15rem;
}

.crce-actions {
  margin-top: 0.35rem;
}

/* ---------------------------------------------------------
   Button system
   --------------------------------------------------------- */

.crce-play-button {
  font-family: inherit;
  font-size: 0.8em;
  background: transparent;
  border: 1px solid currentColor;
  padding: 0.16rem 0.55rem;
  cursor: pointer;
  color: inherit;
  transition: all 0.14s ease;
}

.crce-play-button:hover {
  background: #111;
  color: #fff;
  border-color: #111;
}

.crce-play-button:active {
  transform: translateY(1px);
}

/* ---------------------------------------------------------
   Editorial + dataset column
   --------------------------------------------------------- */

.crce-volume-context,
.crce-volume-dataset {
  max-width: 62ch;
  margin-left: auto;
  margin-right: auto;
}

.crce-volume-context {
  margin-top: 3rem;
}

.crce-volume-context h2 {
  margin-bottom: 1.2rem;
}

.crce-volume-context h3 {
  margin-top: 1.6rem;
  margin-bottom: 0.6rem;
}

.crce-volume-context p {
  margin-bottom: 0.9rem;
}

/* FIX — remove underline in heading anchors */

.crce-volume-context h3 a {
  border-bottom: none;
  text-decoration: none;
}

/* FIX — editorial links */

.crce-volume-context a,
.crce-volume-context a:visited {
  color: var(--text-color);
  text-decoration: none;
  border-bottom: 1px solid var(--text-color);
}

.crce-volume-context a:hover {
  color: var(--link-hover-color);
  border-bottom-color: var(--link-hover-color);
}

/* ---------------------------------------------------------
   Dataset apparatus
   --------------------------------------------------------- */

.crce-volume-dataset {
  margin-top: 3rem;
  margin-bottom: 4rem;
  font-size: 0.78rem;
  line-height: 1.55;
  opacity: 0.85;
}

.crce-volume-dataset p {
  margin: 0;
}

.crce-volume-dataset strong {
  font-weight: 600;
}

.crce-volume-dataset em {
  font-style: italic;
}

.crce-volume-dataset a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,0.28);
}

.crce-volume-dataset a:hover {
  border-bottom-color: rgba(0,0,0,0.6);
}

/* ---------------------------------------------------------
   Mobile refinement
   --------------------------------------------------------- */

@media (max-width: 700px) {
  .crce-listen-page {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .crce-player-wrap {
    margin-top: 1.6rem;
    margin-bottom: 1.6rem;
    padding-top: 0.8rem;
  }

  .crce-volume-context {
    margin-top: 2.2rem;
  }

  .crce-volume-dataset {
    margin-top: 2.2rem;
    margin-bottom: 3rem;
  }
}

/* ---------------------------------------------------------
   Large screens
   --------------------------------------------------------- */

@media (min-width: 1100px) {
  .crce-listen-page {
    width: min(100%, 820px);
  }
}

/* ---------------------------------------------------------
   Dark mode
   --------------------------------------------------------- */

@media (prefers-color-scheme: dark) {

  .crce-track:hover {
    background: #111;
  }

  .crce-track.is-selected {
    background: #1a1a1a;
  }

  .crce-play-button {
    border-color: #aaa;
  }

  .crce-play-button:hover {
    background: #fff;
    color: #000;
    border-color: #fff;
  }

  .crce-volume-context a {
    border-bottom-color: rgba(255,255,255,0.28);
  }

  .crce-volume-context a:hover {
    border-bottom-color: rgba(255,255,255,0.6);
  }

  .crce-volume-dataset a {
    border-bottom-color: rgba(255,255,255,0.28);
  }

  .crce-volume-dataset a:hover {
    border-bottom-color: rgba(255,255,255,0.6);
  }
}