/*
 * MyE360 · Sections propres aux pages (fichier généré par outils/build.py depuis _src/css)
 * Une section par page, portée par [data-page="…"] sur .mye-app. Aucune page ne recrée un composant.
 */

/* ---------- 00-socle.css ---------- */
/* ===== etudiant.accueil (D12) ===== */
/* Aucune règle propre : la page n'utilise que les structures et composants communs. */

/* ===== preview.foundations (D02) : nuancier de prévisualisation ===== */
[data-page="foundations"] .pv-swatches { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
@media (min-width: 48rem) { [data-page="foundations"] .pv-swatches { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
[data-page="foundations"] .pv-sw { display: flex; flex-direction: column; gap: 0.375rem; font-size: var(--mye-fs-small); }
[data-page="foundations"] .pv-sw__c { height: 4rem; border-radius: var(--mye-r-m); border: 0.5px solid var(--mye-sep); }
[data-page="foundations"] .pv-sw--bg .pv-sw__c { background: var(--mye-bg); }
[data-page="foundations"] .pv-sw--bg-2 .pv-sw__c { background: var(--mye-bg-2); }
[data-page="foundations"] .pv-sw--surface .pv-sw__c { background: var(--mye-surface); }
[data-page="foundations"] .pv-sw--surface-2 .pv-sw__c { background: var(--mye-surface-2); }
[data-page="foundations"] .pv-sw--surface-3 .pv-sw__c { background: var(--mye-surface-3); }
[data-page="foundations"] .pv-sw--text .pv-sw__c { background: var(--mye-text); }
[data-page="foundations"] .pv-sw--text-2 .pv-sw__c { background: var(--mye-text-2); }
[data-page="foundations"] .pv-sw--sep .pv-sw__c { background: var(--mye-sep); }
[data-page="foundations"] .pv-sw--control .pv-sw__c { background: var(--mye-control); }
[data-page="foundations"] .pv-sw--primary .pv-sw__c { background: var(--mye-primary); }
[data-page="foundations"] .pv-sw--primary-pressed .pv-sw__c { background: var(--mye-primary-pressed); }
[data-page="foundations"] .pv-sw--primary-soft .pv-sw__c { background: var(--mye-primary-soft); }
[data-page="foundations"] .pv-sw--on-primary .pv-sw__c { background: var(--mye-on-primary); }
[data-page="foundations"] .pv-sw--success .pv-sw__c { background: var(--mye-success); }
[data-page="foundations"] .pv-sw--success-soft .pv-sw__c { background: var(--mye-success-soft); }
[data-page="foundations"] .pv-sw--danger .pv-sw__c { background: var(--mye-danger); }
[data-page="foundations"] .pv-sw--danger-soft .pv-sw__c { background: var(--mye-danger-soft); }
[data-page="foundations"] .pv-sw--warning .pv-sw__c { background: var(--mye-warning); }
[data-page="foundations"] .pv-sw--warning-soft .pv-sw__c { background: var(--mye-warning-soft); }
[data-page="foundations"] .pv-sw--info .pv-sw__c { background: var(--mye-info); }
[data-page="foundations"] .pv-sw--info-soft .pv-sw__c { background: var(--mye-info-soft); }
[data-page="foundations"] .pv-sw--brand-red .pv-sw__c { background: var(--mye-brand-red); }
[data-page="foundations"] .pv-sw--brand-yellow .pv-sw__c { background: var(--mye-brand-yellow); }
[data-page="foundations"] .pv-sw--media-blue .pv-sw__c { background: var(--mye-media-blue); }
[data-page="foundations"] .pv-sw--media-sky .pv-sw__c { background: var(--mye-media-sky); }
[data-page="foundations"] .pv-sw--media-sand .pv-sw__c { background: var(--mye-media-sand); }
[data-page="foundations"] .pv-sw--media-ink .pv-sw__c { background: var(--mye-media-ink); }
[data-page="foundations"] .pv-radii { display: flex; flex-wrap: wrap; gap: 1rem; }
[data-page="foundations"] .pv-radius { width: 5rem; height: 5rem; background: var(--mye-surface-2); display: flex; align-items: flex-end; padding: 0.5rem; font-size: var(--mye-fs-caption); }
[data-page="foundations"] .pv-radius--xs { border-radius: var(--mye-r-xs); }
[data-page="foundations"] .pv-radius--s { border-radius: var(--mye-r-s); }
[data-page="foundations"] .pv-radius--m { border-radius: var(--mye-r-m); }
[data-page="foundations"] .pv-radius--btn { border-radius: var(--mye-r-btn); }
[data-page="foundations"] .pv-radius--l { border-radius: var(--mye-r-l); }
[data-page="foundations"] .pv-radius--xl { border-radius: var(--mye-r-xl); }
[data-page="foundations"] .pv-radius--full { border-radius: var(--mye-r-full); }
[data-page="foundations"] .pv-icons { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.75rem; }
@media (min-width: 48rem) { [data-page="foundations"] .pv-icons { grid-template-columns: repeat(8, minmax(0, 1fr)); } }
[data-page="foundations"] .pv-icon { display: flex; flex-direction: column; align-items: center; gap: 0.375rem; padding: 0.75rem 0.25rem; border-radius: var(--mye-r-m); background: var(--mye-surface-2); font-size: 0.75rem; color: var(--mye-text-2); text-align: center; word-break: break-all; }
[data-page="foundations"] .pv-icon .mye-i { color: var(--mye-text); }

/* ===== etudiant.qcm-passage (D07) : question, repère « à revoir », fin de tentative ===== */
[data-page="qcm-passage"] .mye-qcm-legend { display: flex; flex-direction: column; gap: 0.625rem; }
[data-page="qcm-passage"] .mye-qcm-type { font-size: var(--mye-fs-caption); font-weight: 600; color: var(--mye-text-2); text-transform: uppercase; letter-spacing: 0.04em; }
[data-page="qcm-passage"] .mye-qcm-enonce { font-size: var(--mye-fs-h2); line-height: 1.35; font-weight: 600; letter-spacing: -0.01em; }
[data-page="qcm-passage"] .mye-qcm-figure { display: flex; flex-direction: column; gap: 0.5rem; }
[data-page="qcm-passage"] .mye-qcm-flag { min-height: 3rem; padding: 0; border: 0; background: transparent; color: var(--mye-text-2); font-size: var(--mye-fs-body-s); font-weight: 600; display: inline-flex; align-items: center; gap: 0.375rem; }
[data-page="qcm-passage"] .mye-qcm-flag[aria-pressed="true"] { color: var(--mye-warning); }
[data-page="qcm-passage"] .mye-qcm-flag[aria-pressed="true"] .mye-i { fill: var(--mye-brand-yellow); }
[data-page="qcm-passage"] .mye-qcm-signal { color: var(--mye-text-2); font-weight: 400; font-size: var(--mye-fs-body-s); }
[data-page="qcm-passage"] .mye-qcm-demo { align-self: flex-end; }
[data-page="qcm-passage"] .mye-qcm-fin { padding-top: 4rem; }
[data-page="qcm-passage"] .mye-actionbar--focus { border-top: 0.5px solid var(--mye-sep); }

@media (min-width: 48rem) {
  [data-page="qcm-passage"] .mye-actionbar--focus { margin-top: 1.5rem; padding-left: 0; padding-right: 0; max-width: none; }
  [data-page="qcm-passage"] .mye-focus-main .mye-actionbar { padding-left: 2.5rem; padding-right: 2.5rem; max-width: 45rem; }
}

@media (min-width: 64rem) {
  [data-page="qcm-passage"] .mye-focus-main .mye-actionbar { padding-left: 0; padding-right: 0; }
}

/* ===== etudiant.qcm-recapitulatif et etudiant.qcm-reprise (D07) : écrans d'issue ===== */
[data-page="qcm-recapitulatif"] .mye-qcm-issue,
[data-page="qcm-reprise"] .mye-qcm-issue { padding-top: 3rem; }
[data-page="qcm-recapitulatif"] .mye-qcm-issue[data-etat="envoi"] { align-items: center; text-align: center; padding-top: 6rem; }


/* ---------- D06.css ---------- */
/* ===== Lot D06 · QCM étudiant, liste et préparation ===== */

[data-page="qcm-liste"] .mye-qcm-issue,
[data-page="qcm-detail"] .mye-qcm-issue,
[data-page="qcm-preparation"] .mye-qcm-issue { padding-top: 3rem; }

/* Fiche du QCM : étiquette « Exemple, non noté » permanente */
[data-page="qcm-detail"] .mye-exemple-bandeau { position: sticky; top: 0; z-index: 5; }

/* Fiche du QCM : texte d'aide en bloc sous une valeur */
[data-page="qcm-detail"] .mye-block { display: block; margin-top: 0.25rem; font-weight: 400; }

/* Préparation : aménagement sur fond primaire doux (planche D06) et attente centrée */
[data-page="qcm-preparation"] .mye-alert--doux { background: var(--mye-primary-soft); }
[data-page="qcm-preparation"] .mye-alert--doux strong { color: var(--mye-primary); }
[data-page="qcm-preparation"] .mye-centre { align-items: center; padding-top: 5rem; }

/* Espace sous le contenu pour une barre d'action à deux boutons empilés */
[data-page="qcm-detail"] .mye-actionbar-spacer--haut { height: 9.5rem; }

@media (min-width: 64rem) {
  [data-page="qcm-detail"] .mye-actionbar-spacer--haut { display: none; }
}


/* ---------- D08.css ---------- */
/* ===== Lot D08 · Résultats QCM, corrigés et incidents ===== */

/* Compétence : libellé, niveau en texte, barre fine (planche D08) */
.mye-competence { display: flex; flex-direction: column; gap: 0.375rem; padding: 0.75rem 0; border-bottom: 0.5px solid var(--mye-sep); }
.mye-competence:last-child { border-bottom: 0; }

/* Question du corrigé (planche D08) */
.mye-corrige { display: flex; flex-direction: column; gap: 0.5rem; padding-bottom: 1rem; border-bottom: 0.5px solid var(--mye-sep); scroll-margin-top: 4rem; }
.mye-corrige:last-child { border-bottom: 0; }
.mye-corrige__enonce { font-size: var(--mye-fs-body-l); line-height: 1.4; font-weight: 600; }

[data-page="qcm-corrige"] .mye-corrige-nav { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.5rem; }
[data-page="qcm-corrige"] .mye-corrige-nav a { min-height: 3rem; border-radius: var(--mye-r-m); border: 1.5px solid var(--mye-control); display: flex; align-items: center; justify-content: center; font-weight: 600; text-decoration: none; color: var(--mye-text); }
[data-page="qcm-corrige"] .mye-corrige-nav a.is-ok { border-color: var(--mye-success); color: var(--mye-success); }
[data-page="qcm-corrige"] .mye-corrige-nav a.is-ko { border-color: var(--mye-danger); color: var(--mye-danger); }

[data-page="qcm-recu"] .mye-qcm-issue,
[data-page="qcm-resultat"] .mye-qcm-issue,
[data-page="qcm-incident"] .mye-qcm-issue { padding-top: 3rem; }

/* Titre de page porté par une ligne de contexte (le score est l'information dominante) */
[data-page="qcm-resultat"] .mye-h-texte { font-size: var(--mye-fs-body-s); font-weight: 400; }


/* ---------- D09.css ---------- */
/* ===== Lot D09 · banque de questions ===== */

/* Revue : la comparaison remplace la file en mobile, s'affiche à droite en largeur */
[data-page="qcm-revue"] .mye-split__decision { padding-bottom: 2rem; }
/* En mobile et en portrait, la décision remplace la file dès qu'elle est rendue (sans dépendre de la démonstration) */
@media (max-width: 63.99rem) {
  [data-page="qcm-revue"] .mye-split:has(.mye-split__decision:not([hidden])) .mye-split__list { display: none; }
}
@media (min-width: 64rem) {
  [data-page="qcm-revue"] .mye-split__decision { padding: 2.5rem; max-width: none; margin: 0; }
}

/* Import : le détail de ligne reste visible sous la liste en mobile et en portrait */
@media (max-width: 63.99rem) {
  [data-page="qcm-import"] .mye-split__detail--toujours { display: flex; flex-direction: column; gap: 1.5rem; padding: 1.5rem 1.25rem 0; }
}
@media (min-width: 48rem) and (max-width: 63.99rem) {
  [data-page="qcm-import"] .mye-split__detail--toujours { max-width: 45rem; margin: 0 auto; padding: 1.5rem 2.5rem 0; }
}


/* ---------- D10.css ---------- */
/* ===== Lot D10 · composition, affectation et calendrier des QCM ===== */

/* Section active de la composition (même traitement que la ligne sélectionnée de la vue G2) */
[data-page="qcm-composition"] .mye-row--active { background: var(--mye-primary-soft); border-radius: var(--mye-r-l); padding: 0 0.75rem; }
[data-page="qcm-composition"] .mye-row--active .mye-row__body { border-bottom: 0; }

/* Tableau de visibilité : listes déroulantes compactes */
[data-page="qcm-regles"] .mye-table .mye-select { height: 2.75rem; font-size: var(--mye-fs-body-s); }
[data-page="qcm-regles"] .mye-table td { vertical-align: middle; }

/* Valeurs courtes des lignes (points) jamais coupées */
[data-page="qcm-composition"] .mye-row__end { white-space: nowrap; }


/* ---------- D11.css ---------- */
/* ===== Lot D11 · supervision, incidents et publication ===== */

/* Statistiques : barre accompagnée de sa valeur écrite */
[data-page="qcm-statistiques"] .mye-stat { display: flex; flex-direction: column; gap: 0.375rem; font-size: var(--mye-fs-body-s); }

/* Compteurs de suivi et de résultats : deux colonnes dès le mobile (valeurs courtes) */
[data-page="qcm-supervision"] .mye-panels--2,
[data-page="qcm-resultats-controle"] .mye-panels--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }


/* ---------- D12.css ---------- */
/* ===== Lot D12 · Accueil étudiant et découverte des concours ===== */

/* Titre éditorial de la carte de concours : 28 px (référence B) */
[data-page="explorer"] .mye-edito--explorer,
[data-page="concours-liste"] .mye-edito--explorer { font-size: 1.75rem; line-height: 1.15; }


/* Sommaire numéroté du règlement */
[data-page="concours-reglement"] .mye-sommaire a { min-height: 3.5rem; display: flex; align-items: center; gap: 0.875rem; color: var(--mye-text); text-decoration: none; border-bottom: 0.5px solid var(--mye-sep); }
[data-page="concours-reglement"] .mye-sommaire span[aria-hidden] { flex: none; width: 2rem; height: 2rem; border-radius: var(--mye-r-full); background: var(--mye-surface-2); display: flex; align-items: center; justify-content: center; font-size: var(--mye-fs-small); font-weight: 700; }
[data-page="concours-reglement"] .mye-reglement-section { scroll-margin-top: 4rem; }

[data-page="concours-edition"] .mye-issue,
[data-page="concours-programme"] .mye-issue,
[data-page="concours-interet"] .mye-issue,
[data-page="concours-liste"] .mye-issue { padding-top: 3rem; }


/* ---------- D13.css ---------- */
/* ===== Lots D13 à D15 : candidature, parcours, résultats ===== */

/* Pied d'étape de candidature : « Section x sur 6 » et progression (mobile et portrait) */
.mye-dossier-progres { display: flex; flex-direction: column; gap: 0.5rem; }

@media (min-width: 64rem) {
  .mye-dossier-progres { display: none; }
}

/* Choix de source vidéo : deux grandes options (D13 ETU-VIDEO-CONSIGNES) */
[data-page="candidature-video"] .mye-video-choix { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.75rem; }

@media (min-width: 48rem) {
  [data-page="candidature-video"] .mye-video-choix { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
[data-page="candidature-video"] .mye-video-choix .mye-panel { width: 100%; border: 0; gap: 0.5rem; padding: 1.125rem; text-align: left; font: inherit; color: var(--mye-text); cursor: pointer; }


/* ---------- D14.css ---------- */
/* ===== Lot D14 : parcours, convocations, sujets, confrontations ===== */

/* Chronologie : titre et métadonnée empilés, détail déplié sous l'étape active (référence D) */
.mye-timeline__stack { display: flex; flex-direction: column; gap: 0.125rem; }
.mye-timeline__stack a { color: inherit; text-decoration: none; }
.mye-timeline__stack a:hover { color: var(--mye-primary); }
.mye-timeline__detail { margin-top: 1rem; gap: 1rem; }

/* Lien qui garde la couleur du texte (portraits de confrontation) */
.mye-app a.mye-lien-neutre,
.mye-app a.mye-lien-neutre:hover { color: var(--mye-text); text-decoration: none; }

/* Titre d'édition du parcours : PT Serif 28 px (référence D) */
.mye-edito--parcours { font-size: 1.75rem; line-height: 1.15; }

/* Parcours : étape actuelle à droite en largeur, en tête en mobile (ordre du DOM conservé) */
@media (min-width: 64rem) {
  [data-page="parcours-concours"] .mye-parcours > .mye-cols__aside { grid-column: 2; grid-row: 1; }
  [data-page="parcours-concours"] .mye-parcours > .mye-cols__main { grid-column: 1; grid-row: 1; }
}


/* ---------- D15.css ---------- */
/* ===== Lot D15 : résultats, recours, archives, statistiques ===== */

/* Légende des barres : pastille de couleur et libellé écrit */
.mye-legende { display: inline-flex; align-items: center; gap: 0.375rem; }
.mye-legende::before { content: ""; width: 0.75rem; height: 0.75rem; border-radius: 3px; }
.mye-legende--primaire::before { background: var(--mye-primary); }
.mye-legende--succes::before { background: var(--mye-success); }

/* Recherche plafonnée dans la barre de filtres des statistiques */
[data-page="universites-statistiques"] .mye-us-recherche { width: 100%; max-width: 22rem; }
[data-page="universites-statistiques"] .mye-barres a { color: var(--mye-text); text-decoration: none; }

/* Page publique : filtres en grille, colonne plus large que l'accès */
[data-page="concours-resultats"] .mye-pub-filtres { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }

@media (min-width: 64rem) {
  [data-page="concours-resultats"] .mye-pub-filtres { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}


/* ---------- D16-D18.css ---------- */
/* ===== Lots D16 à D18 : E360 Academy, apprentissage, certificats ===== */

/* Média de tête des fiches (référence C) : plein cadre en mobile, plafonné et arrondi au-delà de 48rem */
.mye-ac-hero .mye-media { aspect-ratio: 4 / 3; }

@media (min-width: 48rem) {
  .mye-ac-hero { width: 100%; max-width: 60rem; margin: 0 auto; padding: 1rem 2.5rem 0; }
  .mye-ac-hero .mye-media { aspect-ratio: 16 / 9; border-radius: var(--mye-r-xl); }
}

/* Ligne sans séparateur (intervenante) */
.mye-row__body--nu { border-bottom: 0; }

/* Suite numérotée d'une liste d'étapes repliée : continue la numérotation */
.mye-ac-suite { counter-reset: etape 3; margin-top: 1rem; }

/* Grande carte du catalogue : fond secondaire en mobile comme la planche D16 */
.mye-ac-une .mye-card-media__body { padding: 0 0.125rem; }

/* Lecteur de ressource : largeur de lecture et taille de texte réglable */
[data-page="ressource-detail"] .mye-lecture { font-size: var(--mye-fs-body-l); line-height: 1.7; }
[data-page="ressource-detail"] .mye-lecture.is-grand { font-size: 1.25rem; }

/* Billet : fond secondaire, carte centrée et plafonnée (D16 ETU-EVT-TICKET) */
[data-page="billet"] .mye-main { background: var(--mye-bg-2); min-height: 100vh; }
[data-page="billet"] .mye-billet { max-width: 26rem; }

/* Bloc d'une chronologie entièrement cliquable */
.mye-app a.mye-lien-bloc { color: var(--mye-text); text-decoration: none; }
.mye-app a.mye-lien-bloc:hover .mye-timeline__title { color: var(--mye-primary); }

/* Aperçu de caméra de pointage : cadre carré plafonné (démonstration, aucune caméra réelle) */
[data-page="presence-pointer"] .mye-camera { position: relative; width: 100%; max-width: 20rem; aspect-ratio: 1 / 1; margin: 0 auto; border-radius: var(--mye-r-xl); background: var(--mye-media-ink); display: flex; align-items: center; justify-content: center; }
[data-page="presence-pointer"] .mye-camera__cadre { width: 60%; height: 60%; border: 3px solid #FFFFFF; border-radius: var(--mye-r-l); opacity: 0.85; }

/* Segment de quatre rubriques : reste dans la largeur des petits écrans */
@media (max-width: 26rem) {
  .mye-segment__lien { font-size: var(--mye-fs-caption); }
}

/* Badges : tuiles centrées */
[data-page="badges"] .mye-badge-tuile { align-items: center; text-align: center; padding: 1rem 0.5rem; border-radius: var(--mye-r-l); background: var(--mye-surface-2); }
[data-page="badges"] .mye-rail > * { width: 10rem; }


/* ---------- D19.css ---------- */
/* ===== Lot D19 : paiements et vote facultatif ===== */

/* Écrans d'issue de paiement et de vote */
[data-page="paiement-retour"] .mye-pay-issue,
[data-page="vote-confirmation"] .mye-pay-issue { padding-top: 2rem; }

/* Choix de vote : deux portraits côte à côte (référence D19 ETU-VOTE-CHOIX, confrontation D02) */
[data-page="vote-confrontation"] .mye-vote-choix { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
[data-page="vote-confrontation"] .mye-option--portrait { flex-direction: column; text-align: center; padding: 1.25rem 0.75rem; gap: 0.625rem; }
[data-page="vote-confrontation"] .mye-option--portrait .mye-option__label { flex: none; font-weight: 600; }
[data-page="vote-confrontation"] .mye-option--portrait .mye-option__state { display: none; }
[data-page="vote-confrontation"] .mye-option--portrait:has(input:checked) .mye-option__state { display: inline; }

/* Montants sur une seule ligne dans la liste des paiements */
[data-page="paiements"] .mye-row__end { white-space: nowrap; }


/* ---------- D20.css ---------- */
/* ===== Lot D20 : Clubs360 côté membre ===== */

/* Liste des clubs : cartes média empilées en mobile, grille de deux puis trois en largeur */
[data-page="clubs"] .mye-clubs { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2rem; }

@media (min-width: 48rem) {
  [data-page="clubs"] .mye-clubs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
}

@media (min-width: 64rem) {
  [data-page="clubs"] .mye-clubs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Écrans d'issue de l'adhésion */
[data-page="club-adhesion"] .mye-club-issue { padding-top: 2rem; }


/* ---------- D21.css ---------- */
/* ===== D21 · Alumni, opportunités, mentorat ===== */

/* Indication secondaire sur sa propre ligne dans une option (activation Alumni) */
[data-page="alumni-activation"] .mye-block { display: block; margin-top: 0.125rem; }

/* Blocs alignés sur les marges de la liste maître en paysage (annuaire, opportunités) */
@media (min-width: 64rem) {
  [data-page="alumni-annuaire"] .mye-split__head-bloc,
  [data-page="opportunites"] .mye-split__head-bloc { margin: 0 0.75rem; }
}

/* Portrait du mentor proposé : carré plafonné */
[data-page="mentorat-proposition"] .mye-d21-portrait { aspect-ratio: 1 / 1; max-width: 16rem; border-radius: var(--mye-r-xl); }

/* Déclaration d'issue sous la ligne de candidature */
[data-page="opportunites-candidatures"] .mye-d21-issue { margin-top: 0.5rem; }

/* Statuts courts en fin de ligne : jamais coupés lettre par lettre */
[data-page="opportunites-candidatures"] .mye-row__end .mye-tag,
[data-page="alumni-accueil"] .mye-row__end,
[data-page="mentorat-proposition"] .mye-row__end .mye-tag { white-space: nowrap; }

/* Lien « Changer la photo » sans soulignement, comme dans la planche */
[data-page="alumni-profil"] .mye-d21-photo { text-decoration: none; }


/* ---------- D22.css ---------- */
/* ===== Espace Formateur, lot D22 ===== */

/* Accueil (référence G) : sélecteur de contexte, pile de portraits, compteurs, lettre de cohorte */
[data-page="formateur-accueil"] .mye-for-contexte { align-self: flex-start; margin-top: -1rem; }
[data-page="formateur-accueil"] .mye-for-contexte > span { height: 2.5rem; font-size: var(--mye-fs-small); font-weight: 600; }
[data-page="formateur-accueil"] .mye-for-pile { display: flex; }
[data-page="formateur-accueil"] .mye-for-pile .mye-avatar { width: 2rem; height: 2rem; font-size: var(--mye-fs-caption); border: 2px solid var(--mye-surface-2); }
[data-page="formateur-accueil"] .mye-for-pile .mye-avatar + .mye-avatar { margin-left: -0.5rem; }
[data-page="formateur-accueil"] .mye-for-actions { flex-wrap: nowrap; }
[data-page="formateur-accueil"] .mye-for-compte { font-size: var(--mye-fs-body-l); color: var(--mye-text); }

/* Bouton secondaire posé sur une carte de priorité : fond de surface (source : référence G) */
.mye-app .mye-for-btn-surface { background: var(--mye-surface); }

/* Lettre de cohorte dans une ligne : 48 px, rayon 14 px (source : référence G) */
.mye-app .mye-for-lettre { width: 3rem; height: 3rem; border-radius: var(--mye-r-btn); font-weight: 700; font-size: var(--mye-fs-body); }
.mye-app .mye-for-decision { flex-wrap: nowrap; }

/* Calendrier du mois du planning (source : D22 FOR-PLANNING-CALENDRIER) */
[data-page="planning"] .mye-for-mois { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 0.25rem; text-align: center; }
[data-page="planning"] .mye-for-mois__jour { font-size: var(--mye-fs-caption); font-weight: 600; color: var(--mye-text-2); padding-bottom: 0.25rem; }
[data-page="planning"] .mye-for-mois button { position: relative; min-height: 2.75rem; border: 0; border-radius: var(--mye-r-m); background: transparent; color: var(--mye-text); font-size: var(--mye-fs-body); font-weight: 500; }
[data-page="planning"] .mye-for-mois button.a-seance::after { content: ""; position: absolute; left: 50%; bottom: 0.375rem; width: 0.3125rem; height: 0.3125rem; margin-left: -0.15625rem; border-radius: var(--mye-r-full); background: var(--mye-primary); }
[data-page="planning"] .mye-for-mois button[aria-pressed="true"] { background: var(--mye-text); color: var(--mye-bg); }
[data-page="planning"] .mye-for-mois button[aria-pressed="true"]::after { background: var(--mye-bg); }

/* Heure de séance alignée dans les listes de planning (source : D22) */
.mye-app .mye-for-heure { flex: none; width: 3.25rem; font-size: var(--mye-fs-body-s); font-weight: 700; font-variant-numeric: tabular-nums; }

/* Ligne de participant de cohorte en largeur : colonnes de valeurs (source : vue tablette G2) */
.mye-app .mye-for-part__val { display: none; }
@media (min-width: 48rem) {
  .mye-app .mye-for-part__val { display: block; flex: 0 1 9rem; min-width: 0; text-align: right; font-size: var(--mye-fs-body-s); }
}

/* Cohorte : quatre segments tenus dans 320 px sans troncature */
[data-page="cohorte"] .mye-segment__item { min-width: 0; padding: 0.25rem; font-size: var(--mye-fs-small); }


/* ---------- D23.css ---------- */
/* ===== Espace Formateur, lot D23 ===== */

/* Travaux : en-tête d'exercice cliquable dans la liste maître */
[data-page="travaux"] .mye-tv-exo { color: var(--mye-text); text-decoration: none; padding-top: 0.5rem; }

/* Dépôt : barre haute plafonnée comme la page large */
@media (min-width: 48rem) {
  [data-page="travail"] .mye-tr-tete { max-width: 75rem; }
}

/* Appel : compteurs écrits, fiche individuelle, liste et fiche côte à côte en paysage (vue FOR-APPEL-TABLETTE) */
[data-page="formateur-presences"] .mye-ap-compteurs { font-size: var(--mye-fs-body-s); line-height: 1.45; }
[data-page="formateur-presences"] .mye-ap-fiche { display: none; }
[data-page="formateur-presences"] .mye-ap-fiche.is-ouverte { display: flex; }
[data-page="formateur-presences"] .mye-ap-liste.is-masquee { display: none; }
[data-page="formateur-presences"] .mye-attend__who { cursor: pointer; }
[data-page="formateur-presences"] .mye-ap-statut { font-size: var(--mye-fs-small); font-weight: 600; }
[data-page="formateur-presences"] .mye-ap-dispense { flex: none; font-size: var(--mye-fs-small); color: var(--mye-text-2); }
[data-page="formateur-presences"] .mye-ap-scan { aspect-ratio: 1 / 1; max-width: 20rem; display: flex; align-items: center; justify-content: center; text-align: center; padding: 1.5rem; color: #FFFFFF; font-size: var(--mye-fs-small); }

@media (max-width: 23.99rem) {
  [data-page="formateur-presences"] .mye-attend { flex-wrap: wrap; padding: 0.75rem 0; }
  [data-page="formateur-presences"] .mye-attend .mye-segment { width: 100%; }
}

@media (min-width: 64rem) {
  [data-page="formateur-presences"] .mye-ap-grille { display: grid; grid-template-columns: minmax(0, 1fr) 22rem; gap: 2.5rem; align-items: start; }
  [data-page="formateur-presences"] .mye-ap-fiche { display: flex; position: sticky; top: 1.5rem; }
  [data-page="formateur-presences"] .mye-ap-liste.is-masquee { display: flex; }
  [data-page="formateur-presences"] .mye-ap-fiche__retour { display: none; }
}
[data-page="formateur-presences"] .mye-page--lecture { width: 100%; max-width: 45rem; }
[data-page="formateur-presences"] .mye-attend__who { display: flex; flex-direction: column; align-items: flex-start; color: var(--mye-text); }
@media (min-width: 48rem) {
  [data-page="formateur-presences"] .mye-ap-tete { max-width: 75rem; }
}
@media (min-width: 64rem) {
  /* En salle sur pupitre : la barre d'action suit la liste et ne recouvre jamais la fiche */
  [data-page="formateur-presences"] .mye-actionbar { position: static; }
}
@media (min-width: 48rem) {
  [data-page="correction-presence"] .mye-cp-tete { max-width: 60rem; }
}


/* ---------- D25-D28.css ---------- */
/* ===== Lots D25 à D28 · Jury ===== */

/* ----- jury.evaluation (D26) ----- */
[data-page="evaluation"] .mye-jury-eval { display: flex; flex-direction: column; min-height: 100vh; }
[data-page="evaluation"] .mye-jury-tete { gap: 0.75rem; }
[data-page="evaluation"] .mye-jury-tete__vide { width: 3rem; }
[data-page="evaluation"] .mye-jury-zones { flex: 1; padding: 1rem 1.25rem 0; }
[data-page="evaluation"] .mye-jury-zones > section { display: flex; flex-direction: column; gap: 1rem; }
[data-page="evaluation"] .mye-jury-zones > section:not(.is-actif) { display: none; }
[data-page="evaluation"] .mye-jury-form { display: flex; flex-direction: column; }
[data-page="evaluation"] .mye-jury-commentaire { padding-top: 1rem; }
[data-page="evaluation"] .mye-jury-pied { flex-direction: column; align-items: stretch; gap: 0.5rem; }
[data-page="evaluation"] .mye-jury-pied > .mye-btn { flex: none; }
[data-page="evaluation"] .mye-jury-pied__etat { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }
[data-page="evaluation"] .mye-jury-pied__etat .mye-status { flex: 1; min-width: 0; }
[data-page="evaluation"] .mye-jury-large { display: none; }
[data-page="evaluation"] .mye-jury-issue { padding-top: 3rem; }

@media (min-width: 48rem) {
  [data-page="evaluation"] .mye-jury-zones { width: 100%; max-width: 45rem; margin: 0 auto; padding: 1rem 2.5rem 0; }
  [data-page="evaluation"] .mye-jury-pied { max-width: 45rem; }
}

/* Paysage et ordinateur : lecteur et grille côte à côte (vue H2), même DOM */
@media (min-width: 64rem) {
  [data-page="evaluation"] .mye-jury-tete { max-width: 75rem; padding-left: 2rem; padding-right: 2rem; }
  [data-page="evaluation"] .mye-jury-onglets,
  [data-page="evaluation"] .mye-jury-revoir,
  [data-page="evaluation"] .mye-jury-mobile { display: none; }
  [data-page="evaluation"] .mye-jury-large { display: inline-flex; }
  [data-page="evaluation"] .mye-jury-zones {
    max-width: 75rem;
    padding: 0.5rem 2rem 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 26rem;
    gap: 2rem;
    align-items: start;
  }
  [data-page="evaluation"] .mye-jury-zones > section:not(.is-actif) { display: flex; }
  [data-page="evaluation"] .mye-lecteur { border-radius: 1.25rem; }
  [data-page="evaluation"] .mye-lecteur__commandes { justify-content: flex-start; gap: 0.75rem; }
  [data-page="evaluation"] .mye-jury-pied { flex-direction: row; align-items: center; max-width: 75rem; padding-left: 2rem; padding-right: 2rem; }
  [data-page="evaluation"] .mye-jury-pied__etat { flex: 1; }
}

/* ----- Écrans d'issue des pages Jury (reçus, gels, attentes) ----- */
[data-page="evaluation-recapitulatif"] .mye-jury-issue,
[data-page="evaluation-confirmation"] .mye-jury-issue { padding-top: 3rem; }
[data-page="evaluation-recapitulatif"] .mye-centre { align-self: center; }
[data-page="evaluation-recapitulatif"] .mye-jury-issue.mye-text-center { align-items: center; }

/* ----- jury.evaluation-debat (D27) : contexte et grille du seul participant actif ----- */
[data-page="evaluation-debat"] .mye-debat { display: flex; flex-direction: column; min-height: 100vh; }
[data-page="evaluation-debat"] .mye-debat-vide { width: 3rem; }
[data-page="evaluation-debat"] .mye-debat-zones { flex: 1; padding: 0.5rem 1.25rem 0; }
[data-page="evaluation-debat"] .mye-debat-contexte { display: none; }
[data-page="evaluation-debat"] .mye-debat-grille { display: flex; flex-direction: column; gap: 1rem; }
[data-page="evaluation-debat"] .mye-jury-form { display: flex; flex-direction: column; }
[data-page="evaluation-debat"] .mye-debat-sujet { font-size: var(--mye-fs-h3); }
[data-page="evaluation-debat"] .mye-debat-pied { flex-wrap: wrap; }

@media (min-width: 48rem) {
  [data-page="evaluation-debat"] .mye-debat-zones { width: 100%; max-width: 45rem; margin: 0 auto; padding: 0.5rem 2.5rem 0; }
}

@media (min-width: 64rem) {
  [data-page="evaluation-debat"] .mye-debat-tete { max-width: 75rem; padding-left: 2rem; padding-right: 2rem; }
  [data-page="evaluation-debat"] .mye-debat-zones { max-width: 75rem; padding: 0.5rem 2rem 0; display: grid; grid-template-columns: 22rem minmax(0, 1fr); gap: 2.5rem; align-items: start; }
  [data-page="evaluation-debat"] .mye-debat-contexte { display: flex; flex-direction: column; gap: 1rem; position: sticky; top: 1rem; }
  [data-page="evaluation-debat"] .mye-debat-pied { max-width: 75rem; padding-left: 2rem; padding-right: 2rem; }
}

/* ----- jury.finale-hybride (D27) : mêmes structures que le débat ----- */
[data-page="finale-hybride"] .mye-debat { display: flex; flex-direction: column; min-height: 100vh; }
[data-page="finale-hybride"] .mye-debat-vide { width: 3rem; }
[data-page="finale-hybride"] .mye-debat-zones { flex: 1; padding: 0.5rem 1.25rem 0; }
[data-page="finale-hybride"] .mye-debat-contexte { display: none; }
[data-page="finale-hybride"] .mye-debat-grille,
[data-page="finale-hybride"] .mye-jury-form { display: flex; flex-direction: column; gap: 1rem; }
[data-page="finale-hybride"] .mye-jury-form { gap: 0; }

@media (min-width: 48rem) {
  [data-page="finale-hybride"] .mye-debat-zones { width: 100%; max-width: 45rem; margin: 0 auto; padding: 0.5rem 2.5rem 0; }
}

@media (min-width: 64rem) {
  [data-page="finale-hybride"] .mye-debat-tete { max-width: 75rem; padding-left: 2rem; padding-right: 2rem; }
  [data-page="finale-hybride"] .mye-debat-zones { max-width: 75rem; padding: 0.5rem 2rem 0; display: grid; grid-template-columns: 22rem minmax(0, 1fr); gap: 2.5rem; align-items: start; }
  [data-page="finale-hybride"] .mye-debat-contexte:not([hidden]) { display: flex; flex-direction: column; gap: 1rem; position: sticky; top: 1rem; }
  [data-page="finale-hybride"] .mye-debat-zones > section[data-etat="composantes"] { grid-column: 1 / -1; max-width: 45rem; }
  [data-page="finale-hybride"] .mye-debat-pied { max-width: 75rem; padding-left: 2rem; padding-right: 2rem; }
}
