.listen-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 20px 0;
}

.listen-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 6px;
  font-weight: 600;
  text-decoration: none;
  color: white;
  transition: transform .2s ease, opacity .2s ease;
}

.listen-btn img {
  width: 20px;
  height: 20px;
}

/* Colores corporativos */
.listen-btn.spotify { background: #1DB954; }
.listen-btn.apple { background: #FA233B; }
.listen-btn.ytmusic { background: #FF0000; }
.listen-btn.amazon { background: #232F3E; }
.listen-btn.deezer { background: #32323D; }
.listen-btn.bandcamp { background: #629aa9; }
.listen-btn.tidal { background: #000000; }

.listen-btn:hover {
  transform: scale(1.05);
  opacity: .9;
}

.album-songs {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.song-item {
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 8px;
}

.song-header {
    display: flex;
    flex-direction: column;
    gap: 6px;
	line-height: 1;
}

.player-row-tight {
    display: flex;
    align-items: center;
    gap: .5rem;
    width: 100%;
}

.player-row-tight audio {
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
}

.btn-ver-letra.compact {
    font-size: .75rem;
    padding: 6px 10px;
    background: var(--accent-aqua);
    color: var(--text-black);
    border: none;
    border-radius: var(--radius-8);
    cursor: pointer;
    width: 110px;
    text-align: center;
    white-space: nowrap;
    transition: background-color .25s ease, color .25s ease, opacity .25s ease;
    position: relative;
    overflow: hidden;
}

.btn-ver-letra.compact span {
    display: inline-block;
    transition: opacity .25s ease;
}

.btn-ver-letra.compact:hover:not(.disabled) {
    filter: brightness(1.15);
}

.btn-ver-letra.disabled {
    opacity: .55;
    cursor: default;
    pointer-events: none;
}

.song-lyric {
    background: #fafafa;
    border-radius: 6px;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    padding: 0 12px; /* solo padding horizontal al inicio */
    transition: max-height .35s ease, opacity .35s ease, padding .35s ease;
    margin-top: 10px;
}

.song-lyric.open {
    padding: 12px; /* aparece el padding vertical al abrir */
    max-height: 2500px; /* suficiente para cualquier letra */
    opacity: 1;
}

.song-lyric pre {
    white-space: pre-wrap; /* permite saltos de línea automáticos */
    word-wrap: break-word; /* evita que se salga por la derecha */
    font-family: var(--font-body); /* usa tu tipografía normal */
    font-size: .95rem;
    margin: 0;
}

audio {
    height: 32px; /* opcional, para uniformidad */
}
