/* ============================================================
   AGOGE — Identité montagne · fichier de styles commun
   R6b, lot 1 Fondations, jalon J2 (2026-10-23).
   R6b, lot 3 Séances (R6b-L3-J2 à J7, 2026-10-25) : blocs datés de la section 5 (Semaine, Mois, carnet, bilans, fenêtres
   rhabillées, écran et sheet prescrite, mesures ; J7 : grille du calendrier bord à bord sous 390 px, DT-160).
   R6b, lot 4 Dialogue / Orion (R6b-L4-J2 à J6, 2026-10-26/27) : blocs datés de la section 5 (Dialogue et « Nouveau message ↓ »,
   Orion, planner et modal-plan-detail, signature du coach) ; J7 : aucune règle changée.
   R6b, lot 5 Préparer / Profil (R6b-L5-J2 à J6, 2026-10-27) : blocs datés de la section 5 (Préparer, Profil, Profil sportif, Connexions / notifications / invitation, wizard d'onboarding #modal-onboarding) ; J7 : une règle corrigée au balayage (placeholder des champs agm-field, :1303).
   R6b, lot 6 (R6b-L6-J3, 2026-10-27) : section 7 (compat charte B) retirée avec agoge-charte.css ; ses règles encore vivantes sont
   déplacées et commentées : fond et encre de page permanents et fond de la connexion intégrée en (3), pictos de la sidebar et logos
   de l'écran d'erreur d'init en (4), guide iPhone et pièce jointe indisponible du Dialogue en (5), jetons legacy transposés sur les
   contenants (sheets, createModal, cloche) et point du rituel en (6) ; feuille injectée du wizard reportée dans son bloc (DT-287) ;
   placeholders en --agm-muted (DT-228).
   R6b, lot 6 (R6b-L6-J5, 2026-10-27) : ouverture AgogeOpening (agoge-opening.css) — règle du splash et anneaux de logo legacy retirés,
   écran « Erreur » d'init et titre d'écran focalisé en (4).
   R6b, lot 6 (R6b-L6-J6, 2026-10-27) : spinner montagne (agoge-spinner.css) — contenants des attentes en (4) ; le tracé du spinner
   échappe à la règle sans animation du wizard (5).
   R6b, lot 6 (R6b-L6-J8, 2026-10-28) : connexion intégrée de l'athlète rhabillée en (3) (body.login-mode, classes agm-auth-*,
   DT-284) ; pages publiques de l'app sur agoge-public.css (jetons recopiés de (1a) et (1b)).
   R6b, lot 6 (R6b-L6-J9, 2026-10-28) : règle de mouvement globale en (3) (DT-279, aucune transition ni animation hors ouverture et
   spinner), écran d'erreur d'init sans sidebar en (4) (DT-313), état d'échec agm-fail en (5) (DT-165, DT-294, DT-289), états vides du
   Profil en forme agm-empty, citron de la copie (citation sortante, badge photo, initiale du coach), « Annuler » de #modal-delete.
   FAIT FOI pour l'identité montagne de l'espace mobile athlète.
   Références : docs/ui-ux/AGOGE-UIUX-Claude-Code-v1/ (revue de cohérence,
   copies references-et-historique/AGOGE-coherence-<coached|solo>-<onglet>-v1.html),
   VISION-RECENTRAGE v3.7 § Identité, index docs/06-prompts/sprints/sprint-R6b-L1-fondations.md,
   rapport J1 docs/07-journal/2026-10-23-sprint-R6b-L1-jalon-1-audit.md (C1-C7, G).
   Chargé APRÈS agoge-athlete.css (athlete-app.html ; agoge-charte.css délié au R6b-L6-J3).

   SCOPE. Hors :root (jetons --agm-* : noms neufs, inertes tant que rien ne les
   lit), toute règle est sous html[data-ui="montagne"]. L'attribut est posé en dur
   sur <html> d'athlete-app.html (R6b-L6-J4 : flag montagne et script anti-flash retirés).
   Page sans l'attribut = aucune règle de ce fichier ne s'applique.
   ROLLBACK : revert des commits [sprint-R6b/L6-*] (flag montagne retiré au R6b-L6-J4).
   LOT 6 : section 7 (bloc COMPAT) et agoge-charte.css retirés au R6b-L6-J3.

   SECTIONS. (0) en-tête · (1a) jetons de thème · (1b) géométrie et typographie ·
   (2) jetons nuit · (3) base · (4) shell · (5) composants agm-* ·
   (6) contenants legacy partagés · (7) retirée (R6b-L6-J3) · (8) remap legacy.

   RÈGLES. Aucune couleur en dur hors (1a) et (2). Aucune police nommée hors
   --agm-font. Tailles des sections 3 à 6 sur les jetons --agm-fs-* ; planchers
   PM 23/10 : onglets 11, eyebrows 11, méta 12, corps 15 (14 toléré si un
   conteneur casse, jamais moins), titres comme les maquettes. Graisses : la pile
   système n'a ni 650 ni 850 → 550-620 = 600, 650-850 = 700. Aucune animation
   ajoutée. Spécificité ≥ (0,2,1) partout : bat agoge-athlete.css et les <style>
   injectés par les modules (sélecteurs à une ou deux classes).
   ============================================================ */

/* ===== (1a) :root — jetons de thème jour (couleurs, ombres) =====
   Palette : VISION v3.7 § Charte, CLAUDE.md §4 ; secondaire #5F7085 = DEC-089
   retenue le 23/10 (remplace #647389). Dérivés : valeurs relevées dans les
   copies de cohérence, copie et sélecteur cités. Zones et sports : aucun jeton
   (couleurs de données, conservées telles quelles dans le code). */
:root{
  --agm-bg:#F5F7F9;             /* fond de l'app */
  --agm-paper:#FFFFFF;          /* cartes, tabbar, contenants legacy */
  --agm-ink:#142438;            /* encre */
  --agm-navy:#172C45;           /* bleu nuit : bouton principal, toast, carte Cap, état actif — jamais le fond de l'app */
  --agm-navy-rgb:23,44,69;      /* le même en triplet : cible de --orange-rgb (rgba legacy) en section 6 */
  --agm-lime:#D5F365;           /* citron : onglet courant, envoi, compte à rebours */
  --agm-muted:#5F7085;          /* texte secondaire */
  --agm-line:#DFE6ED;           /* bordures */
  --agm-bg2:#EAF0F5;            /* fond secondaire : .library, .modal blockquote (Accueil) ; .pagebar button (Préparer) */
  --agm-bg3:#EEF2F6;            /* fond tertiaire : .side (Séances) — sous du texte secondaire (4,5:1 tenu, 4,4 sur bg2) */
  --agm-sheet-bg:#F7F9FB;       /* fond des sheets : dialog.modal (Accueil, Séances, Dialogue) */
  --agm-line-strong:#D5DFE8;    /* filet fort : .session (Accueil) ; pointillés de .empty, champs */
  --agm-handle:#C4D0DB;         /* poignée de sheet : .handle (Accueil) */
  --agm-bar:#C1D4E0;            /* barres neutres : .v2-today .blocks i (Préparer) */
  --agm-faint:#8797A5;          /* indices et placeholders seulement : .hint (Préparer) */
  --agm-on-navy:#FFFFFF;        /* texte sur bleu nuit : .session-action, .goal (Accueil) */
  --agm-on-navy-muted:#D0E1EC;  /* secondaire sur bleu nuit : .goal .eyebrow (Accueil) */
  --agm-on-navy-ghost:#FFFFFF24;/* rond translucide sur bleu nuit : .goal-link (Accueil) */
  --agm-on-lime:#233C22;        /* texte sur citron : .goal .countdown (Accueil) */
  --agm-dot:#708B23;            /* point de notification : .bell:after (Accueil) */
  --agm-ready-bg:#EFF5DF;       /* puce « prêt » : .module .ready (Accueil) */
  --agm-ready-ink:#475C24;
  --agm-pending:#617331;        /* marque « à compléter » : .pending-mark (Accueil) */
  --agm-pending-dot:#A6BF49;
  --agm-ok:#557340;             /* réalisé / enregistré : .answered-note (Accueil) */
  --agm-danger:#A85541;         /* erreur : .error (Préparer, Profil) */
  --agm-danger-bg:#F6EDE8;      /* surface d'erreur : .danger-surface (Profil) */
  --agm-locked-bg:#EDF1F4;      /* fiche grisée : .v2-fiche.locked (Préparer) */
  --agm-locked-ink:#59697B;     /* « Grisé lisible » (Préparer) */
  --agm-focus:#337FD4;          /* anneau de focus : :focus-visible (Accueil) */
  --agm-backdrop:#10293D75;     /* voile sous une sheet : dialog::backdrop (Accueil) */
  --agm-cap-bg:#28475B;         /* fond de la carte Cap sous le paysage : .goal (Accueil) */
  --agm-cap-veil:linear-gradient(90deg,rgba(var(--agm-navy-rgb),.85),rgba(var(--agm-navy-rgb),.55)); /* voile de contraste de la Cap, DEC-038 (pas une lueur) : .goal:after ; bleu nuit .85 → .55, texte ≥ 4,5:1 au pire pixel (PM 24/10, R6b-L2-J3) */
  --agm-sh-card:0 4px 13px #243A5305;    /* .session (Accueil) */
  --agm-sh-sheet:0 -15px 45px #132E441F; /* dialog.modal (Accueil) */
  --agm-sh-pop:0 5px 17px #17395120;     /* .toast (Dialogue) */
  --agm-sh-seg:0 2px 4px #1E3A5108;      /* .segmented [aria-pressed] (Séances) */
}

/* ===== (1b) :root — géométrie et typographie =====
   Indépendantes du thème : pas de valeur nuit (une copie figée en (2) dériverait). */
:root{
  --agm-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; /* pile système, zéro chargement (index du lot) */
  /* Échelle — planchers PM 23/10 ; titres comme les maquettes */
  --agm-fs-tab:11px;            /* plancher ; maquette .bottom button 8px */
  --agm-fs-eyebrow:11px;        /* plancher ; maquette .eyebrow 8-10px */
  --agm-fs-meta:12px;           /* plancher ; maquette 9-11px */
  --agm-fs-body:15px;           /* plancher ; maquette 11-14px */
  --agm-fs-section:17px;        /* .section-head h2 (Préparer, Profil) ; 14px d'Accueil relevé au-dessus du corps */
  --agm-fs-heading:19px;        /* .heading h2, .date-nav h2 (Séances) ; .empty h2 (Préparer) */
  --agm-fs-stat:21px;           /* .stats strong (Accueil) */
  --agm-fs-brand:21px;          /* .brand (Dialogue, Préparer, Profil) */
  --agm-fs-cap:23px;            /* .goal h3 (Accueil) */
  --agm-fs-card-title:25px;     /* .session h3 (Accueil, Séances mobile) */
  --agm-fs-screen-title:29px;   /* .greeting (Accueil) ; h1 (Préparer, Profil) */
  --agm-fw-regular:400;
  --agm-fw-semibold:600;        /* maquettes 550-620 */
  --agm-fw-bold:700;            /* maquettes 650-850 */
  --agm-ls-eyebrow:.11em;       /* 1,2 px à 11 px : tracking des .eyebrow conservé */
  --agm-ls-title:-.03em;        /* titres serrés (-0,6 à -1 px des maquettes) */
  --agm-ls-brand:-.05em;        /* .brand : -1 px à 21 px */
  --agm-lh-tight:1.15;
  --agm-lh-meta:1.5;
  --agm-lh-body:1.6;            /* body (Séances) */
  /* Espacements */
  --agm-sp-1:4px;--agm-sp-2:8px;--agm-sp-3:12px;--agm-sp-4:16px;--agm-sp-5:20px;--agm-sp-6:24px;
  --agm-gutter:20px;            /* .scroll (Accueil, Préparer) */
  /* Rayons relevés : 4 .countdown · 8 .day, .modal-button · 10 .primary · 13 .session · 16 .surface · 22 dialog.modal */
  --agm-r-xs:4px;--agm-r-sm:8px;--agm-r-md:10px;--agm-r-lg:13px;--agm-r-xl:16px;--agm-r-sheet:22px;--agm-r-pill:999px;
  --agm-bw:1px;
  --agm-tap:44px;               /* zone tactile minimale (revue de cohérence : boutons Fermer à 44 px) */
  --agm-ic:24px;--agm-ic-md:18px;--agm-ic-sm:14px;--agm-ic-stroke:1.8; /* pictos : viewBox 24, trait 1,8 */
  --agm-tabbar-h:65px;          /* .bottom (Accueil) */
  /* Couches, alignées sur l'empilement legacy (barres 50, sheets 9998-9999) */
  --agm-z-screen:1;--agm-z-bar:50;--agm-z-overlay:9998;--agm-z-sheet:9999;--agm-z-toast:10001;
  --agm-dur:.15s;               /* button{transition:background-color .15s} (Accueil) */
  --agm-ease:cubic-bezier(.22,1,.36,1);
  --agm-safe-bottom:env(safe-area-inset-bottom,0px);
}

/* ===== (2) Jetons nuit — posés, jamais activés =====
   Proposition (mode nuit non dessiné, VISION v3.6) : fond nuit profond, surfaces
   bleu nuit, encre claire, citron inchangé, gris et lignes adaptés. Mêmes noms
   que (1a). Rien ne pose data-theme : ni prefers-color-scheme, ni réglage Profil. */
html[data-ui="montagne"][data-theme="dark"]{
  --agm-bg:#0E1826;
  --agm-paper:#15253A;
  --agm-ink:#E7EEF5;
  --agm-navy:#2B4A6D;
  --agm-navy-rgb:43,74,109;
  --agm-lime:#D5F365;
  --agm-muted:#9AABBD;
  --agm-line:#263B53;
  --agm-bg2:#1C3049;
  --agm-bg3:#182A40;
  --agm-sheet-bg:#12213A;
  --agm-line-strong:#31506F;
  --agm-handle:#3A526E;
  --agm-bar:#34506E;
  --agm-faint:#6E8197;
  --agm-on-navy:#FFFFFF;
  --agm-on-navy-muted:#C3D4E3;
  --agm-on-navy-ghost:#FFFFFF24;
  --agm-on-lime:#233C22;
  --agm-dot:#A6BF49;
  --agm-ready-bg:#2A3A1D;
  --agm-ready-ink:#D5F365;
  --agm-pending:#B9D06A;
  --agm-pending-dot:#A6BF49;
  --agm-ok:#9CC27A;
  --agm-danger:#E39B87;
  --agm-danger-bg:#3A2521;
  --agm-locked-bg:#18283C;
  --agm-locked-ink:#9AA9B9;
  --agm-focus:#7DB3EA;
  --agm-backdrop:#050B14B3;
  --agm-cap-bg:#1F3A4F;
  --agm-cap-veil:linear-gradient(90deg,#0B1C2ED9,#0E213320);
  --agm-sh-card:0 4px 13px #00000033;
  --agm-sh-sheet:0 -15px 45px #00000066;
  --agm-sh-pop:0 5px 17px #00000059;
  --agm-sh-seg:0 2px 4px #00000040;
}

/* ===== (3) Base =====
   Canevas (html : rebond iOS) au fond montagne depuis le lot 1. */
html[data-ui="montagne"]{background:var(--agm-bg)}
/* Fond et encre de PAGE permanents (R6b-L6-J3, ex-section 7 : règle de la classe de fond du body, posée par _applyCharteAccueil sur
   tous les onglets de NAV_TABS et sous un écran ouvert, retirée avec elle) : changent seulement l'écran « Erreur » d'init et l'instant
   d'avant le premier rendu, sombres jusqu'ici. */
html[data-ui="montagne"] body{background:var(--agm-bg);color:var(--agm-ink)}
/* Connexion intégrée de l'athlète (athlete-auth.js renderLoginScreen, classes agm-auth-* ; R6b-L6-J8, DT-284) : fond et encre
   montagne (la règle du J3 gardait le fond et l'encre legacy) ; composition des pages publiques (agoge-public.css : carte blanche
   ≤ 420 px à filet --agm-line, rayon 16 et ombre de .agm-surface, signature, champs .agm-field-*, onglets du segmenté .agm-segmented,
   puces .agm-pf-chip, bouton principal bleu nuit ≥ 48 px, cibles ≥ 44 px). Anneau en rotation, lueur pulsée, barre en dégradé et
   entrée animée retirés du gabarit. Seul mouvement : le spinner au format bouton (AgogeSpinner.show, R6b-L6-J6). Pictos d'état
   (textes écrits par textContent) : masque portant le tracé du sprite (action-fermer, action-valider), peint en currentColor ;
   le « black » du SVG de données est le canal alpha du masque, jamais affiché. Spécificité ≥ (0,3,1) : bat .btn-cta / .btn-outline
   et leurs :hover / :active d'agoge-athlete.css. */
html[data-ui="montagne"] body.login-mode{background:var(--agm-bg);color:var(--agm-ink)}
html[data-ui="montagne"] body.login-mode .agm-auth{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--agm-sp-6) var(--agm-sp-4)}
html[data-ui="montagne"] body.login-mode .agm-auth-col{width:100%;max-width:420px}
html[data-ui="montagne"] body.login-mode .agm-auth-head{margin-bottom:var(--agm-sp-5);text-align:center}
html[data-ui="montagne"] body.login-mode .agm-auth-sign{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--agm-navy);font-size:var(--agm-fs-brand);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-brand);line-height:1.1}
html[data-ui="montagne"] body.login-mode .agm-auth-sign svg{flex:none;width:26px;height:26px}
html[data-ui="montagne"] body.login-mode .agm-auth-tagline{margin:6px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] body.login-mode .agm-auth-card{padding:var(--agm-sp-6) var(--agm-sp-5);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-xl);background:var(--agm-paper);box-shadow:var(--agm-sh-card);color:var(--agm-ink)}
html[data-ui="montagne"] body.login-mode .agm-auth-tabs{display:flex;gap:3px;margin-bottom:var(--agm-sp-5);padding:3px;border-radius:var(--agm-r-sm);background:var(--agm-bg3)}
html[data-ui="montagne"] body.login-mode .agm-auth-tab{flex:1;min-height:var(--agm-tap);padding:7px 14px;border:0;border-radius:6px;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.3;cursor:pointer}
html[data-ui="montagne"] body.login-mode .agm-auth-msg{margin-bottom:var(--agm-sp-4);padding:10px 12px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] body.login-mode .agm-auth-msg::before{content:"";display:inline-block;width:1em;height:1em;margin-right:.35em;vertical-align:-.12em;background:currentColor;-webkit-mask:var(--agm-auth-mask) center/contain no-repeat;mask:var(--agm-auth-mask) center/contain no-repeat}
html[data-ui="montagne"] body.login-mode .agm-auth-msg--err{color:var(--agm-danger);--agm-auth-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E")}
html[data-ui="montagne"] body.login-mode .agm-auth-msg--ok{color:var(--agm-ok);--agm-auth-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4.5 4.5L19 7'/%3E%3C/svg%3E")}
html[data-ui="montagne"] body.login-mode .agm-auth-field{margin-bottom:var(--agm-sp-4)}
html[data-ui="montagne"] body.login-mode .agm-auth-label{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] body.login-mode .agm-auth-input{display:block;box-sizing:border-box;width:100%;min-height:var(--agm-tap);margin-top:7px;padding:10px 12px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:1.4}
html[data-ui="montagne"] body.login-mode .agm-auth-input::placeholder{color:var(--agm-muted)}
html[data-ui="montagne"] body.login-mode .agm-auth-row{display:flex;gap:10px}
html[data-ui="montagne"] body.login-mode .agm-auth-row>.agm-auth-field{flex:1;min-width:0}
html[data-ui="montagne"] body.login-mode .agm-auth-check{display:flex;align-items:center;gap:var(--agm-sp-2);min-height:var(--agm-tap);margin-bottom:var(--agm-sp-3);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] body.login-mode .agm-auth-check input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--agm-navy);cursor:pointer}
html[data-ui="montagne"] body.login-mode .agm-auth-check--cgu{align-items:flex-start;margin-bottom:var(--agm-sp-4)}
html[data-ui="montagne"] body.login-mode .agm-auth-check--cgu input{margin-top:2px}
html[data-ui="montagne"] body.login-mode .agm-auth-check--cgu a{color:var(--agm-navy);font-weight:var(--agm-fw-semibold);text-decoration:underline;text-underline-offset:2px}
html[data-ui="montagne"] body.login-mode .agm-auth .agm-auth-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--agm-sp-2);min-height:48px;padding:12px var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-navy);border-radius:var(--agm-r-md);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.3;box-shadow:none;filter:none;transform:none;transition:none}
html[data-ui="montagne"] body.login-mode .agm-auth .agm-auth-secondary{min-height:48px;padding:12px var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.3;backdrop-filter:none;-webkit-backdrop-filter:none;transform:none;transition:none}
html[data-ui="montagne"] body.login-mode .agm-auth-actions{display:flex;gap:var(--agm-sp-3)}
html[data-ui="montagne"] body.login-mode .agm-auth-actions .agm-auth-secondary{flex:1}
html[data-ui="montagne"] body.login-mode .agm-auth-actions .agm-auth-primary{flex:2}
html[data-ui="montagne"] body.login-mode .agm-auth-link{display:inline-flex;align-items:center;min-height:var(--agm-tap);color:var(--agm-navy);font-weight:var(--agm-fw-semibold);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
html[data-ui="montagne"] body.login-mode button.agm-auth-link{padding:0;border:0;background:none;font-family:inherit;font-size:inherit;font-style:inherit;line-height:inherit;letter-spacing:inherit;text-align:inherit;-webkit-appearance:none;appearance:none} /* LF-J3 — DT-327 : lien d'action en <button>, remise à zéro du navigateur (rendu du <a>) */
html[data-ui="montagne"] body.login-mode .agm-auth-forgot{margin-top:var(--agm-sp-1);text-align:center;font-size:var(--agm-fs-body)}
html[data-ui="montagne"] body.login-mode .agm-auth-foot{margin-top:var(--agm-sp-1);text-align:center;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] body.login-mode .agm-auth-step-title{margin-bottom:var(--agm-sp-4);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] body.login-mode .agm-auth-step-sub{margin:-10px 0 var(--agm-sp-4);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] body.login-mode .agm-auth-chips{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2);margin-bottom:var(--agm-sp-4)}
html[data-ui="montagne"] body.login-mode .agm-auth-chip{display:inline-flex;align-items:center;min-height:var(--agm-tap);padding:9px 13px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-muted);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-regular);line-height:1.3;cursor:pointer}
html[data-ui="montagne"] body.login-mode button.agm-auth-chip{font-family:inherit;font-style:inherit;letter-spacing:inherit;text-align:inherit;-webkit-appearance:none;appearance:none} /* LF-J3 — DT-327 : puce en <button> ; padding, bordure, fond, taille et graisse restent ceux de la règle précédente */
html[data-ui="montagne"] body.login-mode .agm-auth-captcha{margin-bottom:14px}
/* Messages d'agoge-captcha.js (intouché, styles en ligne de l'ancien fond sombre) lisibles sur la carte blanche. */
html[data-ui="montagne"] body.login-mode #aa-captcha>div[style]{font-size:var(--agm-fs-meta)!important;color:var(--agm-muted)!important}
html[data-ui="montagne"] body.login-mode #aa-captcha>div[style*="fb7185"]{color:var(--agm-danger)!important}
/* Police : pile système partout — seule parade aux styles inline et aux <style>
   injectés qui nomment encore l'ancienne webfont (rapport J1 C5). */
html[data-ui="montagne"] *:not(code):not(pre):not(kbd){font-family:var(--agm-font)!important}
/* Halos d'ambiance d'agoge-athlete.css (dégradés radiaux orange et violet) : lueurs interdites, éteintes en permanence. */
html[data-ui="montagne"] body::before,html[data-ui="montagne"] body::after{display:none}
/* Piège [hidden] (CLAUDE.md §3) : effectif sur les composants agm- (R6b-L6-J3 : plus aucune classe de la charte B). */
html[data-ui="montagne"] [hidden][class*="agm-"]{display:none!important}
/* Focus : anneau net des maquettes (button:focus-visible, Accueil) ; la lueur orange du focus legacy est retirée. */
html[data-ui="montagne"] :focus-visible{outline:3px solid var(--agm-focus);outline-offset:3px}
html[data-ui="montagne"] input:focus,html[data-ui="montagne"] textarea:focus,html[data-ui="montagne"] select:focus,html[data-ui="montagne"] .inp:focus,html[data-ui="montagne"] .sf-inp:focus{box-shadow:none!important}
html[data-ui="montagne"] ::selection{background:var(--agm-lime);color:var(--agm-on-lime)}
html[data-ui="montagne"] ::-webkit-scrollbar-thumb{background:var(--agm-line-strong)}
html[data-ui="montagne"] ::-webkit-scrollbar-thumb:hover{background:var(--agm-handle)}
/* Mouvement (R6b-L6-J9, DT-279 ; décision du lot) : aucune transition ni animation dans l'espace athlète hors l'ouverture et le spinner,
   dans tous les modes ; les changements d'état sont instantanés. Remplace la règle de mouvements réduits du lot 1 (durées à .01 ms).
   Le tracé du spinner garde sa propre règle de mouvements réduits (agoge-spinner.css) ; l'ouverture n'a pas besoin d'exception (moteur
   en styles en ligne, requestAnimationFrame). Compléments en JS : setContent synchrone, défilements en behavior:'auto', étape du wizard
   instantanée, carte Leaflet sans animation (garde data-ui="montagne"). */
html[data-ui="montagne"],html[data-ui="montagne"] *:not(.agoge-spinner__trace),html[data-ui="montagne"] *::before,html[data-ui="montagne"] *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
/* will-change:transform de #app et de .bottom-nav (agoge-athlete.css:284, :1319) : sans objet sans transition, neutralisé. */
html[data-ui="montagne"] #app,html[data-ui="montagne"] .bottom-nav{will-change:auto}
/* Bas de page cohérent avec la tabbar montagne (65 px) ; les champs iOS gardent leurs 16 px (agoge-athlete.css). */
@media (max-width:767px){
  html[data-ui="montagne"] .container{padding-bottom:calc(var(--agm-tabbar-h) + var(--agm-sp-4) + var(--agm-safe-bottom))}
}

/* ===== (4) Shell — app-bar, tabbar, sidebar, erreur d'init, écran, PTR, loader (ouverture : agoge-opening.css, R6b-L6-J5) =====
   Sur les classes existantes (le markup change en J4, l'écran arrive en J5).
   Sélecteurs sans le scope de la charte B : ils ont survécu au retrait de ses attributs (R6b-L6-J3).
   Battent applyBranding (.nav-item.active, .sb-item.active, .logo-text en
   !important) et rit-css (.rit-pastille). Géométrie de l'app-bar conservée
   (--bar-h) ; tabbar à la hauteur de la maquette, --nav-h aligné dessus
   (R6b-L1-J6) : le Chat plein écran calcule sa hauteur sur ces deux jetons.
   Correspondance avec agoge-charte.css:143-174 et :222-230 : rapport J2. */
/* App-bar — .appbar (Accueil : fond = fond de page, sans flou ni filet) ; marque .brand (Dialogue, Préparer, Profil).
   Marque en !important : bat le bloc « 0b. LOGO » d'agoge-athlete.css (police, graisse, tracking, couleur en !important, (0,2,0)) et le dégradé d'applyBranding. */
html[data-ui="montagne"] .app-bar{background:var(--agm-bg);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:0;color:var(--agm-ink)}
html[data-ui="montagne"] .app-bar .logo-text,html[data-ui="montagne"] .sidebar .sb-logo-text{background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;-webkit-text-fill-color:var(--agm-ink)!important;color:var(--agm-ink)!important;font-family:var(--agm-font)!important;font-size:var(--agm-fs-brand);font-weight:var(--agm-fw-bold)!important;letter-spacing:var(--agm-ls-brand)!important}
/* Avatar initiale — .avatar (Accueil : rond 29 px, fond clair de la maquette ≈ --agm-line, initiale 9 px relevée au plancher eyebrow, encre) ; app-bar (#athlete-name) et sidebar (.sb-user), R6b-L1-J4. */
html[data-ui="montagne"] .agm-avatar{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:50%;background:var(--agm-line);color:var(--agm-ink);font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-bold);line-height:1}
html[data-ui="montagne"] .invite-icon svg,html[data-ui="montagne"] .notif-bell svg{color:var(--agm-ink)}
/* Points de l'app-bar — .bell:after (Accueil) : sans pulsation ni lueur. */
html[data-ui="montagne"] .notif-dot{background:var(--agm-dot);border-color:var(--agm-bg);animation:none}
html[data-ui="montagne"] .invite-icon-badge{background:var(--agm-dot);box-shadow:0 0 0 2px var(--agm-bg);animation:none}
/* Liste déroulante des notifications (cloche) : papier, filet, ombre douce. */
html[data-ui="montagne"] .notif-dropdown{background:var(--agm-paper);border-color:var(--agm-line);box-shadow:var(--agm-sh-pop);color:var(--agm-ink)}
/* Écran « Erreur » d'init (R6b-L6-J5, DT-281 / DT-305 ; remplace les anneaux de logo legacy de l'app-bar et de la sidebar gardés ici depuis
   R6b-L6-J3 : signe montagne en dur dans l'app-bar, sidebar posée par _agmShell dans la même tâche que son markup) : posé aussitôt dans #app,
   chrome montagne au-dessus (DT-111). Titre .agm-section-title, message secondaire, « Réessayer » .agm-btn--primary (bleu nuit, 44 px) ;
   alignement et marges d'agoge-athlete.css (.error-screen) gardés. */
html[data-ui="montagne"] .error-screen{color:var(--agm-ink)}
html[data-ui="montagne"] .error-screen .agm-section-title{margin:0 0 var(--agm-sp-2)}
html[data-ui="montagne"] .error-screen p{margin:0 0 var(--agm-sp-4);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted);overflow-wrap:anywhere}
/* R6b-L6-J9 — DT-313 : écran d'erreur d'init (body.agm-init-error, _agmInitFail) : la sidebar du grand écran, sans entrées avant
   get-dashboard, est masquée et la colonne recentrée (--sidebar-w à 0 pour les marges d'agoge-athlete.css). */
html[data-ui="montagne"] body.agm-init-error{--sidebar-w:0px}
html[data-ui="montagne"] body.agm-init-error .sidebar{display:none}
/* Tabbar — .bottom (Accueil, Séances, Dialogue) : onglet courant = citron plein derrière l'icône, halo 5 px (arbitrage de la revue de cohérence) ; pill R1 masquée.
   Hauteur de la maquette pour les deux personas (.bottom : 65 px + safe-area, contenu centré), R6b-L1-J6 : paddings legacy 8 / 8 + safe-area repris en jetons, item sans padding, picto 18 et libellé 11 inchangés (mesuré au J4 : 71,5 et 79,5 px). */
html[data-ui="montagne"] .bottom-nav{background:var(--agm-paper);backdrop-filter:none;-webkit-backdrop-filter:none;border-top:var(--agm-bw) solid var(--agm-line);box-shadow:none;height:calc(var(--agm-tabbar-h) + var(--agm-safe-bottom));padding:var(--agm-sp-2) 0 calc(var(--agm-sp-2) + var(--agm-safe-bottom))}
html[data-ui="montagne"] .bottom-nav::before{display:none}
html[data-ui="montagne"] .bottom-nav .nav-item{gap:var(--agm-sp-2);color:var(--agm-muted);justify-content:center;padding:0}
html[data-ui="montagne"] .bottom-nav .nav-item.active{color:var(--agm-ink)}
html[data-ui="montagne"] .bottom-nav .nav-item svg{width:var(--agm-ic-md);height:var(--agm-ic-md);transform:none;filter:none}
html[data-ui="montagne"] .bottom-nav .nav-item.active svg{background:var(--agm-lime);box-shadow:0 0 0 5px var(--agm-lime);border-radius:3px;transform:none;filter:none}
html[data-ui="montagne"] .bottom-nav .nav-item .nav-label{font-size:var(--agm-fs-tab);font-weight:var(--agm-fw-semibold);letter-spacing:0}
html[data-ui="montagne"] .bottom-nav .nav-item.active .nav-label{font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .bottom-nav .nav-item::before{display:none}
html[data-ui="montagne"] .bottom-nav .nav-item .nav-dot{display:none}
/* Badge messages, pastille rituel : points fonctionnels bleu nuit (lisibles aussi sur le citron de l'onglet courant), sans lueur. */
html[data-ui="montagne"] .nav-badge{background:var(--agm-navy)}
html[data-ui="montagne"] .rit-pastille{background:var(--agm-navy);box-shadow:none}
/* Pastille rituel de la tabbar hors du flux pour les deux personas, R6b-L1-J6 : mêmes taille, ancrage et états que rit-css (athlete-ritual.js:241-243), que le rituel n'injecte que pour le coaché ; sans cette règle, la pastille vide de l'autonome restait dans le flux et rehaussait la tabbar de 8 px. (0,4,1) et (0,5,1) battent rit-css (0,1,0) et (0,2,0), à valeurs égales. */
html[data-ui="montagne"] .bottom-nav .nav-item .rit-pastille{display:none;position:absolute;top:4px;right:50%;width:7px;height:7px;border-radius:50%;transform:translateX(12px)}
html[data-ui="montagne"] .bottom-nav .nav-item .rit-pastille.is-on{display:block}
/* --nav-h (jeton legacy, agoge-athlete.css:198, 56 px) = hauteur de la tabbar montagne, R6b-L1-J6. Seule redéfinition d'un jeton legacy hors des contenants de la section 6 : ses lecteurs sont des consommateurs du shell.
   Lecteurs (grep du code servi) : .orion-fab (agoge-athlete.css:434, bas du FAB Orion, bouton retiré au R6b-L6-J2) ; .container mobile (:1334, padding-bottom, déjà battu par la section 3) ; .notif-dropdown mobile (:1575, jamais ouverte sous 768 px : la cloche ouvre une feuille) ; Chat plein écran de la charte B (retiré avec la section 7 au R6b-L6-J3). */
html[data-ui="montagne"]{--nav-h:var(--agm-tabbar-h)}
/* Sidebar grand écran — conservée sans refonte (index du lot) : couleurs seules ; actif = .side-nav [aria-current=page] (Séances). */
html[data-ui="montagne"] .sidebar{background:var(--agm-bg3);border-right:var(--agm-bw) solid var(--agm-line);color:var(--agm-ink)}
html[data-ui="montagne"] .sidebar .sb-item{color:var(--agm-muted)}
html[data-ui="montagne"] .sidebar .sb-item:hover{background:var(--agm-paper);color:var(--agm-ink)}
html[data-ui="montagne"] .sidebar .sb-item.active{background:var(--agm-paper);color:var(--agm-ink);box-shadow:var(--agm-sh-card)}
html[data-ui="montagne"] .sidebar .sb-user-name{color:var(--agm-ink)}
html[data-ui="montagne"] .sidebar .sb-user-sub{color:var(--agm-muted)}
html[data-ui="montagne"] .sidebar .sb-bottom{border-top-color:var(--agm-line)}
/* Pictos de la sidebar (#sb-invite-icon, #sb-notif-bell) — R6b-L6-J3, ex-remap des jetons legacy par le scope de la charte B posé sur la
   sidebar (section 7) : secondaire montagne au repos, survol inchangé (encre pour la cloche, bleu nuit pour l'invitation ;
   agoge-athlete.css:696, :2418-2419 lisaient --muted, --text, --accent). */
html[data-ui="montagne"] .sidebar .sb-invite-icon svg,html[data-ui="montagne"] .sidebar .sb-notif-bell svg{color:var(--agm-muted)}
html[data-ui="montagne"] .sidebar .sb-notif-bell:hover svg{color:var(--agm-ink)}
html[data-ui="montagne"] .sidebar .sb-invite-icon:hover svg{color:var(--agm-navy)}
/* Splash statique du lot 1 retiré au R6b-L6-J5 (règle et son !important avec lui) : ouverture AgogeOpening, styles isolés dans agoge-opening.css. */
/* Écran de détail (J5, markup J5) — conteneur #agm-screen frère de #app, dans le flux de la page ; masquage par classe (piège [hidden]). Noms d'état proposés, J5 tranche. */
html[data-ui="montagne"] #agm-screen{display:none}
html[data-ui="montagne"] #agm-screen.is-open{display:block}
html[data-ui="montagne"] body.agm-screen-open #app{display:none}
/* En-tête d'écran avec retour — .pagebar + .pagebar button (Préparer, Profil) ; retour à 44 × 44 (zone tactile), visuel bg2. */
html[data-ui="montagne"] .agm-pagebar{display:flex;align-items:center;gap:var(--agm-sp-3);min-height:54px;padding:var(--agm-sp-1) var(--agm-sp-4);border-bottom:var(--agm-bw) solid var(--agm-line);background:var(--agm-bg);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-pagebar-title{flex:1;min-width:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Titre d'écran focalisé (contrat du socle : tabindex -1, hors tabulation ; rendu à la fin de l'ouverture, R6b-L6-J5) : non interactif,
   sans anneau ; les contrôles gardent celui de :focus-visible (section 3). */
html[data-ui="montagne"] .agm-pagebar-title[tabindex="-1"]:focus{outline:none}
html[data-ui="montagne"] .agm-pagebar-sub{display:block;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-regular);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-back{display:grid;place-items:center;flex:none;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:0;border-radius:var(--agm-r-md);background:var(--agm-bg2);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-back .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
/* Corps d'écran (R6b-L2-J4) — gouttière d'agm-home (.scroll des copies : 20 px, 16 px ≤ 360 px), sur mobile seulement : .container n'a pas de padding horizontal sous 768 px, il en a un au-delà. */
@media (max-width:767px){html[data-ui="montagne"] .agm-screen-body{padding-left:var(--agm-gutter);padding-right:var(--agm-gutter)}}
@media (max-width:360px){html[data-ui="montagne"] .agm-screen-body{padding-left:var(--agm-sp-4);padding-right:var(--agm-sp-4)}}
/* Tirer-pour-rafraîchir (_initPTR) : arc bleu nuit, piste filet ; le dégradé orange tombe (CSS au-dessus des attributs de présentation). */
html[data-ui="montagne"] #ptr-indicator svg circle{stroke:var(--agm-line)}
html[data-ui="montagne"] #ptr-indicator #ptr-arc{stroke:var(--agm-navy)}
/* Chargeur ringLoader() : même traitement (piste puis arc). */
html[data-ui="montagne"] .agoge-loader svg circle{stroke:var(--agm-line)}
html[data-ui="montagne"] .agoge-loader svg circle:last-of-type{stroke:var(--agm-navy)}
/* Spinner montagne (R6b-L6-J6) — contenants des attentes ; le composant et son mouvement sont dans agoge-spinner.css (rien d'animé ici).
   Les quatre règles ci-dessus (anneau du tirer-pour-rafraîchir, ringLoader) n'ont plus de lecteur dans l'espace athlète servi (agoge-spinner.js chargé) : gardées au J10 du lot, inertes.
   Attente de #app (écran bleu nuit + signature depuis RR-J1, plein écran par la règle qui suit les deux ci-dessous ; elles restent la base du format écran) : téléphone, toute la hauteur sous l'app-bar (la tabbar, masquée pendant l'attente, laisse sa
   marge : absorbée) ; grand écran, la hauteur du contenu, surface bordée comme dans exemple.html. Attentes d'Orion et du fil du Dialogue
   centrées comme leur texte d'avant ; Mois : au-dessus de la grille (DT-159) ; carnet : à la place de la phrase de couverture. */
@media (max-width:767px){html[data-ui="montagne"] #app>.agoge-wait--screen{min-height:calc(100vh - var(--bar-h,60px));margin-bottom:calc(-1 * (var(--agm-tabbar-h) + var(--agm-sp-4) + var(--agm-safe-bottom)))}}
@media (min-width:768px){html[data-ui="montagne"] #app>.agoge-wait--screen{min-height:calc(100vh - 80px);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-xl)}}
/* RR-J1 (C2) — l'attente de démarrage couvre toute la fenêtre au fond de l'ouverture (bleu nuit) : au-dessus de l'app-bar, de la tabbar (z 50) et de la
   sidebar (z 5), sous voiles, sheets, toasts et ouverture (9 998 et plus). Elle disparaît avec le contenu de #app (premier rendu, connexion, écran
   d'erreur) : aucune logique de retrait. Même spécificité que les deux règles ci-dessus, gagne par l'ordre. */
html[data-ui="montagne"] #app>.agoge-wait--navy{position:fixed;inset:0;z-index:calc(var(--agm-z-bar) + 1);min-height:0;margin:0;border:0;border-radius:0}
html[data-ui="montagne"] .agm-orion-loading>.agoge-wait,html[data-ui="montagne"] .agm-thread-loading>.agoge-wait{justify-content:center}
html[data-ui="montagne"] .agm-monthsurface>.agoge-wait{margin:0 0 var(--agm-sp-3)}
html[data-ui="montagne"] .agm-carnet-hero>.agoge-wait{margin:var(--agm-sp-3) 0 0}
/* Anneau de repli d'init (dans #app) : masqué sous montagne (rapport J1 B9). */
/* ===== (5) Composants partagés agm-* =====
   Table C6 du rapport J1, dans cet ordre. Source = copie de cohérence + sélecteur
   d'origine ; la revue tranche quand les copies divergent (onglet courant citron
   plein, bouton principal bleu nuit). Noms des sous-éléments proposés ici.
   Aucun consommateur en J2 : premiers usages au lot 2. Zone tactile ≥ 44 px pour
   les contrôles. Famille agm-thread-* (fil du Dialogue) : lot 4. */
/* agm-eyebrow — .eyebrow (Séances 10 px, 1,2 px, 600 ; Accueil 9 px) → 11 px (plancher), tracking conservé. */
html[data-ui="montagne"] .agm-eyebrow{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-eyebrow .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
/* agm-section-head + agm-link — .section-head + .link (Accueil) ; titre 17 px (.section-head h2, Préparer). */
html[data-ui="montagne"] .agm-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-3);margin:18px 0 10px}
html[data-ui="montagne"] .agm-section-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-link{display:inline-flex;align-items:center;gap:6px;min-height:var(--agm-tap);padding:0;border:0;background:transparent;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);color:var(--agm-navy);text-decoration:none;cursor:pointer}
html[data-ui="montagne"] .agm-link .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
/* agm-card — .session (Accueil : filet fort, rayon 13, ombre douce) ; .card (Préparer : padding 17). */
html[data-ui="montagne"] .agm-card{position:relative;overflow:hidden;padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper);box-shadow:var(--agm-sh-card);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-card--flush{padding:0}
html[data-ui="montagne"] .agm-card+.agm-card{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-card-title{margin:10px 0 0;font-size:var(--agm-fs-card-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-card-text{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
/* agm-list + agm-row — .prep + .module (Accueil) ; .settings-group + .settings-row (Profil) ; .action-row (Préparer). */
html[data-ui="montagne"] .agm-list{overflow:hidden;padding:0 14px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-row{display:flex;align-items:center;gap:var(--agm-sp-3);width:100%;min-height:56px;padding:13px 0;border:0;border-bottom:var(--agm-bw) solid var(--agm-line);background:transparent;color:var(--agm-ink);font-size:var(--agm-fs-body);text-align:left;text-decoration:none;cursor:pointer}
html[data-ui="montagne"] .agm-row:last-child{border-bottom:0}
html[data-ui="montagne"] .agm-row-ic{display:grid;place-items:center;flex:none;width:34px;height:36px;border-radius:var(--agm-r-sm);background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-row-ic .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-row-body{flex:1;min-width:0}
html[data-ui="montagne"] .agm-row-title{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-row-sub{display:block;margin-top:3px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-row>.agm-ic:last-child{flex:none;width:var(--agm-ic-sm);height:var(--agm-ic-sm);color:var(--agm-muted)}
/* agm-btn — .session-action (Accueil : bleu nuit, pastille citron à droite) ; .modal-button (44 px) ; .primary (Préparer : citron) ; .button (Séances). Libellé au corps (plancher). */
html[data-ui="montagne"] .agm-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--agm-sp-2);min-height:var(--agm-tap);padding:10px var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.3;text-align:center;text-decoration:none;cursor:pointer;transition:background-color var(--agm-dur) var(--agm-ease)}
html[data-ui="montagne"] .agm-btn .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-btn--primary{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-btn-pastille{display:grid;place-items:center;flex:none;width:27px;height:27px;margin-left:auto;border-radius:50%;background:var(--agm-lime);color:var(--agm-on-lime)}
html[data-ui="montagne"] .agm-btn-pastille .agm-ic{width:15px;height:15px}
html[data-ui="montagne"] .agm-btn--accent{border-color:var(--agm-lime);background:var(--agm-lime);color:var(--agm-on-lime)}
html[data-ui="montagne"] .agm-btn--ghost{border-color:var(--agm-line-strong);background:transparent;color:var(--agm-navy)}
html[data-ui="montagne"] .agm-btn--block{display:flex;width:100%}
html[data-ui="montagne"] .agm-btn:disabled,html[data-ui="montagne"] .agm-btn[aria-disabled="true"]{opacity:.4;cursor:default}
/* agm-chip — .module .ready, .goal .countdown, .pending-mark (Accueil) ; .chip[aria-pressed] (Préparer). Puces passives en méta, puce bascule au corps (contrôle). */
html[data-ui="montagne"] .agm-chip{display:inline-flex;align-items:center;gap:5px;padding:4px var(--agm-sp-2);border-radius:var(--agm-r-xs);background:var(--agm-bg2);color:var(--agm-ink);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:1.3;white-space:nowrap}
html[data-ui="montagne"] .agm-chip--ready{background:var(--agm-ready-bg);color:var(--agm-ready-ink)}
html[data-ui="montagne"] .agm-chip--count{background:var(--agm-lime);color:var(--agm-on-lime);font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-chip--pending{padding:0;background:transparent;color:var(--agm-pending);font-weight:var(--agm-fw-regular)}
html[data-ui="montagne"] .agm-chip--pending::before{content:"";flex:none;width:5px;height:5px;border-radius:50%;background:var(--agm-pending-dot)}
html[data-ui="montagne"] .agm-chip--toggle{min-height:var(--agm-tap);padding:var(--agm-sp-2) var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-muted);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-regular);cursor:pointer}
html[data-ui="montagne"] .agm-chip--toggle[aria-pressed="true"]{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy)}
/* agm-locked — .locked-preview, .lock-emblem, .v2-fiche.locked + bloc « Grisé lisible » (Préparer). */
html[data-ui="montagne"] .agm-locked{padding:18px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-locked-bg);color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-locked-emblem{display:grid;place-items:center;width:58px;height:60px;margin:0 0 var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-xl);background:var(--agm-bg2);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-locked-emblem .agm-ic{width:27px;height:27px}
html[data-ui="montagne"] .agm-locked-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-locked-text{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-locked-ink)}
/* agm-week + agm-day — .week + .day (Accueil), .week-days + .week-day (Séances) ; agm-month — .calendar-month + .month-day + .markers (Séances). Aujourd'hui = chiffre sur citron (rapport J1 C6). */
html[data-ui="montagne"] .agm-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
html[data-ui="montagne"] .agm-day{display:grid;justify-items:center;align-content:start;gap:6px;min-width:0;padding:10px 1px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-muted);font-size:var(--agm-fs-meta);text-align:center}
html[data-ui="montagne"] .agm-day-letter{font-size:var(--agm-fs-meta);line-height:1.2}
html[data-ui="montagne"] .agm-day-num{font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.2;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-day-label{max-width:100%;overflow:hidden;font-size:var(--agm-fs-meta);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
html[data-ui="montagne"] .agm-day .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-day.is-today{border-color:var(--agm-navy);background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-day.is-today .agm-day-num{margin:-3px;padding:3px 5px;border-radius:var(--agm-r-xs);background:var(--agm-lime);color:var(--agm-on-lime)}
html[data-ui="montagne"] .agm-day.is-selected{border-color:var(--agm-navy);box-shadow:0 0 0 1px var(--agm-navy)}
html[data-ui="montagne"] .agm-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
html[data-ui="montagne"] .agm-month-dow{padding:3px 0 7px;font-size:var(--agm-fs-meta);text-align:center;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-month-day{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;min-height:57px;padding:7px 1px 5px;border:var(--agm-bw) solid var(--agm-line);border-radius:7px;background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-meta)}
html[data-ui="montagne"] .agm-month-day.is-other{border-color:var(--agm-bg2);background:var(--agm-sheet-bg);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-month-num{font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:1.2}
html[data-ui="montagne"] .agm-month-day.is-today .agm-month-num{margin:-1px -4px;padding:1px 4px;border-radius:var(--agm-r-xs);background:var(--agm-lime);color:var(--agm-on-lime)}
html[data-ui="montagne"] .agm-month-day.is-selected{border-color:var(--agm-navy);box-shadow:0 0 0 1px var(--agm-navy)}
html[data-ui="montagne"] .agm-month-label{max-width:100%;overflow:hidden;font-size:var(--agm-fs-meta);line-height:1.25;text-overflow:ellipsis;white-space:nowrap;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-month-marks{display:flex;align-items:center;gap:3px;min-height:6px}
html[data-ui="montagne"] .agm-month-marks i{width:5px;height:5px;border:var(--agm-bw) solid var(--agm-muted);border-radius:50%}
html[data-ui="montagne"] .agm-month-marks i.is-done{border-color:var(--agm-navy);background:var(--agm-navy)}
html[data-ui="montagne"] .agm-month-marks i.is-goal{border-color:var(--agm-pending-dot);border-radius:1px;background:var(--agm-lime)}
/* agm-stats — .stats (Accueil : 3 colonnes, valeur 21 px). */
html[data-ui="montagne"] .agm-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
html[data-ui="montagne"] .agm-stat-value{display:block;font-size:var(--agm-fs-stat);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-stat-unit{margin-left:3px;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);letter-spacing:0;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-stat-label{display:block;margin-top:4px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
/* agm-zones — .zones + .zone-caption (Accueil) : structure seule ; chaque segment reçoit flex et couleur de zone en style inline (données : palette du mini profil, WorkoutIntensity.ZONES — ftp pour la puissance, bpm pour la FC et l'allure —, posée par athlete-accueil.js depuis R6b-L2-J3, repli var(--agm-bar) ; commentaire R6b-L2-J5). */
html[data-ui="montagne"] .agm-zones{display:flex;gap:3px;height:8px;overflow:hidden;border-radius:3px}
html[data-ui="montagne"] .agm-zones>i{display:block;min-width:2px;height:100%}
html[data-ui="montagne"] .agm-zones-caption{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-2);margin-top:7px;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
/* agm-mini — .profile-mini + .profile-caption + .profile-legend (Accueil) : le canvas de renderMini (fond transparent) s'y dessine ; couleurs de légende en style inline. */
html[data-ui="montagne"] .agm-mini{display:block;width:100%;height:54px;margin-top:14px}
html[data-ui="montagne"] .agm-mini-caption{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-2);margin-top:7px;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-mini-legend{display:flex;flex-wrap:wrap;align-items:center;gap:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-mini-legend i{display:inline-block;width:6px;height:6px;margin-right:3px;border-radius:50%;vertical-align:middle}
/* agm-sheet — dialog.modal + ::backdrop, .handle, .sheet-head, .sheet-body, .send-row (Accueil) ; largeur max 540 px (Séances). Statique : aucune animation d'ouverture (lots). */
html[data-ui="montagne"] .agm-sheet-backdrop{position:fixed;inset:0;z-index:var(--agm-z-overlay);background:var(--agm-backdrop);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
html[data-ui="montagne"] .agm-sheet{position:fixed;top:auto;right:0;bottom:0;left:0;z-index:var(--agm-z-sheet);width:100%;max-width:540px;max-height:90dvh;margin:0 auto;padding:0;overflow:hidden;border:var(--agm-bw) solid var(--agm-line);border-bottom:0;border-radius:var(--agm-r-sheet) var(--agm-r-sheet) 0 0;background:var(--agm-sheet-bg);box-shadow:var(--agm-sh-sheet);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-sheet-handle{width:34px;height:4px;margin:10px auto 0;border-radius:4px;background:var(--agm-handle)}
html[data-ui="montagne"] .agm-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:var(--agm-sp-2) var(--agm-sp-3) var(--agm-sp-2) var(--agm-gutter);border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-sheet-close{display:grid;place-items:center;flex:none;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:0;border-radius:50%;background:var(--agm-bg2);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-sheet-close .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-sheet-body{max-height:calc(90dvh - 74px);overflow-y:auto;overscroll-behavior:contain;padding:var(--agm-gutter) var(--agm-gutter) calc(var(--agm-gutter) + var(--agm-safe-bottom))}
html[data-ui="montagne"] .agm-sheet-title{margin:0 0 12px;font-size:var(--agm-fs-card-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-sheet-send{position:sticky;bottom:calc(-1 * (var(--agm-gutter) + var(--agm-safe-bottom)));margin-bottom:calc(-1 * (var(--agm-gutter) + var(--agm-safe-bottom)));padding:14px 0 calc(var(--agm-gutter) + var(--agm-safe-bottom));border-top:var(--agm-bw) solid var(--agm-line);background:var(--agm-sheet-bg)}
html[data-ui="montagne"] .agm-sheet-send-note{display:block;margin-top:9px;font-size:var(--agm-fs-meta);text-align:center;color:var(--agm-muted)}
/* agm-cap — .goal (Accueil, DEC-038 : 112 px, bleu nuit, paysage à 0,88, voile de contraste, texte blanc) ; .cap-goal + .cap-image + .cap-open (Préparer). Hauteur minimale : un titre sur deux lignes ne coupe pas. */
html[data-ui="montagne"] .agm-cap{position:relative;display:block;min-height:112px;overflow:hidden;border-radius:var(--agm-r-lg);background:var(--agm-cap-bg);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-cap-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.88;pointer-events:none}
html[data-ui="montagne"] .agm-cap::after{content:"";position:absolute;inset:0;background:var(--agm-cap-veil);pointer-events:none}
html[data-ui="montagne"] .agm-cap-copy{position:relative;z-index:1;padding:15px 15px 15px}
html[data-ui="montagne"] .agm-cap-eyebrow{margin:0;padding-right:84px;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:1.3;text-transform:uppercase;color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-cap-title{max-width:calc(100% - 36px);margin:7px 0 0;font-size:var(--agm-fs-cap);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.08;color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-cap-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:7px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-cap .agm-chip--count{position:absolute;top:12px;right:12px;z-index:1}
/* agm-coach — .coach + .coach-head + .coach-avatar + .coach p (Accueil : filet 3 px bleu nuit). Texte au corps (plancher). */
html[data-ui="montagne"] .agm-coach{padding:0 0 0 12px;border-left:3px solid var(--agm-navy)}
html[data-ui="montagne"] .agm-coach-head{display:flex;align-items:center;gap:var(--agm-sp-2);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-coach-avatar{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-coach-time{margin-left:auto;font-weight:var(--agm-fw-regular);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-coach-text{margin:7px 0 4px;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
/* agm-toast — .toast (Dialogue : bleu nuit, texte blanc), posé au-dessus de la tabbar. */
html[data-ui="montagne"] .agm-toast{position:fixed;left:50%;bottom:calc(var(--agm-tabbar-h) + var(--agm-sp-4) + var(--agm-safe-bottom));z-index:var(--agm-z-toast);width:max-content;max-width:calc(100% - 32px);padding:12px var(--agm-sp-4);border-radius:var(--agm-r-md);background:var(--agm-navy);box-shadow:var(--agm-sh-pop);color:var(--agm-on-navy);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);transform:translateX(-50%)}
/* agm-empty — .empty (Séances : pointillés, fond clair ; Préparer : centré, icône 36 px). */
html[data-ui="montagne"] .agm-empty{padding:22px;border:var(--agm-bw) dashed var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-sheet-bg);color:var(--agm-muted);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);text-align:center}
html[data-ui="montagne"] .agm-empty-title{display:block;margin:0 0 6px;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-empty>.agm-ic{display:block;width:36px;height:36px;margin:0 auto var(--agm-sp-4);color:var(--agm-muted)}
/* agm-fail (R6b-L6-J9, DT-165 / DT-294 / DT-289) — état d'échec d'un chargement, distinct du vide : modèle de l'échec de Séances (une
   phrase en texte secondaire), suivie de « Réessayer » (bouton secondaire, 44 px) qui relance la requête réelle. Bilans : à gauche
   (comme l'état vide) ; cloche et Dialogue : centré (comme leur état vide). */
html[data-ui="montagne"] .agm-fail{padding:var(--agm-sp-4) 0;color:var(--agm-muted);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body)}
html[data-ui="montagne"] .agm-fail-text{margin:0 0 var(--agm-sp-3)}
html[data-ui="montagne"] .notif-fail,html[data-ui="montagne"] .agm-thread-fail{padding:var(--agm-sp-6) var(--agm-sp-4);text-align:center}
/* agm-segmented — .segmented + [aria-pressed] (Séances) ; agm-subtabs — .page-tabs + [aria-selected] (Séances). Libellés de contrôle au corps. */
html[data-ui="montagne"] .agm-segmented{display:inline-flex;gap:3px;padding:3px;border-radius:var(--agm-r-sm);background:var(--agm-bg3)}
html[data-ui="montagne"] .agm-segmented>button{min-height:var(--agm-tap);padding:7px 14px;border:0;border-radius:6px;background:transparent;color:var(--agm-muted);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-regular);cursor:pointer}
html[data-ui="montagne"] .agm-segmented>button[aria-pressed="true"]{background:var(--agm-paper);box-shadow:var(--agm-sh-seg);color:var(--agm-ink);font-weight:var(--agm-fw-semibold)}
html[data-ui="montagne"] .agm-subtabs{display:flex;gap:26px;border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-subtabs>button{min-height:var(--agm-tap);padding:9px 0 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--agm-muted);font-size:var(--agm-fs-body);cursor:pointer}
html[data-ui="montagne"] .agm-subtabs>button[aria-selected="true"]{border-bottom-color:var(--agm-navy);color:var(--agm-ink);font-weight:var(--agm-fw-bold)}
/* Accueil (R6b-L2-J2) — copie de cohérence AGOGE-coherence-<coached|solo>-accueil-v1 (.scroll, .date, .greeting, .intro, .goal, .prep + .module, .week + .day, .library, .orion), classes posées par athlete-accueil.js. Cap, section-head, list/row, week/day, card, btn et chip : composants ci-dessus, repris tels quels. */
/* agm-home — .scroll (Accueil) : gouttière de la copie, 20 px (16 px ≤ 360 px), sur mobile seulement : .container n'a pas de padding horizontal sous 768 px (agoge-athlete.css, bloc mobile), il en a un au-delà. Rythme vertical de la copie : .goal{margin:16px 0}. */
html[data-ui="montagne"] .agm-home{padding-top:var(--agm-sp-2)}
@media (max-width:767px){html[data-ui="montagne"] .agm-home{padding-left:var(--agm-gutter);padding-right:var(--agm-gutter)}}
@media (max-width:360px){html[data-ui="montagne"] .agm-home{padding-left:var(--agm-sp-4);padding-right:var(--agm-sp-4)}}
html[data-ui="montagne"] .agm-home>.agm-cap{margin:var(--agm-sp-4) 0}
html[data-ui="montagne"] .agm-home>.agm-card{margin-top:var(--agm-sp-4)}
/* agm-home-date / -greeting / -intro — .date (9 px → eyebrow 11), .greeting (29 px, 700, -1 px), .intro (11 px → corps 15, secondaire : 4,72:1 sur le fond). */
html[data-ui="montagne"] .agm-home-date{margin:0;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-home-greeting{margin:7px 0 0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.2;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-home-intro{margin:6px 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
/* agm-cap-index — ligne d'index sous agm-cap-meta (décision du 21/10 : index en ligne discrète) ; largeur bornée comme le titre, la flèche reste libre. La Cap qui porte sa flèche est tapable en entier. */
html[data-ui="montagne"] .agm-cap-index{max-width:calc(100% - 36px);margin:2px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-cap-index b{font-weight:var(--agm-fw-bold);font-variant-numeric:tabular-nums;color:var(--agm-on-navy)}
/* agm-cap-actions (Cap, état first : les deux actions existantes) et agm-card-actions (boutons d'une agm-card : carte montre) — même rangée. */
html[data-ui="montagne"] .agm-cap-actions,html[data-ui="montagne"] .agm-card-actions{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2);margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-cap-actions .agm-btn,html[data-ui="montagne"] .agm-card-actions .agm-btn{flex:1 1 auto}
/* Jour du fil en bouton (.day) : la case fait 41 à 43 px de large à 360 px ; la zone tactile couvre l'espace entre deux jours (5 px) et passe 44 px. */
html[data-ui="montagne"] button.agm-day{position:relative;width:100%;cursor:pointer}
html[data-ui="montagne"] button.agm-day::before{content:"";position:absolute;inset:0 -3px}
/* agm-library — .library (fond bg2, filet, rayon 11 → 13) : titre 12 → corps 15, texte 10 → méta 12 en --agm-locked-ink (le secondaire sur bg2 ne tient que 4,41:1 ; 4,90:1). */
html[data-ui="montagne"] .agm-library{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-3);width:100%;min-height:var(--agm-tap);margin-top:var(--agm-sp-5);padding:14px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-bg2);color:var(--agm-ink);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-library strong{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-library small{display:block;margin-top:4px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-library>.agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
/* agm-orion-row — .orion (rangée transparente, texte secondaire 10 → méta 12, cerveau 19 → 18, chevron 15 → 14) : autonome seulement. */
html[data-ui="montagne"] .agm-orion-row{display:flex;align-items:center;gap:var(--agm-sp-2);width:100%;min-height:var(--agm-tap);margin-top:var(--agm-sp-3);padding:10px 0;border:0;background:transparent;color:var(--agm-muted);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-orion-row>span{flex:1;min-width:0}
html[data-ui="montagne"] .agm-orion-row>.agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-orion-row>.agm-ic:first-child{width:var(--agm-ic-md);height:var(--agm-ic-md);color:var(--agm-navy)}
/* Rendez-vous du jour (R6b-L2-J3) — plannedCard / pendingCard / realisedCard de la copie : .session-main, .session-top, .session-action, .from-coach, .return-session, .context-link, .realised-preview, .realised-flag, .answered-note, .plan-summary ; carte dans une agm-card--flush. */
html[data-ui="montagne"] .agm-card-main{padding:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-card-top{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-card-top>.agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-card-main>.agm-stats,html[data-ui="montagne"] .agm-card-main>.agm-zones{margin-top:var(--agm-sp-4)}
/* .plan-summary (10 px → méta 12) : intention d'une séance Orion. Renfo : picto et « N exercices · durée », sans canvas. */
html[data-ui="montagne"] .agm-card-note{margin:9px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-renfo{display:flex;align-items:center;gap:var(--agm-sp-2);margin:14px 0 0;font-size:var(--agm-fs-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-renfo>.agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md);color:var(--agm-navy)}
/* agm-card-action — .session-action : pleine largeur en pied de carte, sans rayon (la carte rogne ses coins), bleu nuit, 52 px, libellé au corps, pastille citron (agm-btn-pastille). Focus en retrait : la carte rogne ce qui dépasse. */
html[data-ui="montagne"] .agm-card-action{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:52px;padding:11px 15px;border:0;border-radius:0;background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.3;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-card-action:focus-visible{outline-color:var(--agm-lime);outline-offset:-4px}
/* .feedback-card : .from-coach (avatar du coach, destinataire, marque « À compléter »), texte d'appel au corps en secondaire, .return-session (contexte de la séance, filet haut) ; .context-link : lien discret, sans répondre. */
html[data-ui="montagne"] .agm-from-coach{display:flex;align-items:center;gap:var(--agm-sp-2);margin-bottom:var(--agm-sp-3);font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-from-coach>.agm-chip{margin-left:auto}
html[data-ui="montagne"] .agm-card-lead{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-return-session{display:flex;align-items:center;gap:var(--agm-sp-2);margin:15px 0 0;padding-top:var(--agm-sp-3);border-top:var(--agm-bw) solid var(--agm-line);font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-return-session>.agm-ic,html[data-ui="montagne"] .agm-context-link>.agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-context-link{display:inline-flex;align-items:center;gap:6px;min-height:var(--agm-tap);padding:0;border:0;background:transparent;font-size:var(--agm-fs-meta);color:var(--agm-muted);cursor:pointer}
/* .realised-preview (carte tapable : bouton de contenu, focus en retrait), .realised-flag et .answered-note (vert « réalisé / enregistré »). */
html[data-ui="montagne"] .agm-card-preview{display:block;width:100%;border:0;background:transparent;color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-card-preview:focus-visible{outline-offset:-4px}
html[data-ui="montagne"] .agm-card-preview .agm-card-title{display:block}
html[data-ui="montagne"] .agm-realised-flag,html[data-ui="montagne"] .agm-answered-note{display:flex;align-items:center;gap:5px;font-size:var(--agm-fs-meta);color:var(--agm-ok)}
html[data-ui="montagne"] .agm-answered-note{margin-top:13px}
html[data-ui="montagne"] .agm-realised-flag>.agm-ic,html[data-ui="montagne"] .agm-answered-note>.agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
/* Mot du coach (.coach) en bloc distinct : marge basse de la copie, nom au plancher méta (<small>) ; réponse inline (index du lot) : champ papier et envoi citron (.input-wrap + .send, Dialogue). */
html[data-ui="montagne"] .agm-home>.agm-coach{margin-bottom:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-coach-head small{font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-regular);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-reply{display:flex;align-items:center;gap:9px;margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-reply-field{flex:1;min-width:0;min-height:46px;padding:10px 14px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body)}
html[data-ui="montagne"] .agm-reply-field::placeholder{color:var(--agm-muted)} /* R6b-L6-J3 — DT-228 : --agm-faint → --agm-muted (4,5:1) */
html[data-ui="montagne"] .agm-reply-field:focus{border-color:var(--agm-navy)}
html[data-ui="montagne"] .agm-reply-send{display:grid;place-items:center;flex:none;width:46px;height:46px;padding:0;border:var(--agm-bw) solid var(--agm-lime);border-radius:var(--agm-r-md);background:var(--agm-lime);color:var(--agm-on-lime);cursor:pointer}
html[data-ui="montagne"] .agm-reply-send:disabled{opacity:.4;cursor:default}
html[data-ui="montagne"] .agm-reply-send .agm-ic{width:20px;height:20px}
html[data-ui="montagne"] .agm-reply-err{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-meta);color:var(--agm-danger)}
/* Jour fait du fil (PM 24/10) : point citron sous le chiffre, troisième rangée de la grille du jour (le picto passe dessous) ; liseré --agm-ok, le citron seul ne se voit pas sur le papier. Le lot 3 l'aligne sur les marqueurs du mois. */
html[data-ui="montagne"] .agm-day.is-done::after{content:"";grid-row:3;width:6px;height:6px;border:var(--agm-bw) solid var(--agm-ok);border-radius:50%;background:var(--agm-lime)}
/* Fiche de séance réalisée (R6b-L2-J4) — écran seance-realisee (agoge-session-detail.js), fiche v1 (09-FICHE-SEANCE-REALISEE.md ; sources/agoge-detail-seance.html : .agoge-sheet, -heading, -summary, -map-*, -chart, -zone*, -details, -rpe, -empty). Feuille papier dans la gouttière ; tailles de la fiche relevées aux planchers (11 → méta 12 hors eyebrow, 13-14 → corps 15) ; couleurs de données (tracés, barres, repères de carte) en canvas et en style inline des renderers ; aucune animation, aucune ombre. */
html[data-ui="montagne"] .agm-fiche{margin:var(--agm-sp-4) 0 0;padding:var(--agm-sp-5) var(--agm-sp-4) var(--agm-sp-6);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-xl);background:var(--agm-paper);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-kicker{margin:0 0 var(--agm-sp-2);padding-left:var(--agm-sp-2);border-left:3px solid var(--agm-lime);font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-title{margin:0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-date{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--agm-sp-1) var(--agm-sp-3);margin:10px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
/* Résumé 3 valeurs (finition citron FS-002) : fond citron 18 % sur papier (repli --agm-ready-bg sans color-mix), valeur au-dessus du libellé, première valeur soulignée citron. */
html[data-ui="montagne"] .agm-fiche-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--agm-sp-2);margin:var(--agm-sp-5) 0 0;padding:var(--agm-sp-4) var(--agm-sp-3);border-radius:var(--agm-r-md);background:var(--agm-ready-bg);background:color-mix(in srgb,var(--agm-lime) 18%,var(--agm-paper))}
html[data-ui="montagne"] .agm-fiche-sum>div{display:flex;flex-direction:column-reverse;gap:var(--agm-sp-1);min-width:0}
html[data-ui="montagne"] .agm-fiche-sum dt{font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-sum dd{margin:0;font-size:var(--agm-fs-stat);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--agm-navy)}
html[data-ui="montagne"] .agm-fiche-sum dd small{font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-regular);letter-spacing:0}
html[data-ui="montagne"] .agm-fiche-sum>div:first-child dd{text-decoration:underline;text-decoration-color:var(--agm-lime);text-decoration-thickness:4px;text-underline-offset:5px}
@media (max-width:360px){html[data-ui="montagne"] .agm-fiche-sum{gap:6px;padding-left:9px;padding-right:9px}html[data-ui="montagne"] .agm-fiche-sum dd{font-size:var(--agm-fs-heading)}}
/* Sections (titre 17, sous-titre méta) ; zones et autres mesures entre filets, comme la fiche ; état vide sur le fond de page. */
html[data-ui="montagne"] .agm-fiche-sec{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-fiche-sec-head{margin:0 0 var(--agm-sp-3)}
html[data-ui="montagne"] .agm-fiche-sec-head--row{display:flex;align-items:center;justify-content:space-between;gap:10px}
html[data-ui="montagne"] .agm-fiche-h2{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-h3{margin:0 0 var(--agm-sp-3);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-sub{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-empty{margin:var(--agm-sp-2) 0 0;padding:13px 14px;border-radius:var(--agm-r-md);background:var(--agm-bg);font-size:var(--agm-fs-meta);line-height:1.7;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-empty strong{display:block;margin-bottom:3px;font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
/* Carte : conteneur Leaflet isolé (ses calques restent sous l'app-bar et la tabbar), fond bg2 le temps des tuiles ; commandes 44 px ; crédit lisible ; légende aux repères du renderer (thème clair). */
html[data-ui="montagne"] .agm-fiche-mapctl{display:flex;flex:none;gap:var(--agm-sp-1)}
html[data-ui="montagne"] .agm-fiche-mapbtn{display:grid;place-items:center;min-width:var(--agm-tap);min-height:var(--agm-tap);padding:0 10px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-navy);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);line-height:1;cursor:pointer}
html[data-ui="montagne"] .agm-fiche-mapbtn--fit{font-size:var(--agm-fs-meta)}
html[data-ui="montagne"] .agm-fiche-map{position:relative;z-index:0;isolation:isolate;height:275px;overflow:hidden;border-radius:var(--agm-r-lg);background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-fiche-credit{position:absolute;right:5px;bottom:3px;z-index:800;padding:0 3px;background:var(--agm-paper);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted);pointer-events:none}
html[data-ui="montagne"] .agm-fiche-legend{display:flex;flex-wrap:wrap;gap:5px 15px;margin:9px 0 0;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-legend>span{display:flex;align-items:center;gap:6px}
html[data-ui="montagne"] .agm-fiche-mark-start{width:10px;height:10px;box-sizing:border-box;border:2px solid var(--agm-navy);border-radius:50%;background:var(--agm-lime)}
html[data-ui="montagne"] .agm-fiche-mark-end{width:10px;height:10px;background:var(--agm-navy)}
/* Courbes alignées : légende et moyenne, référence FTP en pointillés, tracé canvas sur papier (padding 8 px, hérité de l'ancien _initCrosshair, retiré au R6b-L6-J2 ; tracé _fPlot, repère _fCross), repère partagé et infobulle bleu nuit. */
html[data-ui="montagne"] .agm-fiche-chart{margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-fiche-chart-cap{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-2);margin:0 0 6px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-chart-cap strong{font-weight:var(--agm-fw-semibold)}
html[data-ui="montagne"] .agm-fiche-chart-cap small,html[data-ui="montagne"] .agm-fiche-ref{font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-ref{display:flex;align-items:center;gap:6px;margin:0 0 var(--agm-sp-2);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-fiche-ref::before{content:"";flex:none;width:15px;border-top:var(--agm-bw) dashed var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-plot{position:relative;overflow:hidden;padding:var(--agm-sp-2);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-fiche-canvas{display:block;width:100%;height:120px}
html[data-ui="montagne"] .agm-fiche-cursor{display:none;position:absolute;top:0;bottom:0;z-index:5;width:1px;background:var(--agm-navy);pointer-events:none}
html[data-ui="montagne"] .agm-fiche-tip{display:none;position:absolute;top:4px;z-index:6;padding:3px 7px;border-radius:6px;background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);white-space:nowrap;pointer-events:none}
/* Zones : rangées statiques de l'écran (_fZRow ; l'ancien _zoneBar, opts.static, est retiré au R6b-L6-J2) — nom, piste fond de page, part ; la couleur de zone n'est que sur la barre (style inline). */
html[data-ui="montagne"] .agm-fiche-zones{padding-top:var(--agm-sp-5);border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-fiche-zgroup+.agm-fiche-zgroup{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-fiche-zone{display:grid;grid-template-columns:100px minmax(0,1fr) 40px;align-items:center;gap:10px;margin-bottom:10px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-fiche-zone-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-zone-name b{margin-right:5px;font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
/* Les autres mesures : <details> entre deux filets, résumé au corps (contrôle, 44 px), valeurs à droite. */
html[data-ui="montagne"] .agm-fiche-more{margin-top:var(--agm-sp-6);border-top:var(--agm-bw) solid var(--agm-line);border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-fiche-more>summary{min-height:var(--agm-tap);padding:var(--agm-sp-3) 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);cursor:pointer}
html[data-ui="montagne"] .agm-fiche-more>dl{margin:0;padding:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-fiche-more>dl>div{display:flex;justify-content:space-between;gap:15px;padding:6px 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-fiche-more dt{color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-more dd{margin:0;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
/* Ressenti : RPE en puce citron, notes au corps. Retour (coaché) : note « enregistré » de l'Accueil, réponses en lecture seule du rituel (rit-ro : jetons legacy clairs sous rit-css, en encre ici). */
html[data-ui="montagne"] .agm-fiche-rpe{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-4);font-size:var(--agm-fs-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-chip{padding:6px 10px;border-radius:var(--agm-r-xs);background:var(--agm-lime);color:var(--agm-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);white-space:nowrap}
html[data-ui="montagne"] .agm-fiche-notes{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-fiche-notes-lbl{margin:0;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-notes-txt{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-retour .agm-answered-note{margin:0}
html[data-ui="montagne"] .agm-fiche-retour .rit-ro{display:flex;flex-direction:column;gap:var(--agm-sp-3);margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-fiche-retour .rit-ro-q{font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-retour .rit-ro-a{font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-retour .rit-ro-a.is-empty{font-weight:var(--agm-fw-regular);color:var(--agm-muted)}
/* Erreur (texte de l'edge, bouton Retour) ; squelette statique aux hauteurs réservées. */
html[data-ui="montagne"] .agm-fiche-error{margin:0 0 var(--agm-sp-4);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);color:var(--agm-danger)}
html[data-ui="montagne"] .agm-fiche-loading{margin:var(--agm-sp-5) 0 0;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-skel{margin-top:var(--agm-sp-5);border-radius:var(--agm-r-md);background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-fiche-skel--head{height:84px;margin-top:0}
html[data-ui="montagne"] .agm-fiche-skel--sum{height:80px}
html[data-ui="montagne"] .agm-fiche-skel--map{height:275px}
html[data-ui="montagne"] .agm-fiche-skel--chart{height:160px}
/* Séances (R6b-L3-J2) — page de la maquette AGOGE-seances-carnet-demo.html (render() et .page-head, .coach-status, .header-actions, .page-tabs, .calendar-tools, .filter-label, .calendar-grid, .surface, .date-nav, .week-days, .legend, .summary-strip, .selected-heading, .stack, .session, .state, .plan-summary, .session-actions-sub, .rest-card, .rail-goal, .empty, .agenda-row) et copies de cohérence coached / solo ; classes posées par athlete-training.js (bloc PAGE SÉANCES MONTAGNE). Sous-onglets, segment, jours, cartes, mini profil, puces, liens et actions : composants ci-dessus, repris tels quels. Tailles aux planchers (maquette 8-12 px → méta 12, contrôles au corps), cibles ≥ 44 px. */
/* agm-seances — gouttière d'agm-home sur mobile (20 px, 16 px ≤ 360 px). */
html[data-ui="montagne"] .agm-seances{padding-top:var(--agm-sp-2)}
@media (max-width:767px){html[data-ui="montagne"] .agm-seances{padding-left:var(--agm-gutter);padding-right:var(--agm-gutter)}}
@media (max-width:360px){html[data-ui="montagne"] .agm-seances{padding-left:var(--agm-sp-4);padding-right:var(--agm-sp-4)}}
/* En-tête — .coach-status (point vert : statut de persona), .eyebrow, h1 (32 → titre d'écran 29), .page-lead (corps, secondaire), .header-actions (téléphone ≤ 700 px : pictos seuls, 44 × 44, nom accessible sur le bouton). */
html[data-ui="montagne"] .agm-seances-status{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin:0 0 var(--agm-sp-2);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-ok)}
html[data-ui="montagne"] .agm-seances-status::before{content:"";flex:none;width:5px;height:5px;border-radius:50%;background:var(--agm-pending-dot)}
html[data-ui="montagne"] .agm-seances-head{margin:0 0 var(--agm-sp-5)}
html[data-ui="montagne"] .agm-seances-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-seances-titles{min-width:0}
html[data-ui="montagne"] .agm-seances-title{margin:7px 0 0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.12;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-seances-lead{margin:9px 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-seances-actions{display:flex;flex:none;gap:var(--agm-sp-2);padding-top:5px}
@media (max-width:700px){html[data-ui="montagne"] .agm-seances-actions .agm-btn{width:var(--agm-tap);padding:0}html[data-ui="montagne"] .agm-seances-actions .agm-btn>span{display:none}}
/* Sous-onglets et outils — .page-tabs (agm-subtabs) ; .calendar-tools : segment Semaine · Mois à gauche, filtre à droite, à la ligne sur écran étroit ; .filter-label : picto (filtre, ou sport choisi) et liste au corps. */
html[data-ui="montagne"] .agm-seances-tabs{margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-seances-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--agm-sp-2);margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-filter{display:inline-flex;align-items:center;gap:7px;min-width:0;max-width:100%;color:var(--agm-navy)}
html[data-ui="montagne"] .agm-filter .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-filter select{min-width:0;max-width:100%;min-height:var(--agm-tap);padding:8px 10px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body)}
/* Mise en page — .calendar-grid : une colonne sur téléphone (surface de la semaine, panneau du jour, puis le fil) ; grand écran (≥ 1024 px) : le fil en rail de 300 px, comme la maquette. */
html[data-ui="montagne"] .agm-seances-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--agm-sp-5);align-items:start}
html[data-ui="montagne"] .agm-seances-main{display:grid;gap:var(--agm-sp-5);min-width:0}
@media (min-width:1024px){html[data-ui="montagne"] .agm-seances-grid{grid-template-columns:minmax(0,1fr) 300px;gap:26px}}
/* Régions — vue Semaine, surface, panneau du jour, rail, transitoires (Mois, Carnet) : largeur minimale nulle, un mot long ne fait pas déborder la page. */
html[data-ui="montagne"] .agm-seances-week,html[data-ui="montagne"] .agm-weeksurface,html[data-ui="montagne"] .agm-seances-panel,html[data-ui="montagne"] .agm-seances-rail,html[data-ui="montagne"] .agm-seances-month,html[data-ui="montagne"] .agm-seances-carnet{min-width:0}
/* Surface — .surface (papier, filet, rayon 16, ombre douce ; 17 px sur téléphone, 22 au-delà, 14 ≤ 360 px). */
html[data-ui="montagne"] .agm-surface{min-width:0;padding:17px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-xl);background:var(--agm-paper);box-shadow:var(--agm-sh-card);color:var(--agm-ink)}
@media (min-width:768px){html[data-ui="montagne"] .agm-surface{padding:22px}}
@media (max-width:360px){html[data-ui="montagne"] .agm-surface{padding:14px}}
/* Navigation de semaine — .date-nav (titre, sous-titre méta) ; ‹ › et « Aujourd’hui » relevés à 44 px (maquette 29 px) ; commandes à la ligne sous le titre quand la largeur manque. */
html[data-ui="montagne"] .agm-datenav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-datenav-copy{min-width:0}
html[data-ui="montagne"] .agm-datenav-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-datenav-sub{margin:4px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-datenav-ctrl{display:flex;flex:none;align-items:center;gap:4px;margin-left:auto}
html[data-ui="montagne"] .agm-iconbtn{display:grid;place-items:center;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-sm);background:var(--agm-bg2);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-iconbtn .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-todaybtn{min-height:var(--agm-tap);padding:6px 10px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-navy);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);cursor:pointer}
/* Grille — rangée de sept jours du lot 2 (agm-week, agm-day, is-today, is-selected, is-done) ; un marqueur par jour, à la place du point is-done (même rangée) : prévue = anneau bleu nuit, repos prescrit = point barre cerclé de secondaire (≥ 3:1), alignés sur les marqueurs du mois (J3). */
html[data-ui="montagne"] .agm-seances-days .agm-day{min-height:84px}
html[data-ui="montagne"] .agm-day.is-planned::after,html[data-ui="montagne"] .agm-day.is-rest::after{content:"";grid-row:3;width:6px;height:6px;border-radius:50%}
html[data-ui="montagne"] .agm-day.is-planned::after{border:var(--agm-bw) solid var(--agm-navy);background:transparent}
html[data-ui="montagne"] .agm-day.is-rest::after{border:var(--agm-bw) solid var(--agm-muted);background:var(--agm-bar)}
/* Légende — .legend (les trois marqueurs de la grille, méta). */
html[data-ui="montagne"] .agm-legend{display:flex;flex-wrap:wrap;gap:6px 12px;margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-legend span{display:inline-flex;align-items:center;gap:5px}
html[data-ui="montagne"] .agm-legend i{flex:none;width:6px;height:6px;border-radius:50%}
html[data-ui="montagne"] .agm-legend i.is-done{border:var(--agm-bw) solid var(--agm-ok);background:var(--agm-lime)}
html[data-ui="montagne"] .agm-legend i.is-planned{border:var(--agm-bw) solid var(--agm-navy)}
html[data-ui="montagne"] .agm-legend i.is-rest{border:var(--agm-bw) solid var(--agm-muted);background:var(--agm-bar)}
/* Ligne de résumé — .summary-strip (filet haut ; temps en gras, compte en méta). Chargement ou échec : une phrase, sans total (agm-weeknote). */
html[data-ui="montagne"] .agm-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--agm-sp-3);margin:var(--agm-sp-4) 0 0;padding-top:var(--agm-sp-4);border-top:var(--agm-bw) solid var(--agm-line);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-summary p{margin:0}
html[data-ui="montagne"] .agm-summary strong{font-weight:var(--agm-fw-bold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-summary small{display:block;margin-top:4px;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-weeknote{margin:0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-weeknote--panel{padding:var(--agm-sp-4) 0}
/* Panneau du jour — .selected-heading (titre 18 → 17, « Aujourd’hui » en méta), .stack (16 px entre les cartes ; le lien vers la séance prévue colle à sa carte). */
html[data-ui="montagne"] .agm-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--agm-sp-3);margin:0 0 var(--agm-sp-3)}
html[data-ui="montagne"] .agm-panel-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-panel-sub{flex:none;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-stack{display:grid;gap:var(--agm-sp-4);min-width:0}
html[data-ui="montagne"] .agm-stack>.agm-card+.agm-card{margin-top:0}
html[data-ui="montagne"] .agm-stack>.agm-context-link{justify-self:start;margin-top:-8px}
/* Cartes de séance — .session (agm-card--flush) : .state « Prévue » (secondaire), .plan-summary (résumé de structure, méta), .session-actions-sub (« Faire mon retour », sous l'action principale, filet haut, focus en retrait). */
html[data-ui="montagne"] .agm-session .agm-card-title{margin-top:12px}
html[data-ui="montagne"] .agm-state{flex:none;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-plan-summary{margin:9px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-card-sub{border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-card-sub>button{display:flex;align-items:center;width:100%;min-height:var(--agm-tap);padding:0 15px;border:0;background:transparent;color:var(--agm-navy);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-card-sub>button:focus-visible{outline-offset:-4px}
/* Repos prescrit — .rest-card (fond tertiaire, titre 23 ; texte en --agm-locked-ink : le secondaire sur ce fond ne tient que 4,51:1). */
html[data-ui="montagne"] .agm-rest{padding:var(--agm-sp-5);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-bg3);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-rest-title{margin:0;font-size:var(--agm-fs-cap);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-rest-text{margin:9px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-body);color:var(--agm-locked-ink)}
/* Objectif du jour — .rail-goal (bleu nuit ; « TON OBJECTIF » en eyebrow clair, titre 23, texte clair, lien citron). */
html[data-ui="montagne"] .agm-goal{padding:var(--agm-sp-5);border-radius:var(--agm-r-lg);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-goal-eyebrow{margin:0;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-goal-title{margin:10px 0;font-size:var(--agm-fs-cap);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-goal-text{margin:0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-goal-link{display:inline-flex;align-items:center;gap:6px;min-height:var(--agm-tap);margin-top:var(--agm-sp-1);padding:0;border:0;background:transparent;color:var(--agm-lime);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);cursor:pointer}
html[data-ui="montagne"] .agm-goal-link .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-goal-link:focus-visible{outline-color:var(--agm-lime)}
/* État vide de Séances — .empty : pointillés, texte à gauche (agm-empty est centré pour Préparer). */
html[data-ui="montagne"] .agm-empty--left{text-align:left}
/* « Le fil de ta semaine » — .agenda (surface) + .agenda-row (date, intitulé au corps, sous-titre et état en méta ; jour sélectionné : chiffre sur citron). */
html[data-ui="montagne"] .agm-agenda-title{margin:0 0 var(--agm-sp-2);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-agenda-row{display:flex;align-items:center;gap:var(--agm-sp-3);width:100%;min-height:var(--agm-tap);padding:12px 0;border:0;border-bottom:var(--agm-bw) solid var(--agm-line);background:transparent;color:var(--agm-ink);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-agenda-row:last-child{border-bottom:0;padding-bottom:1px}
html[data-ui="montagne"] .agm-agenda-date{flex:none;width:34px;text-align:center;line-height:1.25;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-agenda-date small{display:block;font-size:var(--agm-fs-meta)}
html[data-ui="montagne"] .agm-agenda-date strong{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-agenda-row.is-active .agm-agenda-date strong{border-radius:var(--agm-r-xs);background:var(--agm-lime);color:var(--agm-on-lime)}
html[data-ui="montagne"] .agm-agenda-body{flex:1;min-width:0}
html[data-ui="montagne"] .agm-agenda-name{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-agenda-sub{display:block;margin-top:4px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-agenda-status{flex:none;font-size:var(--agm-fs-meta);color:var(--agm-muted);white-space:nowrap}
/* Séances, Mois et marqueurs (R6b-L3-J3) — maquette AGOGE-seances-carnet-demo.html (monthGrid() : .calendar-month, .dow, .month-day, .other, .today, .selected, .markers, small, .goal-icon ; agenda() en mois ; calendar() : .calendar-rail, .rail-goal + .date-chip) et copies de cohérence (légende « Repos » autonome) ; classes posées par athlete-training.js (bloc PAGE SÉANCES MONTAGNE), athlete-today.js (marksHtml) et athlete-accueil.js (fil). Grille du lot 1 (agm-month, agm-month-dow, agm-month-day, is-other, is-today, is-selected, agm-month-num, agm-month-label) reprise ; ses marqueurs agm-month-marks ne le sont pas. */
/* Marqueurs d'un jour — une seule famille (AgogeToday.marksHtml) pour la Semaine, le Mois et le fil de l'Accueil, sur la légende du J2 : réalisée = point citron cerclé --agm-ok (celui du lot 2), prévue = anneau bleu nuit, repos prescrit = point --agm-bar cerclé de secondaire, objectif = carré citron cerclé d'encre (le liseré citron du lot 1 ne tenait que 2,1:1). Chaque marqueur tient par son cerne ≥ 3:1 sur le papier, sur --agm-bg2 (aujourd'hui) et sur --agm-sheet-bg (mois voisins). */
html[data-ui="montagne"] .agm-marks{display:flex;align-items:center;justify-content:center;gap:3px;min-height:6px}
html[data-ui="montagne"] .agm-marks i{flex:none;width:6px;height:6px;border:var(--agm-bw) solid var(--agm-navy);border-radius:50%;background:transparent}
html[data-ui="montagne"] .agm-marks i.is-done{border-color:var(--agm-ok);background:var(--agm-lime)}
html[data-ui="montagne"] .agm-marks i.is-rest{border-color:var(--agm-muted);background:var(--agm-bar)}
html[data-ui="montagne"] .agm-marks i.is-goal,html[data-ui="montagne"] .agm-legend i.is-goal{border:var(--agm-bw) solid var(--agm-ink);border-radius:1px;background:var(--agm-lime)}
/* La rangée de marqueurs occupe la troisième rangée du jour, celle du point du lot 2 (fil de l'Accueil, qui garde is-done) : le point ::after s'éteint là où la rangée existe (classe posée avec elle, sans :has()). */
html[data-ui="montagne"] .agm-day.has-marks::after{content:none}
/* Jours de la Semaine à 360 px : case de 38 px cerne compris ; zone tactile portée au-delà de 44 px, mesurée au pseudo-élément (boîte de remplissage + débordement) : elle mord de 3 px sur l'espace de 5 px entre deux jours. */
html[data-ui="montagne"] .agm-seances-days button.agm-day::before{inset:-1px -4px}
/* Rail — « Le fil de ta semaine » ou « À venir dans ce mois », objectifs (Mois), « TON CAP » : une pile, sous le panneau sur téléphone, en colonne de 300 px au grand écran. */
html[data-ui="montagne"] .agm-seances-rail{display:grid;gap:var(--agm-sp-5);align-content:start}
/* Case du Mois en bouton : largeur de colonne, zone tactile étendue (::before) au-delà de 44 px à 360 px (case de 39 px cerne compris ; le débordement mord de 3 px sur l'espace de 4 px entre deux cases), repère d'objectif en haut à droite (.goal-icon : picto du sprite, décoratif), petit texte de la démo masqué sur téléphone (il ne tient pas aux planchers ; il reste dans le nom accessible). */
html[data-ui="montagne"] .agm-monthsurface,html[data-ui="montagne"] .agm-seances-monthgrid{min-width:0}
html[data-ui="montagne"] button.agm-month-day{width:100%;cursor:pointer}
html[data-ui="montagne"] button.agm-month-day::before{content:"";position:absolute;inset:-1px -4px}
html[data-ui="montagne"] .agm-month-goal{position:absolute;top:3px;right:3px;display:grid;place-items:center;color:var(--agm-navy);pointer-events:none}
html[data-ui="montagne"] .agm-month-goal .agm-ic{width:10px;height:10px}
@media (max-width:700px){html[data-ui="montagne"] .agm-month-label{display:none}}
/* Mois en chargement, en échec ou à couverture partielle : une phrase sous la légende (agm-weeknote), jamais un total. */
html[data-ui="montagne"] .agm-monthnote{margin-top:var(--agm-sp-3)}
/* Objectifs (liste « Objectifs » et « Ajouter un objectif » du calendrier legacy) — rangées de .agenda-row : picto de sport, intitulé au corps et méta en secondaire, compte à rebours à droite ; objectif principal : filet bleu nuit à gauche (secondaire : filet fort) ; « Ajouter un objectif » en bouton secondaire pleine largeur. */
html[data-ui="montagne"] .agm-objectives>div{margin-bottom:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-objrow{display:flex;align-items:center;gap:var(--agm-sp-3);width:100%;min-height:var(--agm-tap);padding:12px 0 12px 10px;border:0;border-left:3px solid var(--agm-line-strong);border-bottom:var(--agm-bw) solid var(--agm-line);background:transparent;color:var(--agm-ink);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-objrow:last-child{border-bottom:0}
html[data-ui="montagne"] .agm-objrow.is-principal{border-left-color:var(--agm-navy)}
html[data-ui="montagne"] .agm-objrow>.agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-objrow-body{flex:1;min-width:0}
html[data-ui="montagne"] .agm-objrow-name{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-objrow-meta{display:block;margin-top:4px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-objrow-count{flex:none;line-height:1.25;text-align:right}
html[data-ui="montagne"] .agm-objrow-count strong{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);font-variant-numeric:tabular-nums;color:var(--agm-navy)}
html[data-ui="montagne"] .agm-objrow-count small{display:block;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
/* Rail « TON CAP » (.rail-goal, carte agm-goal du J2, + .date-chip : puce citron) — au grand écran seulement (≥ 1024 px), Semaine et Mois ; masqué par classe (piège [hidden]). */
html[data-ui="montagne"] .agm-seances-cap{display:none}
@media (min-width:1024px){html[data-ui="montagne"] .agm-seances-cap{display:block}}
html[data-ui="montagne"] .agm-seances-cap-count{margin:var(--agm-sp-3) 0 0}
/* Fenêtres d'objectif (R6b-L3-J3) — #18 détail (#modal-obj-detail, createModal du shell) et #24 création / édition (#modal-add-obj) : rhabillage minimal sous montagne, règles portées par les deux id seulement (les classes .cm-*, .sf-*, .inp, .btn-*, .agc-sheet-handle servent d'autres écrans) ; mécanisme intact (mêmes fonctions, mêmes enregistrements, confirm() natif). Jetons legacy redéfinis sur les deux id ; feuille claire, sans balayage (::before), sans lueur (text-shadow, box-shadow) ni animation ; planchers ; textes ≥ 4,5:1 ; contrôles de 44 px ; action principale bleu nuit. Les tailles et couleurs en ligne du détail (« jours » .55rem, puce de priorité .72rem, sport en couleur de donnée) cèdent par !important : aucun balisage modifié. */
html[data-ui="montagne"] #modal-add-obj{--text:var(--agm-ink);--text2:var(--agm-muted);--muted:var(--agm-muted);--accent:var(--agm-navy);--orange:var(--agm-navy);--orange-rgb:var(--agm-navy-rgb);--violet:var(--agm-locked-ink);--violet-rgb:var(--agm-navy-rgb);--amber:var(--agm-ink);--rose:var(--agm-danger);--bg:var(--agm-paper);--border:var(--agm-line);--border2:var(--agm-line);--ov1:var(--agm-paper);--ov2:var(--agm-bg2);--ov3:var(--agm-line);--radius-md:var(--agm-r-md);--radius-sm:var(--agm-r-sm);--ease:var(--agm-ease)}
html[data-ui="montagne"] #modal-obj-detail .cm-sheet{--violet:var(--agm-locked-ink);--violet-rgb:var(--agm-navy-rgb);--amber:var(--agm-ink);--rose:var(--agm-danger)}
html[data-ui="montagne"] #modal-obj-detail.cm-overlay,html[data-ui="montagne"] #modal-obj-detail .cm-sheet{animation:none}
html[data-ui="montagne"] #modal-obj-detail [style*="font-size:.55rem"]{font-size:var(--agm-fs-meta)!important;color:var(--agm-ink)!important}
html[data-ui="montagne"] #modal-obj-detail [style*="font-size:.72rem"]{font-size:var(--agm-fs-meta)!important;background:var(--agm-bg2)!important}
html[data-ui="montagne"] #modal-obj-detail [style*="color:#"]{color:var(--agm-ink)!important}
html[data-ui="montagne"] #modal-obj-detail [style*="width:72px"]{width:96px!important;height:96px!important}
html[data-ui="montagne"] #modal-obj-detail [style*="font-size:1.6rem"]{white-space:nowrap}
html[data-ui="montagne"] #modal-obj-detail .btn-outline,html[data-ui="montagne"] #modal-obj-detail .btn-danger{min-height:var(--agm-tap);background:var(--agm-paper);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);backdrop-filter:none;-webkit-backdrop-filter:none;transition:none}
html[data-ui="montagne"] #modal-obj-detail .btn-outline{border-color:var(--agm-line-strong);color:var(--agm-ink)}
html[data-ui="montagne"] #modal-obj-detail .btn-danger{border-color:var(--agm-danger);color:var(--agm-danger)}
html[data-ui="montagne"] #modal-add-obj{background:var(--agm-backdrop)!important;backdrop-filter:blur(2px)!important;-webkit-backdrop-filter:blur(2px)!important;animation:none!important}
html[data-ui="montagne"] #modal-add-obj .agc-obj-sheet{border-color:var(--agm-line);border-radius:var(--agm-r-sheet) var(--agm-r-sheet) 0 0;background:var(--agm-sheet-bg);box-shadow:var(--agm-sh-sheet);color:var(--agm-ink);animation:none!important}
html[data-ui="montagne"] #modal-add-obj .agc-obj-sheet::before{display:none}
html[data-ui="montagne"] #modal-add-obj .agc-sheet-handle{width:34px;background:var(--agm-handle)}
html[data-ui="montagne"] #modal-add-obj .obj-hero{border-bottom-color:var(--agm-line);transition:none}
html[data-ui="montagne"] #modal-add-obj .obj-hero-jx,html[data-ui="montagne"] #modal-add-obj .obj-hero.on .obj-hero-jx{color:var(--agm-ink);text-shadow:none;transform:none;transition:none}
html[data-ui="montagne"] #modal-add-obj .obj-hero.past .obj-hero-jx{color:var(--agm-danger);opacity:1}
html[data-ui="montagne"] #modal-add-obj .obj-hero-label,html[data-ui="montagne"] #modal-add-obj .sf-label,html[data-ui="montagne"] #modal-add-obj .obj-preview-label,html[data-ui="montagne"] #modal-add-obj .opc-prio{font-size:var(--agm-fs-eyebrow)}
html[data-ui="montagne"] #modal-add-obj .obj-hero-label,html[data-ui="montagne"] #modal-add-obj .sf-label,html[data-ui="montagne"] #modal-add-obj .obj-preview-label{color:var(--agm-muted)}
html[data-ui="montagne"] #modal-add-obj .obj-opt,html[data-ui="montagne"] #modal-add-obj .obj-type-l,html[data-ui="montagne"] #modal-add-obj .obj-type-d,html[data-ui="montagne"] #modal-add-obj .obj-prio-sub,html[data-ui="montagne"] #modal-add-obj .opc-type,html[data-ui="montagne"] #modal-add-obj .opc-jx,html[data-ui="montagne"] #modal-add-obj .opc-sub{font-size:var(--agm-fs-meta)}
html[data-ui="montagne"] #modal-add-obj .obj-opt,html[data-ui="montagne"] #modal-add-obj .obj-type-d,html[data-ui="montagne"] #modal-add-obj .obj-prio-sub,html[data-ui="montagne"] #modal-add-obj .opc-sub{color:var(--agm-muted)}
html[data-ui="montagne"] #modal-add-obj .inp{min-height:var(--agm-tap);border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink)}
html[data-ui="montagne"] #modal-add-obj .inp::placeholder{color:var(--agm-muted)} /* R6b-L6-J3 — DT-228 : --agm-faint → --agm-muted (4,5:1) */
html[data-ui="montagne"] #modal-add-obj .sf-chip{min-height:var(--agm-tap);border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);box-shadow:none;transition:none}
html[data-ui="montagne"] #modal-add-obj .sf-chip.active{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy);box-shadow:none}
html[data-ui="montagne"] #modal-add-obj .obj-type-card,html[data-ui="montagne"] #modal-add-obj .obj-prio{border-color:var(--agm-line);background:var(--agm-paper);color:var(--agm-ink);box-shadow:none;transition:none}
html[data-ui="montagne"] #modal-add-obj .obj-type-card.on,html[data-ui="montagne"] #modal-add-obj .obj-prio[data-active="1"]{border-color:var(--agm-navy);background:var(--agm-paper);color:var(--agm-ink);box-shadow:0 0 0 1px var(--agm-navy)}
html[data-ui="montagne"] #modal-add-obj .obj-type-card.on .obj-type-d{color:var(--agm-muted);opacity:1}
html[data-ui="montagne"] #modal-add-obj .obj-prio-label{font-size:var(--agm-fs-body);color:var(--agm-ink)}
html[data-ui="montagne"] #modal-add-obj .obj-preview{border-top-color:var(--agm-line);animation:none}
html[data-ui="montagne"] #modal-add-obj .obj-preview-card{border-color:var(--agm-line);background:var(--agm-paper)}
html[data-ui="montagne"] #modal-add-obj .opc-prio{background:var(--agm-bg2)!important;color:var(--agm-ink)!important}
html[data-ui="montagne"] #modal-add-obj .opc-type{background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] #modal-add-obj .opc-jx{color:var(--agm-ink)}
html[data-ui="montagne"] #modal-add-obj .obj-btn-cancel{min-height:var(--agm-tap);border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);transition:none}
html[data-ui="montagne"] #modal-add-obj .btn-cta{min-height:var(--agm-tap);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);box-shadow:none;filter:none;transform:none;transition:none}
/* Mon carnet (R6b-L3-J4) — maquette AGOGE-seances-carnet-demo.html (notebook() : .calendar-tools, select.clean, .notebook-hero, .numbers, .hero-foot, .journal-tools, .journal-grid, .journal-rail, .log-date, .log-row, .sport-square, .log-copy, .log-meta, .feedback-status, .sports-total, .page-lead, .bilan-invite, .pill ; requêtes ≤ 980, ≤ 700, ≤ 360 px) ; classes posées par athlete-training.js (bloc PAGE SÉANCES MONTAGNE). Tailles de la démo sous les planchers relevées aux --agm-fs-* ; secondaire sur --agm-bg2 en --agm-locked-ink (le secondaire n'y tient que 4,41:1). */
html[data-ui="montagne"] .agm-carnet-period select{min-width:0;max-width:100%}
/* En-tête — .notebook-hero (surface claire de la démo et des copies : papier, filet, rayon 16) ; titre 28 → 29 (25 ≤ 360 px) ; chiffres 37 → 25 sur téléphone, 29 au grand écran, 23 ≤ 360 px (trois colonnes tiennent : « 17 h 46 ») ; unité et libellés au plancher méta ; pied à filet haut. Couverture partielle : phrase au-dessus des chiffres sur fond --agm-bg2 (pas une lueur). */
html[data-ui="montagne"] .agm-carnet-hero{min-width:0;margin:0 0 22px;padding:26px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-xl);background:var(--agm-paper);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-carnet-title{max-width:430px;margin:10px 0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-carnet-label{margin:0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-carnet-partial{margin:var(--agm-sp-3) 0 0;padding:var(--agm-sp-2) 10px;border-radius:var(--agm-r-sm);background:var(--agm-bg2);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-carnet-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 16px}
html[data-ui="montagne"] .agm-carnet-numbers p{min-width:0;margin:0}
html[data-ui="montagne"] .agm-carnet-numbers strong{display:block;font-size:var(--agm-fs-card-title);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.1;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-carnet-unit{font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-regular);letter-spacing:0;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-carnet-numbers small{display:block;margin-top:8px;font-size:var(--agm-fs-meta);line-height:1.3;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-carnet-foot{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:6px 12px;padding-top:15px;border-top:var(--agm-bw) solid var(--agm-line);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-carnet-foot>span:first-child{display:flex;align-items:flex-start;gap:6px}
html[data-ui="montagne"] .agm-carnet-foot .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm);margin-top:2px;color:var(--agm-ok)}
@media (min-width:981px){html[data-ui="montagne"] .agm-carnet-numbers{gap:18px;margin:25px 0 15px}html[data-ui="montagne"] .agm-carnet-numbers strong{font-size:var(--agm-fs-screen-title)}}
@media (max-width:700px){html[data-ui="montagne"] .agm-carnet-hero{margin-bottom:20px;padding:21px 19px}}
@media (max-width:360px){html[data-ui="montagne"] .agm-carnet-hero{padding:19px 16px}html[data-ui="montagne"] .agm-carnet-title{font-size:var(--agm-fs-card-title)}html[data-ui="montagne"] .agm-carnet-numbers{gap:7px}html[data-ui="montagne"] .agm-carnet-numbers strong{font-size:var(--agm-fs-cap)}}
/* Grille — .journal-grid : liste + rail de 300 px au-delà de 980 px ; une colonne en dessous (en-tête, liste, rail). */
html[data-ui="montagne"] .agm-carnet-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
html[data-ui="montagne"] .agm-carnet-main,html[data-ui="montagne"] .agm-carnet-list,html[data-ui="montagne"] .agm-carnet-rail{min-width:0}
html[data-ui="montagne"] .agm-carnet-rail{display:grid;gap:var(--agm-sp-5);align-content:start}
@media (min-width:981px){html[data-ui="montagne"] .agm-carnet-grid{grid-template-columns:minmax(0,1fr) 300px;gap:26px}}
/* Liste — .journal-tools (titre 19 → 17 sur téléphone, « Mes bilans » en lien 44 px), .log-date (jour, nombre ; méta), .log-row : carte papier à filet ; la ligne est un bouton (focus en retrait), Modifier / Supprimer en boutons de 44 px frères, dans la carte, à droite. */
html[data-ui="montagne"] .agm-carnet-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 13px;margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-carnet-h2{margin:0;font-size:var(--agm-fs-heading);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-logdate{display:flex;justify-content:space-between;gap:12px;margin:22px 0 9px;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-carnet-tools+.agm-logdate{margin-top:0}
html[data-ui="montagne"] .agm-logrow-wrap{display:flex;align-items:center;min-width:0;margin:0 0 9px;overflow:hidden;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-logrow{display:flex;flex:1;align-items:center;gap:13px;min-width:0;min-height:var(--agm-tap);padding:16px;border:0;background:transparent;color:var(--agm-ink);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-logrow:focus-visible{outline-offset:-4px}
html[data-ui="montagne"] .agm-logrow-sport{display:grid;place-items:center;flex:none;width:37px;height:41px;border-radius:9px;background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-logrow-sport .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-logrow-copy{flex:1;min-width:0}
html[data-ui="montagne"] .agm-logrow-title{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-logrow-meta{display:flex;flex-wrap:wrap;gap:4px 9px;margin-top:6px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-feedback{display:flex;align-items:center;gap:4px;margin-top:7px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-ok)}
html[data-ui="montagne"] .agm-feedback .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-feedback--pending{color:var(--agm-pending)}
html[data-ui="montagne"] .agm-logrow>.agm-ic{flex:none;width:var(--agm-ic-sm);height:var(--agm-ic-sm);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-logrow-tools{display:flex;flex:none;gap:var(--agm-sp-1);padding:0 10px 0 0}
html[data-ui="montagne"] .agm-carnet-empty{margin:0}
@media (max-width:700px){html[data-ui="montagne"] .agm-carnet-h2{font-size:var(--agm-fs-section)}html[data-ui="montagne"] .agm-logdate{margin-top:20px}html[data-ui="montagne"] .agm-logrow{gap:10px;padding:14px 13px}html[data-ui="montagne"] .agm-logrow-sport{width:32px;height:37px;border-radius:7px}html[data-ui="montagne"] .agm-logrow-tools{padding-right:6px}}
/* Rail — « Du temps dans chaque pratique » (.sports-total : picto, nom et durée au corps, nombre au plancher méta, filet entre les lignes) et la note de la démo (10 px → plancher méta). */
html[data-ui="montagne"] .agm-carnet-h3{margin:0 0 var(--agm-sp-2);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-sportsum{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:var(--agm-bw) solid var(--agm-line);font-size:var(--agm-fs-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-sportsum-name{display:flex;align-items:center;gap:8px;min-width:0;overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-sportsum-name .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-sportsum-val{flex:none;text-align:right}
html[data-ui="montagne"] .agm-sportsum-val strong{display:block;font-weight:var(--agm-fw-semibold);font-variant-numeric:tabular-nums}
html[data-ui="montagne"] .agm-sportsum-val small{display:block;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-carnet-note{margin:var(--agm-sp-4) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-sportsum+.agm-carnet-note{margin-top:var(--agm-sp-4)}
/* Invitation aux bilans et aparté de l'écran Bilans — .bilan-invite (fond --agm-bg2, filet fort, rayon 13) : eyebrow et texte en --agm-locked-ink (4,90:1 sur ce fond), titre 17, bouton papier ; .pill « À lire » (carte de bilan de la démo) : fond prêt, encre prête. */
html[data-ui="montagne"] .agm-bilan-invite{padding:var(--agm-sp-5);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-bilan-invite-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
html[data-ui="montagne"] .agm-bilan-invite .agm-eyebrow{color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-bilan-invite-title{margin:9px 0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-bilans-aside .agm-bilan-invite-title{margin-top:0}
html[data-ui="montagne"] .agm-bilan-invite-text{margin:0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-body);color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-bilan-invite-btn{margin-top:15px}
html[data-ui="montagne"] .agm-pill{display:inline-flex;align-items:center;padding:4px var(--agm-sp-2);border-radius:var(--agm-r-xs);background:var(--agm-ready-bg);color:var(--agm-ready-ink);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:1.3;white-space:nowrap}
/* Écran Bilans (sous-page du socle, athlete-bilans.js) — demo:bilans() et render() : chapeau (corps, secondaire), .journal-grid (cartes + aparté de 300 px au-delà de 980 px), .bilan-card (papier, filet, rayon 13 ; titre 23 ; phrase au corps), <details> au résumé de 44 px (bleu nuit, marqueur natif ▸ / ▾ gardé), .bilan-content (filet haut ; rubriques en h3 au corps ; textes publiés tels quels, sauts de ligne gardés) ; Cap, statistiques, douleurs : encre, sans couleur de seuil. */
html[data-ui="montagne"] .agm-bilans{padding-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-bilans-lead{margin:0 0 var(--agm-sp-5);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-bilans-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
html[data-ui="montagne"] .agm-bilans-list{min-width:0}
@media (min-width:981px){html[data-ui="montagne"] .agm-bilans-grid{grid-template-columns:minmax(0,1fr) 300px;gap:26px}}
html[data-ui="montagne"] .agm-bilans-loading{margin:0;padding:var(--agm-sp-4) 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-bilan{margin:0 0 var(--agm-sp-4);padding:24px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);color:var(--agm-ink);scroll-margin-top:72px}
html[data-ui="montagne"] .agm-bilan-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
html[data-ui="montagne"] .agm-bilan-title{margin:10px 0;font-size:var(--agm-fs-cap);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.2;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-bilan-lead{margin:12px 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-bilan-details{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-bilan-summary{display:list-item;min-height:var(--agm-tap);padding:10px 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);color:var(--agm-navy);cursor:pointer}
html[data-ui="montagne"] .agm-bilan-content{margin-top:10px;padding-top:15px;border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-bilan-h3{margin:17px 0 5px;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-bilan-content>.agm-bilan-h3:first-child{margin-top:0}
html[data-ui="montagne"] .agm-bilan-text{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);white-space:pre-line;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-bilan-cap{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 var(--agm-sp-3);padding:10px 12px;border-left:3px solid var(--agm-navy);border-radius:var(--agm-r-sm);background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-bilan-cap-l{font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);text-transform:uppercase;color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-bilan-cap-tx{flex:1;min-width:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-bilan-cap-jx{padding:3px 9px;border-radius:var(--agm-r-xs);background:var(--agm-lime);color:var(--agm-on-lime);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-bold);white-space:nowrap}
html[data-ui="montagne"] .agm-bilan-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--agm-sp-2) var(--agm-sp-3);margin:0 0 var(--agm-sp-3)}
html[data-ui="montagne"] .agm-bilan-stats>div{min-width:0;padding:10px 12px;border-radius:var(--agm-r-sm);background:var(--agm-sheet-bg)}
html[data-ui="montagne"] .agm-bilan-stats dt{font-size:var(--agm-fs-meta);line-height:1.3;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-bilan-stats dd{margin:4px 0 0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);font-variant-numeric:tabular-nums;color:var(--agm-ink)}
@media (min-width:600px){html[data-ui="montagne"] .agm-bilan-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
html[data-ui="montagne"] .agm-bilan-pains{margin:0 0 var(--agm-sp-3);padding:var(--agm-sp-2) 10px;border-radius:var(--agm-r-sm);background:var(--agm-danger-bg);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-bilan-pains-l{font-weight:var(--agm-fw-semibold)}
html[data-ui="montagne"] .agm-bilan-pub{margin:var(--agm-sp-4) 0 0;font-size:var(--agm-fs-meta);text-align:right;color:var(--agm-muted)}
@media (max-width:700px){html[data-ui="montagne"] .agm-bilan{padding:20px}html[data-ui="montagne"] .agm-bilan-title{font-size:var(--agm-fs-cap)}}
/* Rhabillage minimal (R6b-L3-J4) — #25 ajout manuel (#solo-form, encart g-card dans #app), #6 édition (#modal-edit-sess, createModal), #26 import (#modal-import) et #27 RPE en lot (#modal-batch-rpe, agoge-import.js, ajoutés à body hors du scope des jetons) : règles portées par leurs id seulement (.cm-*, .sf-*, .inp, .btn-*, .g-card, .ac-modal-* servent d'autres écrans) ; jetons legacy redéfinis d'abord sur l'id (les styles en ligne var(--…) suivent) ; mécanismes intacts. !important seulement contre un style en ligne codé en dur qui casse un texte, une taille sous plancher ou une cible, ou anime la feuille (déclarés au rapport). */
html[data-ui="montagne"] #solo-form{--text:var(--agm-ink);--text2:var(--agm-muted);--muted:var(--agm-muted);--accent:var(--agm-navy);--orange:var(--agm-navy);--orange-rgb:var(--agm-navy-rgb);--red-rgb:var(--agm-navy-rgb);--emerald:var(--agm-ok);--amber:var(--agm-pending);--rose:var(--agm-danger);--violet:var(--agm-locked-ink);--border:var(--agm-line);--border2:var(--agm-line-strong);--ov1:var(--agm-bg);--ov4:var(--agm-line-strong);--bg:var(--agm-paper);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper);box-shadow:var(--agm-sh-card);color:var(--agm-ink)}
html[data-ui="montagne"] #solo-form::before{display:none}
html[data-ui="montagne"] #solo-form .sf-step-dot{background:var(--agm-line);transition:none}
html[data-ui="montagne"] #solo-form .sf-step-dot.active{background:var(--agm-navy)}
html[data-ui="montagne"] #solo-form .sf-chip{display:inline-flex;align-items:center;gap:6px;min-height:var(--agm-tap);padding:8px 12px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-pill);background:var(--agm-paper);box-shadow:none;color:var(--agm-ink);font-size:var(--agm-fs-body);transition:none}
html[data-ui="montagne"] #solo-form .sf-chip .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md);color:var(--agm-navy)}
html[data-ui="montagne"] #solo-form .sf-chip.active{border-color:var(--agm-navy);background:var(--agm-navy);box-shadow:none;color:var(--agm-on-navy)}
html[data-ui="montagne"] #solo-form .sf-chip.active .agm-ic{color:var(--agm-on-navy)}
html[data-ui="montagne"] #solo-form .sf-label,html[data-ui="montagne"] #modal-edit-sess .sf-label{font-size:var(--agm-fs-eyebrow);color:var(--agm-muted)}
html[data-ui="montagne"] #solo-form .sf-unit{font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] #solo-form .inp,html[data-ui="montagne"] #modal-edit-sess .inp{min-height:var(--agm-tap);border-color:var(--agm-line-strong);background-color:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body)}
html[data-ui="montagne"] #solo-form .inp::placeholder,html[data-ui="montagne"] #modal-edit-sess .inp::placeholder{color:var(--agm-muted)} /* R6b-L6-J3 — DT-228 : --agm-faint → --agm-muted (4,5:1) */
html[data-ui="montagne"] #solo-form .btn-cta,html[data-ui="montagne"] #modal-edit-sess .btn-cta{min-height:var(--agm-tap);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);box-shadow:none;filter:none;transform:none;transition:none}
html[data-ui="montagne"] #solo-form .btn-outline{min-height:var(--agm-tap);border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);backdrop-filter:none;-webkit-backdrop-filter:none;transition:none}
/* RPE de l'ajout : piste neutre au lieu du dégradé vert → rouge (dégradés lumineux interdits), curseur bleu nuit, champ de 44 px ; chiffre et libellé lisibles par les jetons redéfinis (--emerald, --amber, --orange, --rose : ok, olive, bleu nuit, brique, ≥ 5:1 sur papier) ; indicateur « qualité » masqué (phrase de jugement : index du lot ; !important contre son display:flex en ligne) ; libellés « Facile · Modéré · Max » et « +précision » relevés au plancher méta (!important contre leurs font-size en ligne de 10,4 et 9,9 px). */
html[data-ui="montagne"] #solo-form .sf-rpe-slider{height:var(--agm-tap);background:transparent;opacity:1;transition:none}
html[data-ui="montagne"] #solo-form .sf-rpe-slider::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:var(--agm-line-strong)}
html[data-ui="montagne"] #solo-form .sf-rpe-slider::-moz-range-track{height:6px;border-radius:3px;background:var(--agm-line-strong)}
html[data-ui="montagne"] #solo-form .sf-rpe-slider::-webkit-slider-thumb{width:24px;height:24px;margin-top:-9px;border:2px solid var(--agm-paper);border-radius:50%;background:var(--agm-navy);box-shadow:none}
html[data-ui="montagne"] #solo-form .sf-rpe-slider::-moz-range-thumb{width:24px;height:24px;border:2px solid var(--agm-paper);border-radius:50%;background:var(--agm-navy);box-shadow:none}
html[data-ui="montagne"] #solo-form #sf-quality{display:none!important}
html[data-ui="montagne"] #solo-form [style*="font-size:.65rem"],html[data-ui="montagne"] #solo-form [style*="font-size:.62rem"]{font-size:var(--agm-fs-meta)!important}
/* #6 édition (createModal : contenant .cm-* déjà rhabillé en section 6, jetons de .cm-sheet en section 6 depuis R6b-L6-J3) : bandeau « RPE / FC manquants » et libellés en encre (--amber → encre, --amber-rgb → teinte bleu nuit), champs et résumé « Métriques avancées » à 44 px ; liste « Sport » native (data-ag-sel-enhanced, DT-146). */
html[data-ui="montagne"] #modal-edit-sess .cm-sheet{--amber:var(--agm-ink);--amber-rgb:var(--agm-navy-rgb);animation:none}
html[data-ui="montagne"] #modal-edit-sess.cm-overlay{animation:none}
html[data-ui="montagne"] #modal-edit-sess summary{min-height:var(--agm-tap);font-size:var(--agm-fs-body)}
/* #26 import et #27 RPE en lot : fenêtres ajoutées à body (hors des jetons transposés, section 6) → jetons legacy redéfinis sur l'id (--card absent du legacy : fond de feuille), --muted et --text2 en --agm-locked-ink (≥ 4,9:1 sur papier, feuille et --agm-bg2) ; feuille sans glissement d'ouverture, voile sans flou décoratif (!important contre leurs styles en ligne ; couleur du voile legacy gardée) ; cartes .g-card papier ; textes en ligne sous plancher (.6 à .72rem) relevés au plancher méta et couleurs en ligne codées en dur (sport, doublon, FC, puissance, GPS) passées en encre (!important) ; boutons RPE de 44 px qui passent à la ligne, chiffre au corps, choix en bleu nuit (les teintes d'échelle en ligne ne tenaient pas 4,5:1 avec leur chiffre blanc : !important) ; cases à cocher dans un label de 44 px, cochées en bleu nuit (l'orange en ligne, accent-color, ne tenait pas 3:1 sur papier : !important). */
html[data-ui="montagne"] #modal-import,html[data-ui="montagne"] #modal-batch-rpe{--card:var(--agm-sheet-bg);--card-bg:var(--agm-paper);--card-border:var(--agm-line);--elevated:var(--agm-bg2);--bg:var(--agm-paper);--border:var(--agm-line);--border2:var(--agm-line-strong);--text:var(--agm-ink);--text2:var(--agm-locked-ink);--muted:var(--agm-locked-ink);--accent:var(--agm-navy);--orange:var(--agm-navy);--orange-rgb:var(--agm-navy-rgb);--ov1:var(--agm-bg);backdrop-filter:none!important;-webkit-backdrop-filter:none!important;color:var(--agm-ink)}
html[data-ui="montagne"] #modal-import .ac-modal-sheet,html[data-ui="montagne"] #modal-batch-rpe .ac-modal-sheet{border:var(--agm-bw) solid var(--agm-line);border-bottom:0;box-shadow:var(--agm-sh-sheet);color:var(--agm-ink);animation:none!important}
html[data-ui="montagne"] #modal-import .im-close{background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] #modal-import .im-close .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] #modal-import .g-card,html[data-ui="montagne"] #modal-batch-rpe .g-card{border-color:var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper);box-shadow:var(--agm-sh-card)}
html[data-ui="montagne"] #modal-import .g-card::before,html[data-ui="montagne"] #modal-batch-rpe .g-card::before{display:none}
html[data-ui="montagne"] #modal-import [style*="font-size:.7rem"],html[data-ui="montagne"] #modal-import [style*="font-size:.68rem"],html[data-ui="montagne"] #modal-import [style*="font-size:.72rem"],html[data-ui="montagne"] #modal-import [style*="font-size:.6rem"],html[data-ui="montagne"] #modal-batch-rpe [style*="font-size:.7rem"],html[data-ui="montagne"] #modal-batch-rpe [style*="font-size:.72rem"],html[data-ui="montagne"] #modal-batch-rpe [style*="font-size:.6rem"]{font-size:var(--agm-fs-meta)!important}
html[data-ui="montagne"] #modal-import [style*="color:rgb("],html[data-ui="montagne"] #modal-import [style*="color:#"],html[data-ui="montagne"] #modal-batch-rpe [style*="color:rgb("],html[data-ui="montagne"] #modal-batch-rpe [style*="color:#"]{color:var(--agm-ink)!important}
html[data-ui="montagne"] #modal-import [id^="import-rpe-"],html[data-ui="montagne"] #modal-batch-rpe [id^="brpe-sel-"]{flex-wrap:wrap}
html[data-ui="montagne"] #modal-import [data-rpe],html[data-ui="montagne"] #modal-batch-rpe [data-rpe]{width:var(--agm-tap)!important;height:var(--agm-tap)!important;font-size:var(--agm-fs-body)!important}
html[data-ui="montagne"] #modal-import [data-rpe]:not([style*="background: none"]):not([style*="background:none"]),html[data-ui="montagne"] #modal-batch-rpe [data-rpe]:not([style*="background: none"]):not([style*="background:none"]){border-color:var(--agm-navy)!important;background:var(--agm-navy)!important;color:var(--agm-on-navy)!important}
html[data-ui="montagne"] #modal-import #import-content label{min-width:var(--agm-tap);min-height:var(--agm-tap);justify-content:center}
html[data-ui="montagne"] #modal-import input[type="checkbox"]{accent-color:var(--agm-navy)!important}
html[data-ui="montagne"] #modal-import .btn-cta,html[data-ui="montagne"] #modal-batch-rpe .btn-cta{min-height:var(--agm-tap);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);box-shadow:none;filter:none;transform:none;transition:none}
html[data-ui="montagne"] #modal-import #import-content button:not([data-rpe]),html[data-ui="montagne"] #modal-batch-rpe button:not([data-rpe]){min-height:var(--agm-tap)}
/* Détail unifié (R6b-L3-J5) — sheet prescrite (maquette AGOGE-seances-carnet-demo.html, planned(), sheet(), close() : dialog, .handle, .sheet-head, .sheet-body h2 et p, .mini, blockquote ; contrôleur AgogeScreens.openSheet sur les classes agm-sheet* du lot 1, ci-dessus) et blocs ajoutés à l'écran seance-realisee (bandeau « Ce qu'il faut retenir », chips Utile / À côté, « Demander à Orion », nudge profil, note du coach, splits, bornes en watts). Tailles aux planchers, textes ≥ 4,5:1 (secondaire sur --agm-sheet-bg 4,83:1 ; sur --agm-bg2, --agm-locked-ink), cibles ≥ 44 px, aucune couleur en dur (filets de zone en ligne = données), ni lueur, ni balayage, ni animation. */
html[data-ui="montagne"] .agm-sheet-head .agm-eyebrow{min-width:0}
html[data-ui="montagne"] .agm-csheet-line{margin:0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-csheet .agm-csheet-mini{height:64px}
html[data-ui="montagne"] .agm-csheet-detail{margin-top:var(--agm-sp-4);border-top:var(--agm-bw) solid var(--agm-line);border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-csheet-detail>summary{min-height:var(--agm-tap);padding:var(--agm-sp-3) 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-navy);cursor:pointer}
html[data-ui="montagne"] .agm-csheet-blocks{margin:0;padding:0 0 var(--agm-sp-3);list-style:none}
html[data-ui="montagne"] .agm-csheet-block{display:flex;align-items:center;gap:var(--agm-sp-3);margin-top:6px;padding:10px 12px;border:var(--agm-bw) solid var(--agm-line);border-left:3px solid var(--agm-bar);border-radius:var(--agm-r-sm);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-csheet-bdur{flex:none;min-width:56px;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-csheet-bbody{display:flex;flex:1;flex-direction:column;min-width:0}
html[data-ui="montagne"] .agm-csheet-bmain{font-size:var(--agm-fs-body);line-height:1.4;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-csheet-bsub{margin-top:2px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-csheet-quote{margin:var(--agm-sp-4) 0 0;padding:13px 16px;border-left:3px solid var(--agm-navy);background:var(--agm-bg2);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);overflow-wrap:anywhere;color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-csheet-sec{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-csheet-h3,html[data-ui="montagne"] .agm-coach-note-title{display:flex;align-items:center;gap:6px;margin:0 0 var(--agm-sp-2);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-coach-note-title .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-csheet-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}
html[data-ui="montagne"] .agm-csheet-zones{margin:var(--agm-sp-3) 0 0;padding:0}
html[data-ui="montagne"] .agm-csheet-zones>div{display:flex;justify-content:space-between;gap:15px;padding:6px 0;border-top:var(--agm-bw) solid var(--agm-line);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-csheet-zones dt{color:var(--agm-muted)}
html[data-ui="montagne"] .agm-csheet-zones dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-csheet-rpe{margin:var(--agm-sp-4) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-csheet-ex{margin:0;padding-left:18px;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-csheet-plan{margin-top:var(--agm-sp-3)}
/* SM-J5 — « Envoyer sur ma montre » (sheet prescrite, entre le RPE cible et les exercices) : ligne « Envoyée sur ta montre le … » en
   .agm-csheet-line, bouton .agm-btn (--primary ; --ghost au renvoi), message d'échec à l'encre dans la zone role="status". */
html[data-ui="montagne"] .agm-csheet-watch{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-csheet-watch>.agm-csheet-line{margin-bottom:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-csheet-watch-msg{margin:0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-csheet-watch-msg:not(:empty){margin-top:var(--agm-sp-2)}
/* Toast « Séance envoyée sur ta montre. » tiré sheet ouverte : au-dessus du voile (couche legacy 200 sinon, texte flouté par le voile). */
html[data-ui="montagne"] body:has(.agm-csheet-watch) .toast{z-index:var(--agm-z-toast)}
/* SM-J5 — attribution « Garmin [modèle] » exigée par Garmin, sous le titre des cartes de l'Accueil et des Séances : texte secondaire
   visible sans déplier, jamais en infobulle. */
html[data-ui="montagne"] .agm-attrib{display:block;margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
/* Note du coach (sheet prescrite et écran ; .coach de l'Accueil : filet bleu nuit, texte au corps, sauts de ligne gardés). */
html[data-ui="montagne"] .agm-coach-note{padding-left:12px;border-left:3px solid var(--agm-navy)}
html[data-ui="montagne"] .agm-csheet .agm-coach-note{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-coach-note-sub{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-coach-note-title+.agm-coach-note-sub{margin-top:var(--agm-sp-1)}
html[data-ui="montagne"] .agm-coach-note-text{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);white-space:pre-line;overflow-wrap:anywhere;color:var(--agm-ink)}
/* Bandeau « Ce qu'il faut retenir » : feuille bordée, texte serveur à l'encre ; chips en agm-chip--toggle, état porté par is-selected / is-locked (_sdVerdictFb), sans l'opacité ni la mise à l'échelle legacy ; actions secondaires bleu nuit (Orion : cerveau ; nudge). */
html[data-ui="montagne"] .agm-fiche-verdict{padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-fiche-verdict-txt{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-fb{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2);margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-fiche-fb .sd-fb-chip{opacity:1;transform:none;transition:none}
html[data-ui="montagne"] .agm-fiche-fb .sd-fb-chip.is-selected{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy);font-weight:var(--agm-fw-semibold)}
html[data-ui="montagne"] .agm-fiche-fb .sd-fb-chip.is-locked{cursor:default;pointer-events:none}
html[data-ui="montagne"] .agm-fiche-verdict-act{margin-top:var(--agm-sp-3)}
/* Splits (_renderSplits : balisage en ligne gardé) — jetons legacy des en-têtes, kilomètres, temps et filets redéfinis ; barres et allures recolorées par l'écran (_fSplitsTint). Bornes en watts des zones de puissance sous le nom (deux lignes). */
html[data-ui="montagne"] .agm-fiche-splits{padding:var(--agm-sp-2) var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper);font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-zgroup--w .agm-fiche-zone-name{white-space:normal}
html[data-ui="montagne"] .agm-fiche-zone-w{display:block;font-size:var(--agm-fs-meta);line-height:1.3;color:var(--agm-muted)}
/* Écran, mesures (R6b-L3-J6) — zones à la palette de l'athlète (WorkoutIntensity.zoneFill, DT-118 ; FS-004 amendée : teintes sportives gardées, assombries, chaque remplissage >= 3:1) en rangées à chiffre posé (.agm-fiche-zone--bar : la part sur la barre à l'encre de la palette, sinon contre la barre) ; la barre de la carte réalisée (agm-zones) et la légende du mini profil (agm-mini-legend) de l'Accueil lisent la même palette (couleurs inline, données). Courbes (DT-125) : unité et graduations en DOM dans la gouttière du traceur (planchers, encre et secondaire), canvas de 132 px ; axe des temps « 0′ … » et « Temps écoulé » (fiche v1) sous le tracé ; positions alignées sur _fPlot (_FS_GL 40, _FS_GR 6, _FS_PT 22, _FS_PB 6 px, padding du tracé 8 px). Repère (DT-128) : touch-action pan-y, le défilement vertical reste au navigateur. Carte (DT-129) : lien d'attribution OpenStreetMap sous la légende (.agm-fiche-attr, sa propre ligne : la légende garde sa hauteur quand le repère paraît), cible 44 px ; « Repère indicatif » ([data-fiche-pos]) masqué hors repère ; tuiles de la carte de l'écran en mix-blend-mode normal : le plus-lighter de Leaflet 1.9.4 additionne les bords de deux rangées de tuiles en une ligne blanche, même au zoom entier (zoomSnap 1). Squelette de courbe (état partiel, DT-127) à la hauteur d'une courbe sur l'axe des temps (212 + 20 px = légende, tracé, minutes, titre d'axe et marge), sans décalage à l'arrivée du détail. */
html[data-ui="montagne"] .agm-fiche-plot{touch-action:pan-y}
html[data-ui="montagne"] .agm-fiche-plot .agm-fiche-canvas{height:132px}
html[data-ui="montagne"] .agm-fiche-unit{position:absolute;top:6px;left:var(--agm-sp-2);font-size:var(--agm-fs-meta);line-height:1.25;color:var(--agm-ink);pointer-events:none}
html[data-ui="montagne"] .agm-fiche-ylab{position:absolute;left:var(--agm-sp-2);width:34px;font-size:var(--agm-fs-meta);line-height:1;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--agm-muted);transform:translateY(-50%);pointer-events:none}
html[data-ui="montagne"] .agm-fiche-ylab--t{top:30px}
html[data-ui="montagne"] .agm-fiche-ylab--m{top:82px}
html[data-ui="montagne"] .agm-fiche-ylab--b{top:134px}
html[data-ui="montagne"] .agm-fiche-xlabs{position:relative;height:18px;margin:4px 6px 0 40px;font-size:var(--agm-fs-meta);line-height:1.5;font-variant-numeric:tabular-nums;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-fiche-xlabs>span{position:absolute;top:0;white-space:nowrap;transform:translateX(-50%)}
html[data-ui="montagne"] .agm-fiche-xlabs>span:nth-child(1){left:0;transform:none}
html[data-ui="montagne"] .agm-fiche-xlabs>span:nth-child(2){left:33.333%}
html[data-ui="montagne"] .agm-fiche-xlabs>span:nth-child(3){left:66.667%}
html[data-ui="montagne"] .agm-fiche-xlabs>span:nth-child(4){left:100%;transform:translateX(-100%)}
html[data-ui="montagne"] .agm-fiche-xtitle{margin:2px 6px 0 0;font-size:var(--agm-fs-meta);line-height:1.5;text-align:right;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-zone--bar{grid-template-columns:100px minmax(0,1fr)}
html[data-ui="montagne"] .agm-fiche-zbar{display:flex;align-items:center;min-width:0;height:20px;overflow:hidden;border-radius:3px;background:var(--agm-bg)}
html[data-ui="montagne"] .agm-fiche-zfill{display:flex;flex:none;align-items:center;justify-content:flex-end;height:100%}
html[data-ui="montagne"] .agm-fiche-zval{padding:0 6px;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-fiche-zval--w{color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-fiche-legend [data-fiche-pos]:empty{display:none}
html[data-ui="montagne"] .agm-fiche-attr{display:flex;justify-content:flex-end;margin:0}
html[data-ui="montagne"] .agm-fiche-osm{display:inline-flex;align-items:center;min-height:var(--agm-tap);font-size:var(--agm-fs-meta);color:var(--agm-navy);text-decoration:underline;text-underline-offset:2px}
html[data-ui="montagne"] .agm-fiche-map img.leaflet-tile{mix-blend-mode:normal}
html[data-ui="montagne"] .agm-fiche-skel--chart{height:212px}
/* Clôture du lot 3 (R6b-L3-J7) — DT-160 : grille des jours de la Semaine et du Mois (en-têtes de colonnes compris) bord à bord dans sa surface sous 390 px, 4 px de chaque côté ; la surface, la navigation, la légende et le reste de la page ne bougent pas (mesures du jalon). Rangée utile 305,98 px à 360 (297,98 avant) : zone tactile exclusive des colonnes 1-6 de 44,25 px au moins à 360 et de 372 à 389 px (pas de la grille) ; de 361 à 371 px, la marge de surface de 17 px la laisse sous 44 px (dette). */
@media (max-width:389px){html[data-ui="montagne"] .agm-seances-days,html[data-ui="montagne"] .agm-seances-monthgrid{margin-left:-4px;margin-right:-4px}}
/* Dialogue (R6b-L4-J2) — onglet Dialogue du coaché : maquette AGOGE-dialogue-mobile.html (document du srcdoc : .contact, .feed, .separator, .row, .bubble, .meta, .quote, .document, .report, .reply-button, .empty, .composer-area, .extras, .reply-banner, .pending, .composer, .tool, .input-wrap, .send ; dialog .choice, .hint, .large-image) et copie coachée ; classes agm-dialogue-* (en-tête, composer, feuilles) et agm-thread-* (fil, famille réservée en tête de section) posées par athlete-messages.js (bloc « DIALOGUE MONTAGNE »). Tailles aux planchers (maquette 8-14 px → eyebrow 11, méta 12, corps 15 ; nom 18 → 17), cibles ≥ 44 px, textes ≥ 4,5:1 (secondaire sur fond secondaire en --agm-locked-ink), citron sur Envoyer seul (brief : la citation athlète et le repère de retour, citron dans la maquette, passent au blanc et au bleu nuit), aucune animation, aucune ombre. */
html[data-ui="montagne"] .agm-dialogue{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--agm-bg);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-dialogue-na{margin:var(--agm-sp-6) var(--agm-gutter)}
/* En-tête contact — .contact, .avatar (37 × 39 → rond bleu nuit de 38 px, prompt), .who (nom 18 → 17 ; « Ton coach » 10 → méta 12) ; sans prénom : bulle Dialogue à la place de l'initiale. */
html[data-ui="montagne"] .agm-dialogue-head{display:flex;flex:none;align-items:center;gap:11px;min-height:72px;padding:13px var(--agm-gutter) 15px;border-bottom:var(--agm-bw) solid var(--agm-line);background:var(--agm-bg)}
html[data-ui="montagne"] .agm-dialogue-avatar{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);line-height:1}
html[data-ui="montagne"] .agm-dialogue-avatar .agm-ic{width:20px;height:20px}
html[data-ui="montagne"] .agm-dialogue-who{flex:1;min-width:0}
html[data-ui="montagne"] .agm-dialogue-name{margin:0;overflow:hidden;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:-.02em;line-height:1.25;text-overflow:ellipsis;white-space:nowrap;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-dialogue-sub{margin:4px 0 0;font-size:var(--agm-fs-meta);line-height:1.3;color:var(--agm-muted)}
/* Fil — .feed (seul à défiler, retenue du défilement, barre masquée), .separator (eyebrow), .row (coach à gauche, athlète à droite, aucun avatar), .bubble / .bubble.out, .meta (heure, statut, « Réessayer »), .reply-button (« Répondre à ce message »), retour au message cité (contour bleu nuit, 1 s). */
html[data-ui="montagne"] .agm-thread{flex:1;min-height:0;padding:18px 15px 19px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}
html[data-ui="montagne"] .agm-thread::-webkit-scrollbar{display:none}
html[data-ui="montagne"] .agm-thread-sep{margin:17px 0 18px;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-align:center;text-transform:uppercase;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-thread-sep:first-child{margin-top:0}
html[data-ui="montagne"] .agm-thread-row{display:flex;align-items:flex-end;margin-bottom:13px;scroll-margin-top:25px}
html[data-ui="montagne"] .agm-thread-row--in{justify-content:flex-start;padding-right:31px}
html[data-ui="montagne"] .agm-thread-row--out{justify-content:flex-end;padding-left:41px}
html[data-ui="montagne"] .agm-thread-col{display:flex;flex-direction:column;align-items:flex-start;min-width:0;max-width:100%}
html[data-ui="montagne"] .agm-thread-row--out .agm-thread-col{align-items:flex-end}
html[data-ui="montagne"] .agm-thread-bubble{max-width:100%;padding:11px 13px;border:var(--agm-bw) solid var(--agm-line);border-radius:15px 15px 15px 4px;background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-thread-bubble--out{border-color:var(--agm-navy);border-radius:15px 15px 4px 15px;background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-thread-text{white-space:pre-wrap}
html[data-ui="montagne"] .agm-thread-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:5px;padding:0 3px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);font-variant-numeric:tabular-nums;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-thread-row--out .agm-thread-meta{justify-content:flex-end}
html[data-ui="montagne"] .agm-thread-failed{color:var(--agm-danger)}
html[data-ui="montagne"] .agm-thread-retry{min-height:var(--agm-tap);padding:0 4px;border:0;background:transparent;color:var(--agm-danger);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
html[data-ui="montagne"] .agm-thread-reply{min-height:var(--agm-tap);margin-top:7px;padding:0 14px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-sm);background:var(--agm-bg2);color:var(--agm-navy);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);cursor:pointer}
html[data-ui="montagne"] .agm-thread-row--flash .agm-thread-bubble{outline:2px solid var(--agm-navy);outline-offset:3px}
/* Citation — .quote / .out .quote : bouton de 44 px quand la source est chargée (retour au message cité), repère sans action sinon ; nom en gras, extrait sur trois lignes au plus. */
html[data-ui="montagne"] .agm-thread-quote{display:block;width:100%;margin:0 0 9px;padding:8px 10px;border:0;border-left:2px solid var(--agm-navy);border-radius:5px;background:var(--agm-bg2);color:var(--agm-locked-ink);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:left}
html[data-ui="montagne"] button.agm-thread-quote{min-height:var(--agm-tap);cursor:pointer}
html[data-ui="montagne"] .agm-thread-quote b{display:block;margin-bottom:2px;font-weight:var(--agm-fw-bold);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-thread-quote span{display:block;max-height:4.5em;overflow:hidden}
html[data-ui="montagne"] .agm-thread-bubble--out .agm-thread-quote{border-left-color:var(--agm-lime);background:var(--agm-on-navy-ghost);color:var(--agm-lime)}   /* R6b-L6-J9 — citron de la copie (au lieu de --agm-on-navy-muted) ; citron sur bleu nuit 11,36:1 */
html[data-ui="montagne"] .agm-thread-bubble--out .agm-thread-quote b{color:var(--agm-lime)}   /* R6b-L6-J9 — citron (au lieu du blanc) */
/* Pièces jointes — .message-image (photo : feuille « La photo partagée. »), .document (carte « Document PDF », lien natif, 44 px) ; « Pièce jointe indisponible » = span.agm-att-na de _resolveAttachments (R6b-L6-J3, DT-248 : ex-classe de la charte B renommée ; la règle de la section 7, retirée, était entièrement battue par celles-ci). */
html[data-ui="montagne"] .agm-thread-img{display:block;max-width:100%;max-height:240px;margin:0 0 6px;border-radius:9px;object-fit:cover;cursor:pointer}
html[data-ui="montagne"] .agm-thread-doc{display:flex;align-items:center;gap:10px;width:100%;min-width:0;min-height:var(--agm-tap);margin:0 0 3px;padding:11px;border:var(--agm-bw) solid var(--agm-line);border-radius:9px;background:var(--agm-bg2);color:var(--agm-navy);text-decoration:none}
html[data-ui="montagne"] .agm-thread-doc .agm-ic{flex:none;width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-thread-doc-name{flex:1;min-width:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4}
html[data-ui="montagne"] .agm-thread-bubble--out .agm-thread-doc{border-color:var(--agm-on-navy-ghost);background:var(--agm-on-navy-ghost);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-thread-doc+.agm-thread-text{margin-top:9px}
html[data-ui="montagne"] .agm-dialogue .agm-thread-bubble .agm-att-na{display:block;margin:0 0 6px;font-size:var(--agm-fs-meta);font-style:normal;line-height:var(--agm-lh-meta);white-space:normal;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-dialogue .agm-thread-bubble--out .agm-att-na{color:var(--agm-on-navy-muted)}
/* Carte bilan — .report : eyebrow « Bilan de ta semaine » (le picto « livre » de la maquette n'est pas parmi les 48 SVG retenus), titre, « Ouvrir mon bilan » (bouton clair pleine largeur, 44 px) ; la période, absente de coach_messages, est omise. */
html[data-ui="montagne"] .agm-thread-report{min-width:210px}
html[data-ui="montagne"] .agm-thread-kicker{margin:0 0 7px;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-thread-report-title{display:block;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:-.02em;line-height:1.25;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-thread-report-open{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:var(--agm-tap);margin-top:11px;padding:8px 12px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-sm);background:var(--agm-bg2);color:var(--agm-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-thread-report-open .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
/* Fil vide (texte du Chat R5a, absent de la maquette) ; chargement (DT-103) : texte visible et bulles alternées statiques sur fond secondaire (gabarit .agm-fiche-skel, aucun balayage : le spinner montagne est au lot 6). */
html[data-ui="montagne"] .agm-thread-empty{margin:0;padding:25px 20px;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);text-align:center;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-thread-loading{display:flex;flex-direction:column;gap:10px}
html[data-ui="montagne"] .agm-thread-loading-text{margin:0 0 6px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:center;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-thread-skel{display:block;align-self:flex-start;width:58%;max-width:85%;height:34px;border-radius:15px 15px 15px 4px;background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-thread-skel--out{align-self:flex-end;border-radius:15px 15px 4px 15px}
html[data-ui="montagne"] .agm-thread-skel:nth-of-type(2){width:44%;height:30px}
html[data-ui="montagne"] .agm-thread-skel:nth-of-type(3){width:70%;height:52px}
html[data-ui="montagne"] .agm-thread-skel:nth-of-type(4){width:52%;height:30px}
html[data-ui="montagne"] .agm-thread-skel:nth-of-type(5){width:38%;height:30px}
html[data-ui="montagne"] .agm-thread-skel:nth-of-type(6){width:64%;height:46px}
/* « Nouveau message ↓ » (R6b-L4-J3, DT-214) — .new-messages de la maquette : posée par athlete-messages.js entre le fil et le composer quand une réception arrive pendant la lecture plus haut, retirée au retour près du bas (70 px). Ancre de hauteur nulle (le fil ne bouge pas), bouton centré 12 px au-dessus du composer, 44 px de haut ; blanc, filet, bleu nuit, méta en semi-gras (maquette 10 px → plancher 12) ; ni citron (Envoyer seul), ni ombre (écartée comme au J2), ni animation. */
html[data-ui="montagne"] .agm-thread-new{position:relative;flex:none;height:0;z-index:1}
html[data-ui="montagne"] .agm-thread-new-btn{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;min-height:var(--agm-tap);padding:0 16px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-pill);background:var(--agm-paper);color:var(--agm-navy);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:1.2;white-space:nowrap;cursor:pointer}
/* Composer — .composer-area, .extras, .reply-banner (filet bleu nuit), .pending (nom, « {taille} · prêt à envoyer »), × de retrait (44 px), .composer (trombone à gauche, champ, Envoyer citron à droite, au slot du micro : R7). */
html[data-ui="montagne"] .agm-dialogue-composer{flex:none;padding:10px 12px 12px;border-top:var(--agm-bw) solid var(--agm-line);background:var(--agm-sheet-bg)}
html[data-ui="montagne"] .agm-dialogue-extras{display:grid;grid-template-columns:minmax(0,1fr);gap:7px}
html[data-ui="montagne"] .agm-dialogue-extras:not(:empty){margin-bottom:9px}
html[data-ui="montagne"] .agm-dialogue-banner{display:flex;align-items:center;gap:9px;padding:4px 4px 4px 10px;border-left:3px solid var(--agm-navy);border-radius:5px var(--agm-r-sm) var(--agm-r-sm) 5px;background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-dialogue-banner-body{flex:1;min-width:0}
html[data-ui="montagne"] .agm-dialogue-banner strong{display:block;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-bold);line-height:var(--agm-lh-meta);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-dialogue-banner span{display:block;overflow:hidden;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-overflow:ellipsis;white-space:nowrap;color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-dialogue-pending{display:flex;align-items:center;gap:9px;padding:4px 4px 4px 9px;border:var(--agm-bw) solid var(--agm-line);border-radius:9px;background:var(--agm-paper)}
html[data-ui="montagne"] .agm-dialogue-pending>img{flex:none;width:35px;height:35px;border-radius:5px;object-fit:cover}
html[data-ui="montagne"] .agm-dialogue-pending>.agm-ic{flex:none;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-dialogue-pending-copy{flex:1;min-width:0}
html[data-ui="montagne"] .agm-dialogue-pending-copy strong{display:block;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-dialogue-pending-copy small{display:block;margin-top:2px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-dialogue-cancel{display:grid;place-items:center;flex:none;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:0;border-radius:var(--agm-r-sm);background:transparent;color:var(--agm-muted);cursor:pointer}
html[data-ui="montagne"] .agm-dialogue-cancel .agm-ic{width:20px;height:20px}
html[data-ui="montagne"] .agm-dialogue-bar{display:flex;align-items:flex-end;gap:7px}
html[data-ui="montagne"] .agm-dialogue-attach{display:grid;place-items:center;flex:none;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:0;border-radius:var(--agm-r-md);background:transparent;color:var(--agm-muted);cursor:pointer}
html[data-ui="montagne"] .agm-dialogue-attach .agm-ic{width:21px;height:21px}
html[data-ui="montagne"] .agm-dialogue-field{display:flex;flex:1;align-items:flex-end;min-width:0;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-dialogue-field:focus-within{border-color:var(--agm-navy)}
html[data-ui="montagne"] .agm-dialogue-input{display:block;width:100%;min-height:var(--agm-tap);max-height:120px;padding:9px 11px;overflow-y:auto;border:0;outline:0;resize:none;background:transparent;color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:1.6;scrollbar-width:none}
html[data-ui="montagne"] .agm-dialogue-input::placeholder{color:var(--agm-muted)} /* R6b-L6-J3 — DT-228 : --agm-faint → --agm-muted (4,5:1) */
html[data-ui="montagne"] .agm-dialogue-send{display:grid;place-items:center;flex:none;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:var(--agm-bw) solid var(--agm-lime);border-radius:11px;background:var(--agm-lime);color:var(--agm-on-lime);cursor:pointer}
html[data-ui="montagne"] .agm-dialogue-send:disabled{opacity:.4;cursor:default}
html[data-ui="montagne"] .agm-dialogue-send .agm-ic{width:20px;height:20px}
/* Feuilles « JOINDRE UNE PIÈCE » et « La photo partagée. » (contrôleur agm-sheet du socle, R6b-L3-J5) — .choice (44 px et plus), .hint, .large-image. */
html[data-ui="montagne"] .agm-dialogue-choice{display:flex;align-items:center;gap:12px;width:100%;min-height:var(--agm-tap);margin:0 0 12px;padding:16px;border:var(--agm-bw) solid var(--agm-line);border-radius:11px;background:var(--agm-paper);color:var(--agm-navy);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-dialogue-choice>span{flex:1;min-width:0}
html[data-ui="montagne"] .agm-dialogue-choice strong{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-dialogue-choice small{display:block;margin-top:5px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-dialogue-choice>.agm-ic:last-child{width:var(--agm-ic-sm);height:var(--agm-ic-sm);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-dialogue-hint{margin:4px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-dialogue-photo{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:10px}
/* Plein écran mobile (DT-101) : marges nulles (en-tête contre l'app-bar, composer contre la tabbar, largeur de l'écran) ; marge basse négative = padding-bas du conteneur (section 3) : aucun défilement de page. Clavier (athlete-messages.js, visualViewport) : hauteur visible --agm-vvh, tabbar masquée pendant la saisie (portée par la présence du Dialogue : une classe restée posée ailleurs n'a aucun effet ; !important : setupNav pose display:flex en style inline, athlete-app.html:729). R6b-L6-J4 : FAB bêta délié de l'espace athlète (DT-112), sa règle de masquage retirée. */
@media (max-width:767px){
  html[data-ui="montagne"] .agm-dialogue{height:calc(100dvh - var(--bar-h) - env(safe-area-inset-top,0px) - var(--agm-tabbar-h) - var(--agm-safe-bottom));margin:0 0 calc(-1 * (var(--agm-tabbar-h) + var(--agm-sp-4) + var(--agm-safe-bottom)))}
  html[data-ui="montagne"] body.agm-kb-open .agm-dialogue{height:calc(var(--agm-vvh,100dvh) - var(--bar-h) - env(safe-area-inset-top,0px))}
  html[data-ui="montagne"] body.agm-kb-open:has(#app .agm-dialogue) .bottom-nav{display:none!important}
}
/* Écran étroit (maquette ≤ 360 px) : gouttières et retraits des rangées resserrés ; tailles inchangées (planchers). */
@media (max-width:360px){
  html[data-ui="montagne"] .agm-dialogue-head{padding-left:var(--agm-sp-4);padding-right:var(--agm-sp-4)}
  html[data-ui="montagne"] .agm-thread{padding-left:var(--agm-sp-3);padding-right:var(--agm-sp-3)}
  html[data-ui="montagne"] .agm-thread-row--in{padding-right:24px}
  html[data-ui="montagne"] .agm-thread-row--out{padding-left:30px}
  html[data-ui="montagne"] .agm-thread-bubble{padding:10px 12px}
  html[data-ui="montagne"] .agm-dialogue-composer{padding-left:9px;padding-right:9px}
  html[data-ui="montagne"] .agm-dialogue-bar{gap:var(--agm-sp-1)}
}
/* Grand écran (sidebar) : colonne de la largeur de la maquette (téléphone de 390 px), centrée et cadrée d'un filet ; hauteur = 100dvh moins le padding vertical du conteneur (agoge-athlete.css:1134-1135 : 32 + 40 px, 32 + 48 px dès 1024 px) : composer entier, aucun défilement de page. */
@media (min-width:768px){html[data-ui="montagne"] .agm-dialogue{height:calc(100dvh - 72px);max-width:390px;margin:0 auto;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-xl)}}
@media (min-width:1024px){html[data-ui="montagne"] .agm-dialogue{height:calc(100dvh - 80px)}}
/* Orion (R6b-L4-J4) — onglet plein « orion » de l'autonome (.agm-orion--tab, dans #app) et écran « orion » du socle pour le coaché (.agm-orion--screen, sous la pagebar) : un seul rendu (athlete-orion.js, bloc « ORION MONTAGNE »). Copie AGOGE-coherence-solo-dialogue-v1 (route orion : .eyebrow, h1, .orion-message + .orion-orb, .orion-actions, .orion-input, .footer-context) ; textes aux planchers (copie 9-13 px → eyebrow 11, méta 12, corps 15 ; h1 29), ≥ 4,5:1 (secondaire sur fond secondaire en --agm-locked-ink), cibles ≥ 44 px ; cerveau bleu nuit (orbe sur fond secondaire : le citron pâle de la copie est écarté, citron réservé à Envoyer et à la navigation) ; aucune animation, aucune ombre ajoutée, aucune couleur en dur. Géométrie, clavier et grand écran : ceux du Dialogue (J2). */
html[data-ui="montagne"] .agm-orion{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--agm-bg);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-orion-head{display:flex;flex:none;align-items:center;gap:10px;min-height:56px;padding:8px var(--agm-gutter);border-bottom:var(--agm-bw) solid var(--agm-line);background:var(--agm-bg)}
html[data-ui="montagne"] .agm-orion-sign{display:grid;place-items:center;flex:none;color:var(--agm-navy)}
html[data-ui="montagne"] .agm-orion-sign .agm-ic{width:24px;height:24px}
html[data-ui="montagne"] .agm-orion-name{flex:1;min-width:0;margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:-.02em;line-height:1.25;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-orion-quota{flex:none;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);font-variant-numeric:tabular-nums;color:var(--agm-muted)}
/* Fil — seul à défiler ; introduction de la copie (eyebrow, titre, orbe + bulle, action du wizard), bulles d'Orion à gauche (cerveau en tête de suite), de l'athlète à droite en bleu nuit, messages système centrés, attente statique. */
html[data-ui="montagne"] .agm-orion-chat{flex:1;min-height:0;padding:18px var(--agm-gutter) 19px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}
html[data-ui="montagne"] .agm-orion-chat::-webkit-scrollbar{display:none}
html[data-ui="montagne"] .agm-orion-title{margin:7px 0 0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.12;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-orion-intro .agm-orion-msg{margin-top:19px}
html[data-ui="montagne"] .agm-orion-msg{display:flex;align-items:flex-start;gap:10px;margin:0 0 13px;padding-right:31px}
html[data-ui="montagne"] .agm-orion-msg--me{justify-content:flex-end;padding-right:0;padding-left:41px}
html[data-ui="montagne"] .agm-orion-orb{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:11px;background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-orion-orb .agm-ic{width:22px;height:22px}
html[data-ui="montagne"] .agm-orion-orb--gap{height:0;background:transparent}
html[data-ui="montagne"] .agm-orion-bubble{min-width:0;max-width:100%;margin:0;padding:11px 13px;border:var(--agm-bw) solid var(--agm-line);border-radius:2px 13px 13px 13px;background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-orion-bubble p{margin:0}
html[data-ui="montagne"] .agm-orion-bubble--intro,html[data-ui="montagne"] .agm-orion-bubble--wait{color:var(--agm-muted)}
html[data-ui="montagne"] .agm-orion-bubble--wait strong{display:block;margin-bottom:2px;font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-orion-bubble--me{border-color:var(--agm-navy);border-radius:13px 3px 13px 13px;background:var(--agm-navy);color:var(--agm-on-navy);white-space:pre-wrap}
html[data-ui="montagne"] .agm-orion-system{margin:0 0 13px;padding:10px 13px;border-radius:var(--agm-r-md);background:var(--agm-bg2);color:var(--agm-locked-ink);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:center;overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-orion-loading{margin:0;padding:25px 20px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:center;color:var(--agm-muted)}
/* Action de la copie (.orion-actions : « Préparer une semaine d'entraînement » → le wizard sous ses libellés existants) ; étapes du wizard (boutons existants) sous la bulle ; inactives après une saisie libre : grisé lisible. */
html[data-ui="montagne"] .agm-orion-actions{display:grid;gap:8px;margin:4px 0 0 46px}
html[data-ui="montagne"] .agm-orion-action{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:var(--agm-tap);padding:12px 13px;border:var(--agm-bw) solid var(--agm-line);border-radius:9px;background:var(--agm-paper);color:var(--agm-muted);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-orion-action strong{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-orion-action small{display:block;margin-top:3px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-orion-action>.agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-orion-wizard{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 14px 46px}
html[data-ui="montagne"] .agm-orion-wizard-btn{display:inline-flex;align-items:center;min-height:var(--agm-tap);padding:0 14px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);cursor:pointer}
html[data-ui="montagne"] .agm-orion-wizard.is-inactive .agm-orion-wizard-btn{border-color:var(--agm-line);background:var(--agm-locked-bg);color:var(--agm-locked-ink);font-weight:var(--agm-fw-regular);cursor:default}
/* Bloc de séance proposée (agm-card) : picto du sport, titre, date · durée, profil d'intensité (agm-mini, renderMini sans fond) ou « N exercices » (agm-renfo), « Pourquoi cette séance. », Modifier / Ajouter (bleu nuit) ; ajoutée : « Ajouté » en vert d'enregistrement. */
html[data-ui="montagne"] .agm-orion-session{margin:0 0 13px}
html[data-ui="montagne"] .agm-orion-session-head{display:flex;align-items:center;gap:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-orion-session-ic{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:var(--agm-r-sm);background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-orion-session-ic .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-orion-session-copy{flex:1;min-width:0}
html[data-ui="montagne"] .agm-orion-session-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:-.02em;line-height:1.3;color:var(--agm-ink);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-orion-session-sub{margin:3px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-orion-session-why{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-orion-session-why strong{font-weight:var(--agm-fw-semibold)}
html[data-ui="montagne"] .agm-orion-session-actions{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2);margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-orion-session-actions .agm-btn{flex:1 1 auto}
html[data-ui="montagne"] .agm-orion-session-done{display:flex;align-items:center;gap:6px;min-height:var(--agm-tap);margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);color:var(--agm-ok)}
html[data-ui="montagne"] .agm-orion-session-done .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
/* Chips existantes (_buildChips) au-dessus du composer, défilement horizontal (le balayage d'onglet l'ignore : _isHScroll) ; quota épuisé : vide, masqué. */
html[data-ui="montagne"] .agm-orion-chips{display:flex;flex:none;gap:8px;padding:8px var(--agm-gutter);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;border-top:var(--agm-bw) solid var(--agm-line);background:var(--agm-bg)}
html[data-ui="montagne"] .agm-orion-chips::-webkit-scrollbar{display:none}
html[data-ui="montagne"] .agm-orion-chips:empty{display:none}
html[data-ui="montagne"] .agm-orion-chip{flex:none;min-height:var(--agm-tap);padding:0 14px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-pill);background:var(--agm-paper);color:var(--agm-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);white-space:nowrap;cursor:pointer}
/* Composer (.orion-input de la copie, gabarit du composer du Dialogue) : champ papier, Envoyer citron (seul citron d'Orion), note de la copie ; quota épuisé (DT-215) : texte sans lien. */
html[data-ui="montagne"] .agm-orion-composer{flex:none;padding:10px 12px;border-top:var(--agm-bw) solid var(--agm-line);background:var(--agm-sheet-bg)}
html[data-ui="montagne"] .agm-orion-bar{display:flex;align-items:flex-end;gap:8px}
html[data-ui="montagne"] .agm-orion-field{display:flex;flex:1;align-items:flex-end;min-width:0;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-orion-field:focus-within{border-color:var(--agm-navy)}
html[data-ui="montagne"] .agm-orion-input{display:block;width:100%;min-height:var(--agm-tap);max-height:120px;padding:9px 11px;overflow-y:auto;border:0;outline:0;resize:none;background:transparent;color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:1.6;scrollbar-width:none}
html[data-ui="montagne"] .agm-orion-input::placeholder{color:var(--agm-muted)} /* R6b-L6-J3 — DT-228 : --agm-faint → --agm-muted (4,5:1) */
html[data-ui="montagne"] .agm-orion-send{display:grid;place-items:center;flex:none;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:var(--agm-bw) solid var(--agm-lime);border-radius:11px;background:var(--agm-lime);color:var(--agm-on-lime);cursor:pointer}
html[data-ui="montagne"] .agm-orion-send:disabled{opacity:.4;cursor:default}
html[data-ui="montagne"] .agm-orion-send .agm-ic{width:20px;height:20px}
html[data-ui="montagne"] .agm-orion-note{margin:7px 2px 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-orion-out{margin:0;padding:6px 4px 2px;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);text-align:center;color:var(--agm-muted)}
/* Plein écran mobile (géométrie du Dialogue, DT-101) : onglet entre l'app-bar et la tabbar ; écran sous la pagebar du socle (54 px), pleine largeur (gouttière du corps d'écran annulée) ; marge basse négative = padding-bas du conteneur : aucun défilement de page. Clavier (athlete-messages.js pour le Dialogue, athlete-orion.js ici) : hauteur visible --agm-vvh, tabbar masquée en !important (style en ligne de setupNav), chips et note repliées pendant la saisie. R6b-L6-J4 : FAB bêta délié (DT-112), sa règle de masquage retirée. */
@media (max-width:767px){
  html[data-ui="montagne"] .agm-orion--tab{height:calc(100dvh - var(--bar-h) - env(safe-area-inset-top,0px) - var(--agm-tabbar-h) - var(--agm-safe-bottom));margin:0 0 calc(-1 * (var(--agm-tabbar-h) + var(--agm-sp-4) + var(--agm-safe-bottom)))}
  html[data-ui="montagne"] .agm-orion--screen{height:calc(100dvh - var(--bar-h) - env(safe-area-inset-top,0px) - 54px - var(--agm-tabbar-h) - var(--agm-safe-bottom));margin:0 calc(-1 * var(--agm-gutter)) calc(-1 * (var(--agm-tabbar-h) + var(--agm-sp-4) + var(--agm-safe-bottom)))}
  html[data-ui="montagne"] body.agm-kb-open .agm-orion--tab{height:calc(var(--agm-vvh,100dvh) - var(--bar-h) - env(safe-area-inset-top,0px))}
  html[data-ui="montagne"] body.agm-kb-open .agm-orion--screen{height:calc(var(--agm-vvh,100dvh) - var(--bar-h) - env(safe-area-inset-top,0px) - 54px)}
  html[data-ui="montagne"] body.agm-kb-open:has(.agm-orion) .bottom-nav{display:none!important}
  html[data-ui="montagne"] body.agm-kb-open .agm-orion-chips,html[data-ui="montagne"] body.agm-kb-open .agm-orion-note{display:none}
}
@media (max-width:360px){
  html[data-ui="montagne"] .agm-orion-head,html[data-ui="montagne"] .agm-orion-chat,html[data-ui="montagne"] .agm-orion-chips{padding-left:var(--agm-sp-4);padding-right:var(--agm-sp-4)}
  html[data-ui="montagne"] .agm-orion--screen{margin-left:calc(-1 * var(--agm-sp-4));margin-right:calc(-1 * var(--agm-sp-4))}
  html[data-ui="montagne"] .agm-orion-msg{padding-right:24px}
  html[data-ui="montagne"] .agm-orion-msg--me{padding-right:0;padding-left:30px}
  html[data-ui="montagne"] .agm-orion-composer{padding-left:9px;padding-right:9px}
}
/* Grand écran : colonne de 390 px centrée, cadrée d'un filet (Dialogue) ; hauteur = 100dvh moins le padding vertical du conteneur (et la pagebar pour l'écran). */
@media (min-width:768px){
  html[data-ui="montagne"] .agm-orion{height:calc(100dvh - 72px);max-width:390px;margin:0 auto;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-xl)}
  html[data-ui="montagne"] .agm-orion--screen{height:calc(100dvh - 72px - 54px)}
}
@media (min-width:1024px){
  html[data-ui="montagne"] .agm-orion{height:calc(100dvh - 80px)}
  html[data-ui="montagne"] .agm-orion--screen{height:calc(100dvh - 80px - 54px)}
}
/* Planner (R6b-L4-J5) — rhabillage minimal (méthode du lot 3, #18 / #24 / #26 / #27) du planner ouvert depuis Séances et l'Accueil : planner inline (.plv2-wrap, dans #app), fenêtre de référence FTP / VMA (#plv2-ref-prompt, ajoutée à body), détail d'une séance planifiée (#modal-plan-detail, createModal). Jetons legacy redéfinis sur ces trois conteneurs d'abord (les styles en ligne var(--…) suivent) ; couleurs de l'identité, fond papier, cartes et feuilles de la démo des Séances ; aucune lueur, aucun dégradé, aucune animation ni transition (entrées en cascade : opacité rendue) ; planchers ; cibles de 44 px ; contrôles au corps, choix en bleu nuit ; couleurs de zones et de blocs = données (filet gauche d'un bloc, barres), jamais un texte ni un picto. Cerveau d'Orion, pictos de sport et classes agm-plan-* : lignes branchées d'athlete-planner.js. Mécanisme intact. !important seulement contre un style en ligne codé en dur (déclarés un à un au rapport). Le « moment signature » (#plv2-save-sig) n'est plus créé sous montagne (DT-224). */
html[data-ui="montagne"] .plv2-wrap,html[data-ui="montagne"] #plv2-ref-prompt,html[data-ui="montagne"] #modal-plan-detail .cm-sheet{--text:var(--agm-ink);--text1:var(--agm-ink);--text2:var(--agm-muted);--muted:var(--agm-muted);--accent:var(--agm-navy);--orange:var(--agm-navy);--orange-rgb:var(--agm-navy-rgb);--violet:var(--agm-navy);--violet-rgb:var(--agm-navy-rgb);--emerald:var(--agm-ok);--amber:var(--agm-pending);--rose:var(--agm-danger);--bg:var(--agm-bg);--card:var(--agm-paper);--card-bg:var(--agm-paper);--card-border:var(--agm-line-strong);--border:var(--agm-line);--border2:var(--agm-line-strong);--ov1:var(--agm-paper);--ov2:var(--agm-bg);--ov3:var(--agm-line);--ov4:var(--agm-line-strong);--radius-md:var(--agm-r-md);--radius-sm:var(--agm-r-sm);--ease:var(--agm-ease)}
html[data-ui="montagne"] #modal-plan-detail .cm-sheet{--ov1:var(--agm-bg)}
/* En-tête, étapes, libellés ; « Repos » sur toute la ligne de la grille (deux colonnes ≤ 360 px : plus de troisième colonne implicite). */
html[data-ui="montagne"] .plv2-header{border-bottom-color:var(--agm-line);background:var(--agm-bg)}
html[data-ui="montagne"] .plv2-sport-card-rest{grid-column:1/-1}
html[data-ui="montagne"] .plv2-back,html[data-ui="montagne"] .plv2-sport-badge-back{width:var(--agm-tap);height:var(--agm-tap);border:var(--agm-bw) solid var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);transition:none}
html[data-ui="montagne"] .plv2-back:active,html[data-ui="montagne"] .plv2-sport-badge-back:hover{background:var(--agm-bg2);color:var(--agm-ink);transform:none}
html[data-ui="montagne"] .plv2-header-title{font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-header-date,html[data-ui="montagne"] .plv2-mode-cur,html[data-ui="montagne"] .plv2-zone-hint,html[data-ui="montagne"] .plv2-dur-unit,html[data-ui="montagne"] .plv2-int-label,html[data-ui="montagne"] .plv2-int-x,html[data-ui="montagne"] .plv2-block-dur-label,html[data-ui="montagne"] .plv2-renfo-locked{font-size:var(--agm-fs-meta);font-style:normal;color:var(--agm-muted)}
html[data-ui="montagne"] .plv2-header-dur,html[data-ui="montagne"] .plv2-sport-badge-dur{font-family:var(--agm-font);font-size:var(--agm-fs-body);color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-step-dot{font-family:var(--agm-font);font-size:var(--agm-fs-meta);transition:none}
html[data-ui="montagne"] .plv2-step-todo .plv2-step-dot{border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-muted)}
html[data-ui="montagne"] .plv2-step-active .plv2-step-dot{border-color:var(--agm-navy);background:var(--agm-navy);box-shadow:none;color:var(--agm-on-navy);animation:none}
html[data-ui="montagne"] .plv2-step-done .plv2-step-dot{border-color:var(--agm-line-strong);background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-step-lbl,html[data-ui="montagne"] .plv2-step-done .plv2-step-lbl,html[data-ui="montagne"] .plv2-mode-label,html[data-ui="montagne"] .plv2-zone-row-lbl{font-size:var(--agm-fs-eyebrow);letter-spacing:var(--agm-ls-eyebrow);color:var(--agm-muted)}
html[data-ui="montagne"] .plv2-step-active .plv2-step-lbl{color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-step-sep{background:var(--agm-line-strong);transition:none}
html[data-ui="montagne"] .plv2-step-sep-done{background:var(--agm-navy)}
html[data-ui="montagne"] .plv2-label{font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-label-hint{font-size:var(--agm-fs-meta);color:var(--agm-muted)}
/* Cartes (sport, choix, modèle) : papier, filet fort, ombre douce (.session de la démo) ; pastilles d'icône sur fond secondaire, picto bleu nuit (les dégradés en ligne des pastilles de choix et du badge de sport cèdent : !important). */
html[data-ui="montagne"] .plv2-sport-card,html[data-ui="montagne"] .plv2-choice-card,html[data-ui="montagne"] .plv2-choice-card-orion,html[data-ui="montagne"] .plv2-tpl-card{border-color:var(--agm-line-strong);background:var(--agm-paper);box-shadow:var(--agm-sh-card);opacity:1;animation:none;transition:none;font-family:var(--agm-font)}
html[data-ui="montagne"] .plv2-sport-card::before,html[data-ui="montagne"] .plv2-choice-card::before{display:none}
html[data-ui="montagne"] .plv2-sport-card:hover,html[data-ui="montagne"] .plv2-sport-card:active,html[data-ui="montagne"] .plv2-choice-card:hover,html[data-ui="montagne"] .plv2-choice-card:active,html[data-ui="montagne"] .plv2-choice-card-orion:hover,html[data-ui="montagne"] .plv2-tpl-card:hover,html[data-ui="montagne"] .plv2-tpl-card:active{border-color:var(--agm-navy);box-shadow:var(--agm-sh-card);transform:none}
html[data-ui="montagne"] .plv2-sport-card-icon,html[data-ui="montagne"] .plv2-renfo-icon{background:var(--agm-bg2);color:var(--agm-navy);transition:none}
html[data-ui="montagne"] .plv2-sport-card:hover .plv2-sport-card-icon,html[data-ui="montagne"] .plv2-choice-card:hover .plv2-choice-card-chev{transform:none}
html[data-ui="montagne"] .plv2-sport-card-name,html[data-ui="montagne"] .plv2-sport-card-rest .plv2-sport-card-name,html[data-ui="montagne"] .plv2-sport-badge-name,html[data-ui="montagne"] .plv2-choice-card-title,html[data-ui="montagne"] .plv2-tpl-card-name{font-family:var(--agm-font);font-size:var(--agm-fs-body);color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-sport-badge{border-color:var(--agm-line);background:var(--agm-paper)}
html[data-ui="montagne"] .plv2-sport-badge-icon,html[data-ui="montagne"] .plv2-choice-card-icon{background:var(--agm-bg2)!important;box-shadow:none;color:var(--agm-navy)}
html[data-ui="montagne"] .plv2-choice-card-icon svg,html[data-ui="montagne"] .plv2-block-icon svg,html[data-ui="montagne"] .plv2-add-btn svg,html[data-ui="montagne"] #modal-plan-detail svg[stroke^="#"]{stroke:currentColor}
html[data-ui="montagne"] .plv2-choice-card-sub,html[data-ui="montagne"] .plv2-tpl-card-summary{font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .plv2-choice-card-chev{opacity:1;stroke:var(--agm-muted);transition:none}
html[data-ui="montagne"] .plv2-tpl-card-dur{font-size:var(--agm-fs-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-tpl-card-bar,html[data-ui="montagne"] .plv2-timeline-v2{background:var(--agm-bg2)}
html[data-ui="montagne"] .plv2-timeline-v2 .plv2-timeline-seg{animation:none}
/* Renforcement : invitation d'Orion (autonome ; rien chez le coaché, DT-217), bouton bleu nuit avec le cerveau. */
html[data-ui="montagne"] .plv2-renfo-hint{border-color:var(--agm-line);background:var(--agm-paper);opacity:1;animation:none}
html[data-ui="montagne"] .plv2-renfo-text{font-size:var(--agm-fs-body);color:var(--agm-muted)}
html[data-ui="montagne"] .plv2-renfo-text strong{color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-renfo-cta{display:inline-flex;flex:1 1 100%;align-items:center;justify-content:center;gap:6px;min-height:var(--agm-tap);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);transition:none}
html[data-ui="montagne"] .plv2-renfo-cta:hover,html[data-ui="montagne"] .plv2-renfo-cta:active{filter:none;transform:none}
/* Éditeur : référence d'intensité, blocs (papier, zone sur le filet gauche : le fond de zone en ligne cède, !important), puces de zone et pas ±, ajout de bloc, alertes. */
html[data-ui="montagne"] .plv2-mode-row{border-color:var(--agm-line);background:var(--agm-paper);animation:none}
html[data-ui="montagne"] .plv2-mode-pill,html[data-ui="montagne"] .plv2-zone-pill{justify-content:center;min-width:var(--agm-tap);min-height:var(--agm-tap);padding:6px 12px;border:var(--agm-bw) solid var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);transition:none}
html[data-ui="montagne"] .plv2-zone-pill{border-radius:var(--agm-r-pill)}
html[data-ui="montagne"] .plv2-mode-pill.active,html[data-ui="montagne"] .plv2-zone-pill.active{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .plv2-mode-pill.plv2-mode-empty{opacity:1}
html[data-ui="montagne"] .plv2-zone-pill:active{transform:none}
html[data-ui="montagne"] .plv2-mode-warn{width:18px;height:18px;background:var(--agm-bg2);color:var(--agm-ink);font-size:var(--agm-fs-meta)}
html[data-ui="montagne"] .plv2-zone-row{gap:6px}
html[data-ui="montagne"] .plv2-block{border-color:var(--agm-line);background:var(--agm-paper)!important;transition:none}
html[data-ui="montagne"] .plv2-block-icon{display:inline-flex;color:var(--agm-navy)}
html[data-ui="montagne"] .plv2-block-type,html[data-ui="montagne"] .plv2-int-val{font-size:var(--agm-fs-body);color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-block-rm{width:var(--agm-tap);height:var(--agm-tap);border-radius:var(--agm-r-sm);background:var(--agm-bg);color:var(--agm-danger);font-size:20px}
html[data-ui="montagne"] .plv2-pm,html[data-ui="montagne"] .plv2-pm-sm{width:var(--agm-tap);height:var(--agm-tap);border:var(--agm-bw) solid var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body)}
html[data-ui="montagne"] .plv2-block-rm:active,html[data-ui="montagne"] .plv2-pm:active,html[data-ui="montagne"] .plv2-pm-sm:active{background:var(--agm-bg2);transform:none}
html[data-ui="montagne"] .plv2-dur-val{color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-int-ctrl{background:var(--agm-bg)}
html[data-ui="montagne"] .plv2-int-step{font-size:var(--agm-fs-meta);background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-add-btn{min-height:var(--agm-tap);border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body)}
html[data-ui="montagne"] .plv2-add-btn:active{opacity:1;transform:none}
html[data-ui="montagne"] .plv2-alert-card,html[data-ui="montagne"] .plv2-alert-ok,html[data-ui="montagne"] .plv2-alert-warn{border:var(--agm-bw) solid var(--agm-line);background:var(--agm-paper);font-size:var(--agm-fs-body);opacity:1;animation:none}
html[data-ui="montagne"] .plv2-alert-text{color:var(--agm-ink)}
html[data-ui="montagne"] .plv2-alert-ok .plv2-alert-icon{background:var(--agm-ready-bg);color:var(--agm-ok)}
html[data-ui="montagne"] .plv2-alert-warn .plv2-alert-icon{background:var(--agm-bg2);color:var(--agm-ink)}
/* Actions : Planifier / Modifier bleu nuit, Supprimer en brique sur papier (planner et détail). */
html[data-ui="montagne"] .plv2-wrap .btn-cta,html[data-ui="montagne"] #modal-plan-detail .btn-cta{min-height:var(--agm-tap);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);box-shadow:none;filter:none;transform:none;transition:none}
html[data-ui="montagne"] .plv2-wrap .btn-danger,html[data-ui="montagne"] #modal-plan-detail .btn-danger{min-height:var(--agm-tap);border-color:var(--agm-danger);background:var(--agm-paper);color:var(--agm-danger);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);transition:none}
/* Fenêtre de référence FTP / VMA (ajoutée à body) : feuille claire centrée, voile de la sheet, sans flou décoratif ni animation. */
html[data-ui="montagne"] #plv2-ref-prompt,html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-card{animation:none}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-backdrop{background:var(--agm-backdrop);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-card{border-color:var(--agm-line);border-radius:var(--agm-r-sheet);background:var(--agm-sheet-bg);box-shadow:var(--agm-sh-sheet);color:var(--agm-ink)}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-close{top:6px;right:6px;width:var(--agm-tap);height:var(--agm-tap);border:0;background:var(--agm-bg2);color:var(--agm-ink);transition:none}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-icon{border-color:var(--agm-line);background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-title{font-family:var(--agm-font);font-size:var(--agm-fs-section);color:var(--agm-ink)}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-help,html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-unit{font-size:var(--agm-fs-body);color:var(--agm-muted)}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-input-row{min-height:var(--agm-tap);border-color:var(--agm-line-strong);background:var(--agm-paper);transition:none}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-input-row:focus-within{border-color:var(--agm-navy)}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-input{font-family:var(--agm-font);color:var(--agm-ink)}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-input::placeholder{color:var(--agm-muted)} /* R6b-L6-J3 — DT-228 : --agm-faint → --agm-muted (4,5:1) */
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-cancel{min-height:var(--agm-tap);border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);transition:none}
html[data-ui="montagne"] #plv2-ref-prompt .plv2-ref-save{min-height:var(--agm-tap);background:var(--agm-navy);box-shadow:none;color:var(--agm-on-navy);font-size:var(--agm-fs-body);transform:none;transition:none}
/* Détail d'une séance planifiée (DT-218) : feuille sans glissement d'ouverture ; pastille du sport, puce « ORION » (cerveau), mini profil, « Orion — Logique » (encart à filet bleu nuit, texte au corps), lancement du renfo : classes agm-plan-* ; « Voir le détail » et ses rangées en ligne : textes sous plancher relevés au plancher méta, textes en couleur de zone passés à l'encre (la zone reste sur le filet et la puce), libellé du bouton au corps (!important contre les styles en ligne). */
html[data-ui="montagne"] #modal-plan-detail.cm-overlay,html[data-ui="montagne"] #modal-plan-detail .cm-sheet{animation:none}
html[data-ui="montagne"] #modal-plan-detail .agm-plan-sport{display:flex;flex:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--agm-r-md);background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] #modal-plan-detail .agm-plan-badge{display:inline-flex;flex:none;align-items:center;gap:5px;padding:4px var(--agm-sp-2);border-radius:var(--agm-r-xs);background:var(--agm-bg2);color:var(--agm-ink);font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase}
html[data-ui="montagne"] #modal-plan-detail .agm-plan-badge .agm-ic,html[data-ui="montagne"] #modal-plan-detail .agm-plan-why-title .agm-ic{color:var(--agm-navy)}
html[data-ui="montagne"] #modal-plan-detail .agm-plan-mini{height:64px;margin:0 0 14px}
html[data-ui="montagne"] #modal-plan-detail .agm-plan-why{margin-top:var(--agm-sp-3);padding:13px 16px;border-left:3px solid var(--agm-navy);background:var(--agm-bg2);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] #modal-plan-detail .agm-plan-why-title{display:flex;align-items:center;gap:6px;margin:0 0 var(--agm-sp-1);font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-ink)}
html[data-ui="montagne"] #modal-plan-detail .agm-plan-launch{display:flex;align-items:center;justify-content:center;gap:var(--agm-sp-2);width:100%;min-height:52px;margin-bottom:10px;border:0;border-radius:var(--agm-r-md);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);letter-spacing:.02em;cursor:pointer}
html[data-ui="montagne"] #modal-plan-detail [style*="font-size:.62rem"],html[data-ui="montagne"] #modal-plan-detail [style*="font-size:.65rem"],html[data-ui="montagne"] #modal-plan-detail [style*="font-size:.68rem"]{font-size:var(--agm-fs-meta)!important}
html[data-ui="montagne"] #modal-plan-detail [style*="color:#"]{color:var(--agm-ink)!important}
html[data-ui="montagne"] #modal-plan-detail button[onclick*="plv2-ws-detail"]{min-height:var(--agm-tap);font-size:var(--agm-fs-body)!important}
/* Exercices d'une séance renfo d'Orion dans le détail (AthleteRenfo.render, athlete-renfo-viewer.js à l'octet) : textes relevés aux planchers ; type de bloc et « N tours » à l'encre sur fond secondaire (leurs couleurs en ligne, cyan, rouge, violet, ne tenaient pas 4,5:1 : !important), la couleur du type reste sur le filet gauche du bloc. */
html[data-ui="montagne"] #modal-plan-detail .arv-btype{border-color:var(--agm-line)!important;background:var(--agm-bg2)!important;color:var(--agm-ink)!important;font-size:var(--agm-fs-eyebrow);letter-spacing:var(--agm-ls-eyebrow)}
html[data-ui="montagne"] #modal-plan-detail .arv-circuit{color:var(--agm-ink)!important}
html[data-ui="montagne"] #modal-plan-detail .arv-circuit,html[data-ui="montagne"] #modal-plan-detail .arv-set,html[data-ui="montagne"] #modal-plan-detail .arv-set-num,html[data-ui="montagne"] #modal-plan-detail .arv-set-rpe,html[data-ui="montagne"] #modal-plan-detail .arv-ss,html[data-ui="montagne"] #modal-plan-detail .arv-muscles,html[data-ui="montagne"] #modal-plan-detail .arv-note,html[data-ui="montagne"] #modal-plan-detail .arv-rest,html[data-ui="montagne"] #modal-plan-detail .arv-summary{font-size:var(--agm-fs-meta)}
html[data-ui="montagne"] #modal-plan-detail .arv-name,html[data-ui="montagne"] #modal-plan-detail .arv-blabel{font-size:var(--agm-fs-body)}
html[data-ui="montagne"] #modal-plan-detail .arv-ss{background:var(--agm-bg2);color:var(--agm-ink)}
/* Signature du coach (R6b-L4-J6) — la tête .coach-head de la copie coachée de l'Accueil (filet du .coach, rond bleu nuit à l'initiale, prénom, « · Ton coach », méta à droite) : règles agm-coach-head / agm-coach-avatar / agm-coach-time existantes (plus haut, section 5), reprises telles quelles ; tête posée par agCoachSign (agoge-icons.js) sur le mot du coach, la carte bilan de l'Accueil (à la place de la méta) et la note du coach de l'écran (sous le titre). Repli sans prénom : bulle Dialogue (agm-ic--sm) dans le rond, « Ton coach ». Ici : espacements de la tête dans une carte et dans la note, bulle Dialogue du raccourci « Écrire à {prénom} » (DEC-053) dans l'action pleine largeur. Textes sur papier ou fond de page (≥ 4,5:1), aucun citron, aucune animation. */
html[data-ui="montagne"] .agm-card>.agm-coach-head{margin-top:10px}
html[data-ui="montagne"] .agm-coach-note>.agm-coach-head+.agm-coach-note-text{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-card-action-ic{margin-right:var(--agm-sp-2)}
/* Préparer (R6b-L5-J2) — six familles en placeholders (index R6b-L5, décision post-J1 n° 12), classes posées par athlete-preparer.js. Grille de la maquette AGOGE-preparer-parcours-courts.html (.family-grid : deux colonnes à toute largeur, gap 11 → 12 ; .family / .v2-family : filet, rayon 14 → 13, padding 12, .art 71 × 49 calée à droite, strong 14-15 / 650 → corps 15 / 700, small 9-10 → méta 12) ; carte grisée de .v2-fiche.locked et du bloc « Grisé lisible » (fond --agm-locked-bg sans ombre, titre et ligne en --agm-locked-ink : 4,96:1 ; aucune opacité globale, illustration non grisée) ; puce « Bientôt » = agm-chip de l'Accueil, posée sur papier en encre grisée (5,63:1) : la puce grise de l'Accueil se confondrait avec la carte grise. Gouttière de l'Accueil montagne (agm-home : 20 px, 16 px ≤ 360 px, mobile seulement ; DT-121) portée par une classe propre : athlete-accueil.js reconnaît l'Accueil affiché à #app .agm-home (auto-ouverture du questionnaire, _paintLive). Grand écran : la colonne de contenu du .container, comme l'Accueil. Cartes non interactives : ni curseur, ni état actif, ni focus. Aucun citron, aucune lueur, aucun dégradé, aucune animation. */
html[data-ui="montagne"] .agm-preparer{padding-top:var(--agm-sp-2)}
@media (max-width:767px){html[data-ui="montagne"] .agm-preparer{padding-left:var(--agm-gutter);padding-right:var(--agm-gutter)}}
@media (max-width:360px){html[data-ui="montagne"] .agm-preparer{padding-left:var(--agm-sp-4);padding-right:var(--agm-sp-4)}}
html[data-ui="montagne"] .agm-preparer-title{margin:7px 0 0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.2;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-preparer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--agm-sp-3);margin:var(--agm-sp-5) 0 0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-preparer-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-locked-bg);color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-preparer-art{display:flex;justify-content:flex-end;margin:0 0 var(--agm-sp-2)}
html[data-ui="montagne"] .agm-preparer-art>.agm-illu{display:block;flex:none;width:71px;height:49px}
html[data-ui="montagne"] .agm-preparer-name{margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-preparer-line{margin:var(--agm-sp-1) 0 var(--agm-sp-3);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-preparer-card>.agm-chip{align-self:flex-start;margin-top:auto;background:var(--agm-paper);color:var(--agm-locked-ink)}
/* Articles UltraRide (sprint ART, J2) — classes posées par agoge-articles.js et athlete-preparer.js ; valeurs du prototype Préparer v2 (Organisation pleine largeur, section, cartes, « Afficher plus ») et de la lecture v1 (photo à fond perdu, en-tête, auteur, sommaire, corps, encadré citron, source, bloc question), en jetons quand ils existent. Cinq familles grisées inchangées, Organisation sur toute la largeur (illustration en haut à droite) ; cartes d'articles blanches et actives (anneau de focus global, section 3). Lecture sur papier (l'encadré sur --agm-bg s'en détache), colonne centrée de 680 px en grand écran. Tableaux dans un conteneur à défilement horizontal. Aucun hex nouveau, aucune lueur, aucun dégradé, aucune animation. */
html[data-ui="montagne"] .agm-preparer-card--wide{position:relative;grid-column:1/-1;min-height:98px;padding-top:22px}
html[data-ui="montagne"] .agm-preparer-card--wide>.agm-preparer-art{position:absolute;top:22px;right:18px;margin:0}
html[data-ui="montagne"] .agm-preparer-card--wide>.agm-preparer-line{max-width:255px}
html[data-ui="montagne"] .agm-articles{margin-top:29px}
html[data-ui="montagne"] .agm-articles-title{margin:0;font-size:21px;font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-articles-sub{margin:0 0 var(--agm-sp-4);font-size:13px;line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-articles-na{margin:0;font-size:13px;line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-articles-list{margin:0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-articles-list>li{margin:0;padding:0}
html[data-ui="montagne"] .agm-article-card{display:grid;grid-template-columns:96px minmax(0,1fr);gap:15px;align-items:center;width:100%;min-height:125px;margin:var(--agm-sp-3) 0 0;padding:var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:12px;background:var(--agm-paper);box-shadow:var(--agm-sh-card);color:var(--agm-ink);font:inherit;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-article-card-img{display:block;width:96px;height:100px;border-radius:7px;object-fit:cover;background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-article-card-text{display:block;min-width:0}
html[data-ui="montagne"] .agm-article-card small{display:block;margin:0 0 6px;font-size:var(--agm-fs-eyebrow);line-height:var(--agm-lh-meta);letter-spacing:.45px;text-transform:uppercase;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-article-card strong{display:-webkit-box;overflow:hidden;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink);-webkit-box-orient:vertical;-webkit-line-clamp:2}
html[data-ui="montagne"] .agm-article-card em{display:block;margin-top:var(--agm-sp-2);font-size:var(--agm-fs-meta);font-style:normal;line-height:var(--agm-lh-meta);color:var(--agm-muted)}
@media (max-width:360px){html[data-ui="montagne"] .agm-article-card{grid-template-columns:82px minmax(0,1fr);gap:var(--agm-sp-3);padding:10px}html[data-ui="montagne"] .agm-article-card-img{width:82px}}
html[data-ui="montagne"] .agm-articles-more{display:block;width:100%;min-height:var(--agm-tap);margin-top:15px;padding:0 var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-ink);font:inherit;font-size:13px;cursor:pointer}
html[data-ui="montagne"] .agm-article{background:var(--agm-paper);color:var(--agm-ink)}
@media (max-width:767px){html[data-ui="montagne"] .agm-article{margin-left:calc(-1 * var(--agm-gutter));margin-right:calc(-1 * var(--agm-gutter))}}
@media (max-width:360px){html[data-ui="montagne"] .agm-article{margin-left:calc(-1 * var(--agm-sp-4));margin-right:calc(-1 * var(--agm-sp-4))}}
@media (min-width:768px){html[data-ui="montagne"] .agm-article{max-width:680px;margin-left:auto;margin-right:auto}}
html[data-ui="montagne"] .agm-article-photo{position:relative;margin:0}
html[data-ui="montagne"] .agm-article-photo>img,html[data-ui="montagne"] .agm-article-photo--wait{display:block;width:100%;height:auto;aspect-ratio:1.55;object-fit:cover;background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-article-photo>figcaption{position:absolute;right:var(--agm-sp-3);bottom:11px;padding:3px var(--agm-sp-2);border-radius:5px;background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-meta);line-height:1.4}
html[data-ui="montagne"] .agm-article-main{padding:26px 25px 30px}
@media (max-width:440px){html[data-ui="montagne"] .agm-article-main{padding:23px var(--agm-sp-5)}}
html[data-ui="montagne"] .agm-article-na{margin:0;padding:26px 25px 30px;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-article-wait-txt{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-article-kicker{margin:0 0 var(--agm-sp-3);font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);letter-spacing:1px;text-transform:uppercase;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-article-h1{margin:0 0 var(--agm-sp-4);font-size:30px;font-weight:var(--agm-fw-bold);line-height:1.16;letter-spacing:-.8px;color:var(--agm-ink)}
@media (max-width:440px){html[data-ui="montagne"] .agm-article-h1{font-size:28px}}
html[data-ui="montagne"] .agm-article-intro{margin:0 0 23px;font-size:var(--agm-fs-section);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-article-author{display:flex;align-items:center;gap:10px;margin-bottom:21px;padding-bottom:23px;border-bottom:var(--agm-bw) solid var(--agm-line);font-size:13px;line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-article-ini{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:50%;background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-article-author>p{margin:0;min-width:0}
html[data-ui="montagne"] .agm-article-author>p>strong{display:block;font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-article-author>p>span{display:block;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-article-toc{padding:13px 0;border-top:var(--agm-bw) solid var(--agm-line);border-bottom:var(--agm-bw) solid var(--agm-line);font-size:14px}
html[data-ui="montagne"] .agm-article-toc>summary{min-height:var(--agm-tap);padding:var(--agm-sp-3) 0;box-sizing:border-box;line-height:20px;font-weight:var(--agm-fw-semibold);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-article-toc-list{margin:0;padding:0 0 0 22px}
html[data-ui="montagne"] .agm-article-toc-list>li{margin:0}
html[data-ui="montagne"] .agm-article-toc-list a{display:block;min-height:var(--agm-tap);padding:var(--agm-sp-3) 0;box-sizing:border-box;line-height:20px;color:var(--agm-ink);text-decoration:underline;text-underline-offset:2px}
html[data-ui="montagne"] .agm-article-content{font-size:16px;line-height:1.8}
html[data-ui="montagne"] .agm-article-content h2{margin:31px 0 14px;font-size:21px;font-weight:var(--agm-fw-bold);line-height:1.3;letter-spacing:-.35px;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-article-content h3{margin:var(--agm-sp-6) 0 10px;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-article-content p,html[data-ui="montagne"] .agm-article-content li{margin:0 0 18px;font-size:16px;line-height:1.8}
html[data-ui="montagne"] .agm-article-content ul,html[data-ui="montagne"] .agm-article-content ol{margin:0 0 18px;padding-left:22px}
html[data-ui="montagne"] .agm-article-content a{color:var(--agm-ink);text-decoration:underline;text-underline-offset:2px}
html[data-ui="montagne"] .agm-article-content blockquote{margin:var(--agm-sp-6) 0;padding:17px 18px;border-left:3px solid var(--agm-lime);background:var(--agm-bg);font-size:var(--agm-fs-body);line-height:1.7}
html[data-ui="montagne"] .agm-article-content blockquote p,html[data-ui="montagne"] .agm-article-content blockquote li{font-size:inherit;line-height:inherit}
html[data-ui="montagne"] .agm-article-content blockquote>:last-child{margin-bottom:0}
html[data-ui="montagne"] .agm-article-content blockquote strong{font-size:14px}
html[data-ui="montagne"] .agm-article-table{margin:var(--agm-sp-6) 0;overflow-x:auto}
html[data-ui="montagne"] .agm-article-table table{min-width:100%;border-collapse:collapse;font-size:14px;line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-article-table th,html[data-ui="montagne"] .agm-article-table td{padding:var(--agm-sp-2) 10px;border:var(--agm-bw) solid var(--agm-line);text-align:left;vertical-align:top}
html[data-ui="montagne"] .agm-article-table th{font-weight:var(--agm-fw-semibold);background:var(--agm-bg)}
html[data-ui="montagne"] .agm-article-table caption{padding-bottom:var(--agm-sp-2);font-size:var(--agm-fs-meta);text-align:left;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-article-source{margin-top:31px;padding-top:var(--agm-sp-5);border-top:var(--agm-bw) solid var(--agm-line);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-article-source>p{margin:0}
html[data-ui="montagne"] .agm-article-source>a{display:inline-flex;align-items:center;min-height:var(--agm-tap);color:var(--agm-ink);text-decoration:underline;text-underline-offset:2px}
html[data-ui="montagne"] .agm-article-ask{display:grid;grid-template-columns:24px 1fr;gap:10px;margin-top:30px;padding:21px 18px;border-radius:12px;background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-article-ask-ic{color:var(--agm-lime)}
html[data-ui="montagne"] .agm-article-ask-ic>.agm-ic{display:block;width:23px;height:23px}
html[data-ui="montagne"] .agm-article-ask-text>h2{margin:0;font-size:16px;font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-article-ask-text>p{margin:var(--agm-sp-1) 0 0;font-size:13px;line-height:var(--agm-lh-meta);color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-article-ask-btn{grid-column:1/-1;min-height:46px;padding:0 var(--agm-sp-4);border:0;border-radius:var(--agm-r-sm);background:var(--agm-lime);color:var(--agm-on-lime);font:inherit;font-size:14px;font-weight:var(--agm-fw-semibold);cursor:pointer}
html[data-ui="montagne"] .agm-article-ask-btn:focus-visible{outline-color:var(--agm-lime)}
/* Profil (R6b-L5-J3) — page racine et sous-pages du compte et de l'accompagnement (index R6b-L5, décisions post-J1 n° 2, 3, 4, 16, 17), classes posées par athlete-profil.js (bloc PROFIL MONTAGNE). Maquette AGOGE-profil-mobile.html (home() : .profile-id, .profile-avatar, .camera, .coach-card, .profile-group-title, .settings-group + .settings-row = agm-list + agm-row, .logout, .profile-footer ; accountPage, identityPage, passwordPage, coachPage : title(), .field, .paper, .security-rule, .save-strip, .subtle-link) et copies de cohérence. Tailles aux planchers (maquette 8-13 px → eyebrow 11, méta 12, corps 15 ; contrôles au corps), cibles ≥ 44 px. Carte d'accompagnement du coaché en bleu nuit (.coach-card) : portrait translucide sur bleu nuit (la maquette le pose en citron), eyebrow en clair secondaire ; autonome sur papier et filet fort (le vert de .coach-card.autonomous écarté). Badge de la photo en bleu nuit (citron dans la maquette). Gouttière de l'Accueil par une classe propre (patron agm-preparer : jamais agm-home hors de l'Accueil). Jetons legacy --emerald et --rose relus en --agm-ok et --agm-danger sous le Profil (message posé en style par _changePassword, athlete-notif.js). Champs agm-field* (étiquette au corps, champ de 44 px), réutilisables par le profil sportif. Modales #modal-support et #modal-delete (createModal ; openSupportTicket partagée avec le FAB bêta) rhabillées par leur id, mécanisme et textes intacts : jetons legacy redéfinis, sans animation ni dégradé, catégories, champ et boutons à 44 px et au corps (!important contre leurs styles en ligne), suppression en --agm-danger. Aucun citron, aucune lueur, aucun dégradé, aucune animation. */
html[data-ui="montagne"] .agm-profil{padding-top:var(--agm-sp-2)}
@media (max-width:767px){html[data-ui="montagne"] .agm-profil{padding-left:var(--agm-gutter);padding-right:var(--agm-gutter)}}
@media (max-width:360px){html[data-ui="montagne"] .agm-profil{padding-left:var(--agm-sp-4);padding-right:var(--agm-sp-4)}}
html[data-ui="montagne"] .agm-profil,html[data-ui="montagne"] .agm-profil-page{--emerald:var(--agm-ok);--rose:var(--agm-danger);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-profil-page{padding-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-profil-title{margin:7px 0 0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.2;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-profil-lead{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-profil-id{display:flex;align-items:center;gap:14px;margin:var(--agm-sp-5) 0 18px}
html[data-ui="montagne"] .agm-profil-avatar{position:relative;display:grid;place-items:center;flex:none;width:62px;height:62px;padding:0;border:0;border-radius:var(--agm-r-xl);background:var(--agm-bg2);color:var(--agm-navy);font-size:var(--agm-fs-stat);font-weight:var(--agm-fw-semibold);cursor:pointer}
html[data-ui="montagne"] .agm-profil-avatar>img{display:block;width:100%;height:100%;border-radius:var(--agm-r-xl);object-fit:cover}
html[data-ui="montagne"] .agm-profil-cam{position:absolute;right:-4px;bottom:-3px;display:grid;place-items:center;width:22px;height:22px;border:2px solid var(--agm-bg);border-radius:var(--agm-r-sm);background:var(--agm-lime);color:var(--agm-on-lime)}   /* R6b-L6-J9 — badge photo (.camera de la copie) en citron, picto --agm-on-lime (9,67:1) */
html[data-ui="montagne"] .agm-profil-cam .agm-ic{width:12px;height:12px}
html[data-ui="montagne"] .agm-profil-id-text{flex:1;min-width:0}
html[data-ui="montagne"] .agm-profil-name{margin:0;font-size:var(--agm-fs-stat);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-profil-sports{margin:5px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-profil-coach{display:block;margin:19px 0 24px;padding:15px;border:var(--agm-bw) solid var(--agm-navy);border-radius:var(--agm-r-xl);background:var(--agm-navy);color:var(--agm-on-navy);text-decoration:none}
html[data-ui="montagne"] .agm-profil-coach-open{display:flex;align-items:center;gap:11px;width:100%;min-height:var(--agm-tap);padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-profil-coach--solo{display:flex;align-items:center;gap:11px;border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-profil-coach-portrait{display:grid;place-items:center;flex:none;width:40px;height:42px;border-radius:var(--agm-r-md);background:var(--agm-on-navy-ghost);color:var(--agm-lime);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold)}   /* R6b-L6-J9 — initiale du portrait du coach en citron (copie) ; l'autonome garde la règle suivante */
html[data-ui="montagne"] .agm-profil-coach--solo .agm-profil-coach-portrait{background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-profil-coach-portrait .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-profil-coach-body{flex:1;min-width:0}
html[data-ui="montagne"] .agm-profil-coach-eyebrow{display:block;margin-bottom:5px;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-profil-coach--solo .agm-profil-coach-eyebrow{color:var(--agm-muted)}
html[data-ui="montagne"] .agm-profil-coach-title{display:block;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-profil-coach-line{display:block;margin-top:5px;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-profil-coach-open>.agm-ic,html[data-ui="montagne"] .agm-profil-coach--solo>.agm-ic{flex:none;width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-profil-coach-open>.agm-ic{color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-profil-coach--solo>.agm-ic{color:var(--agm-muted)}
html[data-ui="montagne"] .agm-profil-coach-write{margin-top:14px;border-color:var(--agm-paper)}
html[data-ui="montagne"] .agm-profil-group{margin:var(--agm-sp-5) 2px var(--agm-sp-2)}
html[data-ui="montagne"] .agm-profil .agm-list,html[data-ui="montagne"] .agm-profil-page .agm-list{margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-profil-danger .agm-row-title,html[data-ui="montagne"] .agm-profil-danger .agm-row-ic{color:var(--agm-danger)}
html[data-ui="montagne"] .agm-profil-logout{display:flex;align-items:center;justify-content:center;gap:var(--agm-sp-2);width:100%;min-height:var(--agm-tap);margin-top:var(--agm-sp-2);padding:10px 0;border:0;background:transparent;color:var(--agm-muted);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);cursor:pointer}
html[data-ui="montagne"] .agm-profil-foot{margin:var(--agm-sp-6) 0 var(--agm-sp-1);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:center;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-profil-empty-text{margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-profil-form{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-field{display:block;margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-field-label{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-field-input{display:block;box-sizing:border-box;width:100%;min-height:var(--agm-tap);margin-top:7px;padding:10px 12px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:1.4}
html[data-ui="montagne"] .agm-field-input::placeholder{color:var(--agm-muted)}
html[data-ui="montagne"] .agm-field-help{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-profil-paper{margin-top:var(--agm-sp-4);padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-profil-mail-addr{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-profil-note{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-profil-mail-write{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-profil-save{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-profil-msg{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-profil-accomp{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-profil-accomp>.agm-btn{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-profil-apart{margin-top:var(--agm-sp-6);padding-top:var(--agm-sp-4);border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-profil-quit{display:block;width:100%;min-height:var(--agm-tap);padding:10px 0;border:0;background:transparent;color:var(--agm-muted);font-size:var(--agm-fs-body);text-align:center;cursor:pointer}
html[data-ui="montagne"] #modal-support.cm-overlay,html[data-ui="montagne"] #modal-support .cm-sheet,html[data-ui="montagne"] #modal-delete.cm-overlay,html[data-ui="montagne"] #modal-delete .cm-sheet{animation:none}
html[data-ui="montagne"] #modal-support .cm-sheet,html[data-ui="montagne"] #modal-delete .cm-sheet{--blue:var(--agm-navy);--blue-rgb:var(--agm-navy-rgb);--ov2:var(--agm-paper);--card-border:var(--agm-line-strong);--rose:var(--agm-danger)}
html[data-ui="montagne"] #modal-support .st-cat{display:inline-flex;align-items:center;min-height:var(--agm-tap);font-size:var(--agm-fs-body)!important}
html[data-ui="montagne"] #modal-support #st-message{min-height:110px;border-color:var(--agm-line-strong)!important}
@media (min-width:769px){html[data-ui="montagne"] #modal-support #st-message{font-size:var(--agm-fs-body)!important}}
html[data-ui="montagne"] #modal-support #modal-support-body button{min-height:var(--agm-tap);font-size:var(--agm-fs-body)!important}
html[data-ui="montagne"] #modal-support #st-submit{background:var(--agm-navy)!important;color:var(--agm-on-navy)!important}
html[data-ui="montagne"] #modal-delete .cm-sheet{--orange:var(--agm-danger)}
html[data-ui="montagne"] #modal-delete-body>div>div{font-size:var(--agm-fs-body)!important}
html[data-ui="montagne"] #modal-delete-body>div>div:first-of-type{font-size:var(--agm-fs-section)!important}
html[data-ui="montagne"] #modal-delete .btn-cta{min-height:var(--agm-tap);font-size:var(--agm-fs-body);box-shadow:none;transition:none}
html[data-ui="montagne"] #modal-delete .btn-cta:hover{filter:none;transform:none;box-shadow:none}
html[data-ui="montagne"] #modal-delete .agm-delete-cancel{margin-top:var(--agm-sp-2)}   /* R6b-L6-J9 — DT-265 : « Annuler » sous la dernière confirmation */
/* Profil sportif (R6b-L5-J4) — sous-pages profil-sportif, profil-sports, profil-physique, profil-rythme, profil-velos, profil-zones (index R6b-L5, décisions post-J1 n° 1, 5, 6, 7 et post-J3 « Pour J4 »), classes agm-pf* posées par athlete-profil.js (bloc PROFIL SPORTIF). Maquette AGOGE-profil-mobile.html (sport() : .summary-grid, .summary-cell, .status-box.muted, .inline-link ; sportsPage : .sport-chips [aria-pressed] ; physioPage : .sub-section, .form-grid, .unit-note ; rhythmPage : .days [aria-pressed] ; bikesPage : .bike-card, .delete-bike, .toggle-row + .switch ; zonesPage : .zone-kind, .zone-list, .zone-row, .zone-id, .section-caption, .empty ; .save-strip, .hint, .warning). Tailles aux planchers (maquette 9-13 px → eyebrow 11, méta 12, corps 15 ; contrôles au corps), cibles ≥ 44 px (jours : zone tactile étendue de 3 px de part et d'autre par ::before, comme le jour du fil de l'Accueil). Puces de sport pressées en vert « prêt » de la maquette (--agm-ready-*, pas de citron), jours pressés en bleu nuit ; l'état ne repose jamais sur la seule couleur (plus / validation, position du curseur). Parties du formulaire hors page masquées par classe (agm-pf-off). Avertissements de savePhysio (#physio-warnings, styles en ligne à --amber, --amber-rgb, --muted, relus ici sous .agm-profil-page) : surface papier, filet et lignes --agm-danger, tailles aux planchers (!important contre ces styles en ligne, seuls !important du bloc). Placeholders en secondaire (4,5:1 ; --agm-faint ne tient que 3:1). <select> de type de vélo natif (data-ag-sel-enhanced : agoge-select.js ne l'habille pas, DT-258), flèche native rendue par appearance:auto (la règle select d'agoge-athlete.css pose appearance:none et une flèche en image de fond, que le fond papier du champ efface). Aucun citron, aucune lueur, aucun dégradé, aucune animation, aucune barre. */
html[data-ui="montagne"] .agm-profil-page{--amber:var(--agm-danger);--amber-rgb:var(--agm-navy-rgb);--muted:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-off{display:none}
html[data-ui="montagne"] .agm-pf-hint{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:18px 0}
html[data-ui="montagne"] .agm-pf-sum{min-width:0;padding:14px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-pf-sum-v{margin:6px 0 0;font-size:var(--agm-fs-stat);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-pf-sum-u{margin-left:4px;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-regular);letter-spacing:0;color:var(--agm-muted)}
/* R6b-L6-J9 — états vides du Profil dans la forme agm-empty (bloc F) : profil sportif incomplet (.agm-pf-status : encadré pointillé centré,
   picto 36 px par .agm-empty>.agm-ic, au lieu de la carte à filet et du picto de 21 px) et zones sans repère (.agm-pf-zempty) : titre 19 px. */
html[data-ui="montagne"] .agm-pf-status{margin:18px 0}
html[data-ui="montagne"] .agm-pf-status .agm-empty-title,html[data-ui="montagne"] .agm-pf-zempty .agm-empty-title{font-size:var(--agm-fs-heading);line-height:1.3}
html[data-ui="montagne"] .agm-pf-status-text{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-link{display:inline-flex;align-items:center;min-height:var(--agm-tap);margin-top:var(--agm-sp-1);padding:0;border:0;background:transparent;color:var(--agm-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-pf-rows{margin:var(--agm-sp-5) 0 0}
html[data-ui="montagne"] .agm-pf-form{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-pf-sub{margin:23px 0 0}
html[data-ui="montagne"] .agm-pf-sub-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-pf-sub-text{margin:7px 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
html[data-ui="montagne"] .agm-pf-grid>.agm-field{min-width:0}
html[data-ui="montagne"] .agm-pf-unit{margin-left:2px;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-regular);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf .agm-field-input::placeholder{color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-chips{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2);margin:19px 0 0}
html[data-ui="montagne"] .agm-pf-chip{display:inline-flex;align-items:center;gap:7px;min-height:var(--agm-tap);padding:9px 13px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-muted);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-regular);line-height:1.3;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-pf-chip[aria-pressed="true"]{border-color:var(--agm-ready-ink);background:var(--agm-ready-bg);color:var(--agm-ready-ink);font-weight:var(--agm-fw-semibold)}
html[data-ui="montagne"] .agm-pf-chip .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-pf-msg{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-danger)}
html[data-ui="montagne"] .agm-pf-msg:empty{display:none}
html[data-ui="montagne"] .agm-pf-days-label{margin:var(--agm-sp-4) 0 0}
html[data-ui="montagne"] .agm-pf-days{display:flex;gap:6px;margin:13px 0 0}
html[data-ui="montagne"] .agm-pf-day{position:relative;flex:1 1 0;min-width:0;min-height:var(--agm-tap);padding:0;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-muted);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-regular);cursor:pointer}
html[data-ui="montagne"] .agm-pf-day::before{content:"";position:absolute;top:0;right:-3px;bottom:0;left:-3px}
html[data-ui="montagne"] .agm-pf-day[aria-pressed="true"]{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy);font-weight:var(--agm-fw-semibold)}
html[data-ui="montagne"] .agm-pf-bike{margin:14px 0 0;padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-pf-bike:first-child{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-pf-bike-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
html[data-ui="montagne"] .agm-pf-bike-title{flex:1;min-width:0;margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-pf-bike-remove{display:inline-flex;align-items:center;gap:6px;flex:none;min-width:var(--agm-tap);min-height:var(--agm-tap);padding:0 var(--agm-sp-1);border:0;background:transparent;color:var(--agm-danger);font-size:var(--agm-fs-body);cursor:pointer}
html[data-ui="montagne"] .agm-pf-bike-remove .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-pf-bike .agm-field:first-of-type{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-pf-select{-webkit-appearance:menulist;appearance:auto;cursor:pointer}
html[data-ui="montagne"] .agm-pf-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;margin-top:var(--agm-sp-3);border-top:var(--agm-bw) solid var(--agm-line);color:var(--agm-ink);font-size:var(--agm-fs-body);cursor:pointer}
html[data-ui="montagne"] .agm-pf-toggle+.agm-pf-toggle{margin-top:0}
html[data-ui="montagne"] .agm-pf-switch{position:relative;flex:none;width:44px;height:26px;margin:0;border:var(--agm-bw) solid var(--agm-muted);border-radius:var(--agm-r-pill);background:var(--agm-paper);-webkit-appearance:none;appearance:none;cursor:pointer}
html[data-ui="montagne"] .agm-pf-switch::before{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-switch:checked{border-color:var(--agm-navy);background:var(--agm-navy)}
html[data-ui="montagne"] .agm-pf-switch:checked::before{left:21px;background:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-pf-add{margin-top:14px}
html[data-ui="montagne"] .agm-pf-warn{margin:var(--agm-sp-5) 0 0}
html[data-ui="montagne"] .agm-pf-warn>div{padding:var(--agm-sp-3) var(--agm-sp-4)!important;border:var(--agm-bw) solid var(--agm-danger)!important;border-radius:var(--agm-r-lg)!important;background:var(--agm-paper)!important}
html[data-ui="montagne"] .agm-pf-warn>div>div{margin:0 0 var(--agm-sp-1)!important;font-size:var(--agm-fs-body)!important;line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-pf-warn>div>div:last-child{margin:var(--agm-sp-2) 0 0!important;font-size:var(--agm-fs-meta)!important}
html[data-ui="montagne"] .agm-pf-save{display:grid;gap:9px;margin-top:23px;padding-top:17px;border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-pf-save>.agm-profil-save,html[data-ui="montagne"] .agm-pf-save>.agm-pf-hint{margin-top:0}
html[data-ui="montagne"] .agm-pf-zkind{display:flex;box-sizing:border-box;width:100%;margin:20px 0 0}
html[data-ui="montagne"] .agm-pf-zkind>button{flex:1 1 0;min-width:0;padding:7px 6px;line-height:1.25}
html[data-ui="montagne"] .agm-pf-zones{margin:16px 0 0;padding:0 15px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);list-style:none}
html[data-ui="montagne"] .agm-pf-zone{display:flex;align-items:center;gap:10px;min-height:68px;padding:13px 0;border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-pf-zone:last-child{border-bottom:0}
html[data-ui="montagne"] .agm-pf-zone-id{display:grid;place-items:center;flex:none;width:29px;height:31px;border-radius:var(--agm-r-sm);background:var(--agm-bg2);color:var(--agm-ink);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-pf-zone-body{flex:1;min-width:0}
html[data-ui="montagne"] .agm-pf-zone-name{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;overflow-wrap:anywhere;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-pf-zone-kind{display:block;margin-top:3px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-zone-range{flex:none;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-pf-zone-unit{display:block;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-regular);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-caption{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pf-zempty{margin:var(--agm-sp-5) 0 0}
html[data-ui="montagne"] .agm-pf-zempty-text{margin:var(--agm-sp-2) 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-pf-foot{margin-top:var(--agm-sp-5)}
/* Connexions, notifications, invitation (R6b-L5-J5) — sous-pages profil-connexions et profil-notifications (classes agm-pc*, agm-pn* posées par athlete-profil.js, bloc CONNEXIONS, NOTIFICATIONS, NUDGE), interrupteurs des préférences (agm-np*, AgogeNotifPrefs.renderTogglesAgm d'agoge-notif-prefs.js ; curseur = .agm-pf-switch du profil sportif) et sheet d'invitation montagne (agm-inv*, branche montagne d'AgogeInvite.open, athlete-invite.js) (index R6b-L5, décisions post-J1 n° 8 à 11). Maquette AGOGE-profil-mobile.html (connectionsPage : .connection-card, .provider-logo, .conn-state + .dot, .text-button ; notificationsPage : .status-box, .status-box.muted, .inline-link, .notification-cat, .toggle-row + .switch, .hint ; invitePage : title(), .link-box, .foot-actions). Tailles aux planchers (maquette 10-17 px → méta 12, corps 15, section 17 ; titre de la sheet 23), cibles ≥ 44 px (rangées d'interrupteur de 60 px : la case est dans son label). État « activées » sur le vert « prêt » de la maquette (--agm-ready-*, aucun citron), autres états sur papier ; point « Connecté » en --agm-ok. Logos de service : images existantes (/icons/logo-*.svg) dans un cadre papier. Sheet d'invitation sur le fond des sheets, voile --agm-backdrop, sans flou ni animation (le style en ligne et l'animation de la sheet legacy ne sont pas posés par la branche montagne) ; --emerald relu en --agm-ok sous la sheet (retour posé en style par _copyLink). Aucun citron, aucune lueur, aucun dégradé, aucune animation, aucun compteur. */
html[data-ui="montagne"] .agm-pc-card{margin:var(--agm-sp-4) 0 0;padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-profil-head+.agm-pc-card{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-pc-head{display:flex;align-items:center;gap:12px}
html[data-ui="montagne"] .agm-pc-logo{display:grid;place-items:center;flex:none;box-sizing:border-box;width:44px;height:44px;padding:7px;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-pc-logo>img{display:block;width:100%;height:100%;object-fit:contain}
html[data-ui="montagne"] .agm-pc-id{flex:1;min-width:0}
html[data-ui="montagne"] .agm-pc-name{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-pc-state{display:flex;align-items:center;gap:6px;margin:3px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pc-state--on{font-weight:var(--agm-fw-semibold);color:var(--agm-ok)}
html[data-ui="montagne"] .agm-pc-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--agm-ok)}
html[data-ui="montagne"] .agm-pc-text{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pc-on{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-pc-off{display:inline-flex;align-items:center;gap:var(--agm-sp-1);min-height:var(--agm-tap);margin-top:var(--agm-sp-1);padding:0;border:0;background:transparent;color:var(--agm-muted);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);text-align:left;cursor:pointer}
/* SM-J6b — consentement IA (athlete-profil.js, bloc CONNEXIONS) : sheet « Relier {Service} » du socle (case 20 px à accent bleu nuit
   comme la case CGU de la connexion, rappel secondaire, message d'échec à l'encre dans la zone role="status", Continuer / Annuler
   empilés, aucun logo) et carte « Orion et mes activités » en fin de profil-connexions (rangée .agm-np-toggle et curseur .agm-pf-switch
   des notifications dans un .agm-np-card, statut à l'encre sous la carte). */
html[data-ui="montagne"] .agm-consent-check{display:flex;align-items:flex-start;gap:12px;min-height:var(--agm-tap);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-consent-check>input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--agm-navy);cursor:pointer}
html[data-ui="montagne"] .agm-consent-hint{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-consent-msg,html[data-ui="montagne"] .agm-pc-ai-msg{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-consent-msg:empty,html[data-ui="montagne"] .agm-pc-ai-msg:empty{display:none}
html[data-ui="montagne"] .agm-consent-actions{display:flex;flex-direction:column;gap:var(--agm-sp-2);margin-top:var(--agm-sp-4)}
/* Porte ouverte depuis l'étape montre de l'onboarding (.cm-overlay à 9999) : fond de cette sheet au niveau de la sheet, au-dessus de la
   fenêtre, pour qu'un appui hors de la sheet ferme la sheet et non l'onboarding. */
html[data-ui="montagne"] .agm-sheet-backdrop:has(+ .agm-consent-sheet){z-index:var(--agm-z-sheet)}
html[data-ui="montagne"] .agm-pc-ai{margin:var(--agm-sp-5) 0 0}
html[data-ui="montagne"] .agm-pc-ai>.agm-np-card{margin-top:0}
html[data-ui="montagne"] .agm-pn-device{display:flex;align-items:flex-start;gap:11px;margin:18px 0 0;padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-pn-device>.agm-ic{flex:none;width:21px;height:21px;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pn-device-body{flex:1;min-width:0}
html[data-ui="montagne"] .agm-pn-device-body>.agm-pf-link{gap:var(--agm-sp-1)}
html[data-ui="montagne"] .agm-pn-device-title{margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-pn-device-text{margin:5px 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pn-device--on{border-color:var(--agm-ready-bg);background:var(--agm-ready-bg)}
html[data-ui="montagne"] .agm-pn-device--on>.agm-ic,html[data-ui="montagne"] .agm-pn-device--on .agm-pn-device-title,html[data-ui="montagne"] .agm-pn-device--on .agm-pn-device-text{color:var(--agm-ready-ink)}
html[data-ui="montagne"] .agm-pn-prefs{min-height:var(--agm-tap)}
html[data-ui="montagne"] .agm-np-loading{margin:var(--agm-sp-5) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-np-cat{margin:var(--agm-sp-6) 0 0}
html[data-ui="montagne"] .agm-np-cat-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-np-cat-desc{margin:6px 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-np-card{margin:var(--agm-sp-3) 0 0;padding:0 var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-np-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;box-sizing:border-box;min-height:60px;padding:12px 0;border-bottom:var(--agm-bw) solid var(--agm-line);cursor:pointer}
html[data-ui="montagne"] .agm-np-toggle:last-child{border-bottom:0}
html[data-ui="montagne"] .agm-np-toggle-text{flex:1;min-width:0}
html[data-ui="montagne"] .agm-np-toggle-title{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-np-toggle-sub{display:block;margin-top:2px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-pn-hint{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] #invite-sheet-overlay.agm-inv-overlay{position:fixed;inset:0;z-index:var(--agm-z-sheet);display:flex;align-items:flex-end;justify-content:center;background:var(--agm-backdrop)}
html[data-ui="montagne"] .agm-inv{--emerald:var(--agm-ok);box-sizing:border-box;width:100%;max-width:480px;max-height:92vh;overflow-y:auto;padding:var(--agm-sp-3) var(--agm-gutter) calc(var(--agm-sp-6) + var(--agm-safe-bottom));border-radius:var(--agm-r-sheet) var(--agm-r-sheet) 0 0;background:var(--agm-sheet-bg);color:var(--agm-ink);font-family:var(--agm-font)}
html[data-ui="montagne"] .agm-inv-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
html[data-ui="montagne"] .agm-inv-close{display:grid;place-items:center;flex:none;width:var(--agm-tap);height:var(--agm-tap);margin-right:-10px;padding:0;border:0;border-radius:var(--agm-r-pill);background:transparent;color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-inv-title{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-cap);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.2;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-inv-lead{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-inv-link{margin-top:var(--agm-sp-4);font-family:inherit;text-overflow:ellipsis}
html[data-ui="montagne"] .agm-inv-copy{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-inv-sep{margin:var(--agm-sp-5) 0 0}
html[data-ui="montagne"] .agm-inv-channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--agm-sp-2);margin:var(--agm-sp-2) 0 0}
html[data-ui="montagne"] .agm-inv-channel{min-width:0}
/* Guide d'installation iPhone (R5a-J6, athlete-install-guide.js) — sheet montagne (dialog.modal de l'Accueil ; pas numérotés .guide-step
   du Profil). R6b-L6-J3, ex-section 7 (transposition d'agoge-charte.css:56, :77-80, :316-327) : classes agm-guide-* (ex-classes de la
   charte B, DT-276 volet classes ; noms propres au guide, sans hériter des règles génériques .agm-ic / .agm-btn) ; le voile
   .agm-guide-overlay remplace le scope de la charte B, spécificités relatives inchangées (pictos des étapes à 22 px : (0,4,1) sur (0,3,2)),
   seule la règle du voile passe de (0,3,1) à (0,2,1) (aucune autre règle ne vise cet élément). */
html[data-ui="montagne"] .agm-guide-overlay svg.agm-guide-ic{flex:none;width:var(--agm-ic);height:var(--agm-ic);fill:none;stroke:currentColor;stroke-width:var(--agm-ic-stroke);stroke-linecap:round;stroke-linejoin:round}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:11px 18px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-md);background:var(--agm-paper);box-shadow:none;color:var(--agm-ink);font-family:inherit;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);cursor:pointer}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-btn--primary{border-color:var(--agm-navy);background:var(--agm-navy);box-shadow:none;color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-btn--primary:active{border-color:var(--agm-ink);background:var(--agm-ink);box-shadow:none}
html[data-ui="montagne"] .agm-guide-overlay{position:fixed;inset:0;z-index:300;display:flex;align-items:flex-end;justify-content:center;background:var(--agm-backdrop);font-family:var(--agm-font)}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide{width:100%;max-width:520px;max-height:88vh;overflow-y:auto;padding:22px 20px calc(20px + env(safe-area-inset-bottom));border:var(--agm-bw) solid var(--agm-line);border-bottom:0;border-radius:var(--agm-r-sheet) var(--agm-r-sheet) 0 0;background:var(--agm-sheet-bg);box-shadow:var(--agm-sh-sheet);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide h3{margin:0 0 6px;font-size:var(--agm-fs-heading);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-lead{margin:0 0 16px;font-size:var(--agm-fs-body);line-height:1.5;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-steps{display:flex;flex-direction:column;gap:12px;margin:0 0 18px;padding:0;list-style:none}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-steps li{display:flex;align-items:center;gap:12px}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-num{display:flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;border-radius:var(--agm-r-sm);background:var(--agm-ready-bg);color:var(--agm-ready-ink);font-size:13.5px;font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-steps .agm-guide-ic{width:22px;height:22px;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-txt{font-size:var(--agm-fs-body);line-height:1.45}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-actions{display:flex;flex-direction:column;gap:6px}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-actions .agm-guide-btn{width:100%}
html[data-ui="montagne"] .agm-guide-overlay .agm-guide-later{min-height:44px;border:0;background:none;color:var(--agm-muted);font-family:inherit;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);cursor:pointer}
/* Wizard d'onboarding (R6b-L5-J6) — #modal-onboarding (createModal, contenant .cm-* rhabillé en section 6, jetons de .cm-sheet en section 6), étapes 0 à 6 et sous-vue « sans montre » d'athlete-onboarding.js, classes onb-* posées par le module (R6b-L6-J3, DT-287 : feuille injectée _injectOnbCss retirée ; ses déclarations encore vivantes sous montagne — display, flex, cursor, largeur et boîte des champs, dimensions et centrage du cercle de picto, alignements — reportées dans les règles ci-dessous, à valeurs égales ; le reste était battu ici par l'id, (1,2,1) et plus contre (0,1,0) à (0,3,0), ou par la règle d'animation) ; mécanisme et textes intacts (index R6b-L5, décision post-J1 n° 14 ; contenu contraire à la VISION et cartes non focalisables : DT-260, lot 6). Aucune maquette du wizard (maquette Profil, tutorialPage : revu « après les cinq écrans principaux ») : composition sur les composants montagne en place — champs agm-field* (étiquette au corps, champ papier de 44 px, aide en méta), puces pressées agm-pf-chip (vert « prêt », point devant le libellé), avertissement agm-pf-warn (papier, filet brique), lien agm-pf-link (bleu nuit, 44 px), cadre de logo agm-pc-logo (papier, filet), tuile de picto agm-row-ic (bg2, bleu nuit), bouton principal en bleu nuit comme les autres .btn-cta rhabillés (#modal-add-obj, #solo-form, #modal-plan-detail : aucun citron), secondaire papier à filet. Tailles aux planchers (titre d'étape 19, corps 15, méta 12 ; contrôles au corps), cibles ≥ 44 px (pied d'actions, liens, cartes, puces, boutons de connexion). Cartes d'option en cartes papier à filet ; choisie = filet bleu nuit doublé et repère rond plein (état lisible sans la seule couleur) ; actions de la sous-vue « sans montre » = chevron, pas de repère. Progression = sept repères sans dégradé : faits et courant en bleu nuit épais (4 px), à venir en trait fin secondaire (2 px). Bandeaux d'erreur et d'avertissement sur papier à filet brique (le #fda4af et le #fbbf24 de la feuille injectée ne tenaient ni 4,5:1 ni 3:1 sur le papier). Boutons de connexion : couleurs de marque posées en style par _connBtn neutralisées (rangée papier à filet, logo d'origine dans un cadre papier ; !important : filet, fond, taille et transition du bouton, fond du cadre) ; deux tailles en style sous plancher (« 3 questions… » de l'étape 0, « facultatif » de l'étape 3) relevées au plancher méta (!important). Aucune animation ni transition (y compris l'entrée d'étape et l'ouverture de la feuille), aucune lueur, aucun dégradé, aucun citron. */
html[data-ui="montagne"] #modal-onboarding,html[data-ui="montagne"] #modal-onboarding *:where(:not(.agoge-spinner__trace)),html[data-ui="montagne"] #modal-onboarding *::before,html[data-ui="montagne"] #modal-onboarding *::after{animation:none;transition:none} /* R6b-L6-J6 — sauf le tracé du spinner montagne (bouton « Suivant » en attente) ; :where : spécificité inchangée */
html[data-ui="montagne"] #modal-onboarding #onb-content{font-size:var(--agm-fs-body);color:var(--agm-ink)}
html[data-ui="montagne"] #modal-onboarding .onb-progress{display:flex;align-items:center;gap:var(--agm-sp-1);min-height:4px;margin-bottom:var(--agm-sp-5)}
html[data-ui="montagne"] #modal-onboarding .onb-progress-step{flex:1;height:2px;border-radius:var(--agm-r-pill);background:var(--agm-muted)}
html[data-ui="montagne"] #modal-onboarding .onb-progress-step.done,html[data-ui="montagne"] #modal-onboarding .onb-progress-step.active{height:4px;background:var(--agm-navy)}
html[data-ui="montagne"] #modal-onboarding .onb-icon-circle{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0 auto var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] #modal-onboarding .onb-step-title{margin-bottom:var(--agm-sp-1);text-align:center;font-size:var(--agm-fs-heading);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] #modal-onboarding .onb-step-sub{margin-top:var(--agm-sp-1);text-align:center;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-muted)}
html[data-ui="montagne"] #modal-onboarding .onb-pitch-li{display:flex;align-items:flex-start;gap:var(--agm-sp-3);padding:var(--agm-sp-2) 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] #modal-onboarding .onb-pitch-bullet{flex-shrink:0;width:6px;height:6px;border-radius:50%;margin-top:9px;background:var(--agm-navy)}
html[data-ui="montagne"] #modal-onboarding #onb-content>div[style*="font-size"]{font-size:var(--agm-fs-meta)!important;line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] #modal-onboarding .onb-card{position:relative;cursor:pointer;box-sizing:border-box;min-height:var(--agm-tap);padding:14px 52px 14px var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper);color:var(--agm-ink);transform:none}
html[data-ui="montagne"] #modal-onboarding .onb-card::after{content:"";position:absolute;top:50%;right:var(--agm-sp-4);box-sizing:border-box;width:20px;height:20px;margin-top:-10px;border:2px solid var(--agm-muted);border-radius:50%;background:var(--agm-paper)}
html[data-ui="montagne"] #modal-onboarding .onb-card.on{border-color:var(--agm-navy);box-shadow:inset 0 0 0 1px var(--agm-navy)}
html[data-ui="montagne"] #modal-onboarding .onb-card.on::after{border-color:var(--agm-navy);background:var(--agm-navy);box-shadow:inset 0 0 0 4px var(--agm-paper)}
html[data-ui="montagne"] #modal-onboarding #onb-connect-nowatch .onb-card::after{width:9px;height:9px;margin-top:-5px;border-width:0 2px 2px 0;border-radius:0;background:none;transform:rotate(-45deg)}
html[data-ui="montagne"] #modal-onboarding .onb-card-title{font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] #modal-onboarding .onb-card-desc{margin-top:3px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] #modal-onboarding .onb-chip{display:inline-flex;cursor:pointer;align-items:center;gap:7px;box-sizing:border-box;min-height:var(--agm-tap);padding:9px 13px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-muted);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-regular);line-height:1.3;transform:none}
html[data-ui="montagne"] #modal-onboarding .onb-chip.on{border-color:var(--agm-ready-ink);background:var(--agm-ready-bg);color:var(--agm-ready-ink);font-weight:var(--agm-fw-semibold)}
html[data-ui="montagne"] #modal-onboarding .onb-chip.on::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:currentColor}
html[data-ui="montagne"] #modal-onboarding .onb-label{display:block;margin-bottom:7px;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);letter-spacing:0;line-height:var(--agm-lh-meta);text-transform:none;color:var(--agm-ink)}
html[data-ui="montagne"] #modal-onboarding .onb-label>span[style*="font-size"]{font-size:var(--agm-fs-meta)!important}
html[data-ui="montagne"] #modal-onboarding .onb-input{box-sizing:border-box;width:100%;min-height:var(--agm-tap);padding:10px 12px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:1.4}
html[data-ui="montagne"] #modal-onboarding .onb-input::placeholder{color:var(--agm-muted)}
html[data-ui="montagne"] #modal-onboarding .onb-input:focus{border-color:var(--agm-navy);background:var(--agm-paper)}
html[data-ui="montagne"] #modal-onboarding .onb-hint{margin-top:var(--agm-sp-2);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] #modal-onboarding .onb-toggle-link{display:inline-block;cursor:pointer;box-sizing:border-box;min-height:var(--agm-tap);margin-top:var(--agm-sp-1);padding:12px 0;border-bottom:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:20px;color:var(--agm-navy)}
html[data-ui="montagne"] #modal-onboarding .onb-err{margin-bottom:var(--agm-sp-4);padding:var(--agm-sp-3) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-danger);border-radius:var(--agm-r-lg);background:var(--agm-paper);color:var(--agm-danger);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] #modal-onboarding .onb-warn-strip{display:flex;align-items:flex-start;gap:var(--agm-sp-3);margin-bottom:var(--agm-sp-4);padding:var(--agm-sp-3) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-danger);border-radius:var(--agm-r-lg);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] #modal-onboarding .onb-warn-strip svg{flex-shrink:0;margin-top:2px;color:var(--agm-danger)}
html[data-ui="montagne"] #modal-onboarding .onb-actions{display:flex;gap:var(--agm-sp-3);margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] #modal-onboarding .btn-cta{min-height:var(--agm-tap);border-radius:var(--agm-r-md);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);box-shadow:none;filter:none;transform:none}
html[data-ui="montagne"] #modal-onboarding .btn-outline{min-height:var(--agm-tap);border-color:var(--agm-line-strong);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);backdrop-filter:none;-webkit-backdrop-filter:none;transform:none}
html[data-ui="montagne"] #modal-onboarding #onb-connect-main button{min-height:var(--agm-tap);border-color:var(--agm-line-strong)!important;background:var(--agm-paper)!important;color:var(--agm-ink);font-size:var(--agm-fs-body)!important;transition:none!important}
html[data-ui="montagne"] #modal-onboarding #onb-connect-main button>span{box-sizing:border-box;border:var(--agm-bw) solid var(--agm-line);background:var(--agm-paper)!important}
/* agm-ic — pictos du sprite J3 (viewBox 24, currentColor ; même gabarit que l'ancien picto de la charte B). Le trait 1,8 des 37 pictos est porté par chaque <symbol> (attribut, R6b-L1-J3) : stroke-width ci-dessous ne le pilote pas, l'attribut du symbole l'emporte sur l'héritage ; --agm-ic-stroke ne vaut que pour un SVG dessiné en ligne, sans attribut de trait (pictos du guide iPhone, agm-guide-ic, section 5 depuis R6b-L6-J3). R6b-L1-J6. */
html[data-ui="montagne"] .agm-ic{display:inline-block;flex:none;width:var(--agm-ic);height:var(--agm-ic);vertical-align:middle;fill:none;stroke:currentColor;stroke-width:var(--agm-ic-stroke);stroke-linecap:round;stroke-linejoin:round}
/* agm-ic--md / agm-ic--sm — tailles 18 et 14 demandées par agIcon (opts.size, R6b-L1-J3) ; après les tailles contextuelles des composants : une taille explicite l'emporte. */
html[data-ui="montagne"] .agm-ic.agm-ic--md{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-ic.agm-ic--sm{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}

/* ===== R6-J2 coaching découverte (2026-10-29) — agoge-coaching.js : entrées (lien discret, rangée A01), écran
   coaching-decouverte (présentation, réservation Calendly). Classes agcd-* seulement ; couleurs de la charte par jetons
   (#F5F7F9 --agm-bg, #FFFFFF --agm-paper, #142438 --agm-ink, #172C45 --agm-navy, #D5F365 --agm-lime, #5F7085 --agm-muted,
   #DFE6ED --agm-line) ; focus : :focus-visible de la section 3 ; cibles ≥ 44 px ; aucune animation. ===== */
html[data-ui="montagne"] .agcd-entry{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agcd-lead{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-link{display:inline-flex;align-items:center;min-height:var(--agm-tap);padding:0;border:0;background:none;color:var(--agm-navy);font:inherit;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.3;text-align:left;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;cursor:pointer}
html[data-ui="montagne"] .agcd-entry--on-navy .agcd-lead{color:var(--agm-on-navy)}
html[data-ui="montagne"] .agcd-entry--on-navy .agcd-link{color:var(--agm-on-navy)}
html[data-ui="montagne"] .agcd-entry--on-navy .agcd-link:focus-visible{outline-color:var(--agm-lime)}
html[data-ui="montagne"] .agcd-entry--on-navy{max-width:calc(100% - 36px);margin-top:var(--agm-sp-1)} /* R6-J3 — A04 dans la carte Cap : largeur bornée comme .agm-cap-index (la flèche reste libre), rythme serré de la carte */
html[data-ui="montagne"] .agm-seances-rail>.agcd-entry{margin-top:0} /* R6-J3 — A05 : l'écart du rail (gap) suffit */
html[data-ui="montagne"] .agm-seances-carnet>.agcd-entry{margin:0 0 var(--agm-sp-5)} /* R6-J3 — A06 : entre l'en-tête de cumuls et la liste, au rythme du carnet */
html[data-ui="montagne"] .agcd-row{display:flex;align-items:center;gap:var(--agm-sp-3);box-sizing:border-box;width:100%;min-height:68px;margin:0;padding:var(--agm-sp-3) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);color:var(--agm-ink);font:inherit;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agcd-row-photo{flex:none;width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--agm-bg)}
html[data-ui="montagne"] .agcd-row-body{flex:1;min-width:0}
html[data-ui="montagne"] .agcd-row-title{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-row-sub{display:block;margin-top:2px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-row-chev{flex:none;display:grid;place-items:center;width:var(--agm-ic-sm);height:var(--agm-ic-sm);color:var(--agm-muted);font-size:20px;line-height:1}
html[data-ui="montagne"] .agcd-row-chev .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agcd{padding:var(--agm-sp-5) 0 var(--agm-sp-6);color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-na{margin:var(--agm-sp-6) 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-eyebrow{margin:0 0 6px;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-title{margin:0 0 var(--agm-sp-5);font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:var(--agm-lh-tight);color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-coach{display:flex;align-items:center;gap:var(--agm-sp-4);margin:0 0 var(--agm-sp-5)}
html[data-ui="montagne"] .agcd-photo{flex:none;width:76px;height:76px;border-radius:50%;object-fit:cover;background:var(--agm-paper)}
html[data-ui="montagne"] .agcd-coach-id{min-width:0}
html[data-ui="montagne"] .agcd-coach-name{display:block;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-coach-meta{display:block;margin-top:2px;font-size:14px;line-height:1.4;color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-p{margin:0 0 var(--agm-sp-3);font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-topic{margin:var(--agm-sp-5) 0;padding:var(--agm-sp-3) var(--agm-sp-4) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-left:4px solid var(--agm-lime);border-radius:var(--agm-r-sm);background:var(--agm-paper)}
html[data-ui="montagne"] .agcd-topic-label{display:block;margin:0 0 var(--agm-sp-2);font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-textarea{display:block;box-sizing:border-box;width:100%;min-height:88px;margin:0;padding:10px var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-sm);background:var(--agm-paper);color:var(--agm-ink);font:inherit;font-size:16px;line-height:1.5;resize:vertical}
html[data-ui="montagne"] .agcd-cta{min-height:48px;margin-top:var(--agm-sp-1)}
html[data-ui="montagne"] .agcd-modalites{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:center;color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-modalites+.agcd-modalites{margin-top:2px}
html[data-ui="montagne"] .agcd-res-head{margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agcd-res-name{margin:0;font-size:var(--agm-fs-heading);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.25;color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-res-name:focus{outline:none}
html[data-ui="montagne"] .agcd-res-meta{margin:2px 0 0;font-size:14px;line-height:1.4;color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-res-event{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-res-mod{margin:2px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-status:empty{display:none}
html[data-ui="montagne"] .agcd-confirm,html[data-ui="montagne"] .agcd-unavail{margin:0 0 var(--agm-sp-4);padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-left:4px solid var(--agm-lime);border-radius:var(--agm-r-sm);background:var(--agm-paper)}
html[data-ui="montagne"] .agcd-h2{margin:0 0 var(--agm-sp-1);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-h2:focus{outline:none}
html[data-ui="montagne"] .agcd-confirm-with{margin:0 0 var(--agm-sp-2);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agcd-note{margin:0 0 var(--agm-sp-3);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-unavail .agcd-fallback{margin:0 0 var(--agm-sp-3);text-align:left}
html[data-ui="montagne"] .agcd-cal-wait{display:flex;justify-content:center;padding:var(--agm-sp-4) 0}
html[data-ui="montagne"] .agcd-cal-wait-txt{margin:0;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agcd-cal-host{box-sizing:border-box;height:700px;overflow:hidden;border-radius:var(--agm-r-sm);background:var(--agm-paper)}
html[data-ui="montagne"] .agcd-cal-host iframe{display:block;width:100%;height:100%;border:0}
html[data-ui="montagne"] .agcd-fallback{margin:var(--agm-sp-3) 0 0;text-align:center}
@media (max-width:359.98px){html[data-ui="montagne"] .agcd-cal-host{margin-left:calc(-1 * var(--agm-sp-4));margin-right:calc(-1 * var(--agm-sp-4));border-radius:0}}
/* ===== NUT-J2 (2026-11-03) — Préparer › Nutrition (athlete-nutrition.js, athlete-preparer.js) : carte Nutrition active de Préparer
   (agm-preparer-card--on, bouton agm-preparer-open dont la zone couvre la carte) ; écran « nutrition » (en-tête et illustration,
   carte séance et durée, repère, encadré santé, sac à steppers 44 px, « Autres produits », récapitulatif bleu nuit, « prêt »,
   Comprendre, coup de main), première visite, Mes produits (liste, formulaire, eau, aide « Lire mon étiquette », confirmation
   d'archivage), Mon alimentation en roulant. Classes agm-nut-* ; jetons existants seulement (aucun hex), aucune animation, aucun
   dégradé ; masquage par classe (is-open). Mobile : gouttière d'agm-screen-body ; ≥ 768 px : colonne centrée de 680 px (lecteur
   d'article). Textes sur papier ou fond de page en encre / secondaire (≥ 4,5:1) ; sur bleu nuit : on-navy / on-navy-muted. ===== */
html[data-ui="montagne"] .agm-preparer-card--on{position:relative;border-color:var(--agm-line-strong);background:var(--agm-paper);box-shadow:var(--agm-sh-card);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-preparer-card--on .agm-preparer-name,html[data-ui="montagne"] .agm-preparer-card--on .agm-preparer-line{color:var(--agm-ink)}
html[data-ui="montagne"] .agm-preparer-open{margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-preparer-open::after{content:"";position:absolute;inset:0;border-radius:var(--agm-r-lg)}
html[data-ui="montagne"] .agm-preparer-open:focus-visible{outline:none}
html[data-ui="montagne"] .agm-preparer-open:focus-visible::after{outline:3px solid var(--agm-focus);outline-offset:3px}
/* SIMP-J6 (2026-11-05) — S12 : carte active de Préparer au relief des cartes (filet fort + ombre, patron agm-card ; règle --on ci-dessus) ; pied de carte : puce d'état (agm-chip--ready, « Prêt » / « En cours ») à gauche, chevron action-suivant à droite, sous la zone du bouton. Cartes d'articles au même relief et crédit photo du lecteur à 12 px (bloc ART, en place). S19 : avatar de l'app-bar actionnable (Profil), curseur. Jetons existants seulement, aucune couleur nouvelle. */
html[data-ui="montagne"] .agm-preparer-foot{display:flex;align-items:center;gap:var(--agm-sp-2);min-height:24px;margin-top:auto}
html[data-ui="montagne"] .agm-preparer-foot>.agm-ic{flex:none;width:var(--agm-ic-sm);height:var(--agm-ic-sm);margin-left:auto;color:var(--agm-muted)}
html[data-ui="montagne"] #athlete-name.agm-avatar[role="button"]{cursor:pointer}
html[data-ui="montagne"] .agm-nut{padding:var(--agm-sp-2) 0 var(--agm-sp-6)}
@media (min-width:768px){html[data-ui="montagne"] .agm-nut{max-width:680px;margin-left:auto;margin-right:auto}}
html[data-ui="montagne"] .agm-nut-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--agm-sp-3);margin:0 0 var(--agm-sp-5)}
html[data-ui="montagne"] .agm-nut-head-text{min-width:0}
html[data-ui="montagne"] .agm-nut-title{margin:7px 0 0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.2;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-title:focus{outline:none}
html[data-ui="montagne"] .agm-nut-lede{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-art{flex:none}
html[data-ui="montagne"] .agm-nut-art>.agm-illu{display:block;width:86px;height:59px}
html[data-ui="montagne"] .agm-nut-wait{margin:0;padding:var(--agm-sp-6) 0;font-size:var(--agm-fs-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-seance-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-seance-date{margin:2px 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-duree{display:flex;flex-wrap:wrap;align-items:center;gap:var(--agm-sp-2) var(--agm-sp-3);margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-nut-duree-lbl{margin-right:auto;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-duree-f{display:inline-flex;align-items:center;gap:6px;font-size:var(--agm-fs-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-duree-in{display:inline-block;width:58px;margin-top:0;text-align:center;font-variant-numeric:tabular-nums}
html[data-ui="montagne"] .agm-nut-repere{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-nut-repere-main{margin:0;font-size:var(--agm-fs-section);line-height:1.45;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-repere-main strong{font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-nut-repere-sub{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-repere-hint{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-sante{padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-sante p{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body)}
html[data-ui="montagne"] .agm-nut-sac{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-items{margin:0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-nut-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--agm-sp-2) var(--agm-sp-3);align-items:center;margin:0;padding:var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-nut-item+.agm-nut-item{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-item-ic{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:var(--agm-r-sm);background:var(--agm-bg2);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-nut-item-ic .agm-ic{width:22px;height:22px}
html[data-ui="montagne"] .agm-nut-item-body{display:block;min-width:0}
html[data-ui="montagne"] .agm-nut-item-name{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;color:var(--agm-ink);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-nut-item-meta{display:block;margin-top:2px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-item-g{font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-item-qty{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-3);padding-top:var(--agm-sp-2);border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-nut-item-lbl{font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-step{display:inline-flex;align-items:center;gap:var(--agm-sp-1)}
html[data-ui="montagne"] .agm-nut-step-btn{display:grid;place-items:center;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-navy);font-size:var(--agm-fs-section);cursor:pointer}
html[data-ui="montagne"] .agm-nut-step-btn:disabled{opacity:.4;cursor:default}
html[data-ui="montagne"] .agm-nut-step-n{min-width:2.2ch;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);text-align:center;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-more{display:flex;align-items:center;gap:6px;width:100%;min-height:var(--agm-tap);margin-top:var(--agm-sp-2);padding:var(--agm-sp-2) var(--agm-sp-3);border:var(--agm-bw) dashed var(--agm-line-strong);border-radius:var(--agm-r-md);background:transparent;color:var(--agm-navy);font:inherit;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-nut-autres{display:none;margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-autres.is-open{display:block}
html[data-ui="montagne"] .agm-nut-recap{margin-top:var(--agm-sp-5);padding:var(--agm-sp-4) var(--agm-sp-5);border-radius:var(--agm-r-lg);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-nut-recap-eyebrow{margin:0;font-size:var(--agm-fs-eyebrow);font-weight:var(--agm-fw-semibold);letter-spacing:var(--agm-ls-eyebrow);line-height:var(--agm-lh-meta);text-transform:uppercase;color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-nut-recap-total{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:1.3;color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-nut-recap-total strong{font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);font-variant-numeric:tabular-nums}
html[data-ui="montagne"] .agm-nut-recap-resume{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-nut-recap-sep{height:1px;margin:var(--agm-sp-3) 0;border:0;background:var(--agm-on-navy-ghost)}
html[data-ui="montagne"] .agm-nut-recap-ecart{margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-nut-pret{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-nut-pret-btn{min-height:52px}
html[data-ui="montagne"] .agm-nut-pret-ok{display:flex;align-items:center;justify-content:center;gap:var(--agm-sp-2);min-height:52px;margin:0;padding:10px var(--agm-sp-4);border-radius:var(--agm-r-md);background:var(--agm-ready-bg);color:var(--agm-ready-ink);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-nut-pret-ok:focus{outline:none}
html[data-ui="montagne"] .agm-nut-pret-note{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:center;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-comp{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-nut-comp-sub{margin:-4px 0 var(--agm-sp-3);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-avenir{cursor:default}
html[data-ui="montagne"] .agm-nut-avenir-tag{flex:none;font-size:var(--agm-fs-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-help{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-nut-q{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-nut-q-title{margin:0 0 var(--agm-sp-3);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-yn{display:flex;gap:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-yn-btn{justify-content:center;min-width:88px}
html[data-ui="montagne"] .agm-nut-check{display:flex;align-items:flex-start;gap:var(--agm-sp-3);margin-top:var(--agm-sp-5);padding:var(--agm-sp-3) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-nut-check input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:var(--agm-navy)}
html[data-ui="montagne"] .agm-nut-check-help{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-go{margin-top:var(--agm-sp-5);min-height:52px}
html[data-ui="montagne"] .agm-nut-plist{padding:0 14px;list-style:none}
html[data-ui="montagne"] .agm-nut-pitem{display:flex;align-items:center;gap:var(--agm-sp-3);min-height:64px;margin:0;padding:var(--agm-sp-2) 0;border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-nut-pitem:last-child{border-bottom:0}
html[data-ui="montagne"] .agm-nut-pitem>.agm-nut-item-body{flex:1}
html[data-ui="montagne"] .agm-nut-plist-empty{margin:0;font-size:var(--agm-fs-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-add{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-nut-eau{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-nut-aide{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-nut-etiq{display:none;margin-top:var(--agm-sp-2);padding:var(--agm-sp-3) var(--agm-sp-4);border-radius:var(--agm-r-lg);background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-nut-etiq.is-open{display:block}
html[data-ui="montagne"] .agm-nut-etiq p{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-etiq p+p{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-form .agm-section-title{margin:0}
html[data-ui="montagne"] .agm-nut-seg{flex-wrap:wrap}
html[data-ui="montagne"] .agm-nut-sugg{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2);margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-g-in{max-width:120px}
html[data-ui="montagne"] .agm-nut-opt{font-weight:var(--agm-fw-regular);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-ferr{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-danger)}
html[data-ui="montagne"] .agm-nut-factions{display:flex;gap:var(--agm-sp-2);margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-nut-factions>.agm-btn{flex:1}
html[data-ui="montagne"] .agm-nut-archive{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-nut-confirm{margin-top:var(--agm-sp-4);padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-danger-bg)}
html[data-ui="montagne"] .agm-nut-confirm p{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-confirm .agm-nut-factions{margin-top:var(--agm-sp-3)}

/* ===== NUT-J3 (2026-11-03) — « Ton ravito » dans la séance (athlete-nutrition.js, ravito : sheet prescrite, modale d'une planifiée) et
   « Pour demain » de l'Accueil (athlete-accueil.js). Conteneur .agm-nut-ravito masqué tant qu'il est vide (is-open au remplissage) ;
   carte papier, repère, sac en une ligne (bouton plein largeur ≥ 44 px), frise (heure à gauche, filet vertical et puces, la première
   citron cerclée de bleu nuit), forme groupée et détail dépliable, note, repli « Si mon ventre ne suit pas » (agm-nut-more du J2).
   Jetons existants seulement, aucune animation, aucun dégradé ; textes en encre / secondaire sur papier ou fond secondaire (≥ 4,5:1). ===== */
html[data-ui="montagne"] .agm-nut-ravito{display:none}
html[data-ui="montagne"] .agm-nut-ravito.is-open{display:block;margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-nut-rv{padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);color:var(--agm-ink);text-align:left}
html[data-ui="montagne"] .agm-nut-rv-head{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-nut-rv-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-rv-art{flex:none}
html[data-ui="montagne"] .agm-nut-rv-art>.agm-illu{display:block;width:48px;height:33px}
html[data-ui="montagne"] .agm-nut-rv-repere{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-rv-repere strong{font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-nut-rv-sac{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-3);width:100%;min-height:var(--agm-tap);margin-top:var(--agm-sp-3);padding:10px var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-md);background:var(--agm-bg2);color:var(--agm-ink);font:inherit;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-nut-rv-sac>.agm-ic{flex:none;width:var(--agm-ic-sm);height:var(--agm-ic-sm);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-nut-frise{margin:var(--agm-sp-4) 0 0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-nut-frise-p{position:relative;display:grid;grid-template-columns:3em 12px minmax(0,1fr);column-gap:var(--agm-sp-2);margin:0;padding:0 0 var(--agm-sp-3);font-size:var(--agm-fs-body);line-height:1.35}
html[data-ui="montagne"] .agm-nut-frise-p:last-child{padding-bottom:0}
html[data-ui="montagne"] .agm-nut-frise-p::before{content:"";position:absolute;top:.3em;left:calc(3em + var(--agm-sp-2) + 1px);box-sizing:border-box;width:10px;height:10px;border:2px solid var(--agm-navy);border-radius:var(--agm-r-pill);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-nut-frise-p:first-child::before{background:var(--agm-lime)}
html[data-ui="montagne"] .agm-nut-frise-p::after{content:"";position:absolute;top:calc(.3em + 10px);bottom:-.3em;left:calc(3em + var(--agm-sp-2) + 5px);width:2px;background:var(--agm-line-strong)}
html[data-ui="montagne"] .agm-nut-frise-p:last-child::after{display:none}
html[data-ui="montagne"] .agm-nut-frise-h{grid-column:1;font-weight:var(--agm-fw-semibold);font-variant-numeric:tabular-nums;text-align:right;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-frise-b{grid-column:3;min-width:0}
html[data-ui="montagne"] .agm-nut-frise-l{display:block;font-size:var(--agm-fs-body);line-height:1.35;color:var(--agm-ink);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-nut-frise-s{display:block;margin-top:2px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-nut-groupes{margin:var(--agm-sp-4) 0 0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-nut-groupe{margin:0;padding:var(--agm-sp-2) 0;border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-nut-groupe:first-child{padding-top:0;border-top:0}
html[data-ui="montagne"] .agm-nut-rv-tog{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-nut-rv-panel,html[data-ui="montagne"] .agm-nut-rv-ventre{display:none}
html[data-ui="montagne"] .agm-nut-rv-panel.is-open{display:block}
html[data-ui="montagne"] .agm-nut-rv-note{margin:var(--agm-sp-4) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-rv-ventre.is-open{display:block;margin-top:var(--agm-sp-2);padding:var(--agm-sp-3) var(--agm-sp-4);border-radius:var(--agm-r-lg);background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-nut-rv-ventre p{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-rv-ventre p+p{margin-top:var(--agm-sp-2)}

/* ===== NUT-J4 (2026-11-03) — coaché (athlete-nutrition.js, athlete-ritual.js) : carte « S'entraîner à manger en roulant » de l'écran
   nutrition (région agm-nut-prog : grisée par agm-locked existant, textes en --agm-locked-ink ; carte papier agm-card ; point de départ
   au stepper du J2, plan en une ligne, « Commencer mon plan » citron ; « Voir mon plan » en rangée), écran « nutrition-plan » (palier du
   moment, étapes en liste, étape courante en bleu nuit, note, bouton citron, repli « Sur quoi repose ce plan ? » au patron agm-nut-more),
   question post-séance « Qu'as-tu consommé, environ ? » de la sheet du rituel (libellé, aide, compteur près de la limite, « Reprendre
   ce que j'avais prévu »). Jetons existants seulement, aucune animation, aucun dégradé ; masquage par classe (is-open, :empty). ===== */
html[data-ui="montagne"] .agm-nut-prog{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-nut-prog-card .agm-eyebrow{margin:0 0 var(--agm-sp-1)}
html[data-ui="montagne"] .agm-nut-prog-card.agm-locked .agm-eyebrow{color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-nut-prog-title{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-prog-card.agm-locked .agm-nut-prog-title{color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-nut-prog-foot{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-meta);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-locked-ink)}
html[data-ui="montagne"] .agm-nut-prog-text{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-prog-text strong{font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-nut-prog-sub{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-prog-link{margin-top:var(--agm-sp-3);padding-bottom:0;border-top:var(--agm-bw) solid var(--agm-line);border-bottom:0;font:inherit;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-nut-dep{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--agm-sp-2) var(--agm-sp-3);margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-nut-dep-l{font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-dep-v{min-width:4.6em;white-space:nowrap}
html[data-ui="montagne"] .agm-nut-dep-plan{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);font-variant-numeric:tabular-nums;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-dep-go{margin-top:var(--agm-sp-4);min-height:52px}
html[data-ui="montagne"] .agm-nut-plan-now .agm-eyebrow{color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-plan-gh{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-card-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.2;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-plan-next{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-plan-list{margin:var(--agm-sp-4) 0 0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-nut-plan-step{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-3);margin:0;padding:var(--agm-sp-3) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-nut-plan-step+.agm-nut-plan-step{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-plan-step-body{display:block;min-width:0}
html[data-ui="montagne"] .agm-nut-plan-step-date{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-plan-step-etat{display:block;margin-top:2px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-plan-step-gh{flex:none;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-plan-step.is-courant{border-color:var(--agm-navy);background:var(--agm-navy)}
html[data-ui="montagne"] .agm-nut-plan-step.is-courant .agm-nut-plan-step-date,html[data-ui="montagne"] .agm-nut-plan-step.is-courant .agm-nut-plan-step-gh{color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-nut-plan-step.is-courant .agm-nut-plan-step-etat{color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-nut-plan-note{margin:var(--agm-sp-4) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-plan-go{margin-top:var(--agm-sp-5);min-height:52px}
html[data-ui="montagne"] .agm-nut-plan-tog{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-nut-plan-pq{display:none}
html[data-ui="montagne"] .agm-nut-plan-pq.is-open{display:block;margin-top:var(--agm-sp-2);padding:var(--agm-sp-3) var(--agm-sp-4);border-radius:var(--agm-r-lg);background:var(--agm-bg2)}
html[data-ui="montagne"] .agm-nut-plan-pq p{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-retour-q{display:block;margin-bottom:var(--agm-sp-1)}
html[data-ui="montagne"] .agm-nut-retour-aide{margin:0 0 var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-retour-n{margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);text-align:right;font-variant-numeric:tabular-nums;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-retour-n:empty,html[data-ui="montagne"] .agm-nut-retour-prevu:empty{display:none}
html[data-ui="montagne"] .agm-nut-retour-reprendre{display:inline-flex;align-items:center;min-height:var(--agm-tap);margin-top:var(--agm-sp-2);padding:var(--agm-sp-2) var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-navy);font:inherit;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.35;text-align:left;cursor:pointer}

/* ===== NUT-R-J1 (2026-11-04) — retouches nutrition : « Ton ravito » en trois états (athlete-nutrition.js, _rvHtml : CTA citron plein
   largeur ≥ 44 px par agm-btn, ligne « Commencé : … » de l'état E2), durée de la séance affichée sur l'écran nutrition (R4, « Durée · 3 h »),
   rangée « Aujourd'hui / Pour demain » dans les invitations de l'Accueil (même écart titre / eyebrow que le bloc D3). Jetons existants
   seulement, aucune animation, aucun dégradé ; textes en encre sur papier (≥ 4,5:1), CTA encre sur citron (agm-btn--accent). ===== */
html[data-ui="montagne"] .agm-nut-rv-cta{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-nut-rv-commence{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-seance-duree{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);font-variant-numeric:tabular-nums;color:var(--agm-ink)}

/* ===== NUT-R-J2 (2026-11-04) — produits visibles, première visite en un écran (athlete-nutrition.js) : cinq questions (première visite et
   profil, un seul rendu : groupes étiquetés, puces agm-chip--toggle ≥ 44 px qui passent à la ligne), bandeau « Valeurs types » et phrase du
   premier produit dans « Ce que tu emportes », bouton « Ajouter un produit » (agm-btn--ghost plein largeur, 44 px), ligne fringale sous le
   repère (écran et bloc de la séance), « Fiches à venir ». Jetons existants seulement, aucune animation, aucun dégradé ; textes en encre ou
   en gris secondaire sur papier ou fond (≥ 4,5:1). ===== */
html[data-ui="montagne"] .agm-nut-q .agm-nut-q-title{margin:0 0 var(--agm-sp-2);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta)}
html[data-ui="montagne"] .agm-nut-q-hint{margin:calc(-1 * var(--agm-sp-1)) 0 var(--agm-sp-2);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-nut-q-opts{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-q-btn{min-height:var(--agm-tap);min-width:var(--agm-tap);justify-content:center;white-space:normal;text-align:center}
html[data-ui="montagne"] .agm-nut-types{margin:0 0 var(--agm-sp-3);font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-vide{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-sac-add{margin-top:var(--agm-sp-3);min-height:var(--agm-tap)}
html[data-ui="montagne"] .agm-nut-fringale{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-comp-vide{margin:0}

/* ===== MEN-J2 (2026-11-04) — fiche mental (athlete-mental.js, agoge-mental-ui.js) : écran « mental-fiche » du socle, une fiche qui défile en
   cinq étapes (en-tête, faits, barre « n / 5 » ; blocs numérotés à pastille, coche quand l'étape est faite ; cases du constat ; texte,
   citations et recherche ; sous-étapes de l'exercice : puces agm-chip--toggle qui passent à la ligne, cartes radio, champ et règles en
   direct, cases des règles, curseur natif, liste à composer, repli des minuteurs et de l'échelle ; jours sur deux rangées de sept,
   moments, rendez-vous, prudence ; feuille personnelle ; pied : niveaux et sources) ; vues d'attente, de message et de fiche fermée.
   Classes agm-men-* (agm-fiche-* reste à la séance réalisée) ; composants partagés réutilisés (agm-btn, agm-chip, agm-field, agm-eyebrow) ;
   jetons seuls (aucun hex), corps 16 px, cibles ≥ 44 px (--agm-tap), aucune animation ni transition, masquage par rendu conditionnel ou
   :empty (jamais [hidden]). Textes en encre ou secondaire sur fond de page ou papier (≥ 4,5:1) ; sur bleu nuit : on-navy ; sur citron :
   on-lime. Mobile : gouttière d'agm-screen-body ; ≥ 768 px : colonne centrée de 680 px ; ≤ 359 px : jours sur quatre colonnes. ===== */
html[data-ui="montagne"] .agm-men{padding:var(--agm-sp-2) 0 var(--agm-sp-6);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
@media (min-width:768px){html[data-ui="montagne"] .agm-men{max-width:680px;margin-left:auto;margin-right:auto}}
html[data-ui="montagne"] .agm-men-msg{margin:0;padding:var(--agm-sp-6) 0 var(--agm-sp-4);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-msg:focus,html[data-ui="montagne"] .agm-men-title:focus,html[data-ui="montagne"] .agm-men-h2:focus,html[data-ui="montagne"] .agm-men-ok4:focus{outline:none}
html[data-ui="montagne"] .agm-men-head{margin:0}
html[data-ui="montagne"] .agm-men-title{margin:7px 0 0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.2;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-lede{margin:var(--agm-sp-3) 0 0;font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-faits{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-prog{display:flex;align-items:center;gap:var(--agm-sp-3);margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-prog-n{flex:none;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-prog-bar{display:flex;flex:1;gap:4px}
html[data-ui="montagne"] .agm-men-prog-bar>i{flex:1;height:6px;border-radius:var(--agm-r-pill);background:var(--agm-line)}
html[data-ui="montagne"] .agm-men-prog-bar>i.is-on{background:var(--agm-navy)}
html[data-ui="montagne"] .agm-men-bloc{margin-top:var(--agm-sp-6);padding-top:var(--agm-sp-6);border-top:var(--agm-bw) solid var(--agm-line);scroll-margin-top:72px}
html[data-ui="montagne"] .agm-men-bloc-head{display:flex;align-items:flex-start;gap:var(--agm-sp-3);margin:0 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-num{display:grid;place-items:center;flex:none;width:32px;height:32px;margin-top:2px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:50%;background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-men-bloc.is-active .agm-men-num{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-men-bloc.is-faite .agm-men-num{border-color:var(--agm-lime);background:var(--agm-lime);color:var(--agm-on-lime)}
html[data-ui="montagne"] .agm-men-num .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-men-bloc-tt{min-width:0}
html[data-ui="montagne"] .agm-men-h2{margin:2px 0 0;font-size:var(--agm-fs-heading);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-h3{margin:var(--agm-sp-5) 0 var(--agm-sp-2);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.35;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-h4{margin:var(--agm-sp-4) 0 var(--agm-sp-1);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-texte,html[data-ui="montagne"] .agm-men-consigne{margin:0 0 var(--agm-sp-3);padding:0;font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-cite{margin:calc(-1 * var(--agm-sp-2)) 0 var(--agm-sp-3);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-cases,html[data-ui="montagne"] .agm-men-choix{min-width:0;margin:0;padding:0;border:0}
html[data-ui="montagne"] .agm-men-case{display:flex;align-items:flex-start;gap:var(--agm-sp-3);min-height:var(--agm-tap);margin:0;padding:var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);font-size:16px;line-height:var(--agm-lh-meta);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-men-case+.agm-men-case{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-case>input,html[data-ui="montagne"] .agm-men-carte>input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:var(--agm-navy)}
html[data-ui="montagne"] .agm-men-case--regle{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-men-retour{margin:var(--agm-sp-3) 0 0;padding:var(--agm-sp-2) var(--agm-sp-3);border-left:3px solid var(--agm-lime);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-retour:empty{margin:0;padding:0;border:0}
html[data-ui="montagne"] .agm-men-actions{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-men-actions>.agm-btn+.agm-btn{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-go,html[data-ui="montagne"] .agm-men-annuler{font-size:16px}
html[data-ui="montagne"] .agm-men-attente,html[data-ui="montagne"] .agm-men-manque{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-err{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-danger)}
html[data-ui="montagne"] .agm-men-demo:empty{display:none}
html[data-ui="montagne"] .agm-men-recherche{margin:0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-men-recherche>li{margin:0;padding:0 0 0 var(--agm-sp-3);border-left:3px solid var(--agm-line-strong)}
html[data-ui="montagne"] .agm-men-recherche>li+li{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-recherche .agm-men-texte{margin-bottom:var(--agm-sp-1)}
html[data-ui="montagne"] .agm-men-recherche .agm-men-cite{margin:0}
html[data-ui="montagne"] .agm-men-se{scroll-margin-top:72px}
html[data-ui="montagne"] .agm-men-se-head{display:flex;align-items:center;gap:var(--agm-sp-3);margin:0 0 var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-se-head>.agm-men-h3{margin:0}
html[data-ui="montagne"] .agm-men-lettre{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:var(--agm-r-sm);background:var(--agm-navy);color:var(--agm-on-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-men-sep{height:0;margin:var(--agm-sp-6) 0;border:0;border-top:var(--agm-bw) dashed var(--agm-line-strong)}
html[data-ui="montagne"] .agm-men-comp{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-men-chips{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-chip{white-space:normal;text-align:left;line-height:1.35}
html[data-ui="montagne"] .agm-men-chip:disabled{opacity:.5;cursor:default}
html[data-ui="montagne"] .agm-men-sous{margin:var(--agm-sp-4) 0 var(--agm-sp-2);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-choix+.agm-men-sous{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-field{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-input{font-size:16px}
html[data-ui="montagne"] .agm-men-carte{display:flex;align-items:flex-start;gap:var(--agm-sp-3);min-height:var(--agm-tap);padding:var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);cursor:pointer}
html[data-ui="montagne"] .agm-men-carte+.agm-men-carte{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-carte.is-on{border-color:var(--agm-navy);box-shadow:inset 0 0 0 1px var(--agm-navy)}
html[data-ui="montagne"] .agm-men-carte-txt{display:block;min-width:0}
html[data-ui="montagne"] .agm-men-carte-l{display:block;font-size:16px;font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-carte-d{display:block;margin-top:2px;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-regles{margin:var(--agm-sp-3) 0 0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-men-regle{display:flex;align-items:flex-start;gap:var(--agm-sp-2);margin:0;padding:var(--agm-sp-1) 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-regle.is-ok,html[data-ui="montagne"] .agm-men-regle.is-ko{color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-regle-ic{display:grid;place-items:center;flex:none;width:20px;height:20px;margin-top:1px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:50%}
html[data-ui="montagne"] .agm-men-regle-ic .agm-ic{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
html[data-ui="montagne"] .agm-men-regle.is-ok .agm-men-regle-ic{border-color:var(--agm-ok);background:var(--agm-ok);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-men-regle.is-ko .agm-men-regle-ic{border-color:var(--agm-danger)}
html[data-ui="montagne"] .agm-men-regle-t{min-width:0}
html[data-ui="montagne"] .agm-men-regle-m{display:block;color:var(--agm-danger)}
html[data-ui="montagne"] .agm-men-curseur{padding:var(--agm-sp-3) var(--agm-sp-4) var(--agm-sp-2);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-curseur-val{margin:0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);line-height:1.2;text-align:center;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-range{display:block;box-sizing:border-box;width:100%;height:var(--agm-tap);margin:var(--agm-sp-1) 0 0;accent-color:var(--agm-navy);cursor:pointer}
html[data-ui="montagne"] .agm-men-bouts{display:flex;justify-content:space-between;gap:var(--agm-sp-3);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-aide:empty{display:none}
html[data-ui="montagne"] .agm-men-ajout{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-ajout>.agm-men-field{flex:1 1 200px;min-width:0}
html[data-ui="montagne"] .agm-men-ajouter{flex:none;font-size:16px}
html[data-ui="montagne"] .agm-men-compte{margin:var(--agm-sp-3) 0 var(--agm-sp-2);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-liste{margin:0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-men-item{display:flex;align-items:center;gap:var(--agm-sp-2);margin:0;padding:var(--agm-sp-1) var(--agm-sp-1) var(--agm-sp-1) var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-item+.agm-men-item{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-item-t{flex:1;min-width:0;font-size:16px;line-height:var(--agm-lh-meta);color:var(--agm-ink);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-men-retirer{display:grid;place-items:center;flex:none;width:var(--agm-tap);height:var(--agm-tap);padding:0;border:0;border-radius:var(--agm-r-md);background:transparent;color:var(--agm-muted);cursor:pointer}
html[data-ui="montagne"] .agm-men-retirer .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-men-repli{padding:var(--agm-sp-3) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-repli-faits{margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-script{margin:var(--agm-sp-2) 0 0;padding-left:var(--agm-sp-5);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-script>li+li{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-script-d{font-weight:var(--agm-fw-semibold);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-affiche{margin:var(--agm-sp-3) 0 0}
html[data-ui="montagne"] .agm-men-affiche-t{display:block;font-size:var(--agm-fs-stat);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-men-affiche-vide{font-size:var(--agm-fs-body);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-apres{margin:var(--agm-sp-3) 0 0;padding:var(--agm-sp-2) var(--agm-sp-3);border-left:3px solid var(--agm-lime);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-faits3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--agm-sp-2);margin:0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-men-faits3>li{margin:0;padding:var(--agm-sp-3) var(--agm-sp-2);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);font-size:var(--agm-fs-body);line-height:1.35;text-align:center;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-faits3 strong{display:block;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-jours{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
html[data-ui="montagne"] .agm-men-jours+.agm-men-jours{margin-top:var(--agm-sp-2)}
@media (max-width:359px){html[data-ui="montagne"] .agm-men-jours{grid-template-columns:repeat(4,minmax(0,1fr))}}
html[data-ui="montagne"] .agm-men-jour{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:var(--agm-tap);min-height:56px;padding:var(--agm-sp-1) 0;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-ink);font:inherit;cursor:pointer}
html[data-ui="montagne"] .agm-men-jour[aria-pressed="true"]{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-men-jour-j{font-size:var(--agm-fs-meta);line-height:1.2}
html[data-ui="montagne"] .agm-men-jour-n{font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.2}
html[data-ui="montagne"] .agm-men-ind{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-moments{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-rdv{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-ok4{margin:0 0 var(--agm-sp-3);padding:var(--agm-sp-3) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-verifier{margin:0;padding-left:var(--agm-sp-5);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-verifier>li+li{margin-top:var(--agm-sp-1)}
html[data-ui="montagne"] .agm-men-note{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-prudence{display:flex;align-items:flex-start;gap:var(--agm-sp-3);margin-top:var(--agm-sp-5);padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-prudence>.agm-ic{flex:none;width:var(--agm-ic);height:var(--agm-ic);color:var(--agm-navy)}
html[data-ui="montagne"] .agm-men-prudence>p{margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-body)}
html[data-ui="montagne"] .agm-men-perso{padding:var(--agm-sp-5) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-xl);background:var(--agm-paper);box-shadow:var(--agm-sh-card)}
html[data-ui="montagne"] .agm-men-perso-titre{margin:var(--agm-sp-1) 0 var(--agm-sp-3);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-perso-l{margin:0}
html[data-ui="montagne"] .agm-men-perso-ligne{padding:var(--agm-sp-3) 0;border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-men-perso-ligne>dt{font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-perso-ligne>dd{margin:2px 0 0;font-size:16px;font-weight:var(--agm-fw-semibold);line-height:1.45;color:var(--agm-ink);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-men-perso-ligne.is-grand>dd{font-size:var(--agm-fs-stat);font-weight:var(--agm-fw-bold);line-height:1.3}
html[data-ui="montagne"] .agm-men-perso-vide{font-size:16px;font-weight:var(--agm-fw-regular);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-perso-liste{margin:0;padding-left:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-men-perso .agm-men-texte{margin:0}
html[data-ui="montagne"] .agm-men-gardee{display:flex;align-items:center;justify-content:center;gap:var(--agm-sp-2);min-height:var(--agm-tap);margin:0;font-size:16px;font-weight:var(--agm-fw-semibold);color:var(--agm-ok)}
html[data-ui="montagne"] .agm-men-gardee .agm-ic{width:var(--agm-ic-md);height:var(--agm-ic-md)}
html[data-ui="montagne"] .agm-men-pied{margin-top:var(--agm-sp-6);padding-top:var(--agm-sp-6);border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-men-suite>.agm-men-h2{scroll-margin-top:72px}
html[data-ui="montagne"] .agm-men-niveaux{margin:var(--agm-sp-3) 0 0;padding:0;overflow:hidden;list-style:none;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-niveau{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-3);min-height:56px;margin:0;padding:var(--agm-sp-3) var(--agm-sp-4);border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-men-niveau:last-child{border-bottom:0}
html[data-ui="montagne"] .agm-men-niveau.is-courant{box-shadow:inset 3px 0 0 var(--agm-navy)}
html[data-ui="montagne"] .agm-men-niveau-tt{display:block;min-width:0}
html[data-ui="montagne"] .agm-men-niveau-n{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-niveau-t{display:block;margin-top:2px;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-etat{flex:none}
html[data-ui="montagne"] .agm-men-persona{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-sources{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-men-refs{margin:var(--agm-sp-3) 0 0;padding-left:var(--agm-sp-5);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-men-refs>li+li{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-ferme{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-men-ferme>.agm-men-msg{padding:0}

/* ===== MEN-J3 (2026-11-04) — minuteurs, échelle d'effort, démo, pratiques (agoge-mental-ui.js, athlete-mental.js) : minuteur en carte
   (phase en grand ≥ 28 px, jauge de phase en segments qui s'allument par pas, texte d'étape ≥ 20 px, temps restant à 56 px, un bouton) ;
   échelle 0-10 en boutons radio (six colonnes sur mobile, onze dès 560 px) ou en onze lignes à ancres ; repère de zone ; démo (deux
   puces, « mêmes » conditions cochées, jauge statique à trait de limite, verdict, mention) ; bandeau de pratique ; « Pratiques : n sur N ».
   Les règles de l'échelle du J2 (champ numérique, liste de repères) sont retirées avec elle. Jetons seuls (aucun hex), corps 16 px, cibles
   ≥ 44 px (--agm-tap), aucune animation ni transition (la largeur de la jauge est posée, jamais animée), masquage par :empty. ===== */
html[data-ui="montagne"] .agm-men-actions:empty{display:none}
html[data-ui="montagne"] .agm-men-t{padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper);text-align:center}
html[data-ui="montagne"] .agm-men-t--script{text-align:left}
html[data-ui="montagne"] .agm-men-t-phase{min-height:1.25em;margin:0;font-size:var(--agm-fs-screen-title);font-weight:var(--agm-fw-bold);line-height:1.25;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-t[data-men-t-etat="pret"] .agm-men-t-phase{font-size:var(--agm-fs-section);line-height:1.4}
html[data-ui="montagne"] .agm-men-t-sous{min-height:1.4em;margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-section);line-height:1.4;color:var(--agm-ink);overflow-wrap:anywhere}
html[data-ui="montagne"] .agm-men-t-jauge{display:flex;gap:4px;max-width:320px;height:10px;margin:var(--agm-sp-3) auto 0}
html[data-ui="montagne"] .agm-men-t-jauge>i{flex:1;border-radius:var(--agm-r-pill);background:var(--agm-line)}
html[data-ui="montagne"] .agm-men-t-jauge>i.is-on{background:var(--agm-navy)}
html[data-ui="montagne"] .agm-men-t-ph{min-height:1.4em;margin:var(--agm-sp-1) 0 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;font-variant-numeric:tabular-nums;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-t-pas{min-height:5em}
html[data-ui="montagne"] .agm-men-t-pos{margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-t-texte{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-stat);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-t-et{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);font-variant-numeric:tabular-nums;color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-t-et:empty{display:none}
html[data-ui="montagne"] .agm-men-t-reste{margin:var(--agm-sp-3) 0;text-align:center}
html[data-ui="montagne"] .agm-men-t-n{display:block;font-size:56px;font-weight:var(--agm-fw-bold);line-height:1.1;font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-t-go{font-size:16px}
html[data-ui="montagne"] .agm-men-t-msg{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-t-msg:empty{display:none}
html[data-ui="montagne"] .agm-men-echelle{min-width:0;margin:0;padding:0;border:0}
html[data-ui="montagne"] .agm-men-rpe{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
@media (min-width:560px){html[data-ui="montagne"] .agm-men-rpe{grid-template-columns:repeat(11,minmax(0,1fr))}}
html[data-ui="montagne"] .agm-men-rpe-in{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0;opacity:0}
html[data-ui="montagne"] .agm-men-rpe-b{position:relative;display:grid;place-items:center;min-width:var(--agm-tap);min-height:var(--agm-tap);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-ink);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);font-variant-numeric:tabular-nums;cursor:pointer}
html[data-ui="montagne"] .agm-men-rpe-l{position:relative;display:flex;align-items:center;gap:var(--agm-sp-3);min-height:var(--agm-tap);padding:var(--agm-sp-2) var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-men-rpe-l+.agm-men-rpe-l{margin-top:6px}
html[data-ui="montagne"] .agm-men-rpe-l>.agm-men-rpe-n{flex:none;width:28px;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);text-align:right;font-variant-numeric:tabular-nums}
html[data-ui="montagne"] .agm-men-rpe-t{min-width:0;font-size:16px;line-height:1.4}
html[data-ui="montagne"] .agm-men-rpe-b.is-on,html[data-ui="montagne"] .agm-men-rpe-l.is-on{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-men-rpe-b:focus-within,html[data-ui="montagne"] .agm-men-rpe-l:focus-within{outline:2px solid var(--agm-navy);outline-offset:2px}
html[data-ui="montagne"] .agm-men-rpe-ancre{margin:var(--agm-sp-3) 0 0;font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-zones{margin:var(--agm-sp-3) 0 0;padding:var(--agm-sp-2) var(--agm-sp-3);border-left:3px solid var(--agm-line-strong);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-demo{margin:var(--agm-sp-2) 0 var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-demo-in{padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-demo-intro{margin:0 0 var(--agm-sp-3);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-seg{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--agm-sp-2)}
@media (min-width:560px){html[data-ui="montagne"] .agm-men-seg{grid-template-columns:repeat(2,minmax(0,1fr))}}
html[data-ui="montagne"] .agm-men-seg-b{min-height:var(--agm-tap);margin:0;padding:var(--agm-sp-3);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-md);background:var(--agm-paper);color:var(--agm-ink);font:inherit;font-size:16px;font-weight:var(--agm-fw-semibold);line-height:1.35;text-align:left;cursor:pointer}
html[data-ui="montagne"] .agm-men-seg-b[aria-pressed="true"]{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-men-memes{display:flex;flex-wrap:wrap;gap:var(--agm-sp-2) var(--agm-sp-4);margin:var(--agm-sp-3) 0 0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-men-memes>li{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-memes .agm-ic{flex:none;width:var(--agm-ic-sm);height:var(--agm-ic-sm);color:var(--agm-ok)}
html[data-ui="montagne"] .agm-men-jauge{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-jauge-t{display:flex;align-items:baseline;justify-content:space-between;gap:var(--agm-sp-3);margin:0 0 var(--agm-sp-2);font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-jauge-t>strong{font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-jauge-bar{position:relative;height:14px;margin:6px 0;border-radius:var(--agm-r-pill);background:var(--agm-line)}
html[data-ui="montagne"] .agm-men-jauge-fill{position:absolute;top:0;bottom:0;left:0;border-radius:var(--agm-r-pill);background:var(--agm-navy)}
html[data-ui="montagne"] .agm-men-jauge-trait{position:absolute;top:-6px;bottom:-6px;width:3px;margin-left:-1px;border-radius:2px;background:var(--agm-ink);box-shadow:0 0 0 2px var(--agm-paper)}
html[data-ui="montagne"] .agm-men-jauge-leg{margin:var(--agm-sp-2) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-verdict{margin:var(--agm-sp-4) 0 0;padding:var(--agm-sp-2) var(--agm-sp-3);border-left:3px solid var(--agm-lime);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-demo-autre{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-demo-autre:empty{display:none}
html[data-ui="montagne"] .agm-men-demo-mention{margin:var(--agm-sp-3) 0 0;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-bandeau{margin:0 0 var(--agm-sp-4);padding:var(--agm-sp-3) var(--agm-sp-4);border-radius:var(--agm-r-lg);background:var(--agm-navy);font-size:16px;font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-body);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-men-pratiques{margin:var(--agm-sp-3) 0 0;font-size:16px;font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-body);color:var(--agm-ink)}

/* ===== MEN-J4 (2026-11-04) — écran « mental » (athlete-mental.js) : bilan d'entrée (douze situations numérotées en groupes radio de quatre
   réponses, cartes de la dernière question, barre « n / 13 », priorités en cartes à six points de score, puces des quatre autres, liste des
   quatre autres, roadmap en semaines, semaine de course, encadrés de consigne et de notes) et roadmap (quota, six fiches en rangées, semaines
   datées, « Refaire mon bilan ») ; bouton « Ouvrir « titre » » sous une bulle d'Orion. Classes agm-men-* ; composants partagés réutilisés
   (agm-btn, agm-chip, agm-eyebrow) ; jetons seuls (aucun hex), corps 16 px, cibles ≥ 44 px (--agm-tap ; rangées de fiches 56 px), aucune
   animation ni transition ; points de score informatifs (doublés par le texte « n / 6 »), jamais décoratifs ; masquage par rendu
   conditionnel. Mobile : réponses sur deux colonnes, priorités empilées ; ≥ 560 px : quatre colonnes, priorités côte à côte. ===== */
html[data-ui="montagne"] .agm-men-encadre{margin:var(--agm-sp-4) 0 0;padding:var(--agm-sp-3) var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-left:3px solid var(--agm-navy);border-radius:var(--agm-r-md);background:var(--agm-paper);font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-head .agm-men-annuler{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-qs{margin:0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-men-q{margin:0;padding:0}
html[data-ui="montagne"] .agm-men-q+.agm-men-q{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-men-qf{min-width:0;margin:0;padding:0;border:0}
html[data-ui="montagne"] .agm-men-q-l{display:flex;align-items:flex-start;gap:var(--agm-sp-3);margin:0 0 var(--agm-sp-3);padding:0;font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-q-n{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--agm-bg2);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-q-t{min-width:0}
html[data-ui="montagne"] .agm-men-freq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--agm-sp-2)}
@media (min-width:560px){html[data-ui="montagne"] .agm-men-freq{grid-template-columns:repeat(4,minmax(0,1fr))}}
html[data-ui="montagne"] .agm-men-freq-b{position:relative;display:grid;place-items:center;min-height:var(--agm-tap);margin:0;padding:var(--agm-sp-2);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-md);background:var(--agm-paper);font-size:16px;font-weight:var(--agm-fw-semibold);line-height:1.3;text-align:center;color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-men-freq-in{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0;opacity:0}
html[data-ui="montagne"] .agm-men-freq-b.is-on{border-color:var(--agm-navy);background:var(--agm-navy);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-men-freq-b:focus-within{outline:2px solid var(--agm-navy);outline-offset:2px}
html[data-ui="montagne"] .agm-men-prog--bilan{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-men-res{margin:0}
html[data-ui="montagne"] .agm-men-prios{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--agm-sp-3);margin-top:var(--agm-sp-4)}
@media (min-width:560px){html[data-ui="montagne"] .agm-men-prios{grid-template-columns:repeat(2,minmax(0,1fr))}}
html[data-ui="montagne"] .agm-men-prio{min-width:0;padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-prio>.agm-men-h3{margin:var(--agm-sp-1) 0 var(--agm-sp-2)}
html[data-ui="montagne"] .agm-men-prio>.agm-men-texte{margin-bottom:0}
html[data-ui="montagne"] .agm-men-pts{display:flex;align-items:center;gap:var(--agm-sp-2);margin:var(--agm-sp-3) 0 0}
html[data-ui="montagne"] .agm-men-pts-d{display:flex;gap:4px}
html[data-ui="montagne"] .agm-men-pts-d>i{width:10px;height:10px;border:var(--agm-bw) solid var(--agm-line-strong);border-radius:50%;background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-pts-d>i.is-on{border-color:var(--agm-navy);background:var(--agm-navy)}
html[data-ui="montagne"] .agm-men-pts-n{font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);font-variant-numeric:tabular-nums;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-swap{min-height:var(--agm-tap);margin-top:var(--agm-sp-3);font-size:16px;white-space:normal;text-align:left}
html[data-ui="montagne"] .agm-men-autres-c{margin-top:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-men-autres{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-men-autres-l{margin:var(--agm-sp-2) 0 0;padding:0;list-style:none}
html[data-ui="montagne"] .agm-men-autres-l>li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--agm-sp-1) var(--agm-sp-3);margin:0;padding:var(--agm-sp-2) 0;border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-men-autres-l .agm-men-pts{margin:0}
html[data-ui="montagne"] .agm-men-autres-t{min-width:0;font-size:16px;line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-rm{margin-top:var(--agm-sp-5)}
html[data-ui="montagne"] .agm-men-bloc>.agm-men-rm{margin-top:0}
html[data-ui="montagne"] .agm-men-semaines{margin:var(--agm-sp-3) 0 0;padding:0;overflow:hidden;list-style:none;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-sem{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--agm-sp-1) var(--agm-sp-3);margin:0;padding:var(--agm-sp-3) var(--agm-sp-4);border-bottom:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-men-sem:last-child{border-bottom:0}
html[data-ui="montagne"] .agm-men-sem.is-courant{box-shadow:inset 3px 0 0 var(--agm-navy)}
html[data-ui="montagne"] .agm-men-sem-q{flex:none;min-width:9.5em;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-sem.is-courant .agm-men-sem-q{color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-sem-tt{display:block;flex:1 1 12em;min-width:0}
html[data-ui="montagne"] .agm-men-sem-e{display:block;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-sem-t{display:block;font-size:16px;font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-sem-tt>.agm-chip{margin-top:var(--agm-sp-1)}
html[data-ui="montagne"] .agm-men-course{display:flex;flex-direction:column;gap:2px;margin:var(--agm-sp-3) 0 0;font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-course>span{font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-fiches{margin:0;padding:0;overflow:hidden;list-style:none;border:var(--agm-bw) solid var(--agm-line);border-radius:var(--agm-r-lg);background:var(--agm-paper)}
html[data-ui="montagne"] .agm-men-fiches>li{margin:0;padding:0}
html[data-ui="montagne"] .agm-men-fiches>li+li{border-top:var(--agm-bw) solid var(--agm-line)}
html[data-ui="montagne"] .agm-men-frow{display:flex;align-items:center;gap:var(--agm-sp-3);width:100%;min-height:56px;margin:0;padding:var(--agm-sp-3) var(--agm-sp-4);border:0;background:none;font:inherit;text-align:left;color:var(--agm-ink);cursor:pointer}
html[data-ui="montagne"] .agm-men-frow:focus-visible{outline:2px solid var(--agm-navy);outline-offset:-2px}
html[data-ui="montagne"] .agm-men-frow-tt{display:block;flex:1;min-width:0}
html[data-ui="montagne"] .agm-men-frow-a{display:block;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-frow-t{display:block;font-size:16px;font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-frow>.agm-chip{flex:none}
html[data-ui="montagne"] .agm-men-frow>.agm-ic{flex:none;width:var(--agm-ic-sm);height:var(--agm-ic-sm);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-quota{margin:var(--agm-sp-4) 0 0;font-size:16px;line-height:var(--agm-lh-body);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-refaire{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-men-orion{margin:-5px 31px 13px 46px}
html[data-ui="montagne"] .agm-men-orion-btn{min-height:var(--agm-tap);font-size:16px;white-space:normal;text-align:left}

/* ===== SIMP-J1 (2026-11-04) — Accueil (athlete-accueil.js) : blocs « À faire aujourd’hui » (cartes du jour, gabarit de la carte Mental
   de Séances), « Demain » et « Quand tu veux » (agm-list / agm-row) ; 24 px entre ces blocs et leurs voisins ; rangée d'information
   (action nulle : ni bouton ni chevron, curseur par défaut) ; ligne Orion sur deux lignes (L1 au corps, L2 en méta). Jetons existants
   seuls, aucune couleur nouvelle, aucune animation. ===== */
html[data-ui="montagne"] .agm-home>[data-block="a-faire"]{margin-bottom:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-home>[data-block="a-faire"]>.agm-section-head,html[data-ui="montagne"] .agm-home>[data-block="demain"]>.agm-section-head,html[data-ui="montagne"] .agm-home>[data-block="quand-tu-veux"]>.agm-section-head{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-row--info{cursor:default}
html[data-ui="montagne"] .agm-orion-row-t{display:block;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-orion-row-s{display:block;margin-top:3px;font-size:var(--agm-fs-meta);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
/* ===== SIMP-J2 (2026-11-04) — Mental (athlete-mental.js, agoge-mental-ui.js) : DA d'un écran de module (audit §6.1) sur le bilan, le
   programme et la fiche — en-tête à dessin module-mental (patron agm-nut-head, 86 × 59) ; carte de l'objet du jour (agm-card du socle,
   24 px sous l'en-tête) ; étapes de fiche, questions du bilan, priorités, cartes de la question 13 et listes de fiches en cartes
   blanches à relief (filet fort + ombre de carte, comme agm-card) ; 24 px entre blocs ; étape faite : pastille sans citron (une seule
   surface citron au pli, celle de la carte) ; rangée d'information (div, curseur par défaut) ; replis details / summary (≥ 44 px,
   marqueur natif retiré, aucune animation) ; marges de défilement des points d'arrivée. Jetons existants seuls, aucune couleur nouvelle,
   aucune animation ni transition. ===== */
html[data-ui="montagne"] .agm-men-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-men-head-text{min-width:0}
html[data-ui="montagne"] .agm-men-art{flex:none}
html[data-ui="montagne"] .agm-men-art>.agm-illu{display:block;width:86px;height:59px}
html[data-ui="montagne"] .agm-men-objet,html[data-ui="montagne"] .agm-men-intro{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-men-intro>:first-child{margin-top:0}
html[data-ui="montagne"] .agm-men-bloc[data-men-bloc]{padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper);box-shadow:var(--agm-sh-card)}
html[data-ui="montagne"] .agm-men-bloc.is-faite .agm-men-num{border-color:var(--agm-line-strong);background:var(--agm-paper);color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-q{padding:var(--agm-sp-4);border:var(--agm-bw) solid var(--agm-line-strong);border-radius:var(--agm-r-lg);background:var(--agm-paper);box-shadow:var(--agm-sh-card);scroll-margin-top:72px}
html[data-ui="montagne"] .agm-men-prio,html[data-ui="montagne"] .agm-men-carte,html[data-ui="montagne"] .agm-men-fiches{border-color:var(--agm-line-strong);box-shadow:var(--agm-sh-card)}
html[data-ui="montagne"] .agm-men-carte.is-on{border-color:var(--agm-navy);box-shadow:inset 0 0 0 1px var(--agm-navy),var(--agm-sh-card)}
html[data-ui="montagne"] .agm-men-frow-s{display:block;margin-top:2px;font-size:var(--agm-fs-body);line-height:var(--agm-lh-meta);color:var(--agm-muted)}
html[data-ui="montagne"] .agm-men-frow--info{cursor:default}
html[data-ui="montagne"] .agm-men-frow-act,html[data-ui="montagne"] .agm-men-pli-r{flex:none;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink);text-decoration:underline}
html[data-ui="montagne"] .agm-men-pli-s{display:flex;align-items:center;justify-content:space-between;gap:var(--agm-sp-3);min-height:var(--agm-tap);cursor:pointer;list-style:none}
html[data-ui="montagne"] .agm-men-pli-s::-webkit-details-marker{display:none}
html[data-ui="montagne"] .agm-men-pli-s:focus-visible{outline:2px solid var(--agm-navy);outline-offset:2px}
html[data-ui="montagne"] .agm-men-pli-t{min-width:0;font-size:16px;font-weight:var(--agm-fw-semibold);line-height:1.4;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-men-pli--rech{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-men-pli--rech>.agm-men-pli-s>.agm-men-pli-t{font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold)}
html[data-ui="montagne"] .agm-men-pli[open]>.agm-men-pli-s{margin-bottom:var(--agm-sp-3)}
html[data-ui="montagne"] .agm-men-comp,html[data-ui="montagne"] .agm-men-actions{scroll-margin-top:72px}
html[data-ui="montagne"] .agm-men-aide{margin-top:var(--agm-sp-6)}
/* ===== SIMP-J3 (2026-11-04) — Nutrition (athlete-nutrition.js) : DA d'un écran de module (audit §6.1) sur l'écran principal, la
   première visite et « Tes réponses » — 24 px entre blocs ; récap bleu nuit porteur de « Mon ravito est prêt » (note et attente écrites
   sur le bleu nuit, aucun bouton désactivé) ; « Autre sortie » à 8 px sous la carte de la séance ; frise « Quand le prendre » en carte
   blanche ; questions et case santé en cartes (agm-card du socle ; la case perd son cadre propre) ; « Réponds aux cinq questions. » en
   texte ; « Tes réponses · modifier » (agm-list / agm-row) ; bloc de la séance : titre de la frise, marge de défilement du point
   d'arrivée de voirFrise, pastille « Modifier · … » sur plusieurs lignes au besoin. Jetons existants seuls, aucune couleur nouvelle,
   aucune animation. Sans effet depuis ce jalon (retrait au J6) : .agm-nut-q+.agm-nut-q (NUT-R-J2), couverte par l'espacement ci-dessous. ===== */
html[data-ui="montagne"] .agm-nut[data-nut-view="main"]>*+*,html[data-ui="montagne"] .agm-nut[data-nut-view="first"]>*+*,html[data-ui="montagne"] .agm-nut[data-nut-view="profil"]>*+*{margin-top:var(--agm-sp-6)}
html[data-ui="montagne"] .agm-nut[data-nut-view="main"]>.agm-nut-autre{margin-top:var(--agm-sp-2);margin-bottom:0}
html[data-ui="montagne"] .agm-nut-recap>.agm-nut-pret{margin-top:var(--agm-sp-4)}
html[data-ui="montagne"] .agm-nut-recap .agm-nut-pret-note{color:var(--agm-on-navy-muted)}
html[data-ui="montagne"] .agm-nut-pret-attente{margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-on-navy)}
html[data-ui="montagne"] .agm-nut-quand-t{margin:0;font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-q-sante .agm-nut-check{margin:0;padding:0;border:0;border-radius:0;background:transparent}
html[data-ui="montagne"] .agm-nut-attente{margin:0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold);line-height:var(--agm-lh-meta);color:var(--agm-ink)}
html[data-ui="montagne"] [data-nut-r="go"]>.agm-nut-go{margin-top:0}
html[data-ui="montagne"] .agm-nut-rv-quand{scroll-margin-top:72px}
html[data-ui="montagne"] .agm-nut-rv-quand-t{margin:var(--agm-sp-4) 0 0;font-size:var(--agm-fs-body);font-weight:var(--agm-fw-bold);line-height:1.3;color:var(--agm-ink)}
html[data-ui="montagne"] .agm-nut-rv-quand>.agm-nut-frise,html[data-ui="montagne"] .agm-nut-rv-quand>.agm-nut-groupes{margin-top:var(--agm-sp-2)}
html[data-ui="montagne"] .agm-nut-rv-sac>span{min-width:0;overflow-wrap:anywhere}

/* ===== (6) Contenants legacy partagés — contenant seul =====
   Bat les <style> injectés (createModal : cm-v41-css, sélecteurs (0,1,0)) et
   agoge-athlete.css (.bottom-sheet.open::before (0,2,1)). Le CONTENU de ces
   contenants lit les jetons legacy transposés ci-dessous (arbitrage Maxence
   23/10 : texte lisible en encre) ; ses couleurs codées en dur attendent son lot.
   .msd-sheet-v41 (détail séance) : non, lot 3. */
/* Jetons legacy transposés, mêmes noms, valeurs montagne — R6b-L6-J3, ex-section 7 (transposition d'agoge-charte.css:15-39, étendue à
   .bottom-sheet et .cm-sheet le 23/10, complétée des jetons lus par le rituel : --ov1, --border-focus, --ease, --radius-md, --radius-sm) ;
   limitée aux contenants partagés : sheets (rituel, notifications mobiles, parcours), toutes les fenêtres createModal, et la liste de la
   cloche du grand écran (DT-296 : #sb-notif-dropdown lisait ceux du scope de la charte B posé sur la sidebar). */
html[data-ui="montagne"] .bottom-sheet,html[data-ui="montagne"] .cm-sheet,html[data-ui="montagne"] .notif-dropdown{
  --bg:var(--agm-bg);--card:var(--agm-paper);
  --line:var(--agm-line);--line2:var(--agm-line-strong);
  --text:var(--agm-ink);--muted:var(--agm-muted);--faint:var(--agm-faint);
  --accent:var(--agm-navy);--on-accent:var(--agm-on-navy);--tint:var(--agm-bg2);
  --ok:var(--agm-ok);--danger:var(--agm-danger);
  --bar:var(--agm-bar);--map:var(--agm-bg2);--knob:var(--agm-paper);
  --line-card:var(--agm-line);
  --sh-card:var(--agm-sh-card);--sh-btn2:none;--sh-accent:none;
  --bd-ink:var(--agm-line-strong);--accent-press:var(--agm-ink);
  --card-bg:var(--agm-paper);--surface:var(--agm-paper);--elevated:var(--agm-bg2);--hover:var(--agm-bg2);
  --text2:var(--agm-muted);--border:var(--agm-line);--border2:var(--agm-line);
  --nav-bg:var(--agm-paper);--bar-bg:var(--agm-paper);
  --orange:var(--agm-navy);--orange2:var(--agm-navy);--orange-rgb:var(--agm-navy-rgb);
  --ov1:var(--agm-bg);--border-focus:var(--agm-navy);
  --ease:var(--agm-ease);--radius-md:var(--agm-r-md);--radius-sm:var(--agm-r-sm);
}
/* .bottom-sheet (rituel, notifications mobiles, sheet parcours) — dialog.modal + .handle (Accueil). Glissement d'ouverture legacy conservé (fonctionnel). */
html[data-ui="montagne"] .bottom-sheet-overlay{background:var(--agm-backdrop);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
html[data-ui="montagne"] .bottom-sheet{border-color:var(--agm-line);border-radius:var(--agm-r-sheet) var(--agm-r-sheet) 0 0;background:var(--agm-paper);box-shadow:var(--agm-sh-sheet);color:var(--agm-ink)}
html[data-ui="montagne"] .bottom-sheet::before{display:none}
html[data-ui="montagne"] .bottom-sheet .bottom-sheet-handle{width:34px;background:var(--agm-handle)}
/* Point de l'encart dans la sheet du rituel : sans lueur (R6b-L6-J3, ex-section 7). */
html[data-ui="montagne"] .bottom-sheet .rit-encart-dot{box-shadow:none}
/* createModal (cm-*) — dialog.modal, .handle, .sheet-head, .close (Accueil) ; boutons Fermer à 44 px (revue de cohérence). */
html[data-ui="montagne"] .cm-overlay{background:var(--agm-backdrop);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
html[data-ui="montagne"] .cm-sheet{border-color:var(--agm-line);border-radius:var(--agm-r-sheet) var(--agm-r-sheet) 0 0;background:var(--agm-paper);box-shadow:var(--agm-sh-sheet);color:var(--agm-ink)}
html[data-ui="montagne"] .cm-sheet::before{display:none}
html[data-ui="montagne"] .cm-grab{width:34px;background:var(--agm-handle)}
/* .cm-head : géométrie seule, rien à rhabiller (un filet doublerait celui des sections de contenu). */
html[data-ui="montagne"] .cm-title{color:var(--agm-ink);font-size:var(--agm-fs-section);font-weight:var(--agm-fw-bold);letter-spacing:var(--agm-ls-title)}
html[data-ui="montagne"] .cm-close{width:var(--agm-tap);height:var(--agm-tap);background:var(--agm-bg2);color:var(--agm-ink)}
html[data-ui="montagne"] .cm-close:hover{background:var(--agm-line);color:var(--agm-ink);transform:none}
html[data-ui="montagne"] .cm-close svg{width:var(--agm-ic-sm);height:var(--agm-ic-sm)}
/* toast() du shell — .toast (Dialogue : bleu nuit, texte blanc) ; position, durée et couche legacy conservées ; largeur bornée (le legacy s'arrêtait à la moitié de l'écran). */
html[data-ui="montagne"] .toast,html[data-ui="montagne"] .toast-ok,html[data-ui="montagne"] .toast-err,html[data-ui="montagne"] .toast-info,html[data-ui="montagne"] .toast-warn{width:max-content;max-width:calc(100vw - 32px);border:0;border-radius:var(--agm-r-md);background:var(--agm-navy);box-shadow:var(--agm-sh-pop);backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--agm-on-navy);font-size:var(--agm-fs-body);font-weight:var(--agm-fw-semibold)}

/* ===== (7) Compat charte B — retirée au R6b-L6-J3 (bloc COMPAT, 141 règles) : règles encore vivantes déplacées (voir l'en-tête), agoge-charte.css délié. ===== */

/* ===== (8) Remap legacy =====
   Aucun : remap des jetons legacy no-go (gate J1, 23/10) — chaque écran attend son lot. */
