/* =====================================================================
   Hypercampus — lecteur de séance (côté apprenant).
   Une séance = une suite d'étapes : animations (notions) et exercices
   intercalés, présentés par la formatrice. Aucun élément de production
   (storyboard, script, fichiers audio) n'est affiché à l'apprenant.
   ===================================================================== */
.sea{--t:#0f4a42;--ts:#e3eeeb;--a:#e85a2a;--as:#fdeae2;--ink:#14201e;--mut:#5b6b68;--line:#e2e0d8;--bg:#fafaf7;--pan:#fff;--sunk:#f0efe9;
  --travel:cubic-bezier(.45,0,.1,1);--arrive:cubic-bezier(.25,.8,.25,1);
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);max-width:1080px;margin:0 auto;padding:20px 16px 48px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .sea{--ink:#e6ecea;--mut:#9aaba7;--line:#24312e;--bg:#0c1413;--pan:#131d1b;--sunk:#0f1817;--ts:#14302b;--as:#3a1f14}}
:root[data-theme="dark"] .sea{--ink:#e6ecea;--mut:#9aaba7;--line:#24312e;--bg:#0c1413;--pan:#131d1b;--sunk:#0f1817;--ts:#14302b;--as:#3a1f14}
body.sea-body{margin:0;background:var(--sea-bg,#fafaf7)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) body.sea-body{--sea-bg:#0c1413}}
:root[data-theme="dark"] body.sea-body{--sea-bg:#0c1413}
.sea *{box-sizing:border-box}
/* le lien du parcours se pose sur la ligne de base du titre (dernière ligne), pas sous elle */
.sea-head{display:flex;justify-content:space-between;align-items:flex-end;align-items:last baseline;gap:6px 16px;flex-wrap:wrap;margin-bottom:14px}
.sea-kick{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--a)}
.sea h1{margin:4px 0 0;font-family:"Space Grotesk","Inter",sans-serif;font-size:clamp(22px,3.2vw,32px);line-height:1.15;letter-spacing:-.01em}
.sea-back{font-size:14px;font-weight:600;color:var(--mut);text-decoration:none}
.sea-back:hover{color:var(--ink)}
/* chapitres */
.sea-chaps{list-style:none;margin:0 0 12px;padding:0;display:flex;gap:6px;flex-wrap:wrap}
.sea-chaps li{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--mut);background:var(--pan);border:1px solid var(--line);border-radius:999px;padding:4px 10px 4px 6px;line-height:1.3}
.sea-chaps li i{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:10.5px;background:var(--sunk);color:var(--mut)}
.sea-chaps li.ex i{background:var(--as);color:var(--a)}
.sea-chaps li.cur{color:var(--ink);border-color:var(--t)}
.sea-chaps li.done i{background:var(--t);color:#fff}
.sea-chaps li{cursor:pointer;transition:border-color .15s,background .15s}
.sea-chaps li:hover{border-color:var(--t);color:var(--ink)}
.sea-chaps li:focus-visible{outline:3px solid var(--a);outline-offset:2px}
.sea-bar span{cursor:pointer}
/* retour arrière, visible au survol de la vidéo */
.sea-rw{position:absolute;left:2.5%;bottom:14%;z-index:6;display:flex;align-items:center;gap:6px;border:0;border-radius:999px;padding:8px 12px;background:rgba(20,32,30,.78);color:#fff;font:700 14px Inter,system-ui,sans-serif;cursor:pointer;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s,background .2s;touch-action:none}
.sea-rw small{font-size:11px;font-weight:500;opacity:.75}
.sea-stage:hover .sea-rw,.sea-rw:focus-visible{opacity:1;transform:none}
.sea-rw.long{background:#e85a2a}
.sea-rw.hit svg{animation:sea-rwspin .45s ease}
@keyframes sea-rwspin{from{transform:rotate(0)}to{transform:rotate(-300deg)}}
@media (hover:none){.sea-rw{opacity:.85;transform:none}.sea-rw small{display:none}}
/* scène 16:9 */
.sea-wrap{position:relative;container-type:inline-size}
.sea-stage{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:14px;background:#f3f1ea;color:#14201e;box-shadow:0 0 0 1px #0000000f,0 18px 40px -16px #0f4a4259;-webkit-user-select:none;user-select:none}
.sea-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .7s ease}
.sea-bg.on{opacity:1}
.sea-bg.clair{background:linear-gradient(160deg,#fbfcfb,#eaf2ef)}
.sea-layer{position:absolute;inset:0}
.sea-el{position:absolute;opacity:0;transition:opacity .5s ease,transform .7s var(--arrive)}
.sea-el.in{opacity:1;transform:none!important}
.sea-el.from-l{transform:translateX(-3cqw)}.sea-el.from-r{transform:translateX(3cqw)}.sea-el.from-b{transform:translateY(2.5cqw)}
.sea-char{bottom:0;display:block}
.sea-char .poses{position:relative;height:100%}
.sea-char img{height:100%;width:auto;display:block;filter:drop-shadow(0 .5cqw .6cqw #0000002e)}
.sea-char img+img{position:absolute;left:0;top:0}
.sea-char img{opacity:0;transition:opacity .25s}.sea-char img.on{opacity:1}
.sea-char.flip .poses{transform:scaleX(-1)}
.sea-char .tag{position:absolute;left:50%;bottom:calc(100% + .6cqw);transform:translateX(-50%);white-space:nowrap;background:#ffffffeb;border-radius:.7cqw;padding:.4cqw 1cqw;font-size:1.35cqw;font-weight:700;color:#0f4a42;box-shadow:0 .3cqw 1cqw #0f4a4224}
.sea-card{background:#fffffff2;border-radius:1cqw;padding:1.1cqw 1.4cqw;border-left:.45cqw solid #0f4a42;box-shadow:0 .5cqw 1.6cqw #0f4a4224;display:grid;gap:.35cqw;align-content:center}
.sea-card b{font-size:1.85cqw;line-height:1.2;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
.sea-card span{font-size:1.3cqw;line-height:1.3;color:#5b6b68}
.sea-card.amber{border-left-color:#c2561f;background:#fff8f3}
.sea-card.amber b{color:#a4441a}
.sea-title{background:#ffffffeb;border-radius:1cqw;padding:1.1cqw 1.6cqw;border-top:.45cqw solid #0f4a42;box-shadow:0 .5cqw 1.6cqw #0f4a421f}
.sea-title b{display:block;font-family:"Space Grotesk","Inter",sans-serif;font-size:2.7cqw;line-height:1.15;letter-spacing:-.01em}
.sea-title small{display:block;font-size:1.25cqw;font-weight:700;color:#e85a2a;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.3cqw}
.sea-arrow{position:absolute;inset:0;pointer-events:none;overflow:visible}
.sea-arrow path{fill:none;stroke:#e85a2a;stroke-width:.55cqw;stroke-linecap:round;stroke-linejoin:round}
.sea-arrow .ln{transition:stroke-dashoffset .8s var(--travel)}
.sea-arrow .hd{opacity:0;transition:opacity .2s .7s}
.sea-arrow .in .hd{opacity:1}
/* carte des secteurs, dessinée (pas une image) */
.sea-map{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:.7cqw;background:#ffffffd9;border-radius:1.2cqw;padding:.9cqw;box-shadow:0 .5cqw 1.6cqw #0f4a421f}
.sea-map div{border-radius:.8cqw;display:grid;align-content:center;justify-items:center;text-align:center;gap:.3cqw;padding:.6cqw;transition:background .5s,box-shadow .5s}
.sea-map b{font-size:1.5cqw;line-height:1.2}.sea-map span{font-size:1.15cqw;color:#5b6b68;line-height:1.25}
.sea-map .z1{background:#e3eeeb}.sea-map .z2{background:#e3eaf7}.sea-map .z3{background:#fbe9de}.sea-map .z4{background:#eee7f7}
.sea-map .vac{background:repeating-linear-gradient(135deg,#fff 0 .8cqw,#fdeae2 .8cqw 1.6cqw);box-shadow:inset 0 0 0 .25cqw #e85a2a}
.sea-map .vac b{color:#a4441a}
/* sous-titres dans l'image, comme une vidéo */
.sea-subs{position:absolute;left:50%;bottom:3cqw;transform:translateX(-50%);max-width:78%;text-align:center;z-index:9;pointer-events:none}
.sea-subs span{display:inline;background:#0c1413d9;color:#fff;font-size:clamp(13px,1.85cqw,22px);line-height:1.5;padding:.25em .55em;border-radius:.35em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.sea-subs:empty{display:none}
.sea-nocc .sea-subs{display:none}
.sea-big{position:absolute;inset:0;margin:auto;width:9cqw;height:9cqw;min-width:56px;min-height:56px;border-radius:50%;border:0;background:#e85a2a;color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 1cqw 3cqw #00000040;z-index:12}
.sea-big svg{width:40%;height:40%;margin-left:8%}
.sea-big[hidden]{display:none}
/* exercice intercalé : la formatrice explique, l'apprenant décide */
.sea-exo{color:#14201e;position:absolute;inset:0;z-index:10;border-radius:14px;overflow:hidden;display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:2.4cqw;padding:3cqw 3.2cqw;background:linear-gradient(160deg,#fbfcfb,#eaf2ef);opacity:0;transform:translateY(1.5cqw);transition:opacity .45s,transform .6s var(--arrive);pointer-events:none}
.sea-exo.in{opacity:1;transform:none;pointer-events:auto}
.sea-coach{display:grid;grid-template-columns:auto 1fr;gap:1.2cqw;align-content:start}
.sea-face{width:7.5cqw;height:7.5cqw;border-radius:50%;overflow:hidden;background:#e3eeeb;box-shadow:0 0 0 .3cqw #fff,0 .6cqw 1.4cqw #0f4a4230;flex:none}
.sea-face img{width:100%;height:100%;object-fit:cover;display:block}
.sea-face.talk{animation:sea-talk 1.6s ease-in-out infinite}
/* médaillon : satisfaction (petit saut, halo vert) / déception (tête qui se penche, halo orange) */
.sea-face{transition:box-shadow .25s,filter .25s}
.sea-face.happy{animation:sea-happy .7s cubic-bezier(.3,1.6,.5,1);box-shadow:0 0 0 3px #fff,0 0 0 7px #2fae6b,0 6px 14px #0f4a4230}
.sea-face.sad{animation:sea-sad .9s ease;box-shadow:0 0 0 3px #fff,0 0 0 7px #e85a2a,0 6px 14px #0f4a4230;filter:saturate(.75)}
@keyframes sea-happy{0%{transform:none}30%{transform:translateY(-9px) scale(1.08) rotate(-3deg)}55%{transform:translateY(0) scale(.97)}75%{transform:translateY(-3px) rotate(2deg)}100%{transform:none}}
@keyframes sea-sad{0%{transform:none}20%{transform:rotate(-9deg) translateY(2px)}40%{transform:rotate(7deg) translateY(2px)}60%{transform:rotate(-5deg) translateY(3px)}100%{transform:rotate(-4deg) translateY(3px)}}
.sea-coach{position:relative}
.sea-react{position:absolute;left:-2px;top:64px;z-index:3;font-size:13px;font-weight:800;line-height:1.2;white-space:nowrap;padding:6px 10px;border-radius:12px 12px 12px 3px;background:#fff;box-shadow:0 6px 16px #0f4a4226;opacity:0;transform:translateY(6px) scale(.9);transition:opacity .2s,transform .25s cubic-bezier(.3,1.6,.5,1);pointer-events:none}
.sea-react.in{opacity:1;transform:none}
.sea-react.happy{color:#1c7a4b;border:2px solid #2fae6b}
.sea-react.sad{color:#b4471b;border:2px solid #e85a2a}
@media (prefers-reduced-motion:reduce){.sea-face.happy,.sea-face.sad{animation:none}}
@keyframes sea-talk{0%,100%{box-shadow:0 0 0 .3cqw #fff,0 .6cqw 1.4cqw #0f4a4230}50%{box-shadow:0 0 0 .3cqw #fff,0 0 0 .9cqw #0f4a421a,0 .6cqw 1.4cqw #0f4a4230}}
.sea-say{background:#fff;border-radius:.4cqw 1.4cqw 1.4cqw 1.4cqw;padding:1.3cqw 1.5cqw;box-shadow:0 .5cqw 1.6cqw #0f4a421f;display:grid;gap:.6cqw;align-self:start}
.sea-say .who{font-size:1.2cqw;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#e85a2a}
.sea-say p{margin:0;font-size:1.75cqw;line-height:1.45}
.sea-say p+p{color:#5b6b68;font-size:1.5cqw}
.sea-say.ok{border-left:.45cqw solid #0f4a42}.sea-say.ko{border-left:.45cqw solid #c2561f}
.sea-say .verdict{font-weight:800;font-size:1.75cqw}
.sea-say.ok .verdict{color:#0f4a42}.sea-say.ko .verdict{color:#a4441a}
.sea-task{display:grid;gap:1cqw;align-content:start}
.sea-ctx{background:#fff;border-radius:1.2cqw;padding:1.3cqw 1.5cqw;box-shadow:0 .5cqw 1.6cqw #0f4a421a;display:grid;gap:.5cqw}
.sea-ctx .from{font-size:1.3cqw;color:#5b6b68}.sea-ctx .from b{color:#14201e}
.sea-ctx p{margin:0;font-size:1.6cqw;line-height:1.45}
.sea-q{font-family:"Space Grotesk","Inter",sans-serif;font-weight:700;font-size:1.85cqw;line-height:1.25;margin-top:.4cqw}
.sea-ch{display:flex;gap:1cqw;align-items:center;width:100%;text-align:left;font:inherit;font-size:1.55cqw;line-height:1.35;color:#14201e;background:#fff;border:.18cqw solid #e2e0d8;border-radius:1.1cqw;padding:1cqw 1.2cqw;cursor:pointer;transition:border-color .2s,background .2s,opacity .3s}
.sea-ch:hover:not(:disabled){border-color:#0f4a42;background:#f6faf8}
.sea-ch:focus-visible{outline:.3cqw solid #e85a2a;outline-offset:.2cqw}
.sea-ch .rd{width:2cqw;height:2cqw;border-radius:50%;border:.18cqw solid #c9c6bc;flex:none;display:grid;place-items:center;font-size:1.1cqw;font-weight:800;color:#fff}
.sea-ch.good{border-color:#0f4a42;background:#e3eeeb}.sea-ch.good .rd{background:#0f4a42;border-color:#0f4a42}
.sea-ch.bad{border-color:#c2561f;background:#fdeae2}.sea-ch.bad .rd{background:#c2561f;border-color:#c2561f}
.sea-ch:disabled{cursor:default}
.sea-ch.dim{opacity:.5}
.sea-go{justify-self:start;font:inherit;font-weight:700;font-size:1.5cqw;border:0;border-radius:999px;background:#e85a2a;color:#fff;padding:1cqw 2cqw;cursor:pointer;opacity:0;transform:translateY(.6cqw);transition:opacity .3s,transform .4s var(--arrive)}
.sea-go.in{opacity:1;transform:none}
.sea-end .sea-say p{font-size:1.6cqw}
.sea-end ul{margin:.4cqw 0 0;padding-left:1.4em;display:grid;gap:.5cqw;font-size:1.55cqw;line-height:1.4}
/* étape jeu : la formatrice reste à côté du jeu */
.sea-viewport,.sea-gframe{min-width:0}
.sea-game{display:none;min-width:0}
.sea.game-on{max-width:1440px}
.sea.game-on .sea-wrap{display:none}
.sea.game-on .sea-game{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:16px;align-items:start}
.sea-gcoach{position:sticky;top:12px;display:grid;gap:12px;color:#14201e}
.sea-gcoach .sea-coach{grid-template-columns:56px 1fr;gap:10px}
.sea-gcoach .sea-face{width:56px;height:56px}
.sea-gcoach .sea-say{padding:12px 14px;border-radius:4px 14px 14px 14px;gap:6px}
.sea-gcoach .sea-say .who{font-size:11.5px}
.sea-gcoach .sea-say p,.sea-gcoach .sea-say .verdict{font-size:14.5px}
.sea-gsteps{margin:2px 0 0;padding-left:1.3em;display:grid;gap:6px;font-size:14px;line-height:1.4}
.sea-tip{font-size:13.5px!important;color:#5b6b68;border-top:1px solid #e2e0d8;padding-top:8px}
.sea-gend{display:grid;gap:8px;justify-items:start}
.sea-gend .sea-go{font-size:15px;padding:10px 18px}
.sea-gframe iframe{width:100%;height:clamp(480px,calc(100svh - 220px),980px);border:1px solid var(--line);border-radius:12px;background:#fff;display:block}
@media (max-width:860px){
  .sea.game-on .sea-game{grid-template-columns:1fr}
  .sea-gcoach{position:static}
  .sea-gframe iframe{height:82vh}
}
/* barre de contrôle */
.sea-ctrl{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}
.sea-btn{font:inherit;font-size:14px;font-weight:700;border:1px solid var(--line);background:var(--pan);color:var(--ink);border-radius:999px;padding:8px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.sea-btn:hover{border-color:var(--t)}
.sea-btn.pri{background:var(--t);border-color:var(--t);color:#fff}
.sea-btn:disabled{opacity:.45;cursor:default}
.sea-bar{position:relative;flex:1;min-width:140px;height:8px;display:flex;gap:3px}
.sea-bar span{position:relative;height:100%;border-radius:4px;background:var(--line);overflow:hidden}
.sea-bar span.ex{background:var(--as)}
.sea-bar span b{position:absolute;inset:0 auto 0 0;background:var(--t);border-radius:4px;width:0}
.sea-bar span.ex b{background:var(--a)}
.sea-time{font-variant-numeric:tabular-nums;font-size:13.5px;color:var(--mut);min-width:5.5em}
.sea-cc{font-size:13.5px;color:var(--mut);display:flex;gap:6px;align-items:center;cursor:pointer}
.sea-pager{display:flex;justify-content:space-between;gap:12px;margin-top:22px;font-weight:600}
.sea-pager a{color:var(--t);text-decoration:none}.sea-pager a:last-child{text-align:right;margin-left:auto}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .sea-pager a{color:#5cc2ae}}
:root[data-theme="dark"] .sea-pager a{color:#5cc2ae}
/* téléphone : l'exercice passe sous la scène, en pleine largeur et à taille de lecture */
@media (max-width:720px){
  .sea-exo{position:static;grid-template-columns:1fr;padding:16px;gap:14px;transform:none;opacity:1;display:none;overflow:visible}
  .sea-exo.in{display:grid}
  .sea-wrap.exo-on .sea-stage{display:none}
  .sea-face{width:56px;height:56px}
  .sea-say{padding:12px 14px;gap:6px;border-radius:4px 14px 14px 14px}
  .sea-say .who{font-size:11.5px}.sea-say p,.sea-say .verdict{font-size:15px}.sea-say p+p{font-size:14px}
  .sea-ctx{padding:12px 14px;border-radius:12px}.sea-ctx .from{font-size:13px}.sea-ctx p{font-size:15px}
  .sea-q{font-size:16px}
  .sea-ch{font-size:15px;padding:12px;border-radius:12px;gap:10px;border-width:1.5px}
  .sea-ch .rd{width:20px;height:20px;font-size:11px;border-width:1.5px}
  .sea-go{font-size:15px;padding:10px 18px}
  .sea-end ul{font-size:15px}
  .sea-end .sea-say p{font-size:15px}
  .sea-subs span{font-size:13px}
}
@media (prefers-reduced-motion:reduce){.sea *{transition:none!important;animation:none!important}}
/* la scène tient dans l'écran : la largeur du lecteur suit la hauteur disponible (titre, chapitres et commandes compris) */
/* --sea-chrome : hauteur réelle du titre, des chapitres et des commandes, mesurée par hc-seance.js (270px sans mesure) */
.sea{max-width:max(560px,calc((100svh - var(--sea-chrome,270px)) * 1.7778));margin-left:auto;margin-right:auto}
/* Ordinateur : le lien du parcours reste sur la ligne du titre, aligné sur sa dernière ligne */
@media (min-width:861px){
  .sea-head{flex-wrap:nowrap}
  .sea-back{flex:none;white-space:nowrap;padding-bottom:4px}
  /* l'interrupteur du lexique quitte le bas de l'écran, où il recouvrait les commandes et le lien de séance précédente */
  body.sea-body .hcl-toggle{bottom:auto;top:4px;left:auto;right:12px;padding:5px 9px;box-shadow:0 2px 8px rgba(10,20,26,.12)}
}
/* Téléphone : l'interrupteur du lexique est en haut à droite, le surtitre lui laisse la place */
@media (max-width:640px){.sea-kick{padding-right:54px}}
/* Ordinateur portable (écran peu haut) : en-tête resserré pour laisser la place à la scène */
@media (min-width:861px) and (max-height:780px){
  .sea{padding-top:12px}
  .sea h1{font-size:24px}
  .sea-head{margin-bottom:10px}.sea-chaps{margin-bottom:10px}.sea-ctrl{margin-top:10px}
  .sea-pager{margin-top:12px}
}
/* Sur ordinateur, réserver la place du titre et des commandes avant de dimensionner le jeu. */
@media (min-width:861px){
  .sea.game-on:not(.sea-fullscreen):not(.sea-host){box-sizing:border-box;height:100svh;padding-bottom:16px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto}
  .sea.game-on .sea-viewport{min-height:0}
  .sea.game-on .sea-game{height:100%;min-height:0;align-items:stretch}
  .sea.game-on .sea-gcoach{min-height:0;overflow:auto;align-content:start}
  .sea.game-on .sea-gframe{height:100%;min-height:0}
  .sea.game-on .sea-gframe iframe{height:100%}
  /* Bas d'écran de la simulation : les liens de séance précédente et suivante sont centrés sur une même ligne, au ras des bords du lecteur. */
  .sea.game-on:not(.sea-fullscreen):not(.sea-host){padding-bottom:12px}
  .sea.game-on .sea-pager{margin-top:10px;align-items:center}
}
/* Le lecteur complet reste présent : chapitres, contenu et commandes. Le bureau
   transmet aussi cet état aux séances intégrées quand il porte le plein écran. */
.sea.sea-fullscreen{box-sizing:border-box;max-width:none;width:100%;height:100dvh;margin:0;padding:12px 16px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;background:var(--bg);overflow:hidden}
.sea-fullscreen .sea-head,.sea-fullscreen .sea-pager{display:none}
.sea-fullscreen .sea-chaps,.sea-fullscreen .sea-ctrl{margin:0}
.sea-fullscreen .sea-viewport{min-height:0;display:grid;place-items:center;container-type:size}
.sea-fullscreen .sea-wrap{width:min(100cqw,calc(100cqh * 16 / 9))}
.sea-fullscreen .sea-stage{border-radius:8px}
.sea-fullscreen.game-on .sea-game{width:100%;height:100%;min-height:0;align-items:stretch}
.sea-fullscreen .sea-gcoach{position:static;min-height:0;overflow:auto;align-content:start}
.sea-fullscreen .sea-gframe{height:100%;min-height:0}
.sea-fullscreen .sea-gframe iframe{height:100%}
@media (max-width:860px){
  .sea-fullscreen.game-on .sea-game{grid-template-rows:auto minmax(0,1fr);gap:8px}
  .sea-fullscreen .sea-gcoach{max-height:25dvh}
}
@media (max-width:720px){
  .sea-fullscreen .sea-wrap.exo-on{width:100%;height:100%;min-height:0;overflow:auto}
}
/* Hôte conservé entre deux pages de formation ouvertes en plein écran. */
.sea.sea-host{display:block;max-width:none;width:100%;height:100dvh;padding:0;overflow:hidden;box-sizing:border-box}
.sea-host>:not(.sea-nextframe){display:none}
.sea-nextframe{display:block;width:100%;height:100%;border:0;background:var(--bg)}

/* figure d'une notion (SVG du générateur) */
.sea-fig{border-radius:1.4cqw;overflow:hidden;box-shadow:0 .6cqw 2cqw #0003;background:#fff}
.sea-fig svg{display:block;width:100%;height:100%}
