:root{--papier: #F3F8F6;--papier-fonce: #E4EEEA;--papier-voile: rgba(243, 248, 246, .85);--fiche: #FFFFFF;--quadrillage: #D3E6E0;--trait: #B5CFC7;--encre: #14233A;--encre-douce: #3E5068;--encre-pale: #55657A;--encre-ombre: rgba(20, 35, 58, .06);--encre-ombre-forte: rgba(20, 35, 58, .18);--correcteur: #F2663A;--action: #0E7C72;--action-fonce: #0A625A;--action-relief: #074A44;--action-pale: #D9F2EE;--action-sur-pale: #0A625A;--sur-action: #FFFFFF;--stylo-bleu: #1F5FB8;--stylo-bleu-pale: #E6EDFA;--juste: #1E7A4F;--juste-trait: #2FA36B;--juste-pale: #E3F4EA;--postit: #FFD84D;--postit-pale: #FFF3C4;--postit-texte: #7A5B00;--erreur: #B3261E;--erreur-pale: #FBEAE8;--nuit: var(--encre);--sur-nuit: var(--papier);--sur-nuit-doux: var(--quadrillage);--quadrillage-nuit: rgba(243, 248, 246, .07);--police-titre: "Fraunces", Georgia, "Times New Roman", serif;--police-texte: "Atkinson Hyperlegible Next", "Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--reglage-titre: "SOFT" 100;--texte-xs: .8125rem;--texte-sm: .875rem;--texte-base: 1rem;--texte-lg: 1.125rem;--texte-xl: 1.25rem;--texte-2xl: 1.5rem;--texte-3xl: 1.875rem;--texte-4xl: clamp(2.25rem, 5vw, 3.25rem);--texte-geant: clamp(3rem, 8vw, 4.5rem);--graisse-normale: 400;--graisse-moyenne: 600;--graisse-forte: 700;--interligne-plein: 1;--interligne-serre: 1.15;--interligne: 1.55;--interligne-large: 1.7;--approche-titre: -.01em;--approche-surtitre: .08em;--mesure: 68ch;--espace-0: 0;--espace-1: .25rem;--espace-2: .5rem;--espace-3: .75rem;--espace-4: 1rem;--espace-5: 1.5rem;--espace-6: 2rem;--espace-7: 3rem;--espace-8: 4rem;--espace-9: 6rem;--largeur-page: 72rem;--largeur-lecture: 44rem;--largeur-formulaire: 27.5rem;--cible: 44px;--hauteur-champ: 46px;--hauteur-bouton: 48px;--marge-page: var(--espace-5);--entete-plan: 50;--bordure: 1px;--bordure-forte: 2px;--trait-geste: 2.5px;--rayon-xs: 3px;--rayon-sm: 6px;--rayon: 10px;--rayon-lg: 16px;--rayon-rond: 999px;--ombre-fiche: 0 1px 0 var(--quadrillage), 0 2px 6px var(--encre-ombre);--ombre-pile: 0 1px 0 var(--quadrillage), 4px 5px 0 -1px var(--fiche), 4px 5px 0 0 var(--trait);--ombre-levee: 0 2px 0 var(--quadrillage), 0 10px 24px -8px var(--encre-ombre-forte);--ombre-bouton: 0 3px 0 var(--action-relief);--ombre-bouton-appui: 0 1px 0 var(--action-relief);--focus: 0 0 0 3px var(--papier), 0 0 0 5px var(--encre);--focus-ecart: 3px;--incline: -1deg;--incline-inverse: 1.2deg;--incline-tampon: -8deg;--soulevement: -2px;--enfoncement: 2px;--taille-icone: 1.5rem;--taille-icone-lg: 1.75rem;--trait-icone: 1.9;--taille-tampon: 7.25rem;--taille-tampon-sm: 5.5rem;--maille: 24px;--motif-quadrillage: linear-gradient(var(--quadrillage) 1px, transparent 1px), linear-gradient(90deg, var(--quadrillage) 1px, transparent 1px);--motif-quadrillage-nuit: linear-gradient(var(--quadrillage-nuit) 1px, transparent 1px), linear-gradient(90deg, var(--quadrillage-nuit) 1px, transparent 1px);--duree-instant: .12s;--duree-courte: .2s;--duree: .32s;--duree-trace: .6s;--courbe: cubic-bezier(.2, .7, .3, 1);--courbe-tampon: cubic-bezier(.3, 1.6, .5, 1)}@keyframes trace{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.anim-trace{stroke-dasharray:1;stroke-dashoffset:1;animation:trace var(--duree-trace) var(--courbe) forwards}@keyframes tampon{0%{opacity:0;transform:rotate(var(--incline-tampon)) scale(1.4)}to{opacity:1;transform:rotate(var(--incline-tampon)) scale(1)}}.anim-tampon{animation:tampon var(--duree) var(--courbe-tampon) both}@keyframes secousse{0%,to{transform:translateY(0)}40%{transform:translateY(var(--enfoncement))}}.anim-secousse{animation:secousse var(--duree-courte) var(--courbe) both}@keyframes refus{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.anim-refus{animation:refus .24s var(--courbe)}@keyframes apparition{0%{opacity:0;transform:translateY(var(--espace-2))}to{opacity:1;transform:none}}.anim-apparition{animation:apparition var(--duree) var(--courbe) both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:0s!important;animation-delay:0s!important;transition:none!important}.anim-trace{animation:none;stroke-dashoffset:0}.anim-tampon{animation:none;opacity:1;transform:rotate(var(--incline-tampon))}.anim-secousse,.anim-refus,.anim-apparition{animation:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;overflow-x:clip}body{font-family:var(--police-texte);font-size:var(--texte-base);line-height:var(--interligne);color:var(--encre);background:var(--papier);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-weight:var(--graisse-moyenne);line-height:var(--interligne-serre);letter-spacing:var(--approche-titre);color:var(--encre)}h1,strong,b{font-weight:var(--graisse-forte)}a{color:var(--stylo-bleu);text-underline-offset:var(--focus-ecart)}a:hover{color:var(--encre)}button,input,select,textarea{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}img,svg,video{max-width:100%;height:auto}::selection{background:var(--postit);color:var(--encre)}:focus{outline:none}:focus-visible{outline:var(--bordure-forte) solid var(--encre);outline-offset:var(--focus-ecart)}:where(label){display:block;margin-bottom:var(--espace-2);color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}:where(input:not([type=checkbox],[type=radio]),select,textarea){width:100%;min-height:var(--hauteur-champ);padding:var(--espace-2) var(--espace-3);border:var(--bordure-forte) solid var(--trait);border-radius:var(--rayon-sm);background:var(--fiche);color:var(--encre);font-size:var(--texte-base);transition:border-color var(--duree-instant) var(--courbe)}:where(input:not([type=checkbox],[type=radio]),select,textarea):hover{border-color:var(--encre-pale)}:where(input:not([type=checkbox],[type=radio]),select,textarea):focus-visible{border-color:var(--encre)}:where(input,textarea)::placeholder{color:var(--encre-pale)}:where(input:disabled,select:disabled,textarea:disabled){background:var(--papier-fonce);cursor:not-allowed}:where(textarea){min-height:calc(var(--hauteur-champ) * 2);resize:vertical}:where(input[type=checkbox],input[type=radio]){width:var(--espace-5);height:var(--espace-5);flex-shrink:0;accent-color:var(--action);cursor:pointer}:where(fieldset){border:0;min-width:0}:where(legend){margin-bottom:var(--espace-2);color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;width:100%;max-width:var(--largeur-page);margin:0 auto;padding:var(--espace-5) var(--marge-page) var(--espace-7)}.loading{padding:var(--espace-7) var(--espace-4);text-align:center;color:var(--encre-pale);font-weight:var(--graisse-moyenne)}.has-session .public-home{display:none}.bande-quadrillee{position:relative;isolation:isolate}.bande-quadrillee:before{content:"";position:absolute;z-index:-1;inset:0 calc(50% - 50vw);background-color:var(--papier);background-image:var(--motif-quadrillage);background-size:var(--maille) var(--maille);border-bottom:var(--bordure) solid var(--quadrillage)}.quadrille{background-color:var(--fiche);background-image:var(--motif-quadrillage);background-size:var(--maille) var(--maille)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:640px){:root{--marge-page: var(--espace-4)}}@media(min-width:641px){.main-content{padding-top:var(--espace-6)}}.surtitre,.landing-eyebrow{display:block;font-family:var(--police-texte);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase;color:var(--action-fonce)}.bouton-principal,.bouton-secondaire,.bouton-danger,.bouton-danger-plein{display:inline-flex;align-items:center;justify-content:center;gap:var(--espace-2);min-height:var(--hauteur-bouton);padding:var(--espace-2) var(--espace-5);border:0;border-radius:var(--rayon-sm);font-family:var(--police-texte);font-size:var(--texte-base);font-weight:var(--graisse-forte);line-height:var(--interligne-serre);text-align:center;text-decoration:none;cursor:pointer;transition:transform var(--duree-instant) var(--courbe),box-shadow var(--duree-instant) var(--courbe),background-color var(--duree-instant) var(--courbe)}.bouton-principal{background:var(--action);color:var(--sur-action);box-shadow:var(--ombre-bouton)}.bouton-principal:hover:not(:disabled){background:var(--action-fonce);color:var(--sur-action)}.bouton-principal:active:not(:disabled){transform:translateY(var(--enfoncement));box-shadow:var(--ombre-bouton-appui)}.bouton-secondaire{background:var(--fiche);color:var(--encre);box-shadow:inset 0 0 0 var(--bordure-forte) var(--encre)}.bouton-secondaire:hover:not(:disabled){background:var(--papier-fonce);color:var(--encre)}.bouton-danger{background:var(--fiche);color:var(--erreur);box-shadow:inset 0 0 0 var(--bordure-forte) var(--erreur)}.bouton-danger:hover:not(:disabled){background:var(--erreur-pale);color:var(--erreur)}.bouton-danger-plein{background:var(--erreur);color:var(--sur-action)}.bouton-danger-plein:hover:not(:disabled){background:var(--encre);color:var(--sur-action)}.bouton-texte,.login-mode-toggle,.forgot-link{display:inline-flex;align-items:center;gap:var(--espace-1);min-height:var(--cible);padding:0 var(--espace-1);border:0;background:transparent;color:var(--stylo-bleu);font-family:var(--police-texte);font-size:var(--texte-sm);font-weight:var(--graisse-forte);cursor:pointer}.bouton-texte:hover:not(:disabled),.login-mode-toggle:hover,.forgot-link:hover{color:var(--encre);text-decoration:underline;text-underline-offset:var(--focus-ecart)}.bouton-petit,.bouton-danger.bouton-petit{min-height:var(--cible);padding:var(--espace-1) var(--espace-4);font-size:var(--texte-sm)}.bouton-principal:disabled,.bouton-secondaire:disabled,.bouton-danger:disabled,.bouton-danger-plein:disabled,.bouton-texte:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.bouton-secondaire{white-space:nowrap}.bouton-principal{position:relative;z-index:1}@media(max-width:640px){.form-actions>button,.bouton-plein-mobile{width:100%}}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:0 var(--espace-4)}.form-group{margin-bottom:var(--espace-4)}.optional-label{color:var(--encre-pale);font-weight:var(--graisse-normale)}.form-actions{display:flex;flex-wrap:wrap;gap:var(--espace-3);align-items:center}.radio-option{display:flex;align-items:center;gap:var(--espace-3);min-height:var(--cible);margin:var(--espace-2) 0;padding:var(--espace-2) var(--espace-4);border:var(--bordure-forte) solid var(--trait);border-radius:var(--rayon-sm);background:var(--fiche);color:var(--encre);font-size:var(--texte-base);font-weight:var(--graisse-moyenne);cursor:pointer;transition:border-color var(--duree-instant) var(--courbe),background-color var(--duree-instant) var(--courbe)}.radio-option:hover{border-color:var(--encre-pale)}.radio-option:has(input:checked){border-color:var(--action);background:var(--action-pale)}.radio-option:has(input:disabled){opacity:.5;cursor:not-allowed}fieldset.form-group>select,fieldset.form-group>input{margin-top:var(--espace-2)}.fiche,.landing-classe,.landing-theme,.login-form,.dashboard,.pass-test,.editor-section,.student-form,.panneau,.parent-stat-card,.stat-card{border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche);box-shadow:var(--ombre-fiche)}.fiche,.landing-classe,.landing-theme{padding:var(--espace-5)}.fiche-pile{box-shadow:var(--ombre-pile)}a.fiche-lien,.fiche-lien,a.landing-classe,a.landing-theme{color:inherit;text-decoration:none;transition:transform var(--duree-courte) var(--courbe),box-shadow var(--duree-courte) var(--courbe),border-color var(--duree-courte) var(--courbe)}a.fiche-lien:hover,a.landing-classe:hover,a.landing-theme:hover{transform:translateY(var(--soulevement));box-shadow:var(--ombre-levee);color:inherit}.dashboard,.pass-test{padding:var(--espace-6)}.pass-test{max-width:var(--largeur-lecture);margin:0 auto}.dashboard>h2,.eleves-list>h2,.pass-test>h2,.exercise-editor-page>h2{margin-bottom:var(--espace-5);font-size:var(--texte-2xl)}.pass-test>h2{text-align:center}.panneau>.pass-test{max-width:none;padding:0;border:0;box-shadow:none;background:transparent}.panneau>.pass-test>h2{display:none}@media(max-width:640px){.fiche,.landing-classe,.landing-theme,.dashboard,.pass-test{padding:var(--espace-4)}}.postit{position:relative;padding:var(--espace-4) var(--espace-5);background:var(--postit);color:var(--encre);font-weight:var(--graisse-moyenne);line-height:var(--interligne-serre);box-shadow:var(--ombre-fiche);transform:rotate(var(--incline-inverse))}.postit strong{display:block;margin-bottom:var(--espace-1);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-xl)}.error,.message-erreur,.editor-feedback-error,.success,.profile-success,.editor-feedback-success,.message-succes,.message-info{margin-bottom:var(--espace-4);padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);font-size:var(--texte-base);font-weight:var(--graisse-moyenne);line-height:var(--interligne)}.error,.message-erreur,.editor-feedback-error{background:var(--erreur-pale);color:var(--erreur)}.success,.profile-success,.editor-feedback-success,.message-succes{background:var(--juste-pale);color:var(--juste)}.message-info{background:var(--stylo-bleu-pale);color:var(--encre)}.message-erreur{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--espace-2) var(--espace-4)}.message-erreur button{min-height:var(--cible);border:0;background:transparent;color:inherit;font-weight:var(--graisse-forte);text-decoration:underline;cursor:pointer}.editor-feedback{margin-bottom:var(--espace-4)}.answer-feedback{margin:var(--espace-4) auto 0;font-weight:var(--graisse-forte)}.answer-feedback.good{color:var(--juste)}.answer-feedback.bad{color:var(--erreur)}.badge,.session-status,.palier-badge{display:inline-flex;align-items:center;gap:var(--espace-1);padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);font-size:var(--texte-xs);font-weight:var(--graisse-forte);line-height:var(--interligne-serre);white-space:nowrap}.badge{background:var(--papier-fonce);color:var(--encre)}.badge--bleu{background:var(--stylo-bleu-pale);color:var(--stylo-bleu)}.badge--juste,.session-status.complete,.palier-badge{background:var(--juste-pale);color:var(--juste)}.badge--postit,.session-status{background:var(--postit-pale);color:var(--postit-texte)}.badge--erreur{background:var(--erreur-pale);color:var(--erreur)}.palier-badge.bientot{background:var(--stylo-bleu-pale);color:var(--stylo-bleu)}.barre{height:var(--espace-2);overflow:hidden;border-radius:var(--rayon-xs);background:var(--papier-fonce);box-shadow:inset 0 0 0 var(--bordure) var(--trait)}.barre>span{display:block;height:100%;border-radius:inherit;background:var(--juste-trait);transition:width var(--duree) var(--courbe)}.icone{width:var(--taille-icone);height:var(--taille-icone);flex-shrink:0;stroke-width:var(--trait-icone)}.icone-cadre{display:inline-grid;place-items:center;width:var(--espace-7);height:var(--espace-7);flex-shrink:0;border-radius:var(--rayon-sm);background:var(--papier-fonce);color:var(--encre)}.icone-cadre .icone{width:var(--taille-icone-lg);height:var(--taille-icone-lg)}.geste{display:block;overflow:visible;pointer-events:none}.geste path{stroke:var(--correcteur);stroke-width:var(--trait-geste);stroke-linecap:round;stroke-linejoin:round}.geste-coche path{stroke:var(--juste-trait)}.souligne{position:relative;white-space:nowrap}.souligne>.geste{position:absolute;left:-2%;bottom:-.12em;width:104%;height:.3em}.souligne>.geste path{animation-delay:var(--duree)}.coche-liste{display:grid;gap:var(--espace-3);list-style:none}.coche-liste li{display:flex;align-items:flex-start;gap:var(--espace-3)}.coche-liste .geste-coche{width:var(--taille-icone);height:var(--taille-icone);flex-shrink:0}.coche-liste li:nth-child(2) .geste path{animation-delay:var(--duree-courte)}.coche-liste li:nth-child(3) .geste path{animation-delay:var(--duree)}.coche-liste li:nth-child(n+4) .geste path{animation-delay:var(--duree-trace)}.tampon{display:grid;place-items:center;width:var(--taille-tampon);aspect-ratio:1;flex-shrink:0;border:3px solid var(--correcteur);border-radius:var(--rayon-rond);background:var(--papier-voile);color:var(--correcteur);transform:rotate(var(--incline-tampon));pointer-events:none}.tampon-interieur{display:flex;flex-direction:column;align-items:center;justify-content:center;width:84%;height:84%;border:1.5px solid currentColor;border-radius:var(--rayon-rond)}.tampon-haut{font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.tampon-texte{font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-2xl);font-weight:var(--graisse-forte);line-height:var(--interligne-plein)}.tampon--petit{width:var(--taille-tampon-sm)}.tampon--petit .tampon-haut{display:none}.tampon--petit .tampon-texte{font-size:var(--texte-xl)}.repliable,.landing-faq details{border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche)}.repliable>summary,.landing-faq summary{display:flex;align-items:center;justify-content:space-between;gap:var(--espace-4);min-height:var(--cible);padding:var(--espace-3) var(--espace-5);cursor:pointer;list-style:none;color:var(--encre);font-size:var(--texte-lg);font-weight:var(--graisse-forte);line-height:var(--interligne-serre)}.repliable>summary::-webkit-details-marker,.landing-faq summary::-webkit-details-marker{display:none}.repliable>summary:after,.landing-faq summary:after{content:"+";display:grid;place-items:center;width:var(--espace-6);height:var(--espace-6);flex-shrink:0;border-radius:var(--rayon-rond);background:var(--papier-fonce);color:var(--action-fonce);font-family:var(--police-titre);font-size:var(--texte-xl);line-height:var(--interligne-plein)}.repliable[open]>summary:after,.landing-faq details[open] summary:after{content:"−"}.repliable>:not(summary),.landing-faq details p{padding:0 var(--espace-5) var(--espace-4)}.landing-faq details p{color:var(--encre-douce);line-height:var(--interligne-large)}.child-access{padding:var(--espace-3) var(--espace-5)}.child-access>summary{display:flex;align-items:center;gap:var(--espace-3);min-height:var(--cible);cursor:pointer;list-style:none;font-weight:var(--graisse-forte);color:var(--encre)}.child-access>summary::-webkit-details-marker{display:none}.child-access>summary:after{content:"▾";margin-left:auto;color:var(--encre-pale);transition:transform var(--duree-courte) var(--courbe)}.child-access[open]>summary:after{transform:rotate(180deg)}.child-access .parent-add-form{margin-top:var(--espace-4)}@media(max-width:640px){.child-access>summary{flex-wrap:wrap;gap:var(--espace-1) var(--espace-3)}.child-access>summary .surtitre{flex-basis:100%}.child-access>summary:after{position:absolute;right:var(--espace-5)}.child-access{position:relative}}.entete{position:sticky;top:0;z-index:var(--entete-plan);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--espace-3) var(--espace-5);padding:max(var(--espace-3),env(safe-area-inset-top)) max(var(--marge-page),calc((100vw - var(--largeur-page)) / 2 + var(--marge-page))) var(--espace-3);background:var(--papier);border-bottom:var(--bordure) solid var(--quadrillage)}.marque{display:flex;align-items:center;gap:var(--espace-3);min-width:0;color:var(--encre);text-decoration:none}.marque>div{min-width:0}a.marque:hover{color:var(--encre)}.marque-logo{display:grid;place-items:center;width:var(--cible);height:var(--cible);flex-shrink:0;border:var(--bordure-forte) solid var(--correcteur);border-radius:var(--rayon-rond);box-shadow:inset 0 0 0 3px var(--papier),inset 0 0 0 4px var(--correcteur);color:var(--action-fonce);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-base);font-weight:var(--graisse-forte);transform:rotate(var(--incline-tampon));transition:transform var(--duree-courte) var(--courbe)}.marque:hover .marque-logo{transform:rotate(0)}.marque h1,.marque-nom{display:block;font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-xl);font-weight:var(--graisse-moyenne);line-height:var(--interligne-serre);color:var(--encre)}.marque p{overflow:hidden;color:var(--encre-pale);font-size:var(--texte-xs);text-overflow:ellipsis;white-space:nowrap}.entete nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--espace-1)}.entete nav button,.entete nav a{display:inline-flex;align-items:center;gap:var(--espace-2);min-height:var(--cible);padding:0 var(--espace-3);border:0;border-radius:var(--rayon-sm);background:transparent;color:var(--encre-douce);font-family:var(--police-texte);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne);text-decoration:none;cursor:pointer;transition:background-color var(--duree-instant) var(--courbe),color var(--duree-instant) var(--courbe)}.entete nav button:hover,.entete nav a:hover{background:var(--papier-fonce);color:var(--encre)}.entete nav button.active{background:var(--fiche);color:var(--encre);font-weight:var(--graisse-forte);box-shadow:inset 0 0 0 var(--bordure) var(--trait)}.entete nav button.nav-avantages:not(.active){background:var(--postit-pale);color:var(--postit-texte)}.entete nav button.nav-avantages:not(.active):hover{background:var(--postit);color:var(--encre)}.entete nav button.nav-logout:hover{background:var(--erreur-pale);color:var(--erreur)}.entete nav a.nav-cta{padding:0 var(--espace-4);background:var(--fiche);color:var(--encre);font-weight:var(--graisse-forte);box-shadow:inset 0 0 0 var(--bordure-forte) var(--encre)}.entete nav a.nav-cta:hover{background:var(--papier-fonce)}.menu-bouton{display:none}@media(min-width:901px){.entete--connecte nav button{padding:0 var(--espace-2)}}@media(max-width:900px){.entete--connecte .menu-bouton{display:inline-flex;align-items:center;gap:var(--espace-2);min-height:var(--cible);padding:0 var(--espace-3);border:0;border-radius:var(--rayon-sm);background:var(--fiche);color:var(--encre);box-shadow:inset 0 0 0 var(--bordure) var(--trait);font-weight:var(--graisse-forte);cursor:pointer}.entete--connecte .marque{flex:1 1 0}.entete--connecte nav{display:none}.entete--connecte.menu-ouvert nav{display:flex;flex-direction:column;align-items:stretch;width:100%;padding:var(--espace-2) 0 var(--espace-3);border-top:var(--bordure) solid var(--quadrillage)}.entete--connecte nav button{justify-content:flex-start;font-size:var(--texte-base)}}.public-footer{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:var(--espace-5);padding:var(--espace-6) 0 var(--espace-2);border-top:var(--bordure) solid var(--quadrillage);color:var(--encre-pale);font-size:var(--texte-sm)}.public-footer strong{display:block;margin-bottom:var(--espace-2);color:var(--encre);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-base);font-weight:var(--graisse-moyenne)}.public-footer strong a{color:inherit}.public-footer ul{display:grid;list-style:none}.public-footer a{display:inline-block;padding:var(--espace-1) 0;color:var(--stylo-bleu);font-weight:var(--graisse-moyenne);text-decoration:none}.public-footer a:hover{color:var(--encre);text-decoration:underline}.app-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--espace-1) var(--espace-5);margin:var(--espace-6) auto var(--espace-4);padding:var(--espace-4);color:var(--encre-pale);font-size:var(--texte-sm)}.app-footer a{display:inline-flex;align-items:center;min-height:var(--cible);color:var(--stylo-bleu);font-weight:var(--graisse-moyenne)}.paliers{display:grid;gap:var(--espace-4);margin:0;padding:0;list-style:none}.palier{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:var(--espace-2) var(--espace-4);padding:var(--espace-4) var(--espace-5);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche);box-shadow:var(--ombre-fiche)}.palier-seuil{grid-column:1 / -1;color:var(--encre-pale);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.palier-seuil strong{margin-right:var(--espace-1);color:var(--encre);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-xl);letter-spacing:0;text-transform:none}.palier-emoji{display:grid;place-items:center;width:var(--espace-7);height:var(--espace-7);border-radius:var(--rayon-sm);background:var(--papier-fonce);color:var(--encre);font-size:var(--texte-2xl)}.palier-emoji .icone{width:var(--taille-icone-lg);height:var(--taille-icone-lg)}.palier-texte h3{display:flex;flex-wrap:wrap;align-items:center;gap:var(--espace-2);margin:0 0 var(--espace-1);font-size:var(--texte-lg)}.palier-texte p{margin:0;color:var(--encre-douce);font-size:var(--texte-sm);line-height:var(--interligne)}.palier-texte .palier-etat{margin-top:var(--espace-1);color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-forte)}.palier>.bouton-secondaire{grid-column:1 / -1}.palier.debloque{border-color:var(--juste-trait)}.palier.debloque .palier-emoji{background:var(--juste-pale);color:var(--juste)}.palier.prochain{background:var(--postit-pale);border-color:var(--postit)}.palier.prochain .palier-emoji{background:var(--postit)}.palier.bientot{border-style:dashed}.palier.verrouille{background:var(--papier-fonce);box-shadow:none}.palier.verrouille .palier-texte h3,.palier.verrouille .palier-seuil strong{color:var(--encre-pale)}.palier-admin{display:flex;align-items:center;gap:var(--espace-2)}.palier-admin select{width:auto;max-width:15rem;min-height:var(--cible);padding:var(--espace-1) var(--espace-2);font-size:var(--texte-sm)}@media(min-width:641px){.palier{grid-template-columns:8rem auto 1fr auto;padding:var(--espace-4) var(--espace-5)}.paliers-public .palier{grid-template-columns:8rem auto 1fr}.palier-seuil{grid-column:auto}.palier-seuil strong{display:block;font-size:var(--texte-2xl)}.palier>.bouton-secondaire{grid-column:auto}}.login-form{width:100%;max-width:var(--largeur-formulaire);margin:var(--espace-6) auto;padding:var(--espace-6);box-shadow:var(--ombre-pile)}.login-form h2{margin-bottom:var(--espace-2);font-size:var(--texte-3xl)}.login-form .login-intro{margin-bottom:var(--espace-5);color:var(--encre-douce)}.login-form .bouton-principal,.login-form .bouton-secondaire{width:100%}.login-form .bouton-principal{margin-top:var(--espace-1)}.login-mode-toggle{display:flex;margin:var(--espace-4) auto 0}.login-resend{margin-bottom:var(--espace-4)}.login-hint{margin-bottom:var(--espace-4);color:var(--encre-pale);font-size:var(--texte-sm)}.forgot-link{display:flex;margin:var(--espace-1) 0 0 auto}.forgot-hint{margin-top:var(--espace-2);color:var(--encre-pale);font-size:var(--texte-sm)}.password-setup form,.forgot-form{text-align:left}.login-confirmation{text-align:center}.login-confirmation-icon{display:inline-grid;place-items:center;width:var(--espace-8);height:var(--espace-8);margin-bottom:var(--espace-4);border-radius:var(--rayon-rond);background:var(--postit-pale);color:var(--encre)}.login-confirmation-icon .icone{width:var(--espace-6);height:var(--espace-6)}.login-confirmation .login-intro{margin:0 0 var(--espace-4)}.login-confirmation .login-intro strong{color:var(--encre);overflow-wrap:anywhere}.password-setup-account{display:grid;gap:var(--espace-1);margin:0 auto var(--espace-5);padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);background:var(--papier-fonce)}.password-setup-account span{color:var(--action-fonce);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.password-setup-account strong{color:var(--encre);overflow-wrap:anywhere}.login-kind{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--espace-1);margin:0 0 var(--espace-5);padding:var(--espace-1);border-radius:var(--rayon-sm);background:var(--papier-fonce)}.login-kind-option{display:flex;align-items:center;justify-content:center;gap:var(--espace-2);min-height:var(--hauteur-bouton);padding:var(--espace-2) var(--espace-3);border:0;border-radius:var(--rayon-sm);background:transparent;color:var(--encre-douce);cursor:pointer;transition:background-color var(--duree-instant) var(--courbe),color var(--duree-instant) var(--courbe)}.login-kind-option:hover{color:var(--encre)}.login-kind-option.active{background:var(--fiche);color:var(--encre);box-shadow:inset 0 0 0 var(--bordure) var(--trait),var(--ombre-fiche)}.login-kind-icon{display:grid;place-items:center;color:inherit}.login-kind-icon svg{width:var(--taille-icone);height:var(--taille-icone);fill:none;stroke:currentColor;stroke-width:var(--trait-icone);stroke-linecap:round;stroke-linejoin:round}.login-kind-text{display:grid;min-width:0;text-align:left;line-height:var(--interligne-serre)}.login-kind-text strong{font-size:var(--texte-base)}.login-kind-text small{color:var(--encre-pale);font-size:var(--texte-xs)}.login-kind-option.active .login-kind-text small{color:var(--action-fonce)}@media(max-width:640px){.login-form{margin:var(--espace-4) auto;padding:var(--espace-5) var(--espace-4)}.login-form h2{font-size:var(--texte-2xl)}}@media(max-width:380px){.login-kind{grid-template-columns:1fr}}.main-content:has(>.public-home){padding-top:0}.public-home{display:grid;align-content:start;gap:var(--espace-7)}.landing-hero{display:grid;gap:var(--espace-6);align-items:center;padding:var(--espace-6) 0 var(--espace-7)}.landing-hero-copy{display:grid;gap:var(--espace-4);justify-items:start}.landing-hero h1{font-size:var(--texte-4xl)}.landing-lead{max-width:var(--mesure);color:var(--encre-douce);font-size:var(--texte-lg);line-height:var(--interligne-large)}.landing-points{font-weight:var(--graisse-moyenne)}.landing-actions{display:flex;flex-wrap:wrap;gap:var(--espace-3);padding-top:var(--espace-2)}.landing-hero-card{position:relative;width:100%;max-width:var(--largeur-formulaire);justify-self:center;margin-top:var(--espace-7);scroll-margin-top:var(--espace-9)}.landing-hero-card .login-form{position:relative;margin:0}.landing-tampon{position:absolute;z-index:2;top:calc(var(--taille-tampon-sm) * -.8);right:calc(var(--espace-2) * -1);width:var(--taille-tampon-sm)}.landing-tampon .tampon-haut{display:none}.landing-tampon .tampon-texte{font-size:var(--texte-xl)}.landing-section{display:grid;gap:var(--espace-5)}.landing-section-entete{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--espace-5)}.landing-section-titre{display:grid;gap:var(--espace-2)}.landing-section h2,.landing-final h2{font-size:var(--texte-2xl)}.landing-section-lead{max-width:var(--mesure);color:var(--encre-douce);line-height:var(--interligne-large)}.landing-postit{max-width:17rem}.landing-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:var(--espace-4);list-style:none}.landing-step{display:grid;gap:var(--espace-3);align-content:start}.landing-step-haut{display:flex;align-items:center;justify-content:space-between}.landing-step-numero{color:var(--quadrillage);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-geant);font-weight:var(--graisse-forte);line-height:var(--interligne-plein)}.landing-step h3,.landing-theme h2,.landing-theme h3{font-size:var(--texte-xl)}.landing-step p,.landing-theme p{color:var(--encre-douce)}.landing-classes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:var(--espace-4);list-style:none}.landing-classe{height:100%;display:grid;gap:var(--espace-2);align-content:start;color:var(--encre-douce)}.landing-classe-nom{color:var(--encre);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-3xl);font-weight:var(--graisse-forte);line-height:var(--interligne-plein)}.landing-classe.bientot{border-style:dashed;background:var(--papier-fonce);box-shadow:none}.landing-classe.bientot .landing-classe-nom{color:var(--encre-pale)}.landing-theme-link{margin-top:var(--espace-2);color:var(--action-fonce);font-weight:var(--graisse-forte)}.landing-themes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:var(--espace-4);list-style:none}.landing-themes.compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr))}.landing-theme{height:100%;display:grid;gap:var(--espace-3);align-content:start}.landing-audiences{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:var(--espace-4)}.landing-audience{display:grid;gap:var(--espace-4);align-content:start}.landing-audience.enfants{background-color:var(--fiche);background-image:var(--motif-quadrillage);background-size:var(--maille) var(--maille)}.landing-audience li{color:var(--encre-douce)}.landing-faq{display:grid;gap:var(--espace-3)}.landing-final{display:grid;justify-items:center;gap:var(--espace-4);padding:var(--espace-7) var(--espace-5);border-radius:var(--rayon-lg);background-color:var(--nuit);background-image:var(--motif-quadrillage-nuit);background-size:var(--maille) var(--maille);color:var(--sur-nuit);text-align:center}.landing-final h2{color:var(--sur-nuit);font-size:var(--texte-3xl)}.landing-final p{max-width:var(--mesure);color:var(--sur-nuit-doux);font-size:var(--texte-lg)}@media(max-width:640px){.landing-actions a{flex:1 1 100%}.landing-postit{max-width:none;transform:none}.landing-final{padding:var(--espace-6) var(--espace-4)}.landing-final h2{font-size:var(--texte-2xl)}}@media(min-width:641px){.public-home{gap:var(--espace-8)}.landing-section h2{font-size:var(--texte-3xl)}.landing-tampon{top:calc(var(--taille-tampon) * -.5);right:calc(var(--espace-8) * -1);width:var(--taille-tampon)}.landing-tampon .tampon-haut{display:block}.landing-tampon .tampon-texte{font-size:var(--texte-2xl)}}@media(min-width:900px){.landing-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--espace-7);padding:var(--espace-8) 0 var(--espace-9)}.landing-hero-card{margin-top:0}.landing-classe-nom{font-size:var(--texte-4xl)}}.landing-capture{margin:0;padding:var(--espace-3);transform:rotate(var(--incline))}.landing-capture img{display:block;width:100%;height:auto;border-radius:var(--rayon-sm)}@media(max-width:640px){.landing-capture{transform:none;padding:var(--espace-2)}}.public-page{display:grid;align-content:start;gap:var(--espace-7)}.fil-ariane ol{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--espace-2);list-style:none;color:var(--encre-pale);font-size:var(--texte-sm)}.fil-ariane li+li:before{content:"›";margin-right:var(--espace-2);color:var(--encre-pale)}.fil-ariane a{display:inline-flex;align-items:center;min-height:var(--cible);color:var(--stylo-bleu);font-weight:var(--graisse-moyenne);text-decoration:none}.fil-ariane a:hover{color:var(--encre);text-decoration:underline}.fil-ariane [aria-current]{color:var(--encre);font-weight:var(--graisse-moyenne)}.public-page-hero{display:grid;gap:var(--espace-4);justify-items:start;max-width:var(--largeur-lecture)}.public-page-hero h1{font-size:var(--texte-4xl)}.public-page-hero p{color:var(--encre-douce);font-size:var(--texte-lg);line-height:var(--interligne-large)}.public-page-hero .public-page-meta{display:flex;flex-wrap:wrap;gap:var(--espace-2);color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-forte)}.public-page-icone{width:var(--espace-8);height:var(--espace-8);background:var(--postit);transform:rotate(var(--incline))}.public-page-icone .icone{width:var(--espace-6);height:var(--espace-6)}.notions{display:flex;flex-wrap:wrap;gap:var(--espace-2);list-style:none}.notions li{padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--stylo-bleu-pale);color:var(--stylo-bleu);font-weight:var(--graisse-moyenne)}.exemples{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:var(--espace-4);list-style:none}.exemple{display:grid;gap:var(--espace-3);align-content:start;padding:var(--espace-5);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche);box-shadow:var(--ombre-fiche)}.exemple-niveau{justify-self:start;padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--juste-pale);color:var(--juste);font-size:var(--texte-xs);font-weight:var(--graisse-forte)}.exemple-niveau.moyen{background:var(--postit-pale);color:var(--postit-texte)}.exemple-niveau.difficile{background:var(--action-pale);color:var(--action-sur-pale)}.exemple-enonce{color:var(--encre);font-size:var(--texte-lg);font-weight:var(--graisse-forte);line-height:var(--interligne);font-variant-numeric:tabular-nums}.exemple details{border-top:var(--bordure) dashed var(--trait)}.exemple details summary{display:flex;align-items:center;min-height:var(--cible);cursor:pointer;list-style:none;color:var(--stylo-bleu);font-weight:var(--graisse-forte)}.exemple details summary::-webkit-details-marker{display:none}.exemple details summary:before{content:"▸";margin-right:var(--espace-2);transition:transform var(--duree-courte) var(--courbe)}.exemple details[open] summary:before{transform:rotate(90deg)}.exemple details summary:hover{color:var(--encre)}.exemple details p{margin-top:var(--espace-2);color:var(--encre-douce)}.exemple details p:first-of-type{color:var(--juste)}.cours{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:var(--espace-4)}.cours-bloc{display:grid;gap:var(--espace-3);align-content:start;padding:var(--espace-5);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche);box-shadow:var(--ombre-fiche)}.cours-bloc h2{font-size:var(--texte-xl)}.cours-exemple{background-color:var(--fiche);background-image:var(--motif-quadrillage);background-size:var(--maille) var(--maille);box-shadow:var(--ombre-pile)}.cours-etapes{display:grid;gap:var(--espace-2);padding-left:var(--espace-5);color:var(--encre-douce);line-height:var(--interligne)}.cours-etapes li::marker{color:var(--action-fonce);font-family:var(--police-titre);font-weight:var(--graisse-forte)}.cours-resultat{display:flex;align-items:center;gap:var(--espace-2);justify-self:start;padding:var(--espace-2) var(--espace-4);border-radius:var(--rayon-sm);background:var(--juste-pale);color:var(--juste)}.cours-resultat .geste-coche{width:var(--taille-icone);height:var(--taille-icone)}.cours-retenir{display:grid;gap:var(--espace-2);justify-self:start;max-width:36rem}.cours-retenir>strong{font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-xl)}.cours-retenir p{font-size:var(--texte-lg);font-weight:var(--graisse-moyenne);line-height:var(--interligne)}.notions-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:var(--espace-3);list-style:none}.notions-cartes a{height:100%;display:grid;gap:var(--espace-1);padding:var(--espace-4) var(--espace-5);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche);box-shadow:var(--ombre-fiche);color:inherit;text-decoration:none;transition:transform var(--duree-courte) var(--courbe),box-shadow var(--duree-courte) var(--courbe)}.notions-cartes a:hover{transform:translateY(var(--soulevement));box-shadow:var(--ombre-levee);color:inherit}.notions-cartes strong{color:var(--encre);font-size:var(--texte-lg)}.notions-cartes span{color:var(--action-fonce);font-size:var(--texte-sm);font-weight:var(--graisse-forte)}.notions-liens{display:flex;flex-wrap:wrap;gap:var(--espace-2);list-style:none}.notions-liens a{display:inline-flex;align-items:center;min-height:var(--cible);padding:0 var(--espace-4);border-radius:var(--rayon-rond);background:var(--fiche);box-shadow:inset 0 0 0 var(--bordure) var(--trait);color:var(--encre);font-weight:var(--graisse-moyenne);text-decoration:none}.notions-liens a:hover{background:var(--papier-fonce);color:var(--encre)}.notions-index{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:var(--espace-5)}.notions-index h3{margin-bottom:var(--espace-2);font-size:var(--texte-lg)}.notions-index h3 a{display:inline-flex;align-items:center;gap:var(--espace-2);color:var(--encre);text-decoration:none}.notions-index h3 a:hover{text-decoration:underline}.notions-index ul{display:grid;padding-left:var(--espace-5)}.notions-index li a{display:inline-block;padding:var(--espace-1) 0;color:var(--stylo-bleu);font-weight:var(--graisse-moyenne);text-decoration:none}.notions-index li a:hover{color:var(--encre);text-decoration:underline}.legal-page{display:grid;gap:var(--espace-6);max-width:var(--largeur-lecture)}.legal-page section{display:grid;gap:var(--espace-3)}.legal-page h2{font-size:var(--texte-2xl)}.legal-page p{color:var(--encre-douce);line-height:var(--interligne-large);overflow-wrap:anywhere}@media(min-width:641px){.public-page{gap:var(--espace-8)}}.parent-dashboard,.child-space{display:flex;flex-direction:column;gap:var(--espace-6)}.bandeau-accueil,.profile-welcome{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--espace-5);padding:var(--espace-6);border-radius:var(--rayon-lg);background-color:var(--nuit);background-image:var(--motif-quadrillage-nuit);background-size:var(--maille) var(--maille);color:var(--sur-nuit)}.welcome-copy{display:grid;gap:var(--espace-2);min-width:0}.profile-welcome{flex-direction:column;align-items:flex-start;gap:var(--espace-2)}.welcome-eyebrow{display:block;color:var(--postit);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.welcome-copy h2,.profile-welcome h2{margin:0;color:var(--sur-nuit);font-size:var(--texte-3xl)}.welcome-copy p,.profile-welcome p{max-width:var(--mesure);color:var(--sur-nuit-doux)}.semaine-infos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:var(--espace-3);margin:var(--espace-3) 0 0}.semaine-infos div{display:grid;gap:var(--espace-1);padding:var(--espace-3);border-radius:var(--rayon-sm);background:var(--encre-ombre-forte)}.semaine-infos dt{color:var(--quadrillage);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.semaine-infos dd{margin:0;color:var(--sur-nuit);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-2xl);font-weight:var(--graisse-forte);line-height:var(--interligne-serre);font-variant-numeric:tabular-nums}@media(max-width:640px){.bandeau-accueil,.profile-welcome{padding:var(--espace-5) var(--espace-4)}.welcome-copy h2,.profile-welcome h2{font-size:var(--texte-2xl)}.bandeau-accueil .bouton-principal{width:100%}}.bloc{display:grid;gap:var(--espace-4);min-width:0}.section-entete{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--espace-2) var(--espace-4)}.section-entete>div{display:grid;gap:var(--espace-1);min-width:0}.section-entete h3{font-size:var(--texte-2xl)}section.section-entete{display:grid;justify-content:start;gap:var(--espace-2)}section.section-entete h2{font-size:var(--texte-3xl)}section.section-entete p{max-width:var(--mesure);color:var(--encre-douce)}.section-entete.compact{margin-bottom:var(--espace-4)}.section-entete.compact h3{font-size:var(--texte-xl)}.panneau{min-width:0;padding:var(--espace-5);scroll-margin-top:var(--espace-9)}.panel-footnote{margin-top:var(--espace-2);color:var(--encre-pale);font-size:var(--texte-sm)}@media(max-width:640px){.panneau{padding:var(--espace-4)}}.etat-vide,.panel-empty{display:grid;justify-items:center;align-content:center;gap:var(--espace-2);padding:var(--espace-6) var(--espace-4);border:var(--bordure-forte) dashed var(--trait);border-radius:var(--rayon);background:var(--papier);color:var(--encre-douce);text-align:center}.panel-empty{border:0;background:transparent}.empty-state-icon,.panel-empty>span{display:grid;place-items:center;width:var(--espace-7);height:var(--espace-7);border-radius:var(--rayon-sm);background:var(--papier-fonce);color:var(--encre);font-size:var(--texte-xl)}.etat-vide strong{color:var(--encre);font-size:var(--texte-lg)}.etat-vide p,.panel-empty p{max-width:28rem}.etat-vide .bouton-principal{margin-top:var(--espace-2)}.grille-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:var(--espace-4)}.plan-card{display:grid;align-content:start;gap:var(--espace-2);transition:transform var(--duree-courte) var(--courbe),box-shadow var(--duree-courte) var(--courbe)}.plan-card:hover{transform:translateY(var(--soulevement));box-shadow:var(--ombre-levee)}.plan-card h4{font-size:var(--texte-xl)}.plan-card p{color:var(--encre-douce)}.plan-card .bouton-principal{justify-self:start;margin-top:var(--espace-2)}.history-table-wrap,.table-scroll{overflow-x:auto}.panneau-historique{padding-bottom:var(--espace-3)}.tableau-historique{width:100%;border-collapse:collapse;text-align:left}.tableau-historique th{padding:var(--espace-2) var(--espace-3);border-bottom:var(--bordure-forte) solid var(--trait);color:var(--encre-pale);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase;white-space:nowrap}.tableau-historique td{padding:var(--espace-3);border-bottom:var(--bordure) solid var(--quadrillage);color:var(--encre-douce);font-size:var(--texte-sm);white-space:nowrap;font-variant-numeric:tabular-nums}.tableau-historique tbody tr:hover{background:var(--papier)}.tableau-historique tbody tr:last-child td{border-bottom:0}.tableau-historique td strong{color:var(--encre)}.history-passages{margin-top:var(--espace-1);white-space:normal;color:var(--encre-pale);font-size:var(--texte-sm)}.history-passages summary{display:inline-flex;align-items:center;min-height:var(--cible);cursor:pointer;color:var(--stylo-bleu);font-weight:var(--graisse-moyenne)}.history-passages ol{margin:var(--espace-1) 0 0;padding-left:var(--espace-5)}.history-passages li{margin-bottom:var(--espace-1)}@media(max-width:640px){.tableau-historique.empilable thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tableau-historique.empilable,.tableau-historique.empilable tbody,.tableau-historique.empilable tr,.tableau-historique.empilable td{display:block}.tableau-historique.empilable tbody{display:grid;gap:var(--espace-3)}.tableau-historique.empilable tr{padding:var(--espace-3) var(--espace-4);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche)}.tableau-historique.empilable tbody tr:hover{background:var(--fiche)}.tableau-historique.empilable td{display:flex;justify-content:space-between;align-items:center;gap:var(--espace-3);padding:var(--espace-1) 0;border:0;white-space:normal;text-align:right}.tableau-historique.empilable td:before{content:attr(data-label);color:var(--encre-pale);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase;text-align:left}.tableau-historique.empilable td:first-child{display:block;padding-bottom:var(--espace-2);text-align:left}.tableau-historique.empilable td:first-child:before,.tableau-historique.empilable td:last-child:before{content:none}.tableau-historique.empilable td:last-child{justify-content:flex-end}.history-table-wrap:has(.empilable){overflow:visible}}.select-eleve{margin-bottom:var(--espace-5);padding:var(--espace-4);border-radius:var(--rayon);background:var(--papier-fonce)}.selected-test-student{display:flex;flex-wrap:wrap;align-items:center;gap:var(--espace-2) var(--espace-3);margin:var(--espace-3) 0 var(--espace-5);padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);background:var(--papier-fonce)}.selected-test-student span{color:var(--encre-pale);font-size:var(--texte-sm)}.selected-test-student button{margin-left:auto;min-height:var(--cible);border:0;background:transparent;color:var(--stylo-bleu);font-weight:var(--graisse-forte);cursor:pointer}.test-setup{max-width:var(--largeur-lecture);margin:var(--espace-4) auto 0;padding:var(--espace-5);border-radius:var(--rayon);background:var(--papier-fonce)}.test-setup .bouton-principal{width:100%;margin-top:var(--espace-2)}.test-container{display:grid;gap:var(--espace-4);max-width:var(--largeur-lecture);margin:0 auto}.test-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--espace-2)}.test-header>span{display:inline-flex;align-items:center;gap:var(--espace-1);padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--papier-fonce);color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-forte);font-variant-numeric:tabular-nums}.test-header>span:first-child{padding-left:0;background:transparent;font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-lg);font-weight:var(--graisse-moyenne)}.test-header .chrono{background:var(--postit-pale);color:var(--postit-texte)}.serie-cases{display:grid;grid-template-columns:repeat(var(--nombre-cases),minmax(0,1fr));gap:var(--espace-1)}.serie-cases span{height:var(--espace-2);border-radius:var(--rayon-xs);background:var(--papier-fonce);box-shadow:inset 0 0 0 var(--bordure) var(--trait)}.serie-cases span.faite{background:var(--juste-trait);box-shadow:none}.exercice{display:grid;gap:var(--espace-4)}.exercice h3{color:var(--encre-pale);font-family:var(--police-texte);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.exercice .question-theme{justify-self:start;padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--stylo-bleu-pale);color:var(--stylo-bleu);font-size:var(--texte-xs);font-weight:var(--graisse-forte)}.exercice>.enonce{display:flex;align-items:center;min-height:7rem;padding:var(--espace-5);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background-color:var(--fiche);background-image:var(--motif-quadrillage);background-size:var(--maille) var(--maille);box-shadow:var(--ombre-pile);color:var(--encre);font-size:var(--texte-3xl);font-weight:var(--graisse-forte);line-height:var(--interligne-serre);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.exercice form{display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--espace-3)}.exercice form input{flex:1 1 12rem;min-height:var(--espace-8);border-radius:var(--rayon-sm);text-align:center;font-size:var(--texte-2xl);font-weight:var(--graisse-forte)}.exercice form .bouton-principal{flex:0 1 auto;min-height:var(--espace-8);padding-inline:var(--espace-6);font-size:var(--texte-lg)}.exercice .correction{display:grid;gap:var(--espace-3)}.exercice .answer-feedback{display:flex;align-items:center;gap:var(--espace-2);margin:0;padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);font-size:var(--texte-lg);font-weight:var(--graisse-forte)}.exercice .answer-feedback.good{background:var(--juste-pale);color:var(--juste)}.exercice .answer-feedback.bad{background:var(--erreur-pale);color:var(--erreur)}.exercice .answer-feedback .geste-coche{width:var(--taille-icone-lg);height:var(--taille-icone-lg);flex-shrink:0}.exercice .correction-explication{padding:var(--espace-3) var(--espace-4);border-left:var(--bordure-forte) solid var(--trait);color:var(--encre-douce)}.exercice .correction .bouton-principal{justify-self:end;min-height:var(--espace-8);padding-inline:var(--espace-6);font-size:var(--texte-lg)}.question-passer{display:flex;justify-content:flex-end;padding-top:var(--espace-3);border-top:var(--bordure) dashed var(--trait)}.question-passer-button{min-height:var(--cible);padding:0 var(--espace-2);border:0;background:transparent;color:var(--encre-douce);font-weight:var(--graisse-forte);cursor:pointer}.question-passer-button:hover:not(:disabled){color:var(--encre);text-decoration:underline;text-underline-offset:var(--focus-ecart)}.question-passer-button:disabled{opacity:.5;cursor:not-allowed}.resultat{text-align:center}.celebration{position:relative;display:grid;justify-items:center;gap:var(--espace-2);max-width:var(--largeur-lecture);margin:0 auto;padding:var(--espace-6) var(--espace-5);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background-color:var(--fiche);background-image:var(--motif-quadrillage);background-size:var(--maille) var(--maille);box-shadow:var(--ombre-pile)}.celebration p{color:var(--encre-douce)}.celebration h3{margin-top:var(--espace-2);font-size:var(--texte-3xl)}.question-signaler{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--espace-2)}.question-signaler-button{min-height:var(--cible);padding:0 var(--espace-2);border:0;background:transparent;color:var(--encre-douce);font-size:var(--texte-sm);text-decoration:underline;text-underline-offset:var(--focus-ecart);cursor:pointer}.question-signaler-button:hover{color:var(--encre)}.question-signaler-merci{color:var(--juste);font-size:var(--texte-sm);font-weight:var(--graisse-forte)}.celebration .bouton-principal{margin-top:var(--espace-3)}.celebration .tampon{position:absolute;top:var(--espace-4);right:var(--espace-4)}.celebration-badge{display:inline-flex;align-items:center;gap:var(--espace-2);margin:var(--espace-2) 0;padding:var(--espace-2) var(--espace-4);border-radius:var(--rayon-rond);background:var(--juste-pale);color:var(--juste);font-weight:var(--graisse-forte)}.celebration-badge .icone{width:var(--taille-icone);height:var(--taille-icone)}.progress-ring{position:relative;display:grid;place-items:center;width:9rem;height:9rem}.progress-ring svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:10;stroke:var(--papier-fonce)}.progress-ring .progress-ring-fill{stroke:var(--juste-trait);stroke-linecap:round;stroke-dasharray:326.73;stroke-dashoffset:326.73;animation:ring-fill var(--duree-trace) var(--courbe) var(--duree) forwards}.progress-ring span{color:var(--encre);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-3xl);font-weight:var(--graisse-forte)}@keyframes ring-fill{to{stroke-dashoffset:var(--offset)}}@media(max-width:640px){.test-container,.exercice{gap:var(--espace-3)}.exercice>.enonce{min-height:5.5rem;padding:var(--espace-4);font-size:var(--texte-2xl)}.exercice form,.exercice form input,.exercice form .bouton-principal,.exercice .correction .bouton-principal{width:100%}.question-passer,.question-signaler{justify-content:center}.celebration{padding:var(--espace-5) var(--espace-4)}.celebration .tampon{top:calc(var(--espace-5) * -1);right:calc(var(--espace-2) * -1);width:var(--taille-tampon-sm)}.celebration .tampon .tampon-haut{display:none}.celebration .tampon .tampon-texte{font-size:var(--texte-xl)}.celebration h3{font-size:var(--texte-2xl)}}@media(prefers-reduced-motion:reduce){.progress-ring .progress-ring-fill{animation:none;stroke-dashoffset:var(--offset)}}.aides-question{display:grid;gap:var(--espace-3)}.aides-boutons{display:flex;flex-wrap:wrap;gap:var(--espace-2)}.aides-boutons .bouton-petit{min-height:var(--cible)}.aides-boutons .icone{width:var(--taille-icone);height:var(--taille-icone)}.aides-etat{color:var(--encre-pale);font-size:var(--texte-sm)}.aide-panneau{display:grid;gap:var(--espace-3);justify-items:start;max-width:var(--largeur-lecture);padding:var(--espace-4) var(--espace-5)}.aide-enonce{color:var(--encre);font-weight:var(--graisse-forte)}.aide-reponse{color:var(--encre)}.aide-texte{color:var(--encre-douce);line-height:var(--interligne-large);overflow-wrap:anywhere}@media(max-width:640px){.aides-boutons{display:grid;grid-template-columns:1fr}.aide-panneau{padding:var(--espace-4)}}.figure-question{display:grid;gap:var(--espace-3)}.repere{margin:0;width:100%;max-width:26rem;justify-self:start}.repere svg{display:block;width:100%;height:auto;overflow:visible}.repere-grille line{stroke:var(--quadrillage);stroke-width:.03}.repere-axes line{stroke:var(--encre);stroke-width:.06}.repere-graduations text{fill:var(--encre-pale);font-size:.32px;font-family:var(--police-texte)}.repere-points circle{fill:var(--action)}.repere-points text{fill:var(--encre);font-size:.42px;font-weight:700;font-family:var(--police-texte)}.exercice form .unite-select{flex:0 1 9rem;min-height:var(--espace-8);padding:0 var(--espace-3);border:var(--bordure-forte) solid var(--trait);border-radius:var(--rayon-sm);background:var(--fiche);color:var(--encre);font:inherit;font-size:var(--texte-lg);font-weight:var(--graisse-moyenne)}.exercice form .unite-select:focus-visible{outline:var(--bordure-forte) solid var(--encre);outline-offset:var(--focus-ecart)}@media(max-width:640px){.exercice form .unite-select{flex:1 1 100%}}.challenge-famille{display:grid;gap:var(--espace-5)}.defi-form{display:grid;gap:var(--espace-2)}.defis-liste{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:var(--espace-4)}.defi-carte{display:grid;align-content:start;gap:var(--espace-2)}.defi-carte h4{margin:0;font-size:var(--texte-xl)}.defi-carte>p{margin:0;color:var(--encre-douce)}.defi-carte.a-relever{border-color:var(--postit);background:var(--postit-pale)}.defi-carte.a-relever .surtitre{color:var(--postit-texte)}.defi-carte.brouillon{border-style:dashed;box-shadow:none}.defi-carte .bouton-principal{justify-self:start;margin-top:var(--espace-2)}.defi-carte .bouton-principal .icone{width:var(--taille-icone);height:var(--taille-icone)}.defi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--espace-3);margin-top:var(--espace-2)}.defi-verdict{margin:var(--espace-2) 0 0;color:var(--encre);font-weight:var(--graisse-forte)}.defi-verdict.gagne{display:flex;align-items:center;gap:var(--espace-2);color:var(--juste);font-size:var(--texte-lg)}.defi-verdict .icone{width:var(--taille-icone);height:var(--taille-icone)}.defi-classement{display:grid;gap:var(--espace-1);margin:var(--espace-2) 0 0;padding:0;list-style:none}.defi-classement li{display:grid;grid-template-columns:var(--espace-6) 1fr auto;align-items:center;gap:var(--espace-2);min-height:var(--cible);padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-sm);background:var(--papier-fonce);font-size:var(--texte-sm)}.defi-classement li.moi{background:var(--stylo-bleu-pale);box-shadow:inset 0 0 0 var(--bordure) var(--stylo-bleu)}.defi-classement li.gagnant{background:var(--postit)}.defi-classement li.en-attente{color:var(--encre-pale)}.defi-rang{display:grid;place-items:center;font-family:var(--police-titre);font-weight:var(--graisse-forte)}.defi-rang .icone{width:var(--taille-icone);height:var(--taille-icone)}.defi-joueur{min-width:0;overflow:hidden;font-weight:var(--graisse-forte);text-overflow:ellipsis;white-space:nowrap}.defi-score{color:var(--encre-douce);font-size:var(--texte-xs);font-weight:var(--graisse-moyenne);white-space:nowrap;font-variant-numeric:tabular-nums}.defi-player{display:grid;gap:var(--espace-3)}.defi-barre-haut{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--espace-2);color:var(--encre-douce);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}.defi-chrono{display:inline-flex;align-items:center;gap:var(--espace-1);padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--postit-pale);color:var(--postit-texte);font-variant-numeric:tabular-nums;font-weight:var(--graisse-forte)}.defi-chrono .icone{width:var(--taille-icone);height:var(--taille-icone)}.defi-player .theme-progress-track{height:var(--espace-2);overflow:hidden;border-radius:var(--rayon-xs);background:var(--papier-fonce);box-shadow:inset 0 0 0 var(--bordure) var(--trait)}.defi-player .theme-progress-track span{display:block;height:100%;background:var(--juste-trait);transition:width var(--duree) var(--courbe)}.defi-question{display:grid;gap:var(--espace-4);padding:var(--espace-5);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background-color:var(--fiche);background-image:var(--motif-quadrillage);background-size:var(--maille) var(--maille);box-shadow:var(--ombre-pile);text-align:center}.defi-enonce{margin:0;font-size:var(--texte-3xl);font-weight:var(--graisse-forte);line-height:var(--interligne-serre);font-variant-numeric:tabular-nums}.defi-reponse{display:flex;justify-content:center;gap:var(--espace-3)}.defi-reponse input{width:min(100%,14rem);min-height:var(--espace-8);font-size:var(--texte-2xl);font-weight:var(--graisse-forte);text-align:center}.defi-reponse .bouton-principal{min-height:var(--espace-8)}.defi-retour{margin:0;padding:var(--espace-2) var(--espace-3);border-radius:var(--rayon-sm);font-weight:var(--graisse-forte)}.defi-retour.juste{background:var(--juste-pale);color:var(--juste)}.defi-retour.faux{background:var(--erreur-pale);color:var(--erreur)}.defi-fin{display:grid;justify-items:center;gap:var(--espace-3);text-align:center}.defi-fin .defi-classement{justify-self:stretch;width:100%;max-width:30rem;margin:0 auto}.defi-fin-emoji{display:grid;place-items:center}.defi-fin-emoji .icone-cadre{width:var(--espace-8);height:var(--espace-8);background:var(--postit)}.defi-fin h4{margin:0;font-size:var(--texte-2xl)}.defi-fin-score{margin:0;font-size:var(--texte-lg)}@media(max-width:640px){.defi-question{padding:var(--espace-4)}.defi-enonce{font-size:var(--texte-2xl)}.defi-reponse{flex-direction:column;align-items:stretch}.defi-reponse input{width:100%}}.active-grade{padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--stylo-bleu-pale);color:var(--stylo-bleu);font-size:var(--texte-xs);font-weight:var(--graisse-forte)}.parent-child-card{width:100%;display:flex;align-items:center;gap:var(--espace-3);min-height:var(--espace-9);padding:var(--espace-4);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche);box-shadow:var(--ombre-fiche);color:var(--encre);text-align:left;cursor:pointer;transition:border-color var(--duree-courte) var(--courbe),box-shadow var(--duree-courte) var(--courbe),transform var(--duree-courte) var(--courbe)}.parent-child-card:hover{transform:translateY(var(--soulevement));box-shadow:var(--ombre-levee)}.parent-child-card.selected{border-color:var(--encre);box-shadow:inset 0 0 0 var(--bordure) var(--encre),var(--ombre-fiche)}.child-avatar,.profile-avatar{display:grid;place-items:center;width:var(--espace-7);height:var(--espace-7);flex-shrink:0;border-radius:var(--rayon-rond);background:var(--papier-fonce);color:var(--encre);font-size:var(--texte-2xl);font-weight:var(--graisse-forte)}.profile-avatar{font-family:var(--police-titre);font-size:var(--texte-lg)}.child-card-copy{display:grid;gap:var(--espace-1);min-width:0}.child-card-copy strong{overflow:hidden;color:var(--encre);font-size:var(--texte-base);text-overflow:ellipsis;white-space:nowrap}.child-card-copy span{color:var(--encre-douce);font-size:var(--texte-sm)}.child-selected-tag{margin-left:auto;color:var(--encre-pale);font-size:var(--texte-xs);white-space:nowrap}.child-selected-tag.visible{padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--encre);color:var(--sur-nuit);font-weight:var(--graisse-forte)}.avatar-picker{grid-column:1 / -1;padding:0;border:0}.avatar-picker legend{margin-bottom:var(--espace-2);color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}.avatar-options{display:flex;flex-wrap:wrap;gap:var(--espace-2)}.avatar-option{display:grid;place-items:center;width:var(--espace-7);height:var(--espace-7);border:var(--bordure-forte) solid var(--trait);border-radius:var(--rayon-rond);background:var(--fiche);font-size:var(--texte-2xl);cursor:pointer;transition:border-color var(--duree-instant) var(--courbe),transform var(--duree-instant) var(--courbe)}.avatar-option:hover{transform:translateY(var(--soulevement))}.avatar-option.selected{border-color:var(--action);background:var(--action-pale)}.parent-add-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:var(--espace-4);margin:var(--espace-4) 0;padding:var(--espace-5);border-radius:var(--rayon);background:var(--papier-fonce)}.parent-add-form label{display:grid;gap:var(--espace-2);margin:0}.parent-add-form .radio-option{align-self:end;margin:0}.parent-add-form .bouton-principal{align-self:end;justify-self:start}.parent-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--espace-4)}.parent-stat-card{display:grid;align-content:start;justify-items:start;gap:var(--espace-1);padding:var(--espace-4) var(--espace-5)}.stat-symbol{display:grid;place-items:center;width:var(--espace-6);height:var(--espace-6);margin-bottom:var(--espace-2);border-radius:var(--rayon-sm);background:var(--papier-fonce);color:var(--encre)}.stat-symbol .icone{width:var(--taille-icone);height:var(--taille-icone)}.stat-symbol.amber{background:var(--postit-pale);color:var(--postit-texte)}.stat-symbol.blue{background:var(--stylo-bleu-pale);color:var(--stylo-bleu)}.stat-symbol.green{background:var(--juste-pale);color:var(--juste)}.stat-symbol.violet{background:var(--action-pale);color:var(--action-sur-pale)}.stat-label{color:var(--encre-douce);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}.parent-stat-card strong{color:var(--encre);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-3xl);line-height:var(--interligne-serre);font-variant-numeric:tabular-nums}.parent-stat-card strong.stat-date{font-size:var(--texte-lg)}.parent-stat-card small{color:var(--encre-pale);font-size:var(--texte-xs)}.parent-insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:var(--espace-4)}.chart-unit{color:var(--encre-pale);font-size:var(--texte-xs)}.weekly-chart{height:11.5rem;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:var(--espace-2);padding-top:var(--espace-1)}.chart-column{height:100%;display:grid;grid-template-rows:var(--espace-5) 1fr var(--espace-5);justify-items:center;gap:var(--espace-1)}.chart-value{color:var(--encre-douce);font-size:var(--texte-xs);font-variant-numeric:tabular-nums}.chart-track{width:min(2.25rem,70%);height:100%;display:flex;align-items:end;overflow:hidden;border-radius:var(--rayon-xs);background:var(--papier-fonce)}.chart-track span{display:block;width:100%;min-height:3px;background:var(--stylo-bleu);transition:height var(--duree) var(--courbe)}.chart-day{color:var(--encre-douce);font-size:var(--texte-xs);font-weight:var(--graisse-moyenne)}.theme-progress-list{display:grid;gap:var(--espace-4)}.theme-progress>div:first-child{display:flex;justify-content:space-between;gap:var(--espace-3);color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}.theme-progress>div:first-child strong{color:var(--encre);font-variant-numeric:tabular-nums}.theme-progress-track{height:var(--espace-2);overflow:hidden;margin-top:var(--espace-2);border-radius:var(--rayon-xs);background:var(--papier-fonce);box-shadow:inset 0 0 0 var(--bordure) var(--trait)}.theme-progress-track span{display:block;height:100%;background:var(--juste-trait);transition:width var(--duree) var(--courbe)}.theme-progress small{display:block;margin-top:var(--espace-1);color:var(--encre-pale);font-size:var(--texte-xs)}.session-config{display:flex;flex-wrap:wrap;gap:var(--espace-2);margin:0 0 var(--espace-4);list-style:none}.session-config li{padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--papier-fonce);color:var(--encre);font-size:var(--texte-sm)}.session-config .good{color:var(--juste)}.session-config .bad{color:var(--erreur)}.session-exercises{display:grid;gap:var(--espace-2);list-style:none}.session-exercises li{padding:var(--espace-3) var(--espace-4);border:var(--bordure) solid var(--trait);border-left:var(--espace-1) solid var(--trait);border-radius:var(--rayon-sm);background:var(--fiche);color:var(--encre-douce)}.session-exercises li.good{border-left-color:var(--juste-trait)}.session-exercises li.bad{border-left-color:var(--erreur)}.session-exercises li p+p{margin-top:var(--espace-1)}.session-solution{margin-top:var(--espace-2);padding:var(--espace-2) var(--espace-3);border-radius:var(--rayon-sm);background:var(--papier-fonce);color:var(--encre)}.child-management{display:grid;gap:var(--espace-4)}.plan-list{display:grid;gap:var(--espace-2);margin:var(--espace-2) 0 var(--espace-4);list-style:none}.plan-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--espace-3);padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);background:var(--papier-fonce)}.plan-item strong{color:var(--encre)}.plan-item span{color:var(--encre-douce);font-size:var(--texte-sm)}.plan-creator{max-width:var(--largeur-lecture);margin:0 auto}.plan-creator-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:var(--espace-4);margin-top:var(--espace-3)}.plan-creator-form>label{display:grid;gap:var(--espace-2);margin:0}.plan-fieldset{grid-column:1 / -1;min-width:0;padding:var(--espace-4) var(--espace-5);border-radius:var(--rayon);background:var(--papier-fonce)}.plan-fieldset legend{float:left;width:100%;margin-bottom:var(--espace-2);padding:0;color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-forte)}.plan-choice-row{display:flex;flex-wrap:wrap;gap:var(--espace-2);margin:var(--espace-2) 0;clear:both}.plan-choice{min-height:var(--cible);padding:0 var(--espace-4);border:0;border-radius:var(--rayon-rond);background:var(--fiche);box-shadow:inset 0 0 0 var(--bordure) var(--trait);color:var(--encre);font-weight:var(--graisse-moyenne);cursor:pointer;transition:background-color var(--duree-instant) var(--courbe),box-shadow var(--duree-instant) var(--courbe)}.plan-choice:hover:not(:disabled){box-shadow:inset 0 0 0 var(--bordure-forte) var(--encre-pale)}.plan-choice.active{background:var(--encre);box-shadow:none;color:var(--sur-nuit);font-weight:var(--graisse-forte)}.plan-choice:disabled{opacity:.5;cursor:not-allowed}.plan-toggle{display:flex;align-items:center;gap:var(--espace-2);min-height:var(--cible);margin-bottom:var(--espace-2);color:var(--encre);font-weight:var(--graisse-moyenne)}.plan-creator-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--espace-4)}.plan-creator-actions .plan-resume{margin-right:auto;color:var(--encre-douce)}.plan-open-button{margin:var(--espace-2) 0}.plan-hint{margin-top:var(--espace-2);color:var(--encre-pale);font-size:var(--texte-sm)}.plan-explication{margin-top:var(--espace-3);padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);background:var(--stylo-bleu-pale);color:var(--encre);font-size:var(--texte-sm)}.default-plans{display:grid;gap:var(--espace-3);margin:var(--espace-3) 0 var(--espace-5)}.default-plans h4{font-size:var(--texte-lg)}.default-plans-child{display:grid;gap:var(--espace-2);padding:var(--espace-3) var(--espace-4);border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche);color:var(--encre)}.default-plans-child summary{display:flex;align-items:center;gap:var(--espace-2);min-height:var(--cible);cursor:pointer;list-style:none;font-weight:var(--graisse-forte)}.default-plans-child summary::-webkit-details-marker{display:none}.default-plans-child summary:before{content:"▸";color:var(--action-fonce);transition:transform var(--duree-courte) var(--courbe)}.default-plans-child[open] summary:before{transform:rotate(90deg)}.default-plans-count{margin-left:auto;color:var(--encre-pale);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}.default-plans-classe{color:var(--encre-pale);font-weight:var(--graisse-moyenne)}.default-plans-list{display:grid;gap:var(--espace-2);margin:0;padding:0;list-style:none}.default-plan{padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);background:var(--papier-fonce)}.default-plan-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--espace-2);font-weight:var(--graisse-moyenne)}.default-plan-badge{padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--fiche);color:var(--encre);font-size:var(--texte-xs);font-weight:var(--graisse-forte)}.default-plan details{margin-top:var(--espace-2);color:var(--encre-douce);font-size:var(--texte-sm)}.default-plan summary{display:inline-flex;align-items:center;min-height:var(--cible);cursor:pointer;color:var(--stylo-bleu);font-weight:var(--graisse-moyenne)}.default-plan ol{margin:var(--espace-1) 0 0;padding-left:var(--espace-5)}.parent-profile-page{display:grid;gap:var(--espace-5);max-width:56rem;margin:0 auto}.profile-panel,.referral-panel{padding:var(--espace-5)}.profile-collapsible>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--espace-4);min-height:var(--cible);cursor:pointer;list-style:none}.profile-collapsible>summary::-webkit-details-marker{display:none}.profile-collapsible-titre{display:grid;gap:var(--espace-1)}.profile-collapsible-titre h3{font-size:var(--texte-xl)}.profile-collapsible-action{display:inline-flex;align-items:center;gap:var(--espace-2);flex-shrink:0;min-height:var(--cible);padding:0 var(--espace-4);border-radius:var(--rayon-sm);background:var(--fiche);box-shadow:inset 0 0 0 var(--bordure-forte) var(--encre);color:var(--encre);font-size:var(--texte-sm);font-weight:var(--graisse-forte)}.profile-collapsible>summary:hover .profile-collapsible-action{background:var(--papier-fonce)}.profile-collapsible-label-fermer,.profile-collapsible[open] .profile-collapsible-label-ouvrir{display:none}.profile-collapsible[open] .profile-collapsible-label-fermer{display:inline}.profile-collapsible-chevron{display:inline-block;transition:transform var(--duree-courte) var(--courbe)}.profile-collapsible[open] .profile-collapsible-chevron{transform:rotate(180deg)}.profile-collapsible[open]>summary{margin-bottom:var(--espace-4)}.profile-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:var(--espace-4)}.profile-form label{display:grid;align-content:start;gap:var(--espace-2);margin:0}.profile-form h4{font-size:var(--texte-lg)}.profile-full-width,.profile-actions{grid-column:1 / -1}.profile-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--espace-3)}.registration-date{display:grid;gap:var(--espace-1);padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);background:var(--papier-fonce)}.registration-date span{color:var(--encre-pale);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.registration-date strong{color:var(--encre)}.registration-date small{color:var(--encre-pale);font-size:var(--texte-xs)}.children-profile-list{display:grid;gap:var(--espace-2);list-style:none}.children-profile-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--espace-3);padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon);background:var(--papier-fonce)}.children-profile-item .child-card-copy{flex:1}.children-profile-item .child-avatar{background:var(--fiche)}.children-profile-form{margin-top:var(--espace-4);padding-top:var(--espace-4);border-top:var(--bordure-forte) dashed var(--trait)}.referral-count{display:grid;justify-items:end;gap:var(--espace-1);color:var(--encre-pale);font-size:var(--texte-xs)}.referral-count strong{color:var(--encre);font-family:var(--police-titre);font-size:var(--texte-3xl);line-height:var(--interligne-plein)}.referral-description{max-width:var(--mesure);margin:0 0 var(--espace-4);color:var(--encre-douce)}.referral-id-row,.referral-invite{display:grid;gap:var(--espace-2);max-width:40rem}.referral-invite{margin-bottom:var(--espace-5)}.referral-id-row label,.referral-invite label{margin:0}.referral-id-control,.referral-invite-control{display:flex;flex-wrap:wrap;gap:var(--espace-2)}.referral-id-control input,.referral-link-input{min-width:0;background:var(--papier-fonce)}.referral-id-control input{width:7rem;font-weight:var(--graisse-forte)}.referral-link-input{width:100%;color:var(--encre-douce);font-size:var(--texte-sm)}.referral-invite-control input{flex:1 1 14rem;min-width:0}.referral-invite .profile-success,.referral-invite .message-erreur{margin:var(--espace-1) 0 0}.referral-or{color:var(--encre-pale);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.referral-status{margin-top:var(--espace-2);color:var(--juste);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}.referral-avantages{display:flex;align-items:flex-start;gap:var(--espace-3);max-width:var(--mesure);margin:0 0 var(--espace-5);padding:var(--espace-3) var(--espace-4);border-radius:var(--rayon-sm);background:var(--postit-pale);color:var(--encre);font-size:var(--texte-sm)}.referral-avantages .bouton-texte,.option-locked .bouton-texte,.avantages-aide .bouton-texte{min-height:0;padding:0;font-size:inherit}.referral-sponsor{margin-top:var(--espace-3);color:var(--encre-pale);font-size:var(--texte-sm)}.account-delete-panel{border-color:var(--erreur)}.account-delete-confirm{display:grid;gap:var(--espace-4);margin-top:var(--espace-3)}.account-delete-confirm label{display:grid;gap:var(--espace-2)}.option-locked{display:flex;align-items:flex-start;gap:var(--espace-3);margin-top:var(--espace-4);padding:var(--espace-3) var(--espace-4);border:var(--bordure-forte) dashed var(--trait);border-radius:var(--rayon-sm);background:var(--papier);color:var(--encre-douce)}.option-locked>.icone{margin-top:var(--espace-1);color:var(--encre)}.gestion-temps{display:grid;gap:var(--espace-5);max-width:var(--largeur-lecture)}.gestion-temps-enfant p{color:var(--encre-douce);font-variant-numeric:tabular-nums}.avantages{display:grid;gap:var(--espace-5)}.avantages-resume{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--espace-5)}.avantages-compteur{display:grid;justify-items:center;min-width:var(--espace-9);color:var(--encre-douce);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne);text-align:center}.avantages-compteur strong{color:var(--encre);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-geant);line-height:var(--interligne-plein)}.avantages-progression p{margin:0 0 var(--espace-4);color:var(--encre-douce)}.avantages-progression .avantages-admin{display:flex;align-items:center;gap:var(--espace-2);color:var(--encre);font-weight:var(--graisse-moyenne)}.avantages-admin .icone{color:var(--action-fonce)}.avantages-barre{position:relative;height:var(--espace-3);margin:0 var(--espace-3) var(--espace-5) 0;border-radius:var(--rayon-xs);background:var(--papier-fonce);box-shadow:inset 0 0 0 var(--bordure) var(--trait)}.avantages-barre span{display:block;height:100%;border-radius:inherit;background:var(--postit);transition:width var(--duree) var(--courbe)}.avantages-barre i{position:absolute;top:50%;display:grid;place-items:center;width:var(--espace-6);height:var(--espace-6);border:var(--bordure-forte) solid var(--fiche);border-radius:var(--rayon-rond);background:var(--trait);color:var(--encre);font-size:var(--texte-xs);font-style:normal;font-weight:var(--graisse-forte);transform:translate(-50%,-50%)}.avantages-barre i.atteint{background:var(--juste);color:var(--sur-action)}.prochain-avantage{display:grid;gap:var(--espace-4);border-color:var(--postit);background:var(--postit-pale)}.prochain-avantage h3{margin:var(--espace-1) 0;font-size:var(--texte-xl)}.prochain-avantage p{margin:0;color:var(--encre-douce);line-height:var(--interligne)}.prochain-avantage-corps{display:flex;align-items:flex-start;gap:var(--espace-4)}.prochain-avantage-icone{display:grid;flex:none;place-items:center;width:var(--espace-7);height:var(--espace-7);border-radius:var(--rayon-sm);background:var(--postit);color:var(--encre)}.prochain-avantage-icone .icone{width:var(--taille-icone-lg);height:var(--taille-icone-lg)}.prochain-avantage-progression p{margin-bottom:var(--espace-2);color:var(--encre)}.prochain-avantage-progression p span{color:var(--encre-douce);font-size:var(--texte-sm);white-space:nowrap}.prochain-avantage-barre{margin:0;background:var(--fiche)}.prochain-avantage-actions{display:flex;flex-wrap:wrap;gap:var(--espace-3)}.avantages-aide h3{margin:0 0 var(--espace-3);font-size:var(--texte-xl)}.avantages-aide ul{display:grid;gap:var(--espace-2);margin:0;padding-left:var(--espace-5);color:var(--encre-douce)}@media(max-width:900px){.parent-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.parent-stats-grid{gap:var(--espace-3)}.parent-stat-card{padding:var(--espace-3) var(--espace-4)}.parent-stat-card strong{font-size:var(--texte-2xl)}.parent-stat-card strong.stat-date{font-size:var(--texte-base)}.weekly-chart{height:10rem;gap:var(--espace-1)}.profile-panel,.referral-panel{padding:var(--espace-4)}.profile-actions .bouton-principal{width:100%}.referral-id-control .bouton-secondaire{flex:1}.avantages-resume{grid-template-columns:1fr;justify-items:stretch;gap:var(--espace-4);text-align:center}.avantages-resume .bouton-principal{width:100%}.prochain-avantage-actions>button{width:100%}.profile-collapsible-action{padding:0 var(--espace-3)}}@media(max-width:380px){.parent-stats-grid{grid-template-columns:1fr}}.filleuls{display:grid;gap:var(--espace-3);margin-top:var(--espace-5);padding-top:var(--espace-5);border-top:var(--bordure) solid var(--quadrillage)}.filleuls h4,.filleuls .panel-footnote{margin:0}.filleuls-table td{vertical-align:top}.filleul-email,.filleul-aide{display:block;color:var(--encre-pale);font-size:var(--texte-xs)}.filleul-email{overflow-wrap:anywhere}.filleul-aide{margin-top:var(--espace-1);white-space:normal;max-width:16rem}@media(max-width:640px){.filleuls .table-scroll{overflow:visible}.filleuls-table,.filleuls-table tbody,.filleuls-table tr,.filleuls-table td{display:block;width:100%}.filleuls .table-scroll .filleuls-table{width:100%;min-width:0}.filleuls-table tr{box-sizing:border-box}.filleuls-table thead{display:none}.filleuls-table tr{padding:var(--espace-3) var(--espace-4);border-bottom:var(--bordure) solid var(--quadrillage)}.filleuls-table tr:last-child{border-bottom:0}.data-table.filleuls-table td{display:grid;grid-template-columns:6.5rem 1fr;gap:var(--espace-2);padding:var(--espace-1) 0;border:0}.filleuls-table td:before{content:attr(data-label);color:var(--encre-pale);font-size:var(--texte-xs);font-weight:var(--graisse-forte)}.filleuls-table td>*{grid-column:2;justify-self:start;min-width:0}.filleul-aide{max-width:none}}.student-form{margin:var(--espace-4) 0 var(--espace-6);padding:var(--espace-5)}.eleves-list>.bouton-principal{margin-bottom:var(--espace-4)}.data-table{width:100%;margin:var(--espace-4) 0 var(--espace-5);border-collapse:separate;border-spacing:0;overflow:hidden;border:var(--bordure) solid var(--trait);border-radius:var(--rayon);background:var(--fiche)}.data-table th,.data-table td{padding:var(--espace-3) var(--espace-4);border-bottom:var(--bordure) solid var(--quadrillage);text-align:left}.data-table th{background:var(--papier-fonce);color:var(--encre-pale);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase;white-space:nowrap}.data-table td{color:var(--encre);font-size:var(--texte-sm);font-variant-numeric:tabular-nums}.data-table tbody tr:hover{background:var(--papier)}.data-table tr:last-child td{border-bottom:0}.table-scroll .data-table{min-width:100%;width:max-content}.data-table-dense th,.data-table-dense td{padding:var(--espace-2) var(--espace-2)}.data-table-dense .switch{gap:var(--espace-1)}.data-table tr.row-desactive td{background:var(--papier-fonce);color:var(--encre-pale)}.data-table tr.row-desactive td:first-child{color:var(--encre-douce)}.connexion-infos{display:grid;gap:var(--espace-1);max-width:11rem}.connexion-infos strong{color:var(--encre);font-size:var(--texte-sm);white-space:nowrap}.connexion-infos small{color:var(--encre-pale);font-size:var(--texte-xs);line-height:var(--interligne-serre);overflow-wrap:anywhere}.connexion-vide{color:var(--encre-pale);font-size:var(--texte-sm)}.row-actions{display:flex;justify-content:flex-end;gap:var(--espace-2);white-space:nowrap}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:var(--espace-4);margin-bottom:var(--espace-6)}.stat-card{display:grid;gap:var(--espace-1);padding:var(--espace-4) var(--espace-5)}.stat-card-lien{width:100%;font:inherit;color:inherit;text-align:start;cursor:pointer}.stat-card h3{color:var(--encre-pale);font-family:var(--police-texte);font-size:var(--texte-xs);font-weight:var(--graisse-forte);letter-spacing:var(--approche-surtitre);text-transform:uppercase}.stat-number{color:var(--encre);font-family:var(--police-titre);font-variation-settings:var(--reglage-titre);font-size:var(--texte-3xl);font-weight:var(--graisse-forte);line-height:var(--interligne-serre);font-variant-numeric:tabular-nums}.dashboard-section{margin-bottom:var(--espace-6)}.dashboard-section h3{margin-bottom:var(--espace-2);font-size:var(--texte-xl)}.switch{position:relative;display:inline-flex;align-items:center;gap:var(--espace-2);min-height:var(--cible);margin:0;cursor:pointer;white-space:nowrap}.switch input{position:absolute;width:1px;height:1px;opacity:0}.switch-track{position:relative;width:2.75rem;height:1.625rem;flex-shrink:0;border-radius:var(--rayon-rond);background:var(--trait);transition:background-color var(--duree-courte) var(--courbe)}.switch-track:after{content:"";position:absolute;top:3px;left:3px;width:1.25rem;height:1.25rem;border-radius:var(--rayon-rond);background:var(--fiche);box-shadow:var(--ombre-fiche);transition:transform var(--duree-courte) var(--courbe)}.switch input:checked+.switch-track{background:var(--juste)}.switch input:checked+.switch-track:after{transform:translate(1.125rem)}.switch input:focus-visible+.switch-track{outline:var(--bordure-forte) solid var(--encre);outline-offset:var(--focus-ecart)}.switch-label{color:var(--encre-douce);font-size:var(--texte-sm);font-weight:var(--graisse-moyenne)}.archive-confirm{margin:var(--espace-4) 0;padding:var(--espace-5);border:var(--bordure-forte) solid var(--erreur);border-radius:var(--rayon);background:var(--erreur-pale)}.archive-confirm h3{font-size:var(--texte-xl)}.archive-confirm-email{margin:var(--espace-1) 0 var(--espace-3);color:var(--encre-douce);font-weight:var(--graisse-moyenne);overflow-wrap:anywhere}.archive-confirm-summary{display:flex;flex-wrap:wrap;gap:var(--espace-2);margin-bottom:var(--espace-3);list-style:none}.archive-confirm-summary li{padding:var(--espace-1) var(--espace-3);border-radius:var(--rayon-rond);background:var(--fiche);color:var(--encre);font-size:var(--texte-sm)}.archive-confirm-summary strong{color:var(--erreur)}.archive-confirm>p:not(.archive-confirm-email){color:var(--encre)}.archive-confirm-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--espace-3);margin-top:var(--espace-4)}.archives-list{margin-top:var(--espace-5)}.archives-list summary{display:inline-flex;align-items:center;min-height:var(--cible);cursor:pointer;color:var(--encre-douce);font-weight:var(--graisse-forte)}.archives-list .data-table{opacity:.85}.modeles-layout{display:grid;grid-template-columns:minmax(13rem,18rem) 1fr;gap:var(--espace-5);align-items:start}.modeles-liste{display:grid;gap:var(--espace-2);margin:0;padding:0;list-style:none}.modeles-liste button{display:grid;gap:var(--espace-1);width:100%;padding:var(--espace-3) var(--espace-4);border:var(--bordure) solid var(--trait);border-radius:var(--rayon-sm);background:var(--fiche);color:var(--encre);font-weight:var(--graisse-moyenne);text-align:left;cursor:pointer}.modeles-liste button:hover{background:var(--papier-fonce)}.modeles-liste button span{color:var(--encre-pale);font-size:var(--texte-sm);font-weight:var(--graisse-normale)}.modeles-liste button.active{border-color:var(--encre);box-shadow:inset 0 0 0 var(--bordure) var(--encre)}.modeles-entete{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:var(--espace-3);margin-bottom:var(--espace-4)}.modeles-entete h3{margin:0;font-size:var(--texte-lg)}.modeles-onglets{display:flex;gap:var(--espace-1);padding:var(--espace-1);border-radius:var(--rayon-sm);background:var(--papier-fonce)}.modeles-onglets button{min-height:var(--cible);padding:0 var(--espace-4);border:0;border-radius:var(--rayon-sm);background:transparent;color:var(--encre-douce);font-weight:var(--graisse-moyenne);cursor:pointer}.modeles-onglets button.active{background:var(--fiche);color:var(--encre);font-weight:var(--graisse-forte);box-shadow:var(--ombre-fiche)}.modeles-apercu{width:100%;height:42.5rem;border:var(--bordure) solid var(--trait);border-radius:var(--rayon-sm);background:var(--papier-fonce)}.modeles-texte{margin:0;padding:var(--espace-4);overflow:auto;border-radius:var(--rayon-sm);background:var(--papier-fonce);color:var(--encre);font-size:var(--texte-sm);line-height:var(--interligne-large);white-space:pre-wrap}.exercise-editor-page{max-width:60rem;margin:0 auto}.editor-section{margin-bottom:var(--espace-4);padding:var(--espace-5)}.editor-section h3{margin-bottom:var(--espace-4);font-size:var(--texte-xl)}.signalements-liste{display:grid;gap:var(--espace-3);padding:0;list-style:none}.signalement{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--espace-3);padding:var(--espace-3) var(--espace-4);border:var(--bordure) solid var(--trait);border-radius:var(--rayon-sm)}.signalement-texte{display:grid;gap:var(--espace-1);min-width:0}.signalement-texte span{color:var(--encre-douce);font-size:var(--texte-sm)}.signalement-enonce{overflow-wrap:anywhere}.signalement-actions{display:flex;flex-wrap:wrap;gap:var(--espace-2)}.editor-field{display:flex;flex-direction:column;gap:var(--espace-2);margin-bottom:var(--espace-4)}.editor-field label{margin:0}.editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--espace-4)}.editor-actions{display:flex;flex-wrap:wrap;gap:var(--espace-3)}@media(max-width:640px){.modeles-layout,.editor-grid{grid-template-columns:1fr}.modeles-apercu{height:32.5rem}.student-form{padding:var(--espace-4)}.data-table th,.data-table td{padding:var(--espace-2) var(--espace-3)}.stat-number{font-size:var(--texte-2xl)}}
