/* Bibliothèque inspirée de la maquette e-librairie. */
.page-bibliotheque .contenu { display: block !important; padding-top: 36px; }
.biblio-bienvenue { position: relative; display: grid; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); align-items: center; gap: 32px; padding-block: 16px 32px; }
.biblio-bienvenue__texte { max-width: 620px; }
.biblio-surtitre { color: var(--muted-foreground); font-size: 13px; font-weight: 650; margin: 0 0 14px; }
.biblio-bienvenue h1 { font-size: clamp(34px,4.2vw,58px); line-height: 1.04; letter-spacing: -.045em; max-width: 17ch; margin: 0 0 18px; }
.biblio-bienvenue__texte > p:last-child { max-width: 49ch; font-size: 16px; line-height: 1.6; color: var(--muted-foreground); }
.biblio-couvertures { display: flex; justify-content: center; align-items: center; gap: 12px; min-height: 220px; padding: 22px; background: radial-gradient(ellipse,color-mix(in srgb,var(--accent-citron) 13%,transparent),transparent 70%); }
.biblio-couverture { flex: 0 1 120px; min-width: 0; transform: rotate(-9deg); }
.biblio-couverture:nth-child(2) { transform: translateY(-14px) rotate(5deg); }
.biblio-couverture:nth-child(3) { transform: rotate(12deg); }
.biblio-couverture .couverture { width: 100%; aspect-ratio: 2/3; border-radius: 4px; box-shadow: 0 14px 24px rgb(0 0 0 / .14); }
.page-bibliotheque .recherche { display: flex; flex-wrap: wrap; gap: 14px; border: 0; padding: 0; margin-block: 6px 28px; box-shadow: none; background: none; }
.page-bibliotheque .recherche .champ-recherche { flex-basis: 100%; max-width: none; min-height: 54px; border: 1px solid var(--border); background: var(--card); border-radius: 16px; }
.page-bibliotheque .recherche .filtres { display: flex; flex-wrap: nowrap; width: 100%; overflow-x: auto; gap: 8px; padding: 2px 0 8px; }
.page-bibliotheque .filtres a { flex: none; padding-inline: 20px; border-radius: 999px; background: var(--soft); border: 0; font-size: 14px; }
.page-bibliotheque .filtres a[aria-current] { background: var(--foreground); color: var(--background); }
.page-bibliotheque .grille-livres { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 32px 24px; }
.page-bibliotheque .livre-item.livre-immersif { display: block; min-height: 0; aspect-ratio: auto; overflow: visible; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.page-bibliotheque .livre-item.livre-immersif::after { content: none; }
.page-bibliotheque .livre-item.livre-immersif > a.livre-visuel { position: relative; inset: auto; display: block; border-radius: 5px; overflow: visible; }
.page-bibliotheque .livre-item.livre-immersif > a.livre-visuel .couverture { width: 100%; height: auto; aspect-ratio: 2/3; padding: 0; border-radius: 5px; box-shadow: 0 5px 12px rgb(0 0 0 / .1); }
.page-bibliotheque .livre-immersif .couverture img { object-fit: contain; }
.page-bibliotheque .livre-immersif .couverture strong, .page-bibliotheque .livre-immersif .couverture-bas { visibility: visible; }
.page-bibliotheque .livre-legende { position: static; padding: 14px 0 0; color: var(--foreground); pointer-events: auto; }
.page-bibliotheque .livre-item.livre-immersif h2, .page-bibliotheque .livre-item.livre-immersif h3 { color: var(--foreground); font-size: 16px; line-height: 1.3; letter-spacing: -.02em; margin: 0 0 6px; }
.page-bibliotheque .livre-autrice { color: var(--muted-foreground); font-size: 13px; margin: 0 0 8px; }
.page-bibliotheque .livre-details { color: var(--muted-foreground); font-size: 12px; margin-bottom: 8px; }
.page-bibliotheque .livre-extrait { display: inline-flex; justify-content: flex-start; width: auto; gap: 6px; padding: 0; min-height: 44px; background: none; color: var(--foreground); border-radius: 0; font-size: 13px; text-decoration: underline; text-underline-offset: 4px; }
.page-bibliotheque .recherche-accueil .champ-recherche { flex: 1; }
.page-bibliotheque .recherche-accueil .btn-icone { background: var(--accent-citron); color: #171717; }
@media(max-width:1023px) { .page-bibliotheque .grille-livres { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px 18px; } }
@media(max-width:720px) {
 .biblio-bienvenue { display: flex; flex-direction: column-reverse; align-items: stretch; gap: 12px; padding-block: 0 20px; }
 .biblio-couvertures { min-height: 160px; padding: 12px; max-height: 190px; overflow: hidden; }
 .biblio-couverture { flex-basis: 90px; }
 .biblio-bienvenue h1 { font-size: 36px; }
 .page-bibliotheque .grille-livres { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px 14px; }
 .page-bibliotheque .livre-item.livre-immersif h2, .page-bibliotheque .livre-item.livre-immersif h3 { font-size: 14px; }
 .page-bibliotheque .livre-details { display: none; }
}
@media(max-width:360px) { .page-bibliotheque .grille-livres { grid-template-columns: repeat(2,minmax(0,1fr)); } }
