/* ==========================================================================
   EMPAN CURSEURS — charte de la gamme Empan, graphisme « Métronome »
   Remplace bauhaus.css, themes.css et bauhaus-override.css (15/10/2026).
   Empan Curseurs, édité par Caillou SARL. Modèle des Curseurs Didactiques
   de Rémy Van de Moosdyk.

   Une seule feuille pour toute la plateforme, chargée en dernier.
   1. Police   2. Jetons   3. Base   4. Composants Empan (em-*)
   5. Classes publiques héritées (bh-*)   6. Couche commune des pages
   connectées   7. Pages particulières   8. Petits écrans, impression
   Police Archivo auto-hébergée (SIL OFL). Aucune ressource tierce.
   ========================================================================== */

/* ---------- 1. Police ---------- */
@font-face{font-family:'Archivo';font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;
  src:url(../polices/archivo-latin-ext-wdth-normal.woff2) format('woff2-variations');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;
  src:url(../polices/archivo-latin-wdth-normal.woff2) format('woff2-variations');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* ---------- 2. Jetons ---------- */
:root{
  color-scheme:light;
  --em-blanc:#FFFFFF;
  --em-fond:#FCFCFD;
  --em-gris:#F5F5F7;
  --em-gris-2:#EBEBEF;
  --em-encre:#1D1D1F;
  --em-texte:#4A4A4F;
  --em-doux:#5F5F64;
  --em-filet:#E3E3E8;
  --em-filet-fort:#C7C7CC;
  --em-panneau:#181819;
  --em-ligne:#38702E;            /* couleur de ligne de Curseurs */
  --em-ligne-fonce:#2B5823;
  --em-ligne-clair:#E6F0E2;
  --em-surligne:rgba(56,112,46,.20);
  --em-alerte:#B3261E;
  --em-alerte-clair:#FBEAE8;
  --em-attention:#8A5A00;
  --em-attention-clair:#FFF4D6;
  --em-police:'Archivo',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  --em-mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --em-largeur:1100px;
  --em-r-s:10px; --em-r-m:14px; --em-r-l:22px;
  --em-ombre:0 30px 60px -30px rgba(29,29,31,.40),0 12px 24px -12px rgba(29,29,31,.20);
  --em-ombre-douce:0 1px 2px rgba(29,29,31,.06),0 8px 24px -12px rgba(29,29,31,.18);
  --em-focus:0 0 0 3px #fff,0 0 0 5px var(--em-ligne);

  /* niveaux 1 → 4 : une teinte qui avance sur la ligne, sans hiérarchie de valeur */
  --em-niv-1:#E6F0E2; --em-niv-1-t:#1D1D1F;
  --em-niv-2:#BFD9B5; --em-niv-2-t:#1D1D1F;
  --em-niv-3:#7DAE6F; --em-niv-3-t:#1D1D1F;
  --em-niv-4:#38702E; --em-niv-4-t:#FFFFFF;

  /* anciennes variables : toutes les pages qui les lisent suivent la charte */
  --bg-primary:var(--em-blanc); --bg-secondary:var(--em-gris); --bg-header:var(--em-blanc);
  --bg-card:var(--em-blanc); --bg-shelf:var(--em-gris-2);
  --text-primary:var(--em-encre); --text-secondary:var(--em-texte); --text-muted:var(--em-doux); --text-header:var(--em-encre);
  --accent-1:var(--em-encre); --accent-2:var(--em-ligne); --accent-3:var(--em-ligne); --accent-4:var(--em-ligne);
  --color-pink:var(--em-gris); --color-yellow:var(--em-gris); --color-blue:var(--em-gris);
  --color-green:var(--em-ligne-clair); --color-orange:var(--em-gris); --color-purple:var(--em-gris);
  --border-width:1px; --border-radius:var(--em-r-l); --border-radius-small:var(--em-r-s); --border-radius-sketch:var(--em-r-l);
  --border-color:var(--em-filet); --border-primary:var(--em-filet); --border-secondary:var(--em-filet); --border-style:solid;
  --shadow-card:none; --shadow-card-hover:none; --shadow-button:none; --shadow-primary:none; --shadow-hover:none;
  --transform-card-hover:none; --transform-button-hover:none;
  --font-system:var(--em-police); --font-handwritten:var(--em-police); --font-body:var(--em-police);
  --badge-1:var(--em-niv-1); --badge-2:var(--em-niv-2); --badge-3:var(--em-niv-3); --badge-4:var(--em-niv-4);
  --bg:var(--em-blanc); --ink:var(--em-encre); --paper:var(--em-blanc); --muted:var(--em-doux);
  --blue:var(--em-ligne); --red:var(--em-encre); --yellow:var(--em-gris);
  --sans:var(--em-police);
  --bh-bg:var(--em-blanc); --bh-ink:var(--em-encre); --bh-blue:var(--em-ligne); --bh-red:var(--em-alerte); --bh-yellow:var(--em-gris-2);
  --bh-green:var(--em-ligne); --bh-paper:var(--em-blanc); --bh-muted:var(--em-doux); --bh-sans:var(--em-police);
  --adm-bg:var(--em-blanc); --adm-card:var(--em-gris); --adm-border:var(--em-filet); --adm-acc:var(--em-ligne); --adm-green:var(--em-ligne);
  --adm-red:var(--em-alerte); --adm-orange:var(--em-attention); --adm-text:var(--em-encre); --adm-muted:var(--em-doux);
  --text-dark:var(--em-encre); --text-gray:var(--em-doux); --paper-bg:var(--em-blanc);
}

/* ---------- 3. Base ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*{animation:none!important;transition:none!important;}}
body{margin:0;background:var(--em-blanc)!important;color:var(--em-encre)!important;font-family:var(--em-police)!important;
  font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}

/* une seule famille partout, sauf le code */
body *:not(code):not(pre):not(kbd):not(samp):not(.masked):not(.faux-champ):not(.hash):not(.em-mono){font-family:var(--em-police)!important;text-shadow:none!important;}
code,pre,kbd,samp,.masked,.faux-champ,.hash,.em-mono{font-family:var(--em-mono)!important;}

h1,h2,h3,h4{color:var(--em-encre)!important;text-transform:none!important;letter-spacing:-.012em!important;text-wrap:balance;}
h1{font-weight:800!important;font-stretch:82%;}
h2{font-weight:800!important;font-stretch:82%;}
h3,h4{font-weight:700!important;}
a{color:inherit;}
a:hover{color:var(--em-ligne);}
::selection{background:var(--em-surligne);}
:focus-visible{outline:none!important;box-shadow:var(--em-focus)!important;border-radius:8px;}
img{max-width:100%;}

/* ---------- 4. Composants Empan ---------- */
.em-mono{font-size:.92em;}

/* bande de ligne en haut de page */
.em-bande{height:6px;background:var(--em-ligne);}

/* en-tête : pastille blanche, comme Métronome */
.em-entete{position:sticky;top:0;z-index:900;padding:12px 16px 0;background:transparent;}
.em-entete-in{max-width:var(--em-largeur);margin:0 auto;display:flex;align-items:center;gap:20px;
  background:rgba(255,255,255,.88);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);
  border:1px solid var(--em-filet);border-radius:16px;padding:8px 10px 8px 14px;min-height:58px;}
.em-entete.large .em-entete-in{max-width:1400px;}
.em-logo{display:flex;align-items:center;gap:12px;text-decoration:none;flex:none;}
.em-logo img{height:30px;width:auto;display:block;}
.em-logo .em-nom{display:flex;flex-direction:column;line-height:1.05;}
.em-logo .em-nom b{font-weight:800;font-stretch:82%;font-size:19px;letter-spacing:-.01em;color:var(--em-encre);}
.em-logo .em-nom span{font-size:11.5px;color:var(--em-doux);font-weight:500;}
.em-nav{display:flex;gap:26px;margin-left:auto;align-items:center;}
.em-nav a{font-size:14.5px;font-weight:500;color:var(--em-doux);text-decoration:none;padding:8px 0;position:relative;white-space:nowrap;}
.em-nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--em-encre);transform:scaleX(0);transition:transform .25s;}
.em-nav a:hover,.em-nav a[aria-current="page"]{color:var(--em-encre);}
.em-nav a:hover::after,.em-nav a[aria-current="page"]::after{transform:scaleX(1);}
.em-entete-actions{margin-left:auto;display:flex;gap:8px;align-items:center;flex:none;}
.em-entete .em-qui{font-size:14px;color:var(--em-doux);font-weight:500;white-space:nowrap;}
.em-burger{display:none;}

/* boutons */
.em-bouton,.bh-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--em-encre);color:#fff!important;
  text-decoration:none;font-family:var(--em-police);font-weight:600;font-size:15px;line-height:1.2;padding:12px 20px;border-radius:12px;
  border:0;cursor:pointer;white-space:nowrap;transition:transform .15s,background .15s,box-shadow .15s;text-transform:none;letter-spacing:0;box-shadow:none;}
.em-bouton:hover,.bh-btn:hover{background:#000;color:#fff!important;transform:translateY(-1px);}
.em-bouton.gros{font-size:16.5px;padding:15px 26px;border-radius:14px;}
.em-bouton.petit,.bh-btn-sm{font-size:13.5px;padding:8px 14px;border-radius:10px;}
.em-bouton.contour,.bh-btn-yellow{background:transparent;color:var(--em-encre)!important;box-shadow:inset 0 0 0 1.5px var(--em-encre);}
.em-bouton.contour:hover,.bh-btn-yellow:hover{background:var(--em-gris);color:var(--em-encre)!important;}
.em-bouton.ligne,.bh-btn-blue{background:var(--em-encre);}
.em-bouton.danger,.bh-btn-red{background:var(--em-alerte);}
.em-bouton:disabled,.bh-btn:disabled{opacity:.5;cursor:default;transform:none;}

/* panneau de signalétique : noir, double filet */
.em-panneau{display:inline-block;background:var(--em-panneau);color:#fff;border-radius:16px;padding:4px;box-shadow:0 0 0 2px var(--em-panneau);}
.em-panneau > span{display:block;border:2.5px solid #fff;border-radius:12px;padding:8px 20px 10px;font-weight:700;font-stretch:82%;
  font-size:clamp(20px,2.4vw,26px);line-height:1;letter-spacing:-.01em;}
.em-panneau.petit > span{font-size:15px;padding:6px 14px 7px;border-width:2px;border-radius:10px;}
.em-panneau.blanc{background:#fff;color:var(--em-encre);}
.em-panneau.blanc > span{border-color:var(--em-panneau);}

/* typographie */
.em-geant{font-weight:800!important;font-stretch:82%;font-size:clamp(44px,6.6vw,76px);line-height:.98;letter-spacing:-.02em!important;margin:0 0 26px;}
.em-titre{font-weight:800!important;font-stretch:82%;font-size:clamp(30px,4vw,46px);line-height:1.02;letter-spacing:-.018em!important;margin:0 0 16px;}
.em-gras{font-weight:700!important;font-size:clamp(24px,3vw,34px);line-height:1.12;margin:0 0 14px;}
.em-etiq{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--em-doux);}
.em-etiq.ligne{color:var(--em-ligne);}
.em-doux{color:var(--em-doux);}
.em-surligne{background:linear-gradient(transparent 58%,var(--em-surligne) 58%);padding:0 .06em;border-radius:2px;}
.em-pastille{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--em-encre);color:#fff;font-size:14px;font-weight:700;flex:none;}
.em-num-ligne{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:13px;background:var(--em-ligne);color:#fff;font-size:13px;font-weight:800;}

/* sections */
.em-sec{padding:110px 24px;}
.em-sec.gris{background:var(--em-gris);}
.em-sec.serre{padding:72px 24px;}
.em-in{max-width:var(--em-largeur);margin:0 auto;}
.em-deux{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center;}
.em-intro{max-width:62ch;margin:0 0 56px;}
.em-intro p{font-size:20px;color:var(--em-doux);margin:0;}

/* cartes grises */
.em-cartes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.em-carte{background:var(--em-gris);border-radius:var(--em-r-l);padding:22px 22px 24px;display:flex;flex-direction:column;gap:6px;min-width:0;
  text-decoration:none;color:var(--em-encre);transition:background .2s,transform .2s;}
a.em-carte:hover{background:var(--em-gris-2);color:var(--em-encre);}
.em-carte h3{margin:0;font-size:20px;line-height:1.25;display:flex;align-items:center;gap:10px;}
.em-carte p{margin:0;font-size:15.5px;line-height:1.5;color:var(--em-doux);}
.em-carte .em-aller{margin-top:auto;padding-top:14px;font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:6px;}
.em-aller::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(45deg);transition:transform .2s;}
a:hover .em-aller::after,.em-aller:hover::after{transform:translateX(3px) rotate(45deg);}
.em-carte.blanche{background:#fff;box-shadow:0 0 0 1px var(--em-filet);}

/* encadré (comme « Attention ») */
.em-encadre{border:2.5px solid var(--em-encre);border-radius:28px;padding:40px 48px;background:#fff;}
.em-encadre h2{margin:0 0 16px;font-size:clamp(30px,4vw,44px);line-height:1;display:flex;align-items:center;gap:14px;}

/* ligne et stations */
.em-trajet{list-style:none;margin:0;padding:0;}
.em-trajet li{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:20px;}
.em-trajet .rail{position:relative;display:flex;justify-content:center;}
.em-trajet .rail::after{content:"";position:absolute;top:44px;bottom:0;left:50%;width:8px;margin-left:-4px;border-radius:4px;background:var(--em-ligne);}
.em-trajet li:last-child .rail::after{display:none;}
.em-trajet .arret{width:44px;height:44px;border-radius:50%;background:#fff;border:6px solid var(--em-ligne);display:grid;place-items:center;z-index:1;
  font-weight:800;font-size:15px;color:var(--em-encre);}
.em-trajet .quoi{padding:6px 0 34px;}
.em-trajet h3{margin:0;font-size:24px;line-height:1.2;}
.em-trajet p{margin:4px 0 0;color:var(--em-doux);font-size:17px;}

/* table de mixage (illustration des curseurs) */
.em-mixage{background:#232325;border-radius:22px;padding:22px 22px 18px;box-shadow:var(--em-ombre);color:#F5F5F7;}
.em-mixage .tete{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#A1A1A6;}
.em-mixage .tete b{color:#fff;}
.em-pistes{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px;}
.em-piste{display:flex;flex-direction:column;align-items:center;gap:10px;}
.em-piste .fente{position:relative;width:8px;height:190px;border-radius:4px;background:#3A3A3D;}
.em-piste .fente::before{content:"";position:absolute;left:-9px;right:-9px;top:0;bottom:0;
  background:repeating-linear-gradient(to bottom,transparent 0 46px,#55555A 46px 48px);pointer-events:none;}
.em-piste .bouton{position:absolute;top:50%;left:50%;width:30px;height:18px;margin-left:-15px;border-radius:5px;background:#F5F5F7;
  box-shadow:0 3px 0 #B9B9BE,0 6px 10px rgba(0,0,0,.4);transform:translateY(-50%);}
.em-piste .bouton::after{content:"";position:absolute;left:4px;right:4px;top:8px;height:2px;background:var(--em-ligne);}
.em-piste .nom{font-size:10.5px;font-weight:600;color:#C7C7CC;writing-mode:vertical-rl;transform:rotate(180deg);height:78px;text-align:left;letter-spacing:.02em;}
.em-mixage .pied{display:flex;justify-content:space-between;margin:12px 0 0;padding:12px 0 0;border-top:1px solid #3A3A3D;font-size:12.5px;color:#A1A1A6;}
.em-mixage .pied b{color:#fff;font-weight:700;}
@media (prefers-reduced-motion:no-preference){
  .em-piste .bouton{transition:top 1.4s cubic-bezier(.3,.7,.2,1);}
}

/* pied de page */
.em-pied{border-top:1px solid var(--em-filet);background:#fff;margin-top:0;}
.em-pied-in{max-width:var(--em-largeur);margin:0 auto;padding:32px 24px 44px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px 28px;
  font-size:14px;color:var(--em-doux);align-items:center;}
.em-pied-in img{height:34px;width:auto;display:block;}
.em-pied nav{display:flex;flex-wrap:wrap;gap:8px 22px;}
.em-pied a{text-decoration:underline;text-underline-offset:3px;}
.em-pied.app .em-pied-in{max-width:1200px;padding:24px 24px 30px;font-size:13px;}

/* messages */
.em-msg,.bh-msg{border-radius:12px;padding:13px 16px;font-size:15px;font-weight:500;margin:0 0 18px;border:0;background:var(--em-gris);color:var(--em-encre);}
.em-msg.err,.bh-msg-err{background:var(--em-alerte-clair);color:#7A1A14;box-shadow:inset 3px 0 0 var(--em-alerte);}
.em-msg.ok,.bh-msg-ok{background:var(--em-ligne-clair);color:#1F4419;box-shadow:inset 3px 0 0 var(--em-ligne);}
.em-msg.info,.bh-msg-info{background:var(--em-gris);color:var(--em-encre);box-shadow:inset 3px 0 0 var(--em-encre);}

/* formulaires */
.em-champ,.bh-field{margin:0 0 18px;}
.em-champ label,.bh-field label{display:block;font-size:14px;font-weight:600;margin:0 0 7px;color:var(--em-encre);text-transform:none!important;letter-spacing:0!important;}
.em-champ .hint,.bh-field .hint{font-size:13.5px;color:var(--em-doux);margin-top:6px;}

/* ---------- 5. Classes publiques héritées (bh-*) ---------- */
.bh-wrap{max-width:var(--em-largeur);margin:0 auto;padding:0 24px;}
.bh-narrow{max-width:760px;margin:0 auto;padding:0 24px;}
.bh-header{position:sticky;top:0;z-index:900;padding:12px 16px 0;background:transparent!important;border:0!important;}
.bh-header > .bh-wrap{max-width:var(--em-largeur);padding:0;}
.bh-nav{display:flex;align-items:center;gap:20px;height:auto;min-height:58px;background:rgba(255,255,255,.88);
  -webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border:1px solid var(--em-filet);border-radius:16px;padding:8px 10px 8px 14px;}
.bh-logo{display:flex;align-items:center;gap:12px;}
.bh-shapes{display:none!important;}
.bh-id{display:flex;flex-direction:column;line-height:1.1;}
.bh-id b{font-weight:800;font-stretch:82%;font-size:19px;text-transform:none;letter-spacing:-.01em;}
.bh-id span{font-size:11.5px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--em-doux);}
.bh-links{display:flex;gap:26px;margin-left:auto;font-size:14.5px;font-weight:500;text-transform:none;letter-spacing:0;}
.bh-links a{color:var(--em-doux);}
.bh-links a:hover{color:var(--em-encre);}
.bh-card,.bh-card-flat{background:var(--em-gris);border:0!important;border-radius:var(--em-r-l);box-shadow:none!important;padding:28px;}
.bh-h1{font-size:clamp(34px,5vw,52px);line-height:1;font-weight:800;font-stretch:82%;text-transform:none;letter-spacing:-.02em;}
.bh-h2{font-size:clamp(28px,3.6vw,40px);font-weight:800;font-stretch:82%;text-transform:none;letter-spacing:-.018em;}
.bh-h3{font-size:18px;font-weight:700;text-transform:none;letter-spacing:0;}
.bh-over{display:inline-block;background:var(--em-panneau);color:#fff;border:0;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;box-shadow:none;}
.bh-sec-head{display:flex;align-items:center;gap:16px;margin-bottom:34px;}
.bh-chip{display:none!important;}
.bh-marquee{background:var(--em-panneau);color:#F5F5F7;border:0;padding:14px 0;font-size:14px;font-weight:600;letter-spacing:.02em;text-transform:none;text-align:center;}
.bh-footer{border-top:1px solid var(--em-filet);padding:32px 0;margin-top:80px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px;
  font-weight:500;text-transform:none;letter-spacing:0;color:var(--em-doux);}
.bh-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.bh-step-n{display:inline-grid;place-items:center;width:34px;height:34px;font-weight:700;font-size:15px;border:0;border-radius:50%;margin-bottom:16px;
  background:var(--em-encre);color:#fff;}
.n-red,.n-blue,.n-yellow{background:var(--em-encre)!important;color:#fff!important;border-radius:50%!important;}

/* ---------- 6. Couche commune (pages connectées et anciennes pages) ---------- */

/* boutons hérités */
button,.btn,.btn-primary,.btn-secondary,.btn-logout,.btn-action,.book-action-btn,.batch-action-btn,.cta-primary,.cta-secondary,
input[type="submit"],.btn-large,.btn-small,.btn-rewrite,.btn-confirm,.btn-cancel,.btn-add-groupe,.btn-save,.btn-cancel-edit,.btn-edit,.btn-del,
.btn-comment,.btn-resolve,.btn-toggle-autres,.btn-back,.btn-remove,.tab-btn,.lib-tab,.tab{
  font-family:var(--em-police)!important;text-transform:none!important;letter-spacing:0!important;background-image:none!important;
  border-radius:12px!important;box-shadow:none!important;transform:none;}
.btn-primary,input[type="submit"],.cta-primary,.btn-large,.btn-rewrite,.btn-confirm,.btn-add-groupe,.btn-save{
  background-color:var(--em-encre)!important;color:#fff!important;border:0!important;font-weight:600!important;padding:12px 20px;}
.btn-primary:hover,input[type="submit"]:hover,.cta-primary:hover,.btn-large:hover,.btn-rewrite:hover,.btn-confirm:hover,.btn-add-groupe:hover,.btn-save:hover{
  background-color:#000!important;transform:translateY(-1px)!important;}
.btn-secondary,.cta-secondary,.btn-cancel,.btn-cancel-edit,.btn-small,.btn-comment,.btn-toggle-autres,.btn-back,.btn-edit,.btn{
  background-color:#fff!important;color:var(--em-encre)!important;border:0!important;box-shadow:inset 0 0 0 1.5px var(--em-encre)!important;font-weight:600!important;}
.btn-secondary:hover,.cta-secondary:hover,.btn-cancel:hover,.btn-cancel-edit:hover,.btn-small:hover,.btn-comment:hover,.btn-toggle-autres:hover,.btn-back:hover,.btn-edit:hover,.btn:hover{
  background-color:var(--em-gris)!important;transform:none!important;}
.btn-logout{background-color:transparent!important;color:var(--em-encre)!important;border:0!important;box-shadow:inset 0 0 0 1px var(--em-filet-fort)!important;
  font-weight:500!important;font-size:14px!important;padding:8px 14px!important;}
.btn-logout:hover{background-color:var(--em-gris)!important;transform:none!important;}
.btn-del,.btn-remove{background-color:#fff!important;color:var(--em-alerte)!important;border:0!important;box-shadow:inset 0 0 0 1.5px var(--em-alerte)!important;}
button:disabled,.btn-primary:disabled{opacity:.5;cursor:default;transform:none!important;}

/* champs */
input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="search"],input[type="url"],input[type="tel"],
input[type="date"],input:not([type]),select,textarea{
  font-family:var(--em-police)!important;font-size:16px;border:1.5px solid var(--em-filet-fort)!important;background-color:#fff!important;
  color:var(--em-encre)!important;border-radius:12px!important;box-shadow:none!important;padding:11px 14px;transition:border-color .15s,box-shadow .15s;}
input:focus,select:focus,textarea:focus{outline:none!important;border-color:var(--em-ligne)!important;box-shadow:0 0 0 3px var(--em-surligne)!important;}
select{-webkit-appearance:none;appearance:none;padding-right:38px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%231D1D1F' stroke-width='2'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 14px center!important;}
input[type="checkbox"],input[type="radio"]{accent-color:var(--em-ligne);}
label{color:var(--em-encre);}

/* cartes, panneaux, modales */
.card,.auth-card,.module-card,.tool-card,.analysis-section,.filters-bar,.section-card,.lesson-metadata,.curseurs-table,
.suggestions-box,.rewrite-section,.radar-container,.recent-lessons,.external-links,.welcome-section,.stat-card,.stat-block,
.groupe-card,.shared-card,.sans-groupe-card,.alertes-section,.global-stats,.panel,.placeholder-container{
  background-color:var(--em-gris)!important;background-image:none!important;border:0!important;border-radius:var(--em-r-l)!important;
  box-shadow:none!important;transform:none!important;}
.card::before{display:none!important;}
.card:hover{background-color:var(--em-gris-2)!important;transform:none!important;}
.modal-content,.modal-box,#modal-box,#edit-modal-box{background:#fff!important;border:0!important;border-radius:24px!important;box-shadow:var(--em-ombre)!important;}
.modal-overlay,.modal,#modal-overlay,#edit-modal-overlay{background-color:rgba(24,24,25,.5)!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.modal-close,#modal-close{box-shadow:none!important;background:var(--em-gris)!important;border-radius:50%!important;color:var(--em-encre)!important;}

/* en-têtes de pages connectées : la pastille Empan */
.dashboard-header,.header,#topbar,.doc-header{
  position:sticky!important;top:0!important;z-index:900!important;background:transparent!important;background-image:none!important;border:0!important;
  box-shadow:none!important;padding:12px 16px 0!important;margin:0!important;color:var(--em-encre)!important;}
.dashboard-header,.header,#topbar,.doc-header{display:block!important;height:auto!important;}
.em-entete-legacy{width:100%;max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  background:rgba(255,255,255,.9);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);
  border:1px solid var(--em-filet);border-radius:16px;padding:8px 10px 8px 14px;min-height:58px;}
.em-entete-legacy > h1,.em-entete-legacy .header-left h1,.em-entete-legacy > .header-left > h1{font-size:15px!important;font-weight:600!important;font-stretch:100%;
  letter-spacing:0!important;margin:0!important;color:var(--em-doux)!important;padding-left:16px;border-left:1px solid var(--em-filet);}
.em-entete-legacy .header-left{display:flex;align-items:center;gap:12px;}
.em-entete-legacy .header-left .subtitle{display:none;}
.em-entete-legacy .user-menu,.em-entete-legacy .header-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.em-entete-legacy .user-name{font-size:14px;font-weight:500;color:var(--em-doux)!important;margin-right:4px;background:none!important;border:0!important;padding:0!important;}

/* en-têtes de rubriques (bibliothèque, archives) */
.library-header,.archive-header,.auth-header{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;color:var(--em-encre)!important;}

/* conteneurs */
.dashboard-container,.library-container{background:transparent!important;max-width:1200px;margin:0 auto;padding:40px 24px 80px;}
.dashboard-page,.auth-page{background:#fff!important;}

.welcome-section,.cards-grid,.recent-lessons,.external-links,#mon-groupe-banner,#section-checklist,#section-groupes{max-width:none!important;margin-left:0!important;margin-right:0!important;}

/* bienvenue */
.welcome-section{background:transparent!important;padding:24px 0 8px!important;text-align:left!important;margin:0 0 24px!important;}
.welcome-section h2{font-size:clamp(36px,5vw,58px)!important;line-height:1!important;margin:0 0 8px!important;}
.welcome-section p{font-size:19px!important;color:var(--em-doux)!important;}

/* cartes d'action du portail */
.cards-grid{gap:16px!important;}
.cards-grid .card{padding:22px 22px 24px!important;text-decoration:none;color:var(--em-encre)!important;display:flex;flex-direction:column;gap:6px;min-height:150px;position:relative;
  align-items:flex-start!important;text-align:left!important;}
.cards-grid .card h3{font-size:20px!important;margin:0!important;}
.cards-grid .card p{font-size:15px!important;color:var(--em-doux)!important;margin:0!important;}
.cards-grid .card::after{content:"";position:absolute;right:22px;bottom:24px;width:8px;height:8px;border-right:2px solid var(--em-encre);border-top:2px solid var(--em-encre);transform:rotate(45deg);transition:transform .2s;}
.cards-grid .card:hover::after{transform:translateX(3px) rotate(45deg);}
.card-icon{display:none!important;}
#admin-card,#dashboard-card,#rotation-card,#eval-nespa-card{background:#fff!important;box-shadow:inset 0 0 0 1.5px var(--em-encre)!important;}

/* listes de leçons */
.recent-lessons,.external-links{padding:26px 28px!important;margin-top:24px!important;}
.recent-lessons h3,.external-links h3{font-size:22px!important;margin:0 0 12px!important;border:0!important;padding:0!important;display:block!important;}
.recent-lessons a{border-bottom:0!important;text-decoration:underline!important;text-underline-offset:3px;}
.external-links a{display:inline-block!important;padding:0!important;margin:0 18px 0 0!important;box-shadow:none!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important;font-size:15.5px!important;}
.lesson-item{border-bottom:1px solid var(--em-filet)!important;background:transparent!important;padding:14px 0!important;}
.lesson-score{background:var(--em-encre)!important;color:#fff!important;border:0!important;border-radius:999px!important;font-weight:700;}
.external-links a{color:var(--em-encre)!important;text-decoration:underline!important;text-underline-offset:3px;background:none!important;border:0!important;}

/* onglets */
.input-tabs,.lib-tabs,#tabs,.res-onglets{display:flex;gap:4px!important;background:var(--em-gris)!important;border:0!important;border-radius:14px!important;padding:4px!important;
  width:max-content;max-width:100%;overflow-x:auto;box-shadow:none!important;}
.tab-btn,.lib-tab,.tab,.res-onglets a,.res-onglets button{background:transparent!important;color:var(--em-doux)!important;border:0!important;box-shadow:none!important;
  font-weight:600!important;font-size:14.5px!important;padding:9px 16px!important;border-radius:10px!important;white-space:nowrap;}
.tab-btn:hover,.lib-tab:hover,.tab:hover{color:var(--em-encre)!important;background:rgba(255,255,255,.6)!important;}
.tab-btn.active,.lib-tab.active,.tab.active,.res-onglets .active,.res-onglets [aria-current]{background:#fff!important;color:var(--em-encre)!important;
  box-shadow:0 1px 2px rgba(29,29,31,.1),0 0 0 1px var(--em-filet)!important;}

/* dépôt de fichier */
.upload-zone,.photo-drop-zone{background:#fff!important;border:2px dashed var(--em-filet-fort)!important;border-radius:var(--em-r-l)!important;box-shadow:none!important;}
.upload-zone:hover,.upload-zone.dragover,.photo-drop-zone:hover{border-color:var(--em-ligne)!important;background:var(--em-ligne-clair)!important;}
.upload-icon{filter:grayscale(1);}

/* niveaux 1 → 4 */
.niveau-badge,.curseur-badge,.badge-1,.badge-2,.badge-3,.badge-4,.book-niveau{border:0!important;border-radius:999px!important;font-weight:700!important;box-shadow:none!important;}
.niveau-1,.badge-1,.curseur-badge.n1,[data-level="1"] .book-spine{background:var(--em-niv-1)!important;color:var(--em-niv-1-t)!important;}
.niveau-2,.badge-2,.curseur-badge.n2,[data-level="2"] .book-spine{background:var(--em-niv-2)!important;color:var(--em-niv-2-t)!important;}
.niveau-3,.badge-3,.curseur-badge.n3,[data-level="3"] .book-spine{background:var(--em-niv-3)!important;color:var(--em-niv-3-t)!important;}
.niveau-4,.badge-4,.curseur-badge.n4,[data-level="4"] .book-spine{background:var(--em-niv-4)!important;color:var(--em-niv-4-t)!important;}

/* tableaux */
table{border-collapse:separate!important;border-spacing:0;}
#curseursTable,.adm-table-wrap table{border:0!important;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px var(--em-filet);}
#curseursTable th,thead th{background:var(--em-panneau)!important;color:#fff!important;font-weight:600!important;font-size:13.5px!important;text-transform:none!important;
  letter-spacing:0!important;border:0!important;padding:12px 14px!important;}
#curseursTable td,tbody td{border:0!important;border-bottom:1px solid var(--em-filet)!important;padding:12px 14px!important;background:#fff;}
#curseursTable tr:nth-child(even) td{background:var(--em-fond)!important;}
tbody tr:hover td{background:var(--em-gris)!important;}

/* barres de progression */
.progress-bar,.slider-track,.checklist-progress-bar,.progress-bar-wrap,.groupe-bar,.checklist-global-bar{background:var(--em-gris-2)!important;border:0!important;border-radius:999px!important;overflow:hidden;box-shadow:none!important;}
.progress-fill,.slider-fill,.checklist-progress-fill,.progress-bar-fill,.groupe-bar-fill,.checklist-global-fill{background:var(--em-ligne)!important;background-image:none!important;border-radius:999px!important;}

/* étiquettes, puces */
.tag-filter,.book-tag,.tag-chip,.stat-badge,.pool-count,.section-count,.nb-analyses-chip,.membre-badge,.b{border:0!important;border-radius:999px!important;box-shadow:none!important;font-weight:600;}
.tag-filter{background:#fff!important;color:var(--em-encre)!important;box-shadow:inset 0 0 0 1px var(--em-filet-fort)!important;}
.tag-filter.active{background:var(--em-encre)!important;color:#fff!important;box-shadow:none!important;}
.book-tag,.tag-chip,.stat-badge,.section-count,.nb-analyses-chip{background:var(--em-gris-2)!important;color:var(--em-encre)!important;}
.pool-count{background:var(--em-encre)!important;color:#fff!important;}

/* chargement */
.loader-spinner{border-color:var(--em-gris-2)!important;border-top-color:var(--em-ligne)!important;}

/* sélecteur de thème : retiré */
#themeSelector,.theme-selector,.theme-selector-dropdown,.theme-selector-toggle,.themes-section{display:none!important;}

/* ---------- 7. Pages particulières ---------- */

/* Portail : bandeau de groupe, progression, groupes de travail */
#mon-groupe-banner{background:var(--em-gris)!important;border:0!important;border-radius:var(--em-r-l)!important;box-shadow:none!important;padding:18px 22px!important;max-width:none!important;}
#mon-groupe-banner:hover{background:var(--em-gris-2)!important;transform:none!important;}
#mon-groupe-banner .groupe-badge,.groupe-num{background:var(--em-ligne)!important;color:#fff!important;border-radius:12px!important;font-weight:800!important;font-stretch:82%;font-size:24px!important;}
#mon-groupe-banner .groupe-hint{color:var(--em-ligne)!important;}
#mon-groupe-banner .groupe-label strong{font-size:19px!important;}
#section-checklist{background:#fff!important;border:0!important;border-radius:var(--em-r-l)!important;box-shadow:0 0 0 1px var(--em-filet)!important;}
.checklist-step{background:var(--em-gris)!important;border:0!important;border-radius:14px!important;box-shadow:none!important;}
.checklist-step.done{background:var(--em-ligne-clair)!important;}
.step-time{color:var(--em-ligne)!important;}
#section-groupes{background:#fff!important;border:0!important;border-radius:var(--em-r-l)!important;box-shadow:0 0 0 1px var(--em-filet)!important;max-width:none!important;}
#section-groupes h3{font-size:26px!important;}
.pool-column{background:var(--em-gris)!important;border:0!important;border-radius:16px!important;}
.member-chip{background:#fff!important;border:0!important;border-radius:12px!important;box-shadow:0 0 0 1px var(--em-filet)!important;}
.groupe-card{box-shadow:none!important;}
.membre-avatar{background:var(--em-encre)!important;}
.membre-avatar.moi{background:var(--em-ligne)!important;}
.membre-info .tag-moi{background:var(--em-ligne-clair)!important;color:#1F4419!important;}
.alerte-float-btn{background:var(--em-encre)!important;color:#fff!important;border:0!important;border-radius:999px!important;box-shadow:var(--em-ombre)!important;font-weight:600!important;}
.etab-selector-bar label{font-weight:600;}

/* Analyse */
.analysis-section{padding:28px!important;}
.suggestion-item,.suggestion-item-selectable{background:#fff!important;border:0!important;border-radius:16px!important;box-shadow:0 0 0 1px var(--em-filet)!important;}
.suggestion-curseur{color:var(--em-encre)!important;font-weight:700!important;}
.suggestion-level{background:var(--em-ligne)!important;color:#fff!important;border-radius:999px!important;border:0!important;}
.rewrite-chart-box,.lib-chart-box{background:#fff!important;border:0!important;border-radius:16px!important;box-shadow:0 0 0 1px var(--em-filet)!important;}
.rewrite-warning{background:var(--em-attention-clair)!important;border:0!important;border-radius:12px!important;color:#5A3B00!important;}
.rewrite-content{background:#fff!important;border-radius:16px!important;}
.legend-sample.modifie{background:var(--em-attention-clair)!important;}
.legend-sample.ajout{background:var(--em-ligne-clair)!important;}
input.editable-title:hover,input.editable-title:focus{background:var(--em-gris)!important;border-radius:8px;}

.upload-text{text-transform:none!important;font-size:24px!important;font-weight:700!important;letter-spacing:-.01em!important;}
.em-app label,.lesson-metadata label,.metadata-grid label,.form-group label,.edit-field label,.em-public label{text-transform:none!important;letter-spacing:0!important;font-size:14px!important;font-weight:600!important;}
.lesson-header{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;text-align:left!important;margin:0 0 28px!important;}
input.editable-title,.editable-title{border:1.5px solid transparent!important;background:transparent!important;font-size:clamp(28px,3.4vw,40px)!important;font-weight:800!important;font-stretch:82%;
  letter-spacing:-.018em;text-align:left!important;padding:4px 10px!important;margin:0 0 10px -10px!important;max-width:none!important;}
input.editable-title:hover,input.editable-title:focus{border-color:var(--em-filet-fort)!important;background:#fff!important;}
.lesson-meta{justify-content:flex-start!important;gap:8px!important;}
.lesson-meta span{background:#fff!important;border:0!important;border-radius:999px!important;box-shadow:inset 0 0 0 1px var(--em-filet-fort)!important;font-size:14.5px!important;padding:6px 14px!important;font-weight:600;}
.lesson-meta span:empty{display:none;}
.suggestion-curseur{background:var(--em-encre)!important;color:#fff!important;border-radius:999px!important;padding:3px 12px!important;}
.suggestion-slider-wrap{background:var(--em-gris)!important;border:0!important;border-radius:12px!important;}
.suggestion-slider-labels span,.suggestion-slider-hint strong,.coherence-profil{color:var(--em-ligne)!important;}
input[type=range]{accent-color:var(--em-ligne);}
.suggestions-actions,.action-buttons,.results-actions{align-items:center!important;}
#resultsSection > div:last-child button,#resultsSection .btn-primary,#resultsSection .btn-secondary{padding:12px 20px!important;font-size:15px!important;}

/* Composants ajoutés le 24/09 (ameliorations.css) : table de mixage, justesse, pistes */
:root{--niv-fond:var(--em-gris-2)!important;--niv-encre:var(--em-encre)!important;}
.niveau-badge.niveau-1,.niveau-badge.niveau-2,.niveau-badge.niveau-3,.niveau-badge.niveau-4{border:0!important;}
.niveau-badge.niveau-1{background:var(--em-niv-1)!important;color:var(--em-niv-1-t)!important;}
.niveau-badge.niveau-2{background:var(--em-niv-2)!important;color:var(--em-niv-2-t)!important;}
.niveau-badge.niveau-3{background:var(--em-niv-3)!important;color:var(--em-niv-3-t)!important;}
.niveau-badge.niveau-4{background:var(--em-niv-4)!important;color:var(--em-niv-4-t)!important;}
.niveau-badge{padding:4px 12px!important;font-size:14px!important;}
.mix-entete p{color:var(--em-doux)!important;}
.mix-bascule,.meta-ia-btn{background:#fff!important;border:0!important;border-radius:10px!important;box-shadow:inset 0 0 0 1.5px var(--em-encre)!important;font-weight:600!important;padding:6px 12px!important;}
.mix-console{background:#232325!important;border:0!important;border-radius:22px!important;box-shadow:var(--em-ombre)!important;padding:20px 14px 16px!important;gap:6px!important;}
.mix-rail::before{background:#3A3A3D!important;width:8px!important;margin-left:-4px!important;border-radius:4px!important;}
.mix-cran{border-top-color:#55555A!important;}
.mix-cran span{color:#8E8E93!important;}
.mix-curseur{background:#F5F5F7!important;border:0!important;border-radius:5px!important;box-shadow:0 3px 0 #B9B9BE,0 6px 10px rgba(0,0,0,.4)!important;color:var(--em-encre)!important;}
.mix-curseur::after{border-top:2px solid var(--em-ligne)!important;opacity:1!important;}
.mix-curseur b{background:#F5F5F7!important;}
.mix-curseur.corrige,.mix-curseur.corrige b{background:#CFE6C7!important;}
.mix-nom{color:#E5E5EA!important;font-weight:600!important;}
.mix-justesse{color:#E5E5EA!important;border:1px solid #55555A!important;border-radius:999px!important;font-weight:600!important;letter-spacing:.02em!important;}
.mix-legende,.jus-raison,.piste-pourquoi,.coh-bloc .coh-objectif,.meta-ia-confiance,.meta-ia-intro,.meta-ia-attente,.meta-ia-preuve,.legende-aide{color:var(--em-doux)!important;}
.jus-etiquette,.piste-etiquette-nouvelle{border:0!important;border-radius:999px!important;background:var(--em-gris-2)!important;color:var(--em-encre)!important;}
.jus-citation,.coh-liens li,.piste-retour{background:var(--em-gris)!important;border-left:3px solid var(--em-ligne)!important;border-radius:0 10px 10px 0!important;}
.piste-retour.erreur{background:var(--em-alerte-clair)!important;border-left-color:var(--em-alerte)!important;}
.coh-bloc,.lecon-attente,.lecon-erreur{background:#fff!important;border:0!important;border-radius:var(--em-r-l)!important;box-shadow:0 0 0 1px var(--em-filet)!important;}
.piste-reponses button,.meta-ia-choix button,.meta-ia-secondaire{background:#fff!important;color:var(--em-encre)!important;border:0!important;border-radius:999px!important;
  box-shadow:inset 0 0 0 1.5px var(--em-filet-fort)!important;font-weight:600!important;padding:6px 14px!important;}
.piste-reponses button[aria-pressed="true"],.meta-ia-choix button[aria-pressed="true"],.meta-ia-principal,.piste-precision .piste-envoyer{background:var(--em-encre)!important;color:#fff!important;box-shadow:none!important;border:0!important;}
.piste-precision textarea,.meta-ia-champ{border:1.5px solid var(--em-filet-fort)!important;border-radius:10px!important;}
.meta-ia-boite{background:#fff!important;border:0!important;border-radius:24px!important;box-shadow:var(--em-ombre)!important;}
.meta-ia-ligne{background:var(--em-gris)!important;border:0!important;border-radius:14px!important;}
.legende-matieres{justify-content:flex-start!important;gap:8px!important;align-items:center;}
.legende-titre{font-size:14px;font-weight:600;}
.legende-puce{border:0!important;border-radius:999px!important;padding:4px 12px!important;font-size:13.5px!important;font-weight:600!important;color:var(--em-encre)!important;}
.legende-puce[aria-pressed="true"]{box-shadow:0 0 0 2px var(--em-encre)!important;}
.legende-aide{text-align:left!important;}
.mini-mix-barre{background:var(--em-encre)!important;border-radius:2px 2px 0 0;}
.book-niveau.avec-mini-mix{background:rgba(255,255,255,.75)!important;border:0!important;border-radius:8px!important;}

/* matières : teintes douces, distinctes, accordées au gris Empan */
.book-card[data-matiere="maths"] .book-spine,.legende-puce[data-matiere="maths"]{background:#DCE6F5!important;}
.book-card[data-matiere="francais"] .book-spine,.legende-puce[data-matiere="francais"]{background:#F6E0DA!important;}
.book-card[data-matiere="langues"] .book-spine,.legende-puce[data-matiere="langues"]{background:#F5EBC8!important;}
.book-card[data-matiere="sciences"] .book-spine,.legende-puce[data-matiere="sciences"]{background:#DDEDD7!important;}
.book-card[data-matiere="histgeo"] .book-spine,.legende-puce[data-matiere="histgeo"]{background:#EDE3D3!important;}
.book-card[data-matiere="ep"] .book-spine,.legende-puce[data-matiere="ep"]{background:#E6DFF3!important;}
.book-card[data-matiere="arts"] .book-spine,.legende-puce[data-matiere="arts"]{background:#F3DEEA!important;}
.book-card[data-matiere="autre"] .book-spine,.legende-puce[data-matiere="autre"]{background:var(--em-gris-2)!important;}

/* boutons des en-têtes : tous de la même taille */
.em-entete-legacy button,.em-entete-legacy a.btn-logout,.em-entete-legacy a.btn-secondary,.em-entete-legacy a.btn-primary,.em-entete-legacy .btn,.em-entete-legacy .btn-back,.em-entete-legacy a[class*="btn"]{
  padding:8px 14px!important;font-size:14px!important;border-radius:10px!important;width:auto!important;margin:0!important;line-height:1.2!important;}
.em-entete-legacy .user-menu > *{flex:none;}

/* Bibliothèque : l'étagère devient une grille de fiches */
.shelf{background:transparent!important;box-shadow:none!important;border:0!important;padding:0!important;}
.shelf::before{display:none!important;}
.book-card{background:var(--em-gris)!important;border:0!important;border-radius:18px!important;box-shadow:none!important;transform:none!important;overflow:hidden;}
.book-card:hover{background:var(--em-gris-2)!important;transform:none!important;box-shadow:none!important;}
.book-card.selected{box-shadow:0 0 0 2.5px var(--em-encre)!important;}
.book-spine{border:0!important;}
.book-action-btn{background:#fff!important;color:var(--em-encre)!important;border:0!important;box-shadow:inset 0 0 0 1px var(--em-filet-fort)!important;font-size:13px!important;padding:6px 10px!important;}
.book-action-btn:hover{background:var(--em-encre)!important;color:#fff!important;}
.batch-actions-bar{background:var(--em-panneau)!important;color:#fff!important;border:0!important;border-radius:16px!important;box-shadow:var(--em-ombre)!important;}
.batch-action-btn{background:#fff!important;color:var(--em-encre)!important;border:0!important;}
.batch-action-btn.cancel{background:transparent!important;color:#fff!important;box-shadow:inset 0 0 0 1px #5F5F64!important;}
.empty-library{background:var(--em-gris)!important;border:0!important;border-radius:var(--em-r-l)!important;}
.empty-library-icon{filter:grayscale(1);}
.archive-notice{background:var(--em-attention-clair)!important;border:0!important;border-radius:14px!important;box-shadow:none!important;}

/* Admin et tableau formateur */
#topbar .badge{background:var(--em-ligne-clair)!important;color:#1F4419!important;border:0!important;border-radius:999px!important;}
#topbar .sep{display:none!important;}
.stat-card .val,.stat-num{font-weight:800!important;font-stretch:82%;color:var(--em-encre)!important;}
.stat-num.green{color:var(--em-ligne)!important;} .stat-num.red{color:var(--em-alerte)!important;}
.stat-num.yellow{color:var(--em-attention)!important;} .stat-num.purple{color:var(--em-encre)!important;}
.b-green{background:var(--em-ligne-clair)!important;color:#1F4419!important;}
.b-red{background:var(--em-alerte-clair)!important;color:#7A1A14!important;}
.b-blue,.b-org{background:var(--em-gris-2)!important;color:var(--em-encre)!important;}
.groupe-card.has-alerte{box-shadow:inset 0 0 0 2px var(--em-alerte)!important;}
.groupe-card.mon-groupe{box-shadow:inset 0 0 0 2px var(--em-ligne)!important;}
.mon-groupe-badge{background:var(--em-ligne)!important;color:#fff!important;border-radius:999px!important;}
.alerte-chip,.alerte-badge{background:var(--em-alerte)!important;color:#fff!important;border:0!important;border-radius:999px!important;}
.badge-analyse{background:var(--em-ligne-clair)!important;color:#1F4419!important;}
.badge-connecte{background:var(--em-gris-2)!important;color:var(--em-encre)!important;}
.badge-non_connecte{background:#fff!important;color:var(--em-doux)!important;box-shadow:inset 0 0 0 1px var(--em-filet-fort)!important;}
.dot.green{background:var(--em-ligne)!important;} .dot.yellow{background:#C9A227!important;} .dot.red{background:var(--em-alerte)!important;}
.checklist-mini-step.complete{background:var(--em-ligne)!important;color:#fff!important;}
.checklist-mini-step.partial{background:var(--em-niv-2)!important;color:var(--em-encre)!important;}
.checklist-mini-step.none{background:var(--em-gris-2)!important;color:var(--em-doux)!important;}

/* Messages hérités */
.error-message,#error-msg,.edit-msg.err,.error-banner{background:var(--em-alerte-clair)!important;color:#7A1A14!important;border:0!important;border-radius:12px!important;}
.edit-msg.ok,.success-message{background:var(--em-ligne-clair)!important;color:#1F4419!important;border:0!important;border-radius:12px!important;}

/* Documentation */
.doc-header .header-content{max-width:1400px;margin:0 auto;}
.breadcrumb{background:transparent!important;border:0!important;font-size:14px;color:var(--em-doux);}
.breadcrumb a{color:var(--em-doux)!important;text-decoration:underline;text-underline-offset:3px;}
.doc-toc,.quick-nav{background:var(--em-gris)!important;border:0!important;border-radius:18px!important;box-shadow:none!important;}
blockquote{border-left:4px solid var(--em-ligne)!important;background:var(--em-gris)!important;border-radius:0 14px 14px 0!important;}

/* Pages de connexion (connexion, inscriptions, mot de passe, première connexion) */
body.em-auth{display:block!important;min-height:100vh;padding:0!important;margin:0!important;}
body.em-auth::before{content:"";position:fixed;inset:0;z-index:-1;background-color:#fff;
  background-image:linear-gradient(var(--em-filet) 1px,transparent 1px),linear-gradient(90deg,var(--em-filet) 1px,transparent 1px);
  background-size:60px 60px;-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent 90%);mask-image:linear-gradient(180deg,#000 30%,transparent 90%);}
.em-auth .auth-zone,.em-auth .auth-container{display:flex!important;justify-content:center;align-items:flex-start;padding:56px 16px 80px!important;min-height:0!important;
  background:transparent!important;overflow:visible!important;width:auto!important;max-width:none!important;margin:0!important;}
.em-auth > .card{margin:56px auto 80px!important;}
.em-auth .auth-card-bh,.em-auth .auth-card,.em-auth > .card{background:#fff!important;border:0!important;border-radius:24px!important;
  box-shadow:0 0 0 1px var(--em-filet),var(--em-ombre)!important;padding:40px 40px 34px!important;width:100%;max-width:460px!important;transform:none!important;}
.em-auth .auth-card-bh h1,.em-auth .auth-header h1{font-size:clamp(30px,4vw,40px)!important;line-height:1!important;margin:0 0 8px!important;text-align:left!important;}
.em-auth .auth-card-bh .sous,.em-auth .auth-header p,.em-auth .subtitle{font-size:15.5px!important;font-weight:400!important;text-transform:none!important;letter-spacing:0!important;
  color:var(--em-doux)!important;margin:0 0 26px!important;text-align:left!important;line-height:1.5!important;}
.em-auth .auth-header{text-align:left!important;padding:0!important;margin:0 0 6px!important;}
.em-auth h2{font-size:22px!important;color:var(--em-encre)!important;margin:0 0 6px!important;}
.em-auth .auth-form h2{font-size:20px!important;margin:0 0 18px!important;}
.em-auth label,.em-auth .form-group label{display:block;font-size:14px!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important;color:var(--em-encre)!important;margin:0 0 7px!important;}
.em-auth .form-group,.em-auth .field{margin:0 0 18px!important;}
.em-auth input:not([type=checkbox]):not([type=radio]),.em-auth select{width:100%!important;}
.em-auth button[type=submit],.em-auth .btn-primary,.em-auth .btn{width:100%;justify-content:center;background:var(--em-encre)!important;color:#fff!important;border:0!important;
  box-shadow:none!important;font-weight:600!important;font-size:16px!important;padding:14px 20px!important;border-radius:14px!important;margin-top:6px;}
.em-auth button[type=submit]:hover,.em-auth .btn-primary:hover,.em-auth .btn:hover{background:#000!important;}
.em-auth .liens-bas,.em-auth .auth-footer,.em-auth .footer-link{margin-top:22px!important;font-size:15px!important;color:var(--em-doux)!important;text-align:left!important;}
.em-auth .liens-bas a,.em-auth .auth-footer a,.em-auth .footer-link a{color:var(--em-encre)!important;font-weight:600!important;text-decoration:underline!important;text-underline-offset:3px;border:0!important;}
.em-auth .hint,.em-auth small,.em-auth .form-hint{color:var(--em-doux)!important;font-size:13.5px!important;}
.em-auth .first-login-badge{display:inline-block;background:var(--em-ligne)!important;color:#fff!important;border:0!important;border-radius:999px!important;
  padding:5px 12px!important;font-size:12px!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase;margin:0 0 18px!important;}
.em-auth .step-indicator{display:flex;gap:8px;margin:0 0 26px!important;}
.em-auth .step{flex:1;display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--em-doux);background:var(--em-gris)!important;border:0!important;border-radius:12px!important;padding:8px 10px!important;}
.em-auth .step-num{width:24px;height:24px;border-radius:50%!important;display:grid;place-items:center;background:#fff!important;color:var(--em-encre)!important;
  border:2px solid var(--em-filet-fort)!important;font-size:12px;font-weight:700;flex:none;}
.em-auth .step.active{color:var(--em-encre);font-weight:600;}
.em-auth .step.active .step-num{border-color:var(--em-ligne)!important;}
.em-auth .step.done .step-num{background:var(--em-ligne)!important;border-color:var(--em-ligne)!important;color:#fff!important;}
.em-auth .error-message,.em-auth .alert-error,.em-auth .msg-error{background:var(--em-alerte-clair)!important;color:#7A1A14!important;border:0!important;border-radius:12px!important;}
.em-auth .alert-success,.em-auth .msg-success,.em-auth .success{background:var(--em-ligne-clair)!important;color:#1F4419!important;border:0!important;border-radius:12px!important;}
.em-auth .icon{display:none;}

.em-auth .auth-form{padding:0!important;background:none!important;box-shadow:none!important;border:0!important;margin:0!important;}
.em-auth #invalidTokenState,.em-auth #successState{text-align:left!important;}
.em-auth #invalidTokenState p,.em-auth #successState p{color:var(--em-doux)!important;}

/* Inscription ouverte : deux colonnes */
.em-auth .page{padding:56px 0 80px!important;gap:56px!important;}
.em-auth .side h1{font-size:clamp(36px,4.6vw,54px)!important;line-height:1!important;margin:22px 0 16px!important;}
.em-auth .side h1 em{font-style:normal;color:inherit!important;background:linear-gradient(transparent 60%,var(--em-surligne) 60%);}
.em-auth .side p{font-size:18px;color:var(--em-doux)!important;}
.em-auth .side .etapes{border:0!important;background:transparent!important;gap:0!important;}
.em-auth .side .et{border:0!important;padding:0 0 18px!important;position:relative;}
.em-auth .side .et b{width:34px!important;height:34px!important;border-radius:50%!important;background:#fff!important;color:var(--em-encre)!important;
  border:5px solid var(--em-ligne)!important;font-size:13px;position:relative;z-index:1;}
.em-auth .side .et:not(:last-child)::after{content:"";position:absolute;left:14px;top:30px;bottom:-2px;width:6px;border-radius:3px;background:var(--em-ligne);}
.em-auth .side .et span{font-size:16px!important;font-weight:500!important;}
.em-auth .side .ecole a{color:var(--em-encre)!important;border-bottom:0!important;text-decoration:underline;text-underline-offset:3px;}
.em-auth .form-card{background:#fff!important;border:0!important;border-radius:24px!important;box-shadow:0 0 0 1px var(--em-filet),var(--em-ombre)!important;padding:36px!important;}
.em-auth .form-card h2{text-transform:none!important;font-size:24px!important;}
.em-auth #cguField label,.em-auth .cgu label{font-weight:400!important;}
.em-auth a[style*="color:var(--blue)"]{color:var(--em-encre)!important;text-decoration:underline;}

/* Guide de la clé, ma clé */
.em-public main{padding-bottom:40px;}

/* Documentation : panneau noir pour chaque curseur, encadrés gris, numéros noirs */
.curseur-header{background:var(--em-panneau)!important;background-image:none!important;border:0!important;border-radius:24px!important;box-shadow:var(--em-ombre)!important;
  padding:44px 40px!important;text-align:left!important;color:#fff!important;position:relative;}
.curseur-header::after{content:"";position:absolute;inset:6px;border:2.5px solid #fff;border-radius:19px;pointer-events:none;}
.curseur-header h1{color:#fff!important;font-size:clamp(40px,6vw,68px)!important;line-height:1!important;margin:12px 0 10px!important;}
.curseur-header .curseur-tagline,.curseur-header p{color:#D1D1D6!important;font-style:normal!important;}
.curseur-header .curseur-badge,.curseur-badge{background:var(--em-ligne)!important;color:#fff!important;border:0!important;border-radius:999px!important;box-shadow:none!important;}
.intro-content strong{background:linear-gradient(transparent 58%,var(--em-surligne) 58%)!important;color:inherit!important;}
.doc-section h2{border-bottom:0!important;padding-bottom:0!important;}
.exemple-box,.definition-box,.warning-box,.highlight-box,.info-box,.citation-box{background:var(--em-gris)!important;border:0!important;border-left:3px solid var(--em-ligne)!important;border-radius:0 14px 14px 0!important;box-shadow:none!important;}
.warning-box{border-left-color:var(--em-attention)!important;background:var(--em-attention-clair)!important;}
.niveau-1,.niveau-2,.niveau-3,.niveau-4{border-left-width:4px!important;border-left-style:solid!important;border-radius:0 14px 14px 0;}
.niveau-block,.doc-section .niveau-1,.doc-section .niveau-2,.doc-section .niveau-3,.doc-section .niveau-4,.niveau-card{color:var(--em-encre)!important;}
.niveau-block p,.niveau-block li,.niveau-block strong,.niveau-block h3,.niveau-block h4{color:inherit;}
.niveau-block.niveau-1,.niveau-block.niveau-2,.niveau-block.niveau-3,.niveau-block.niveau-4{background:var(--em-gris)!important;}
.niveau-block.niveau-1{border-left-color:var(--em-niv-1)!important;} .niveau-block.niveau-2{border-left-color:var(--em-niv-2)!important;}
.niveau-block.niveau-3{border-left-color:var(--em-niv-3)!important;} .niveau-block.niveau-4{border-left-color:var(--em-niv-4)!important;}
.doc-section .niveau-1,.niveau-card.niveau-1{background:var(--em-gris)!important;border-left-color:var(--em-niv-1)!important;}
.doc-section .niveau-2,.niveau-card.niveau-2{background:var(--em-gris)!important;border-left-color:var(--em-niv-2)!important;}
.doc-section .niveau-3,.niveau-card.niveau-3{background:var(--em-gris)!important;border-left-color:var(--em-niv-3)!important;}
.doc-section .niveau-4,.niveau-card.niveau-4{background:var(--em-gris)!important;border-left-color:var(--em-niv-4)!important;}
.curseur-numero,.curseur-mini-card .curseur-numero,[class*="curseur-mini-card"] .curseur-numero{background:var(--em-encre)!important;color:#fff!important;border:0!important;}
.curseur-mini-card,.quick-card,.doc-card,.portal-card,.source-card,.auteur-card,.glossaire-item,.parcours-card{background:var(--em-gris)!important;border:0!important;border-radius:var(--em-r-l)!important;box-shadow:none!important;transform:none!important;}
.curseur-mini-card:hover,.quick-card:hover,.doc-card:hover,.source-card:hover{background:var(--em-gris-2)!important;}
.quick-card.construction::after{background:var(--em-encre)!important;color:#fff!important;border-radius:999px!important;}
.btn-parcours,.back-to-top{background:var(--em-encre)!important;color:#fff!important;border:0!important;border-radius:12px!important;box-shadow:none!important;}
.back-to-top{border-radius:50%!important;}
.doc-header .header-content{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.doc-header h1{font-size:15px!important;font-weight:600!important;font-stretch:100%;color:var(--em-doux)!important;margin:0!important;}
.doc-header p,.doc-header .subtitle,.doc-header .header-subtitle{display:none!important;}
.doc-header .back-link,.doc-header a[href*="portail"],.doc-header a[href*="index"]{font-size:14px;color:var(--em-doux)!important;}
.doc-header input[type="search"],.doc-header input[type="text"],.search-input{border-radius:10px!important;padding:8px 12px!important;font-size:14px!important;}
.doc-section,.intro-section,.portal-intro,.welcome-box{background:transparent!important;border:0!important;box-shadow:none!important;}
.doc-footer{background:#fff!important;border-top:1px solid var(--em-filet)!important;}
.continuum,.continuum-box{background:#fff!important;border:0!important;border-radius:18px!important;box-shadow:0 0 0 1px var(--em-filet)!important;}

/* Guide de la clé et Ma clé */
.em-public .hero h1,.em-public .page h1{text-transform:none!important;font-size:clamp(34px,4.6vw,52px)!important;line-height:1!important;}
.em-public .hero h1 em{font-style:normal;color:inherit!important;background:linear-gradient(transparent 60%,var(--em-surligne) 60%);}
.em-public .hero p,.em-public .page .sous{font-size:18px!important;}
.em-public .badges span{border:0!important;background:var(--em-gris)!important;border-radius:999px!important;text-transform:none!important;letter-spacing:0!important;font-weight:600!important;font-size:14px!important;}
.em-public .etape .n{background:#fff!important;color:var(--em-encre)!important;border:6px solid var(--em-ligne)!important;border-radius:50%!important;width:52px;height:52px;}
.em-public .etape h2{text-transform:none!important;font-size:24px!important;}
.em-public .etape a.lien,.em-public .skip a,.em-public .aide a{color:var(--em-encre)!important;border-bottom:0!important;text-decoration:underline;text-underline-offset:3px;}
.em-public .ecran{border:0!important;border-radius:16px!important;box-shadow:0 0 0 1px var(--em-filet),var(--em-ombre-douce)!important;overflow:hidden;}
.em-public .ecran .barre{border-bottom:1px solid var(--em-filet)!important;background:var(--em-gris)!important;}
.em-public .ecran .barre i{border:0!important;background:var(--em-filet-fort)!important;}
.em-public .ecran .titre{text-transform:none!important;}
.em-public .ecran .ligne{background:var(--em-gris-2)!important;border-radius:4px;}
.em-public .faux-btn{border:0!important;background:var(--em-encre)!important;color:#fff!important;border-radius:10px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;font-weight:600!important;}
.em-public .faux-btn.jaune{background:#fff!important;color:var(--em-encre)!important;box-shadow:inset 0 0 0 1.5px var(--em-encre)!important;}
.em-public .fleche{color:var(--em-ligne)!important;text-transform:none!important;letter-spacing:0!important;}
.em-public .faux-champ{border:1.5px solid var(--em-filet-fort)!important;background:var(--em-gris)!important;border-radius:10px!important;}
.em-public .bloc,.em-public .form-card,.em-public .ecole-note,.em-public .statut{border:0!important;border-radius:var(--em-r-l)!important;box-shadow:none!important;background:var(--em-gris)!important;}
.em-public .bloc h3,.em-public .form-card h2,.em-public .statut b,.em-public .aide b{text-transform:none!important;letter-spacing:0!important;}
.em-public .bloc h3,.em-public .form-card h2{font-size:20px!important;}
.em-public .bloc.jaune,.em-public .aide{background:#fff!important;border:2.5px solid var(--em-encre)!important;border-radius:24px!important;box-shadow:none!important;}
.em-public .bloc.bleu{background:var(--em-panneau)!important;}
.em-public .bloc.bleu p{color:#D1D1D6!important;}
.em-public .statut .pastille{border:0!important;}
.em-public .p-ok{background:var(--em-ligne)!important;} .em-public .p-off{background:var(--em-filet-fort)!important;} .em-public .p-err{background:var(--em-alerte)!important;}

/* pied commun ajouté par le script */
.em-pied.app{margin-top:40px;}

/* ---------- 8. Petits écrans, impression ---------- */
@media (max-width:900px){
  .em-deux{grid-template-columns:1fr;gap:40px;}
  .em-cartes,.bh-steps{grid-template-columns:1fr;}
  .em-sec{padding:72px 20px;}
  .em-nav,.bh-links{display:none;}
  .em-encadre{padding:28px 24px;border-radius:22px;}
  .em-entete-legacy > h1{display:none;}
}
@media (max-width:600px){
  body{font-size:16px;}
  .em-entete,.bh-header,.dashboard-header,.header,#topbar,.doc-header{padding:8px 8px 0!important;}
  .em-entete-in,.bh-nav,.em-entete-legacy{padding:6px 6px 6px 10px;gap:10px;}
  .em-logo img{height:24px;}
  .em-logo .em-nom span{display:none;}
  .em-entete .em-qui{display:none;}
  .em-entete-legacy .user-name{display:none;}
  .dashboard-container,.library-container{padding:24px 16px 60px;}
  .em-pistes{gap:4px;}
  .em-piste .fente{height:150px;}
}
@media print{
  .em-entete,.bh-header,.dashboard-header,.header,#topbar,.em-pied,.alerte-float-wrap{display:none!important;}
  body{font-size:12pt;}
}
@media (max-width:600px){.em-mixage .tete{font-size:10.5px;letter-spacing:.05em;}.em-mixage .pied{font-size:11px;gap:8px;}}

/* ---------- 9. Une couleur par curseur (15/10/2026) ----------
   Les couleurs de la carte des interconnexions (choix de Rémy). Usages :
   --cc  (titre)  : grands titres, traits ; contraste ≥ 3:1 sur blanc
   --cct (texte)  : mots en gras, pastilles avec chiffre blanc ; contraste ≥ 4,6:1
   --ccv (vif)    : petits repères sur fond sombre */
[data-cur="tache"]      {--cc:#E03A2F;--cct:#D12A1F;--ccv:#E03A2F;--ccp:#D12A1F;--ccpt:#fff;}
[data-cur="consigne"]   {--cc:#B18604;--cct:#896803;--ccv:#F2B705;--ccp:#F2B705;--ccpt:#1D1D1F;}
[data-cur="interaction"]{--cc:#1D4FD7;--cct:#1D4FD7;--ccv:#5A80F0;--ccp:#1D4FD7;--ccpt:#fff;}
[data-cur="posture"]    {--cc:#1D9E55;--cct:#177C42;--ccv:#1D9E55;--ccp:#177C42;--ccpt:#fff;}
[data-cur="support"]    {--cc:#DA7021;--cct:#A95719;--ccv:#E07B2F;--ccp:#E07B2F;--ccpt:#1D1D1F;}
[data-cur="evaluation"] {--cc:#7A3FC1;--cct:#7A3FC1;--ccv:#A070E8;--ccp:#7A3FC1;--ccpt:#fff;}
[data-cur="contexte"]   {--cc:#0E7C86;--cct:#0E7881;--ccv:#14A3AF;--ccp:#0E7C86;--ccpt:#fff;}
[data-cur="validation"] {--cc:#D1356E;--cct:#C92E66;--ccv:#E5578A;--ccp:#C92E66;--ccpt:#fff;}
[data-cur="correction"] {--cc:#191714;--cct:#191714;--ccv:#B9B9BE;--ccp:#191714;--ccpt:#fff;}

/* mots et titres colorés */
b[data-cur],strong[data-cur],span[data-cur].em-mot{color:var(--cct)!important;font-weight:700;}
.em-carte[data-cur] h3{color:var(--cc)!important;}
.em-carte[data-cur] .em-pastille{background:var(--ccp);color:var(--ccpt);}
.em-carte[data-cur]:hover{box-shadow:inset 0 -4px 0 var(--cc);}

/* fiches de la documentation : la page prend la couleur de son curseur */
body[data-cur] .doc-section h2,body[data-cur] .doc-content h2,body[data-cur] main h2{color:var(--cc)!important;}
body[data-cur] .niveau-block h3{color:var(--cc)!important;}
body[data-cur] .doc-section p strong,body[data-cur] .niveau-block p strong{color:var(--cct)!important;}
body[data-cur] .curseur-header .curseur-badge{background:var(--ccp)!important;color:var(--ccpt)!important;}
body[data-cur] .curseur-header::before{content:"";position:absolute;left:28px;right:28px;bottom:0;height:8px;border-radius:8px 8px 0 0;background:var(--ccv);}
body[data-cur] .niveau-block.niveau-1,body[data-cur] .niveau-block.niveau-2,body[data-cur] .niveau-block.niveau-3,body[data-cur] .niveau-block.niveau-4{border-left-color:var(--cc)!important;}
body[data-cur] .exemple-box,body[data-cur] .definition-box,body[data-cur] .highlight-box,body[data-cur] .info-box{border-left-color:var(--cc)!important;}
body[data-cur] .doc-toc a:hover,body[data-cur] .quick-nav a:hover{color:var(--cct)!important;}

/* sommaire de la documentation : chaque carte à sa couleur */
.curseur-mini-card.curseur-1{--cc:#E03A2F;--ccp:#D12A1F;--ccpt:#fff;} .curseur-mini-card.curseur-2{--cc:#B18604;--ccp:#F2B705;--ccpt:#1D1D1F;}
.curseur-mini-card.curseur-3{--cc:#1D4FD7;--ccp:#1D4FD7;--ccpt:#fff;} .curseur-mini-card.curseur-4{--cc:#1D9E55;--ccp:#177C42;--ccpt:#fff;}
.curseur-mini-card.curseur-5{--cc:#DA7021;--ccp:#E07B2F;--ccpt:#1D1D1F;} .curseur-mini-card.curseur-6{--cc:#7A3FC1;--ccp:#7A3FC1;--ccpt:#fff;}
.curseur-mini-card.curseur-7{--cc:#0E7C86;--ccp:#0E7C86;--ccpt:#fff;} .curseur-mini-card.curseur-8{--cc:#D1356E;--ccp:#C92E66;--ccpt:#fff;}
.curseur-mini-card.curseur-9{--cc:#191714;--ccp:#191714;--ccpt:#fff;}
.curseur-mini-card[class*="curseur-"] .curseur-numero{background:var(--ccp,var(--em-encre))!important;color:var(--ccpt,#fff)!important;}
.curseur-mini-card[class*="curseur-"] .curseur-nom,.curseur-mini-card[class*="curseur-"] h3{color:var(--cc,var(--em-encre))!important;}

/* analyse : noms de curseurs colorés (marqués par empan-curseurs.js) */
#curseursTable td [data-cur],#curseursTable td[data-cur]{color:var(--cct)!important;}
.suggestion-curseur[data-cur]{background:var(--ccp)!important;color:var(--ccpt)!important;}
.mix-nom[data-cur]{box-shadow:inset 0 -3px 0 var(--ccv);padding-bottom:4px;}
body[data-cur] .continuum-line{background:linear-gradient(to right,color-mix(in srgb,var(--ccv) 25%,#fff),var(--cc))!important;}
body[data-cur] .doc-section > h3,body[data-cur] .doc-content > h3{color:var(--cc)!important;}
body[data-cur] .doc-toc a.active,body[data-cur] .doc-toc a[aria-current]{color:var(--cct)!important;}
.curseur-link{background:#fff!important;border:0!important;border-radius:10px!important;box-shadow:inset 0 0 0 1px var(--em-filet)!important;color:var(--em-encre)!important;}
.curseur-link:hover{background:var(--em-gris-2)!important;}
.curseur-link.active{background:var(--em-encre)!important;color:#fff!important;box-shadow:none!important;}
body[data-cur] .curseur-link.active{background:var(--cct)!important;}
/* liste « Les 9 curseurs » des fiches : chaque lien porte la couleur de son curseur */
.curseur-link[data-cur]{color:var(--cct)!important;font-weight:600!important;box-shadow:inset 4px 0 0 var(--cc),inset 0 0 0 1px var(--em-filet)!important;padding-left:16px!important;}
.curseur-link[data-cur]:hover{background:color-mix(in srgb,var(--cc) 8%,#fff)!important;}
.curseur-link[data-cur].active,body[data-cur] .curseur-link[data-cur].active{background:var(--ccp)!important;color:var(--ccpt)!important;box-shadow:none!important;}

/* Encadrés hérités peints avec « background: var(--accent-N) » dans le HTML :
   un fond doux, jamais un aplat de couleur. Sur une fiche, la teinte de son curseur. */
:is([style*="background: var(--accent"],[style*="background:var(--accent"],[style*="background-color: var(--accent"]):not(button):not(a):not(.btn-primary){
  background:var(--em-gris)!important;color:var(--em-encre)!important;border:0!important;border-radius:16px!important;box-shadow:none!important;}
body[data-cur] :is([style*="background: var(--accent"],[style*="background:var(--accent"],[style*="background-color: var(--accent"]):not(button):not(a){
  background:color-mix(in srgb,var(--cc) 7%,#fff)!important;box-shadow:inset 4px 0 0 var(--cc)!important;border-radius:0 16px 16px 0!important;}
:is([style*="background: var(--accent"],[style*="background:var(--accent"]) :is(p,li,span,em){color:var(--em-encre)!important;}
body[data-cur] [style*="border-left"][style*="var(--accent"]{border-left-color:var(--cc)!important;}
body[data-cur] [style*="color: var(--accent-1)"],body[data-cur] [style*="color:var(--accent-1)"]{color:var(--cct)!important;}

/* Règles héritées qui peignaient avec --accent-N (relevées automatiquement le 15/10/2026) */
.data-badge,.etape-num,.fading-num,.niveau-numero,.parcours-1::before,.parcours-2::before,.parcours-3::before,.source-mini-num,.strategie-list li::before,.theorie-auteur{background:var(--ccp,var(--em-encre))!important;color:var(--ccpt,#fff)!important;border-color:transparent!important;box-shadow:none!important;}
:is(.cac-step.highlight,.doc-toc a:hover, .quick-nav a:hover,.search-result-item:hover,sup.ref:hover){background:var(--em-gris)!important;color:var(--em-encre)!important;}
body[data-cur] :is(.cac-step.highlight,.doc-toc a:hover, .quick-nav a:hover,.search-result-item:hover,sup.ref:hover){background:color-mix(in srgb,var(--cc) 10%,#fff)!important;}
:is(.alpha-nav a,.cac-arrow,.charge-card h5,.citation-popup-link,.critere-card h5,.effet-value,.explainer strong,.letter-anchor,.nuance-box h4,.ref,.stat-num,.threshold-label,sup.ref){color:var(--cct,var(--em-encre))!important;}
body[data-cur] :is(.auteur-contribution,.cac-step.highlight,.curseur-link.active,.doc-section h2,.editable-title:focus,.evidence-desc,.exemple-box,.experience-box,.explainer,.filter-btn:hover, .filter-btn.active,.glossaire-search:focus,.letter-anchor,.nuance-box,.photo-drop-zone:hover,.principe-box,.section-title,.threshold-line){border-color:var(--cc)!important;}

/* « Le curseur de … en graphique » : même cadre sur les 9 fiches */
.em-graphique .em-graphique-cadre{position:relative;height:340px;background:#fff;border-radius:20px;box-shadow:0 0 0 1px var(--em-filet);padding:20px 20px 12px;margin:18px 0 0;}
.em-graphique p{color:var(--em-doux)!important;max-width:70ch;}
@media (max-width:600px){.em-graphique .em-graphique-cadre{height:300px;padding:12px 8px 6px;}}
[hidden]{display:none!important;}
/* graphiques secondaires (ex. tailles d'effet du Contexte) : compacts */
.em-cadre-petit{position:relative;height:240px;max-width:680px;background:#fff;border-radius:20px;box-shadow:0 0 0 1px var(--em-filet);padding:14px 16px 8px;margin:24px 0;}
@media (max-width:600px){.em-cadre-petit{height:220px;padding:10px 6px 4px;}}
/* écran d'attente de l'analyse */
.loader > p:not(.loader-hint){font-size:clamp(20px,2.4vw,26px)!important;font-weight:700!important;letter-spacing:-.01em;color:var(--em-encre)!important;margin:6px 0 4px!important;}
.loader .loader-hint{font-size:16px!important;color:var(--em-doux)!important;}
