/* ════════════════════════════════════════════════════════════════
   pape-france.fr — /inscriptions/  (page hub)
   ────────────────────────────────────────────────────────────────
   Statuts, sur .pf-insc-item :
     data-statut="ouvert"     → vert   · inscription en cours
     data-statut="bientot"    → cyan   · ouvre prochainement
     data-statut="complet"    → rouge  · jauge atteinte
     data-statut="invitation" → marine · sur invitation
     data-statut="libre"      → ambre  · accès libre, sans inscription
   ════════════════════════════════════════════════════════════════ */

/* .pf-section (components.css) ne porte que scroll-margin :
   on lui donne son rythme vertical ici. */
.pf-section { padding: clamp(48px,7vw,76px) 0; }

/* ── Barre de synthèse (compteurs + rappel) ───────────────────── */
.pf-insc-summary{
  display:flex; flex-wrap:wrap; align-items:center; gap:12px 28px;
  padding:18px clamp(20px,3vw,28px);
  background:var(--primary-tint,#eef1fb);
  border-left:4px solid var(--yellow,#FFA107);
  border-radius:4px;
  margin-bottom:clamp(24px,4vw,36px);
}
.pf-insc-summary__stat{
  font-size:15px; font-weight:600; color:var(--primary,#0F2D85);
  display:inline-flex; align-items:baseline; gap:8px;
}
.pf-insc-summary__stat b{ font-size:26px; line-height:1; color:var(--ink,#0F2D85); }
.pf-insc-summary__note{
  flex:1 1 22rem;                 /* partage la ligne, s'aligne à gauche au repli */
  font-size:14px; line-height:1.5; color:var(--ink-soft,#47506f);
  margin:0; max-width:46ch;
}

/* ── Liste des rendez-vous ────────────────────────────────────── */
.pf-insc-list{ display:flex; flex-direction:column; gap:clamp(14px,2vw,20px); }

.pf-insc-item{
  --st:var(--navy,#0F2D85);
  position:relative;
  background:var(--paper,#fff);
  border:1px solid var(--rule,rgba(15,45,133,.14));
  border-left:5px solid var(--st);
  border-radius:4px;
  box-shadow:0 18px 44px -38px rgba(15,45,133,.45);
  padding:clamp(20px,3vw,26px);
  display:grid; grid-template-columns:1fr auto; gap:16px 28px;
  align-items:start;
}
.pf-insc-item[data-statut="ouvert"]{     --st:#15753F; }  /* AA : ~5.4:1 avec blanc */
.pf-insc-item[data-statut="bientot"]{    --st:var(--cyan,#1ACCFF); }
.pf-insc-item[data-statut="complet"]{    --st:var(--red,#F71021); }
.pf-insc-item[data-statut="invitation"]{ --st:var(--navy,#0F2D85); }
.pf-insc-item[data-statut="libre"]{      --st:var(--yellow,#FFA107); }

.pf-insc-item__main{ min-width:0; }
.pf-insc-item__when{
  font-size:12.5px; font-weight:600; letter-spacing:.1em; text-transform:uppercase;
  color:var(--primary-deep,#091d5a); margin-bottom:6px;   /* --st réservé aux remplissages */
}
.pf-insc-item__title{
  font-family:'LeonXIV','Jost',sans-serif;
  font-size:clamp(19px,4vw,24px); text-transform:uppercase;
  line-height:1.14; letter-spacing:.005em;
  color:var(--navy,#0F2D85); margin:0 0 8px;
}
.pf-insc-item__title a{ color:inherit; text-decoration:none; }
.pf-insc-item__title a:hover{
  text-decoration:underline; text-decoration-color:var(--cyan,#1ACCFF);
  text-decoration-thickness:3px; text-underline-offset:5px;
}
/* L'icône est alignée en inline : garder la ligne non-flex pour que
   la typographie inline (<sup>, <em>…) reste intacte. */
.pf-insc-item__place{
  font-size:14.5px; line-height:1.5; color:var(--ink-soft,#47506f); margin-bottom:10px;
}
.pf-insc-item__place svg{
  width:15px; height:15px; flex:none; color:var(--st);
  vertical-align:-2px; margin-right:7px;
}

.pf-insc-item__meta{ display:flex; flex-wrap:wrap; gap:8px 10px; margin-bottom:12px; }
.pf-insc-tag{
  font-size:11.5px; font-weight:600; letter-spacing:.06em; text-transform:uppercase;
  padding:5px 11px; border-radius:3px;
  background:var(--primary-tint,#eef1fb); color:var(--primary-deep,#091d5a);
}
.pf-insc-tag--jauge{ background:#f6f1e6; color:#8a5a00; }

.pf-insc-item__desc{ font-size:15px; line-height:1.6; color:var(--ink-soft,#47506f); margin:0; }

.pf-insc-item__aside{
  display:flex; flex-direction:column; align-items:flex-end; gap:12px; text-align:right;
}
.pf-insc-badge{
  display:inline-flex; align-items:center; gap:7px;
  font-size:12px; font-weight:600; letter-spacing:.08em; text-transform:uppercase;
  padding:7px 13px; border-radius:999px;
  color:#fff; background:var(--st); white-space:nowrap;
}
.pf-insc-badge::before{
  content:""; width:7px; height:7px; border-radius:50%;
  background:currentColor; flex:none;
}
/* accents clairs : texte sombre pour le contraste */
.pf-insc-item[data-statut="libre"] .pf-insc-badge,
.pf-insc-item[data-statut="bientot"] .pf-insc-badge{ color:var(--ink,#0F2D85); }

.pf-insc-item__note{ font-size:12.5px; line-height:1.45; color:var(--ink-soft,#47506f); max-width:22ch; }

/* ── Jauge de remplissage ─────────────────────────────────────── */
.pf-insc-gauge{ width:100%; margin-top:4px; }
.pf-insc-gauge__bar{ height:6px; border-radius:99px; overflow:hidden; background:var(--primary-tint,#eef1fb); }
.pf-insc-gauge__fill{ height:100%; border-radius:99px; background:var(--st); }
.pf-insc-gauge__label{ display:block; margin-top:5px; font-size:12px; font-weight:600; color:var(--ink-soft,#47506f); }

/* ── Listes à puces dans les .pf-feature (cas particuliers / apporter) ── */
.pf-insc-ul{
  margin:0; padding-left:1.1em;
  font-size:14.5px; line-height:1.62; color:var(--ink-soft,#47506f);
}
.pf-insc-ul li{ margin-bottom:6px; }
.pf-insc-ul li::marker{ color:var(--yellow,#FFA107); }

/* ── Rangée de boutons centrée (section « Besoin d'aide ? ») ──── */
.pf-insc-actions{
  display:flex; flex-wrap:wrap; gap:14px; justify-content:center;
}

/* ── Mobile ───────────────────────────────────────────────────── */
@media (max-width:760px){
  .pf-insc-summary__note{ margin-left:0; }
  .pf-insc-item{ grid-template-columns:1fr; }
  .pf-insc-item__aside{ align-items:stretch; text-align:left; }
  .pf-insc-item__aside .pf-btn{ justify-content:center; }
  .pf-insc-badge{ align-self:flex-start; }
  .pf-insc-item__note{ max-width:none; }
}
