/*
 * Portada de Bibliografía ([forulege_bibliografia_portada], src/Front/BibliografiaPortada.php).
 * Se apoya en los estilos de la portada de Jurisprudencia (jurisprudencia-portada.css: .fjp-*);
 * aquí solo lo propio.
 */

.fbp-chips { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.fbp-chips a { border: 1px solid var(--fjp-linea); background: #fff; color: var(--color-content-text); padding: 0.15rem 0.6rem; font-size: 0.8rem; font-weight: 600; text-decoration: none; }
.fbp-chips a:hover { border-color: var(--color-content-primary); }
.fbp-chips a b { color: var(--color-content-primary); margin-left: 0.3rem; font-variant-numeric: tabular-nums; }

/* Últimas publicaciones y textos en línea */
.fbp-dos { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 2.5rem; padding-top: 2.75rem; }
.fbp-recientes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1.6rem; }
.fbp-recientes article { border-top: 2px solid var(--color-content-primary); padding-top: 0.75rem; display: grid; gap: 0.4rem; align-content: start; min-width: 0; }
.fbp-recientes h3 { font-size: 1rem; line-height: 1.35; }
.fbp-recientes h3 a { color: var(--color-content-heading, var(--color-content-text)); }
.fbp-meta { display: flex; flex-wrap: wrap; gap: 0.2rem 0.6rem; align-items: center; font-size: 0.8rem; color: var(--fjp-suave); font-weight: 600; margin: 0; }
.fbp-enlinea { background: var(--fjp-rosa-suave); padding: 1.4rem 1.5rem; display: grid; gap: 0.75rem; align-content: start; }
.fbp-enlinea p { margin: 0; font-size: 0.9rem; }
.fbp-grande { font-family: var(--h1-font-family); font-weight: 700; font-size: 2.5rem; line-height: 1; color: var(--color-content-primary); font-variant-numeric: tabular-nums; }
.fbp-enlinea li { display: flex; justify-content: space-between; gap: 0.6rem; border-bottom: 1px solid var(--fjp-linea); padding-bottom: 0.35rem; font-size: 0.9rem; }
.fbp-boton { justify-self: start; background: var(--color-content-primary); color: #fff !important; padding: 0.5rem 0.9rem; font-weight: 700; font-size: 0.875rem; text-decoration: none; }
.fbp-boton:hover { background: #991d21; }

/* Autores */
.fbp-autores { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2.25rem; }
.fbp-letras { display: grid; grid-template-columns: repeat(auto-fill, minmax(46px, 1fr)); gap: 0.4rem; margin: 0.6rem 0; }
.fbp-letras a { display: grid; justify-items: center; border: 1px solid var(--fjp-linea); background: #fff; padding: 0.35rem 0; font-family: var(--h1-font-family); font-weight: 700; font-size: 1.1rem; color: var(--color-content-primary); text-decoration: none; line-height: 1.2; }
.fbp-letras a small { font-family: inherit; font-weight: 600; font-size: 0.7rem; color: var(--fjp-suave); }
.fbp-letras a:hover, .fbp-letras a.on { border-color: var(--color-content-primary); background: var(--fjp-rosa-suave); }
.fbp-buscar-autor { width: 100%; font-size: 0.875rem; padding: 0.4rem 0.6rem; border: 1px solid var(--fjp-linea); height: auto; margin-bottom: 0.75rem; }
.fbp-letra h3 { margin: 0.6rem 0 0.3rem; }
.fbp-letra li, .fbp-top li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.6rem; padding: 0.3rem 0; border-bottom: 1px solid var(--fjp-linea); font-size: 0.9rem; line-height: 1.4; }
/* Con JS se ve solo la letra elegida (sin JS, todas) */
.fbp-js .fbp-letra { display: none; }
.fbp-js .fbp-letra.on { display: block; }
.fbp-js .fbp-buscando .fbp-letra { display: block; }
.fbp-js .fbp-buscando .fbp-letra h3 { display: none; }

@media (max-width: 900px) {
	.fbp-dos, .fbp-autores { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
}
@media (max-width: 520px) {
	.fbp-recientes { grid-template-columns: minmax(0, 1fr); }
}
