/* Formation 1arc — styles complémentaires */

:root { color-scheme: light; }

/* Apparition douce des modules au scroll */
.reveal {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .5s ease, transform .5s ease;
}
.reveal.is-visible {
  opacity: 1;
  transform: none;
}

/* Choix de quiz */
.quiz-option {
  cursor: pointer;
  transition: border-color .15s ease, background-color .15s ease, transform .1s ease;
}
.quiz-option:hover { border-color: #c4b5fd; background-color: #faf5ff; }
.quiz-option:active { transform: scale(.99); }
.quiz-option.selected { border-color: #7c3aed; background-color: #f5f3ff; }
.quiz-option.correct { border-color: #16a34a; background-color: #f0fdf4; }
.quiz-option.incorrect { border-color: #dc2626; background-color: #fef2f2; }
.quiz-option input { pointer-events: none; }

/* Etat désactivé après validation */
.quiz-locked .quiz-option { cursor: default; }
.quiz-locked .quiz-option:hover { border-color: #e2e8f0; background-color: #fff; }
.quiz-locked .quiz-option.selected { border-color: #7c3aed; background-color: #f5f3ff; }
.quiz-locked .quiz-option.correct { border-color: #16a34a; background-color: #f0fdf4; }
.quiz-locked .quiz-option.incorrect { border-color: #dc2626; background-color: #fef2f2; }

/* Puce de statut dans la nav */
.nav-dot { transition: background-color .3s ease, transform .3s ease; }

/* Barre de critères de l'exercice de brief */
.criterion {
  transition: color .2s ease, background-color .2s ease;
}
.criterion.met .crit-icon {
  background-color: #dcfce7;
  color: #16a34a;
  border-color: #86efac;
}
.criterion.met .crit-label { color: #166534; }

/* Badge activité terminée */
@keyframes pop {
  0% { transform: scale(.7); opacity: 0; }
  60% { transform: scale(1.08); }
  100% { transform: scale(1); opacity: 1; }
}
.pop-in { animation: pop .35s ease both; }

/* Impression du certificat */
@media print {
  body * { visibility: hidden; }
  #certCard, #certCard * { visibility: visible; }
  #certCard { position: absolute; inset: 0; }
}
