/* /6e-ariane-fr — s'ajoute à ../ce1-fr/styles.css (mêmes couleurs, mêmes polices) */
.f6-logo{font-size:28px;flex:none}
.f6-jour{display:block;width:100%;text-align:left;border:0;border-radius:var(--r);padding:18px;margin:0 0 16px;
  background:var(--accent);color:var(--accent-ink);box-shadow:0 5px 0 rgba(0,0,0,.25),0 12px 22px rgba(60,48,30,.15)}
.f6-jour:active{transform:translateY(3px)}
.f6-jour-eti{font-size:13px;opacity:.85;text-transform:uppercase;letter-spacing:.04em}
.f6-jour-titre{font-size:21px;font-weight:700;margin:4px 0}
.f6-jour-sous{font-size:15px;opacity:.92}
.f6-grille{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.f6-carte{padding:14px 16px}
.f6-blanc{outline:3px dashed var(--star);outline-offset:-3px}
.f6-etoiles{margin-top:8px;color:var(--star);font-size:18px;letter-spacing:2px}
.f6-etoiles span{color:var(--ink-soft);font-size:13px;letter-spacing:0}
.f6-relis{background:var(--card-hi);border-radius:var(--r);padding:14px 16px;margin:18px 0 8px;box-shadow:var(--lift-sm)}
.f6-relis ol{margin:8px 0 0;padding-left:22px}
.f6-pied{color:var(--ink-soft);font-size:14px;text-align:center;margin-top:18px}
.f6-pied a{color:var(--accent)}

.f6-lecon{background:var(--card);border-radius:var(--r);padding:8px 16px 14px;box-shadow:var(--lift-sm);margin-bottom:14px}
.f6-regle{padding:10px 0;border-bottom:1px solid var(--line-soft)}
.f6-regle:last-child{border-bottom:0}
.f6-regle-t{font-weight:700;color:var(--accent);margin:6px 0 4px}
.f6-ex{font-family:Andika,Quicksand,sans-serif;background:var(--mat);border-radius:10px;padding:6px 10px;margin-top:6px;font-size:16px}
.f6-reflexe{background:var(--surligne);color:var(--surligne-ink);border-radius:14px;padding:12px 14px;margin:0 0 14px}
.f6-texte{background:var(--card-hi);border-radius:var(--r);padding:10px 16px;margin:0 0 14px;box-shadow:var(--lift-sm)}
.f6-texte summary{font-weight:700;cursor:pointer;padding:4px 0}
.f6-texte p{font-family:Andika,Quicksand,sans-serif;font-weight:400;font-size:17px;line-height:1.6;text-indent:1.2em;margin:8px 0}

.f6-go{display:block;width:100%;border:0;border-radius:18px;padding:15px;margin:10px 0;font-weight:700;font-size:18px;
  background:var(--accent);color:var(--accent-ink);box-shadow:0 4px 0 rgba(0,0,0,.25)}
.f6-go:active{transform:translateY(2px)}
.f6-second{background:var(--card);color:var(--ink);box-shadow:var(--lift-sm)}
.f6-boutons{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.f6-lien{border:0;background:none;color:var(--ink-soft);text-decoration:underline;padding:10px 0;margin-top:6px;font-size:15px}

.f6-prog{height:8px;background:var(--mat);border-radius:99px;overflow:hidden;margin:-6px 0 14px}
.f6-prog span{display:block;height:100%;background:var(--ok);border-radius:99px;transition:width .3s}
.f6-zone{background:var(--card);border-radius:var(--r);padding:16px;box-shadow:var(--lift-sm)}
.f6-phrase{font-family:Andika,Quicksand,sans-serif;font-size:clamp(20px,5.4vw,26px);line-height:1.5;margin:4px 0 16px;font-weight:400}
.f6-question{font-size:clamp(18px,4.6vw,21px);font-weight:700;margin:4px 0 14px}
.f6-trou{display:inline-block;min-width:3.2em;text-align:center;border-bottom:3px dashed var(--accent);color:var(--accent);padding:0 6px;font-weight:700}
.f6-trou.ok{border-bottom-style:solid;border-color:var(--ok);color:var(--ok);background:var(--ok-bg);border-radius:6px 6px 0 0}
.f6-choix{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.f6-choix.long{grid-template-columns:1fr}
.f6-choix button{border:0;background:var(--card-hi);border-radius:16px;padding:13px 14px;font-family:Andika,Quicksand,sans-serif;
  font-size:19px;box-shadow:var(--lift-sm);text-align:center;line-height:1.3}
.f6-choix.long button{text-align:left;font-size:17px}
.f6-choix button.juste{background:var(--ok-bg);outline:3px solid var(--ok)}
.f6-choix button.faux{background:var(--oups-bg);text-decoration:line-through;text-decoration-color:var(--faux);opacity:.75}
.f6-choix button.secoue,.f6-mot.secoue{animation:f6secoue .35s}
@keyframes f6secoue{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}

.f6-fb{min-height:20px;margin-top:12px}
.f6-bulle{border-radius:16px;padding:12px 14px;line-height:1.45}
.f6-bulle.ok{background:var(--ok-bg)}
.f6-bulle.oups{background:var(--oups-bg)}
.f6-suite{display:block;width:100%;margin-top:10px;border:0;border-radius:16px;padding:14px;font-weight:700;font-size:18px;background:var(--ok);color:#fff}
.f6-mini{color:var(--ink-soft);font-size:14px;margin:8px 0 0}

.f6-modele{font-family:Andika,Quicksand,sans-serif;font-size:clamp(20px,5.4vw,25px);background:var(--mat);border-radius:12px;padding:10px 14px;margin:0 0 12px}
.f6-saisie{width:100%;font-family:Andika,Quicksand,sans-serif;font-size:21px;padding:12px 14px;border-radius:14px;border:2px solid var(--line);background:var(--card-hi)}
.f6-saisie.ok{border-color:var(--ok);background:var(--ok-bg)}
.f6-saisie.faux{border-color:var(--oups);background:var(--oups-bg)}
.f6-check{background:var(--surligne);color:var(--surligne-ink);border-radius:14px;padding:12px 14px;margin-top:12px}
.f6-check ul{margin:6px 0 0;padding-left:20px}
.f6-diff{background:var(--card-hi);border-radius:14px;padding:4px 14px;margin-top:10px;font-family:Andika,Quicksand,sans-serif;font-size:18px}
.f6-eti{font-family:Quicksand,sans-serif;color:var(--ink-soft);font-size:14px}
.f6-err{color:var(--faux);text-decoration:underline wavy}

.f6-fait{margin:0 0 12px;padding-left:24px}
.f6-fait li{background:var(--ok-bg);border-radius:10px;padding:8px 10px;margin-bottom:6px}

.f6-compteur{margin:0 0 10px}
.f6-chasse{font-family:Andika,Quicksand,sans-serif;font-size:clamp(19px,5vw,23px);line-height:2;margin:0;font-weight:400}
.f6-mot{border:0;background:none;padding:0 1px;font:inherit;border-radius:6px;color:inherit}
.f6-mot:hover{background:var(--mat)}
.f6-mot.bon{background:var(--mat);color:var(--ink-soft)}
.f6-mot.corrige{background:var(--ok-bg);color:var(--ok);font-weight:700}
.f6-mot.revele{background:var(--oups-bg);color:var(--oups);font-weight:700}

.f6-fin{background:var(--card);border-radius:var(--r);padding:20px 16px;text-align:center;box-shadow:var(--lift-sm);margin-bottom:14px}
.f6-gros{font-size:44px;color:var(--star);letter-spacing:4px}
.f6-score{font-size:20px;font-weight:700}
.f6-record{color:var(--ok);font-weight:700}
.f6-retenir{padding-left:20px;margin:6px 0}
.f6-retenir li{margin-bottom:10px}

.f6-parents h2{font-size:18px;margin:16px 0 6px;color:var(--accent)}
.f6-parents p,.f6-parents li{font-weight:600;line-height:1.5}
.f6-table{width:100%;border-collapse:collapse;font-size:15px}
.f6-table th,.f6-table td{text-align:left;padding:6px 4px;border-bottom:1px solid var(--line-soft)}
.f6-table td:nth-child(2){color:var(--star);white-space:nowrap}

/* ---------- fond clair et gai (on ignore le mode sombre du téléphone) ---------- */
:root[data-theme="light"]{
  --bg:#DDEEFF; --mat:#E6F0FA; --card:#FFFFFF; --card-hi:#F6FAFF;
  --line:#C5D8EC; --line-soft:#E0EAF5; --ink:#24324A; --ink-soft:#5B6B82;
  --accent:#2563C9; --lift:0 5px 0 #C5D8EC, 0 12px 22px rgba(37,99,201,.12);
  --lift-sm:0 3px 0 #C5D8EC, 0 6px 12px rgba(37,99,201,.10);
}
html{background:#DDEEFF}
body{background:linear-gradient(180deg,#D4EAFF 0%,#EAF4FF 45%,#FFF3DC 100%) fixed;min-height:100vh}

/* ---------- chasse aux fautes : le jeu ---------- */
.cf-hud{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:-4px 0 12px}
.cf-hud>span{background:var(--card);border-radius:999px;padding:6px 12px;box-shadow:var(--lift-sm);font-weight:700;font-size:15px}
.cf-niv{background:var(--accent)!important;color:#fff}
.cf-vies{letter-spacing:1px}
.cf-pts{color:#9A6B00}
.cf-serie{background:#FFE7C2!important;color:#A04A00}
.cf-grosniv{font-size:72px;font-weight:700;color:var(--accent);line-height:1}
.cf-intro p{margin:8px 0}
.f6-mot.cible{background:var(--surligne);color:var(--surligne-ink);outline:2px solid #E0A126}
.cf-panneau{margin-top:14px;background:var(--card-hi);border-radius:16px;padding:12px;border:2px dashed var(--line)}
.cf-trouve{margin:0 0 10px;font-weight:700}
.cf-bonus{font-weight:700;color:var(--ok);margin:10px 0 0}
.cf-total{font-size:30px;font-weight:700;color:#9A6B00;margin:4px 0}
.cf-champions{background:var(--card);border-radius:var(--r);padding:12px 16px 16px;box-shadow:var(--lift-sm);margin:0 0 14px}
.cf-msg{font-weight:700;color:var(--ok)}
.cf-top{list-style:none;padding:0;margin:8px 0 0}
.cf-top li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px}
.cf-top li:nth-child(odd){background:var(--mat)}
.cf-top li.moi{background:#FFF1C9;outline:2px solid #E0A126}
.cf-rang{width:30px;text-align:center;font-weight:700}
.cf-nom{flex:1;font-weight:700}
.cf-niv2{color:var(--ink-soft);font-size:13px}
.cf-p{font-weight:700;color:#9A6B00;white-space:nowrap}

/* =====================================================================
   VERSION JEU (11 ans) : carte au trésor, gros boutons, peu de texte
   ===================================================================== */
.fx-hud{display:flex;align-items:center;gap:8px;margin:4px 0 12px}
.fx-titre{flex:1;font-weight:700;font-size:clamp(18px,5vw,22px);line-height:1.15}
.fx-chip{border:0;background:var(--card);border-radius:999px;padding:7px 12px;box-shadow:var(--lift-sm);font-weight:700;font-size:15px;white-space:nowrap}
.fx-or{color:#9A6B00}
.fx-compte{text-align:center;font-weight:700;background:#FFF1C9;color:#8A5A00;border-radius:999px;padding:6px 14px;margin:0 auto 12px;width:max-content;max-width:100%}
.fx-gros-boutons{display:grid;grid-template-columns:1.4fr 1fr;gap:12px;margin-bottom:16px}
.fx-jouer,.fx-eclair{display:flex;align-items:center;gap:12px;border:0;border-radius:24px;padding:16px;color:#fff;text-align:left;font-weight:700;font-size:24px;line-height:1.1}
.fx-jouer{background:linear-gradient(135deg,#22C55E,#15803D);box-shadow:0 6px 0 #116B32,0 14px 24px rgba(21,128,61,.3)}
.fx-eclair{background:linear-gradient(135deg,#FFB020,#F76707);box-shadow:0 6px 0 #C2530A,0 14px 24px rgba(247,103,7,.3);font-size:20px}
.fx-jouer:active,.fx-eclair:active{transform:translateY(4px)}
.fx-jouer small,.fx-eclair small{display:block;font-size:13px;font-weight:600;opacity:.92;margin-top:4px}
.fx-jouer-ic{font-size:30px;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.25);display:grid;place-items:center;flex:none}
@media (max-width:420px){.fx-gros-boutons{grid-template-columns:1fr}}

.fx-carte{position:relative;background:#FFF4D6;border:3px dashed #E2B868;border-radius:28px;padding:14px 10px 18px;margin-bottom:12px;
  background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.6) 0 40px,transparent 41px),radial-gradient(circle at 80% 70%,rgba(255,255,255,.5) 0 50px,transparent 51px)}
.fx-carte-t{font-weight:700;color:#8A5A00;text-align:center;margin-bottom:4px}
.fx-ile{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;border:0;background:none;width:46%;padding:8px 0 14px;margin:0 auto}
.fx-ile.fx-g{margin-left:2%}.fx-ile.fx-d{margin-right:2%}
.fx-ile::after{content:"";position:absolute;bottom:-12px;left:50%;height:22px;border-left:4px dotted #D9A54A}
.fx-ile:last-child::after{display:none}
.fx-rond{width:76px;height:76px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:38px;
  box-shadow:0 0 0 6px var(--c),0 6px 0 6px rgba(0,0,0,.12);transition:transform .15s}
.fx-ile:active .fx-rond{transform:scale(.92)}
.fx-nom{font-weight:700;font-size:15px;margin-top:10px;color:#3D3020;text-align:center}
.fx-et{color:#E0A126;font-size:17px;letter-spacing:2px}
.fx-ici .fx-rond{animation:fxpulse 1.4s infinite}
@keyframes fxpulse{0%,100%{box-shadow:0 0 0 6px var(--c),0 0 0 6px rgba(0,0,0,0)}50%{box-shadow:0 0 0 6px var(--c),0 0 0 16px rgba(255,200,60,.45)}}
.fx-pin{position:absolute;top:-6px;right:18%;font-size:26px;animation:fxsaut 1s infinite}
@keyframes fxsaut{50%{transform:translateY(-6px)}}
.fx-coffre .fx-rond{width:90px;height:90px;font-size:46px}

.fx-truc-zone{max-width:560px;margin:0 auto}
.fx-truc{background:var(--card);border-radius:26px;padding:22px 20px;box-shadow:var(--lift);border-top:10px solid var(--c);min-height:200px}
.fx-truc-n{color:var(--ink-soft);font-weight:700;font-size:14px;margin-bottom:8px}
.fx-truc-t{font-size:clamp(26px,7vw,34px);font-weight:700;color:var(--c);margin-bottom:8px}
.fx-truc-d{font-size:19px;line-height:1.45}
.fx-truc .f6-ex{font-size:19px;margin-top:14px}
.fx-points{display:flex;justify-content:center;gap:8px;margin:14px 0 4px}
.fx-points i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.fx-points i.on{background:var(--accent);width:26px;border-radius:99px}

.fx-route{display:flex;align-items:center;gap:10px;margin:-4px 0 14px}
.fx-route-barre{position:relative;flex:1;height:14px;background:var(--card);border-radius:99px;box-shadow:inset 0 2px 4px rgba(0,0,0,.08)}
.fx-route-barre span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#51CF66,#22C55E);transition:width .4s}
.fx-route-barre b{position:absolute;top:-14px;font-size:24px;transform:translateX(-50%) scaleX(-1);transition:left .4s}
.fx-route-n{font-weight:700;color:var(--ink-soft);font-size:14px}
.fx-serie{font-weight:700;background:#FFE7C2;color:#A04A00;border-radius:99px;padding:3px 9px;font-size:14px}
.fx-aide{border:0;background:var(--card);border-radius:50%;width:40px;height:40px;font-size:20px;box-shadow:var(--lift-sm)}
.fx-q{border-top:8px solid var(--c,var(--accent))}
.f6-zone.secoue{animation:f6secoue .35s}
.fx-bravo{text-align:center;font-size:22px;animation:fxpop .35s}
@keyframes fxpop{0%{transform:scale(.6);opacity:0}100%{transform:scale(1);opacity:1}}
.fx-plus{position:fixed;left:50%;top:38%;transform:translateX(-50%);font-size:34px;font-weight:700;color:#C98200;pointer-events:none;
  text-shadow:0 2px 0 #fff;animation:fxmonte .9s ease-out forwards;z-index:50}
@keyframes fxmonte{to{top:22%;opacity:0}}
.fx-conf{position:fixed;top:-12px;width:10px;height:14px;border-radius:2px;z-index:60;pointer-events:none;animation:fxtombe 2.4s ease-in forwards}
@keyframes fxtombe{to{top:105vh;transform:rotate(720deg)}}
.fx-etoiles-fin{font-size:58px;letter-spacing:6px;color:#D9D2C3}
.fx-etoiles-fin span{display:inline-block;animation:fxpop .4s both}
.fx-etoiles-fin span.on{color:#F5B301;text-shadow:0 3px 0 #C98200}
.fx-grand-ic{font-size:64px;line-height:1.1}
.fx-erreurs summary{cursor:pointer;font-weight:700;padding:8px 0}
.fx-erreurs p{border-top:1px solid var(--line-soft);padding-top:8px}

.fx-modale{position:fixed;inset:0;background:rgba(20,30,50,.45);display:grid;place-items:center;z-index:80;padding:16px}
.fx-modale-boite{position:relative;background:var(--card);border-radius:24px;padding:20px 18px;max-width:520px;width:100%;max-height:85vh;overflow:auto;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.fx-fermer{position:absolute;top:10px;right:10px;border:0;background:var(--mat);border-radius:50%;width:36px;height:36px;font-size:16px}
.fx-mini-truc{padding:8px 0;border-bottom:1px solid var(--line-soft);line-height:1.4}
.fx-court{font-weight:700;margin:6px 0 10px}
.fx-modale-boite .f6-saisie{margin-bottom:8px}
.fx-cgu{display:block;font-size:14px;margin:4px 0 8px;line-height:1.4}
.fx-liens{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.fx-enfants{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.fx-enfant{border:0;background:var(--mat);border-radius:16px;padding:10px 14px;font-weight:700;font-size:17px;display:flex;align-items:center;gap:8px}
.fx-enfant span{font-size:22px}
.fx-enfant.on{background:#DDF1E4;outline:3px solid var(--ok)}
.fx-ajout{display:flex;gap:8px}
.fx-ajout .f6-go{width:auto;margin:0;padding:0 18px}

.fx-temps{height:12px;background:var(--card);border-radius:99px;overflow:hidden;margin:-4px 0 14px}
.fx-temps span{display:block;height:100%;width:100%;background:linear-gradient(90deg,#FFB020,#F76707);transition:width .2s linear}
.fx-temps.urgent span{background:#E03131;animation:fxclign .5s infinite}
@keyframes fxclign{50%{opacity:.5}}
.fx-chrono{font-variant-numeric:tabular-nums;min-width:62px;text-align:center}
.fx-go-eclair{background:linear-gradient(135deg,#FFB020,#F76707)}

/* ---------- accueil en 4 mondes ---------- */
.fx-jouer-seul{width:100%;margin-bottom:16px}
.fx-mondes{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fx-monde{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;border:0;border-radius:26px;
  background:var(--card);padding:20px 10px 14px;box-shadow:0 6px 0 var(--c),0 14px 24px rgba(0,0,0,.08);border-top:8px solid var(--c)}
.fx-monde:active{transform:translateY(4px);box-shadow:0 2px 0 var(--c)}
.fx-monde-ic{font-size:48px;line-height:1.1}
.fx-monde-t{font-weight:700;font-size:19px;color:var(--ink)}
.fx-monde-s{font-size:13px;color:var(--ink-soft);min-height:2.4em}
.fx-monde-p{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#B07A00;margin-top:4px}
.fx-mini-barre{display:inline-block;width:60px;height:8px;border-radius:99px;background:var(--mat);overflow:hidden}
.fx-mini-barre i{display:block;height:100%;background:var(--c)}
.fx-badge{position:absolute;top:-12px;right:10px;background:#FFD43B;color:#7A4B00;font-weight:700;font-size:12px;border-radius:99px;padding:4px 9px;box-shadow:0 2px 0 #E0A126;animation:fxsaut 1.6s infinite}
@media (max-width:340px){.fx-mondes{grid-template-columns:1fr}}

/* ---------- dictée flash & réflexes ---------- */
.fx-violet{background:linear-gradient(135deg,#9775FA,#6741D9);box-shadow:0 6px 0 #5028B8,0 14px 24px rgba(103,65,217,.3)}
.fx-ecoute{display:flex;gap:10px;margin:0 0 12px}
.fx-ecouter{flex:1;border:0;border-radius:18px;padding:16px;font-size:20px;font-weight:700;background:#EDE7FF;color:#5028B8;box-shadow:0 4px 0 #C9BDFB}
.fx-ecouter.lent{flex:.7;font-size:17px}
.fx-ecouter:active{transform:translateY(3px)}
.fx-flash{text-align:center}
.fx-cible{background:#FFE27A;border-radius:6px;padding:0 4px}
.fx-cible-ok{background:var(--ok-bg);color:var(--ok);border-radius:6px;padding:0 4px;font-weight:700}
.f6-table td input{width:20px;height:20px}
.fx-tref td:nth-child(2){color:var(--ink);font-weight:700}

/* ---------- mondes en tuiles (un atelier = une tuile) ---------- */
.fx-tuiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:4px}
.fx-tuile{display:flex;flex-direction:column;align-items:center;gap:4px;border:0;border-radius:20px;background:var(--card);padding:14px 8px 10px;
  box-shadow:0 5px 0 var(--c),0 10px 18px rgba(0,0,0,.07);border-top:6px solid var(--c);text-align:center}
.fx-tuile:active{transform:translateY(3px);box-shadow:0 2px 0 var(--c)}
.fx-tuile-ic{font-size:30px;line-height:1.1}
.fx-tuile-t{font-weight:700;font-size:15px;line-height:1.2;color:var(--ink);min-height:2.4em;display:flex;align-items:center}
.fx-tuile.fx-ici{outline:3px solid #FFD43B;outline-offset:2px}
@media (max-width:360px){.fx-tuiles{grid-template-columns:1fr 1fr}}

/* ---------- ⭐ à bosser ---------- */
.fx-tuile{position:relative}
.fx-badge-bosser{position:absolute;top:-10px;right:-4px;background:#FFD43B;color:#7A4B00;font-weight:700;font-size:12px;border-radius:99px;padding:3px 8px;box-shadow:0 2px 0 #E0A126;animation:fxsaut 1.6s infinite}
.fx-abosser-t{outline:3px solid #FFD43B;outline-offset:2px}
.fx-abosser{background:var(--card);border-radius:var(--r);padding:12px 14px 16px;box-shadow:var(--lift-sm);margin:0 0 14px}
.fx-abosser{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
.fx-abosser .f6-regle-t{grid-column:1/-1}
.fx-tuile-mini{padding:10px 6px 8px}
.fx-tuile-mini .fx-tuile-ic{font-size:24px}

/* =====================================================================
   🎮 SALLE DE JEUX
   ===================================================================== */
.fx-ticket{color:#7048E8}
.fx-salle{display:flex;align-items:center;gap:12px;width:100%;border:0;border-radius:24px;padding:14px 16px;margin:16px 0 4px;color:#fff;text-align:left;
  font-weight:700;font-size:21px;background:linear-gradient(135deg,#845EF7,#E64980);box-shadow:0 6px 0 #6741D9,0 14px 24px rgba(132,94,247,.3)}
.fx-salle small{display:block;font-size:13px;font-weight:600;opacity:.92;margin-top:3px}
.fx-salle:active{transform:translateY(4px)}
.fx-gagne-ticket{font-weight:700;color:#7048E8;background:#F3F0FF;border-radius:14px;padding:10px;animation:fxpop .4s}
.fx-toast-ticket{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#7048E8;color:#fff;font-weight:700;border-radius:999px;
  padding:12px 20px;box-shadow:0 10px 24px rgba(0,0,0,.2);z-index:95;animation:fxpop .35s}
.sj-tickets{text-align:center;background:var(--card);border-radius:var(--r);padding:16px;margin-bottom:14px;box-shadow:var(--lift-sm)}
.sj-tickets.secoue{animation:f6secoue .35s}
.sj-gros{font-size:44px;font-weight:700;color:#7048E8}
.sj-ferme{opacity:.55}
.sj-zone{background:var(--card);border-radius:var(--r);padding:12px;box-shadow:var(--lift-sm);user-select:none;-webkit-user-select:none}
.sj-score{font-weight:700;text-align:center;margin:0 0 8px;font-size:17px}
.sj-phrase{text-align:center;min-height:2.6em}

/* tirs au but */
.sj-terrain{position:relative;height:300px;border-radius:18px;overflow:hidden;
  background:repeating-linear-gradient(180deg,#51CF66 0 30px,#40C057 30px 60px)}
.sj-but{position:absolute;top:12px;left:6%;right:6%;height:120px;border:6px solid #fff;border-bottom:0;border-radius:8px 8px 0 0;display:flex;
  background:repeating-linear-gradient(45deg,rgba(255,255,255,.18) 0 6px,transparent 6px 14px)}
.sj-cage{flex:1;border:0;border-right:2px dashed rgba(255,255,255,.7);background:rgba(255,255,255,.12);color:#fff;font-family:Andika,Quicksand,sans-serif;
  font-size:clamp(17px,5vw,22px);font-weight:700;text-shadow:0 2px 3px rgba(0,0,0,.4);cursor:pointer}
.sj-cage:last-child{border-right:0}
.sj-cage:active{background:rgba(255,255,255,.3)}
.sj-gardien{position:absolute;top:90px;left:50%;transform:translateX(-50%);font-size:40px;transition:left .35s ease-out}
.sj-ballon{position:absolute;bottom:6%;left:50%;transform:translateX(-50%);font-size:40px;transition:all .45s ease-out}
.sj-msg{position:absolute;left:0;right:0;bottom:38%;text-align:center;font-weight:700;font-size:22px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5)}
.sj-msg.ok{font-size:34px;animation:fxpop .35s}

/* ballons */
.sj-ciel{position:relative;height:340px;border-radius:18px;overflow:hidden;background:linear-gradient(180deg,#74C0FC,#D0EBFF)}
.sj-ballon-air{position:absolute;bottom:-90px;width:92px;height:110px;border:0;border-radius:50% 50% 46% 46%;color:#fff;font-weight:700;
  font-family:Andika,Quicksand,sans-serif;font-size:19px;background:hsl(var(--h),75%,55%);box-shadow:inset -8px -10px 0 rgba(0,0,0,.12);
  animation:sjmonte linear forwards;cursor:pointer}
.sj-ballon-air::after{content:"";position:absolute;left:50%;bottom:-26px;height:26px;border-left:2px solid rgba(0,0,0,.25)}
@keyframes sjmonte{to{bottom:360px}}
.sj-ballon-air.pop{animation:sjpop .3s forwards}
@keyframes sjpop{to{transform:scale(1.6);opacity:0}}
.sj-ballon-air.rate{filter:grayscale(1);opacity:.5}

/* serpent */
.sj-canvas{display:block;margin:0 auto;width:100%;max-width:360px;aspect-ratio:1;border-radius:14px;border:4px solid #8CE99A;touch-action:none}
.sj-pad{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:360px;margin:10px auto 0}
.sj-pad button{border:0;border-radius:14px;background:var(--mat);font-size:26px;padding:10px 0}

/* memory */
.sj-memory{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:420px;margin:0 auto}
.sj-carte{aspect-ratio:1;border:0;border-radius:14px;background:linear-gradient(135deg,#FFA94D,#F76707);font-size:34px;box-shadow:0 4px 0 #D9480F}
.sj-carte span{opacity:0;transition:opacity .15s}
.sj-carte.vue,.sj-carte.ok{background:#FFF4E6}
.sj-carte.vue span,.sj-carte.ok span{opacity:1}
.sj-carte.ok{box-shadow:0 0 0 3px #51CF66}
.fx-toast-badge{background:#F59F00;bottom:84px}
.sj-album-btn{background:linear-gradient(135deg,#FAB005,#F76707);box-shadow:0 6px 0 #D9480F,0 14px 24px rgba(247,103,7,.3)}
.fx-badge{cursor:default}

/* ===== MODE DYS ===== */
body.f6-dys .f6-phrase,body.f6-dys .f6-question,body.f6-dys .f6-choix button,body.f6-dys .f6-saisie,body.f6-dys .fx-truc-d,body.f6-dys .f6-bulle,body.f6-dys .fx-relire-txt,body.f6-dys .f6-dys-truc{letter-spacing:.05em;word-spacing:.16em;line-height:1.75}
body.f6-dys .f6-phrase{font-size:clamp(22px,6vw,28px)}
body.f6-dys em,body.f6-dys i{font-style:normal}
.f6-dys-truc{background:#FFF8DB;border:2px solid #FFD43B;border-radius:14px;padding:10px 12px;font-size:16px;font-weight:600;margin:0 0 12px}
.fx-lire{border:0;background:var(--card-hi,#fff);border-radius:999px;padding:9px 16px;font:inherit;font-size:17px;font-weight:700;margin:0 0 12px;cursor:pointer;box-shadow:0 2px 0 rgba(0,0,0,.08)}
.f6-dys-reglage{display:flex;gap:10px;align-items:center;font-weight:700;font-size:17px;margin:4px 0 8px}
.f6-dys-reglage input{width:22px;height:22px}
/* ===== JE ME RELIS ===== */
.fx-relire-txt{font-family:Andika,Quicksand,sans-serif;font-size:clamp(20px,5.4vw,26px);line-height:1.8;margin:8px 0 10px}
.fx-piege{background:#E7F5FF;border-radius:8px;padding:1px 6px;border-bottom:3px solid #74C0FC}
.fx-piege.on{background:#FFE066;border-bottom-color:#F08C00;box-shadow:0 0 0 3px rgba(255,224,102,.55)}
.fx-piege.fait{background:#EBFBEE;border-bottom-color:#40C057}
.fx-relire-panneau{background:var(--card-hi,#fff);border-radius:16px;padding:12px 14px;margin-top:8px}
.fx-relire-test{font-size:17px;line-height:1.5;margin:0 0 10px}

/* bouton 🧩 DYS + monde Orthographe */
.fx-dys-btn{font-weight:800}
.fx-dys-btn.on{background:#FFE066;color:#5F3DC4}
.fx-mondes>.fx-monde:last-child:nth-child(odd){grid-column:1/-1}
.fx-mot-juste{font-family:Andika,Quicksand,sans-serif;font-size:clamp(22px,6vw,30px);text-align:center;margin:8px 0}
.fx-mot-juste strong{color:var(--ok,#2F9E44);letter-spacing:.04em}
.fx-groupe{font-size:18px;margin:18px 4px 8px;color:var(--ink)}
@media (max-width:480px){.fx-hud{gap:5px}.fx-hud .fx-chip{padding:6px 8px;font-size:14px}.fx-hud .fx-titre{min-width:0;overflow:hidden;text-overflow:ellipsis}}

/* notice DYS */
.fx-notice-t{font-size:17px;margin:14px 0 4px}
.fx-notice-p{font-size:15px;line-height:1.55;margin:0 0 6px}
.fx-notice-l{padding-left:0;list-style:none;margin:4px 0}
.fx-notice-l li{font-size:15px;line-height:1.5;margin:0 0 8px}
.fx-lien-dys{display:block;margin:14px auto 0;font-weight:700}
.fx-modale-boite{max-height:88vh;overflow-y:auto}

/* réglage de la voix */
.fx-voix-liste{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 6px}
.fx-voix{border:2px solid var(--line,#dee2e6);background:var(--card-hi,#fff);border-radius:999px;padding:8px 14px;font:inherit;font-weight:700;font-size:15px;cursor:pointer}
.fx-voix.on{border-color:#7950F2;background:#F3F0FF;color:#5F3DC4}
.fx-voix-vit{display:flex;align-items:center;gap:10px;font-size:20px;margin:4px 0 10px}
.fx-voix-range{flex:1;accent-color:#7950F2}
.fx-voix-v{font-size:15px;font-weight:700;min-width:84px}
/* 🧩 DYS grammaire : couleurs fixes des fonctions */
.fx-g-sujet{background:#D0EBFF;border-bottom:3px solid #1C7ED6;border-radius:6px;padding:0 4px}
.fx-g-verbe{background:#FFE3E3;border-bottom:3px solid #E03131;border-radius:6px;padding:0 4px}
.fx-g-comp{background:#D3F9D8;border-bottom:3px solid #2F9E44;border-radius:6px;padding:0 4px}
.fx-g-mot{background:#FFF3BF;border-bottom:3px solid #F59F00;border-radius:6px;padding:0 4px}
.f6-mot.fx-g-verbe{background:#FFE3E3;outline:2px solid #E03131}
.fx-g-neg{color:#E03131}
.fx-phrase-g{margin-bottom:6px}
.fx-legende-g{font-size:13px;opacity:.8;margin:-4px 0 10px}
/* téléphone : le tableau ne dépasse pas */
@media (max-width:480px){ .f6-table{font-size:13px;table-layout:fixed} .f6-table td:nth-child(2){white-space:normal} .f6-table th,.f6-table td{overflow-wrap:anywhere} }
