@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#243c35;--muted:#68756f;--green:#294f42;--paper:#f6f5ef;--line:#dce1d8;--white:#fffefa;--sage:#e7eddf;--orange:#e9b98d;--red:#9c4337;--gold:#f2dfb8;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a,input,summary{touch-action:manipulation}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b56d38;outline-offset:4px}.skip{position:fixed;top:-100px;left:20px;z-index:99;background:white;padding:12px}.skip:focus{top:12px}.shell{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.sidebar{background:#edf0e8;border-right:1px solid var(--line);padding:34px 24px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:Manrope,sans-serif;font-weight:800;font-size:18px;letter-spacing:-.7px}.brand-mark{background:var(--green);color:white;width:36px;height:36px;display:grid;place-items:center;border-radius:11px;font-size:22px}.brand small{font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:2px;display:block;font-weight:500;margin-top:2px}.nav-label,.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--muted)}.nav-label{margin:48px 10px 12px}.nav-link{border:0;text-align:left;background:transparent;width:100%;padding:12px;border-radius:10px;color:var(--muted);display:flex;gap:12px;align-items:center;text-decoration:none;font-size:14px}.nav-link.active{background:var(--green);color:white}.nav-link svg{width:18px;height:18px}.side-note{margin-top:36px;padding:18px 12px;border-top:1px solid #d3dacd;line-height:1.7;font-size:12px;color:var(--muted)}.side-note strong{display:block;color:var(--ink);font-weight:500;margin-bottom:6px}.profile{margin-top:auto;display:flex;align-items:center;gap:10px;padding:16px 4px 0;font-size:12px}.avatar{width:34px;height:34px;border-radius:50%;background:#dce4d3;display:grid;place-items:center;font-weight:700}.profile span{display:block;font-size:10px;color:var(--muted);margin-top:3px}.workspace{min-width:0}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 44px;border-bottom:1px solid var(--line);font-size:12px;background:rgba(255,254,250,.5)}.topbar strong{font-weight:500}.top-right{display:flex;align-items:center;gap:22px;color:var(--muted)}.dot{display:inline-block;width:6px;height:6px;background:#729565;border-radius:50%;margin-right:7px}.export{border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:var(--white);font-size:11px;color:var(--ink)}main{max-width:1340px;margin:auto;padding:36px 44px 32px}.hero{display:grid;grid-template-columns:1fr 300px;gap:30px;align-items:center;padding:16px 0 28px}.hero h1{font-family:Manrope,sans-serif;font-weight:500;font-size:48px;letter-spacing:-2.6px;line-height:1.12;margin:15px 0}.hero h1 em{font-style:normal;color:#708066}.hero p{font-size:14px;max-width:475px;line-height:1.75;color:var(--muted);margin:0}.hero-art{height:185px;position:relative;display:flex;align-items:center;justify-content:center}.hero-art svg{width:280px;height:180px}.stats{display:flex;gap:36px;margin:0 0 30px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat{display:flex;align-items:center;gap:10px}.stat b{font-family:Manrope,sans-serif;font-size:24px;font-weight:500;letter-spacing:-1px}.stat span{font-size:11px;color:var(--muted);max-width:90px;line-height:1.4}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0}.section-head h2{font:600 20px Manrope,sans-serif;letter-spacing:-.5px;margin:0}.section-head p{margin:6px 0 0;font-size:12px;color:var(--muted)}.filters{display:flex;background:#e9ede4;border-radius:9px;padding:4px;gap:3px}.filter{border:none;border-radius:6px;padding:7px 12px;background:transparent;font-size:11px;color:var(--muted)}.filter.selected{background:var(--white);box-shadow:0 1px 3px #0000000d;color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.skill-card{border:1px solid var(--line);background:var(--white);border-radius:14px;padding:23px;display:flex;flex-direction:column;min-height:285px;position:relative;text-decoration:none;transition:transform .15s,border-color .15s}.skill-card:hover{transform:translateY(-3px);border-color:#8f9e86}.card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.glyph{width:39px;height:39px;border-radius:11px;background:var(--sage);display:grid;place-items:center;font-family:Georgia,serif;font-size:23px}.glyph.math{background:#f5e6d5}.pill{font-size:9px;font-weight:500;letter-spacing:.2px;color:#657259;background:#eef1e8;padding:5px 7px;border-radius:5px}.pill.review{color:#966139;background:#f6ead8}.skill-card h3{font:600 19px/1.35 Manrope,sans-serif;letter-spacing:-.6px;margin:17px 0 6px}.card-sub{font-size:11px;color:var(--muted);margin:0 0 14px}.evidence{font-size:11px;line-height:1.6;color:#65716a;margin:0;padding-top:12px;border-top:1px dashed var(--line)}.card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:20px;font-size:11px}.card-foot .arrow{font-size:19px}.journey{margin-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border:1px solid var(--line);border-radius:12px;padding:22px;background:#f0f2e9}.journey-item{display:flex;gap:12px}.journey-item b{font-size:11px;font-weight:500;border:1px solid #c8d2bd;border-radius:50%;height:25px;width:25px;min-width:25px;display:grid;place-items:center}.journey-item strong{font-size:12px;display:block;margin:3px 0 5px}.journey-item p{font-size:11px;color:var(--muted);line-height:1.6;margin:0}.footer{margin-top:24px;display:flex;justify-content:space-between;gap:20px;font-size:10px;line-height:1.6;color:var(--muted)}.footer a{text-underline-offset:3px}.back{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:12px;color:var(--muted);margin-bottom:25px}.lesson-header{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:26px}.lesson-header h1{font:500 36px/1.2 Manrope,sans-serif;letter-spacing:-1.7px;margin:12px 0}.lesson-header p{font-size:13px;color:var(--muted);line-height:1.6;margin:0;max-width:630px}.lesson-time{font-size:11px;color:var(--muted);white-space:nowrap;padding-bottom:4px}.lesson-grid{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start}.lesson-aside{background:#edf0e6;border-radius:12px;padding:22px;position:sticky;top:24px}.lesson-aside h2{font:600 13px Manrope,sans-serif;margin:0 0 10px}.lesson-aside p{font-size:11px;line-height:1.7;color:var(--muted)}.stage-list{display:flex;flex-direction:column;gap:6px;margin:20px 0}.stage{border:0;background:transparent;border-radius:8px;display:flex;gap:10px;padding:11px 10px;align-items:center;text-align:left;font-size:12px;color:var(--muted)}.stage.current{background:var(--white);color:var(--ink)}.stage span{font-size:10px;color:#819079}.checklist{border-top:1px solid #d6dece;padding-top:18px}.checklist ul{padding-left:16px;font-size:11px;line-height:1.7;color:var(--muted)}.checklist li{padding-bottom:8px}.lesson-content{min-width:0}.panel{border:1px solid var(--line);background:var(--white);border-radius:14px;padding:28px;margin-bottom:18px}.panel h2{font:600 24px Manrope,sans-serif;letter-spacing:-.7px;line-height:1.3;margin:9px 0 16px}.panel p{font-size:14px;line-height:1.8;margin:10px 0}.principle{background:var(--green);color:#f7f6ef;border-color:var(--green)}.principle .eyebrow{color:#bfceb4}.principle p{font-size:17px;line-height:1.7}.worked-prompt{background:#f1f3eb;padding:18px;border-radius:8px;font-weight:500;margin:16px 0!important}.steps{list-style:none;padding:0;counter-reset:steps}.steps li{counter-increment:steps;display:flex;align-items:start;gap:13px;font-size:13px;line-height:1.8;margin:14px 0}.steps li:before{content:counter(steps);display:grid;place-items:center;flex-shrink:0;width:24px;height:24px;border:1px solid #cfdac6;background:#f1f4eb;border-radius:50%;font-size:11px}.takeaway{font-size:12px!important;border-top:1px solid var(--line);padding-top:17px;color:#526846}.trap{display:flex;align-items:start;gap:12px;background:#f5ead9;border-radius:10px;padding:18px 22px;font-size:12px;line-height:1.75;margin-bottom:20px;color:#7d5835}.trap strong{display:block;color:#5b422d}.actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:22px 0 0}.primary,.secondary{border-radius:9px;border:1px solid var(--green);padding:12px 18px;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:20px}.primary{background:var(--green);color:var(--white)}.primary:hover{background:#1c3a30}.secondary{background:var(--white);color:var(--green);border-color:var(--line)}.micro{font-size:11px;color:var(--muted);line-height:1.6}.question-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.progress-dots{display:flex;gap:6px}.progress-dot{width:25px;height:5px;border-radius:5px;background:#e1e7db}.progress-dot.done{background:#9caf8d}.progress-dot.now{background:var(--green)}.question-prompt{font-size:20px!important;font-family:Manrope,sans-serif;font-weight:500;line-height:1.6!important;margin-bottom:22px!important}.answers{border:0;padding:0;margin:0}.answers legend{font-size:11px;color:var(--muted);margin-bottom:12px}.option{border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;gap:12px;padding:15px;margin:10px 0;cursor:pointer;font-size:13px;line-height:1.5}.option:hover{background:#f4f6ef}.option:has(input:checked){border-color:var(--green);background:#edf2e7}.option.correct{border-color:#749665;background:#edf3e5}.option.wrong{border-color:#c89586;background:#faf0eb}.option input{accent-color:var(--green);flex-shrink:0}.letter{font-size:11px;color:var(--muted);min-width:14px}.option-label{flex:1}.hint{font-size:12px;color:var(--muted);margin-top:18px;line-height:1.7}.hint summary{cursor:pointer;color:#526846;width:fit-content}.hint p{font-size:12px;margin-left:16px}.feedback{margin-top:20px;border:1px solid #cfddc4;background:#f0f5ea;border-radius:10px;padding:20px}.feedback.incorrect{background:#faf1e6;border-color:#e6d3b9}.feedback h3{font:600 16px Manrope,sans-serif;margin:0 0 8px}.feedback p{font-size:13px;line-height:1.7}.feedback .steps li{font-size:12px}.correct-answer{font-weight:600}.summary-score{font:500 58px Manrope,sans-serif;letter-spacing:-3px;margin:18px 0 4px}.summary-score small{font-size:25px;letter-spacing:-1px;color:var(--muted)}.summary-list{padding:0;list-style:none}.summary-list li{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.summary-list span{font-size:11px;color:var(--muted)}.notice{background:#faedda;color:#7d5835;padding:12px 20px;font-size:12px;line-height:1.5}.empty{padding:32px;border:1px solid var(--line);border-radius:12px;background:var(--white);line-height:1.8;color:var(--muted)}.circle-figure{display:flex;align-items:center;gap:20px;margin:15px 0;font-size:12px;color:var(--muted)}.circle-figure svg{width:160px;flex-shrink:0}.circle-figure p{font-size:12px}button svg{width:15px}.muted{color:var(--muted)}
@media(min-width:1600px){main{padding-top:52px}.cards{gap:22px}.skill-card{padding:28px}.hero h1{font-size:56px}.hero{padding-bottom:40px}}
@media(max-width:1150px){.shell{grid-template-columns:190px 1fr}.sidebar{padding:28px 16px}main{padding:26px}.topbar{padding:0 26px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1fr 200px}.hero-art svg{width:210px}.hero h1{font-size:40px}.lesson-grid{grid-template-columns:190px minmax(0,1fr);gap:18px}.lesson-aside{padding:18px}.panel{padding:23px}.journey{gap:16px}}
@media(max-width:800px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:static;flex-direction:row;align-items:center;justify-content:space-between;border-right:0;padding:18px 22px;border-bottom:1px solid var(--line)}.sidebar nav{display:flex;gap:8px}.nav-label,.side-note,.profile{display:none}.nav-link{width:auto;padding:10px;font-size:11px}.topbar{height:62px;padding:0 22px}.top-right{gap:12px}.top-right .storage-status{display:none}main{padding:25px 22px}.lesson-grid{grid-template-columns:1fr}.lesson-aside{position:static;padding:12px 16px}.lesson-aside>h2,.lesson-aside>p,.checklist{display:none}.stage-list{flex-direction:row;margin:0;justify-content:space-between}.stage{padding:10px}.lesson-header h1{font-size:30px}.lesson-time{display:none}.hero-art{height:170px}.journey{grid-template-columns:1fr;gap:20px}.footer{flex-direction:column;gap:8px}}
@media(max-width:540px){.brand{font-size:16px}.brand-mark{height:30px;width:30px}.nav-link svg{display:none}.nav-link{padding:9px 8px}.topbar{font-size:11px}.hero{grid-template-columns:1fr;padding-top:4px;gap:0}.hero-art{display:none}.hero h1{font-size:40px;margin:16px 0}.hero p{font-size:13px}.stats{gap:20px}.stat{gap:7px}.stat b{font-size:23px}.stat span{font-size:10px;max-width:65px}.cards{grid-template-columns:1fr;gap:14px}.skill-card{min-height:245px}.section-head{align-items:start;flex-direction:column}.filters{width:100%}.filter{flex:1;padding:8px 10px}.panel{padding:22px 18px}.panel h2{font-size:22px}.question-prompt{font-size:18px!important}.actions{flex-wrap:wrap}.actions .primary{flex-grow:1}.lesson-header h1{font-size:29px}.stage{font-size:11px;gap:6px;padding:8px 5px}.circle-figure{gap:12px}.circle-figure svg{width:120px}.export{font-size:10px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
