@import "https://fonts.googleapis.com/css2?family=Caveat:wght@600&family=Inter:wght@400;600;800&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--slate-900:#0f172a;--slate-600:#475569;--slate-400:#94a3b8;--slate-200:#e2e8f0;--slate-100:#f1f5f9;--slate-50:#f8fafc;--u-lettres:#7c5cff;--u-lettres-soft:#eee9ff;--u-nombres:#ff7a59;--u-nombres-soft:#ffebe4;--u-couleurs:#2fb27a;--u-couleurs-soft:#e3f6ec;--success:#16a34a;--success-soft:#f0fdf4;--danger:#b91c1c;--danger-soft:#fef2f2;--r-sm:10px;--r-md:16px;--r-lg:22px;--r-pill:999px;--sh-1:0 6px 18px -12px #0f172a59;--sh-2:0 14px 30px -14px #0f172a66;--bg:#fff;--accent:var(--slate-900);--text:var(--slate-900);--muted:#6b7280;--tile:#f3f4f6;--content-scale:1vmin;--u-accent:var(--u-lettres);--u-accent-soft:var(--u-lettres-soft)}.page-alphabet{--u-accent:var(--u-lettres);--u-accent-soft:var(--u-lettres-soft)}.numbers-page{--u-accent:var(--u-nombres);--u-accent-soft:var(--u-nombres-soft)}.colors-page,.camera-page{--u-accent:var(--u-couleurs);--u-accent-soft:var(--u-couleurs-soft)}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-user-select:none;user-select:none;min-height:100vh;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}main.page{flex-direction:column;gap:clamp(12px,2vh,28px);width:100%;min-height:100vh;padding:clamp(6px,2.4vw,24px);display:flex}@media (max-width:720px){main.page{gap:clamp(10px,1.6vh,20px);padding:clamp(6px,1.8vw,16px)}}.menu-launcher{justify-content:flex-end;width:100%;display:flex}.header-controls{justify-content:flex-end;align-items:center;gap:clamp(8px,1.6vw,14px);width:100%;display:flex}.menu-button{color:#0f172a;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;justify-content:center;align-items:center;width:clamp(46px,8vw,66px);height:clamp(46px,8vw,66px);font-size:clamp(20px,3vw,26px);transition:border-color .12s,box-shadow .12s,transform .12s;display:inline-flex}.menu-button:hover,.menu-button:focus-visible{border-color:#cbd5e1;outline:none;transform:translateY(-1px);box-shadow:0 10px 18px #0f172a24}.fullscreen-button{color:#0f172a;cursor:pointer;background:#eef2ff;border:1px solid #e2e8f0;border-radius:14px;min-width:clamp(180px,30vw,240px);min-height:clamp(46px,8vw,66px);padding:clamp(10px,2vw,14px) clamp(14px,3vw,18px);font-size:clamp(14px,2.6vw,16px);font-weight:600;transition:border-color .12s,box-shadow .12s,transform .12s,background-color .12s}.fullscreen-button.is-active{background:#e0f2fe;border-color:#bae6fd}.fullscreen-button:hover,.fullscreen-button:focus-visible{border-color:#cbd5e1;outline:none;transform:translateY(-1px);box-shadow:0 10px 18px #0f172a24}.menu-fullscreen{width:100%;margin-bottom:clamp(12px,2vw,16px)}.page-alphabet,.numbers-page{flex-direction:column;min-height:100vh;display:flex}.page-alphabet>.word-banner,.numbers-page>.word-banner{flex:0 0 13.3333vh;min-height:13.3333vh;max-height:15.3846vh}.page-alphabet>.alphabet-layout,.numbers-page>.numbers-grid,.numbers-page>.manual-sequence{flex:auto}.control-bar{scrollbar-width:thin;grid-template-columns:minmax(110px,1fr) minmax(160px,2fr) minmax(110px,1fr) minmax(68px,1fr);align-items:stretch;gap:clamp(8px,2vw,18px);display:grid;overflow-x:auto}@media (max-width:720px){.control-bar{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:540px){.control-bar{scroll-snap-type:x mandatory;flex-wrap:nowrap;gap:clamp(6px,2vw,12px);padding-bottom:6px;display:flex}.control-bar .control-card,.control-card.flags{scroll-snap-align:start;flex:0 0 clamp(120px,32vw,180px);min-height:clamp(44px,12vw,70px)}.control-card.flags{min-width:clamp(180px,52vw,260px)}.control-card.mute{flex:0 0 clamp(64px,18vw,90px)}}.control-card{color:var(--accent);cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;padding:clamp(10px,1.8vw,16px);font-size:clamp(16px,3vw,24px);font-weight:700;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.control-card.is-active,.control-card:focus-visible,.control-card:hover{border-color:#94a3b8;outline:none;transform:translateY(-1px);box-shadow:0 12px 24px #0f172a26}.control-card:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.home-page{gap:clamp(14px,2.2vh,32px);width:100%;max-width:640px;margin:0 auto}.home-hero{justify-content:space-between;align-items:center;gap:16px;padding:clamp(4px,1vw,10px) clamp(6px,1.5vw,12px);display:flex}.home-hero-text{gap:2px;display:grid}.home-hero h1{letter-spacing:-.02em;margin:0;font-size:clamp(30px,7vw,46px);font-weight:800}.home-tagline{color:var(--muted);margin:0;font-size:clamp(14px,3vw,16px);font-weight:700}.control-card.secondary{background:#fff}.universe-grid{flex-direction:column;gap:clamp(12px,2vh,18px);display:flex}.universe{--u-accent:var(--accent);--u-accent-soft:var(--tile)}.universe-lettres{--u-accent:var(--u-lettres);--u-accent-soft:var(--u-lettres-soft)}.universe-nombres{--u-accent:var(--u-nombres);--u-accent-soft:var(--u-nombres-soft)}.universe-couleurs{--u-accent:var(--u-couleurs);--u-accent-soft:var(--u-couleurs-soft)}.universe-card{cursor:pointer;width:100%;font:inherit;color:var(--text);text-align:left;border:2px solid #e2e8f0;border-left:8px solid var(--u-accent);background:#fff;border-radius:22px;align-items:center;gap:clamp(12px,3vw,16px);padding:clamp(14px,3vw,18px) clamp(16px,3.5vw,22px);transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;box-shadow:0 6px 18px -12px #0f172a59}.universe-card:hover,.universe-card:focus-visible{border-color:var(--u-accent);outline:none;transform:translateY(-3px);box-shadow:0 14px 26px -14px #0f172a66}.universe-emoji{background:var(--u-accent-soft);border-radius:18px;flex:none;place-items:center;width:clamp(52px,12vw,64px);height:clamp(52px,12vw,64px);font-size:clamp(28px,6vw,36px);display:grid}.universe-text{flex:1;gap:2px;display:grid}.universe-name{letter-spacing:-.01em;font-size:clamp(19px,4.5vw,24px);font-weight:800}.universe-desc{color:var(--muted);font-size:clamp(13px,3vw,15px);font-weight:600}.universe-chevron{color:var(--muted);font-size:clamp(24px,5vw,30px);font-weight:800;transition:transform .2s}.universe-card[aria-expanded=true] .universe-chevron{color:var(--u-accent);transform:rotate(90deg)}.universe-modes{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:clamp(8px,2vw,12px);padding:clamp(10px,2vw,14px) clamp(4px,2vw,12px) 4px;display:grid}.universe-modes[hidden]{display:none}.universe-mode{color:var(--text);background:#fff;border:2px solid #e2e8f0;border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:clamp(12px,2.6vw,16px) 10px;text-decoration:none;transition:border-color .13s,transform .13s;display:flex}.universe-mode:hover,.universe-mode:focus-visible{border-color:var(--u-accent);outline:none;transform:translateY(-2px)}.universe-mode-emoji{font-size:clamp(24px,5vw,30px)}.universe-mode-label{text-align:center;font-size:clamp(13px,3vw,15px);font-weight:800}.universe-language{border-bottom:1px dashed #e2e8f0;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 12px;margin-bottom:4px;padding:4px 6px 10px;display:flex}.universe-language-label{color:var(--muted,#64748b);font-size:clamp(12px,2.6vw,14px);font-weight:800}.universe-language-flags{flex-wrap:wrap;gap:8px;display:flex}.universe-language-flag{cursor:pointer;background:#f8fafc;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:clamp(4px,1vw,8px) clamp(6px,1.4vw,10px);font-size:clamp(20px,4vw,28px);line-height:1;transition:transform .13s,border-color .13s,background .13s;display:inline-flex}.universe-language-flag .word-flag-name{font-size:clamp(8px,1.8vw,11px)}.universe-language-flag:hover,.universe-language-flag:focus-visible{border-color:var(--u-accent);outline:none;transform:translateY(-2px)}.universe-language-flag.is-selected{background:#facc15;border-color:#fbbf24;transform:translateY(-1px)scale(1.05)}.home-footer{justify-content:center;margin-top:auto;padding-top:clamp(8px,2vh,16px);display:flex}.home-footer .parents-link{color:#1e88c7;letter-spacing:.02em;align-items:center;gap:7px;font-size:clamp(13px,3vw,15px);font-weight:800;text-decoration:none;display:inline-flex}.control-card.flags{justify-content:space-between;gap:clamp(4px,1.2vw,10px);display:flex}.control-card.mute{aspect-ratio:1;font-size:clamp(20px,3vw,32px)}.flag{cursor:pointer;background:0 0;border:none;flex:1;font-size:clamp(20px,3vw,32px);transition:transform .1s}.flag.selected{transform:scale(1.1)}.grid{--tile-min-width:clamp(82px, calc(100vw / 8), 180px);grid-template-columns:repeat(auto-fill, minmax(var(--tile-min-width), 1fr));grid-auto-flow:dense;flex:1;align-content:stretch;gap:clamp(6px,1vw,16px);width:100%;height:100%;display:grid}@media (min-width:500px) and (min-height:500px){.page-alphabet>.word-banner,.numbers-page>.word-banner{flex:none;height:auto;min-height:clamp(72px,16vh,140px);max-height:clamp(96px,20vh,180px)}.grid{--tile-min-width:clamp(68px, 10vw, 140px);grid-template-columns:repeat(auto-fit, minmax(var(--tile-min-width), 1fr));align-content:start}}.alphabet-layout{flex:auto;width:100%}.tile{background:var(--tile);color:var(--accent);cursor:pointer;aspect-ratio:1;border:1px solid #e5e7eb;border-radius:16px;justify-content:center;align-items:flex-end;gap:0;padding:clamp(10px,2vw,18px);font-size:clamp(24px,4vmin,40px);font-weight:800;line-height:1.1;transition:transform .12s,box-shadow .12s,border-color .12s;display:inline-flex;box-shadow:0 10px 22px #0f172a14}.letter-lockup{align-items:flex-end;gap:0;display:flex}.tile:hover,.tile:focus-visible{border-color:#cbd5e1;outline:none;transform:translateY(-2px)scale(1.01);box-shadow:0 12px 24px #0f172a14}.tile:active{transform:translateY(0)}.tile:disabled{cursor:not-allowed;opacity:.5}.tile.is-speaking{opacity:1;border-color:var(--u-lettres);box-shadow:0 0 0 4px var(--u-lettres-soft)}.letter-main{color:var(--u-lettres);font-size:clamp(42px,12vmin,90px)}.letter-vowel{color:var(--u-nombres)}.letter-consonant{color:var(--u-lettres)}.letter-script{color:var(--u-couleurs);align-self:flex-end;margin-top:0;font-family:Caveat,Comic Sans MS,Bradley Hand,cursive;font-size:clamp(38px,11vmin,80px);font-weight:700;line-height:1}.letter-script-vowel{color:var(--u-nombres)}.letter-svg{fill:currentColor;width:auto;display:block}:is(.letter-main:has(.letter-svg),.letter-script:has(.letter-svg)){align-items:flex-end;display:inline-flex}.letter-lockup.forms-both{gap:clamp(4px,1vw,10px)}.letterforms-group{justify-content:center;gap:clamp(8px,1.6vw,14px);display:flex}.letterforms-btn{align-items:flex-end;gap:6px;font-size:26px;line-height:1;display:inline-flex}.word-french{white-space:normal;flex-wrap:wrap;gap:6px;min-width:0;max-width:100%;margin:0;font-size:clamp(15px,5vw,55px);font-weight:800;display:inline-flex}.word-french-letter{color:#7c3aed}.word-french-vowel{color:#fb923c}.word-translation{color:#fde047;white-space:normal;flex-wrap:wrap;gap:4px;min-width:0;max-width:100%;margin:0;font-size:clamp(12px,4vw,44px);font-weight:700;display:inline-flex}.word-size-xxl{font-size:clamp(22px,6vw,64px)}.word-size-xl{font-size:clamp(20px,5.4vw,56px)}.word-size-lg{font-size:clamp(18px,4.8vw,48px)}.word-size-md{font-size:clamp(16px,4.2vw,40px)}.word-size-sm{font-size:clamp(14px,3.6vw,34px)}.word-translation-letter{background:linear-gradient(120deg,#7c3aed,#facc15);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.word-translation-vowel{background:linear-gradient(120deg,#facc15,#fb923c);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.word-banner{background:var(--tile);text-align:left;border-radius:20px;flex-wrap:wrap;align-items:center;gap:clamp(10px,1.6vw,22px);width:100%;padding:clamp(10px,2.4vw,22px);display:flex;box-shadow:0 16px 30px #0f172a1a}.alphabet-header{z-index:12;background:linear-gradient(#fffffffa,#ffffffe6);border-radius:18px;grid-template-columns:1fr auto;justify-content:space-between;align-items:flex-start;gap:clamp(12px,2vw,24px);width:100%;padding:clamp(10px,2vw,18px);display:grid;position:sticky;top:clamp(6px,2.4vw,24px)}.alphabet-header .menu-launcher{flex:none}.alphabet-header .word-display{flex:auto}.word-banner-column{flex-flow:row;align-items:stretch;gap:clamp(8px,1.4vw,16px);display:flex}.word-banner-card{justify-content:center;align-items:center;min-width:clamp(72px,22vw,140px);min-height:clamp(50px,7vw,78px);font-size:clamp(16px,4vw,26px);display:flex}.word-toggle-card{text-transform:uppercase}.word-toggle-card.is-disabled,.word-toggle-card.is-disabled-blue{color:#1e3a8a;background:#e2e8f0;border-color:#cbd5e1}.word-toggle-card.is-disabled-blue{color:#1d4ed8;background:#dbeafe}.word-toggle-card.is-disabled span[aria-hidden=true],.word-toggle-card.is-disabled-blue span[aria-hidden=true]{text-decoration:line-through}.word-info{flex-wrap:wrap;flex:320px;align-items:center;gap:clamp(12px,2vw,32px);width:100%;display:flex}.word-display{flex:340px;justify-content:flex-start;align-items:flex-start;gap:clamp(8px,1.6vw,18px);min-width:0;min-height:clamp(42px,8vw,90px);display:flex;overflow:hidden}.word-line{flex-wrap:wrap;align-items:flex-start;gap:clamp(6px,1.4vw,16px);min-width:0;display:flex;overflow:hidden}.word-definition{color:#0f172a;background:#f8fafc;border-left:4px solid #22c55e;border-radius:10px;margin:0;padding:clamp(6px,1.2vw,12px) clamp(10px,1.6vw,16px);font-size:clamp(14px,3.4vw,18px);line-height:1.4}.word-french-letter.is-spoken,.word-translation-letter.is-spoken{background:#fde68a;border-radius:4px}.word-french.is-speaking,.word-translation.is-speaking{text-underline-offset:6px;-webkit-text-decoration:underline #facc15;text-decoration:underline #facc15;text-decoration-thickness:4px}.word-definition.is-speaking{background:#fef9c3;border-left-color:#facc15}.word-definition-translated{color:#475569;border-left-color:#7c5cff;font-style:italic}.word-separator{color:#22c55e;align-self:flex-start;padding-inline:clamp(4px,1vw,10px);font-size:clamp(16px,4.2vw,40px);font-weight:800;line-height:1.1;display:inline-flex}.word-line.word-empty{visibility:hidden;min-height:clamp(48px,8vw,120px)}.word-controls{flex-wrap:wrap;flex:240px;justify-content:flex-end;align-items:center;gap:clamp(10px,2vw,24px);min-width:0;display:flex}.word-flags{flex-wrap:wrap;flex:220px;gap:clamp(6px,1.6vw,16px);display:flex}.word-flags-inline{justify-content:flex-start;align-items:center;padding-block:clamp(4px,1vw,10px)}.word-flag{cursor:pointer;background:#f8fafc;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:clamp(6px,1vw,10px);font-size:clamp(22px,4vw,36px);line-height:1;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 6px 18px #0f172a1f}.word-flag-name{color:#475569;font-size:clamp(9px,1.6vw,12px);font-weight:700;line-height:1.1}.word-flag-compact{padding:clamp(4px,.8vw,8px);font-size:clamp(18px,3vw,26px);box-shadow:0 3px 10px #0f172a1a}.numbers-header{justify-content:space-between;align-items:flex-start;gap:clamp(8px,1.6vw,16px);width:100%;display:flex}.numbers-header .header-controls,.home-hero .header-controls{flex:none;width:auto}.header-language-flags{flex-wrap:wrap;flex:auto;gap:clamp(4px,1vw,10px);min-width:0;display:flex}.word-flag.selected{background:#facc15;border-color:#fbbf24;transform:translateY(-2px)scale(1.05);box-shadow:0 10px 24px #fbbf2466}.word-speaker{color:#0f172a;cursor:pointer;width:clamp(44px,8vw,76px);height:clamp(44px,8vw,76px);box-shadow:none;background:#fff;border:1px solid #cbd5e1;border-radius:14px;justify-content:center;align-items:center;font-size:clamp(20px,3.2vw,32px);transition:border-color .12s,box-shadow .12s,transform .12s;display:inline-flex}.word-speaker.is-muted{color:#94a3b8;background:#f1f5f9}.word-speaker:focus-visible,.word-speaker:hover{border-color:#94a3b8;outline:none;transform:translateY(-1px);box-shadow:0 8px 16px #0f172a1f}.menu-modal-backdrop{z-index:20;background:#0f172a59;justify-content:center;align-items:center;padding:clamp(12px,4vw,32px);display:flex;position:fixed;inset:0}.menu-modal{background:#fff;border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;gap:clamp(14px,2vw,20px);width:min(540px,94vw);padding:clamp(16px,3vw,28px);display:flex;box-shadow:0 24px 60px #0f172a40}.menu-modal-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.menu-modal-header h2{margin:0;font-size:clamp(18px,3.2vw,24px)}.menu-home-link{color:inherit;background:linear-gradient(#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:14px;align-items:center;gap:10px;padding:clamp(8px,1.4vw,12px) clamp(12px,2vw,16px);font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 10px 24px #0f172a1f}.menu-home-link:hover,.menu-home-link:focus-visible{background:#f8fafc;transform:translateY(-1px);box-shadow:0 14px 28px #0f172a24}.menu-close{color:#0f172a;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:center;align-items:center;width:clamp(38px,7vw,52px);height:clamp(38px,7vw,52px);font-size:clamp(18px,3vw,22px);transition:border-color .12s,box-shadow .12s,transform .12s;display:inline-flex}.menu-close:hover,.menu-close:focus-visible{border-color:#cbd5e1;outline:none;transform:translateY(-1px);box-shadow:0 10px 18px #0f172a24}.menu-modal-actions{flex-direction:column;gap:clamp(10px,2vw,16px);display:flex}.menu-link{justify-content:flex-start;gap:12px;font-size:clamp(16px,3vw,20px)}.menu-link-emoji{background:#f1f5f9;border-radius:12px;justify-content:center;align-items:center;width:clamp(38px,7vw,46px);height:clamp(38px,7vw,46px);display:inline-flex}.menu-link-label{font-weight:700}.menu-flags{flex-wrap:wrap;justify-content:center;gap:clamp(8px,1.6vw,14px);display:flex}.menu-modal-actions .word-speaker{align-self:center}.speech-settings-modal{width:min(560px,96vw);max-height:88vh;overflow-y:auto}.speech-settings-title{margin:0;font-size:clamp(17px,3vw,21px)}.speech-settings-body{flex-direction:column;gap:clamp(14px,2.4vw,20px);display:flex}.speech-setting{flex-direction:column;gap:6px;display:flex}.speech-setting-label{color:#0f172a;justify-content:space-between;font-size:clamp(13px,2.4vw,15px);font-weight:700;display:flex}.speech-setting input[type=range]{width:100%;accent-color:var(--u-accent,#2563eb)}.speech-setting-hints{color:#64748b;justify-content:space-between;font-size:clamp(11px,2vw,13px);display:flex}.speech-voices{border-top:1px dashed #e2e8f0;flex-direction:column;gap:8px;padding-top:clamp(10px,2vw,14px);display:flex}.speech-voices-title{color:#0f172a;margin:0;font-size:clamp(13px,2.4vw,15px)}.speech-voice-row{align-items:center;gap:10px;display:flex}.speech-voice-lang{color:#334155;flex:0 0 clamp(110px,22vw,140px);font-size:clamp(12px,2.2vw,14px);font-weight:600}.speech-voice-select{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;flex:auto;min-width:0;padding:8px 10px;font-size:clamp(12px,2.2vw,14px)}.speech-settings-actions{border-top:1px dashed #e2e8f0;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:clamp(10px,2vw,14px);display:flex}.speech-test-btn,.speech-reset-btn{cursor:pointer;border:1px solid #cbd5e1;border-radius:12px;padding:10px 16px;font-size:clamp(13px,2.4vw,15px);font-weight:700;transition:transform .12s,box-shadow .12s}.speech-test-btn{color:#1d4ed8;background:#dbeafe;border-color:#bfdbfe}.speech-reset-btn{color:#475569;background:#f8fafc}.speech-test-btn:hover,.speech-reset-btn:hover,.speech-test-btn:focus-visible,.speech-reset-btn:focus-visible{outline:none;transform:translateY(-1px);box-shadow:0 8px 16px #0f172a1f}.exit-quiz-backdrop{z-index:30;background:#0f172a73;justify-content:center;align-items:center;padding:clamp(14px,3vw,32px);display:flex;position:fixed;inset:0}.exit-quiz{background:#fff;border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;gap:clamp(12px,2vw,18px);width:min(520px,96vw);padding:clamp(16px,3vw,28px);display:flex;box-shadow:0 24px 60px #0f172a47}.exit-quiz-header h2{margin:0 0 4px;font-size:clamp(18px,3.2vw,24px)}.exit-quiz-header p{color:#475569;margin:0;font-size:clamp(14px,2.6vw,16px)}.exit-quiz-form{flex-direction:column;gap:clamp(10px,1.8vw,16px);display:flex}.exit-quiz-question{align-items:center;gap:6px;margin:0;font-size:clamp(16px,3vw,20px);display:flex}.exit-quiz-number{color:#1d4ed8;background:#eef2ff;border:1px solid #e0e7ff;border-radius:12px;justify-content:center;align-items:center;min-width:38px;min-height:38px;padding:6px 10px;font-weight:700;display:inline-flex;box-shadow:inset 0 1px #fffc}.exit-quiz-label{font-size:clamp(14px,2.4vw,15px);font-weight:600}.exit-quiz-input{border:2px solid var(--slate-200);border-radius:var(--r-sm);outline:none;padding:12px 14px;font-size:clamp(16px,3vw,18px);transition:border-color .12s,box-shadow .12s}.exit-quiz-input:focus{border-color:var(--u-lettres);box-shadow:0 0 0 3px var(--u-lettres-soft)}.exit-quiz-error{color:var(--danger);margin:0;font-weight:600}.exit-quiz-actions{flex-wrap:wrap;gap:clamp(8px,1.6vw,12px);display:flex}.exit-quiz-submit,.exit-quiz-cancel{border-radius:var(--r-pill);cursor:pointer;border:2px solid #0000;flex:160px;padding:clamp(12px,2vw,14px);font-size:clamp(14px,2.6vw,16px);font-weight:800;transition:border-color .12s,box-shadow .12s,transform .12s,background-color .12s}.exit-quiz-submit{background:var(--u-lettres);color:#fff}.exit-quiz-cancel{background:var(--slate-50);color:var(--slate-900);border-color:var(--slate-200)}.exit-quiz-submit:hover,.exit-quiz-submit:focus-visible{box-shadow:0 8px 18px -8px var(--u-lettres);outline:none;transform:translateY(-2px)}.exit-quiz-cancel:hover,.exit-quiz-cancel:focus-visible{border-color:var(--u-lettres);outline:none;transform:translateY(-2px)}.numbers-banner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:clamp(8px,1.6vw,18px);margin-bottom:clamp(12px,3vw,24px);padding:clamp(8px,1.6vw,18px)}.numbers-actions{align-items:stretch;gap:clamp(8px,1.4vw,16px);display:flex}.numbers-action-card{min-width:clamp(74px,8vw,120px);min-height:clamp(44px,5vw,64px);padding-inline:clamp(12px,2vw,24px)}.numbers-banner-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:clamp(8px,1.6vw,18px);margin-left:auto;display:flex}.numbers-language-flags{flex:1;justify-content:flex-end}.numbers-language-flags .word-flag{padding:clamp(4px,.8vw,8px);font-size:clamp(18px,3vw,28px)}.numbers-speaker{width:clamp(40px,6vw,60px);height:clamp(40px,6vw,60px)}.manual-sequence{padding:clamp(24px,6vw,48px);flex-direction:column;align-items:stretch;gap:clamp(16px,2.6vw,32px);padding-bottom:clamp(92px,14vw,140px);font-size:clamp(38px,14vmin,110px);font-weight:800;display:flex}.manual-row{--manual-row-size:10;--manual-gap:clamp(12px, 2vw, 20px);grid-template-columns:repeat(var(--manual-row-size), minmax(0, 1fr));gap:var(--manual-gap);justify-items:center;width:100%;display:grid}.manual-card{cursor:pointer;background:#fff linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:18px;justify-content:center;align-items:center;min-width:clamp(68px,12vw,140px);min-height:clamp(72px,12vw,140px);padding:clamp(14px,2.4vw,28px);transition:transform .15s,box-shadow .15s,border-color .15s;display:inline-flex;box-shadow:0 14px 24px #0f172a1f}.manual-card:focus-visible,.manual-card:hover{border-color:#cbd5e1;outline:none;transform:translateY(-2px)scale(1.01);box-shadow:0 18px 30px #0f172a2e}.manual-card:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.manual-value{white-space:nowrap;flex-wrap:nowrap;align-items:baseline;gap:8px;font-size:clamp(44px,16vmin,120px);display:inline-flex}.number-size-xxl{font-size:clamp(48px,16vmin,120px)}.number-size-xl{font-size:clamp(42px,14vmin,96px)}.number-size-lg{font-size:clamp(36px,12vmin,84px)}.number-size-md{font-size:clamp(32px,11vmin,72px)}.number-size-sm{font-size:clamp(28px,10vmin,64px)}.manual-plus-wrapper{z-index:20;position:fixed;bottom:clamp(16px,5vw,32px);right:clamp(14px,4vw,28px)}.manual-plus{color:#fff;cursor:pointer;background:#1d4ed8;border:none;border-radius:18px;justify-content:center;align-items:center;width:clamp(60px,10vw,100px);height:clamp(60px,10vw,100px);font-size:clamp(32px,5vw,48px);font-weight:800;display:inline-flex;box-shadow:0 16px 32px #1e40af59}.manual-plus:focus-visible,.manual-plus:hover{outline:none;transform:translateY(-3px)}@media (max-width:720px){.word-banner{text-align:center;flex-direction:column}.word-banner-column{flex-direction:row;justify-content:center;width:100%}.word-info{flex-direction:column;align-items:center}.word-display,.word-controls{justify-content:center}.word-placeholder{text-align:center}}.numbers-grid{flex-direction:column;gap:clamp(10px,1.8vh,24px);padding-bottom:clamp(40px,10vh,120px);display:flex;overflow:visible}.numbers-row-group{flex-direction:column;gap:clamp(4px,.8vw,10px);display:flex}.numbers-row-label{color:#0f172a;letter-spacing:.04em;font-size:clamp(14px,2vw,22px);font-weight:700}.numbers-row{grid-template-columns:repeat(10,minmax(0,1fr));gap:clamp(4px,.8vw,12px);display:grid}.digit-tile{color:var(--accent);cursor:pointer;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;min-width:0;min-height:clamp(68px,8vw,120px);padding:clamp(2px,1.8vw,20px);font-size:clamp(38px,12vmin,90px);font-weight:800;transition:transform .12s,box-shadow .12s,border-color .12s;overflow:hidden}@media (max-width:720px){.digit-tile{border-radius:8px;min-height:clamp(38px,10vw,68px);font-size:clamp(11px,6.4vw,38px)}.digit-tile .digit-char{margin:0}.numbers-row{gap:3px}}.digit-char{font-size:inherit;justify-content:center;align-items:center;margin:0 1px;line-height:1;display:inline-flex}.digit-unit{color:#16a34a}.digit-ten{color:#1d4ed8}.digit-hundred{color:#f97316}.digit-thousand{color:#dc2626}.digit-tile:hover,.digit-tile:focus-visible{border-color:#cbd5e1;outline:none;transform:translateY(-2px);box-shadow:0 12px 22px #0f172a14}.digit-tile:active{transform:translateY(0)}.digit-tile:disabled{opacity:.5;cursor:not-allowed}.numbers-auto-sentinel{width:100%;height:1px}.counter-view{flex-direction:column;justify-content:center;align-items:center;gap:clamp(16px,3vw,28px);min-height:calc(100vh - 220px);padding:clamp(24px,6vw,48px);display:flex}.counter-controls{justify-content:center;align-items:center;gap:clamp(16px,4vw,40px);width:100%;display:flex}.counter-words{text-align:center;color:var(--u-accent,#ff7a59);text-wrap:balance;max-width:90vw;margin:0;font-size:clamp(22px,5vw,44px);font-weight:800}.counter-btn{color:#fff;cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;width:clamp(64px,12vw,110px);height:clamp(64px,12vw,110px);font-size:clamp(32px,6vw,52px);font-weight:800;transition:transform .15s,box-shadow .15s,opacity .15s;display:inline-flex}.counter-btn:focus-visible,.counter-btn:hover:not(:disabled){outline:none;transform:translateY(-3px)}.counter-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.counter-btn-minus{background:#dc2626;box-shadow:0 16px 32px #dc26264d}.counter-btn-plus{background:#1d4ed8;box-shadow:0 16px 32px #1e40af59}.counter-display{cursor:pointer;background-image:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:28px;flex:auto;justify-content:center;align-items:center;max-width:clamp(220px,40vw,420px);min-height:clamp(140px,20vw,240px);padding:clamp(16px,3vw,32px);transition:transform .15s,border-color .15s;display:inline-flex;box-shadow:0 14px 24px #0f172a1f}.counter-display:focus-visible,.counter-display:hover:not(:disabled){border-color:#cbd5e1;outline:none;transform:translateY(-2px)}.counter-display:disabled{cursor:not-allowed;opacity:.75}.counter-value{white-space:nowrap;gap:8px;font-weight:800;line-height:1;display:inline-flex}.counter-input{text-align:center;width:100%;height:100%;color:var(--accent);background:0 0;border:none;font-size:clamp(48px,16vmin,120px);font-weight:800}.counter-status{color:#0f172a;min-height:1.4em;font-size:clamp(16px,2.4vw,22px);font-weight:700}.alert{color:#b91c1c;background:#f8717114;border:1px solid #f8717140;border-radius:10px;margin:0 0 16px;padding:12px 14px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.colors-page{flex-direction:column;gap:clamp(16px,2vh,28px);display:flex}.colors-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:clamp(12px,2vw,18px);display:flex}.colors-header h1{margin:0;font-size:clamp(28px,3.2vw,36px)}.colors-header .subtitle{color:var(--muted);margin:6px 0 0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#6366f1;margin:0 0 4px;font-weight:800}.color-nav{gap:clamp(8px,2vw,12px);display:flex}.colors-layout{grid-template-columns:minmax(280px,1fr) minmax(320px,1.2fr);align-items:start;gap:clamp(16px,3vw,28px);display:grid}@media (max-width:820px){.colors-layout{grid-template-columns:1fr}}.color-card{background:linear-gradient(145deg,#f8fafc,#eef2ff);border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;gap:14px;padding:clamp(14px,3vw,18px);display:flex}.color-picker-launchers{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px;display:grid}.color-picker-button{color:#1e293b;cursor:pointer;background:#fff;border:2px solid #c7d2fe;border-radius:14px;padding:clamp(10px,2vw,13px) 14px;font-size:clamp(13px,2.6vw,15px);font-weight:700;transition:border-color .13s,background .13s,transform .13s}.color-picker-button:hover,.color-picker-button:focus-visible{border-color:#6366f1;outline:none;transform:translateY(-1px)}.color-picker-button.is-active{background:#eef2ff;border-color:#6366f1}.color-picker-panel{background:#ffffffb3;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:6px;max-height:min(52vh,420px);padding:8px;display:flex;overflow-y:auto}.color-picker-category-header{color:#1e293b;cursor:pointer;background:#fff;border:none;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:clamp(14px,2.8vw,16px);font-weight:700;transition:background .12s;display:flex}.color-picker-category-header:hover,.color-picker-category-header:focus-visible{background:#eef2ff;outline:none}.color-picker-category-title{text-align:left;flex:1;align-items:center;gap:8px;display:flex}.color-picker-count{color:#64748b;background:#f1f5f9;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.color-picker-chevron{color:#94a3b8;font-size:18px;transition:transform .15s}.color-picker-category-header[aria-expanded=true] .color-picker-chevron{transform:rotate(90deg)}.color-picker-swatches{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;padding:8px 4px 12px;display:grid}.color-picker-swatches[hidden]{display:none}.color-picker-swatch{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:6px;transition:border-color .12s,transform .12s;display:flex}.color-picker-swatch:hover,.color-picker-swatch:focus-visible{border-color:#6366f1;outline:none;transform:translateY(-2px)}.color-picker-swatch-chip{border-radius:8px;width:100%;height:34px;box-shadow:inset 0 0 0 1px #0f172a14}.color-picker-swatch-label{color:#334155;text-align:center;font-size:11px;font-weight:600;line-height:1.2}.color-selected-label{text-align:center;color:#4338ca;background:#eef2ff;border:1px solid #c7d2fe;border-radius:12px;margin:0;padding:8px 12px;font-size:clamp(16px,3.2vw,20px);font-weight:800}.color-selected-label.color-label-ral{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.color-selected-label.color-label-near{color:#475569;background:#f8fafc;border-style:dashed;border-color:#e2e8f0;font-size:clamp(14px,2.8vw,17px);font-weight:600}.color-preview{border-radius:14px;min-height:240px;box-shadow:inset 0 0 0 1px #0f172a0a,0 12px 24px #0f172a2e}.color-values{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.value-line{background:#fffc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;margin:0;padding:10px 12px;font-weight:600;display:flex}.camera-page{flex-direction:column;gap:clamp(16px,2vh,28px);padding-bottom:110px;display:flex}.camera-grid{grid-template-columns:minmax(320px,1.2fr) minmax(260px,.8fr);align-items:start;gap:clamp(16px,3vw,28px);display:grid}@media (max-width:840px){.camera-grid{grid-template-columns:1fr}}.camera-panel{color:#f8fafc;background:#0f172a;border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;gap:10px;padding:clamp(12px,2vw,16px);display:flex;box-shadow:inset 0 0 0 1px #ffffff14,0 14px 28px #0f172a33}.camera-selector{gap:6px;display:grid}.camera-selector label{letter-spacing:.01em;font-weight:700}.camera-select-shell{background:#0f172acc;border:1px solid #ffffff38;border-radius:12px;position:relative;box-shadow:inset 0 0 0 1px #ffffff0f}.camera-select{color:#f8fafc;appearance:none;background:0 0;border:none;border-radius:12px;width:100%;padding:12px;font-weight:700}.camera-select:focus-visible{outline-offset:2px;outline:2px solid #38bdf8}.camera-preview{aspect-ratio:1;background:#0b1220;border-radius:14px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.camera-video{object-fit:cover;width:100%;height:100%;display:block}.camera-video.is-zoomed{width:170%;height:170%;transform:translate(-30%,-30%)}.camera-crosshair{pointer-events:none;background:linear-gradient(90deg,#0000 0% calc(50% - 1px),#ffffffe6 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px)),linear-gradient(#0000 0% calc(50% - 1px),#ffffffe6 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px));position:absolute;inset:0;box-shadow:inset 0 0 0 1px #0f172a38}.camera-crosshair-gap{background:0 0;border:2px solid #ffffffe6;border-radius:50%;width:20px;height:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0f172a59}.camera-status{color:#f8fafce6;margin:0;font-size:clamp(14px,2.4vw,16px)}.camera-color-card{background:linear-gradient(160deg,#f8fafc,#eef2ff);border:1px solid #e2e8f0;border-radius:18px;grid-template-rows:minmax(200px,1fr) auto;gap:14px;padding:clamp(14px,3vw,18px);display:grid;box-shadow:0 14px 24px #0f172a24}.camera-color-preview{border-radius:14px;min-height:240px;box-shadow:inset 0 0 0 1px #0f172a14,0 12px 20px #0f172a1f}.camera-color-values{gap:8px;display:grid}.camera-color-values p{background:#fffc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;margin:0;padding:10px 12px;font-weight:600;display:flex}.camera-actions{gap:6px;display:grid}.save-color-button{background:var(--u-couleurs);color:#fff;border-radius:var(--r-pill);cursor:pointer;box-shadow:var(--sh-1);border:2px solid #0000;padding:12px 20px;font-size:15px;font-weight:800;transition:transform .12s,box-shadow .15s}.save-color-button:hover,.save-color-button:focus-visible{box-shadow:0 8px 18px -8px var(--u-couleurs);outline:none;transform:translateY(-2px)}.save-hint{color:var(--muted);margin:0;font-size:14px}.saved-colors{border-top:1px solid #e2e8f0;gap:10px;padding-top:10px;display:grid}.saved-colors h2{margin:0;font-size:16px}.saved-colors ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.saved-color-button{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:0;display:flex}.saved-colors li{background:#ffffffe6;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:12px;padding:10px 12px;display:flex;box-shadow:inset 0 0 0 1px #0f172a08,0 8px 14px #0f172a14}.saved-color-swatch{border:1px solid #cbd5e1;border-radius:10px;width:44px;height:44px;box-shadow:inset 0 0 0 1px #0f172a24}.saved-color-values{flex-direction:column;gap:4px;font-weight:700;display:flex}.saved-hex{font-size:15px}.saved-rgb{color:var(--muted);font-size:13px;font-weight:600}.camera-save-bar{background:#0f172af0;border:1px solid #ffffff29;border-radius:16px;justify-content:center;width:min(420px,100% - 24px);padding:12px 14px;display:flex;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 20px 35px #00000040}@media (max-width:720px){.camera-save-bar{width:calc(100% - 20px);padding:12px}}.color-controls{gap:12px;display:grid}.color-slider{border-radius:var(--r-md);border:1px solid var(--slate-200);background:var(--slate-50);gap:8px;padding:12px;display:grid}.slider-header{color:var(--accent);justify-content:space-between;align-items:center;font-weight:700;display:flex}.slider-title{align-items:center;gap:8px;display:inline-flex}.slider-swatch{border:1px solid var(--slate-200);border-radius:6px;width:18px;height:18px;box-shadow:inset 0 1px #fff9,0 1px 4px #0f172a24}.color-slider input[type=range]{appearance:none;border-radius:var(--r-pill);background:var(--slate-200);width:100%;height:8px;accent-color:var(--u-couleurs);cursor:pointer}.color-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:3px solid var(--slider-accent,var(--u-couleurs));width:26px;height:26px;box-shadow:var(--sh-1);cursor:pointer;background:#fff;border-radius:50%}.color-slider input[type=range]::-moz-range-thumb{border:3px solid var(--slider-accent,var(--u-couleurs));cursor:pointer;background:#fff;border-radius:50%;width:22px;height:22px}.color-actions{gap:8px;display:grid}.color-name-field{gap:6px;font-size:clamp(14px,2.4vw,15px);font-weight:700;display:grid}.color-name-field input{border:1px solid #cbd5e1;border-radius:12px;outline:none;padding:10px 12px;font-size:clamp(14px,2.6vw,16px);transition:border-color .12s,box-shadow .12s}.color-name-field input:focus{border-color:#94a3b8;box-shadow:0 0 0 4px #3b82f626}.saved-colors-panel{gap:16px;display:grid}.saved-name{font-size:15px;font-weight:700}.saved-source{color:var(--muted);font-size:12px;font-weight:500}.common-colors{border-top:1px solid #e2e8f0;gap:10px;padding-top:10px;display:grid}.common-colors h2{margin:0;font-size:16px}.common-colors ul{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.common-colors li{background:#ffffffe6;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;display:flex}.permission-warning{color:#b91c1c;background:#f8717114;border:1px solid #f8717140;border-radius:10px;margin:0;padding:12px 14px}.kiosk-info-modal{max-width:min(560px,96vw)}.kiosk-info-list{gap:clamp(10px,1.6vw,14px);margin:0;padding:0;list-style:none;display:grid}.kiosk-info-list li{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:12px;padding:clamp(10px,1.6vw,14px);font-size:clamp(14px,2.4vw,15px);line-height:1.5;display:flex}.kiosk-info-icon{flex-shrink:0;font-size:clamp(18px,3vw,22px);line-height:1.4}.kiosk-info-tip{color:#78350f;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;margin:0;padding:clamp(10px,1.6vw,14px);font-size:clamp(13px,2.2vw,14px);line-height:1.5}.kiosk-activate-btn{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.kiosk-activate-btn:hover,.kiosk-activate-btn:focus-visible{background:#dcfce7;border-color:#86efac}.kiosk-bar{z-index:40;position:fixed;bottom:clamp(12px,3vw,20px);right:clamp(12px,3vw,20px)}.kiosk-lock-btn{cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border:2px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:clamp(48px,8vw,64px);height:clamp(48px,8vw,64px);font-size:clamp(20px,3.5vw,28px);transition:transform .12s,box-shadow .12s;display:inline-flex;box-shadow:0 8px 20px #0f172a2e}.kiosk-lock-btn:hover,.kiosk-lock-btn:focus-visible{outline:none;transform:scale(1.08);box-shadow:0 12px 28px #0f172a38}.color-auto-name{color:#1e293b;text-align:center;letter-spacing:.01em;margin:0 0 6px;font-size:clamp(15px,2.8vw,19px);font-weight:700}.home-footer{justify-content:center;padding:clamp(8px,2vw,16px) 0 clamp(4px,1vw,8px);display:flex}.parents-link{color:var(--muted);-webkit-user-select:none;user-select:none;border:1px solid #e2e8f0;border-radius:10px;padding:6px 14px;font-size:clamp(13px,2.2vw,15px);text-decoration:none;transition:color .12s,background .12s}.parents-link:hover,.parents-link:focus-visible{color:var(--text);background:#f1f5f9;outline:none}.parents-page{-webkit-user-select:text;user-select:text;max-width:860px;margin:0 auto}.parents-header{flex-direction:column;gap:4px;display:flex}.parents-back{color:var(--muted);align-self:flex-start;padding:4px 0;font-size:clamp(13px,2.2vw,15px);text-decoration:none}.parents-back:hover{color:var(--text)}.parents-header h1{margin:0;font-size:clamp(22px,4vw,32px)}.parents-subtitle{color:var(--muted);margin:0;font-size:clamp(13px,2.2vw,15px)}.parents-loading{color:var(--muted);text-align:center;padding:40px 0}.parents-grid{flex-direction:column;gap:clamp(16px,3vw,24px);display:flex}.parents-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;gap:clamp(12px,2vw,18px);padding:clamp(16px,3vw,24px);display:flex}.parents-card-title{margin:0;font-size:clamp(16px,2.8vw,20px)}.parents-empty{color:var(--muted);margin:0;font-size:clamp(13px,2.2vw,15px)}.parents-features-hint{color:var(--muted,#64748b);margin:0;font-size:clamp(13px,2.2vw,15px)}.parents-speech-btn{color:#1d4ed8;cursor:pointer;background:#dbeafe;border:1px solid #bfdbfe;border-radius:12px;align-self:flex-start;padding:10px 16px;font-size:clamp(13px,2.4vw,15px);font-weight:700;transition:transform .12s,box-shadow .12s}.parents-speech-btn:hover,.parents-speech-btn:focus-visible{outline:none;transform:translateY(-1px);box-shadow:0 8px 16px #0f172a1f}.parents-features-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:clamp(12px,2.4vw,20px);display:grid}.parents-feature-group{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:8px;padding:clamp(10px,2vw,14px);display:flex}.parents-feature-modes{border-left:2px dashed #e2e8f0;flex-direction:column;gap:6px;padding-left:clamp(10px,2vw,16px);display:flex}.parents-feature-toggle{cursor:pointer;align-items:center;gap:10px;font-size:clamp(13px,2.2vw,15px);display:flex;position:relative}.parents-feature-toggle.is-muted{opacity:.45}.parents-feature-universe .parents-feature-label{font-weight:800}.parents-feature-toggle input{opacity:0;pointer-events:none;position:absolute}.parents-feature-switch{background:#cbd5e1;border-radius:999px;flex:none;width:38px;height:22px;transition:background .15s;position:relative}.parents-feature-switch:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0f172a4d}.parents-feature-toggle input:checked+.parents-feature-switch{background:#22c55e}.parents-feature-toggle input:checked+.parents-feature-switch:after{transform:translate(16px)}.parents-feature-toggle input:focus-visible+.parents-feature-switch{outline-offset:2px;outline:2px solid #2563eb}.parents-stats-row{flex-wrap:wrap;gap:clamp(12px,2.4vw,20px);display:flex}.parents-stat{flex-direction:column;gap:2px;min-width:80px;display:flex}.parents-stat-value{color:var(--u-lettres);font-variant-numeric:tabular-nums;font-size:clamp(22px,4vw,32px);font-weight:800;line-height:1}.parents-stat-date .parents-stat-value{color:var(--slate-600);font-size:clamp(13px,2.2vw,15px);font-weight:600}.parents-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:clamp(11px,1.8vw,13px)}.parents-letters-grid{grid-template-columns:repeat(auto-fill,minmax(clamp(36px,7vw,52px),1fr));gap:clamp(4px,1vw,8px);display:grid}.parents-letter-tile{aspect-ratio:1;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;font-size:clamp(14px,2.6vw,18px);font-weight:700;transition:transform .12s;display:flex;position:relative}.parents-letter-tile.seen{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.parents-letter-tile.unseen{color:#cbd5e1;background:#f1f5f9;border-color:#e2e8f0}.parents-letter-count{color:#3b82f6;font-size:clamp(8px,1.4vw,10px);font-weight:800;line-height:1;position:absolute;top:2px;right:4px}.parents-words-list h3{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:clamp(13px,2.2vw,15px);font-weight:600}.parents-words-list ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.parents-words-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.parents-words-letter{color:#1d4ed8;flex-shrink:0;width:20px;font-size:clamp(14px,2.4vw,16px)}.parents-words-chips{flex-wrap:wrap;gap:4px;display:flex}.parents-word-chip{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:2px 8px;font-size:clamp(12px,2vw,14px)}.parents-reset-zone{padding:clamp(8px,2vw,16px) 0}.parents-reset-btn{color:#b91c1c;cursor:pointer;background:0 0;border:1px solid #fca5a5;border-radius:10px;padding:8px 16px;font-size:clamp(13px,2.2vw,15px);transition:background .12s}.parents-reset-btn:hover{background:#fef2f2}.parents-reset-confirm{background:#fef2f2;border:1px solid #fca5a5;border-radius:14px;flex-direction:column;gap:12px;padding:clamp(12px,2vw,18px);display:flex}.parents-reset-confirm p{color:#b91c1c;margin:0;font-size:clamp(13px,2.2vw,15px);font-weight:600}.parents-reset-actions{flex-wrap:wrap;gap:10px;display:flex}.parents-reset-danger{color:#fff;cursor:pointer;background:#b91c1c;border:none;border-radius:10px;padding:8px 16px;font-size:clamp(13px,2.2vw,15px);font-weight:600;transition:background .12s}.parents-reset-danger:hover{background:#991b1b}.parents-reset-cancel{cursor:pointer;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px 16px;font-size:clamp(13px,2.2vw,15px);transition:background .12s}.parents-reset-cancel:hover{background:#f8fafc}
