@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/lexend-latin-wght-normal-ci0D1wrL.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f4ff;--surface:#fff;--surface-2:#ece8fb;--text:#1b1733;--text-muted:#5a5478;--border:#c9c2ea;--border-input:#7a739e;--primary:#5b3fd9;--on-primary:#fff;--success:#0f766e;--close:#1d4ed8;--review:#b45309;--reward:#ffd166;--focus:#5b3fd9;--highlight-bg:#ffe58a;--highlight-text:#1b1733;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--screen-margin:16px;--content-width:640px;--content-width-wide:720px;--content-width-adult:var(--content-width-wide);--bp-rail:1024px;--r-sm:8px;--r-md:24px;--r-lg:28px;--r-full:9999px;--hit:48px;--hit-primary:56px;--shadow-1:0 1px 3px #14121f1f;--shadow-2:0 8px 24px #14121f29;--t-fast:.12s;--t-base:.2s;--t-celebrate:1.2s;--ease:cubic-bezier(0, 0, .2, 1);--z-content:0;--z-nav:10;--z-sheet:20;--z-dialog:30;--z-toast:40;--font-base:"Lexend Variable", system-ui, sans-serif;--font-display:"Bricolage Grotesque Variable", "Lexend Variable", system-ui, sans-serif;--font-readable:"Atkinson Hyperlegible", system-ui, sans-serif}@media (width>=600px){:root{--screen-margin:24px}}@media (width>=1024px){:root{--content-width:var(--content-width-wide)}}@media (width>=1280px){:root{--content-width:800px;--content-width-adult:1120px;--screen-margin:32px}}@media (width>=1920px){:root{--content-width-adult:1280px}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12101e;--surface:#1d1a2f;--surface-2:#272342;--text:#f4f1ff;--text-muted:#b6b0d6;--border:#3a3560;--border-input:#8a85b3;--primary:#cdf35a;--on-primary:#12101e;--success:#5ee0c4;--close:#5adbea;--review:#ffa463;--reward:#ffd166;--focus:#5adbea;--highlight-bg:#5a4a10;--highlight-text:#fff6d4;--shadow-1:none;--shadow-2:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12101e;--surface:#1d1a2f;--surface-2:#272342;--text:#f4f1ff;--text-muted:#b6b0d6;--border:#3a3560;--border-input:#8a85b3;--primary:#cdf35a;--on-primary:#12101e;--success:#5ee0c4;--close:#5adbea;--review:#ffa463;--reward:#ffd166;--focus:#5adbea;--highlight-bg:#5a4a10;--highlight-text:#fff6d4;--shadow-1:none;--shadow-2:none}}.space-adult{--danger:#b42318}:root[data-theme=dark] .space-adult{--danger:#ff8a80}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .space-adult{--danger:#ff8a80}}:root{--subj-cyan:#5adbea;--subj-orange:#ffa463;--subj-pink:#ff8fc7;--subj-violet:#9d8cff;--subj-green:#8fe3a0;--subj-blue:#8db4ff;--subj-neutral:#ece8fb;--ink-on-subject:#12101e}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-base);text-align:left;margin:0;font-size:1rem;font-weight:400;line-height:1.5}:root[data-font=readable] body{font-family:var(--font-readable)}h1,h2{font-family:var(--font-display);letter-spacing:-.01em}:root[data-font=readable] h1,:root[data-font=readable] h2{font-family:var(--font-readable)}h1{font-size:1.875rem;font-weight:800;line-height:1.25}h2{font-size:1.0625rem;font-weight:600;line-height:1.3}.page{box-sizing:border-box;max-width:var(--content-width);padding-inline:var(--screen-margin);margin-inline:auto}.page.page--wide{max-width:var(--content-width-adult)}.reading{max-width:60ch;line-height:1.7}.caption{font-size:.875rem;line-height:1.5}a{color:var(--primary)}button,input,select,textarea{font:inherit}button{min-height:var(--hit);font-size:1rem;font-weight:600;line-height:1}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.celebration{color:var(--reward);display:inline-block;position:relative}.celebration[data-mode=animated]{animation:ease-out both celebration-pop}.celebration__confetti{border-radius:var(--r-full);background:var(--reward);opacity:0;width:8px;height:8px;animation:1.2s ease-out both celebration-confetti;animation-delay:calc(var(--i) * 40ms);--angle:calc(var(--i) * 60deg);position:absolute;top:50%;left:50%}@keyframes celebration-pop{0%{transform:scale(.8)}to{transform:scale(1)}}@keyframes celebration-confetti{0%{opacity:1;transform:rotate(var(--angle)) translateY(0)}to{opacity:0;transform:rotate(var(--angle)) translateY(-36px)}}@media (prefers-contrast:more){:root{--border:var(--border-input);--text-muted:var(--text)}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.streak-week{justify-content:space-between;gap:4px;margin:0;padding:0;list-style:none;display:flex}.streak-week li{border:2px dashed var(--border);border-radius:var(--r-full);width:40px;height:40px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;font-size:.8125rem;font-weight:600;display:flex;position:relative}.streak-week li[data-state=active]{background:var(--primary);border:2px solid var(--primary);color:var(--on-primary)}.badge-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.badge-gallery li{text-align:center;font-size:.8125rem;font-weight:500}.badge-gallery__btn{cursor:pointer;background:0 0;border:0;padding:0}@media (width<=599px){:root{--hit:44px;--hit-primary:50px}body{line-height:1.45}body h1{font-size:1.5rem;line-height:1.2}body .reading{line-height:1.55}body .shell__main{padding-top:var(--s-3)}body .btn{padding:0 16px}body .btn--primary{font-size:1rem}body .chat-head{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title mode""sessions sessions";align-items:center;gap:4px 8px;margin-bottom:8px;padding-block:6px;display:grid}body .chat-head__title{grid-area:title;gap:8px;min-width:0;margin:0}body .chat-head--compact .chat-head__title{margin:0}body .chat-head .companion{width:28px;height:28px}body .chat-head h1,body .chat-head--compact h1{font-size:1rem}body .chat-head .mode-switch{grid-area:mode;margin:0;padding:2px}body .mode-switch__btn{white-space:nowrap;min-height:34px;padding:0 10px;font-size:.8125rem}body .chat-head .sessions{flex-wrap:wrap;grid-area:sessions;align-items:center;gap:4px 8px;display:flex}body .sessions__strip{flex:1 1 0;gap:6px;min-width:0;padding:0}body .sessions__chip{max-width:11rem;min-height:36px;padding:0 12px;font-size:.875rem}body .sessions__actions{flex:none;gap:4px;margin:0}body .sessions__icon{width:36px;height:36px}body .sessions__form{flex:100%}body .message-log{gap:8px}body .bubble-row{gap:6px}body .bubble-row .companion{width:28px;height:28px}body .bubble{border-radius:18px;max-width:92%;padding:8px 12px;font-size:.9375rem;line-height:1.45}body .md p,body .md ul,body .md ol,body .md pre{margin-bottom:6px}body .bubble__actions{flex-wrap:wrap;align-items:center;gap:2px 8px;margin-top:4px;display:flex}body .bubble__actions .listen{align-items:center;gap:6px;display:inline-flex}body .bubble__actions .listen__button{min-height:36px;padding:0 12px;font-size:.8125rem}body .bubble__actions select{min-height:36px;font-size:.8125rem}body .bubble__disagree{min-height:36px;margin-top:0;font-size:.8125rem}body .bubble__delete{min-width:36px;min-height:36px;margin-top:0}body .composer{gap:2px;padding:4px 6px 4px 14px}body .composer__field{min-height:36px;padding:6px 0}body .composer__aux,body .composer__send,body .mic--compact .mic__button{width:40px;min-width:40px;height:40px;min-height:40px}body .ec16 .segmented{flex-wrap:nowrap;gap:6px;margin-bottom:8px}body .ec16 .segmented__option{border-width:1px;min-width:0;min-height:36px;padding:0 6px;font-size:.8125rem}body .ec16>p{margin:0 0 8px}body .bubble--student{align-items:flex-end;gap:6px;display:flex}body .bubble--student .bubble__text{flex:auto;min-width:0}body .bubble--student .bubble__actions{flex:none;margin-top:0}body .bubble--student .bubble__delete{min-width:32px;min-height:32px}body .composer{flex-flow:wrap;align-items:flex-end}body .composer__field{flex:8rem;width:auto;min-width:0}body .composer__bar{flex-wrap:nowrap;flex:none;gap:6px}}.btn{min-height:var(--hit);border-radius:var(--r-full);cursor:pointer;transition:background var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);border:2px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:600;text-decoration:none;display:inline-flex}.btn:not(:disabled):hover{box-shadow:var(--shadow-1);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.btn:not(:disabled):hover{transform:none}}.btn--primary{min-height:var(--hit-primary);background:var(--primary);color:var(--on-primary);font-size:1.0625rem}.btn--secondary{color:var(--text);border-color:var(--border);background:0 0}.btn--danger{background:var(--surface);color:var(--danger);border-color:var(--danger)}.btn--text{color:var(--primary);background:0 0}.btn--block{width:100%;display:flex}.btn--link{text-decoration:underline}.auth-page{gap:var(--s-4);max-width:420px;padding:var(--s-5) var(--s-4);flex-direction:column;margin:0 auto;display:flex}.page .auth-page{padding-inline:0}.auth-page .btn--text{align-self:flex-start;padding-inline:0}.auth-page h1,.auth-page p{margin:0}.auth-page form{gap:var(--s-4);flex-direction:column;display:flex}.btn>span{justify-content:center;align-items:center;gap:8px;display:inline-flex}.btn:disabled,.listen__button[aria-disabled=true]{cursor:not-allowed;opacity:.6}.btn:focus-visible,.chip:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.btn__spinner{border-radius:var(--r-full);border:2px solid;border-top-color:#0000;width:1em;height:1em;animation:.8s linear infinite btn-spin}@keyframes btn-spin{to{transform:rotate(360deg)}}.chip{min-height:var(--hit);border:2px solid var(--border);border-radius:var(--r-full);color:var(--text);white-space:nowrap;cursor:pointer;background:0 0;align-items:center;padding:0 16px;font-weight:500;display:inline-flex}.card{padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text)}.card__title{margin:0 0 var(--s-3)}.pill{align-items:center;gap:var(--s-2);padding:var(--s-1) var(--s-3);border-radius:var(--r-full);background:var(--surface);color:var(--text);border:2px solid;display:inline-flex}.pill--juste,.pill--traitee{border-color:var(--success)}.pill--presque{border-color:var(--close)}.pill--a-revoir{border-color:var(--review)}.pill--nouvelle{border-color:var(--primary)}.pill--vue{border-color:var(--text-muted)}.field{gap:var(--s-2);flex-direction:column;display:flex}.field__label{color:var(--text);font-weight:600}.field__help{color:var(--text-muted);margin:0}.field__input{min-height:var(--hit-primary);padding:0 var(--s-4);border:2px solid var(--border-input);border-radius:var(--r-full);background:var(--surface);color:var(--text)}.field__input[aria-invalid=true]{border-color:var(--review)}.field__error{color:var(--review);margin:0;font-weight:600}.switch{text-align:left;justify-content:space-between;align-items:center;gap:var(--s-3);width:100%;min-height:var(--hit);min-width:var(--hit);padding:0 var(--s-3);color:var(--text);background:0 0;border:0;font-size:1rem;font-weight:500;display:flex}.switch__track{border:2px solid var(--border);border-radius:var(--r-full);background:var(--surface-2);flex:none;align-items:center;width:52px;height:32px;padding:2px;display:inline-flex}.switch__thumb{border-radius:var(--r-full);background:var(--text-muted);width:24px;height:24px}.switch[aria-checked=true] .switch__track{background:var(--primary);border-color:var(--primary);justify-content:flex-end}.switch[aria-checked=true] .switch__thumb{background:var(--on-primary)}.switch:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.segmented{gap:var(--s-2);flex-wrap:wrap;width:100%;display:flex}.segmented__option{min-height:44px;min-width:var(--hit);padding:0 var(--s-3);border:2px solid var(--border);border-radius:var(--r-full);color:var(--text);cursor:pointer;background:0 0;flex:auto;font-size:.9375rem;font-weight:500}.segmented__option[aria-checked=true]{border-color:var(--primary);background:var(--primary);color:var(--on-primary);font-weight:600}.segmented__option:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.course-list{gap:var(--s-2);margin:0 0 var(--s-4);padding:0;list-style:none;display:grid}.course-card{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.progress{gap:var(--s-2);flex-direction:column;display:flex}.progress__bar{border-radius:var(--r-full);background:var(--surface-2);height:10px;overflow:hidden}.progress__fill{background:var(--primary);height:100%;transition:width var(--t-fast) var(--ease)}.sheet,.dialog{display:flex;position:fixed;inset:0}.sheet{z-index:var(--z-sheet);align-items:flex-end}.dialog{z-index:var(--z-dialog);padding:var(--s-4);justify-content:center;align-items:center}.sheet__scrim,.dialog__scrim{background:#00000080;position:absolute;inset:0}.sheet__panel,.dialog__panel{padding:var(--s-4);background:var(--surface);color:var(--text);position:relative}.sheet__panel{border-radius:var(--r-lg) var(--r-lg) 0 0;width:100%;max-height:85vh;overflow-y:auto}.dialog__panel{border-radius:var(--r-md);width:100%;max-width:420px}.sheet__title,.dialog__title{margin:0 0 var(--s-3)}.dialog__actions{justify-content:flex-end;gap:var(--s-3);margin-top:var(--s-4);display:flex}.sheet__panel:focus,.dialog__panel:focus{outline:none}.toast{left:50%;bottom:var(--s-6,24px);z-index:var(--z-toast);padding:var(--s-2) var(--s-4);border-radius:var(--r-md);background:var(--text);color:var(--surface);position:fixed;transform:translate(-50%)}.banner{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-4);background:var(--surface-2);color:var(--text);border-bottom:1px solid var(--border);display:flex}.banner__close{min-width:44px;min-height:44px;color:inherit;background:0 0;border:0;text-decoration:underline}.chip[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.tabbar{z-index:10;padding:4px 8px env(safe-area-inset-bottom,0px);background:var(--surface);border-top:1px solid var(--border);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.shell__main{padding-top:var(--s-5);padding-bottom:calc(var(--hit) + var(--s-3) + env(safe-area-inset-bottom,0px))}@media (width>=1024px){.shell{padding-left:96px}.shell.shell--no-nav{padding-left:0}.tabbar{justify-content:flex-start;gap:var(--s-2);width:96px;padding-top:var(--s-4);border-top:0;border-right:1px solid var(--border);flex-direction:column;top:0;right:auto}.tabbar__item{flex:none}.shell__main{padding-bottom:var(--s-4)}.sheet{padding:var(--s-4);justify-content:center;align-items:center}.sheet__panel{border-radius:var(--r-lg);width:100%;max-width:560px;max-height:85vh}}@media (hover:hover) and (pointer:fine){.tabbar__item:hover,.admin-subnav__link:hover{background:var(--surface-2,var(--border))}button:not(:disabled),[role=button]{cursor:pointer}}.tabbar__item{min-width:var(--hit);min-height:var(--hit);color:var(--text-muted);white-space:nowrap;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-width:0;padding:4px 8px;font-size:.75rem;font-weight:500;text-decoration:none;display:flex}.tabbar__item[aria-current=page]{color:var(--text);font-weight:600}.tabbar__item[aria-current=page] svg{color:var(--primary);stroke-width:2.4px}.tabbar__item{position:relative}.tabbar__badge{background:var(--primary);min-width:1.25rem;color:var(--on-primary);text-align:center;border-radius:999px;padding:0 6px;font-size:.75rem;font-weight:700;line-height:1.25rem;position:absolute;top:2px;left:calc(50% + 4px)}.admin-subnav{gap:0 var(--s-3);padding:0 0 var(--s-2);flex-wrap:wrap;display:flex}.admin-subnav__link{min-height:var(--hit);color:var(--primary);align-items:center;display:inline-flex}.admin-subnav__link[aria-current=page]{font-weight:700}.alert-card{margin-block:12px}.alert-card__actions{flex-wrap:wrap;gap:8px;display:flex}.tabbar__item:focus-visible,.skip-link:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.skip-link{background:var(--surface);color:inherit;padding:12px 16px;position:absolute;top:0;left:0;transform:translateY(-120%)}.skip-link:focus{transform:translateY(0)}.key-figure__label,.key-figure__hint{margin:0}.key-figure__value{font-family:var(--font-display);margin:0;font-size:1.875rem;font-weight:800;line-height:1.1}.bilan-figures{gap:var(--s-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.key-figure{border-radius:var(--r-md);flex-direction:column;gap:4px;display:flex}.key-figure__label{color:var(--text-muted);font-size:.8125rem}.adult-page{gap:var(--s-3);padding:0 0 var(--s-4);flex-direction:column;margin:0 auto;display:flex}.adult-page>h1,.adult-page>p{margin:0}.adult-page .field{max-width:24rem}.adult-page table{border-collapse:collapse;width:100%}.adult-page th,.adult-page td{padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--border);text-align:left}.adult-page th{color:var(--text-muted);font-size:.875rem}.page--wide .field,.page--wide .segmented{max-width:24rem}.page--wide p,.page--wide li{max-width:75ch}.alert-list,.cost-list{gap:var(--s-3);margin-top:var(--s-3);display:grid}.alert-list .alert-card{margin-block:0}@media (width>=1280px){.alert-list,.cost-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.adult-back{margin-bottom:.5rem;display:inline-block}.bilan-week{justify-content:center;align-items:center;gap:.75rem;margin:0;display:flex}.bilan-week>span{text-align:center}.bilan-subjects{gap:.5rem;padding:0;list-style:none;display:grid}.bilan-subjects__link{border:1px solid var(--border,currentColor);min-height:2.75rem;color:inherit;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem .75rem;text-decoration:none;display:flex}.bilan-subjects__link>:first-child{text-transform:capitalize;font-weight:600}.bilan-subjects__chevron{margin-left:auto}@media (width>=64rem){.bilan-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.bilan-figures{grid-column:1/-1}}@media (width>=1280px){.bilan-figures{grid-template-columns:repeat(3,minmax(0,1fr))}}.time-chart__bars{align-items:flex-end;gap:.5rem;height:8rem;display:flex}.time-chart__col{text-align:center;flex-direction:column;flex:1;justify-content:flex-end;align-items:stretch;height:100%;display:flex}.time-chart__bar{background:currentColor;border-radius:4px 4px 0 0;min-height:2px}.ec26-install{margin:var(--s-3) var(--screen-margin);padding:var(--s-4);background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-lg)}@media (width>=1024px){.ec26-install{max-width:calc(var(--content-width) - 2 * var(--screen-margin));margin-left:max(var(--screen-margin), calc(50% - (var(--content-width) / 2) + var(--screen-margin)))}}.ec26-install h2{margin:0 0 var(--s-2)}.ec26-install ol{margin:0 0 var(--s-3);padding-inline-start:var(--s-5)}.ec26-actions{gap:var(--s-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.ec26-actions button{min-height:var(--hit);min-width:var(--hit);padding:0 var(--s-4);border:2px solid var(--primary);border-radius:var(--r-md);background:var(--surface);color:var(--primary);font:inherit;cursor:pointer}.ec26-actions button:first-child:not(:last-child){background:var(--primary);color:var(--on-primary)}.ec26-actions button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.mic__button{align-items:center;gap:var(--s-2);min-height:var(--hit);padding:0 var(--s-4);border:2px solid var(--border-input);border-radius:var(--r-full);background:var(--surface);color:var(--text);cursor:pointer;display:inline-flex}.mic__button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.space-adult .btn--text,.admin-list .btn--text{padding-inline:0}.admin-subnav{gap:var(--s-2);margin-inline:calc(var(--screen-margin) * -1);padding-inline:var(--screen-margin);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.admin-subnav__link{min-height:44px;padding:0 var(--s-4);border:2px solid var(--border);border-radius:var(--r-full);background:var(--surface);color:var(--text);flex:none;text-decoration:none}.admin-subnav__link[aria-current=page]{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.admin-link{min-height:var(--hit);color:var(--primary);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.admin-link:hover{text-decoration:underline}.admin-list{gap:var(--s-3);margin:0 0 var(--s-4);flex-direction:column;padding:0;list-style:none;display:flex}.admin-list>li{align-items:center;gap:var(--s-1) var(--s-2);padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);flex-wrap:wrap;display:flex}.admin-list .admin-link,.admin-list .btn--text{min-height:44px;padding:0 var(--s-3);border-radius:var(--r-full);background:var(--surface-2);font-size:.9375rem;font-weight:600}.admin-list>li>strong{font-size:1.0625rem}.md__diagram--zoomable{cursor:zoom-in}.md__enlarge{margin:var(--s-2,8px) 0;padding:var(--s-2,8px) var(--s-3,12px);border-radius:var(--r-md,12px);color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid;display:block}.mmd-lightbox{z-index:var(--z-dialog);padding:var(--s-2,8px);display:flex;position:fixed;inset:0}.mmd-lightbox__scrim{background:#000000b3;position:absolute;inset:0}.mmd-lightbox__panel{background:var(--surface);width:100%;color:var(--text);border-radius:var(--r-md);flex-direction:column;display:flex;position:relative;overflow:hidden}.mmd-lightbox__panel:focus{outline:none}.mmd-lightbox__bar{gap:var(--s-2,8px);padding:var(--s-2,8px);display:flex}.mmd-lightbox__bar button{min-width:48px;min-height:48px;padding:0 var(--s-3,12px);border-radius:var(--r-md,12px);color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid;font-size:1.25rem}.mmd-lightbox__bar button:disabled{opacity:.4;cursor:default}.mmd-lightbox__bar .mmd-lightbox__close{margin-left:auto;font-size:1rem}.mmd-lightbox__viewport{padding:var(--s-2,8px);flex:1;overflow:auto}.mmd-lightbox__stage svg{width:100%;height:auto;display:block;max-width:none!important}.stepper{gap:var(--s-2,8px);margin:0 0 var(--s-4,16px);padding:0;list-style:none;display:flex}.stepper__item{text-align:center;opacity:.6;flex-direction:column;flex:1;align-items:center;gap:4px;font-size:.8rem;display:flex}.stepper__item--current,.stepper__item--done{opacity:1}.stepper__item--current .stepper__label{font-weight:700}.stepper__dot{border:2px solid;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:700;display:grid}.stepper__item--current .stepper__dot,.stepper__item--done .stepper__dot{background:var(--primary,#3b5bdb);border-color:var(--primary,#3b5bdb);color:var(--on-primary,#fff)}.busy{align-items:center;gap:var(--s-3,12px);margin:var(--s-4,16px) 0;flex-direction:column;display:flex}.busy__dots{gap:8px;display:flex}.busy__dots span{background:var(--primary,#3b5bdb);border-radius:50%;width:12px;height:12px;animation:1s ease-in-out infinite busy-bounce}.busy__dots span:nth-child(2){animation-delay:.15s}.busy__dots span:nth-child(3){animation-delay:.3s}.busy__bar{background:#7f7f7f40;border-radius:4px;width:100%;max-width:320px;height:8px;position:relative;overflow:hidden}.busy__fill{background:var(--primary,#3b5bdb);border-radius:4px;height:100%;transition:width .4s;display:block}.busy__fill--indeterminate{width:40%;animation:1.4s ease-in-out infinite busy-slide}@keyframes busy-bounce{0%,80%,to{opacity:.5;transform:translateY(0)}40%{opacity:1;transform:translateY(-10px)}}@keyframes busy-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion:reduce){.busy__dots span,.busy__fill--indeterminate{animation:none}}.preparing{align-items:center;gap:var(--s-3,12px);padding:var(--s-6,32px) var(--s-4,16px);text-align:center;flex-direction:column;display:flex}.preparing__orb{background:radial-gradient(circle at 30% 30%, var(--surface), var(--surface-2));width:132px;height:132px;box-shadow:var(--shadow-2), 0 0 0 0 color-mix(in srgb, var(--primary) 40%, transparent);border-radius:50%;place-items:center;animation:2s ease-out infinite preparing-pulse;display:grid;position:relative}.preparing__icon{font-size:3.5rem;animation:2.4s ease-in-out infinite preparing-float}.preparing__spark{font-size:1.4rem;animation:1.8s ease-in-out infinite preparing-twinkle;position:absolute}.preparing__spark--1{top:-6px;right:4px}.preparing__spark--2{color:var(--primary);animation-delay:.6s;bottom:10px;left:-10px}.preparing__spark--3{animation-delay:1.2s;bottom:-4px;right:-8px}.preparing__title{margin:var(--s-3,12px) 0 0;font-family:var(--font-display);font-size:1.5rem;font-weight:700}.preparing__tip{min-height:1.5em;color:var(--text-muted);margin:0;animation:.6s both preparing-fade}@keyframes preparing-pulse{0%{box-shadow:var(--shadow-2), 0 0 0 0 color-mix(in srgb, var(--primary) 40%, transparent)}to{box-shadow:var(--shadow-2), 0 0 0 36px transparent}}@keyframes preparing-float{0%,to{transform:translateY(4px)rotate(-6deg)}50%{transform:translateY(-6px)rotate(6deg)}}@keyframes preparing-twinkle{0%,to{opacity:.2;transform:scale(.6)}50%{opacity:1;transform:scale(1.2)}}@keyframes preparing-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.preparing__orb,.preparing__icon,.preparing__spark,.preparing__tip{animation:none}}.companion{--c:#5b3fd9;--ink:#14121f;color:var(--c);flex:none;display:inline-block}.companion--violet{--c:#5b3fd9}.companion--turquoise{--c:#0f766e}.companion--ambre{--c:#b45309}.companion--rose{--c:#be185d}.companion--bleu{--c:#1d4ed8}.companion--vert{--c:#3f7d20}.companion__ink{color:#fff}:root[data-theme=dark] .companion{--ink:#14121f}:root[data-theme=dark] .companion--violet{--c:#a99bff}:root[data-theme=dark] .companion--turquoise{--c:#5ee0c4}:root[data-theme=dark] .companion--ambre{--c:#ffb86b}:root[data-theme=dark] .companion--rose{--c:#ff9ac1}:root[data-theme=dark] .companion--bleu{--c:#8db4ff}:root[data-theme=dark] .companion--vert{--c:#a3e36f}:root[data-theme=dark] .companion__ink{color:var(--ink)}.companion--badge{background:var(--surface-2,#f0edf7);border-radius:50%}@keyframes companion-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3%)}}@keyframes companion-fade{0%{opacity:0}to{opacity:1}}.companion--loop{animation:3s ease-in-out infinite companion-float}.companion--state-dort{animation-duration:6s}.companion--fade{animation:.2s ease-out companion-fade}@media (prefers-reduced-motion:reduce){.companion--loop{animation:none}}.subj{background:var(--subj-neutral);color:var(--ink-on-subject)}.subj--cyan{background:var(--subj-cyan)}.subj--orange{background:var(--subj-orange)}.subj--pink{background:var(--subj-pink)}.subj--violet{background:var(--subj-violet)}.subj--green{background:var(--subj-green)}.subj--blue{background:var(--subj-blue)}.programme-tile{gap:var(--s-3);min-height:104px;padding:var(--s-4);border-radius:var(--r-md);font-weight:600;line-height:1.2;text-decoration:none;display:flex}.programme-tile:focus-visible{outline-color:var(--text)}.programme-tile--tile{flex-direction:column;justify-content:space-between}.programme-tile--wide{align-items:center;min-height:72px}.programme-tile__text{gap:var(--s-1);flex-direction:column;display:flex}.programme-tile__title{font-size:1.0625rem}.programme-tile__subtitle{font-size:.9375rem;font-weight:500}.ec05{gap:var(--s-4);padding-block:0 var(--s-4);flex-direction:column;display:flex}.ec05__header{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.ec05__moment{color:var(--text-muted);margin:0;font-size:.875rem}.ec05 h1{letter-spacing:-.02em;margin:0;font-size:1.5rem;line-height:1.2}.ec05__hero,.ec05__progress,.ec05__empty,.ec05 [data-testid=adult-message]{gap:var(--s-4);padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;display:flex}.ec05__hero-row{align-items:center;gap:var(--s-4);display:flex}.ec05__hero-text{margin:0;font-size:1.0625rem;font-weight:500;line-height:1.4}.ec05__empty{text-align:center;color:var(--text);align-items:center}.ec05__empty p{margin:0}.ec05__empty .btn,.ec05__hero .btn{align-self:stretch}.ec05__tiles{gap:var(--s-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ec05__tiles .programme-tile{grid-column:1/-1}@media (width>=1280px){.ec05__tiles{grid-template-columns:repeat(5,minmax(0,1fr))}.ec05__tiles .programme-tile{grid-column:auto}}.ec05__tile{justify-content:space-between;gap:var(--s-3);min-height:104px;padding:var(--s-4);border-radius:var(--r-md);color:#12101e;flex-direction:column;font-size:1.0625rem;font-weight:600;line-height:1.2;text-decoration:none;display:flex}.ec05__tile--cyan{background:#5adbea}.ec05__tile--orange{background:#ffa463}.ec05__tile:focus-visible{outline-color:var(--text)}.ec05__progress{gap:var(--s-3)}.ec05__progress p{margin:0}.ec05__progress-head{justify-content:space-between;align-items:baseline;display:flex}.ec05__xp{color:var(--text-muted);font-size:.875rem}.ec05__streak{align-items:center;gap:var(--s-2);min-height:44px;padding:0 var(--s-3);border-radius:var(--r-full);background:var(--surface-2);white-space:nowrap;flex:none;margin:0;font-size:.9375rem;font-weight:600;display:flex}.ec05__streak svg{color:#ffa463}.ec05__level{font-family:var(--font-display);font-size:1.125rem;font-weight:800}.ec05__encouragement{color:var(--text-muted);margin:0}.ec05 [data-testid=adult-message] h2{margin:0;font-size:1.0625rem}.ec05 [data-testid=adult-message] p{margin:0}.ec05 [data-testid=rules-banner]{gap:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;display:flex}.ec05 [data-testid=rules-banner] p{margin:0;font-size:.9375rem;line-height:1.4}.dl{gap:var(--s-4);padding-block:var(--s-5) var(--s-7);color:var(--text);flex-direction:column;display:flex}.dl-hero{align-items:center;gap:var(--s-3);padding:var(--s-6) var(--s-4) var(--s-5);border-radius:var(--r-lg);background:radial-gradient(120% 90% at 50% 0%, var(--surface-2) 0%, transparent 70%), var(--surface);text-align:center;flex-direction:column;display:flex}.dl-hero__icon{box-shadow:var(--shadow-2);border-radius:22px}.dl-hero h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.625rem;line-height:1.15}.dl-hero__lead{max-width:28em;color:var(--text-muted);margin:0;line-height:1.5}.dl-card{gap:var(--s-3);padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;display:flex}.dl-card h2{font-family:var(--font-display);margin:0;font-size:1.125rem}.dl-card p{margin:0;line-height:1.5}.dl-card--primary{text-align:center;border-color:var(--primary);align-items:center}.dl-card--quiet{background:var(--surface-2);border-color:#0000}.dl-card__version{font-weight:500}.dl-card__version span,.dl-card__meta{color:var(--text-muted);font-size:.875rem}.dl-download{min-height:var(--hit-primary);align-self:stretch}.dl-card__check{width:100%;color:var(--text-muted);font-size:.875rem}.dl-card__check code{margin-top:var(--s-2);overflow-wrap:anywhere;font-size:.75rem;display:block}.dl-steps{gap:var(--s-3);flex-direction:column;margin:0;padding-left:1.25rem;line-height:1.5;display:flex}.dl-update{justify-content:space-between;align-items:center;gap:var(--s-3);margin:var(--s-3) var(--screen-margin) 0;padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);box-shadow:var(--shadow-1);flex-wrap:wrap;display:flex}.dl-update__text{flex-direction:column;margin:0;font-size:.9375rem;display:flex}.dl-update__text span{color:var(--text-muted);font-size:.875rem}
