:root{--creme:#faf7f2;--surface:#f3ede3;--blanc:#fff;--anthracite:#2a2320;--corps:#4a423c;--corps-sombre:#e8e2da;--violet:#7c4ddb;--violet-fonce:#6a3fc4;--cyan:#06b6d4;--filet:#e6dfd5;--alerte:#c4453a;--alerte-fond:#fbefea;--taille:20px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--creme);color:var(--corps);font-family:Open Sans,Arial,sans-serif;font-size:var(--taille);line-height:1.6}.bouton,button,h1,h2,h3{font-family:Montserrat,Arial,sans-serif}h1,h2,h3{color:var(--anthracite);line-height:1.25}h1:focus{outline:none}a{color:var(--violet-fonce);font-weight:600}:focus-visible{outline:4px solid var(--cyan);outline-offset:3px}.entete{background:var(--anthracite);padding:14px 16px}.contenu,.entete-dedans{max-width:640px;margin:0 auto}.entete-dedans{display:flex;align-items:center;gap:12px}.logo-texte{font-family:Montserrat,Arial,sans-serif;font-size:28px;font-weight:800;color:var(--blanc);letter-spacing:-.5px}.logo-texte span{color:#b79bf0}.contenu{padding:24px 16px 48px}.pile{flex-direction:column}.bouton,.pile,button{display:flex;gap:16px}.bouton,button{align-items:center;width:100%;min-height:72px;padding:12px 20px;border:3px solid var(--filet);border-radius:16px;background:var(--blanc);color:var(--anthracite);font-size:1.05em;font-weight:700;line-height:1.25;text-align:left;text-decoration:none;cursor:pointer}.bouton:hover,button:hover{border-color:var(--violet)}button:disabled{opacity:.4;cursor:default}.principal{background:var(--violet);border-color:var(--violet);color:var(--blanc)}.principal:hover{background:var(--violet-fonce);border-color:var(--violet-fonce)}.grand{min-height:112px;font-size:1.15em}.bouton-picto{width:76px;height:76px;padding:6px;border-radius:12px}.bouton-picto,.petit-picto{flex-shrink:0;background:var(--blanc);object-fit:contain}.petit-picto{width:44px;height:44px;padding:3px;border-radius:10px}.champ-fichier{position:absolute;width:1px;height:1px;opacity:0}.intro h1{font-size:1.7em;margin-bottom:8px}textarea{width:100%;min-height:220px;padding:16px;border:3px solid var(--violet);background:var(--blanc);color:var(--anthracite);font:inherit;line-height:1.6;resize:vertical}.encadre,textarea{border-radius:16px}.encadre{padding:18px;background:var(--surface)}.encadre h2{font-size:1.05em;margin-bottom:6px}details{border:3px solid var(--filet);border-radius:16px;background:var(--blanc)}summary{min-height:64px;padding:18px 20px;font-family:Montserrat,Arial,sans-serif;font-weight:700;color:var(--anthracite);cursor:pointer}.details-dedans{padding:0 20px 20px;display:flex;flex-direction:column;gap:12px}.texte-brut{padding:14px;border-radius:12px;background:var(--creme);font-family:inherit;font-size:16px;white-space:pre-wrap;overflow-wrap:anywhere}.erreur{padding:16px 18px;border-left:6px solid var(--alerte);border-radius:12px;background:var(--alerte-fond);color:#8e2e25;font-weight:600}.chargement{display:flex;flex-direction:column;align-items:center;gap:18px;padding:48px 16px;text-align:center}.chargement h1{font-size:1.3em}.rond{width:72px;height:72px;border:8px solid var(--filet);border-top-color:var(--violet);border-radius:50%;animation:tourne 1.2s linear infinite}@keyframes tourne{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.rond{animation-duration:6s}}.carte-titre{display:flex;gap:16px;align-items:center;padding:20px;border-radius:20px;background:var(--anthracite);color:var(--corps-sombre)}.carte-titre.en-lecture{outline:4px solid var(--cyan)}.carte-titre h1{color:var(--blanc);font-size:1.2em;margin-bottom:4px}.reglages{display:flex;align-items:center;gap:10px}.reglages span{flex:1 1;font-weight:600}.reglages button{width:72px;justify-content:center;padding:0;font-size:22px}.section-titre{display:flex;align-items:center;gap:12px;font-size:1.2em;padding-top:8px}.section-titre:after{content:"";flex:1 1;height:4px;border-radius:2px;background:var(--cyan)}.phrase{display:grid;grid-template-columns:108px 1fr;grid-gap:16px;gap:16px;align-items:start;padding:16px;border:3px solid var(--filet);border-radius:18px;background:var(--blanc);font-size:1em;font-weight:400;line-height:inherit}.phrase.a-faire{border-color:var(--violet)}.phrase.en-lecture{border-color:var(--cyan);background:#effbfd}.phrase-gauche{display:flex;flex-direction:column;align-items:center;gap:10px}.picto-phrase{display:block;width:108px;height:108px;object-fit:contain}.picto-phrase.double{width:84px;height:84px}.phrase-texte{color:var(--anthracite);align-self:center;overflow-wrap:anywhere}.bouton-rond{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:56px;height:56px;padding:4px;border:3px solid var(--filet);border-radius:50%}.zoom{width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:0;border:none;border-radius:24px;background:var(--blanc);color:var(--anthracite)}.zoom::-webkit-backdrop{background:rgba(42,35,32,.75)}.zoom::backdrop{background:rgba(42,35,32,.75)}.zoom-dedans{display:flex;flex-direction:column;gap:16px;padding:24px}.zoom-dedans button,.zoom-pictos{justify-content:center}.zoom-pictos{display:flex;gap:16px}.zoom-pictos:empty{display:none}.picto-zoom{width:220px;max-width:100%;height:220px;object-fit:contain}.picto-zoom.double{width:150px;height:150px;min-width:0}.zoom-texte{color:var(--anthracite);font-size:1.4em;font-weight:600;line-height:1.4;text-align:center;overflow-wrap:anywhere}.bouton-rond img{width:40px;height:40px;object-fit:contain}.barre-bas{position:-webkit-sticky;position:sticky;bottom:0;margin:0 -16px;padding:12px 16px;background:var(--creme);border-top:3px solid var(--filet)}.pied{padding:24px 16px 32px;background:var(--surface);font-size:15px}.pied p{max-width:640px;margin:0 auto 8px}.camera-video{display:block;width:100%;border-radius:16px;background:var(--anthracite)}.etapes{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;padding-left:1.4em}.pages-liste{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:12px;gap:12px;list-style:none}.page-vignette{display:flex;flex-direction:column;gap:8px;text-align:center}.page-vignette img{width:100%;aspect-ratio:3/4;object-fit:contain;border:3px solid var(--filet);border-radius:12px;background:var(--blanc)}.impression-seule{display:none}@media (min-width:600px){.phrase{grid-template-columns:248px 1fr}.phrase-gauche{flex-direction:row}}@media (max-width:420px){.phrase{grid-template-columns:84px 1fr;gap:12px;padding:12px}.picto-phrase{width:84px;height:84px}.picto-phrase.double{width:72px;height:72px}}.phrase-droite{display:flex;flex-direction:column;align-self:center;gap:8px;min-width:0}.date-limite{display:flex;align-items:center;gap:8px;padding:6px 10px;border:2px solid var(--cyan-texte,#0891a8);border-radius:10px;background:#effbfd;color:var(--anthracite);font-family:Montserrat,Arial,sans-serif;font-size:.85em;font-weight:700;line-height:1.25}.date-limite img{flex-shrink:0;width:32px;height:32px;object-fit:contain}.carte-profil.en-lecture{border-color:var(--cyan);background:#effbfd}.picto-retourne{transform:scaleX(-1)}.pas-compteur{font-weight:700;text-align:center}.pas-carte{display:flex;flex-direction:column;gap:16px;padding:20px;border:3px solid var(--violet);border-radius:20px;background:var(--blanc)}.pas-carte.en-lecture{border-color:var(--cyan);background:#effbfd}[data-profil=lettres] body{letter-spacing:.12em;word-spacing:.16em;line-height:1.8}[data-profil=lettres] :is(button,.bouton,h1,h2,h3,textarea){letter-spacing:.08em;word-spacing:.16em}[data-profil=lettres] .logo-texte{letter-spacing:-.5px}[data-profil=lettres] .zoom-texte{text-align:left}[data-profil=lettres] :is(.phrase-texte,.zoom-texte){overflow-wrap:break-word}html[data-profil=vois]{--creme:#fff;--surface:#fff;--anthracite:#000;--corps:#000;--filet:#000;--violet:#4b2ba6;--violet-fonce:#36187f;--cyan:#0891a8}[data-profil=vois] .phrase{grid-template-columns:1fr}[data-profil=vois] .phrase-gauche{flex-direction:row;flex-wrap:wrap;justify-content:center}[data-profil=vois] .picto-phrase,[data-profil=vois] .picto-phrase.double{width:140px;height:140px}[data-profil=vois] .encadre{border:3px solid #000}@media (prefers-reduced-motion:reduce){.rond{animation:none}}@media print{:root{--taille:15pt}.barre-bas,.bouton-rond,.entete,.pas-imprimer,.pied,.reglages,details{display:none!important}.impression-seule{display:block;font-size:9pt;margin-top:16px}body{background:#fff}.contenu{max-width:none;padding:0}.carte-titre{background:#fff;color:#000;border:2px solid #000}.carte-titre h1{color:#000}.phrase{page-break-inside:avoid;break-inside:avoid}}