:root{--learn-green:#08783f;--learn-dark:#06442e;--learn-blue:#0755b9;--learn-yellow:#ffd13c;--learn-ink:#18352a;--learn-border:#d4e8da;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4faf6;color:var(--learn-ink)}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--learn-yellow);outline-offset:2px}
.learning-skip{position:absolute;top:-100px;left:12px;z-index:20;padding:10px;background:white}.learning-skip:focus{top:8px}
.learning-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px max(16px,calc((100vw - 1140px)/2));background:#fff;border-bottom:2px solid var(--learn-border)}
.learning-brand{display:flex;align-items:center;gap:9px;color:var(--learn-dark);text-decoration:none}.learning-brand img{width:50px;height:50px;object-fit:contain;border-radius:11px}.learning-brand span{display:grid}.learning-brand strong{font-size:1.13rem;line-height:1.1}.learning-brand small{color:#486652;font-size:.73rem}
.learning-header nav{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.learning-header nav a{display:inline-grid;place-items:center;min-height:42px;padding:8px 11px;border-radius:11px;color:var(--learn-dark);text-decoration:none;font-weight:800;font-size:.82rem}.learning-header nav a:hover{background:#e5f6eb}
.learning-main{max-width:1140px;min-height:calc(100dvh - 145px);margin:auto;padding:22px 16px 65px}.learning-footer{padding:18px;text-align:center;background:#e6f4ea;color:#3b5f48;font-size:.8rem}
.learning-hero{padding:26px;border-radius:24px;background:linear-gradient(125deg,#06442e,#0aa458);color:#fff;box-shadow:0 12px 28px #07563222}.learning-kicker{display:inline-block;padding:5px 10px;border-radius:8px;background:var(--learn-yellow);color:#173b29;font-size:.75rem;font-weight:900;letter-spacing:.07em}.learning-hero h1{margin:13px 0 6px;font-size:clamp(1.9rem,6vw,3rem);line-height:1.08}.learning-hero p{max-width:67ch;line-height:1.55}.learning-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.learning-button,button.learning-button{display:inline-grid;place-items:center;min-height:49px;padding:10px 17px;border:2px solid var(--learn-green);border-radius:13px;background:var(--learn-green);color:#fff;text-align:center;text-decoration:none;font:inherit;font-weight:850;cursor:pointer}.learning-button:hover{background:#055b31;color:#fff}.learning-button.is-light{border-color:#fff;background:#fff;color:var(--learn-dark)}.learning-button.is-outline{background:#fff;color:var(--learn-green)}.learning-button[disabled]{opacity:.55;cursor:not-allowed}
.learning-section{margin-top:25px}.learning-section h2{margin:0 0 11px;color:var(--learn-dark);font-size:clamp(1.3rem,4vw,1.8rem)}.learning-section>p{color:#4a6654;line-height:1.5}
.learning-level-grid,.learning-choice-grid,.learning-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.learning-card,.learning-panel,.learning-stat{padding:17px;border:2px solid var(--learn-border);border-radius:18px;background:#fff;box-shadow:0 5px 18px #0756320d}.learning-card{display:grid;gap:8px;align-content:start;text-decoration:none;color:var(--learn-ink)}.learning-card:hover{border-color:var(--learn-green)}.learning-card .learning-number{display:grid;place-items:center;width:49px;height:49px;border-radius:14px;background:#dff3e6;color:var(--learn-green);font-size:1.35rem;font-weight:950}.learning-card h3{margin:0;color:var(--learn-dark);font-size:1.08rem}.learning-card p{margin:0;color:#526b59;font-size:.87rem;line-height:1.42}.learning-card small{color:#54735e;font-weight:800}.learning-card.is-locked{opacity:.66}
.learning-panel{margin-top:17px}.learning-panel h2,.learning-panel h3{margin:0 0 8px;color:var(--learn-dark)}.learning-panel p{line-height:1.55}.learning-notice{max-width:660px;margin:30px auto;padding:24px;border:2px solid var(--learn-border);border-radius:20px;background:#fff}.learning-notice h1{margin-top:0;color:var(--learn-dark)}.learning-notice p{line-height:1.55}.learning-notice.is-warning{border-color:#f0da8b;background:#fffaf0}.learning-notice.is-error{border-color:#ebb0b0;background:#fff5f5}
.learning-stat strong{display:block;color:var(--learn-green);font-size:1.7rem}.learning-stat span{font-size:.83rem;color:#54705d}.learning-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.learning-list li{padding:14px;border:1px solid var(--learn-border);border-radius:12px;background:#fff}.learning-list li>a{color:var(--learn-dark);font-weight:850}.learning-list small{display:block;margin-top:5px;color:#58715f}.learning-badge{display:inline-block;padding:5px 9px;border-radius:99px;background:#e6f5eb;color:#086139;font-size:.72rem;font-weight:900}.learning-badge.is-pending{background:#fff0ce;color:#765000}
.learning-form{display:grid;gap:13px}.learning-form label{display:grid;gap:5px;font-weight:800;color:#235139}.learning-form input,.learning-form textarea,.learning-form select{width:100%;min-height:47px;padding:10px 12px;border:2px solid #cbded0;border-radius:11px;background:#fff;color:#193c2a;font:inherit}.learning-form textarea{min-height:120px;resize:vertical}.learning-form .learning-inline{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.learning-form .learning-inline input{width:auto}.learning-teacher-table{width:100%;border-collapse:collapse}.learning-teacher-table th,.learning-teacher-table td{padding:10px;border-bottom:1px solid var(--learn-border);text-align:left}.learning-teacher-table th{color:var(--learn-dark)}
.learning-lesson-body{display:grid;grid-template-columns:1fr 1fr;gap:14px}.learning-language-card{padding:19px;border:2px solid var(--learn-border);border-radius:17px;background:#fff}.learning-language-card h2{margin:0 0 10px;color:var(--learn-green)}.learning-language-card p{white-space:pre-wrap;line-height:1.7;font-size:1.12rem}.learning-language-card.is-wolof{background:#fff9e5;border-color:#f2df99}.learning-progress{width:100%;height:17px;accent-color:var(--learn-green)}
@media(max-width:850px){.learning-header{display:block}.learning-header nav{justify-content:flex-start;margin-top:8px}.learning-level-grid,.learning-choice-grid,.learning-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.learning-main{padding:14px 12px 52px}.learning-hero{padding:20px}.learning-level-grid,.learning-choice-grid,.learning-lesson-body{grid-template-columns:1fr}.learning-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-header nav a{min-height:44px;padding:8px;font-size:.75rem}.learning-teacher-table{display:block;overflow-x:auto}}
.learning-lesson-picture{display:block;width:min(100%,560px);max-height:400px;object-fit:contain;margin:20px auto;border-radius:20px;background:#fff}.learning-language-card audio{width:100%;min-height:44px}.learning-language-card details{margin-top:12px}.learning-language-card summary{cursor:pointer;font-weight:800}.learning-panel{margin-top:18px}.learning-check{display:grid;gap:12px;margin:14px 0}.learning-check-option{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 14px;border:2px solid var(--learn-border);border-radius:14px;background:#fff;font-size:1.15rem;font-weight:800;cursor:pointer}.learning-check-option:has(input:checked){border-color:var(--learn-green);background:#e7f7ed}.learning-check-option input{width:25px;height:25px;accent-color:var(--learn-green)}#learningTrace{display:block;width:min(100%,500px);height:auto;margin:14px 0;border:3px dashed #9acbaa;border-radius:16px;background:repeating-linear-gradient(0deg,#fff,#fff 49px,#dcebe0 50px);touch-action:none}
.learning-welcome-voice{display:grid;gap:8px;max-width:420px;margin:15px 0;padding:13px;border-radius:16px;background:#ffffffee;color:var(--learn-dark)}.learning-welcome-voice audio{width:100%}.learning-audio-pending{font-size:.85rem}
.learning-audio-trigger{width:72px;height:72px;border-radius:50%;font-size:2rem;line-height:1}
.learning-certificate{max-width:820px;margin:22px auto;padding:55px 35px;border:12px double #08783f;background:#fff;text-align:center;box-shadow:0 12px 35px #07563220}.learning-certificate-logo{width:90px;height:90px;object-fit:contain}.learning-certificate h1{font-size:clamp(2rem,6vw,3.3rem);color:#06442e}.learning-certificate h2{font-size:clamp(1.8rem,5vw,2.7rem);color:#08783f}.learning-certificate p{line-height:1.6}.learning-certificate small{word-break:break-all}@media print{.learning-header,.learning-footer,.learning-no-print{display:none!important}.learning-main{padding:0;max-width:none}.learning-certificate{margin:0;box-shadow:none;min-height:95vh}}
