:root{--paper:#f5f4ed;--white:#fffefa;--ink:#263e37;--text:#35463f;--muted:#606d61;--green:#2b5b4c;--mint:#e4ece3;--line:#e0e3d8;--yellow:#f3dc9d;--coral:#9b4c35;--violet:#6c6c98;--font:16px}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--text);font:var(--font)/1.65 Arial,Helvetica,sans-serif}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--coral);outline-offset:4px}button:disabled{opacity:.45;cursor:default}h1,h2,h3{color:var(--ink);line-height:1.16;letter-spacing:-.8px}h1{font-size:clamp(34px,3.5vw,54px);margin:20px 0 24px;max-width:800px}h2{font-size:28px;margin:10px 0 22px}h3{font-size:19px;margin:0 0 12px;letter-spacing:-.3px}p{margin:0 0 18px}.top{height:88px;position:sticky;top:0;z-index:30;display:flex;align-items:center;padding:0 35px;gap:45px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;min-width:235px}.brand svg{width:37px;height:40px;fill:none;stroke:var(--green);stroke-width:2}.brand svg circle{stroke:var(--coral)}.brand>span{font-size:23px;font-weight:700;line-height:1.2;letter-spacing:-.8px}.brand small{font-size:12px;display:block;letter-spacing:normal;font-weight:600;margin-top:5px}.search-trigger{width:min(460px,40vw);background:#ebece4;border:1px solid var(--line);border-radius:11px;padding:10px 15px;text-align:left;color:var(--muted);font-size:13px;display:flex;align-items:center;gap:10px}.search-trigger>span{font-size:24px;line-height:1}.search-trigger kbd{margin-left:auto;font:12px Arial;padding:0 6px;background:var(--paper);border:1px solid var(--line);border-radius:3px}.top-actions{display:flex;gap:17px;align-items:center;margin-left:auto}.pill{border:1px solid #b7c7b5;border-radius:22px;padding:7px 14px;font-size:11px;white-space:nowrap}.pill[aria-pressed=true]{background:var(--mint);color:var(--green)}.icon{font-size:24px;line-height:1.3;min-width:36px;min-height:36px}.mobile-only{display:none}#sidebar{position:fixed;top:88px;bottom:0;left:0;width:280px;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:25;background:var(--paper)}.side-top{padding:25px 22px 18px}.home-link{font-size:13px;font-weight:700;display:block;margin-bottom:20px}.grade-filters{display:flex;gap:5px}.grade-filters button{flex:1;font-size:11px;padding:5px;border-radius:5px;color:var(--muted)}.grade-filters button.active{background:var(--green);color:var(--white)}#toc{flex:1;overflow:auto;padding:0 12px 16px;scrollbar-width:thin;scrollbar-color:#c6cfc0 transparent}.toc-chapter{border-bottom:1px solid var(--line)}.toc-chapter summary{list-style:none;display:flex;align-items:center;gap:10px;padding:14px 10px;cursor:pointer;font-size:12px;line-height:1.4}.toc-chapter summary::-webkit-details-marker{display:none}.toc-chapter summary strong{font-weight:600;flex:1}.toc-chapter summary .chevron{font-size:11px;transition:transform .2s}.toc-chapter[open] summary .chevron{transform:rotate(45deg)}.toc-lesson{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;margin:2px 0;padding:7px 9px 7px 19px;border-radius:6px}.toc-lesson .number{color:var(--muted);min-width:21px}.toc-lesson .status{margin-left:auto;font-size:11px;color:var(--green)}.toc-lesson.active{background:var(--mint);color:var(--green);font-weight:700}.toc-lesson:hover{background:#e9ede3}.grade-label{font-size:12px;letter-spacing:normal;color:var(--muted);padding:18px 10px 6px}.profile{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:18px 23px;background:#ecefe5;border-top:1px solid var(--line)}.level-mark{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--green);font-size:15px;color:var(--green)}.profile b{display:block;font-size:11px;line-height:1.4}.profile span{font-size:10px;color:var(--muted)}.xp-track{width:100%;height:3px;background:#cfd8c8}.xp-track i{display:block;height:3px;background:var(--green);transition:width .3s}#main{margin-left:280px;padding:44px clamp(25px,4vw,65px) 65px;max-width:1800px;outline:none}.eyebrow{font-size:13px;line-height:1.5;letter-spacing:normal;text-transform:none;color:var(--green);font-weight:500}.home-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;min-height:340px}.home-hero h1{font-size:clamp(39px,4vw,62px);margin:17px 0 22px;line-height:1.05}.home-hero p{max-width:460px;font-size:15px;color:var(--muted)}.hero-art{position:relative;min-width:0}.hero-art svg{width:100%;height:auto;max-height:330px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--green);color:#fffefa;border-radius:8px;padding:12px 20px;font-size:12px;line-height:1.5;font-weight:700;cursor:pointer}.button:hover{filter:brightness(1.1)}.button.secondary{color:var(--green);background:var(--mint);border:1px solid #c9d6c5}.button.outline{background:transparent;border:1px solid #bccbb8;color:var(--green)}.button-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.micro{font-size:11px;color:var(--muted);line-height:1.6}.stats-strip{display:flex;align-items:center;gap:35px;border-block:1px solid var(--line);margin:22px 0 35px;padding:20px 0}.stats-strip strong{display:block;font-size:22px;color:var(--ink);line-height:1.2}.stats-strip span{font-size:10px;color:var(--muted)}.stats-strip .small-notice{margin-left:auto;max-width:220px;color:var(--muted);font-size:11px}.course-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.course-head h2{margin:0}.course-head>span{font-size:11px;color:var(--muted)}.grade-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:30px}.grade-card{border:1px solid var(--line);border-radius:11px;background:var(--white);padding:20px}.grade-card .grade-number{font-size:25px;color:var(--green);font-weight:700;line-height:1.2}.grade-card .grade-number span{font-size:12px;font-weight:400}.grade-card p{font-size:11px;color:var(--muted);margin:10px 0}.tiny-track{height:3px;background:#e7eadf;margin-top:15px}.tiny-track i{display:block;height:100%;background:var(--green)}.chapter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.chapter-card{display:flex;align-items:flex-start;gap:15px;background:var(--white);border:1px solid var(--line);padding:20px;border-radius:10px}.chapter-card:hover{border-color:#a7b99e;transform:translateY(-1px)}.chapter-card .chapter-glyph{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:var(--mint);color:var(--green);flex-shrink:0}.chapter-card .chapter-glyph svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.5}.chapter-card h3{font-size:14px;margin:1px 0 8px;line-height:1.3}.chapter-card span{font-size:10px;color:var(--muted)}.chapter-card>div:nth-child(2){flex:1}.chapter-card .arrow{color:var(--green);font-size:16px}.bottom-note{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.crumbs{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);margin-bottom:25px}.crumbs a:hover{text-decoration:underline}.lesson-top{display:flex;align-items:center;gap:15px;justify-content:space-between}.lesson-top .meta{display:flex;gap:8px;font-size:10px;color:var(--green)}.tag{background:var(--mint);padding:3px 9px;border-radius:4px}.lesson-top .arrows{display:flex;gap:5px}.lesson-title{font-size:clamp(29px,3vw,44px);max-width:850px;margin:17px 0 14px;line-height:1.12}.lead{font-size:18px;line-height:1.5;color:var(--muted);max-width:760px;margin:0 0 23px}.lesson-tools{display:flex;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding:0 0 18px;margin-bottom:30px;font-size:11px;color:var(--muted)}.lesson-tools .bookmark{margin-left:auto}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.95fr);gap:30px;align-items:start}.lesson-prose{min-width:0}.lesson-prose p{font-size:15px;line-height:1.8}.section-kicker{font-size:13px;line-height:1.5;letter-spacing:normal;color:var(--muted);display:flex;align-items:center;gap:9px;margin-bottom:13px}.section-kicker i{width:21px;height:21px;background:var(--mint);display:grid;place-items:center;border-radius:50%;font-style:normal;color:var(--green);font-size:10px;letter-spacing:0}.rule{background:#e7eee1;border-left:3px solid var(--green);padding:17px 19px;margin:25px 0;border-radius:0 7px 7px 0;font-size:15px;line-height:1.75;color:var(--green)}.rule small{font-size:13px;letter-spacing:normal;display:block;font-weight:700;margin-bottom:7px}.joke{font-size:12px;color:#8b644f;border:1px solid #ead9bd;border-radius:8px;padding:12px 16px;background:#fbf2df;margin:22px 0}.trap{padding:18px 0;border-top:1px solid var(--line);font-size:13px;line-height:1.7;margin-top:25px}.trap b{display:block;color:var(--coral);font-size:13px;letter-spacing:normal;text-transform:none;margin-bottom:7px}.lab{background:var(--white);border:1px solid var(--line);border-radius:12px;overflow:hidden;position:sticky;top:110px}.lab-head{padding:18px 21px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:var(--green);font-weight:700}.lab-head button{color:var(--muted);font-size:10px}.lab-stage{width:100%;aspect-ratio:520/330;touch-action:none}.lab-stage svg{width:100%;height:100%;display:block}.lab-stage svg text{font-family:Arial,sans-serif;font-size:13px;fill:#3e584c}.lab-stage svg .small{font-size:10px;fill:#606d61}.lab-stage svg .big{font-size:17px;font-weight:700}.lab-stage svg .drag{cursor:grab;touch-action:none}.lab-controls{padding:4px 21px 15px}.lab-slider{display:grid;grid-template-columns:minmax(80px,1fr) 1.5fr 45px;gap:10px;align-items:center;font-size:11px;margin:10px 0}.lab-slider output{text-align:right;color:var(--green);font-weight:700;font-size:11px}input[type=range]{accent-color:var(--green);width:100%;min-width:0;cursor:pointer}.lab-readout{background:#f0f3e9;padding:13px 21px;font-size:12px;color:var(--green);min-height:65px;line-height:1.7}.lab-task{font-size:11px;color:var(--muted);padding:15px 21px;line-height:1.7;border-top:1px solid var(--line)}.lab-select{display:flex;gap:5px;flex-wrap:wrap;padding:0 21px 10px}.lab-select button{font-size:10px;padding:5px 8px;border:1px solid var(--line);border-radius:5px}.lab-select button.active{background:var(--green);color:#fff}.example{border:1px solid var(--line);border-radius:10px;background:var(--white);padding:23px;margin-top:28px}.example>h3{font-size:17px}.example .prompt{font-size:14px;line-height:1.7}.steps{list-style:none;padding:0;counter-reset:step}.steps li{position:relative;padding:0 0 17px 34px;font-size:13px;line-height:1.75;counter-increment:step}.steps li:last-child{padding-bottom:0}.steps li:before{content:counter(step);position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--mint);color:var(--green);text-align:center;font-size:10px;line-height:22px}.proof{border:1px solid var(--line);border-radius:8px;margin-top:18px;background:#fffefa}.proof summary{font-size:13px;font-weight:700;cursor:pointer;padding:16px 20px;color:var(--green)}.proof .proof-content{padding:0 20px 18px}.proof .micro{margin:10px 0}.proof .steps li{font-size:12px}.proof-sort{margin-top:18px}.sort-item{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:10px 12px;border-radius:6px;margin:5px 0;background:#fff;font-size:12px}.sort-item>span{flex:1}.sort-item button{border:1px solid var(--line);border-radius:4px;min-width:28px;min-height:28px;font-size:13px}.sort-feedback{font-size:12px;color:var(--green);margin:12px 0}.practice{margin-top:50px;padding-top:30px;border-top:1px solid var(--line)}.practice-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.practice-heading>span{font-size:11px;color:var(--muted)}.question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.question{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:23px;min-width:0}.question .q-number{font-size:12px;line-height:1.5;letter-spacing:normal;color:var(--muted);margin-bottom:12px}.question .q-prompt{font-size:14px;line-height:1.7;min-height:48px;margin-bottom:18px}.options{display:flex;flex-direction:column;gap:8px}.option{text-align:left;border:1px solid var(--line);border-radius:7px;padding:11px 14px;font-size:12px;line-height:1.6;display:flex;gap:11px;align-items:flex-start;width:100%}.option:before{content:'';flex-shrink:0;width:13px;height:13px;border:1px solid #acbba4;border-radius:50%;margin-top:3px}.option.selected{border-color:var(--green);background:#f0f4e9}.option.selected:before{background:var(--green);box-shadow:inset 0 0 0 3px #f0f4e9}.option.correct{background:#e5efdf;border-color:#a9c19d}.option.wrong{background:#fbede5;border-color:#d9a28b}.answer-row{display:flex;gap:10px;align-items:center;margin:5px 0 16px}.answer-row input{width:100%;min-width:0;border:1px solid #becbb7;border-radius:6px;background:#fff;padding:10px 12px;font-size:14px;color:var(--ink)}.answer-row span{font-size:12px;color:var(--muted);white-space:nowrap}.q-actions{display:flex;gap:13px;align-items:center;margin-top:18px}.small-button{font-size:11px;background:var(--mint);padding:7px 12px;border-radius:5px;color:var(--green)}.link-button{font-size:10px;color:var(--muted);padding:7px 0;text-decoration:underline;text-underline-offset:3px}.feedback{font-size:12px;line-height:1.7;margin-top:15px;padding:13px;border-radius:6px;background:#eaf1e5}.feedback.wrong{background:#f9eee7;color:#7d5543}.feedback b{display:block;margin-bottom:5px;font-size:12px}.lesson-end{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:25px 0;margin-top:25px;border-top:1px solid var(--line)}.read-button{font-size:12px;padding:9px 0;color:var(--green)}.source-note{font-size:10px;color:var(--muted);line-height:1.7;max-width:750px}.chapter-page-list{display:grid;gap:8px;margin:25px 0}.chapter-page-list a{display:flex;align-items:center;gap:15px;border:1px solid var(--line);background:var(--white);padding:17px 20px;border-radius:8px;font-size:14px}.chapter-page-list a:hover{border-color:#a5b99a}.chapter-page-list .number{font-size:11px;color:var(--muted);min-width:30px}.chapter-page-list .lesson-status{margin-left:auto;font-size:10px;color:var(--green);white-space:nowrap}.chapter-description{max-width:650px;color:var(--muted);font-size:15px}.review-card{max-width:750px;margin:auto}.review-nav{font-size:12px;color:var(--muted);margin-bottom:20px}.review-end{padding:40px;background:var(--white);border:1px solid var(--line);border-radius:12px}.review-end strong{font-size:50px;display:block;color:var(--green)}dialog{background:var(--white);color:var(--text);border:1px solid #bbc8b5;border-radius:14px;padding:32px;width:min(600px,92vw);max-height:85vh}dialog::backdrop{background:#18332c77;backdrop-filter:blur(3px)}dialog p{font-size:13px}dialog h2{font-size:27px;line-height:1.2;margin-top:16px}.dialog-x{float:right}.dialog-search{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:10px}.dialog-search>span{font-size:28px;color:var(--green)}.dialog-search input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-size:14px;color:var(--text)}#search-results{max-height:55vh;overflow:auto}.search-result{display:block;padding:13px 9px;border-bottom:1px solid var(--line);font-size:13px;border-radius:5px}.search-result:hover{background:var(--mint)}.search-result small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.search-empty{font-size:13px;color:var(--muted);padding:20px 5px}.setting-row{display:flex;align-items:center;gap:12px;padding:17px 0;border-top:1px solid var(--line);font-size:13px}.setting-row>span{flex:1}#profile-stats{display:flex;gap:25px;margin:25px 0}#profile-stats b{font-size:24px;display:block;color:var(--green)}#profile-stats span{font-size:10px;color:var(--muted)}#toast{position:fixed;bottom:25px;left:calc(50% + 100px);transform:translateX(-50%) translateY(100px);background:var(--green);color:#fff;border-radius:9px;padding:12px 20px;font-size:12px;z-index:100;opacity:0;transition:transform .2s,opacity .2s;pointer-events:none;max-width:85vw;text-align:center}#toast.visible{transform:translateX(-50%) translateY(0);opacity:1}.text-muted{color:var(--muted)}.saved-list{margin:30px 0}.saved-list a{display:inline-block;margin:5px 6px 5px 0;font-size:11px;background:var(--mint);padding:5px 10px;border-radius:5px}
@media(min-width:1600px){#main{padding-inline:75px}.lesson-layout{gap:45px}.lesson-prose p{font-size:16px}}@media(max-width:1200px){.top{padding:0 22px;gap:20px}.brand{min-width:220px}.brand>span{font-size:21px}#sidebar{width:250px}#main{margin-left:250px;padding:35px 30px 50px}.lesson-layout{grid-template-columns:minmax(0,1fr)}.lab{position:static;max-width:700px;width:100%;margin:0 auto}.lab-stage{max-height:390px}.home-hero{gap:15px}.home-hero h1{font-size:45px}.chapter-grid{grid-template-columns:1fr}.question-grid{gap:12px}.stats-strip{gap:25px}.stats-strip .small-notice{display:none}}@media(max-width:800px){.top{height:72px;padding:0 14px;gap:12px}.brand{min-width:0;gap:7px}.brand svg{width:28px}.brand>span{font-size:18px}.brand small{font-size:10px;letter-spacing:normal}.mobile-only{display:block}.top .icon{font-size:21px}.search-trigger{width:38px;height:38px;border:0;padding:5px;display:block;background:none;color:transparent;overflow:hidden;white-space:nowrap}.search-trigger>span{color:var(--green);font-size:29px}.search-trigger kbd{display:none}.top-actions{gap:8px}.pill{font-size:9px;padding:6px 9px}.top-actions .icon{min-width:26px}#sidebar{top:72px;width:280px;transform:translateX(-100%);transition:transform .2s}body.menu-open #sidebar{transform:translateX(0)}#sidebar-shade{position:fixed;inset:72px 0 0;background:#18332c66;z-index:24}#sidebar-shade[hidden]{display:none}#main{margin-left:0;padding:28px 19px 40px}.home-hero{grid-template-columns:1fr;gap:0}.home-hero h1{font-size:47px;max-width:520px;margin:15px 0 20px}.home-hero p{font-size:14px}.hero-art{max-width:460px;margin:0 auto;width:100%}.hero-art svg{height:230px}.stats-strip{gap:35px;margin:10px 0 27px;padding:17px 0}.stats-strip strong{font-size:22px}.grade-cards{gap:8px;margin-bottom:28px}.grade-card{padding:14px 11px}.grade-card .grade-number{font-size:22px}.grade-card p{font-size:10px;line-height:1.6;min-height:48px}.chapter-card{padding:16px;gap:13px}.course-head h2{font-size:24px}.course-head>span{font-size:10px}.lesson-title{font-size:34px}.lead{font-size:17px}.lesson-tools{gap:14px;font-size:10px;flex-wrap:wrap}.lesson-layout{gap:22px}.lesson-prose p{font-size:15px}.question-grid{grid-template-columns:1fr}.question{padding:20px}.practice{margin-top:35px}.practice-heading{align-items:flex-start}.practice-heading h2{font-size:25px}.practice-heading>span{font-size:10px}.lesson-end{flex-wrap:wrap}.crumbs{font-size:9px;margin-bottom:20px;flex-wrap:wrap;gap:5px}.lesson-top .meta{font-size:9px}.lesson-top .arrows .icon{font-size:20px;min-width:29px}.lab-stage svg text{font-size:14px}.lab-slider{font-size:11px}.lab-task{font-size:11px}.lab{border-radius:10px}.example{padding:20px}.profile{padding:15px 23px}#toast{left:50%;width:max-content}.lesson-tools .bookmark{margin-left:0}.review-end{padding:25px}.home-hero .button-row{gap:9px}.button{font-size:11px;padding:11px 16px}dialog{padding:24px}.dialog-search{gap:8px}.dialog-search input{font-size:12px}.source-note{font-size:10px}}@media(max-width:360px){.brand small{display:none}.top{gap:8px}.pill{font-size:8px;padding:5px 7px}.grade-card .grade-number span{display:block}.home-hero h1{font-size:40px}.stats-strip{gap:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}@media print{.top,#sidebar,.lesson-tools,.practice,.lesson-end,.lab-controls,.lab-select,.lab-head button,.lab-task,dialog,#toast{display:none!important}#main{margin:0;padding:0}.lesson-layout{display:block}.lab{position:static;page-break-inside:avoid;max-width:500px;margin:25px auto}.proof{break-inside:avoid}.proof-content{display:block!important}.lesson-title{font-size:28px}body{background:#fff;font-size:12px}.example,.rule{break-inside:avoid}.lesson-prose p{font-size:12px}.lab-stage{max-height:250px}.joke{display:none}.proof-sort{display:none}h2{font-size:20px}}
/* Shared component refinements */
.chapter-card h3{margin:6px 0 7px}.chapter-glyph{font-size:25px}.toc-lesson>.number{flex-shrink:0}.stats-strip{justify-content:flex-start}.home-hero .micro{font-size:11px;margin-top:16px}.feedback:empty{display:none}.question.wrong .feedback{background:#f9eee7;color:#7d5543}.question.correct{border-color:#9eb894}.option:before{display:none}.option:has(input:checked){background:var(--mint);border-color:var(--green)}.option input{accent-color:var(--green);margin:5px 0 0;flex-shrink:0}.lesson-prose p{font-size:var(--font)}.lesson-prose .source-note{font-size:11px}.rule p{margin:8px 0 0}.read-button{color:var(--white);padding:12px 20px}.lesson-end .lesson-tools{border:0;padding:0;margin:0;gap:8px}.bookmark{font-size:12px;color:var(--green);padding:8px}.bookmark[aria-pressed=true]{color:#8b6c31}.proof summary>span{display:block;font-size:10px;font-weight:400;margin-top:4px}.sort-item>span{flex:0 0 15px}.sort-item>p{flex:1;font-size:12px;margin:0}.sort-item .arrows{display:flex;flex-direction:column;gap:4px}.chapter-page-list h3{font-size:16px;margin-bottom:5px}.chapter-page-list p{font-size:12px;margin:0;color:var(--muted)}.chapter-page-list a>div{flex:1;min-width:0}.review-nav{display:flex;gap:12px;justify-content:space-between;margin-top:24px}.search-result{display:flex;gap:14px;align-items:center}.search-result>div{flex:1;min-width:0}.source-note{overflow-wrap:anywhere}.saved-list{margin-bottom:30px}
@media(max-width:800px){.stats-strip{gap:12px;justify-content:space-between}.stats-strip span{font-size:9px;flex:1}.stats-strip strong{font-size:23px}.course-head{align-items:flex-start}.course-head>span{max-width:110px}.practice-heading>span{max-width:95px}.lab-slider{grid-template-columns:minmax(90px,1.2fr) 1.2fr 40px;gap:6px}.lesson-top{align-items:flex-start}.lesson-top .eyebrow{font-size:12px;letter-spacing:normal}.bookmark{font-size:10px;white-space:nowrap}.chapter-page-list a{padding:15px 12px;gap:9px}.chapter-page-list .lesson-status{white-space:normal;text-align:right;width:65px;flex-shrink:0}.lesson-end .lesson-tools{width:100%;justify-content:space-between}.q-actions{flex-wrap:wrap}.sort-item{padding:9px}.grade-card .grade-number span{font-size:11px}}
@media(max-height:850px) and (min-width:1201px){.lab{position:static}}
/* AI Design Framework 0.5.0: shared interaction and reading roles */
[hidden]{display:none!important}.skip-link{position:fixed;left:18px;top:12px;z-index:120;background:var(--green);color:white;padding:12px 20px;border-radius:6px;transform:translateY(-160%)}.skip-link:focus{transform:none}.toc-chapter summary{min-height:44px}.toc-chapter summary .chevron{font-size:17px;line-height:1}.grade-filters button{min-height:32px}.toc-lesson{min-height:32px}.top-actions button{min-height:36px}.lab-head button{min-height:32px;padding:4px 8px}.lab-select button{min-height:32px;padding:6px 10px}.lab-slider{min-height:35px}.lab-slider input{height:30px}.link-button,.small-button{min-height:32px}.sort-item button{min-width:44px;min-height:32px}.lesson-prose{max-width:70ch}.proof summary{min-height:44px}.chapter-page-list a:focus-visible,.chapter-card:focus-visible{outline-offset:0}.trap b{color:var(--coral)}.lab-stage svg .small{fill:var(--muted)}.lab-readout,.lab-task{overflow-wrap:anywhere}
@media(max-width:800px){body.menu-open{overflow:hidden}.pill{padding:7px 9px}.icon{min-height:36px}.lab-select button{min-height:36px}.lab-controls{padding-inline:16px}.lab-head{padding-inline:16px}.lab-slider{grid-template-columns:minmax(100px,1.25fr) 1fr 35px}.sort-item .arrows{gap:6px}}
.lesson-prose .steps li{font-size:calc(var(--font) - 2px)}.question .q-prompt{font-size:calc(var(--font) - 1px)}.feedback{font-size:calc(var(--font) - 3px)}.lab-readout{font-size:calc(var(--font) - 3px)}
h1,h2,h3{overflow-wrap:anywhere;hyphens:auto}
.proof summary{list-style:none}.proof summary::-webkit-details-marker{display:none}.proof summary::marker{content:''}
.lab-stage svg line,.lab-stage svg path,.lab-stage svg polygon,.lab-stage svg text{pointer-events:none}

.chapter-card .chapter-meta{font-size:12px;line-height:1.5}
