/* Guide de Souveraineté Numérique : feuille de style commune à toutes les pages (V26) 
   Inspirée de la couverture : ciel, montagnes, lac, lever de soleil doré, cadenas lumineux. */
:root{
  --fond:#fbf8f1;--carte:#ffffff;--texte:#1b2430;--doux:#566270;--ligne:#e3e2dc;
  --marine:#13325a;--bleu:#1f5fa6;--cyan:#2fa8e8;--or:#f4a21a;--or-clair:#ffd76a;--creme:#fff4d8;
  --survol:#eef6ff;--sur-bouton:#ffffff;--lueur:rgba(47,168,232,.45);
  --ciel:radial-gradient(circle at 85% 18%,rgba(255,214,110,.95) 0,rgba(255,190,80,.55) 9%,rgba(255,200,120,0) 30%),
         linear-gradient(180deg,#8fc8f2 0%,#bfe0f7 38%,#fde8bd 78%,#fbd79a 100%);
  --paysage:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1440 260%22 preserveAspectRatio=%22none%22%3E %3Cpath d=%22M0 170 L120 95 L190 135 L300 40 L410 140 L500 90 L600 150 L720 60 L840 150 L930 100 L1040 160 L1150 70 L1260 140 L1350 105 L1440 150 L1440 260 L0 260Z%22 fill=%22%239db9d8%22/%3E %3Cpath d=%22M300 40 L335 72 L318 70 L300 88 L284 70 L268 74Z M720 60 L752 90 L736 88 L720 104 L705 90 L690 92Z M1150 70 L1180 98 L1165 96 L1150 110 L1136 97 L1122 100Z%22 fill=%22%23ffffff%22 opacity=%22.85%22/%3E %3Cpath d=%22M0 200 L90 150 L180 185 L280 130 L380 190 L470 160 L560 195 L660 150 L760 200 L860 165 L960 205 L1060 160 L1160 200 L1260 170 L1360 205 L1440 180 L1440 260 L0 260Z%22 fill=%22%235f8fbf%22/%3E %3Cpath d=%22M0 222 C120 205 200 215 300 210 C420 204 520 222 640 214 C760 206 880 224 1000 216 C1120 208 1240 224 1440 212 L1440 260 L0 260Z%22 fill=%22%232f6b4f%22/%3E %3Cpath d=%22M0 236 C200 230 400 240 720 236 C1000 232 1240 240 1440 236 L1440 260 L0 260Z%22 fill=%22%237fb6dd%22/%3E %3Cpath d=%22M120 246 h160 M520 250 h220 M980 246 h180%22 stroke=%22%23ffffff%22 stroke-width=%222%22 opacity=%22.6%22/%3E %3C/svg%3E");
}
@media (prefers-color-scheme:dark){:root{
  --fond:#0f141b;--carte:#17202b;--texte:#e9edf1;--doux:#a6b1bd;--ligne:#26313d;
  --marine:#0b1d33;--bleu:#7fb6ec;--cyan:#56c2f5;--or:#f6b53c;--or-clair:#ffd76a;--creme:#33290f;
  --survol:#1c2834;--sur-bouton:#0f1a26;--lueur:rgba(86,194,245,.35);
  --ciel:radial-gradient(circle at 85% 18%,rgba(255,214,110,.35) 0,rgba(255,190,80,.15) 9%,rgba(255,200,120,0) 28%),
         radial-gradient(1px 1px at 20% 20%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 60% 12%,#fff 50%,transparent 51%),
         radial-gradient(1.5px 1.5px at 42% 30%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 75% 40%,#fff 50%,transparent 51%),
         linear-gradient(180deg,#0c1a2e 0%,#16304f 55%,#3b3a3a 100%);
  --paysage:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1440 260%22 preserveAspectRatio=%22none%22%3E %3Cpath d=%22M0 170 L120 95 L190 135 L300 40 L410 140 L500 90 L600 150 L720 60 L840 150 L930 100 L1040 160 L1150 70 L1260 140 L1350 105 L1440 150 L1440 260 L0 260Z%22 fill=%22%232b4566%22/%3E %3Cpath d=%22M300 40 L335 72 L318 70 L300 88 L284 70 L268 74Z M720 60 L752 90 L736 88 L720 104 L705 90 L690 92Z M1150 70 L1180 98 L1165 96 L1150 110 L1136 97 L1122 100Z%22 fill=%22%23ffffff%22 opacity=%22.55%22/%3E %3Cpath d=%22M0 200 L90 150 L180 185 L280 130 L380 190 L470 160 L560 195 L660 150 L760 200 L860 165 L960 205 L1060 160 L1160 200 L1260 170 L1360 205 L1440 180 L1440 260 L0 260Z%22 fill=%22%231f3552%22/%3E %3Cpath d=%22M0 222 C120 205 200 215 300 210 C420 204 520 222 640 214 C760 206 880 224 1000 216 C1120 208 1240 224 1440 212 L1440 260 L0 260Z%22 fill=%22%2316302a%22/%3E %3Cpath d=%22M0 236 C200 230 400 240 720 236 C1000 232 1240 240 1440 236 L1440 260 L0 260Z%22 fill=%22%2322405f%22/%3E %3Cpath d=%22M120 246 h160 M520 250 h220 M980 246 h180%22 stroke=%22%23ffffff%22 stroke-width=%222%22 opacity=%22.6%22/%3E %3C/svg%3E");
}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--fond);color:var(--texte);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--bleu)}
img{max-width:100%}

/* ---------- En-tête : ciel, soleil, montagnes et lac ---------- */
.entete{position:relative;background:var(--ciel);overflow:hidden;padding-bottom:110px}
.entete::after{content:"";position:absolute;left:0;right:0;bottom:0;height:150px;background:var(--paysage) bottom/100% 100% no-repeat;pointer-events:none}
.entete-in{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:40px 16px 0;display:grid;grid-template-columns:minmax(0,1fr);gap:30px;align-items:center}
@media (min-width:780px){.entete-in{grid-template-columns:300px minmax(0,1fr);gap:52px;padding:56px 24px 0}}
.entete-court{padding-bottom:96px}
.entete-court .entete-in{grid-template-columns:minmax(0,1fr);padding-top:26px}

/* Couverture entourée d'icônes lumineuses, comme le cadenas de la couverture */
.scene{position:relative;justify-self:center;width:min(250px,64vw)}
@media (min-width:780px){.scene{width:300px}}
.scene::before{content:"";position:absolute;inset:-14% -18%;border-radius:50%;background:radial-gradient(circle,var(--lueur) 0,rgba(47,168,232,0) 65%);z-index:-1}
.couv{display:block}
.couv img{display:block;width:100%;height:auto;border-radius:12px;border:3px solid rgba(255,255,255,.75);box-shadow:0 22px 44px rgba(19,50,90,.35),0 0 0 1px rgba(19,50,90,.08);transform:rotate(-2deg);transition:transform .3s}
.couv:hover img,.couv:focus-visible img{transform:rotate(0) scale(1.03)}
.bulle{position:absolute;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  background:radial-gradient(circle at 35% 30%,#7fd3ff,#1f78c8);color:#fff;
  box-shadow:0 0 0 3px rgba(255,255,255,.7),0 0 18px var(--lueur);animation:flotte 6s ease-in-out infinite}
.bulle svg{width:22px;height:22px}
.b1{top:-16px;left:-22px}.b2{top:28%;right:-28px;animation-delay:-1.5s}.b3{bottom:22%;left:-30px;animation-delay:-3s}.b4{bottom:-14px;right:12%;animation-delay:-4.5s}
@keyframes flotte{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media (prefers-reduced-motion:reduce){.bulle{animation:none}.couv img{transition:none}}

.ruban{display:inline-block;margin:0 0 16px;padding:6px 16px;border-radius:10px;background:var(--marine);color:#fff;font-weight:700;font-size:.92rem;
  border:2px solid var(--or);box-shadow:0 4px 12px rgba(19,50,90,.25)}
.ruban b{color:var(--or-clair)}
h1{margin:0 0 14px;font-size:clamp(2rem,5vw,3.2rem);line-height:1.04;font-weight:900;letter-spacing:-.01em;color:var(--marine);text-transform:uppercase}
@media (prefers-color-scheme:dark){h1{color:#eaf3ff}}
.or{background:linear-gradient(180deg,#ffd45c 0%,#f7a51b 55%,#e2780c 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 2px 0 rgba(19,50,90,.25))}
.intro{font-size:1.1rem;color:var(--texte);opacity:.85;margin:0 0 22px;max-width:36em}
.boutons{display:flex;flex-wrap:wrap;gap:10px}
.bouton{display:inline-block;padding:11px 20px;border-radius:999px;border:2px solid var(--marine);color:var(--marine);background:rgba(255,255,255,.85);font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s}
.bouton:hover,.bouton:focus-visible{transform:translateY(-2px);box-shadow:0 6px 16px rgba(19,50,90,.2)}
.bouton.principal{background:linear-gradient(180deg,#ffcf4d,#f39a12);border-color:#d97f06;color:#2a1a00}
@media (prefers-color-scheme:dark){.bouton{background:rgba(15,26,38,.75);color:#eaf3ff;border-color:#7fb6ec}.bouton.principal{color:#2a1a00;border-color:#f6b53c}}
h2[id]{scroll-margin-top:16px}
.video-lien{display:inline-flex;align-items:center;gap:8px}
.ico-play{width:16px;height:16px;flex:none}
.retour{display:inline-block;margin-bottom:14px;font-weight:700;text-decoration:none;color:var(--marine);background:rgba(255,255,255,.75);padding:6px 14px;border-radius:999px}
@media (prefers-color-scheme:dark){.retour{color:#eaf3ff;background:rgba(15,26,38,.7)}}

/* ---------- Contenu ---------- */
main{max-width:1080px;margin:0 auto;padding:8px 16px 40px}
@media (min-width:780px){main{padding:8px 24px 48px}}
.etroit{max-width:920px}
h2{margin:44px 0 16px;font-size:1.25rem}
h2 span{display:inline-flex;align-items:center;gap:10px;padding:8px 18px 8px 14px;border-radius:12px;background:var(--marine);color:#fff;border:2px solid var(--or);box-shadow:0 4px 12px rgba(19,50,90,.18)}
h2 span::before{content:"";width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe08a,#f39a12);box-shadow:0 0 8px rgba(244,162,26,.8)}
p{margin:0 0 12px}
ul{list-style:none;margin:0;padding:0}

/* Méthode en 4 vagues */
.vagues{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.vague{position:relative;overflow:hidden;padding:16px 16px 22px;border-radius:14px;color:#fff;box-shadow:0 6px 16px rgba(19,50,90,.18)}
.vague::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-18px;height:40px;border-radius:50%;background:rgba(255,255,255,.18)}
.vague h3{margin:0 0 2px;font-size:1.05rem}
.vague .duree{display:block;font-size:.85rem;opacity:.85;margin-bottom:8px}
.vague a{color:#fff;font-weight:700;text-decoration:none;background:rgba(255,255,255,.18);border-radius:999px;padding:2px 9px;margin:0 4px 6px 0;display:inline-block}
.vague a:hover,.vague a:focus-visible{background:rgba(255,255,255,.35)}
.v0{background:linear-gradient(150deg,#6b7f95,#3e5268)}.v1{background:linear-gradient(150deg,#2fa8e8,#1f6fb8)}
.v2{background:linear-gradient(150deg,#1f6fb8,#174a87)}.v3{background:linear-gradient(150deg,#2e8b6a,#1d5e48)}
.v4{background:linear-gradient(150deg,#f39a12,#c96a05)}

/* Guides et documents */
.docs{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.docs a{display:flex;align-items:center;gap:12px;height:100%;padding:14px 16px;background:var(--carte);border:1px solid var(--ligne);border-radius:12px;text-decoration:none;font-weight:700;color:var(--texte);transition:transform .15s,box-shadow .15s,border-color .15s}
.docs a::before{content:"";flex:none;width:34px;height:34px;border-radius:10px;background:linear-gradient(180deg,#ffd45c,#f39a12);background-position:center;background-repeat:no-repeat;background-size:18px,100%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2313325a' d='M6 2h9l5 5v15H6zM14 3v5h5'/%3E%3C/svg%3E"),linear-gradient(180deg,#ffd45c,#f39a12)}
.docs a:hover,.docs a:focus-visible{transform:translateY(-2px);border-color:var(--or);box-shadow:0 8px 18px rgba(19,50,90,.12)}

/* Fiches */
.recherche{width:100%;padding:13px 16px 13px 44px;margin:0 0 14px;font:inherit;color:var(--texte);background:var(--carte);border:2px solid var(--ligne);border-radius:12px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10' cy='10' r='6' fill='none' stroke='%231f5fa6' stroke-width='2.5'/%3E%3Cpath d='M15 15l6 6' stroke='%231f5fa6' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:14px center;background-size:20px}
.recherche:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 4px var(--lueur)}
.fiches{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.fiches a{display:flex;gap:12px;align-items:center;height:100%;padding:10px 14px;background:var(--carte);border:1px solid var(--ligne);border-radius:12px;text-decoration:none;color:var(--texte);transition:transform .15s,box-shadow .15s,border-color .15s}
.fiches a:hover,.fiches a:focus-visible{transform:translateY(-2px);border-color:var(--cyan);box-shadow:0 0 0 3px var(--lueur)}
.num{flex:none;min-width:3.3em;padding:4px 8px;border-radius:8px;background:var(--marine);color:var(--or-clair);font-weight:800;font-size:.9rem;text-align:center;font-variant-numeric:tabular-nums}
.aucune{color:var(--doux);display:none}

/* Page ateliers */
.chiffres{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}
.chiffre{background:var(--carte);border:1px solid var(--ligne);border-top:4px solid var(--or);border-radius:12px;padding:14px 16px}
.chiffre b{display:block;font-size:1.7rem;line-height:1.1;font-weight:900;color:var(--bleu)}
.chiffre span{color:var(--doux);font-size:.92rem}
.ateliers{display:grid;gap:14px}
.atelier{background:var(--carte);border:1px solid var(--ligne);border-radius:14px;padding:18px 20px 18px 22px;position:relative;overflow:hidden}
.atelier::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--cyan),var(--bleu) 50%,var(--or))}
.atelier h3{margin:0 0 4px;font-size:1.12rem;color:var(--marine)}
@media (prefers-color-scheme:dark){.atelier h3{color:#eaf3ff}}
.quand{margin:0 0 10px;font-weight:700}
.quand small{display:block;font-weight:400;color:var(--doux);font-size:.92rem}
.carte{display:inline-flex;align-items:center;gap:4px;font-weight:600;white-space:nowrap}
.carte::before{content:"";width:14px;height:14px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23e2780c' d='M12 2a7 7 0 0 0-7 7c0 5 7 13 7 13s7-8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") center/contain no-repeat}
.atelier ul{list-style:disc;margin:6px 0 10px;padding-left:20px}
.atelier li{margin-bottom:3px}
.apporter{font-size:.93rem;color:var(--doux);margin:0}
.alerte{margin:10px 0 0;padding:10px 14px;border-radius:10px;background:#fff1e6;border-left:4px solid #e2780c;font-size:.93rem;color:#4a2500}
@media (prefers-color-scheme:dark){.alerte{background:#3a2412;color:#ffd9b8}}
.places{display:inline-block;background:var(--creme);border:1px solid var(--or);border-radius:999px;padding:1px 10px;font-size:.82rem;font-weight:700;margin-left:6px;vertical-align:middle}
.encadre{background:var(--creme);border:2px solid var(--or);border-radius:14px;padding:16px 20px;margin-top:18px}
.video{position:relative;aspect-ratio:16/9;width:100%;max-width:560px;border-radius:14px;overflow:hidden;margin:6px 0 10px;border:3px solid var(--or);
  background:#f6ecd6 url("/miniature-video.jpg") center/cover no-repeat;box-shadow:0 8px 20px rgba(19,50,90,.15)}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.affiche{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:flex-end;padding:12px;cursor:pointer;background:rgba(19,50,90,0);transition:background .2s}
.affiche:hover{background:rgba(19,50,90,.12)}
.affiche h3{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lecture{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;font-size:.92rem !important;border:0;border-radius:999px;background:linear-gradient(180deg,#ffcf4d,#f39a12);color:#2a1a00;font:inherit;font-weight:800;cursor:pointer;
  box-shadow:0 0 0 4px rgba(255,255,255,.85),0 6px 20px rgba(19,50,90,.35);transition:transform .15s}
.affiche:hover .lecture,.lecture:focus-visible{transform:scale(1.06)}
.lecture svg{width:16px;height:16px}
@media (max-width:520px){.affiche{padding:8px}.lecture{padding:6px 12px;font-size:.82rem !important}}
.avert{font-size:.88rem;color:var(--doux);max-width:560px}

/* ---------- Pied de page : forêt et lac ---------- */
.pied{position:relative;margin-top:30px;padding:150px 16px 28px;color:#dfe8f2;font-size:.88rem;text-align:center;
  background:var(--paysage) top/100% 124px no-repeat,linear-gradient(180deg,transparent 0,transparent 122px,var(--marine) 122px)}
.pied p{margin:0 auto;max-width:46em}
.pied b{color:var(--or-clair)}
.mail{font-weight:700;white-space:nowrap}.pied .mail{color:var(--or-clair)}
.pied small,.encadre small,.partage small{font-size:.85em;opacity:.85}
.partage{margin-top:18px;padding:18px 20px 18px 74px;border-radius:14px;background:var(--carte);border:2px dashed var(--bleu);position:relative}
.partage::before{content:"";position:absolute;left:18px;top:18px;width:40px;height:40px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#7fd3ff,#1f78c8) ;box-shadow:0 0 14px var(--lueur);
  -webkit-mask:none}
.partage::after{content:"cc";position:absolute;left:18px;top:18px;width:40px;height:40px;display:grid;place-items:center;color:#fff;font-weight:900;font-size:1.05rem;letter-spacing:-.04em}
@media (max-width:520px){.partage{padding-left:20px;padding-top:70px}}

/* Bouton désactivé (inscriptions pas encore ouvertes) */
.bouton.inactif{opacity:.6;cursor:not-allowed;filter:grayscale(.35)}
.bouton.inactif:hover{transform:none;box-shadow:none}

/* Par où commencer ? : parcours par profil */
.profils{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}
.profil,.filtres button{font:inherit;font-weight:700;font-size:.92rem;padding:8px 16px;border-radius:999px;border:2px solid var(--marine);background:var(--carte);color:var(--marine);cursor:pointer}
.profil[aria-pressed="true"],.filtres button[aria-pressed="true"]{background:var(--marine);color:#fff;border-color:var(--or)}
.profil:hover,.filtres button:hover,.profil:focus-visible,.filtres button:focus-visible{box-shadow:0 0 0 3px var(--lueur);outline:none}
@media (prefers-color-scheme:dark){.profil,.filtres button{color:#eaf3ff;border-color:#7fb6ec}.profil[aria-pressed="true"],.filtres button[aria-pressed="true"]{background:#1f5fa6;color:#fff;border-color:var(--or)}}
.parcours{background:var(--carte);border:1px solid var(--ligne);border-top:5px solid var(--or);border-radius:14px;padding:16px 18px;margin-bottom:12px}
.parcours h3{margin:0 0 2px;font-size:1.1rem;color:var(--marine)}
.les-parcours.onglets .parcours h3{display:none}
@media (prefers-color-scheme:dark){.parcours h3{color:#eaf3ff}}
.parcours .desc{margin:0 0 12px;color:var(--doux)}
.etapes{counter-reset:etape;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}
.etapes li{counter-increment:etape}
.etapes a{display:flex;align-items:center;gap:10px;height:100%;padding:8px 12px;border:1px solid var(--ligne);border-radius:10px;text-decoration:none;color:var(--texte);background:var(--fond)}
.etapes a::before{content:counter(etape);flex:none;width:1.9em;height:1.9em;display:grid;place-items:center;border-radius:50%;background:var(--marine);color:var(--or-clair);font-weight:800;font-size:.85rem}
.etapes a:hover,.etapes a:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 3px var(--lueur)}
.etapes .lib{flex:1;line-height:1.25}
.etapes .lib b{color:var(--marine)}
@media (prefers-color-scheme:dark){.etapes .lib b{color:#7fb6ec}}

/* Je veux quitter… */
.choix-quitter{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px;font-weight:800;color:var(--marine)}
@media (prefers-color-scheme:dark){.choix-quitter{color:#eaf3ff}}
.choix-quitter select{font:inherit;font-weight:600;min-width:min(100%,320px);padding:10px 14px;border-radius:12px;border:2px solid var(--marine);background:var(--carte);color:var(--texte)}
.choix-quitter select:focus-visible{outline:none;box-shadow:0 0 0 3px var(--lueur)}
@media (prefers-color-scheme:dark){.choix-quitter select{border-color:#7fb6ec}}
.quitter{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.quitter.un-seul{grid-template-columns:1fr;max-width:760px}
.quitter li{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:var(--carte);border:1px solid var(--ligne);border-left:5px solid var(--cyan);border-radius:12px}
.quitter .service{font-weight:800;color:var(--marine)}
@media (prefers-color-scheme:dark){.quitter .service{color:#eaf3ff}}
.quitter .vers{display:flex;flex-direction:column;gap:8px}
.quitter a{display:flex;align-items:center;gap:12px;padding:8px 12px;border:1px solid var(--ligne);border-radius:10px;background:var(--fond);color:var(--texte);text-decoration:none}
.quitter a:hover,.quitter a:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 3px var(--lueur)}

/* Difficulté des fiches */
.etoiles{flex:none;margin-left:auto;color:var(--or);font-size:.85rem;letter-spacing:1px;white-space:nowrap}
.etoiles .vide{color:var(--ligne)}
@media (prefers-color-scheme:dark){.etoiles .vide{color:#3a4654}}
.fiches .titre{flex:1}
.filtres{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
@media (prefers-color-scheme:dark){.etapes a::before{background:#1f5fa6;color:#fff}}

/* Commencez aujourd'hui */
.aujourdhui{background:var(--creme);border:2px solid var(--or);border-radius:16px;padding:6px 20px 14px;margin:8px 0 10px}
.aujourdhui h2{margin-top:14px}
.gestes{list-style:none;counter-reset:geste;margin:0 0 10px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
.gestes li{counter-increment:geste;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;background:var(--carte);border:1px solid var(--ligne);border-radius:12px;padding:12px 14px}
.gestes li::before{content:counter(geste);flex:none;width:1.8em;height:1.8em;display:grid;place-items:center;border-radius:50%;background:var(--or);color:#2a1a00;font-weight:900}
.gestes .avant{text-decoration:line-through;text-decoration-color:var(--or);color:var(--doux)}
.gestes .fleche{color:var(--or);font-weight:900}
.gestes a{margin-left:auto;font-weight:800;font-size:.88rem;color:var(--or-clair);background:var(--marine);border-radius:999px;padding:2px 10px;text-decoration:none}
.aujourdhui .conseil{margin:0;color:var(--texte)}

/* Suivi de progression dans les vagues */
.suivi-fiche{display:inline-flex;align-items:center;gap:3px;margin:0 4px 6px 0}
.suivi-fiche .fait{width:1.05em;height:1.05em;margin:0;accent-color:var(--or);cursor:pointer}
.suivi-fiche a{margin:0}
.progression{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:.82rem;font-weight:700}
.progression .barre{flex:1;height:7px;border-radius:999px;background:rgba(255,255,255,.28);overflow:hidden}
.progression .barre span{display:block;height:100%;width:0;background:#fff;transition:width .3s}
.vague.terminee h3::after{content:" ✓";color:var(--or-clair)}
.suivi-note{font-size:.88rem;color:var(--doux)}
.lien-bouton{font:inherit;color:var(--bleu);background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}

/* Glossaire */
.phrase{margin:4px 0 18px;padding:16px 22px;background:var(--marine);color:#fff;border-left:6px solid var(--or);border-radius:14px}
.phrase p{margin:0 0 4px;font-size:1.2rem;font-weight:800}
.phrase cite{color:var(--or-clair);font-style:normal;font-size:.85rem}
.index-notions{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 6px}
.index-notions a{font-size:.85rem;padding:3px 10px;border-radius:999px;border:1px solid var(--ligne);background:var(--carte);color:var(--texte);text-decoration:none}
.index-notions a:hover,.index-notions a:focus-visible{border-color:var(--cyan)}
.notion{background:var(--carte);border:1px solid var(--ligne);border-left:5px solid var(--cyan);border-radius:14px;padding:14px 18px;margin:0 0 12px;scroll-margin-top:12px}
.notion h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0 0 8px;font-size:1.15rem;color:var(--marine)}
.notion h3 i{font-weight:400;font-size:.9rem;color:var(--doux)}
@media (prefers-color-scheme:dark){.notion h3{color:#eaf3ff}}
.notion .courte{margin:0 0 8px;font-size:1.05rem;font-weight:700}
.notion .image{margin:0 0 8px;padding:8px 12px;background:var(--creme);border-radius:10px}
.notion .retenir{margin:0 0 8px;padding:8px 12px;border:2px dashed var(--or);border-radius:10px}
.liees p{margin:8px 0 6px}
.liees ul{list-style:none;margin:0 0 6px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px}
.liees a{display:flex;gap:10px;align-items:center;height:100%;padding:6px 10px;border:1px solid var(--ligne);border-radius:10px;background:var(--fond);color:var(--texte);text-decoration:none;font-size:.92rem}
.liees a:hover,.liees a:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 3px var(--lueur)}
.notion .entier{margin-top:6px}
.notion .entier>summary{cursor:pointer;font-weight:700;color:var(--bleu)}
/* Glossaire replié (V27) : titre et définition courte visibles, le reste au clic */
.notion{padding:0}
.pli>summary{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;padding:14px 18px;cursor:pointer;list-style:none;border-radius:14px}
.pli>summary::-webkit-details-marker{display:none}
.pli>summary::before{content:"";grid-row:1;grid-column:1;align-self:center;width:9px;height:9px;border-right:3px solid var(--bleu);border-bottom:3px solid var(--bleu);transform:rotate(-45deg);transition:transform .15s}
.pli[open]>summary::before{transform:rotate(45deg)}
.pli>summary>*{grid-column:2}
.pli>summary h3{margin:0 0 4px}
.pli>summary .courte{display:block;margin:0;font-weight:400;font-size:1rem}
.pli>summary .ouvrir{margin-top:4px;font-size:.9rem;font-weight:700;color:var(--bleu)}
.pli[open]>summary .ouvrir{display:none}
.pli>summary:hover h3,.pli>summary:focus-visible h3{text-decoration:underline;text-underline-offset:3px}
.pli>summary:focus-visible{outline:3px solid var(--lueur);outline-offset:2px}
.pli>.corps{padding:0 18px 14px 39px}
.pli[open]>summary .courte{font-weight:700}
@media print{.pli>summary::before,.pli>summary .ouvrir{display:none}.pli>.corps{padding-left:18px}}
.notion .detail{padding:4px 0 0}
.notion .detail p,.notion .detail li{line-height:1.5}

/* Pourquoi ce guide */
.frise{list-style:none;margin:6px 0 18px;padding:0 0 0 22px;border-left:4px solid var(--or)}
.frise>li{position:relative;margin:0 0 18px}
.frise>li::before{content:"";position:absolute;left:-32px;top:6px;width:16px;height:16px;border-radius:50%;background:var(--marine);border:3px solid var(--or)}
.epoque{display:inline-block;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--bleu)}
.frise h3{margin:2px 0 6px;color:var(--marine)}
@media (prefers-color-scheme:dark){.frise h3{color:#eaf3ff}}
.choc{font-size:1.25rem;font-weight:900;color:var(--marine)}
@media (prefers-color-scheme:dark){.choc{color:var(--or-clair)}}
.apathie .sauf{margin-bottom:0;font-size:1.1rem}
.frise ul{list-style:disc;padding-left:1.2em}
.atouts{padding-left:1.2em}.atouts li{margin:0 0 6px}
.conseil .devise{font-weight:900;font-size:1.1rem;color:var(--marine)}
@media (prefers-color-scheme:dark){.conseil .devise{color:var(--or-clair)}}
.recit p{line-height:1.6}

/* Page « Passer à Linux » */
.linux code{font-family:ui-monospace,"DejaVu Sans Mono",monospace;font-size:.9em;background:var(--creme);border:1px solid var(--ligne);border-radius:6px;padding:1px 5px}
.linux pre{margin:8px 0;overflow-x:auto;background:#0b1d33;color:#eaf3ff;border-radius:10px;padding:12px 14px}
.linux pre code{background:none;border:0;padding:0;color:inherit;font-size:.88rem;white-space:pre}
.chemin{list-style:none;margin:6px 0 4px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}
.chemin a{display:flex;flex-direction:column;gap:2px;height:100%;padding:12px 14px;border-radius:12px;background:var(--marine);color:#fff;text-decoration:none;border:2px solid transparent}
.chemin a:hover,.chemin a:focus-visible{border-color:var(--or)}
.chemin span:not(.etape-num){font-size:.85rem;color:#cfe0f2}
.etape-num{width:1.8em;height:1.8em;display:grid;place-items:center;border-radius:50%;background:var(--or);color:#2a1a00;font-weight:900;margin-bottom:4px}
.trois,.quatre,.deux,.outils-l,.types{display:grid;gap:10px;margin:8px 0}
.trois{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.quatre{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.deux{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.outils-l{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.types{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.carte-l{background:var(--carte);border:1px solid var(--ligne);border-top:4px solid var(--cyan);border-radius:12px;padding:12px 16px}
.carte-l h3{margin:0 0 6px;font-size:1.02rem;color:var(--marine)}
.carte-l h3 small{font-weight:600;color:var(--doux);font-size:.8rem}
.carte-l p{margin:0 0 6px}
@media (prefers-color-scheme:dark){.carte-l h3{color:#eaf3ff}}
.type-effacer{border-top-color:var(--or)}
.note-l{color:var(--doux);font-size:.95rem}
.alerte-l{background:var(--creme);border:2px solid var(--or);border-radius:12px;padding:12px 16px;margin:8px 0 12px}
.sous-titre{margin:26px 0 10px;font-size:1.1rem;color:var(--marine)}
@media (prefers-color-scheme:dark){.sous-titre{color:#eaf3ff}}
.choix-l{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:6px 0 10px;font-weight:800;color:var(--marine)}
@media (prefers-color-scheme:dark){.choix-l{color:#eaf3ff}}
.choix-l select{font:inherit;font-weight:600;max-width:100%;padding:9px 12px;border-radius:12px;border:2px solid var(--marine);background:var(--carte);color:var(--texte)}
@media (prefers-color-scheme:dark){.choix-l select{border-color:#7fb6ec}}
.editions{margin:0 0 12px;padding-left:1.2em}
.editions.un-choix{list-style:none;padding:0}
.editions.un-choix li{background:var(--carte);border:1px solid var(--ligne);border-left:5px solid var(--or);border-radius:12px;padding:12px 16px}
.tableau-l{width:100%;border-collapse:collapse;margin:8px 0 12px;background:var(--carte);border-radius:12px;overflow:hidden;font-size:.95rem}
.tableau-l th{background:var(--marine);color:#fff;text-align:left;padding:8px 12px}
.tableau-l td{padding:8px 12px;border-top:1px solid var(--ligne);vertical-align:top}
.touche{font-size:1.05rem;background:var(--creme);border:2px dashed var(--or);border-radius:10px;padding:8px 12px}
.liste-controle{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.liste-controle label{display:flex;gap:10px;align-items:flex-start;background:var(--carte);border:1px solid var(--ligne);border-radius:10px;padding:9px 12px;cursor:pointer}
.liste-controle input{flex:none;width:1.15em;height:1.15em;margin-top:.15em;accent-color:var(--or)}
.liste-controle label:has(input:checked){border-color:var(--or);background:var(--creme)}
.actions-w{display:grid;gap:6px}
.actions-w details{background:var(--carte);border:1px solid var(--ligne);border-left:5px solid var(--bleu);border-radius:10px;padding:9px 14px}
.actions-w summary{cursor:pointer;color:var(--marine)}
@media (prefers-color-scheme:dark){.actions-w summary{color:#eaf3ff}}
.actions-w details p{margin:8px 0 4px}
.pas{margin:6px 0;padding-left:1.3em}.pas li{margin:0 0 6px}
.ecrans{counter-reset:ecran;list-style:none;margin:6px 0 12px;padding:0;display:grid;gap:6px}
.ecrans li{counter-increment:ecran;display:flex;gap:10px;align-items:baseline;background:var(--carte);border:1px solid var(--ligne);border-radius:10px;padding:9px 12px}
.ecrans li::before{content:counter(ecran);flex:none;width:1.8em;height:1.8em;display:grid;place-items:center;border-radius:50%;background:var(--marine);color:var(--or-clair);font-weight:900;font-size:.85rem;align-self:flex-start}
@media (prefers-color-scheme:dark){.ecrans li::before{background:#1f5fa6;color:#fff}}
.script-l h3{margin:0 0 6px}
.docs-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:8px}
.docs-l a{display:flex;gap:12px;align-items:center;height:100%;padding:10px 14px;background:var(--carte);border:1px solid var(--ligne);border-radius:12px;color:var(--texte);text-decoration:none}
.docs-l a:hover,.docs-l a:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 3px var(--lueur)}
.docs-l small{color:var(--doux)}

.quitter a.pas-a-pas{border-color:var(--or);background:var(--creme);font-weight:700}
/* Lexique Linux (fenêtre ouverte par un bouton) */
.lexique-tete{display:flex;align-items:center;justify-content:space-between;gap:10px}
.termes{margin:8px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}
.terme{background:var(--carte);border:1px solid var(--ligne);border-left:4px solid var(--or);border-radius:10px;padding:9px 12px}
.terme dt{font-weight:800;color:var(--marine)}
@media (prefers-color-scheme:dark){.terme dt{color:#eaf3ff}}
.terme dd{margin:3px 0 0;font-size:.93rem}
.terme .voir{font-size:.85rem;font-weight:700;white-space:nowrap}
.fenetre-lexique{width:min(960px,calc(100vw - 24px));max-height:calc(100vh - 32px);padding:0 18px 18px;border:2px solid var(--or);border-radius:16px;background:var(--fond);color:var(--texte);box-shadow:0 20px 60px rgba(0,0,0,.35)}
.fenetre-lexique::backdrop{background:rgba(11,29,51,.55)}
.fenetre-lexique .lexique-tete{position:sticky;top:0;background:var(--fond);padding-top:4px;z-index:1}
.fenetre-lexique h2{margin:14px 0 10px}
.fermer{flex:none;width:2.2em;height:2.2em;border-radius:50%;border:2px solid var(--marine);background:var(--carte);color:var(--marine);font-size:1.3rem;font-weight:800;line-height:1;cursor:pointer}
@media (prefers-color-scheme:dark){.fermer{color:#eaf3ff;border-color:#7fb6ec}}
[hidden]{display:none!important}

/* Impression : la liste des fiches et les parcours, sans les éléments interactifs */
@media print{
  :root{--fond:#fff;--carte:#fff;--texte:#000;--doux:#333;--ligne:#bbb;--creme:#fff}
  body{background:#fff;color:#000;font-size:10.5pt}
  .entete{background:none!important;padding:0!important}.entete::after,.scene,.boutons,.retour,.video,.avert,
  #la-video,.recherche,.filtres,.aucune,.profils,.choix-quitter,.suivi-note,.progression,.fait,.pied::before,.index-notions,details,script{display:none!important}
  h1{color:#000;font-size:20pt}h2 span{background:none!important;color:#000!important;border:0!important;box-shadow:none!important;padding:0}
  .les-parcours .parcours,.quitter li,.vagues li{break-inside:avoid}
  .parcours[hidden],.quitter li[hidden]{display:block!important}
  .les-parcours.onglets .parcours h3{display:block}
  .vague{color:#000!important;background:none!important;border:1px solid #999;box-shadow:none}.vague a{color:#000!important;background:none!important}
  .fiches{display:block}.fiches li{break-inside:avoid}.fiches a{border:0;padding:2px 0}
  .fiches a::after{content:" · guide.gabriel-ananda.org" attr(href);font-size:8pt;color:#555}
  .num{background:none!important;color:#000!important;border:1px solid #000}
  .pied{padding:10px 0 0!important;color:#000;background:none!important}.pied b,.pied .mail{color:#000}
  a{color:#000}
  .or{color:#000!important;-webkit-text-fill-color:#000;background:none!important}
}

/* Nouveautés */
.nouveautes{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.nouveautes a{display:flex;flex-direction:column;gap:6px;height:100%;padding:12px 14px;background:var(--carte);border:1px solid var(--ligne);border-top:4px solid var(--or);border-radius:12px;text-decoration:none;color:var(--texte)}
.nouveautes a:hover,.nouveautes a:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 3px var(--lueur)}
.nouveautes .haut{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.82rem;color:var(--doux)}
.nouveautes .sorte{font-weight:800;padding:1px 9px;border-radius:999px;background:var(--creme);color:var(--marine);border:1px solid var(--or)}
.nouveautes .sorte.neuf{background:var(--or);color:#2a1a00}
@media (prefers-color-scheme:dark){.nouveautes .sorte{color:#ffd76a}}
.nouveautes .quoi{line-height:1.3}
.nouveautes .version{font-size:.82rem;font-weight:700;color:var(--bleu)}
.nouveautes .texte{font-size:.92rem;color:var(--doux);line-height:1.4}
.badge-neuf{display:inline-block;margin-left:4px;padding:0 7px;border-radius:999px;background:var(--or);color:#2a1a00;font-size:.72rem;font-weight:800;vertical-align:middle;white-space:nowrap}

/* ---------- Glossaire : schéma « Comment tout s'emboîte » ---------- */
.emboite{margin:0 0 22px;padding:14px;background:var(--carte);border:1px solid var(--ligne);border-radius:14px}
.emboite figcaption{font-size:.9rem;color:var(--doux);margin:0 0 10px}
.emboite figcaption b{color:var(--texte)}
.emb-grille{display:grid;grid-template-columns:minmax(0,1.25fr) auto minmax(0,1fr);gap:12px;align-items:center}
.emboite .boite{border-radius:12px;padding:8px 10px 10px;border:2px solid var(--bleu);background:var(--survol)}
.emboite .boite a{font-weight:800;color:var(--marine);text-decoration:none}
@media (prefers-color-scheme:dark){.emboite .boite a{color:#eaf3ff}}
.emboite .boite a:hover,.emboite .boite a:focus-visible{text-decoration:underline}
.emboite .boite small{display:block;font-size:.8rem;color:var(--doux);line-height:1.3;margin-bottom:6px}
.emboite .b2{border-color:var(--cyan);background:var(--carte)}
.emboite .b3{border-color:var(--or);background:var(--creme)}
.emboite .b4{border-color:var(--bleu);background:var(--carte);margin-bottom:0}
.emboite .b4 small{margin-bottom:0}
.emb-fleche{display:flex;flex-direction:column;align-items:center;font-size:.75rem;color:var(--doux);text-align:center}
.emb-fleche::after{content:"→";font-size:1.8rem;line-height:1;color:var(--or)}
.emb-chaine{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.emb-chaine .boite{border-color:var(--ligne);background:var(--carte);position:relative}
.emb-chaine .boite+.boite::before{content:"↓";position:absolute;top:-19px;left:16px;color:var(--or);font-weight:800;line-height:1}
@media (max-width:700px){.emb-grille{grid-template-columns:minmax(0,1fr)}.emb-fleche::after{content:"↓"}}

/* ---------- Glossaire : quiz ---------- */
.quiz{background:var(--carte);border:1px solid var(--ligne);border-top:5px solid var(--or);border-radius:14px;padding:4px 18px 18px;margin:24px 0}
.quiz-compte{font-size:.85rem;color:var(--doux);margin:6px 0}
.quiz-question{font-weight:700;font-size:1.08rem;margin:0 0 10px}
.quiz-choix{display:grid;gap:8px}
.quiz-option{font:inherit;text-align:left;padding:10px 14px;border-radius:10px;border:2px solid var(--ligne);background:var(--fond);color:var(--texte);cursor:pointer}
.quiz-option:hover:not(:disabled),.quiz-option:focus-visible{border-color:var(--cyan)}
.quiz-option:disabled{cursor:default;opacity:.85}
.quiz-option.juste{border-color:#2e8b57;background:rgba(46,139,87,.12);opacity:1}
.quiz-option.faux{border-color:#c0392b;background:rgba(192,57,43,.12);opacity:1}
.quiz-retour{min-height:1.4em;margin:10px 0}
.quiz-retour.ok{color:#2e8b57;font-weight:700}.quiz-retour.ko{color:#c0392b;font-weight:700}
.quiz-retour a{font-weight:400;margin-left:4px}
.quiz-score{font-size:1.4rem;font-weight:800;color:var(--marine);margin:8px 0 4px}
@media (prefers-color-scheme:dark){.quiz-score{color:#eaf3ff}.quiz-retour.ok{color:#5cc49a}.quiz-retour.ko{color:#e57a66}}

/* ---------- Glossaire : lexique anglais → français ---------- */
.lex-en dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px 14px;margin:0;align-items:start}
.lex-en dl div{display:flex;flex-wrap:wrap;gap:2px 8px;align-items:baseline;padding:6px 10px;background:var(--carte);border:1px solid var(--ligne);border-radius:10px}
.lex-en dt{font-weight:800;font-style:italic}
.lex-en dd{margin:0}
.lex-en dd::before{content:"→ ";color:var(--or)}

/* ---------- Reconnaître les menaces ---------- */
.menace{background:var(--carte);border:1px solid var(--ligne);border-left:5px solid #c0392b;border-radius:14px;padding:14px 18px;margin:0 0 14px;scroll-margin-top:12px}
.menace h2{margin:0 0 6px;font-size:1.2rem;color:var(--marine)}
.menace h2 i{font-weight:400;font-size:.9rem;color:var(--doux)}
@media (prefers-color-scheme:dark){.menace h2{color:#eaf3ff}}
.menace .quoi{margin:0 0 10px}
.menace-deux{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px 18px}
.menace h3{margin:0 0 4px;font-size:.95rem}
.menace .signes h3{color:#c0392b}.menace .reflexes h3{color:#23704a}
@media (prefers-color-scheme:dark){.menace .signes h3{color:#e57a66}.menace .reflexes h3{color:#5cc49a}}
.menace ul{margin:0;padding-left:20px;list-style:disc}.menace li{margin:2px 0}
.menace .liees ul{padding-left:0;list-style:none}
.vers-notion{margin:8px 0 0;font-size:.9rem}

/* ---------- Mémo imprimable ---------- */
.page-memo{background:var(--fond)}
.memo-barre{max-width:1000px;margin:0 auto;padding:12px 16px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}
.memo{max-width:1000px;margin:0 auto 30px;padding:20px 22px;background:var(--carte);border:1px solid var(--ligne);border-radius:14px}
.memo header h1{margin:0;font-size:1.5rem;color:var(--marine)}
@media (prefers-color-scheme:dark){.memo header h1{color:#eaf3ff}}
.memo header p{margin:2px 0 12px;color:var(--doux);font-size:.9rem}
.memo-liste{columns:2 300px;column-gap:26px;margin:0;padding-left:22px;font-size:.88rem;line-height:1.32}
.memo-liste li{break-inside:avoid;margin:0 0 6px}
.memo-liste i{color:var(--doux);font-size:.85em}
.memo-phrase{margin:12px 0 4px;padding:8px 12px;border-left:5px solid var(--or);background:var(--creme);font-weight:700}
.memo-pied{margin:4px 0 0;font-size:.78rem;color:var(--doux)}
@media print{
  @page{size:A4;margin:10mm}
  .memo-barre{display:none!important}
  .page-memo{background:#fff}
  .memo{border:0;padding:0;margin:0;max-width:none}
  .memo header h1{font-size:15pt;color:#000}
  .memo-liste{font-size:10pt;line-height:1.3;columns:2;column-gap:8mm}
  .memo-liste li{margin:0 0 5pt}
  .memo-phrase{background:none;border-left:3pt solid #000;font-size:10.5pt}
  .menace,.quiz{break-inside:avoid}
  .quiz,.lex-en,.emboite{display:none!important}
}
[hidden]{display:none!important}

/* ---------- Où ranger mes fichiers ---------- */
.trois-lieux{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin:8px 0 22px}
.lieu{position:relative;background:var(--carte);border:1px solid var(--ligne);border-top:6px solid var(--bleu);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column}
.lieu.l2{border-top-color:#2e8b57;box-shadow:0 0 0 2px rgba(46,139,87,.35)}
.lieu.l3{border-top-color:#c0392b;border-color:rgba(192,57,43,.45)}
.lieu .pastille{align-self:flex-start;margin:0 0 6px;padding:1px 10px;border-radius:999px;font-size:.78rem;font-weight:800;background:rgba(31,95,166,.12);color:var(--bleu)}
.l2 .pastille{background:#23704a;color:#fff}.l3 .pastille{background:#c0392b;color:#fff}
.lieu h3{margin:0;color:var(--marine);font-size:1.15rem}
@media (prefers-color-scheme:dark){.lieu h3{color:#eaf3ff}}
.lieu .ex{margin:0 0 8px;color:var(--doux);font-size:.88rem}
.lieu .image{margin:0 0 10px;padding:6px 10px;background:var(--creme);border-radius:8px;font-size:.9rem}
.lieu dl{margin:0 0 10px;display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:.92rem}
.lieu dt{font-weight:700;color:var(--doux)}
.lieu dd{margin:0}
.lieu .verdict{margin-top:auto;font-weight:700;padding:8px 10px;border-radius:8px;font-size:.92rem}
.l1 .verdict{background:rgba(31,95,166,.1)}.l2 .verdict{background:rgba(46,139,87,.14)}
.l3 .verdict{background:rgba(192,57,43,.12);font-weight:400;border-left:4px solid #c0392b}
.l3 .verdict b{color:#c0392b}
@media (prefers-color-scheme:dark){.l3 .verdict b{color:#e57a66}}
.besoins{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px}
.besoins button{font:inherit;font-size:.92rem;padding:8px 14px;border-radius:999px;border:2px solid var(--ligne);background:var(--carte);color:var(--texte);cursor:pointer}
.besoins button[aria-pressed=true]{border-color:var(--or);background:var(--creme);font-weight:700}
.reponse{background:var(--carte);border:1px solid var(--ligne);border-left:5px solid var(--or);border-radius:14px;padding:12px 16px;margin-bottom:22px}
.reponse p{margin-top:0}
.regle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:8px 0}
.regle div{background:var(--marine);color:#fff;border-radius:14px;padding:12px;text-align:center}
.regle b{display:block;font-size:2.2rem;color:var(--or-clair);line-height:1}
@media (max-width:560px){.regle{grid-template-columns:1fr}}
[hidden]{display:none!important}

/* ---------- Parcours smartphone ---------- */
.choix-os{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 14px;padding:10px 14px;background:var(--carte);border:1px solid var(--ligne);border-radius:14px;position:sticky;top:8px;z-index:5;box-shadow:0 4px 14px rgba(0,0,0,.06)}
.choix-os span{font-weight:700}
.choix-os button{font:inherit;font-size:.92rem;padding:6px 14px;border-radius:999px;border:2px solid var(--ligne);background:var(--fond);color:var(--texte);cursor:pointer}
.choix-os button[aria-pressed=true]{border-color:var(--or);background:var(--creme);font-weight:700}
body[data-os=android] .smartphone [data-os=iphone]:not(button),body[data-os=iphone] .smartphone [data-os=android]:not(button){display:none!important}
.progression-s{margin:10px 0 18px}
.progression-s .barre{height:12px;border-radius:999px;background:var(--ligne);overflow:hidden}
.progression-s .barre span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--or),var(--or-clair));transition:width .3s}
.progression-s p{margin:4px 0 0;font-size:.9rem;color:var(--doux)}
table.analogie{width:100%;border-collapse:collapse;background:var(--carte);border:1px solid var(--ligne);border-radius:12px;overflow:hidden;margin:6px 0 8px}
table.analogie th,table.analogie td{padding:8px 12px;border-bottom:1px solid var(--ligne);text-align:left;vertical-align:top}
table.analogie th{background:var(--marine);color:#fff}
.geste{background:var(--carte);border:1px solid var(--ligne);border-left:5px solid var(--cyan);border-radius:14px;padding:14px 18px;margin:0 0 14px;scroll-margin-top:80px}
.geste.fait{border-left-color:#2e8b57}
.geste>header{display:flex;gap:12px;align-items:center;margin-bottom:8px}
.geste>header h3{margin:0;font-size:1.12rem;color:var(--marine)}
@media (prefers-color-scheme:dark){.geste>header h3{color:#eaf3ff}}
.geste>header small{color:var(--doux);font-size:.85rem}
.geste .etape-num{flex:none}
.seul-os{font-size:.72rem!important;font-weight:800;color:#fff!important;background:#23704a;border-radius:999px;padding:1px 8px;vertical-align:middle}
.os-deux{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px;margin:0 0 10px}
.os-deux p{margin:0;padding:8px 12px;border-radius:10px;background:var(--survol);font-size:.94rem}
.os-deux p>b:first-child{display:inline-block;margin-right:6px;padding:0 8px;border-radius:999px;background:var(--marine);color:#fff;font-size:.78rem}
.liste-s{margin:0 0 8px;padding-left:20px;list-style:disc}.liste-s li{margin:3px 0}
table.reglage-loc{border-collapse:collapse;margin:0 0 8px}table.reglage-loc td{padding:4px 12px 4px 0;border-bottom:1px solid var(--ligne)}
.pied-geste{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px dashed var(--ligne);font-size:.92rem}
.fait-s{display:inline-flex;gap:8px;align-items:center;font-weight:700;cursor:pointer;padding:4px 12px;border-radius:999px;border:2px solid var(--ligne);background:var(--fond)}
.fait-s input{width:1.15em;height:1.15em;accent-color:#2e8b57}
.fait-s:has(input:checked){border-color:#2e8b57;background:rgba(46,139,87,.12)}
.sms-exemple{max-width:440px;margin:0 0 10px;padding:12px;border-radius:14px;background:var(--fond);border:1px solid var(--ligne)}
.sms-titre{margin:0 0 6px;font-size:.8rem;color:var(--doux)}
.sms-bulle{margin:0;padding:10px 14px;border-radius:16px 16px 16px 4px;background:var(--survol);font-size:.95rem}
.sms-verdict{margin:8px 0 0;font-weight:800;color:#c0392b}
@media (prefers-color-scheme:dark){.sms-verdict{color:#e57a66}}
.bilan-s{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px}
.bilan-s a{display:block;padding:7px 12px;border-radius:10px;border:1px solid var(--ligne);background:var(--carte);color:var(--texte);text-decoration:none}
.bilan-s a::before{content:"☐ ";color:var(--doux)}
.bilan-s li.ok a{border-color:#2e8b57;background:rgba(46,139,87,.12)}
.bilan-s li.ok a::before{content:"✓ ";color:#2e8b57;font-weight:800}
.defi-s{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.defi-s li{padding:10px 12px;border-radius:12px;background:var(--marine);color:#fff}
.defi-s b{display:block;color:var(--or-clair)}
.deux-s{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin:8px 0 18px}
@media print{.choix-os,.progression-s,.fait-s,#raz-s{display:none!important}.geste{break-inside:avoid}}
[hidden]{display:none!important}

/* ---------- V19 : menu commun, recherche en haut de l'accueil, vagues lisibles, zones tactiles ---------- */
/* Lien d'évitement : invisible tant qu'on ne navigue pas au clavier */
.evitement{position:absolute;left:12px;top:-60px;z-index:20;padding:10px 16px;border-radius:10px;background:var(--or-clair);color:#2a1a00;font-weight:800;text-decoration:none}
.evitement:focus{top:12px}

/* Menu commun à toutes les pages */
.barre-site{background:var(--marine);color:#fff;position:relative;z-index:5}
.barre-in{max-width:1680px;margin:0 auto;padding:6px 16px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}
.marque{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:#fff;font-weight:800;font-size:.95rem;text-decoration:none;margin-right:auto}
.marque img{flex:none;border-radius:7px}
.marque:hover span,.marque:focus-visible span{text-decoration:underline;text-underline-offset:3px}
.menu-site ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:2px}
.menu-site a{display:flex;align-items:center;min-height:44px;padding:0 9px;border-radius:8px;color:#fff;font-weight:600;font-size:.92rem;text-decoration:none;white-space:nowrap}
.menu-site a:hover,.menu-site a:focus-visible{background:rgba(255,255,255,.14);outline:none}
.menu-site a[aria-current="page"]{color:var(--or-clair);box-shadow:inset 0 -3px 0 var(--or)}
.menu-bouton{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:10px;border:2px solid rgba(255,255,255,.55);background:transparent;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.menu-bouton svg{width:20px;height:20px}
.menu-bouton[aria-expanded="true"]{background:rgba(255,255,255,.14)}
.menu-bouton[hidden]{display:none}
/* Téléphone et tablette : le menu se déplie sous la barre */
@media (max-width:1365px){
  .menu-site{flex-basis:100%}
  .menu-js .menu-site{display:none}
  .menu-js .menu-site.ouvert{display:block;padding:4px 0 10px}
  .menu-site ul{flex-direction:column;gap:0}
  .menu-site li+li{border-top:1px solid rgba(255,255,255,.12)}
  .menu-site a{min-height:48px;font-size:1rem}
}
/* Grand écran : tout le menu sur une ligne, la marque réduite à son logo jusqu'à 1720 px.
   Si la place manque (police plus large), le menu passe à la ligne au lieu de recouvrir la marque. */
@media (min-width:1366px){
  .menu-bouton{display:none!important}
  .marque{flex:none}
  .marque span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}
@media (min-width:1720px){.marque span{position:static;width:auto;height:auto;overflow:visible;clip:auto}}
/* Le lien « Retour aux fiches » fait double emploi avec le menu */
.barre-site~.entete .retour[href="/"],.barre-site~.entete .retour[href="/"]+br{display:none}

/* En-tête de l'accueil : sur téléphone, le titre et les boutons d'abord, la couverture ensuite */
.lien-video{margin:14px 0 0}
.lien-video a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:700;color:var(--marine);text-underline-offset:3px}
.lien-video .ico-play{width:18px;height:18px}
@media (prefers-color-scheme:dark){.lien-video a{color:#eaf3ff}}
@media (max-width:779px){
  .entete-in{padding-top:24px}
  .entete-in .scene{order:2;width:min(170px,46vw);margin-top:4px}
  .entete-in .scene .bulle{width:32px;height:32px}
  .entete-in .scene .bulle svg{width:15px;height:15px}
}

/* Trouver une fiche : recherche et « Je veux quitter… » sous l'en-tête */
.trouver-grille{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
@media (min-width:780px){.trouver-grille{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}}
.etiquette{display:block;margin:0 0 8px;font-weight:800;color:var(--marine)}
@media (prefers-color-scheme:dark){.etiquette{color:#eaf3ff}}
.trouver .recherche{margin:0;min-height:52px}
#choix-quitter{width:100%;min-height:52px;font:inherit;font-weight:600;padding:12px 14px;margin:0 0 12px;border-radius:12px;border:2px solid var(--ligne);background:var(--carte);color:var(--texte)}
#choix-quitter:focus-visible{outline:none;border-color:var(--cyan);box-shadow:0 0 0 4px var(--lueur)}
.trouver .quitter{grid-template-columns:minmax(0,1fr)}
.resultats ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.resultats a{display:flex;gap:12px;align-items:center;min-height:52px;padding:8px 14px;background:var(--carte);border:1px solid var(--ligne);border-radius:12px;text-decoration:none;color:var(--texte)}
.resultats a:hover,.resultats a:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 3px var(--lueur);outline:none}
.resultats .titre{flex:1;line-height:1.3}
.resultats-plus{margin:10px 0 0;font-weight:600}
.resultats-plus:empty{display:none}
.note-proton{margin:14px 0 0;font-size:.9rem;color:var(--doux)}
.fiches+.aucune,.note-proton+.filtre-actif{margin-top:10px}
.filtre-actif{margin:0 0 12px;padding:8px 14px;border-radius:10px;background:var(--creme);font-size:.92rem}

/* Vagues : chaque fiche sur sa ligne, avec son libellé et une case facile à toucher */
.vague-fiches{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.vague .suivi-fiche{display:flex;align-items:stretch;margin:0;gap:2px}
.vague .suivi-fiche a{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:0 6px;min-height:44px;margin:0;padding:6px 12px;border-radius:10px;font-weight:600;line-height:1.25}
.vague .suivi-fiche a b{font-weight:800}
.case{flex:none;display:grid;place-items:center;width:38px;min-height:44px;border-radius:10px;cursor:pointer}
.case:hover{background:rgba(255,255,255,.14)}
.case:has(.fait[hidden]){display:none}
.vague .suivi-fiche .fait{width:22px;height:22px}
.vague .progression{margin-top:10px}

/* Zones tactiles d'au moins 44 px */
.profil,.filtres button{min-height:44px}
.etapes a,.quitter a{min-height:48px}
.lien-bouton{min-height:44px}
.pied a{color:var(--or-clair);display:inline-block;padding:10px 4px}

/* Nouveautés : abonnement RSS */
.bouton.rss{display:inline-flex;align-items:center;gap:8px}
.bouton.rss svg{width:18px;height:18px;color:#f39a12}
.note-rss{margin-top:22px;font-size:.92rem;color:var(--doux)}
.note-rss code{font-size:.9em;word-break:break-all}

@media print{.barre-site,.evitement{display:none!important}}
/* Écrans tactiles : pastilles du glossaire et des menaces, cases du parcours smartphone */
@media (pointer:coarse),(max-width:600px){
  .index-notions a{display:inline-flex;align-items:center;min-height:44px;padding:6px 14px}
  .fait-s{min-height:44px}
  .fait-s input{width:1.35em;height:1.35em}
}
@media print{.trouver,.note-proton,.filtre-actif,.lien-video,.case{display:none!important}}
/* Ajustements : nom du site sur deux lignes si besoin, libellés des vagues sans débordement */
@media (max-width:1365px){.marque{flex:1 1 0;min-width:0;line-height:1.2}}
@media (max-width:420px){.marque{font-size:.86rem}}
.vague{padding:16px 12px 22px}
.case{width:32px}
.vague .suivi-fiche a{min-width:0;padding:6px 10px;overflow-wrap:break-word;hyphens:auto}

.encadre h2{margin:0 0 8px;font-size:1.1rem}

/* ---------- V21 : contrastes (WCAG 2.1 : 3:1 pour les grands titres et les pictogrammes, 4,5:1 pour le texte) ---------- */
/* Mot doré du titre : fin contour bleu marine, comme sur la couverture */
.or{filter:drop-shadow(1.5px 0 0 #13325a) drop-shadow(-1.5px 0 0 #13325a) drop-shadow(0 1.5px 0 #13325a) drop-shadow(0 -1.5px 0 #13325a) drop-shadow(0 3px 0 rgba(19,50,90,.25))}
@media (prefers-color-scheme:dark){.or{filter:drop-shadow(0 2px 0 rgba(0,0,0,.35))}}
/* Vagues : teintes assombries, pastilles sombres au lieu de blanches */
.v0{background:linear-gradient(150deg,#55697f,#36495d)}.v1{background:linear-gradient(150deg,#1b78bd,#155a94)}
.v2{background:linear-gradient(150deg,#1f6fb8,#174a87)}.v3{background:linear-gradient(150deg,#25785b,#1a5641)}
.v4{background:linear-gradient(150deg,#b85c00,#8f4300)}
.vague .duree{opacity:1}
.vague .suivi-fiche a{background:rgba(0,0,0,.16)}
.vague .suivi-fiche a:hover,.vague .suivi-fiche a:focus-visible{background:rgba(0,0,0,.3)}
.case:hover{background:rgba(0,0,0,.16)}
/* Étoiles de difficulté */
.etoiles{color:#b87000}
.etoiles .vide{color:#8a929b}
@media (prefers-color-scheme:dark){.etoiles{color:var(--or)}.etoiles .vide{color:#7f8b99}}

/* ---------- V21 : départ par la Vague 1, profils raccourcis, fiches par thème, date, retour en haut ---------- */
.depart{max-width:46em}
.vague .ici{display:inline-block;margin:0 0 8px;padding:2px 10px;border-radius:999px;background:var(--or-clair);color:#2a1a00;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.vague.v1{box-shadow:0 0 0 3px var(--or-clair),0 6px 16px rgba(19,50,90,.18)}
.suite{margin-top:8px}
.suite>summary{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 4px;font-weight:700;color:var(--bleu);cursor:pointer}
.suite .etapes{counter-reset:etape 5;margin-top:6px}
/* Liste des fiches par thème */
.themes{border-top:1px solid var(--ligne)}
.theme{border-bottom:1px solid var(--ligne)}
.theme>summary{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;min-height:56px;padding:10px 4px;cursor:pointer;list-style:none}
.theme>summary::-webkit-details-marker{display:none}
.theme>summary::before{content:"";flex:none;width:10px;height:10px;border-right:3px solid var(--bleu);border-bottom:3px solid var(--bleu);transform:rotate(-45deg);transition:transform .15s;margin-right:4px}
.theme[open]>summary::before{transform:rotate(45deg)}
.theme>summary:hover .theme-nom,.theme>summary:focus-visible .theme-nom{text-decoration:underline;text-underline-offset:3px}
.theme>summary:focus-visible{outline:3px solid var(--lueur);outline-offset:2px;border-radius:8px}
.theme-nom{font-weight:800;font-size:1.05rem;color:var(--marine)}
.theme-sous{flex-basis:100%;order:3;padding-left:22px;font-size:.88rem;color:var(--doux)}
@media (min-width:780px){.theme-sous{flex-basis:auto;order:0;padding-left:0}}
.theme-nb{margin-left:auto;min-width:2em;padding:1px 8px;border-radius:999px;background:var(--marine);color:var(--or-clair);font-size:.85rem;font-weight:800;text-align:center}
.theme .fiches{margin:2px 0 16px}
@media (prefers-color-scheme:dark){.theme-nom{color:#eaf3ff}.theme-nb{background:#1f5fa6;color:#fff}}
/* Date de mise à jour dans l'en-tête */
.maj{margin:6px 0 0;font-size:.9rem;color:var(--texte);opacity:.85}
/* Retour en haut */
.retour-haut{position:fixed;right:16px;bottom:16px;z-index:10;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--marine);color:#fff;border:2px solid var(--or);box-shadow:0 6px 16px rgba(19,50,90,.3)}
.retour-haut[hidden]{display:none}
.retour-haut svg{width:24px;height:24px}
.retour-haut:hover,.retour-haut:focus-visible{background:#1f5fa6;outline:none}
@media print{.retour-haut{display:none!important}.theme>summary::before{display:none}}
/* Ajustements : en-tête des thèmes en grille (nom, nombre, précision dessous), flèche du « Voir les autres fiches » */
.theme>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:12px;row-gap:2px}
.theme>summary::before{grid-row:1;grid-column:1;align-self:center}
.theme-nom{grid-row:1;grid-column:2}
.theme-nb{grid-row:1;grid-column:3;margin-left:0;align-self:center}
.theme-sous,.theme-sous{grid-row:2;grid-column:2/4;padding-left:0;order:0}
@media (min-width:780px){.theme-sous{flex-basis:auto}}
.suite>summary{list-style:none}
.suite>summary::-webkit-details-marker{display:none}
.suite>summary::before{content:"";width:8px;height:8px;border-right:3px solid currentColor;border-bottom:3px solid currentColor;transform:rotate(-45deg);transition:transform .15s;margin:0 4px}
.suite[open]>summary::before{transform:rotate(45deg)}
.note-inscription{margin:10px 0 0;font-size:.9rem;color:var(--doux)}
/* Inscriptions pas encore ouvertes : une étiquette d'information lisible plutôt qu'un bouton pâli */
.bouton.inactif{opacity:1;filter:none;background:var(--creme);border-color:var(--or);color:#5a3a00;cursor:default}
@media (prefers-color-scheme:dark){.bouton.inactif{color:var(--or-clair);border-color:var(--or)}}

/* ---------- V23 : logo de la barre avec une auréole dorée, et le mot « Accueil » quand le nom du site est masqué ---------- */
.marque img{box-shadow:0 0 0 2px rgba(255,215,106,.5),0 0 16px 6px rgba(255,190,60,.6);transition:box-shadow .2s}
.marque:hover img,.marque:focus-visible img{box-shadow:0 0 0 3px rgba(255,215,106,.8),0 0 22px 9px rgba(255,190,60,.8)}
.marque-accueil{display:none;font-weight:700;font-size:.92rem}
@media (min-width:1366px) and (max-width:1719px){.marque-accueil{display:inline}}
/* Pied de page : liens vers les mentions légales et le flux RSS */
.pied .pied-liens{margin-top:10px}
/* Thèmes repliés par défaut : bouton « Tout déplier » */
.deplier{margin:0 0 6px;text-align:right}
.deplier .lien-bouton{font-weight:700}
/* V26 : ligne sur l'auteur dans l'en-tête de l'accueil */
.auteur{margin:4px 0 0;font-size:.9rem;opacity:.85}
.auteur a{color:inherit;text-underline-offset:3px}
/* Pages des fiches (V28) */
.fil{font-size:.9rem;margin:0 0 10px;color:inherit}
.fil a{color:inherit;text-underline-offset:3px}
.version-fiche{font-weight:400;opacity:.8;margin-left:6px}
.fiche-infos .carte-l p{margin:.3em 0}
.notions-fiche{display:flex;flex-wrap:wrap;gap:6px 28px;list-style:none;padding:0;margin:0 0 10px}
.retenir-fiche{list-style:disc;padding-left:1.3em}
.retenir-fiche li{margin:.35em 0}
ol.pas>li{margin-bottom:.6em}
/* Menaces repliées (V28) */
.menace{padding:0}
.menace>.pli>summary h2{margin:0 0 4px}
.menace>.pli>summary::before{border-color:#c0392b}

/* ---------- V29 : étoiles de difficulté plus visibles sur les pages fiches ---------- */
.fiche-infos .difficulte{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fiche-infos .etoiles{margin:0;font-size:1.6rem;line-height:1;letter-spacing:3px;color:#b06a00}
.fiche-infos .etoiles .vide{color:#9aa1a9}
@media (prefers-color-scheme:dark){.fiche-infos .etoiles{color:var(--or)}.fiche-infos .etoiles .vide{color:#8794a3}}
@media print{.fiche-infos .etoiles{color:#000}.fiche-infos .etoiles .vide{color:#888}}

/* ---------- V30 : vérification globale (accessibilité) ---------- */
.lecteur{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
/* Cibles tactiles d'au moins 24 px (WCAG 2.2) */
.fil a{display:inline-block;padding:4px 0}
.suivi-fiche .fait,.liste-controle input,.fait-s input{width:24px;height:24px;min-width:24px}
/* Plus aucun texte sous 12 px */
.badge-neuf,.seul-os{font-size:.78rem!important}
small{font-size:max(.8em,12px)}
/* Étoiles vides des pages fiches : contraste 3:1 au moins */
.fiche-infos .etoiles .vide{color:#7c858f}

/* ---------- V31 : téléphone — accueil plus court, en-tête des pages fiches réduit ---------- */
@media (max-width:600px){
  /* Page fiche : le résumé commence plus haut */
  .entete-fiche{padding-bottom:64px}
  .entete-fiche::after{height:84px}
  .entete-fiche .entete-in{padding-top:14px}
  .entete-fiche h1{font-size:1.6rem;line-height:1.15;margin-bottom:10px}
  .entete-fiche .intro{font-size:1rem;margin-bottom:14px}
  .entete-fiche .bouton{padding:9px 16px;font-size:.95rem}
  /* Accueil : vagues plus compactes */
  .vague{padding:14px 12px 18px}
  .vague h3{font-size:1.05rem;margin-bottom:2px}
  .vague-fiches{gap:4px}
  .vague .suivi-fiche a{min-height:42px;padding:3px 10px}
  .theme>summary{min-height:48px;padding:7px 4px}
  .vague .progression{margin-top:8px}
  /* Accueil : couverture et paysage plus petits, documents plus serrés */
  .entete:not(.entete-court){padding-bottom:80px}
  .entete:not(.entete-court)::after{height:110px}
  .entete-in .scene{width:min(140px,40vw)}
  .docs a{padding:10px 12px}
  .docs a::before{width:30px;height:30px}
  .video p:not(.avert){font-size:.98rem}
}
/* Téléphone : listes des vagues 2 à 4 repliées (bouton ajouté par le script de l'accueil) */
.vague-voir{display:block;width:100%;min-height:44px;margin:4px 0 0;padding:8px 12px;border:2px solid rgba(255,255,255,.55);border-radius:10px;background:rgba(0,0,0,.16);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.vague-voir:hover,.vague-voir:focus-visible{background:rgba(0,0,0,.3);outline:none;border-color:#fff}
.vague-fiches[hidden]{display:none}
@media print{.vague-voir{display:none}.vague-fiches[hidden]{display:grid!important}}
/* Glossaire : renvois vers Menaces et Ranger */
.voir-aussi{margin:10px 0 0;font-size:.95rem}
.voir-aussi a{font-weight:700;text-underline-offset:3px}
.ensuite a{align-items:flex-start}
.ensuite small{display:block;margin-top:4px;font-weight:400;font-size:.92rem;line-height:1.4;color:var(--doux)}
/* Ateliers : priorité aux habitants des Bauges, sous les boutons de l'en-tête */
.note-priorite{margin:12px 0 0;font-size:.95rem;font-weight:600;color:inherit;opacity:.9;max-width:60ch}
/* Passer à Linux : vérification du chiffrement (visible), marche à suivre repliée */
.chiffre-w{background:var(--creme);border:1px solid var(--ligne);border-left:5px solid var(--or);border-radius:12px;padding:12px 16px;margin:0 0 12px}
.chiffre-w h4{margin:0 0 6px;font-size:1.08rem;color:var(--marine)}
.chiffre-w ol{margin:6px 0;padding-left:1.4em}
.chiffre-w li{margin:4px 0}
.verdict-w{margin:8px 0;font-weight:500}
.chiffre-w details{margin-top:8px;background:var(--carte);border:1px solid var(--ligne);border-radius:10px;padding:9px 14px}
.chiffre-w summary{cursor:pointer;color:var(--marine)}
@media (prefers-color-scheme:dark){.chiffre-w{background:#2a2414}.chiffre-w h4,.chiffre-w summary{color:#eaf3ff}}
@media print{.chiffre-w details>*{display:block}}
/* Passer à Linux : lien vers la fiche de vérification à imprimer */
.a-imprimer{margin:0 0 12px;padding:8px 12px;border-radius:10px;background:var(--carte);border:1px dashed var(--ligne)}
