/* Éveil Français: lightweight, shared identity. No remote fonts or image downloads. */
:root{--ink:#002395;--blue:#002395;--paper:#f8f6f0;--line:#dce2ef;--muted:#52617e;--yellow:#dcba74;--gold:#9b7333;--shadow:0 12px 36px rgba(0,35,149,.055)}
body{background:radial-gradient(ellipse at 90% 0,#e8edf9 0,transparent 42%),var(--paper);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased}
header{background:rgba(255,255,255,.85);border-bottom:1px solid var(--line);padding:18px max(24px,calc((100vw - 1120px)/2));gap:28px;flex-wrap:wrap}
.brand{display:flex;align-items:center;flex-shrink:0;line-height:1;text-decoration:none!important}.brand img{display:block;width:268px;height:67px;max-width:100%;object-fit:contain}
nav{align-items:center;flex-wrap:wrap;gap:20px;font-size:14px;font-weight:650}nav a{padding:8px 0;min-height:40px}nav a:hover{color:var(--blue);text-underline-offset:5px}
main{padding-top:56px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-1.8px}h1{font-size:clamp(38px,5.4vw,66px);line-height:1.13}h2{font-size:clamp(26px,3vw,34px);line-height:1.25}h3{letter-spacing:-.3px}p{max-width:76ch}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.btn{border:1px solid transparent;border-radius:12px;min-height:46px;background:var(--blue);box-shadow:0 4px 12px rgba(0,35,149,.08);font-weight:700;padding:13px 21px;transition:background .15s,box-shadow .15s}.btn:hover{background:#001b73;box-shadow:0 6px 18px rgba(0,35,149,.15);text-decoration:none}.btn.secondary{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:none}.btn.secondary:hover{background:#eef2fc;border-color:#9aaedb}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.actions{align-items:center;gap:12px}
.card,.workspace{border-color:var(--line);box-shadow:var(--shadow);border-radius:20px}.card{padding:27px}.card.featured{background:linear-gradient(145deg,#eff3fc,#e5ebfa);border-color:#b0bddf}.card h3{margin-top:12px}.pill{color:#163b8b;background:#eaf0fc;padding:6px 12px;letter-spacing:1px}.eyebrow{color:var(--blue);letter-spacing:2px}.board{background:linear-gradient(145deg,#002395,#173dad);transform:none;box-shadow:0 20px 45px rgba(0,35,149,.17);border:1px solid #617cc1;border-radius:24px;padding:34px}.board p{color:#dce5ff}.board .small{color:#e4c282}.sample{line-height:1.6;padding:20px 0}.sample strong{color:#eed392}.sample del{color:#e0c8ae}
.status{background:#002395;color:#f2e6c9;font-size:12px;letter-spacing:.2px;padding:10px 16px}.notice{background:#edf2ff;color:#26477e;border:1px solid #d4def4;padding:16px}.stats{border-color:var(--line);gap:32px}.stats strong{color:var(--ink)}.footer{background:#edf0f8;font-size:13px;padding:32px 24px}.week-grid{gap:22px}.day{background:#fcfdff;border-radius:11px;min-height:52px;border-color:#dfe5f2}.day:hover{background:#eff3fc;border-color:#a5b7df}.day.done{background:#e8efff;border-color:#8fa9dc}.topline{flex-wrap:wrap}.lesson-tabs{gap:8px}.lesson-tabs span{padding:7px 12px}.rule{border-left-color:var(--gold);background:#faf6e9;border-radius:0 12px 12px 0}.question{line-height:1.6}.option{background:#fcfdff;min-height:48px;padding:14px 17px}.option.good{background:#e6efff;border-color:#6487ca}.option.bad{background:#fff0e6;border-color:#b9815d}.feedback{background:#edf2fc;line-height:1.7}.observation{background:#f1f4fc;border:1px solid #dfe6f5}.teaching-core{max-width:70ch}.teaching-more{background:#fdfdff}.teaching-more[open]{border-color:#b6c5e7}.back{min-height:40px}input,textarea,select{color:var(--ink);background:#fff;accent-color:var(--blue)}textarea{line-height:1.7;min-height:145px}.card button.secondary{box-shadow:none}
.brand-note{font-size:12px;color:var(--gold);letter-spacing:1.2px;text-transform:uppercase}.journey-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:24px 0;border-bottom:1px solid var(--line);margin:40px 0 0}.journey-strip strong{display:block;font-size:23px;color:var(--ink)}.journey-strip span{font-size:13px;color:var(--muted)}
@media(max-width:750px){header{padding:14px 20px;gap:12px}.brand img{width:230px;height:58px}nav{gap:16px;width:100%;font-size:13px}main{padding:32px 18px}h1{letter-spacing:-1.2px}.board{padding:25px}.workspace{padding:22px 18px}.card{padding:22px}.section{margin-top:42px}.journey-strip{gap:10px}.journey-strip strong{font-size:20px}.stats{gap:24px;flex-wrap:wrap}.price{font-size:32px}}
@media(max-width:400px){.brand img{width:216px;height:54px}.day{flex-wrap:wrap}.day .tag{margin-left:auto}.journey-strip span{font-size:12px}.btn{max-width:100%;white-space:normal}.actions .btn{flex:1 1 180px;text-align:center}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:#fff}main{max-width:100%;padding:0}header,.status,.footer{display:none}.card,.workspace{box-shadow:none}.certificate{break-inside:avoid}}


.certificate-brand{display:block;max-width:100%;width:260px;height:auto;margin:0 auto 24px}.attestation p{margin-left:auto;margin-right:auto}

.support-intro{max-width:760px}.support-number{font-size:clamp(24px,4vw,32px);font-weight:800;color:var(--ink);letter-spacing:.5px}.support-grid{align-items:start}.support-fields{gap:16px;margin-top:16px}.support-fields input{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px}.support-grid textarea{width:100%;margin-bottom:16px}.support-faq details{margin:12px 0}.support-faq summary{cursor:pointer;font-weight:700;min-height:44px;display:list-item}.support-faq a,.footer a{ text-decoration:underline;text-underline-offset:4px}.footer a{display:inline-block;min-height:40px;padding:8px 0}

/* Long references and mobile keyboards must not overflow narrow screens. */
.card,.workspace,.level-card,.exam-question{min-width:0;overflow-wrap:anywhere}.observation{padding:16px 20px;border-radius:12px}.observation p{margin:8px 0;white-space:pre-wrap}.written-answer,.exam-question input[type="text"]{width:100%;max-width:100%;font-size:16px}.footer a,.reference{overflow-wrap:anywhere}.exam-question{min-inline-size:0}.certificate-brand{height:auto}button,input,select,textarea{font-family:inherit}
