<style>
.badge-numero {
  background-color: #d2dae3;
  color: #222;
  font-size: 1rem;
  padding: 0.55rem 0.9rem;
}
.titulo-cancion {
  font-size: 1.6rem;
  line-height: 1.2;
}
.card-cancion-pdf {
  border: 1px solid #e6e8ec;
  border-radius: 16px;
}
.card-insercion-activa {
  border: 2px solid #0d6efd;
  box-shadow: 0 0 0 0.2rem rgba(13,110,253,.12);
}
.btn-pdf {
  min-height: 96px;
  min-width: 220px;
  border-radius: 14px;
  padding: 1rem 1.25rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.btn-pdf-iniciacion {
  background: #e8f1ff;
  color: #0d47a1;
  border: 1px solid #cfe0ff;
}
.btn-pdf-basico {
  background: #eaf8ee;
  color: #1b5e20;
  border: 1px solid #cfead7;
}
.btn-pdf-intermedio {
  background: #fff4e5;
  color: #a15c00;
  border: 1px solid #ffe1b3;
}
.btn-pdf-vacio {
  min-height: 96px;
  border-radius: 14px;
  padding: 1rem;
  text-align: center;
  background: #f6f7f9;
  color: #9aa1ab;
  border: 1px dashed #d9dde3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  cursor: default !important;
}
.pdf-titulo {
  font-weight: 700;
  font-size: 1.05rem;
  line-height: 1.2;
}
.pdf-subtitulo {
  margin-top: 0.35rem;
  font-size: 0.9rem;
}
.descripcion-cancion {
  color: #4b5563;
}
.barra-rapida {
  position: sticky;
  top: 0;
  z-index: 20;
}
#sinResultadosFiltroLista,
#sinResultadosGeneral {
  display: none;
}
.cursor-move {
  cursor: move !important;
}
@media (max-width: 768px) {
  .titulo-cancion {
    font-size: 1.25rem;
  }
  .btn-pdf {
    min-height: 84px;
  }
}


.lista-portada-wrap {
  height: 100%;
}

.lista-portada-box {
  min-height: 320px;
  height: 100%;
  border: 1px solid #e6e8ec;
  border-radius: 16px;
  background: #fafbfc;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.lista-portada-box img {
  width: 100%;
  height: 100%;
  max-height: 360px;
  object-fit: contain;
  border-radius: 12px;
  display: block;
}

.lista-portada-vacia {
  width: 100%;
  text-align: center;
  color: #8c94a3;
  font-size: 0.95rem;
}

</style>