/* =============================================================================
   CATÉGORIE & SECTION — système Madic (compact / sombre)
   Chargé en fin de body sur category_page.hbs et section_page.hbs.
   ============================================================================= */

/* Pas de hero (on démarre au fil d'ariane, comme l'article) */
.hero.pages--hero { display: none; }

/* ---------- Fil d'ariane (identique à l'article) ---------- */
.breadcrumbs__block { background: none; border: none; padding: 24px 0 0; margin: 0; }
.breadcrumbs__block .breadcrumbs { margin: 0; padding: 0; list-style: none; font: 500 13px/1.4 var(--md-font-ui, 'Hanken Grotesk', sans-serif); }
.breadcrumbs__block .breadcrumbs li { display: inline; font-size: 13px; max-width: none; }
.breadcrumbs__block .breadcrumbs li:first-child a::before { content: none !important; }
.breadcrumbs__block .breadcrumbs li + li::before {
  content: "/" !important;
  font-family: var(--md-font-ui, 'Hanken Grotesk', sans-serif) !important;
  color: var(--md-label-2, #9AA0AC);
  margin: 0 9px;
  font-size: 13px;
}
.breadcrumbs__block .breadcrumbs a { color: var(--md-text-2, #5B616E); text-decoration: none; }
.breadcrumbs__block .breadcrumbs a:hover { color: var(--md-red, #E2001A); }
.breadcrumbs__block .breadcrumbs li:first-child a { color: var(--md-red, #E2001A); font-weight: 600; }
.breadcrumbs__block .breadcrumbs li:last-child,
.breadcrumbs__block .breadcrumbs li:last-child a { color: var(--md-text, #1A1D23); font-weight: 600; }

/* ---------- En-tête de page ---------- */
.category-container,
.section-container { padding-bottom: 56px; }

.page-header {
  display: block;
  align-items: initial;
  flex-wrap: initial;
  justify-content: initial;
  padding: 18px 0 24px;
  margin: 0;
  border: none;
}
.page-header h1 {
  font: 800 30px/1.1 var(--md-font-display, 'Archivo', sans-serif);
  letter-spacing: -.02em;
  color: var(--md-text, #1A1D23);
  margin: 0 0 8px;
}
.page-header h1::after { content: none !important; }
.page-header-description {
  font: 400 15px/1.6 var(--md-font-ui, 'Hanken Grotesk', sans-serif);
  color: var(--md-text-muted, #6B7280);
  margin: 0;
  max-width: 820px;
}

/* ---------- Catégorie : sections en cartes ---------- */
.category-content .section-tree {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
}
@media (max-width: 760px) { .category-content .section-tree { grid-template-columns: 1fr; } }

.section-tree .section,
.category-container .section-tree .section {
  background: var(--md-card, #fff);
  border: 1px solid var(--md-border, #E7E9ED);
  border-radius: var(--md-r-card, 14px);
  padding: 22px;
  margin: 0;
  box-shadow: var(--md-shadow-card, 0 1px 2px rgba(20,24,32,.04), 0 1px 3px rgba(20,24,32,.06));
}

.section-tree-title { margin: 0 0 12px; padding: 0; }
.section-tree-title a {
  font: 700 16px/1.3 var(--md-font-ui, 'Hanken Grotesk', sans-serif);
  color: var(--md-ink, #15181E);
  text-decoration: none;
}
.section-tree-title a:hover { color: var(--md-red, #E2001A); }

/* ---------- Listes d'articles (lignes propres) ---------- */
.article-list { margin: 0; padding: 0; list-style: none; }
.article-list li,
.article-list-item {
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  align-items: center;
  gap: 8px;
  border: none !important;
  border-bottom: 1px solid var(--md-border-soft, #EEF0F3) !important;
}
.article-list-item:last-child { border-bottom: none !important; }
.article-list li::before { content: none !important; } /* retire l'icône fichier du thème */

.article-list-link {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 8px;
  border-radius: 8px;
  border-bottom: none;
  font: 500 14px/1.4 var(--md-font-ui, 'Hanken Grotesk', sans-serif);
  color: var(--md-text-2, #5B616E);
  text-decoration: none;
  transition: background .15s ease, color .15s ease;
}
.article-list-link::before {
  content: "\f15c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 12px;
  flex: none;
  width: 26px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  background: var(--md-red-tint, #FDECEC);
  color: var(--md-red, #E2001A);
}
.article-list-link:hover { background: var(--md-row-hover, #FAFAFB); color: var(--md-ink, #15181E); }

/* étoile « promu » : on garde mais discrète */
.article-list-item .icon-star { color: var(--md-warn-dot, #E08A00); flex: none; }
.article-list-item .icon-lock { color: var(--md-label-2, #9AA0AC); flex: none; }

.see-all-articles,
.section-tree .see-all-articles {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 12px;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  width: auto !important;
  font: 600 13px var(--md-font-ui, 'Hanken Grotesk', sans-serif) !important;
  color: var(--md-red, #E2001A) !important;
  text-decoration: none !important;
}
.see-all-articles:hover { color: var(--md-red-hover, #BE0016) !important; }

/* ---------- Sous-sections (pills) ---------- */
.section-lists { margin: 10px 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.section-lists li,
.section-lists-item { margin: 0 !important; padding: 0 !important; border: none !important; }
.section-lists li::before { content: none !important; }
.section-lists-item a {
  display: inline-flex;
  align-items: center;
  padding: 6px 13px;
  border-radius: var(--md-r-pill, 999px);
  background: var(--md-soft, #F8F9FB);
  border: 1px solid var(--md-border-soft, #EEF0F3);
  font: 600 12.5px var(--md-font-ui, 'Hanken Grotesk', sans-serif);
  color: var(--md-text-2, #5B616E);
  text-decoration: none;
}
.section-lists-item a:hover { border-color: var(--md-red, #E2001A); color: var(--md-red, #E2001A); }
.see-all-sections-trigger {
  font: 600 12.5px var(--md-font-ui, 'Hanken Grotesk', sans-serif);
  color: var(--md-red, #E2001A);
  cursor: pointer;
}

/* ---------- Section : liste d'articles dans une carte unique ---------- */
.section-content .page-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.section-content .article-list {
  background: var(--md-card, #fff);
  border: 1px solid var(--md-border, #E7E9ED);
  border-radius: var(--md-r-card, 14px);
  padding: 6px 18px;
  box-shadow: var(--md-shadow-card, 0 1px 2px rgba(20,24,32,.04), 0 1px 3px rgba(20,24,32,.06));
}
.section-content .article-list .article-list-link { padding: 13px 6px; }

/* Bouton « S'abonner » de la section (en-tête) */
.page-header .section-subscribe button {
  background: var(--md-red, #E2001A) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--md-r-btn, 10px) !important;
  padding: 9px 16px !important;
  font: 700 13px var(--md-font-ui, 'Hanken Grotesk', sans-serif) !important;
  width: auto !important;
}
.page-header .section-subscribe button:hover { background: var(--md-red-hover, #BE0016) !important; }

/* Catégorie vide */
.category-empty, .section-empty { color: var(--md-text-muted, #6B7280); font-style: normal; }
.category-empty a, .section-empty a { color: var(--md-red, #E2001A); text-decoration: none; }
