.grille-librairie { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; }
.carte-liste { display: flex; flex-direction: column; gap: 14px; padding: 24px; border-radius: var(--rayon-carte); background: var(--fond-carte); border: var(--bord-carte, 0) solid var(--bleu); }
.carte-liste-tete { display: flex; align-items: center; gap: 16px; }
.carte-liste-code { font-size: 2.6rem; font-weight: 900; line-height: 1; letter-spacing: -.03em; color: transparent; -webkit-text-stroke: 2px var(--bleu); min-width: 76px; }
.carte-liste h3 { font-size: 1.25rem; }
.carte-liste-tete p { margin: 2px 0 0; font-size: .9rem; color: var(--doux); }
.ouvrages { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; flex: 1; font-size: .95rem; }
.ouvrages li { display: flex; gap: 10px; align-items: flex-start; }
.ouvrages .ico { width: 18px; height: 18px; margin-top: 3px; color: var(--bleu); }
.carte-liste-plus { margin: 0; font-size: .92rem; font-weight: 600; color: var(--bleu); }
.carte-liste .bouton { align-self: flex-start; }
.carte-liste-attente { background: #fff; border: 2px dashed rgba(15, 61, 110, .35); color: var(--doux); }
.carte-espace-lien { display: flex; flex-direction: column; text-decoration: none; color: var(--encre); }
.carte-espace-lien:hover { border-color: var(--bleu); color: var(--encre); }
.carte-espace-lien p { color: var(--doux); }
.librairie-bas { align-items: start; }
