/* ============================================================
   PMD-GAZ — Pages de liste (recherche, archives, index)
   Complément manuel à pmd.css (lui généré depuis les maquettes).
   Ne contient que ce que les maquettes ne couvraient pas :
   barre de recherche hors 404, pagination, bloc « aucun résultat ».
   ============================================================ */

/* ---------- Barre de recherche ---------- */
.pmd-searchbar {
  display: grid;
  grid-template-columns: 1fr auto;
  border: 1.5px solid var(--c-ink-900);
  background: var(--c-bone-50);
  max-width: 760px;
}
.pmd-searchbar input {
  border: 0;
  padding: 18px 22px;
  font-family: var(--font-display);
  font-size: var(--fs-md);
  background: transparent;
  color: var(--c-ink-900);
  outline: none;
  min-width: 0;
  -webkit-appearance: none;
  appearance: none;
}
.pmd-searchbar input::placeholder { color: var(--c-ink-500); }
.pmd-searchbar input:focus-visible { outline: 2px solid var(--c-blue-700); outline-offset: -4px; }
.pmd-searchbar button {
  border: 0;
  background: var(--c-ink-900);
  color: var(--c-bone-50);
  padding: 0 28px;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: var(--fs-sm);
  letter-spacing: var(--tr-snug);
  cursor: pointer;
  transition: var(--tr-fast);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.pmd-searchbar button:hover { background: var(--c-orange-600); color: #1a1000; }
@media (max-width: 520px) {
  .pmd-searchbar { grid-template-columns: 1fr; }
  .pmd-searchbar button { padding: 14px 20px; justify-content: center; }
}

/* Masqué visuellement, lu par les lecteurs d'écran (équivalent GeneratePress,
   redéfini ici pour ne pas dépendre du CSS du thème parent). */
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* ---------- En-tête de liste ---------- */
.pmd-listing-search { margin-top: var(--sp-8); }
.pmd-listing-term {
  font-family: "Times New Roman", Georgia, serif;
  font-style: italic;
  font-weight: 500;
  color: var(--c-blue-700);
}

/* ---------- Aucun résultat ---------- */
.pmd-listing-empty {
  border: 1.5px solid var(--c-ink-900);
  background: var(--c-bone-50);
  padding: var(--sp-7);
  margin-bottom: var(--sp-10);
}
.pmd-listing-empty .ple-tag {
  font-family: var(--font-mono);
  font-size: 10px;
  color: var(--c-orange-600);
  letter-spacing: var(--tr-wide);
  text-transform: uppercase;
  display: block;
  margin-bottom: var(--sp-3);
}
.pmd-listing-empty h2 {
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(1.375rem, 3vw, 1.875rem);
  line-height: 1.1;
  letter-spacing: -0.025em;
  margin-bottom: var(--sp-3);
}
.pmd-listing-empty p {
  font-family: var(--font-body);
  font-size: var(--fs-md);
  line-height: 1.6;
  color: var(--c-ink-500);
  max-width: 68ch;
  margin: 0 0 var(--sp-6);
}
.pmd-listing-empty .pmd-searchbar { margin-bottom: 0; }

/* ---------- Pagination ---------- */
.pmd-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin-top: var(--sp-10);
  border: 1.5px solid var(--c-ink-900);
  background: var(--c-bone-50);
  width: fit-content;
}
.pmd-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  padding: 12px 16px;
  border-right: var(--bd-hairline);
  font-family: var(--font-display);
  font-weight: 600;
  font-size: var(--fs-sm);
  letter-spacing: var(--tr-snug);
  color: var(--c-ink-700);
  text-decoration: none;
  transition: var(--tr-fast);
}
.pmd-pagination .page-numbers:last-child { border-right: 0; }
.pmd-pagination a.page-numbers:hover { background: var(--c-bone-100); color: var(--c-blue-700); }
.pmd-pagination .page-numbers.current { background: var(--c-ink-900); color: var(--c-bone-50); }
.pmd-pagination .page-numbers.dots { color: var(--c-ink-300); }

/* Carte sans accroche : garde le pied de carte aligné en bas comme le fait
   .art-desc { flex-grow: 1 } sur les cartes qui en ont une. */
.article-card .art-spacer { flex-grow: 1; min-height: var(--sp-2); }
