@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--bg:#f8f8f5;--paper:#fff;--ink:#252736;--muted:#787987;--purple:#6954ac;--light:#eeeaf8;--line:#e8e8e6;--green:#447a69}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:0;background:none;color:inherit}a{color:var(--purple)}button:disabled{cursor:not-allowed;opacity:.45}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:34px 20px;display:flex;flex-direction:column;position:fixed;width:232px;height:100vh}.brand{display:flex;gap:11px;align-items:center;margin:0 7px 40px}.brandmark{background:var(--purple);border-radius:12px;width:40px;height:42px;color:#fff;display:grid;place-items:center;font:italic 29px Georgia}.brand strong{font:750 16px Manrope,sans-serif}.brand small{display:block;font-size:10px;letter-spacing:1.7px;color:var(--muted);margin-top:5px}.nav-label{color:#9898a1;font-size:10px;letter-spacing:1.8px;margin:23px 15px 12px}.nav{display:flex;gap:12px;align-items:center;padding:13px 15px;border-radius:9px;width:100%;text-align:left;margin-bottom:5px;color:#787985;font-size:13px}.nav.active{background:var(--light);color:var(--purple);font-weight:650}.nav svg{width:18px;height:18px}.pill{margin-left:auto;background:#fff;border-radius:5px;font-size:10px;padding:2px 6px}.sidebar-bottom{margin-top:auto}.support{background:#f6f5f9;border:1px solid #eceaf1;border-radius:12px;padding:15px;margin:20px 4px}.support p{font-size:11px;line-height:1.7;color:var(--muted)}.support strong{font-size:12px}.linkbtn{padding:0;color:var(--purple);font-weight:650;font-size:12px}.profile{display:flex;align-items:center;gap:10px;padding:16px 8px 0;border-top:1px solid var(--line);text-align:left;width:100%}.avatar{border-radius:50%;background:#eee8dc;color:#937d57;display:grid;place-items:center;height:34px;width:34px;flex-shrink:0;font-size:12px;font-weight:650}.profile small{display:block;color:var(--muted);margin-top:3px;font-size:10px}.main{grid-column:2;min-width:0}.topbar{height:85px;display:flex;justify-content:space-between;align-items:center;padding:0 42px;border-bottom:1px solid var(--line);background:#fff}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb b{color:var(--ink);font-weight:500;margin-left:12px}.toolbar{display:flex;align-items:center;gap:18px}.role-switch{background:#f4f3f7;border-radius:7px;padding:4px;display:flex}.role-switch button{font-size:11px;padding:7px 13px;border-radius:5px;color:var(--muted)}.role-switch .selected{background:#fff;color:var(--purple);box-shadow:0 1px 4px #0000000c}.content{max-width:1450px;margin:auto;padding:34px 42px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;color:var(--purple);font-size:10px;font-weight:700}.heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:27px}.heading h1{font:750 29px Manrope,sans-serif;letter-spacing:-1px;margin:8px 0 10px}.heading p{font-size:12px;color:var(--muted);margin:0}.btn{background:var(--purple);color:#fff;border-radius:8px;padding:12px 18px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.light{background:var(--light);color:var(--purple)}.btn.small{font-size:11px;padding:9px 12px}.btn svg{width:15px;height:15px}.hero{position:relative;background:#eeebf7;border:1px solid #e6e1f2;border-radius:16px;min-height:198px;margin-bottom:27px;display:flex;align-items:center;justify-content:space-between;padding:29px 32px;overflow:hidden}.hero h2{font:700 25px Manrope,sans-serif;letter-spacing:-.7px;margin:11px 0}.hero p{font-size:12px;color:#77718b;line-height:1.8;max-width:400px}.hero .btn{margin-top:8px}.hero-art{width:330px;height:175px;position:relative;flex-shrink:0}.hero-art svg{width:100%;height:100%}.art-label{position:absolute;background:#fff;border:1px solid #e6e1f2;box-shadow:0 5px 20px #6954ac0b;border-radius:9px;padding:12px 16px;transform:rotate(-7deg);top:16px;left:16px;font:italic 20px Georgia;color:var(--purple)}.art-label.two{top:120px;left:174px;transform:rotate(8deg);font-size:18px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:31px}.stat{background:#fff;border:1px solid var(--line);border-radius:11px;padding:17px 18px;display:flex;gap:13px;align-items:center}.stat-icon{height:38px;width:38px;border-radius:10px;display:grid;place-items:center;background:#f2eff9;color:var(--purple)}.stat-icon svg{width:18px}.stat strong{display:block;font:700 22px Manrope,sans-serif}.stat small{font-size:10px;color:var(--muted)}.columns{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:25px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.section-title h2{font:700 17px Manrope,sans-serif;margin:0}.section-title p{color:var(--muted);font-size:11px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.course{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .15s}.course:hover{transform:translateY(-3px)}.course-art{height:115px;background:#eaf0ec;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.course-art svg{height:100%;width:100%}.course-art .tag{position:absolute;top:13px;left:15px;background:#ffffffc9;padding:4px 8px;border-radius:4px;font-size:9px;color:#557866}.course-body{padding:18px}.course-body h3{font:700 15px Manrope;margin:0 0 7px}.course-body p{font-size:10px;color:var(--muted);margin-bottom:18px}.progress{height:5px;border-radius:10px;background:#eeedf2;margin:10px 0}.progress span{display:block;background:var(--purple);height:100%;border-radius:10px}.course-foot{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);align-items:center;margin-top:14px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:21px;margin-bottom:18px}.panel h3{font:700 14px Manrope;margin:0 0 17px}.dayrow{display:flex;justify-content:space-between;gap:5px;margin:20px 0}.day{font-size:9px;text-align:center;color:var(--muted)}.day span{display:grid;place-items:center;border:1px solid var(--line);width:28px;height:28px;border-radius:50%;margin-top:8px;font-size:12px}.day.done span{background:var(--purple);color:white;border-color:var(--purple)}.callout{background:#f5f3fa;color:#7d7395;border-radius:7px;padding:12px;font-size:10px;line-height:1.7}.assignment{display:flex;gap:10px;align-items:flex-start;padding:13px 0;border-top:1px solid var(--line)}.assignment strong{font-size:11px;display:block}.assignment small{font-size:10px;display:block;color:var(--muted);margin-top:6px}.assignment .stat-icon{height:30px;width:30px;border-radius:7px;flex-shrink:0}.badge{display:inline-block;border-radius:5px;background:#f0edf8;color:var(--purple);font-size:9px;padding:5px 8px}.green{color:var(--green);background:#ebf4ef}.muted{color:var(--muted);font-size:12px;line-height:1.8}.notice{font-size:10px;color:#97959f;line-height:1.7;margin-top:25px}.tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin:24px 0}.tabs button{padding:12px 2px;font-size:12px;color:var(--muted);border-bottom:2px solid transparent}.tabs .active{color:var(--purple);border-color:var(--purple)}.catalog-tools{display:flex;gap:12px;margin-bottom:22px}.field,input,select,textarea{background:#fff;border:1px solid #dedee5;border-radius:7px;padding:11px 12px;color:var(--ink);min-width:0}.catalog-tools input{flex:1}.study-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:22px}.topic-list{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;height:fit-content}.topic-list h3{font-size:12px;margin:0 0 20px}.topic{display:block;width:100%;text-align:left;padding:13px 10px;border-radius:7px;color:var(--muted);font-size:11px;line-height:1.5;margin-bottom:5px}.topic.active{background:var(--light);color:var(--purple)}.question-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:28px}.question-meta{display:flex;justify-content:space-between;align-items:center;gap:12px}.question-card h2{font:600 20px Manrope;line-height:1.5;margin:31px 0 17px}.equation{font:normal 36px Georgia,serif;text-align:center;padding:28px 10px 37px;letter-spacing:1px}.answerrow{display:flex;gap:10px;margin-bottom:18px}.answerrow input{border:2px solid #c7bfdf;background:#fdfcfe;flex:1;padding:16px;font-size:15px}.question-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);padding-top:18px;margin-top:23px}.feedback{padding:13px;border-radius:8px;font-size:12px;line-height:1.8;margin-top:12px;background:#f1edf8}.feedback.correct{background:#eaf5ed;color:#3d7758}.blackboard{margin-top:22px;background:#253d39;border-radius:12px;color:#fafbf5;padding:24px;box-shadow:inset 0 0 0 6px #a99473}.blackboard h3{font-size:12px;color:#d1e3da;display:flex;justify-content:space-between;margin:0 0 20px}.chalk{font:20px Georgia;min-height:120px;line-height:2}.chalk p{border-bottom:1px solid #ffffff13;padding:4px 0;margin:0}.tutor-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.tutor-tools .btn{background:#ffffff16;color:#fff;border:1px solid #ffffff25}.tutor-chat{display:flex;gap:8px;margin-top:15px}.tutor-chat input{flex:1}.tutor-answer{font-size:12px;line-height:1.8;color:#dce8df;margin-top:15px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.empty{padding:30px 12px;color:var(--muted);font-size:12px;line-height:1.8}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}td,th{padding:14px 12px;text-align:left;border-bottom:1px solid var(--line)}th{font-size:10px;color:var(--muted);font-weight:500;background:#fafafa}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}label{display:block;font-size:11px;font-weight:600;margin-bottom:8px}label input,label select{display:block;width:100%;margin-top:8px}dialog{border:1px solid var(--line);border-radius:16px;padding:28px;width:min(620px,94vw);max-height:90vh;color:var(--ink)}dialog::backdrop{background:#20203060;backdrop-filter:blur(3px)}dialog h2{font:700 22px Manrope;margin:0 0 12px}.dialog-head{display:flex;justify-content:space-between;align-items:start}.dialog-head button{font-size:24px}.dialog-actions{margin-top:22px;display:flex;justify-content:end;gap:10px}.full{grid-column:1/-1}.builder-list{margin-top:20px}.builder-item{border:1px solid var(--line);border-radius:8px;padding:15px;display:flex;justify-content:space-between;gap:15px;margin-bottom:10px;line-height:1.8;font-size:12px}.builder-item button{color:#9a6472}.checkboxes{display:flex;flex-wrap:wrap;gap:12px}.checkboxes label{background:#f4f1f9;border-radius:7px;padding:10px;font-weight:400}.checkboxes input{display:inline;width:auto;margin:0 5px 0 0}.mini-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:15px;font-size:11px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#333244;color:white;border-radius:9px;padding:13px 22px;z-index:20;display:none;font-size:12px}.printout{display:none}.statusbar{background:#f4f2fa;border-bottom:1px solid #e6e1f2;color:#827699;font-size:10px;padding:7px 42px}.wide-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.progress-list{padding:14px 0;border-bottom:1px solid var(--line)}.progress-list strong{font-size:12px}.progress-list small{float:right;color:var(--muted);font-size:11px}@media(min-width:1500px){.content{padding-top:40px}.hero{min-height:225px}.course-art{height:140px}}@media(max-width:1150px){.sidebar{width:195px;padding:28px 14px}.shell{grid-template-columns:195px 1fr}.content{padding:28px 26px}.topbar{padding:0 26px}.columns{grid-template-columns:1fr 250px;gap:17px}.hero-art{width:250px}.stat{padding:15px 12px}.stat-icon{display:none}.brand strong{font-size:14px}.brand small{font-size:8px}.wide-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.columns{grid-template-columns:1fr}.aside-panels{display:grid;grid-template-columns:1fr 1fr;gap:15px}.hero-art{width:210px}.study-layout{grid-template-columns:1fr}.topic-list{display:flex;overflow:auto;gap:5px}.topic-list h3{display:none}.topic{min-width:145px;margin:0}.grid3{grid-template-columns:1fr 1fr}}@media(max-width:650px){.shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:16px;border-right:0;border-bottom:1px solid var(--line)}.brand{margin:0}.brand small{font-size:8px}.sidebar nav{display:flex;overflow:auto;margin-top:16px}.sidebar .nav{width:auto;white-space:nowrap;font-size:11px;padding:10px;margin:0}.nav-label,.sidebar-bottom,.sidebar .pill{display:none}.topbar{height:65px;padding:0 18px}.toolbar{gap:8px}.breadcrumb{font-size:10px}.content{padding:25px 18px}.heading h1{font-size:24px}.heading{align-items:start}.heading>.btn{padding:10px;font-size:10px}.hero{padding:23px;min-height:190px}.hero h2{font-size:23px}.hero-art{display:none}.hero p{font-size:11px}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat strong{font-size:21px}.cards,.wide-catalog{grid-template-columns:1fr}.course-art{height:115px}.aside-panels,.grid3{display:block}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.question-card{padding:20px}.question-card h2{font-size:17px}.equation{font-size:29px}.answerrow{flex-direction:column}.statusbar{padding:7px 18px}.catalog-tools{flex-wrap:wrap}.catalog-tools input{width:100%}.tutor-chat{flex-wrap:wrap}.question-meta{font-size:10px}.heading p{line-height:1.7}}@media print{body>*{display:none!important}body>.printout{display:block!important;color:#000;background:#fff;font:12pt Georgia}.printout h1{font-size:20pt}.print-q{page-break-inside:avoid;margin:25px 0;min-height:130px}.printout button{display:none}}
.class-code{display:block;overflow-wrap:anywhere;background:#f4f1fa;border:1px solid #e7e0f3;padding:12px;border-radius:7px;font-size:12px;line-height:1.8;user-select:all}.toolbar>.badge{white-space:nowrap}@media(max-width:650px){.toolbar>.avatar{display:none}.toolbar{gap:5px}.toolbar>.btn{padding:8px;font-size:10px}.topbar .breadcrumb{max-width:115px;line-height:1.7}}
/* Mathematics and the interactive AI blackboard. */
.katex-display{margin:.6em 0;overflow-x:auto;overflow-y:hidden;padding:.55em .2em;text-align:left}.katex-display>.katex{text-align:left}.equation{line-height:1.8;overflow-x:auto}.builder-item>div{min-width:0;flex:1}.builder-item .katex{font-size:1.2em}.question-family{display:block;width:fit-content;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#6d579f;background:#f0ebf7;border-radius:5px;padding:5px 8px;margin-bottom:10px}.builder-item strong{display:block}.math-fallback{white-space:pre-wrap;overflow-wrap:anywhere}.blackboard{overflow:hidden}.blackboard .katex{color:#f6faf1}.blackboard .katex-display{font-size:21px}.board-intro{color:#c2d6cb;font-size:12px;margin:6px 0 20px}.board-problem{border-bottom:1px solid #d9ede42b;padding-bottom:15px;margin-bottom:14px}.board-step{display:flex;gap:12px;margin:15px 0;padding:9px 0;animation:chalk-write .7s ease-out both}.board-step>div{min-width:0;flex:1}.board-step p{font:16px/1.7 Georgia,serif;margin:4px 0 12px;white-space:normal}.board-step-number{font:11px/24px Manrope,sans-serif;border:1px solid #b7d2c263;border-radius:50%;height:24px;width:24px;flex-shrink:0;text-align:center;color:#d3e9db}.board-ready{font-size:15px!important;color:#c2d6cb}.board-step.ai-working{border-left:2px solid #cbb5f1;padding-left:15px}.tutor-mode{font-size:10px;font-weight:400}.voice-toggle{display:flex;align-items:center;gap:6px;color:#d8e7de;font-size:12px;margin:0}.voice-toggle input{width:auto}.tutor-thread{max-height:280px;overflow:auto;margin:12px 0}.tutor-message{padding:12px 14px;border-radius:8px;margin:9px 0;font-size:13px;line-height:1.8;background:#ffffff0b;overflow-wrap:anywhere}.tutor-message.user{background:#d4b8ff19}.tutor-message strong{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#d8c6f1;margin-bottom:4px}.tutor-message .katex{font-size:1.1em}.tutor-chat{flex-wrap:wrap}.tutor-chat input{min-width:180px;flex:1}.tutor-tools{flex-wrap:wrap}.print-q{break-inside:avoid}.printout .katex-display{overflow:visible}@keyframes chalk-write{from{opacity:0;transform:translateY(7px);clip-path:inset(0 100% 0 0)}to{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}@media(prefers-reduced-motion:reduce){.board-step{animation:none}}@media(max-width:600px){.blackboard .katex-display{font-size:17px}.tutor-chat .btn{padding:9px}.equation .katex{font-size:1em}.builder-item{gap:12px}}
.question-graph{display:block;max-width:370px;width:100%;height:auto;margin:12px 0;color:#514b58;font:13px Manrope,sans-serif}.blackboard .question-graph{color:#ecf4e9;--graph-bg:#2c463d}
/* Math writing tools */
.math-keyboard{margin:14px 0 8px;border:1px solid var(--line,#e4dfea);border-radius:14px;background:#fbfaff;overflow:hidden}.math-keyboard summary{display:flex;align-items:center;gap:10px;padding:13px 16px;cursor:pointer;color:#56447a;font-size:13px;font-weight:700;list-style:none}.math-keyboard summary:after{content:'+';margin-left:auto;font-size:20px}.math-keyboard[open] summary:after{content:'−'}.math-key-icon{display:grid;place-items:center;background:#eee8f8;border-radius:7px;width:30px;height:30px;font:italic 20px Georgia}.keyboard-hint{font-size:11px;font-weight:400;color:#8a819b}.math-keyboard-body{padding:0 16px 12px}.math-key-tabs{display:flex;gap:4px;border-bottom:1px solid #e7e1ef;margin-bottom:12px}.math-key-tabs button{padding:9px 12px;border:0;background:transparent;color:#82758e;cursor:pointer;font:600 12px inherit}.math-key-tabs button.active{color:#6e4fab;border-bottom:2px solid #8c6fbd}.math-key-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.math-key{border:1px solid #e4deed;border-radius:9px;background:white;min-height:43px;color:#4c405c;cursor:pointer;font:16px Georgia;display:grid;place-items:center;padding:7px}.math-key:hover,.math-key:focus-visible{background:#f0e9fa;border-color:#a78bc9;outline-offset:2px}.math-entry-help{font-size:11px;line-height:1.6;color:#82758e;margin:12px 0 0}.math-input-preview:empty{display:none}.math-input-preview{padding:12px 15px;background:#f6f7f4;border-radius:10px;overflow:auto;margin:8px 0;font-size:17px;min-height:44px}.math-input-preview>span{font:600 9px Manrope,sans-serif;letter-spacing:1.2px;margin-right:14px;color:#96918e}.topic-list{max-height:calc(100vh - 140px);overflow:auto}.topic-group{font-size:10px!important;text-transform:uppercase;letter-spacing:1px;color:#8a7c9a;margin:22px 9px 10px!important;line-height:1.7}.calculator-title{display:flex;align-items:center;justify-content:space-between}.calculator-title h2{margin:10px 0}.calc-display{width:100%;padding:16px!important;font-size:20px!important}.calc-result{text-align:right;font:500 29px Manrope,sans-serif;padding:20px 7px;color:#69518c;overflow-wrap:anywhere}.calculator-keys{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.calculator-actions{display:flex;gap:8px;margin-top:15px}.calculator-actions .btn{flex:1;justify-content:center}.function-plot{margin:18px 0;padding:20px;background:#fcfbfe;border:1px solid #e5deed;border-radius:14px;color:#50465c;--graph-bg:#fcfbfe}.function-plot figcaption{font-weight:700;font-size:14px;margin-bottom:8px}.function-plot svg{width:100%;height:auto;font:11px Manrope,sans-serif}.function-plot svg svg{height:unset}.plot-grid path{stroke:#e8e4ef;stroke-width:1}.plot-grid text,.function-plot svg text{fill:#8a8194}.plot-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:11px}.plot-legend>span:before{content:'';display:inline-block;width:16px;height:3px;background:var(--curve-color);margin:0 6px 3px 0}.plot-note{font-size:10px;line-height:1.5;opacity:.7}.function-plot p{font-size:12px;line-height:1.6}.function-plot summary{cursor:pointer;font-size:11px}.function-plot table{font-size:11px;margin-top:12px;width:100%;border-collapse:collapse}.function-plot td,.function-plot th{padding:6px;border-bottom:1px solid #e5deed;text-align:right}.blackboard .math-keyboard{background:#fff;color:#50465c}.blackboard .math-input-preview{background:#fff;color:#50465c}.blackboard .function-plot .katex{color:#50465c}.tutor-chat textarea{flex:1;min-width:0;min-height:70px;padding:13px;border-radius:9px;font:13px Manrope,sans-serif;resize:vertical}.tutor-visual-tools{margin:10px 0;display:flex;gap:8px;flex-wrap:wrap}.blackboard .function-plot{color:#50465c}.blackboard .function-plot p{color:#786b88}.blackboard .function-plot text{fill:#8a8194}
@media(max-width:650px){.keyboard-hint{display:none}.math-key-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.math-keyboard-body{padding:0 10px 12px}.tutor-chat{flex-wrap:wrap}.tutor-chat textarea{flex-basis:100%}.function-plot{padding:9px}.topic-list{max-height:340px}.calculator-keys{gap:5px}.calculator-actions{flex-wrap:wrap}.calculator-actions .btn{font-size:11px;padding:10px}}

@media(max-width:900px){.topic-list:has(.topic-group){display:block;max-height:280px}.topic-list:has(.topic-group) .topic{width:100%}.topic-list:has(.topic-group) h3{display:block}}
.blackboard .math-keyboard .katex,.blackboard .math-input-preview .katex{color:#4c405c}.blackboard .tutor-chat textarea{color:#35313f}.blackboard .math-keyboard summary{color:#56447a}
.section-guide{background:#f4f6f1;border:1px solid #dce4d6;border-radius:13px;margin-bottom:18px;overflow:hidden}.section-guide summary{cursor:pointer;padding:17px 20px;font-size:13px;font-weight:600;color:#586d50}.section-guide>div{padding:0 22px 17px;font-size:13px;line-height:1.9}.section-guide .katex-display{font-size:16px}.guide-tip{background:#fff;border-radius:9px;padding:12px 15px;color:#6b655b}.math-key-tabs{overflow-x:auto}.math-key-tabs button{white-space:nowrap}
.problem-style{font-size:11px;color:#8b77a3;margin:10px 0 5px;letter-spacing:.03em}.question-styles,.course-styles{border:1px solid #e3ddec;background:#faf8fd;border-radius:12px;margin:0 0 18px;padding:0 17px}.question-styles>summary,.course-styles>summary{cursor:pointer;font-size:12px;font-weight:600;color:#725594;padding:14px 0}.question-styles>p{font-size:11px;color:#8d8198;line-height:1.7}.question-style-list{list-style:none;padding:0;margin:0 0 14px}.question-style-list li{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #ece6f2;padding:8px 2px;font-size:12px;line-height:1.5}.question-style-list small{font-size:9px;border-radius:5px;padding:3px 6px;align-self:center;white-space:nowrap}.level-foundational{color:#487564;background:#e5f0e9}.level-standard{color:#78669c;background:#eee9f5}.level-challenge{color:#a17b43;background:#f7eedf}.course-styles>details{border-top:1px solid #e9e3ef;padding:9px 0}.course-styles>details>summary{cursor:pointer;font-size:12px;color:#6f617f;line-height:1.7}.course-styles small{color:#9e90ae}
/* Persistent chalk lines: only new glyphs are revealed; earlier lines never animate again. */
.blackboard{background:radial-gradient(ellipse at 24% 20%,#ffffff04,transparent 65%),#253d39}.board-step{position:relative;animation:none;padding-bottom:24px}.board-step .chalk-equation{min-height:52px;position:relative;overflow-x:auto;padding-right:35px}.board-step .chalk-equation .katex-html{filter:drop-shadow(0 0 .35px #ffffdf90)}.board-step .chalk-equation .katex-html *{transition:opacity .09s linear}.board-step .board-caption{font-size:15px;font-weight:400;color:#e9eee5;border:0}.chalk-hand{position:absolute;width:76px;height:76px;pointer-events:none;z-index:3;filter:drop-shadow(2px 3px 2px #0003);transform:rotate(-8deg)}.chalk-hand[hidden]{display:none}.board-progress{font:11px/1.7 Manrope,sans-serif;color:#d4dfc8;min-height:20px;margin:12px 0 0;border-top:1px solid #ffffff18;padding-top:9px}.board-question{font:13px/1.7 Manrope,sans-serif!important;color:#e4d5fa;padding:10px 0!important}.tutor-transcript{margin-top:16px;font:12px/1.6 Manrope,sans-serif;color:#d3ded3}.tutor-transcript>summary{cursor:pointer;padding:10px 0}.distribution-diagram{position:relative;min-height:138px;padding-top:72px;padding-bottom:22px;overflow-x:auto}.distribution-expression{display:flex;align-items:baseline;gap:14px;width:max-content;padding:0 12px;white-space:nowrap;font-size:24px}.distribution-expression .katex{color:inherit}.distribution-parenthesis{font:32px Georgia}.distribution-arrows{position:absolute;left:0;top:0;overflow:visible;pointer-events:none}.distribution-diagram small{display:block;font:11px/1.7 Manrope,sans-serif;color:#cdd9c9;margin:12px 12px 0}.distribution-factor{border-bottom:2px dotted #f8d889}.board-step.is-writing{border-bottom:1px dashed #ffffff20}.board-step.ai-working{border-left-color:#cbb5f17a}.chalk{overflow:visible}.chalk-equation:empty{display:none}@media(prefers-reduced-motion:reduce){.chalk-hand{display:none}.board-step .chalk-equation .katex-html *{transition:none}}@media(max-width:600px){.chalk-hand{width:60px;height:60px}.distribution-expression{font-size:19px;gap:10px}.blackboard{padding:20px}.blackboard h3{gap:12px;flex-wrap:wrap}.board-step{gap:8px}}
.lecture-access{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:22px;padding:18px 20px;background:#f7f8f3;border:1px solid #dce3d6;border-radius:12px}.lecture-access>div{flex:1;min-width:180px}.lecture-access strong{font-size:13px;color:#435944}.lecture-access p{font-size:12px;color:#727b6d;margin:5px 0 0}.lecture-access a{text-decoration:none}.lecture-modal{width:min(1100px,96vw)}.lecture-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:16px}.lecture-heading p{font-size:12px;color:#82708e}.lecture-heading h2{font:600 20px Manrope,sans-serif}.lecture-heading a{white-space:nowrap;text-decoration:none}.lecture-slide{position:relative;background:#fafaf7;color:#263d38;min-height:410px;padding:35px 45px 60px;border:1px solid #e1e3dc}.lecture-slide h3{font:700 30px/1.3 Manrope,sans-serif;margin:0 0 30px}.lecture-slide>p{font:18px/1.7 Manrope,sans-serif}.lecture-equation{font-size:26px;margin-top:35px;overflow:auto}.lecture-slide footer{position:absolute;bottom:20px;font-size:11px;color:#7a7680}.lecture-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0}.lecture-controls span{font-size:12px;color:#82708e}.lecture-help,.presenter-notes{font-size:12px;line-height:1.7;color:#7d7585}.presenter-notes summary{cursor:pointer}.lecture-section-list>div{padding:16px 0;border-bottom:1px solid #eee9f2;display:flex;justify-content:space-between;align-items:center;gap:15px}.lecture-section-list strong{font-size:13px;font-weight:500}.lecture-section-list span{display:flex;gap:8px}.lecture-section-list a{text-decoration:none}@media(max-width:650px){.lecture-heading{display:block}.lecture-slide{padding:25px 20px 55px}.lecture-slide h3{font-size:23px}.lecture-slide>p{font-size:16px}.lecture-equation{font-size:21px}.lecture-section-list>div{align-items:start;flex-direction:column}.lecture-controls .btn{padding:10px}.lecture-access .btn{flex:1;justify-content:center}}

/* Geometric problem models are schematic, separate from optional function graphs. */
.model-figure{margin:12px auto;max-width:480px;width:100%;color:#334c44}.model-figure svg{display:block;width:100%;height:auto;max-height:330px;overflow:visible}.model-strokes{fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.model-strokes circle[r="3"]{fill:currentColor}.model-accent{stroke:#957334;stroke-width:4}.model-dashed{stroke-dasharray:6 6;opacity:.65}.model-wall{stroke-width:8;opacity:.5}.model-labels{fill:currentColor;font:15px system-ui,sans-serif}.model-figure figcaption{font:11px system-ui,sans-serif;text-align:center;opacity:.7}.blackboard .model-figure{color:#f4f4df}.blackboard .model-accent{stroke:#f8d889}.board-model{position:relative;border-bottom:1px solid #ffffff20;margin-bottom:20px;padding-bottom:10px}.equation:has(.model-figure){font-size:16px}

.builder-section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin:20px 0 12px}.builder-section-heading label{margin:0}.builder-section-heading label span{font-weight:400;color:#8b8196;font-size:11px;margin-left:10px}.builder-section-heading>div{display:flex;gap:8px}@media(max-width:600px){.builder-section-heading{align-items:flex-start}.builder-section-heading .btn{padding:8px 12px}}

.lecture-modal{width:min(1240px,97vw)}.lecture-slide-rich{min-height:550px;padding:30px 34px 58px}.lecture-slide-rich h3{font-size:28px;margin-bottom:24px;line-height:1.3}.lecture-slide-main>p{font:18px/1.75 Manrope,sans-serif}.lecture-slide-rich .lecture-equation{font-size:25px;margin-top:24px;overflow:auto}.lecture-slide-visual .lecture-slide-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:26px;align-items:start}.lecture-slide-visual .lecture-slide-main>p{font-size:17px}.lecture-slide-visual .lecture-equation{font-size:21px}.lecture-figure{margin:0;min-width:0}.lecture-figure svg{width:100%;height:auto;font:12px Manrope,sans-serif;fill:#75846e}.lecture-figure figcaption{font-size:11px;line-height:1.6;color:#7d8977;margin-top:3px}.lecture-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;margin-top:8px}.lecture-diagram .model-figure{max-width:530px}.lecture-jump{display:flex;align-items:center;gap:8px;font-size:11px;margin:0;min-width:0;flex:1;justify-content:center}.lecture-jump select{width:min(360px,100%);font-size:11px;border:1px solid #e1dbe9;border-radius:7px;padding:8px}.lecture-controls{gap:15px}.lecture-depth{display:block;font-size:10px;color:#8f8199;font-weight:400;margin-top:6px}@media(max-width:750px){.lecture-slide-visual .lecture-slide-content{grid-template-columns:1fr}.lecture-slide-rich{padding:24px 20px 58px}.lecture-slide-rich h3{font-size:23px}.lecture-slide-main>p{font-size:16px}.lecture-slide-rich .lecture-equation{font-size:21px}.lecture-jump select{max-width:185px}.lecture-jump{font-size:0}.lecture-controls .btn{font-size:10px;padding:9px}.lecture-figure{max-width:550px}}

/* Rich Calculus question evidence */
.calculus-question-figure{display:block;width:min(100%,550px);margin:18px auto;color:#46534f;font:13px Manrope,sans-serif}.question-data{overflow-x:auto;margin:18px 0}.question-data table{width:auto;min-width:260px;margin:auto;border-collapse:collapse;font-size:15px}.question-data caption{font-size:12px;color:var(--muted);padding:8px}.question-data th,.question-data td{padding:12px 20px;border:1px solid #ddd7e6;text-align:center}.question-data th{background:#f2eef8}.reasoning-choices{font:500 15px/1.7 Manrope,sans-serif;text-align:left;max-width:760px;margin:20px auto;padding-left:28px}.reasoning-choices li{padding:6px 0}.answer-format-help{font-size:12px;line-height:1.7;color:var(--muted)}.question-card h2{white-space:pre-line}.print-q .calculus-question-figure{max-height:230px}.print-q .question-data{break-inside:avoid}
/* Direct mathematical answer writing */
.visual-answer-form{display:flex!important;flex-wrap:wrap;align-items:center;gap:14px}.visual-answer-entry{flex:1 1 100%;min-width:0}.answer-part-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.answer-part label{display:block;font-size:13px!important;text-transform:none!important;letter-spacing:0!important;margin:0 0 9px!important;color:var(--ink)}math-field{display:block;box-sizing:border-box;min-height:76px;width:100%;font-size:26px;padding:14px 16px;border:2px solid #c5b8e2;border-radius:12px;background:white;--caret-color:#7252a2;--selection-background-color:#ebe3f5;--primary:#7252a2}math-field:focus-within{outline:3px solid #ece5f7;border-color:#8061b2}math-field[read-only]{background:#f5f5f4}.answer-math-toolbar{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.answer-math-toolbar button{min-width:45px;min-height:39px;padding:6px 12px;border:1px solid #dfd7e9;border-radius:8px;background:#f7f4fb;color:#493b63;font-size:17px;cursor:pointer}.answer-math-toolbar button:hover{background:#ece4f6}.visual-answer-note{font-size:12px;line-height:1.6;color:var(--muted);margin:10px 0 4px}.answer-text-toggle{background:none;border:0;padding:5px 0;color:#7252a2;font-size:12px;text-decoration:underline;cursor:pointer}.visual-answer-form>button{margin-left:auto}.answer-part-grid[hidden],.answer-single-field[hidden],.answer-math-toolbar[hidden]{display:none!important}
