/* =====================================================================
   Encart Bibliothèque (page Découvrir) + sa modale
   Fichier séparé pour ne pas toucher à styles.css.
   ===================================================================== */

/* --- l'encart cliquable, mis en avant --- */
.biblio-card{
  display:flex; align-items:center; gap:16px; width:100%;
  text-align:left; cursor:pointer;
  background:var(--blanc, #fff);
  border:1px solid var(--trait, #e3e0d4);
  border-left:5px solid var(--jaune, #E9DD00);
  border-radius:14px; padding:18px 20px; margin:0 0 20px;
  box-shadow:var(--shadow, 0 1px 3px rgba(0,0,0,.08));
  font:inherit; color:inherit;
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.biblio-card:hover{ transform:translateY(-1px);
  border-color:var(--or-txt, #8A6D0B);
  box-shadow:0 6px 18px rgba(0,0,0,.10); }
.biblio-card:focus-visible{ outline:2px solid var(--jaune,#E9DD00); outline-offset:2px; }
.biblio-ico{ font-size:1.9rem; flex:none; line-height:1; }
.biblio-txt{ display:flex; flex-direction:column; gap:3px; flex:1 1 auto; min-width:0; }
.biblio-title{ font-family:"Marcellus", serif; font-size:1.2rem; color:var(--encre,#1B1A16); }
.biblio-sub{ font-size:.86rem; color:var(--muet,#5B5B54); }
.biblio-arrow{ flex:none; color:var(--or-txt,#8A6D0B); font-size:1.2rem; }

/* --- la modale --- */
.biblio-modal{ max-width:520px; width:92vw; }
.biblio-modal .m-body{ max-height:74vh; overflow:auto; }
.biblio-intro{ font-size:1.05rem; line-height:1.6; margin:0 0 14px; color:var(--ink,#20242A); }
.biblio-special{ font-weight:600; margin:0 0 8px; color:var(--encre,#1B1A16); }
.biblio-dates{ list-style:none; margin:0 0 4px; padding:0;
  display:grid; grid-template-columns:1fr 1fr; gap:6px 18px; }
.biblio-dates li{ position:relative; padding-left:18px; font-size:.96rem; }
.biblio-dates li::before{ content:"📅"; position:absolute; left:0; font-size:.85rem; }
.biblio-note{ margin-top:14px; font-size:.9rem; color:var(--muet,#5B5B54); font-style:italic; }
@media (max-width:520px){ .biblio-dates{ grid-template-columns:1fr; } }

/* --- édition (élu) --- */
.biblio-admin{ margin-top:18px; padding-top:14px; border-top:1px dashed var(--trait,#e3e0d4); }
.biblio-lbl{ display:block; font-weight:600; font-size:.82rem; margin:14px 0 5px; color:var(--encre,#1B1A16); }
.biblio-modal textarea,
.biblio-modal input[type=text]{ width:100%; font:inherit; padding:9px 11px; font-size:16px;
  border:1px solid var(--trait,#ccc); border-radius:8px; background:var(--pierre,#f7f5ec); }
.biblio-row{ display:flex; gap:8px; margin-bottom:6px; }
.biblio-row input{ flex:1 1 auto; }
.biblio-del{ flex:none; width:38px; border:1px solid var(--trait,#ccc); background:#fff;
  border-radius:8px; cursor:pointer; color:#B23120; font-size:1rem; }
.biblio-del:hover{ background:#FBEEEA; border-color:#B23120; }
.biblio-add{ margin-top:8px; }
.biblio-actions{ display:flex; gap:10px; margin-top:18px; }
.biblio-actions .btn{ flex:1 1 auto; justify-content:center; }
.biblio-modal .err{ color:#B23120; font-size:.9rem; margin-top:8px; min-height:1em; }

/* --- mode Noël --- */
html.theme-noel .biblio-card{ background:#18212C; }
html.theme-noel .biblio-title{ color:var(--ink,#E8EEF5); }
html.theme-noel .biblio-modal textarea,
html.theme-noel .biblio-modal input[type=text]{ background:#0F1620; color:var(--ink,#E8EEF5); }
html.theme-noel .biblio-del{ background:#0F1620; }
