/* Niveaux repliés du chemin (javascripts/course-path/ui/fold-levels.js, 11/11/2026) : flèche sur le
 * titre de chaque niveau, trait du chemin qui continue derrière les niveaux repliés. Chargé après
 * course-path.css. */

.cpath-zone__toggle:focus-visible {
  outline: 2px solid #c2206a;
  outline-offset: 2px;
}

/* Titre de niveau devenu bouton : même pastille (.cpath-zone__badge), flèche à la fin. */
.cpath-zone__toggle {
  border: 0;
  cursor: pointer;
  text-align: center;
  -webkit-tap-highlight-color: transparent;
}
.cpath-zone__chev {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.cpath-zone__toggle[aria-expanded="true"] .cpath-zone__chev {
  transform: rotate(180deg);
}
/* Niveau replié : son titre seul, avec assez d'air pour que le trait du chemin se voie entre deux
 * titres (Christophe 11/11/2026 : le trait, pas de pastilles réduites). */
.cpath-zone.is-folded {
  position: relative;
  padding: 16px 0;
}
/* Repère du trait (ui/app.js PathLine) : un point sans taille au milieu du niveau replié, sur l'axe
 * du chemin — le centre sur bureau, le bord de départ sous 900 px (centre des pastilles de 56 px). */
.cpath-pathpoint {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  pointer-events: none;
}
@media (max-width: 899px) {
  .cpath-pathpoint {
    left: 28px;
  }
  html[dir="rtl"] .cpath-pathpoint {
    left: auto;
    right: 28px;
  }
}
.cpath-zone.is-folded .cpath-zone__head {
  margin-bottom: 0;
}
.cpath-zone.is-folded .cpath-zone__badge {
  margin-bottom: 0;
}
@media (prefers-reduced-motion: reduce) {
  .cpath-zone__chev {
    transition: none;
  }
}
