:root{--hue:357;--background:oklch(0.973 0.005 var(--hue));--surface:oklch(0.997 0.004 var(--hue));--surface-muted:oklch(0.948 0.008 var(--hue));--border:oklch(0.891 0.013 var(--hue));--text:oklch(0.256 0.005 var(--hue));--text-muted:oklch(0.533 0.012 var(--hue));--text-inverse:#ffffff;--subject-primary:oklch(0.53 0.177 var(--hue));--subject-primary-hover:oklch(0.445 0.149 var(--hue));--subject-secondary:oklch(0.873 0.05 var(--hue));--action-primary:var(--subject-primary);--action-primary-hover:var(--subject-primary-hover);--focus-ring:oklch(0.395 0.129 var(--hue));--success:#237a51;--success-surface:#e4f3eb;--warning:#9a6518;--warning-surface:#f7edd9;--danger:#b13c35;--danger-surface:#f8e5e3;--info:#3e638d;--info-surface:#e5edf6;--progress-track:oklch(0.92 0.008 var(--hue));--progress-value:var(--subject-primary);--chart-primary:var(--subject-primary);--chart-secondary:oklch(0.411 0.129 var(--hue));--radius:10px;--shadow-float:0 18px 45px rgba(34,34,30,0.12);--shadow-soft:0 12px 32px rgba(50,43,36,0.08);color-scheme:light}html.dark{--background:oklch(0.23 0.005 var(--hue));--surface:oklch(0.272 0.005 var(--hue));--surface-muted:oklch(0.316 0.007 var(--hue));--border:oklch(0.403 0.01 var(--hue));--text:oklch(0.962 0.008 var(--hue));--text-muted:oklch(0.767 0.014 var(--hue));--text-inverse:#191917;--subject-primary:oklch(0.696 0.16 var(--hue));--subject-primary-hover:oklch(0.757 0.134 var(--hue));--subject-secondary:oklch(0.368 0.068 var(--hue));--focus-ring:oklch(0.846 0.091 var(--hue));--progress-track:oklch(0.407 0.01 var(--hue));--chart-secondary:oklch(0.814 0.091 var(--hue));--success-surface:#203d31;--warning-surface:#473920;--danger-surface:#4a2928;--info-surface:#26394e;color-scheme:dark}*{box-sizing:border-box}body,html{background:var(--background)}body{margin:0;color:var(--text);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{min-height:68px;border-bottom:1px solid var(--border);background:var(--surface)}.nav-shell{max-width:1240px;min-height:67px;margin:0 auto;padding:0 24px;display:flex;align-items:stretch;gap:28px}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.02em}.brand-mark{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;background:var(--subject-primary);color:var(--text-inverse);font-family:Georgia,serif;font-size:18px}.nav-links{display:flex;align-items:stretch;gap:8px;color:var(--text-muted);font-size:14px}.nav-links a{min-width:52px;min-height:44px;padding:0 12px;border-bottom:2px solid transparent;display:inline-flex;align-items:center;justify-content:center}.nav-links a[aria-current=page]{color:var(--subject-primary);border-color:var(--subject-primary)}.nav-spacer{flex:1 1}.account-slot{align-self:center;min-height:36px;padding:0 11px;border:1px solid var(--border);border-radius:99px;display:inline-flex;align-items:center;gap:7px;color:var(--text-muted);font-size:13px;white-space:nowrap}.account-link:hover{border-color:var(--subject-primary);color:var(--subject-primary)}.account-retry{cursor:pointer;background:var(--surface)}.account-retry:hover{border-color:var(--danger);color:var(--danger)}.account-actions{align-self:center;display:flex;align-items:center;gap:6px}.account-actions .account-slot{align-self:auto}.account-logout{width:40px;height:40px}.page-shell{max-width:1240px;margin:0 auto;padding:0 24px 80px}.section{padding:64px 0 0}.section-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px}.eyebrow{margin:0 0 9px;color:var(--subject-primary);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{margin-top:0;overflow-wrap:anywhere}h1{margin-bottom:18px;font-size:clamp(2.4rem,5vw,4.3rem);line-height:1.04;letter-spacing:0}h2{margin-bottom:8px;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.15}h3{margin-bottom:6px;font-size:1.1rem;line-height:1.25}.muted{color:var(--text-muted)}.button{min-height:46px;max-width:100%;border:1px solid transparent;border-radius:7px;padding:10px 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;line-height:1.35;overflow-wrap:anywhere;text-align:center;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--action-primary);color:var(--text-inverse)}.button-primary:hover{background:var(--action-primary-hover)}.button-secondary{border-color:var(--border);background:var(--surface);color:var(--text)}.button-secondary:hover{border-color:var(--subject-primary);color:var(--subject-primary)}.button-quiet{background:transparent;color:var(--subject-primary)}.button-quiet:hover{background:var(--surface-muted)}.button:disabled,.button[aria-disabled=true]{opacity:.52;pointer-events:none;transform:none}.icon-button{width:44px;height:44px;flex:0 0 auto;border:1px solid var(--border);border-radius:7px;display:inline-grid;place-items:center;background:var(--surface);color:var(--text);transition:border-color .18s ease,color .18s ease,background .18s ease}.icon-button:hover{border-color:var(--subject-primary);color:var(--subject-primary)}.icon-button:disabled{opacity:.52}.text-link{min-height:44px;display:inline-flex;align-items:center;gap:4px;color:var(--subject-primary);font-weight:700;font-size:14px}.text-link:hover{text-decoration:underline}.home-hero{position:relative;min-height:560px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:center;grid-gap:72px;gap:72px;padding:86px 0 76px;border-bottom:1px solid var(--border);overflow:hidden}.home-hero:before{content:"";position:absolute;width:520px;height:520px;right:3%;top:20px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--subject-secondary) 38%,transparent),transparent 68%);pointer-events:none}.hero-copy{position:relative;z-index:1;max-width:600px}.hero-kicker{display:flex;align-items:center;gap:9px;margin-bottom:22px;color:var(--text-muted);font-size:13px;font-weight:700}.hero-kicker-dot{width:8px;height:8px;border-radius:50%;background:var(--subject-primary);box-shadow:0 0 0 5px var(--subject-secondary)}.hero-copy h1{max-width:570px;margin-bottom:22px;font-size:clamp(3.3rem,7vw,6rem);line-height:.98;letter-spacing:-.06em}.hero-copy h1 em{display:block;color:var(--subject-primary);font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.07em}.hero-copy>p:not(.eyebrow){max-width:490px;margin-bottom:32px;color:var(--text-muted);font-size:1.12rem;line-height:1.75}.hero-actions{gap:12px}.hero-actions,.hero-meta{display:flex;flex-wrap:wrap}.hero-meta{margin-top:26px;gap:18px;color:var(--text-muted);font-size:12px}.hero-meta span{display:inline-flex;align-items:center;gap:6px}.hero-meta svg{color:var(--subject-primary)}.math-stage{position:relative;z-index:1;min-height:430px;padding:24px;border:1px solid color-mix(in srgb,var(--subject-primary) 22%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--surface) 84%,var(--subject-secondary));box-shadow:var(--shadow-soft);overflow:hidden}.math-stage:before{content:"";inset:14px;border:1px solid color-mix(in srgb,var(--subject-primary) 16%,var(--border));border-radius:10px}.math-stage:after,.math-stage:before{position:absolute;pointer-events:none}.math-stage:after{content:"∂";right:22px;bottom:-38px;color:color-mix(in srgb,var(--subject-primary) 16%,transparent);font-family:Georgia,serif;font-size:230px;line-height:1}.math-stage-topline{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;color:var(--text-muted);font-size:12px}.math-stage-tag{color:var(--subject-primary);font-size:10px;font-weight:800;letter-spacing:.14em}.math-stage .chart-frame{position:absolute;inset:60px 30px 78px;width:auto;height:auto;aspect-ratio:auto;border:0;background:transparent}.math-stage-footer{position:absolute;left:30px;right:30px;bottom:22px;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-muted);font-size:12px}.formula-chip{padding:5px 9px;border:1px solid var(--subject-secondary);border-radius:6px;background:var(--surface);color:var(--subject-primary-hover);font-family:Georgia,serif;font-size:14px}.math-grid{stroke:color-mix(in srgb,var(--border) 60%,transparent);stroke-width:1}.math-plot-surface{fill:color-mix(in srgb,var(--surface) 72%,var(--surface-muted));stroke:color-mix(in srgb,var(--border) 70%,transparent);stroke-width:1}.math-axis{stroke:color-mix(in srgb,var(--text-muted) 72%,var(--border));stroke-width:1.2}.math-arrow{stroke:color-mix(in srgb,var(--text-muted) 82%,var(--border));stroke-width:1.1}.math-curve-shadow{stroke:color-mix(in srgb,var(--subject-primary) 18%,transparent);stroke-width:11;stroke-linecap:round;stroke-linejoin:round}.math-curve{stroke:var(--subject-primary);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.math-tangent{stroke:var(--chart-secondary);stroke-width:2.2;stroke-dasharray:8 7;stroke-linecap:round}.math-guide{stroke:color-mix(in srgb,var(--chart-secondary) 48%,var(--border));stroke-width:1.2;stroke-dasharray:4 5}.math-area{fill:color-mix(in srgb,var(--subject-primary) 9%,transparent);stroke:color-mix(in srgb,var(--subject-primary) 28%,transparent);stroke-width:1.5;stroke-dasharray:3 4}.math-point{fill:var(--subject-primary);stroke:var(--surface);stroke-width:4}.math-point-ring{fill:none;stroke:color-mix(in srgb,var(--subject-primary) 36%,transparent);stroke-width:1.5}.math-equation,.math-label,.math-label-accent,.math-label-small{fill:var(--text-muted);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.math-label{font-size:13px;font-weight:700}.math-label-small{font-size:12px;font-weight:700}.math-label-accent{fill:var(--subject-primary);font-size:18px}.math-equation,.math-label-accent{font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:700}.math-equation{fill:var(--chart-secondary);font-size:16px}.progress,.progress-row{width:100%;display:flex;align-items:center;gap:12px}.progress-track{height:8px;flex:1 1;overflow:hidden;border-radius:99px;background:var(--progress-track)}.progress-value{width:var(--progress-percent,0);height:100%;display:block;border-radius:inherit;background:var(--progress-value)}.progress-label{min-width:max-content;color:var(--text-muted);font-size:13px}.status-badge{width:-moz-fit-content;width:fit-content;min-height:28px;padding:3px 9px;border-radius:99px;display:inline-flex;align-items:center;gap:6px;background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:750}.status-badge-info{background:var(--info-surface);color:var(--info)}.status-badge-success{background:var(--success-surface);color:var(--success)}.status-badge-warning{background:var(--warning-surface);color:var(--warning)}.status-badge-danger{background:var(--danger-surface);color:var(--danger)}.surface-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);grid-gap:24px;gap:24px}.surface{border-top:1px solid var(--border);padding:24px 0}.surface-bordered{border:1px solid var(--border);border-radius:var(--radius);padding:24px;background:var(--surface)}.continue-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:20px;gap:20px;align-items:center}.section-note{align-self:center;color:var(--text-muted);font-size:13px}.guest-start{min-height:188px;padding:26px 28px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:22px;gap:22px;align-items:center;box-shadow:var(--shadow-soft)}.start-number{color:var(--subject-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:3.4rem;font-weight:800;letter-spacing:-.08em}.start-copy{min-width:0}.continue-title{margin:11px 0 5px;font-size:1.4rem}.guest-start .muted{max-width:600px;margin-bottom:0}.pill{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:99px;background:var(--subject-secondary);color:var(--subject-primary-hover);font-size:12px;font-weight:700}.path-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px}.path-item{position:relative;min-height:188px;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.path-item:hover{transform:translateY(-4px);border-color:var(--subject-primary);box-shadow:var(--shadow-soft)}.path-item-1{background:color-mix(in srgb,var(--subject-secondary) 24%,var(--surface))}.path-index{display:block;margin-bottom:30px;color:var(--subject-primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:800}.path-item h3{max-width:130px}.path-item p{max-width:150px;margin:0;color:var(--text-muted);font-size:13px}.path-arrow{position:absolute;right:18px;bottom:18px;color:var(--subject-primary);opacity:0;transition:opacity .18s ease,transform .18s ease}.path-item:hover .path-arrow{opacity:1;transform:translate(2px,-2px)}.summary-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.summary-item{padding:17px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.summary-number{display:block;margin-bottom:3px;font-size:1.6rem;font-weight:800}.section-action{margin-top:18px}.reward-preview{display:flex;align-items:center;gap:16px}.secondary-entry{min-height:190px;padding:28px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:20px;gap:20px}.practice-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:var(--subject-primary);color:var(--text-inverse)}.secondary-entry>svg{color:var(--subject-primary)}.secondary-entry h2{margin-bottom:6px}.secondary-entry .muted{margin-bottom:0}.reward-art{width:64px;height:64px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--subject-primary);border-radius:50%;background:var(--subject-secondary);color:var(--subject-primary-hover);font-size:30px;font-family:Georgia,serif}.course-header{padding:56px 0 34px;border-bottom:1px solid var(--border)}.course-header-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-gap:48px;gap:48px;align-items:end}.course-title{margin-bottom:12px;font-size:clamp(2rem,4vw,3.4rem)}.course-lead{max-width:680px;color:var(--text-muted);font-size:1.05rem}.course-statline{display:flex;flex-wrap:wrap;gap:18px;margin-top:20px;color:var(--text-muted);font-size:13px}.course-statline strong{color:var(--text)}.course-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.course-progress-box{padding:18px;border-left:3px solid var(--subject-primary);background:var(--surface-muted)}.course-progress-box strong{display:block;margin:6px 0 12px;font-size:2rem}.course-preview-note{padding:20px;border-left:3px solid var(--info);background:var(--info-surface)}.course-preview-note strong{margin:14px 0 6px;display:block}.course-preview-note p{margin-bottom:0;color:var(--text-muted);font-size:14px}.chapter-list{display:grid;grid-gap:16px;gap:16px}.chapter{border-top:1px solid var(--border);padding-top:20px}.chapter-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:16px;gap:16px;align-items:start}.chapter-number{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--subject-secondary);color:var(--subject-primary-hover);font-weight:800}.chapter-meta,.chapter-target{color:var(--text-muted);font-size:13px}.chapter-meta{display:flex;align-items:center;gap:12px}.lesson-list{margin:16px 0 0 52px;border-left:1px solid var(--border)}.lesson-row{min-height:70px;padding:12px 14px 12px 18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;border-bottom:1px solid var(--border)}.lesson-status{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;color:var(--text-muted);font-size:12px}.lesson-status.demo{border-color:var(--subject-primary);color:var(--subject-primary)}.lesson-status.unavailable{background:var(--surface-muted)}.lesson-name{font-weight:700}.lesson-sub{font-size:12px}.lesson-row.unavailable,.lesson-sub{color:var(--text-muted)}.lesson-link{justify-self:end}.course-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-gap:40px;gap:40px;padding-top:34px}.course-aside{align-self:start;position:-webkit-sticky;position:sticky;top:20px}.aside-title{margin-bottom:16px;font-weight:800}.milestone{padding:14px 0;border-top:1px solid var(--border)}.lesson-page{max-width:1380px;margin:0 auto;padding:20px 24px 72px}.lesson-toolbar{min-height:52px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--border)}.toolbar-back{min-height:44px;padding-inline:0;color:var(--subject-primary);font-size:14px;font-weight:700}.toolbar-divider{height:20px;width:1px;background:var(--border)}.toolbar-title{min-width:0;overflow-wrap:anywhere;font-weight:700}.toolbar-step{margin-left:auto;color:var(--text-muted);font-size:13px}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);grid-gap:48px;gap:48px;padding-top:42px}.lesson-content{max-width:760px}.lesson-content-body{min-height:470px}.lesson-content h1{font-size:clamp(2rem,4vw,3.35rem)}.step-kicker{margin-bottom:10px;color:var(--subject-primary);font-size:13px;font-weight:800}.lesson-content p{color:var(--text-muted);font-size:1.04rem}.formula{margin:28px 0;padding:24px;border-left:3px solid var(--subject-primary);background:var(--surface-muted);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,4vw,2.6rem);text-align:center}.example{margin-top:28px;padding-top:22px;border-top:1px solid var(--border)}.lesson-controls{align-self:start;position:-webkit-sticky;position:sticky;top:20px}.tool-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.tool-panel-header{padding:16px 18px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.tool-panel-body{padding:18px}.chart-frame{aspect-ratio:1.35;width:100%;background:var(--surface-muted);border:1px solid var(--border)}.chart-frame svg{width:100%;height:100%;display:block}.range-row{display:flex;align-items:center;gap:12px;margin-top:16px}.range-row input{min-width:0;min-height:44px;flex:1 1;accent-color:var(--subject-primary)}.range-value{min-width:54px;color:var(--subject-primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700}.question{margin-top:20px}.question-options{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.option{min-height:46px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface);color:var(--text);text-align:left}.option.selected,.option:hover{border-color:var(--subject-primary);background:color-mix(in srgb,var(--subject-secondary) 32%,var(--surface))}.option.correct{border-color:var(--success);background:var(--success-surface)}.option.incorrect{border-color:var(--danger);background:var(--danger-surface)}.option-result{color:inherit;font-size:12px;font-weight:800;white-space:nowrap}.feedback{margin-top:16px;padding:14px;border-left:3px solid var(--info);display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:10px;gap:10px;background:var(--info-surface)}.feedback-success,.feedback.correct-feedback{border-color:var(--success);background:var(--success-surface)}.feedback-error,.feedback.error-feedback{border-color:var(--danger);background:var(--danger-surface)}.feedback strong{display:block;margin-bottom:3px}.question-submit{margin-top:14px}.form-field{min-width:0;display:grid;grid-gap:7px;gap:7px}.form-label{color:var(--text-muted);font-size:14px;font-weight:700}.form-error,.form-hint{font-size:13px}.form-hint{color:var(--text-muted)}.form-error{color:var(--danger)}.state-view{max-width:680px;min-height:430px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.state-view-icon{margin-bottom:20px;color:var(--subject-primary)}.state-view h1{max-width:640px;margin-bottom:14px;font-size:clamp(2rem,4vw,3.4rem)}.state-view-description{max-width:580px;color:var(--text-muted);font-size:1.02rem}.state-view-action{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px}.loading-state{min-height:430px;padding:80px 0;display:flex;flex-direction:column;justify-content:center}.skeleton{border-radius:5px;background:linear-gradient(90deg,var(--surface-muted) 25%,var(--surface) 50%,var(--surface-muted) 75%);background-size:220% 100%;animation:skeleton-shift 1.4s ease-in-out infinite}.skeleton-kicker{width:112px;height:14px;margin-bottom:18px}.skeleton-title{width:min(520px,82%);height:54px;margin-bottom:24px}.skeleton-copy{width:min(620px,100%);height:18px;margin-bottom:10px}.skeleton-copy-short{width:min(420px,70%)}.skeleton-action{width:128px;height:46px;margin-top:24px}@keyframes skeleton-shift{0%{background-position:100% 0}to{background-position:-100% 0}}.step-nav{display:flex;justify-content:space-between;gap:10px;margin-top:22px}.completion{padding:26px;border:1px solid var(--subject-primary);background:color-mix(in srgb,var(--subject-secondary) 25%,var(--surface))}.completion h3{margin-top:16px}.summary-note{min-height:180px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:14px}.summary-note p{margin:0}.tool-hint{margin:14px 0 0;color:var(--text-muted)}.lesson-local-error{max-width:720px;min-height:560px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.lesson-local-error>svg{margin-bottom:18px;color:var(--danger)}.lesson-local-error h1{font-size:clamp(2rem,4vw,3.35rem)}.practice-header{padding:54px 0 30px;border-bottom:1px solid var(--border)}.practice-controls{display:flex;flex-wrap:wrap;gap:16px;margin-top:26px}.practice-controls .form-field{min-width:190px}.select-control{min-height:44px;border:1px solid var(--border);border-radius:6px;padding:0 12px;background:var(--surface);color:var(--text)}.practice-shell{max-width:800px;margin:0 auto;padding-top:38px}.empty-state{max-width:680px;min-height:420px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.practice-question{border-top:1px solid var(--border);padding-top:24px}.question-title{margin-top:16px}.number-input{width:100%;min-height:48px;margin-top:14px;border:1px solid var(--border);border-radius:6px;padding:0 14px;background:var(--surface);color:var(--text)}.header-end{display:flex;align-items:center;gap:8px}.settings-root{position:relative;display:inline-flex}.settings-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:50;width:min(320px,calc(100vw - 32px));padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-float)}.settings-group+.settings-group{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.settings-group-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.settings-group-title{margin:0;padding-left:8px;border-left:3px solid var(--subject-primary);font-size:13px;font-weight:800;letter-spacing:.04em}.settings-value-badge{min-width:36px;padding:1px 8px;border-radius:99px;background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.settings-reset{width:26px;height:26px;margin-left:auto;display:inline-grid;place-items:center;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-muted);transition:opacity .18s ease,color .18s ease,border-color .18s ease}.settings-reset:hover{border-color:var(--subject-primary);color:var(--subject-primary)}.settings-reset[disabled]{opacity:0;pointer-events:none}.theme-mode-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.theme-mode-button{min-height:52px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-muted);font-size:12px;font-weight:700;transition:border-color .18s ease,color .18s ease,background .18s ease}.theme-mode-button:hover{border-color:var(--subject-primary);color:var(--subject-primary)}.theme-mode-button[aria-pressed=true]{border-color:var(--subject-primary);background:color-mix(in srgb,var(--subject-secondary) 32%,var(--surface));color:var(--subject-primary-hover)}.hue-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-height:44px;margin:0;background:transparent;cursor:pointer}.hue-slider::-webkit-slider-runnable-track{height:14px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:99px;background:linear-gradient(90deg,hsl(0 72% 55%),hsl(60 72% 55%),hsl(120 72% 55%),hsl(180 72% 55%),hsl(240 72% 55%),hsl(300 72% 55%),hsl(360 72% 55%))}.hue-slider::-webkit-slider-thumb{-webkit-appearance:none;margin-top:-5px;width:22px;height:22px;border:2px solid var(--surface);border-radius:50%;background:oklch(.62 .19 var(--hue));box-shadow:0 1px 5px rgba(0,0,0,.35)}.hue-slider::-moz-range-track{height:14px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:99px;background:linear-gradient(90deg,hsl(0 72% 55%),hsl(60 72% 55%),hsl(120 72% 55%),hsl(180 72% 55%),hsl(240 72% 55%),hsl(300 72% 55%),hsl(360 72% 55%))}.hue-slider::-moz-range-thumb{width:18px;height:18px;border:2px solid var(--surface);border-radius:50%;background:oklch(.62 .19 var(--hue));box-shadow:0 1px 5px rgba(0,0,0,.35)}@media (max-width:900px){.course-header-grid,.course-layout,.home-hero,.lesson-layout,.surface-grid{grid-template-columns:1fr}.home-hero{min-height:auto;gap:46px;padding-top:64px}.hero-copy h1{font-size:clamp(3.2rem,9vw,5rem)}.path-list{grid-template-columns:repeat(3,minmax(0,1fr))}.course-aside,.lesson-controls{position:static}}@media (max-width:640px){.site-header{min-height:112px}.nav-shell{min-height:111px;padding:0 16px;display:grid;grid-template-columns:1fr auto;grid-template-rows:60px 51px;grid-gap:0 12px;gap:0 12px}.brand{grid-column:1;grid-row:1}.header-end{grid-column:2;grid-row:1;justify-self:end}.account-slot span,.nav-spacer{display:none}.nav-links{grid-column:1/-1;grid-row:2;margin:0 -4px}.nav-links a{flex:1 1;min-width:0;padding:0 8px}.page-shell{padding:0 16px 56px}.section{padding-top:44px}h1{font-size:2.55rem}.home-hero{gap:36px;padding:48px 0 42px}.hero-copy h1{font-size:clamp(3rem,15vw,4.25rem)}.hero-copy>p:not(.eyebrow){font-size:1.02rem}.math-stage{min-height:350px;padding:18px}.math-stage .chart-frame{inset:54px 16px 78px}.math-stage-footer{left:18px;right:18px}.section-note{width:100%}.continue-panel,.guest-start{grid-template-columns:1fr}.guest-start{gap:18px;padding:22px}.start-number{display:none}.guest-start .button{justify-self:start}.path-list{grid-template-columns:1fr 1fr}.path-item{min-height:166px;padding:17px}.path-index{margin-bottom:22px}.summary-grid{grid-template-columns:1fr 1fr}.secondary-entry{grid-template-columns:auto minmax(0,1fr)}.secondary-entry .button{grid-column:1/-1;justify-self:start}.course-header{padding-top:38px}.course-layout{gap:24px}.chapter-header{grid-template-columns:auto minmax(0,1fr)}.chapter-meta{grid-column:2}.chapter-toggle{grid-row:1/span 2;grid-column:3}.lesson-list{margin-left:0}.lesson-row{grid-template-columns:auto minmax(0,1fr);padding-left:12px}.lesson-row .lesson-sub+span,.lesson-row .text-link{grid-column:2}.lesson-page{padding:12px 16px 52px}.lesson-toolbar{flex-wrap:wrap;min-height:76px;padding-bottom:12px}.toolbar-step{margin-left:0;width:100%}.lesson-layout{padding-top:30px;gap:30px}.lesson-content h1{font-size:2.25rem}.tool-panel-header{padding:14px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}