/* Répertoire des bulletins */
.repertoire { padding: 0 0 2rem; }
.rep-intro { color: var(--soft); max-width: 46rem; }
.rep-count { color: var(--muted); font-size: 0.9rem; }
.rep-scroll {
  max-height: 32rem; overflow: auto; background: var(--surface); border: 1px solid var(--border);
  border-radius: 12px; margin-top: 0.75rem;
}
.rep-table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.rep-table thead th {
  position: sticky; top: 0; z-index: 1; background: var(--ink); color: #fff; text-align: left;
  padding: 0.7rem 1rem; font-size: 0.85rem; letter-spacing: 0.04em; text-transform: uppercase;
}
.rep-table tbody { border-top: 1px solid var(--border); }
.rep-table tbody:first-of-type { border-top: 0; }
.rep-table td { padding: 0.45rem 1rem; vertical-align: top; }
.rep-num {
  width: 4.5rem; padding: 0.6rem 1rem; text-align: left; vertical-align: top; background: #faf8f3;
  font-family: var(--serif); font-size: 1.15rem; color: var(--muted);
}
.rep-num.online { background: #f3e3e4; }
.rep-num a { font-weight: 700; color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.rep-num a:hover { color: var(--accent-dark); }
.rep-titre { width: 62%; }
.rep-auteur { color: var(--soft); }
.rep-note td { background: #fbf6e6; font-style: italic; color: var(--soft); padding: 0.5rem 1rem; }
.list-title { font-size: clamp(1.6rem, 3vw, 2rem); margin: 2.5rem 0 1rem; }
.rep-date { width: 8.5rem; vertical-align: top; color: var(--accent-dark); font-weight: 600; white-space: nowrap; background: #faf8f3; }
.rep-date:empty { background: #faf8f3; }
.rep-num.online + .rep-date { background: #f3e3e4; }

/* Mobile : présentation empilée (numéro et parution, puis titre, puis auteur) */
@media (max-width: 640px) {
  .rep-scroll { max-height: 70vh; }
  .rep-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .rep-table, .rep-table tbody, .rep-table tr, .rep-table td, .rep-table th { display: block; width: auto; }
  .rep-table tbody { padding: 0.8rem 1rem; }
  .rep-table .rep-num, .rep-table .rep-date { display: inline; width: auto; padding: 0; background: none; }
  .rep-table .rep-num { font-size: 1.35rem; margin-right: 0.6rem; }
  .rep-table .rep-date { font-size: 0.85rem; white-space: normal; }
  .rep-table .rep-titre { width: auto; padding: 0.4rem 0 0; font-weight: 500; }
  .rep-table .rep-auteur { padding: 0 0 0.2rem; font-size: 0.85rem; }
  .rep-table .rep-auteur:empty { display: none; }
  .rep-table .rep-auteur:not(:empty)::before { content: 'Par '; }
  .rep-table .rep-note td { padding: 0.5rem 0.75rem; margin-top: 0.4rem; border-radius: 8px; }
}

/* Tablette : colonnes rééquilibrées pour que les noms d'auteurs tiennent sur une ligne */
@media (min-width: 641px) and (max-width: 1024px) {
  .rep-titre { width: auto; }
  .rep-auteur { min-width: 10rem; }
  .rep-date { width: 7rem; white-space: normal; }
}
