/*
 * Retouches du thème sur l'extension cnpr-inscriptions : la liste des
 * créneaux (et son filtre). Les écrans de l'adhérent — connexion, espace,
 * tunnel, règlement — ont leur feuille : cnpr-inscriptions-tunnel.css.
 *
 * L'extension apporte son style complet, aux jetons du contrat ; ici, seulement
 * le dessin propre au « soleil sur l'eau ». Sa feuille se charge AVANT
 * celle-ci : à sélecteur égal, la retouche l'emporte, sans `body` en tête.
 * Les couleurs sont celles du contrat (--cnpr-*), la ligne de bouées est
 * propre au thème (--bouees).
 */

/* --- La liste par activité ([cnpr_creneaux_publics]) ----------------------
   L'écran des horaires, filtré par public et par activité ; la grille de la
   semaine n'en est plus que la variante planning="grille". Plus de cartes
   sur deux colonnes : un index pleine largeur, le nom et la durée à gauche, les horaires à droite, un
   filet d'eau entre deux activités — le même rythme que les pages Enfants et
   Adultes. Chaque règle est à deux classes au moins, autant que celles de
   l'extension qu'elle remplace ; l'ordre de chargement fait le reste. */
.cnpr-creneaux-publics { gap: 56px; }
.cnpr-creneaux-publics .cnpr-creneaux-saison { font-size: 15px; }
.cnpr-creneaux-publics .cnpr-creneaux-public-titre {
  margin: 0 0 6px;
  padding: 0 0 14px;
  border-bottom: 0;
  font-size: clamp(24px, 3vw, 32px);
  position: relative;
}
.cnpr-creneaux-publics .cnpr-creneaux-public-titre::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 10px;
  background: var(--bouees);
}
.cnpr-creneaux-publics .cnpr-creneaux { display: block; }
.cnpr-creneaux-publics .cnpr-creneaux-activite {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  grid-template-rows: auto 1fr;
  column-gap: 40px;
  padding: 22px 0;
  border: 0;
  border-radius: 0;
  background: none;
}
/* Le filet SÉPARE deux activités visibles : le filtre de la liste en masque,
   et la première montrée n'est pas toujours le premier enfant — d'où « une
   activité visible la précède » plutôt que :first-child. */
.cnpr-creneaux-publics .cnpr-creneaux-activite:not([hidden]) ~ .cnpr-creneaux-activite { border-top: 2px solid var(--cnpr-filet); }
.cnpr-creneaux-publics .cnpr-creneaux-titre {
  grid-column: 1;
  margin: 0;
  font-size: 19px;
  color: var(--cnpr-couleur-titre);
}
/* L'âge sous le nom de l'activité : du texte courant, pas du titre. */
.cnpr-creneaux-publics .cnpr-creneaux-ages {
  font-family: var(--soleil-texte);
  font-size: 14.5px;
  font-weight: 500;
  color: var(--soleil-gris);
}
/* La durée et le prix de départ : deux pastilles côte à côte sous le nom,
   comme sur les pages Enfants et ados / Adultes. */
.cnpr-creneaux-publics .cnpr-creneaux-faits {
  grid-column: 1;
  align-self: start;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 0;
}
/* `p.` : la couleur doit battre `.page-standard .page-content p` (0,2,1) de
   heritage.css, chargée avant — à égalité, l'ordre la donne à cette feuille. */
.cnpr-creneaux-publics p.cnpr-creneaux-prix { margin: 0; font-size: 13.5px; }
.cnpr-creneaux-publics .cnpr-creneaux-prix a {
  display: inline-block;
  padding: 1px 9px;
  border: 2px solid var(--cnpr-filet);
  border-radius: 999px;
  font-weight: 700;
  color: var(--cnpr-couleur-titre);
  text-decoration: none;
}
.cnpr-creneaux-publics .cnpr-creneaux-prix a:hover,
.cnpr-creneaux-publics .cnpr-creneaux-prix a:focus-visible {
  border-color: var(--cnpr-couleur-titre);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.cnpr-creneaux-publics p.cnpr-creneaux-duree {
  margin: 0;
  padding: 3px 11px;
  border-radius: 999px;
  background: var(--cnpr-fond-doux);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--cnpr-couleur-titre);
}
.cnpr-creneaux-publics .cnpr-creneaux-table {
  grid-column: 2;
  grid-row: 1 / span 2;
  margin: 0;
  align-self: start;
}
.cnpr-creneaux-publics .cnpr-creneaux-table th,
.cnpr-creneaux-publics .cnpr-creneaux-table td {
  padding: 7px 0;
  border-bottom: 1px solid #edf5fb;
  font-size: 16px;
}
.cnpr-creneaux-publics .cnpr-creneaux-table tr:last-child th,
.cnpr-creneaux-publics .cnpr-creneaux-table tr:last-child td { border-bottom: 0; }
.cnpr-creneaux-publics .cnpr-creneaux-table .cnpr-creneaux-label {
  width: 30%;
  padding-right: 18px;
  font-weight: 700;
  color: var(--cnpr-couleur-texte-doux);
  white-space: normal;
}
.cnpr-creneaux-publics .cnpr-creneaux-heures { color: var(--cnpr-couleur-texte); font-weight: 600; }
.cnpr-creneaux-publics .cnpr-creneaux-table .cnpr-creneaux-educateur { font-weight: 400; }
@media (max-width: 760px) {
  .cnpr-creneaux-publics .cnpr-creneaux-activite { grid-template-columns: 1fr; }
  .cnpr-creneaux-publics .cnpr-creneaux-table { grid-column: 1; grid-row: auto; margin-top: 12px; }
}
@media (max-width: 480px) {
  .cnpr-creneaux-publics .cnpr-creneaux-table th { border-bottom: 0; padding-bottom: 0; }
}

/* L'astérisque des prix de départ (cnpr_insc_tarifs_prix_etoile_html()). */
.cnpr-creneaux-publics .cnpr-prix-etoile { margin-left: 1px; }
