@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&display=swap";:root{--ink:#e7edf6;--muted:#9babbe;--soft:#6f8197;--surface:#111c2d;--surface-2:#172439;--surface-3:#1d2b42;--line:#263950;--navy:#08111f;--teal:#5eead4;--coral:#ff7a59;--gold:#fbbf24;--violet:#a78bfa;--red:#f87171;--shadow:0 18px 45px #03081566}*{box-sizing:border-box}html{background:var(--navy);color:var(--ink);font-family:DM Sans,system-ui,sans-serif}body{margin:0;min-width:320px;background:radial-gradient(circle at 75% 0,#13264a 0,transparent 30%),var(--navy)}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}.app-shell{min-height:100vh;padding-left:244px}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 38px;background:#091423cc;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:sticky;z-index:10;top:0}.brand{display:flex;align-items:center;gap:10px;background:none;border:0;color:var(--ink);text-align:left}.brand-mark{color:var(--teal);font-size:33px;font-weight:700;line-height:1;transform:rotate(90deg)}.brand strong,.brand em{display:block;line-height:1.02}.brand strong{font-size:14px;letter-spacing:.025em}.brand em{font-style:normal;font-size:12px;color:var(--muted)}.topbar-meta{display:flex;gap:12px;align-items:center;color:var(--muted);font-size:13px}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 11px var(--teal)}.sidebar{width:244px;position:fixed;z-index:11;left:0;top:0;bottom:0;border-right:1px solid var(--line);padding:20px 14px;background:#08111ff0;display:flex;flex-direction:column}.sidebar nav{margin-top:70px;display:grid;gap:4px}.nav-item{border:0;background:none;color:var(--muted);padding:12px;border-radius:10px;display:flex;align-items:center;gap:12px;text-align:left;font-size:14px}.nav-item span{font-size:16px;color:#77899e;width:17px}.nav-item small{margin-left:auto;font-family:DM Mono;font-size:10px}.nav-item:hover,.nav-item.active{color:var(--ink);background:var(--surface-2)}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:16px 10px 5px}.sidebar-foot p{font-size:12px;line-height:1.55;color:var(--muted);margin:7px 0}.main-content{max-width:1480px;margin:0 auto;padding:48px 48px 80px}.eyebrow{font-family:DM Mono,monospace;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);display:block}.hero{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:42px;align-items:center;padding:20px 0 48px}.hero h1,.page-intro h1,.lesson-hero h1{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.04em;line-height:1.02;margin:12px 0 18px}.hero h1{font-size:clamp(42px,5.3vw,72px);max-width:780px}.hero h1 i{color:var(--teal);font-weight:500}.lede{font-size:18px;line-height:1.6;color:var(--muted);max-width:760px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.button{border:1px solid var(--teal);background:var(--teal);color:#052523;font-weight:700;padding:10px 15px;border-radius:8px;font-size:13px;transition:.15s transform,.15s background}.button:hover{transform:translateY(-1px);background:#94f5e5}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.button.ghost{background:transparent;color:var(--ink);border-color:#4c637d}.button.small{padding:7px 10px;font-size:12px}.text-button{padding:0;border:0;background:none;color:var(--teal);font-weight:600;text-align:left}.hero-orbit{width:315px;height:315px;margin:auto;position:relative;border:1px solid #3f5370;border-radius:50%;background:radial-gradient(circle,#152944 0,#0c1829 60%,transparent 61%)}.orbit{position:absolute;border:1px dashed #48607d;border-radius:50%;inset:25px}.orbit-b{inset:68px;border-color:#6a5e9e}.orbit-core{position:absolute;left:50%;top:50%;translate:-50% -50%;display:grid;place-items:center;width:88px;height:88px;border-radius:50%;background:var(--coral);color:#27110e;font-family:Fraunces;font-size:31px;box-shadow:0 0 0 11px #ff7a5914}.orbit-core sub{font-size:15px}.orbit-core span{font-family:DM Mono;font-size:9px;position:absolute;bottom:15px}.orbit-label{position:absolute;color:var(--muted);font-size:11px}.l1{top:27px;left:125px}.l2{bottom:50px;left:28px}.l3{bottom:43px;right:25px}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:36px}.stat{padding:19px 21px;border-right:1px solid var(--line);display:flex;gap:10px;align-items:baseline}.stat:last-child{border:0}.stat strong{font-family:Fraunces;font-size:28px;color:var(--teal)}.stat span{font-size:12px;color:var(--muted);line-height:1.25}.two-col{display:grid;grid-template-columns:1.08fr .92fr;gap:22px}.panel{border:1px solid var(--line);background:linear-gradient(130deg,#101c2d,#101a2a);border-radius:14px;padding:25px;box-shadow:0 8px 30px #03081520}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.section-head h2,.panel h2,.worked h2,.reading-section h2,.practice-section h2,.notes-section h2{font-family:Fraunces;margin:7px 0 0;letter-spacing:-.025em;font-size:25px}.section-head>a{font-size:12px;color:var(--teal)}.time-chip{font-family:DM Mono;font-size:11px;color:var(--gold);border:1px solid #765a18;padding:5px 7px;border-radius:5px}.session-list{list-style:none;padding:0;margin:21px 0}.session-list li{display:grid;grid-template-columns:68px 1fr;gap:13px;border-top:1px solid var(--line);padding:13px 0}.session-list time{font-family:DM Mono;font-size:10px;color:var(--teal);padding-top:3px}.session-list strong{font-size:13px}.session-list p,.quiet{font-size:13px;color:var(--muted);line-height:1.5;margin:4px 0}.evidence{padding-bottom:16px}.practice-list{margin-top:15px;display:grid}.practice-list a{display:flex;align-items:center;gap:10px;text-decoration:none;border-top:1px solid var(--line);padding:9px 0;font-size:12px}.practice-list a>span:last-child{margin-left:auto;color:var(--muted)}.practice-list strong,.practice-list small{display:block}.practice-list small{font-size:10px;color:var(--muted);margin-top:2px}.check{color:var(--teal);font-weight:700}.source-note{font-size:10px;color:var(--soft);line-height:1.45;margin:11px 0 0}.bridge{margin-top:22px;display:flex;gap:30px;justify-content:space-between;align-items:center}.bridge h2{font-size:25px}.bridge p{max-width:620px;color:var(--muted);line-height:1.55;font-size:14px}.bridge-steps{display:flex;align-items:center;gap:9px;flex-wrap:wrap;max-width:360px}.bridge-steps span{font-family:DM Mono;font-size:11px;border:1px solid #3d5672;padding:6px;border-radius:6px;color:#c6d4e4}.path-layout{display:grid;grid-template-columns:288px minmax(0,1fr);gap:44px;align-items:start}.lesson-rail{position:sticky;top:104px;max-height:calc(100vh - 130px);overflow:auto;padding-right:12px}.lesson-rail h2{font-family:Fraunces;line-height:1.1;letter-spacing:-.03em;margin:8px 0;font-size:29px}.lesson-rail>p{font-size:12px;line-height:1.55;color:var(--muted)}.lesson-list{display:grid;gap:2px;margin-top:19px}.lesson-link{color:var(--muted);border:0;border-left:1px solid var(--line);background:none;padding:9px 9px 9px 12px;text-align:left;display:flex;gap:9px;align-items:center}.lesson-link>span{width:18px;height:18px;border:1px solid #4a5c71;border-radius:50%;font-family:DM Mono;font-size:9px;display:grid;place-items:center;flex:none}.lesson-link strong,.lesson-link small{display:block}.lesson-link strong{font-size:12px;font-weight:600}.lesson-link small{font-size:10px;margin-top:3px}.lesson-link:hover,.lesson-link.current{color:var(--ink);border-left-color:var(--teal);background:#14243a}.lesson-content{max-width:900px}.lesson-hero{padding-bottom:30px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.lesson-hero h1{font-size:clamp(38px,4vw,59px)}.lesson-hero p{margin:0;color:var(--muted);font-size:17px;line-height:1.5}.lesson-actions{display:flex;gap:8px;align-items:flex-start;white-space:nowrap}.icon-button{border:1px solid #465b74;background:transparent;color:var(--gold);width:38px;height:38px;border-radius:8px;font-size:20px}.icon-button.saved{border-color:#9d8025}.claim-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0}.claim{border:1px solid var(--line);border-radius:10px;padding:13px;background:#0c1727}.claim>span{font-family:DM Mono;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.claim p{font-size:12px;line-height:1.5;margin:8px 0;color:#c2cfdb}.source-refs{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.source-refs a{font-family:DM Mono;font-size:9px;color:#7dd3fc}.reading-section{padding:28px 0}.lecture-block{margin:21px 0}.lecture-block h2{font-size:29px}.lecture-block p{font-size:15px;line-height:1.72;color:#cad5e1;margin:10px 0}.math-visual{padding:26px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:.92fr 1.08fr;gap:25px;align-items:stretch}.math-visual h2{font-family:Fraunces;margin:8px 0;font-size:28px}.equations{display:grid;gap:8px;margin-top:17px}.equations code{display:block;background:#0a1423;border:1px solid #20344d;padding:11px;border-radius:7px;color:#d9e8ff;font-family:DM Mono;font-size:11px;white-space:normal;line-height:1.5}.geometry-note{border-left:2px solid var(--gold);padding:5px 0 5px 13px;margin-top:18px}.geometry-note strong{font-size:11px;color:var(--gold);text-transform:uppercase;letter-spacing:.08em}.geometry-note p{font-size:12px;line-height:1.5;color:var(--muted);margin:5px 0}.worked{padding:28px 25px;margin:10px 0 27px;background:#12233a;border:1px solid #284364;border-radius:14px}.worked h2{margin:8px 0 10px}.setup{color:#c8d7e9;line-height:1.55}.worked ol{padding-left:22px}.worked li{font-size:13px;line-height:1.55;color:var(--muted);padding:4px}.conclusion{border-top:1px solid #2a4564;padding-top:14px;color:#ccd8e7;font-size:13px;line-height:1.5}.practice-section{padding:27px 0}.exercise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:15px}.exercise{border:1px solid var(--line);background:#0d1828;border-radius:10px;padding:14px;min-height:205px;display:flex;flex-direction:column}.exercise>span{font-family:DM Mono;color:var(--teal);font-size:9px;text-transform:uppercase;letter-spacing:.09em}.exercise>p{font-size:12px;line-height:1.5;color:#d1dae5;margin:9px 0}.reveal-row{display:flex;gap:6px;margin-top:auto}.reveal-row button,.confidence button{border:1px solid #425975;background:transparent;color:#a9bbce;border-radius:5px;padding:4px 7px;font-size:10px}.reveal-row button:hover,.confidence button:hover{border-color:var(--teal);color:var(--teal)}.hint{border-left:2px solid var(--gold);padding-left:8px;color:#dec889!important}.answer{border-left:2px solid var(--teal);padding-left:8px;color:#b9e7df!important}.confidence{display:flex;gap:3px;align-items:center;flex-wrap:wrap;margin-top:8px}.confidence span{font-size:10px;color:var(--muted);width:100%}.scheduled{margin-top:10px;color:var(--teal);font-size:10px}.coding-section{border-top:1px solid var(--line)}.variant{display:flex;justify-content:space-between;gap:20px;align-items:center}.variant h2{font-size:21px}.variant p{font-size:13px;line-height:1.5;color:var(--muted)}.variant-actions{min-width:210px}.variant label{font-size:10px;color:var(--muted);display:block;margin-bottom:8px}.variant input{display:block;background:#0a1423;color:var(--ink);border:1px solid #344c67;border-radius:5px;padding:5px;width:100%;margin-top:4px}.answer-control .answer{font-size:11px;margin-top:8px}.lesson-bottom{margin:24px 0}.misconceptions{padding-left:18px}.misconceptions li{font-size:12px;line-height:1.55;color:var(--muted);margin:8px 0}.quiz fieldset,.modal fieldset{padding:0;border:0;margin:16px 0}.quiz legend,.modal legend{font-size:12px;font-weight:600;line-height:1.4;margin-bottom:8px}.quiz fieldset label,.modal fieldset label{display:block;font-size:11px;color:var(--muted);padding:5px 6px;border-radius:5px}.quiz input,.modal input{margin-right:7px}.quiz label.correct{background:#0e3835;color:#b5ebe1}.quiz label.incorrect{background:#3c1d2a;color:#f8b8bb}.quiz-explain{font-size:11px;line-height:1.45;color:var(--muted);margin:7px 0}.score{font-size:12px;color:#c6d4e4;line-height:1.5}.oral{margin:25px 0}.oral>p{font-family:Fraunces;font-size:21px;line-height:1.35;max-width:680px}.oral details{font-size:12px;color:var(--muted);line-height:1.55}.oral summary{color:var(--teal);cursor:pointer}.notes-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:25px;padding:28px 0;border-top:1px solid var(--line)}.notes-section textarea{min-height:145px;resize:vertical;background:#0c1726;border:1px solid #2d4660;border-radius:9px;padding:12px;color:var(--ink);line-height:1.5;font-size:13px}.sources-section{padding:25px 0;border-top:1px solid var(--line)}.source-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:13px}.source-list a{display:block;text-decoration:none;background:#0c1727;border:1px solid var(--line);border-radius:8px;padding:11px}.source-list span,.source-list strong,.source-list small{display:block}.source-list span{color:var(--teal);font-family:DM Mono;font-size:8px;text-transform:uppercase}.source-list strong{font-size:12px;margin:5px 0}.source-list small{font-size:10px;color:var(--muted);line-height:1.4}.visual-lab{background:linear-gradient(145deg,#10243a,#0d192b);border:1px solid #29445f;border-radius:13px;padding:17px}.visual-lab.compact{padding:14px;min-height:100%;display:flex;flex-direction:column}.visual-lab-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-end}.visual-lab h3{font-family:Fraunces;margin:5px 0;font-size:22px}.select-label{font-size:9px;color:var(--muted);font-family:DM Mono;text-transform:uppercase}.select-label select{display:block;background:#0a1423;color:var(--ink);border:1px solid #38516e;border-radius:5px;padding:5px;margin-top:4px;max-width:200px}.scene-wrap{overflow:hidden;margin-top:10px;flex:1}.scene-wrap svg{width:100%;display:block;min-height:215px}.scene-wrap text{fill:#c4d3e4;font-family:DM Mono;font-size:11px}.grid{stroke:#233952;stroke-width:1}.axis{stroke:#637992;stroke-width:2}.dash{stroke:#9aafc5;stroke-width:2;stroke-dasharray:7 7}.connection{stroke:#6684a4;stroke-width:2}.visual-controls{display:flex;align-items:center;gap:15px;margin-top:3px}.visual-controls label{flex:1;font-size:10px;color:var(--muted)}.visual-controls label span{display:block;margin-bottom:3px}.visual-controls input{width:100%;accent-color:var(--teal)}.visual-caption{font-size:11px;line-height:1.45;color:var(--muted);margin:8px 0 0}.visual-lab.compact .visual-controls .button{display:none}.page-intro{max-width:850px;margin-bottom:29px}.page-intro h1{font-size:clamp(40px,5vw,66px)}.page-intro p{font-size:16px;line-height:1.65;color:var(--muted)}.graph-panel{border:1px solid var(--line);border-radius:14px;background:#0d1828;padding:16px;margin-bottom:21px;overflow:auto}.graph-legend{display:flex;gap:14px;flex-wrap:wrap;padding:2px 3px 13px}.legend{font-size:10px;color:var(--muted);display:flex;gap:5px;align-items:center}.legend i{width:8px;height:8px;border-radius:50%;background:#6f8197}.legend.practised i{background:var(--teal)}.legend.partial i{background:var(--gold)}.legend.next i{background:var(--coral)}.legend.locked i{background:var(--violet)}.curriculum-graph{height:720px;min-width:930px;position:relative;background:radial-gradient(circle at 50% 50%,#162b46,#0b1524 75%);overflow:hidden;border-radius:8px}.curriculum-graph>svg{position:absolute;width:100%;height:100%;overflow:visible}.curriculum-graph line{stroke:#3c5570;stroke-width:.28;stroke-dasharray:.9 .7}.topic-node{position:absolute;translate:-50% -50%;width:144px;min-height:49px;border-radius:7px;padding:7px;background:#14243a;border:1px solid #425b77;color:#d7e3ef;text-align:left;box-shadow:0 5px 13px #03081566}.topic-node b,.topic-node small{display:block}.topic-node b{font-size:11px}.topic-node small{font-size:8px;color:#8fa3bb;line-height:1.25;margin-top:3px}.topic-node.practised{border-color:#3a9e92}.topic-node.partial{border-color:#95751f}.topic-node.next{border-color:#ad5a4c}.topic-node.locked{border-color:#6958a0}.topic-node.selected{box-shadow:0 0 0 2px var(--teal),0 8px 20px #0008;z-index:3}.topic-detail{margin-bottom:20px}.topic-title h2{font-family:Fraunces;font-size:36px;margin:8px 0}.topic-title p{color:var(--muted);margin:0}.status-pill{font-family:DM Mono;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--teal)}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.topic-grid>div{border-top:1px solid var(--line);padding-top:9px}.topic-grid span{color:var(--teal);font-family:DM Mono;font-size:9px;text-transform:uppercase}.topic-grid p{font-size:12px;color:var(--muted);line-height:1.5;margin:6px 0}.source-map p{font-size:13px;color:var(--muted);line-height:1.6;max-width:850px}.studio-note{max-width:780px;margin-top:22px}.studio-note ol{padding-left:20px}.studio-note li{color:var(--muted);font-size:13px;line-height:1.7}.capstone-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.capstone-card{background:#101b2c;border:1px solid var(--line);border-radius:12px;padding:18px;min-height:190px;display:flex;flex-direction:column}.capstone-card>span{color:var(--violet);font-family:DM Mono;font-size:9px;text-transform:uppercase}.capstone-card h2{font-family:Fraunces;font-size:23px;letter-spacing:-.02em;margin:10px 0}.capstone-card p{font-size:12px;color:var(--muted);line-height:1.5}.capstone-card button{margin-top:auto;border:1px solid #3a4f69;background:transparent;border-radius:6px;padding:7px;color:#72869e;font-size:10px}.synthetic{display:grid;grid-template-columns:1fr 1fr;gap:28px}.synthetic h2{font-size:39px}.synthetic-map{display:grid;gap:9px}.synthetic-map div{display:flex;gap:10px;border-left:2px solid var(--coral);padding:4px 0 4px 11px}.synthetic-map b{font-size:12px;min-width:130px}.synthetic-map span{font-size:11px;color:var(--muted);line-height:1.4}.prereq-check{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px}.prereq-check h3{font-family:Fraunces;font-size:22px;margin:0 0 10px}.prereq-check>div{display:inline-flex;align-items:center;gap:5px;border:1px solid #344b64;border-radius:5px;padding:5px 7px;margin:4px;font-size:11px;color:var(--muted)}.prereq-check>div.ready{border-color:#358b82;color:#c2ebe4}.prereq-check i{font-style:normal;color:var(--teal)}.prereq-check .button{display:block;margin-top:13px}.research-warning{grid-column:1/-1;margin:0;background:#351d29;border-left:2px solid var(--coral);padding:12px;font-size:12px;line-height:1.5;color:#e4bbc2}.modal-backdrop{position:fixed;z-index:20;inset:0;background:#020711aa;display:grid;place-items:center;padding:20px}.modal{max-width:590px;width:100%;max-height:90vh;overflow:auto;background:#101d30;border:1px solid #405b79;border-radius:14px;padding:27px;position:relative;box-shadow:var(--shadow)}.modal h2{font-family:Fraunces;font-size:34px;letter-spacing:-.03em;margin:8px 0}.close{position:absolute;top:13px;right:15px;border:0;background:none;color:var(--muted);font-size:26px}.modal fieldset{border-top:1px solid var(--line);padding-top:13px}.modal fieldset label{font-size:12px}@media(max-width:1080px){.app-shell{padding-left:0}.sidebar{position:sticky;top:72px;width:100%;height:auto;min-height:0;padding:7px 16px;border-right:0;border-bottom:1px solid var(--line);flex-direction:row;overflow:auto}.sidebar nav{margin:0;display:flex;gap:3px}.sidebar-foot{display:none}.nav-item{white-space:nowrap;padding:8px}.topbar{padding:0 20px}.main-content{padding:32px 24px}.path-layout{grid-template-columns:1fr}.lesson-rail{position:static;max-height:none;overflow:visible}.lesson-list{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.hero-orbit{display:none}}@media(max-width:720px){.topbar-meta{font-size:0}.topbar-meta .status-dot{display:none}.main-content{padding:25px 16px 55px}.hero{padding-top:0}.hero h1{font-size:43px}.lede{font-size:15px}.stat-row{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}.two-col,.math-visual,.notes-section,.synthetic{grid-template-columns:1fr}.bridge{display:block}.bridge-steps{margin-top:18px}.claim-grid,.exercise-grid,.source-list,.topic-grid,.capstone-grid{grid-template-columns:1fr}.lesson-rail h2{font-size:25px}.lesson-list{grid-template-columns:1fr}.lesson-hero{display:block}.lesson-actions{margin-top:15px}.math-visual{gap:14px}.variant{display:block}.variant-actions{margin-top:14px;min-width:0}.topic-grid{gap:4px}.topic-title h2{font-size:30px}.capstone-grid{gap:9px}.synthetic h2{font-size:32px}.topbar{height:62px}.sidebar{top:62px}.sidebar nav .nav-item{font-size:11px}.sidebar nav .nav-item small{display:none}.sidebar nav .nav-item span{display:none}.page-intro h1{font-size:40px}}.hero{grid-template-columns:minmax(0,.92fr) minmax(350px,1.08fr)}.story-question{border-left:2px solid var(--coral);padding:7px 0 7px 12px;margin-top:26px;max-width:430px}.story-question span,.walkthrough-question span{display:block;font-family:DM Mono;font-size:9px;color:var(--coral);text-transform:uppercase;letter-spacing:.09em}.story-question strong{display:block;margin-top:5px;font-family:Fraunces;font-size:18px;line-height:1.25}.hero-image{position:relative;margin:0;border:1px solid #28425d;border-radius:15px;overflow:hidden;background:#08111f;box-shadow:var(--shadow);min-height:340px}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#07112155,transparent 48%,#07112120);pointer-events:none}.hero-image img{display:block;width:100%;height:100%;min-height:340px;object-fit:cover}.hero-image figcaption{position:absolute;z-index:1;bottom:16px;left:18px;right:18px;display:flex;gap:8px;align-items:center;font-family:DM Mono;font-size:10px;color:#d6eef0;letter-spacing:.04em}.hero-image figcaption b{color:var(--coral)}.resource-shelf{margin-top:27px;padding-top:27px;border-top:1px solid var(--line)}.resource-head{display:flex;justify-content:space-between;gap:25px;align-items:flex-end}.resource-head h2{font-family:Fraunces;font-size:29px;letter-spacing:-.03em;margin:7px 0 0}.resource-head>p{margin:0;max-width:410px;font-size:12px;line-height:1.55;color:var(--muted)}.resource-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.resource-card{display:flex;flex-direction:column;min-height:220px;text-decoration:none;border:1px solid #2d4662;border-radius:11px;background:linear-gradient(145deg,#0e1a2b,#101d30);padding:15px;transition:transform .15s,border-color .15s,background .15s}.resource-card:hover{transform:translateY(-2px);border-color:var(--teal);background:#13243a}.resource-meta{display:flex;justify-content:space-between;gap:8px;font-family:DM Mono;font-size:8px;color:var(--teal);letter-spacing:.06em;text-transform:uppercase}.resource-meta small{color:var(--gold);font-size:8px;text-transform:none;letter-spacing:0}.resource-card h3{font-family:Fraunces;font-size:20px;line-height:1.15;letter-spacing:-.02em;margin:12px 0 2px}.resource-card .provider{font-size:10px;color:#8fb1c8;margin:0}.resource-card>p:not(.provider){font-size:11px;line-height:1.48;color:var(--muted);margin:10px 0}.resource-action{margin-top:auto;border-top:1px solid #28425d;padding-top:9px}.resource-action strong,.resource-action span{display:block}.resource-action strong{font-family:DM Mono;font-size:8px;color:var(--coral);text-transform:uppercase;letter-spacing:.07em}.resource-action span{font-size:10px;line-height:1.4;color:#c5d3e1;margin-top:3px}.resource-open{font-size:10px;color:var(--teal);margin-top:10px}.walkthrough{border:1px solid #294662;border-radius:15px;padding:25px;margin:4px 0 28px;background:linear-gradient(135deg,#11263b,#0c1829);overflow:hidden}.walkthrough-intro{max-width:760px}.walkthrough h2{font-family:Fraunces;font-size:31px;letter-spacing:-.03em;margin:8px 0}.walkthrough-intro>p{font-size:14px;line-height:1.6;color:#c0cfdd}.walkthrough-question{border-left:2px solid var(--teal);padding:6px 0 6px 12px;margin-top:17px}.walkthrough-question span{color:var(--teal)}.walkthrough-question strong{display:block;font-family:Fraunces;font-size:19px;line-height:1.3;margin-top:4px}.walkthrough-steps{padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;list-style:none}.walkthrough-steps li{display:flex;gap:10px;background:#0b1728;border:1px solid #203b57;padding:12px;border-radius:9px}.walkthrough-steps li>span{font-family:DM Mono;font-size:11px;color:var(--gold);padding-top:2px}.walkthrough-steps strong{font-size:12px;color:#dce8f4}.walkthrough-steps p{font-size:11px;line-height:1.5;color:var(--muted);margin:5px 0 0}.walkthrough-foot{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #2a4661}.walkthrough-foot>div{padding:14px 16px 0 0}.walkthrough-foot>div+div{padding-left:16px;border-left:1px solid #2a4661}.walkthrough-foot span{font-family:DM Mono;font-size:9px;color:var(--teal);text-transform:uppercase;letter-spacing:.07em}.walkthrough-foot p{font-size:11px;line-height:1.5;color:#c3d2df;margin:5px 0}.walkthrough-image{margin:22px 0 0;border:1px solid #30506d;border-radius:10px;overflow:hidden}.walkthrough-image img{display:block;width:100%;max-height:310px;object-fit:cover}.walkthrough-image figcaption,.synthetic-image figcaption{padding:7px 10px;background:#0a1423;color:var(--muted);font-size:9px;line-height:1.4}.synthetic-intro{align-self:center}.synthetic-image{margin:0;border:1px solid #30506d;border-radius:11px;overflow:hidden;align-self:start}.synthetic-image img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}@media(max-width:1080px){.hero{grid-template-columns:1fr}.hero-image{max-width:760px}.resource-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.hero-image,.hero-image img{min-height:225px}.resource-head,.walkthrough-foot{display:block}.resource-head>p{margin-top:9px}.resource-grid,.walkthrough-steps{grid-template-columns:1fr}.walkthrough{padding:18px}.walkthrough h2{font-size:26px}.walkthrough-foot>div+div{padding-left:0;border-left:0;border-top:1px solid #2a4661;margin-top:11px}.hero-image figcaption{font-size:8px;gap:5px}.synthetic-image{grid-row:2}}:root{--ink:#172033;--muted:#53627a;--soft:#718099;--surface:#ffffff;--surface-2:#f7f9fc;--surface-3:#eef3f8;--line:#d7e0eb;--navy:#f3f6fa;--teal:#087f78;--coral:#c54d32;--gold:#9a6500;--violet:#6046b4;--red:#b42318;--shadow:0 14px 34px rgba(31,52,80,.1) }html{background:var(--navy);color:var(--ink)}body{background:linear-gradient(180deg,#f8fafc,#f1f5f9);color:var(--ink);line-height:1.5}button,input,textarea,select{color:var(--ink)}a{color:var(--teal)}.topbar{background:#fffffff0;border-color:var(--line);box-shadow:0 1px #1720330a}.brand{color:var(--ink)}.brand-mark{color:var(--teal)}.brand em,.topbar-meta{color:var(--muted)}.status-dot{background:#1d9b78;box-shadow:0 0 0 4px #1d9b781f}.sidebar{background:#fffffffa;border-color:var(--line);box-shadow:8px 0 24px #1f34500a}.nav-item{color:var(--muted)}.nav-item span{color:#8794a8}.nav-item:hover,.nav-item.active{color:var(--ink);background:#eaf6f4}.nav-item.active span{color:var(--teal)}.sidebar-foot{border-color:var(--line)}.sidebar-foot p,.quiet{color:var(--muted)}.main-content{padding-top:54px}.eyebrow{color:var(--teal);font-weight:700}.hero h1,.page-intro h1,.lesson-hero h1{color:#152238}.hero h1 i{color:var(--coral)}.lede,.page-intro p,.hero p{color:var(--muted)}.button{background:var(--teal);border-color:var(--teal);color:#fff;box-shadow:0 5px 12px #087f782e}.button:hover{background:#076b65;border-color:#076b65}.button.ghost{color:var(--teal);background:#fff;border-color:#9bcac5;box-shadow:none}.text-button{color:var(--teal)}.hero-orbit{border-color:#bdd1df;background:radial-gradient(circle,#e3f1f0 0,#f7fbfc 60%,transparent 61%)}.orbit{border-color:#a8c4d2}.orbit-b{border-color:#c9bdea}.orbit-label{color:var(--muted)}.orbit-core{background:var(--coral);color:#fff;box-shadow:0 0 0 11px #c54d321f}.stat-row,.stat{border-color:var(--line)}.stat strong{color:var(--teal)}.stat span{color:var(--muted)}.panel{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow)}.section-head h2,.panel h2,.worked h2,.reading-section h2,.practice-section h2,.notes-section h2{color:#1c2b43}.section-head>a{color:var(--teal)}.time-chip{color:var(--gold);border-color:#dcbf80;background:#fffaf0}.session-list li,.practice-list a{border-color:var(--line)}.session-list time,.check{color:var(--teal)}.session-list p,.practice-list small,.source-note{color:var(--muted)}.bridge{background:#eef8f6}.bridge p{color:var(--muted)}.bridge-steps span{border-color:#b8d1d0;color:#31545a;background:#fff}.bridge-steps b{color:var(--coral)}.lesson-rail h2,.lesson-hero h1,.lecture-block h2,.math-visual h2,.topic-title h2,.capstone-card h2,.synthetic h2,.oral>p{color:#1c2b43}.lesson-rail>p,.lesson-hero p,.lecture-block p,.topic-title p,.topic-grid p,.source-map p,.studio-note li,.capstone-card p,.synthetic-map span,.misconceptions li{color:var(--muted)}.lesson-link{color:var(--muted);border-color:var(--line)}.lesson-link>span{border-color:#afbdce}.lesson-link:hover,.lesson-link.current{color:var(--ink);background:#eaf6f4;border-left-color:var(--teal)}.lesson-link.current>span{border-color:var(--teal);color:var(--teal)}.lesson-hero,.coding-section,.notes-section,.sources-section{border-color:var(--line)}.icon-button{border-color:#b8c7d8;background:#fff;color:var(--gold)}.icon-button.saved{border-color:#cfad66;background:#fffaf0}.claim{background:#f8fafc;border-color:var(--line)}.claim p{color:var(--muted)}.claim.fact{background:#effaf7}.claim.intuition{background:#fffaf0}.claim.simplification{background:#f6f3ff}.claim.paper-claim{background:#fff5f1}.claim.open-question{background:#fff4f3}.claim.fact>span{color:var(--teal)}.claim.intuition>span{color:var(--gold)}.claim.simplification>span{color:var(--violet)}.claim.paper-claim>span{color:var(--coral)}.claim.open-question>span{color:var(--red)}.source-refs a{color:#1769aa}.equations code{background:#f1f5f9;border-color:#cbd8e6;color:#253752}.geometry-note{border-color:var(--gold)}.geometry-note strong{color:var(--gold)}.geometry-note p{color:var(--muted)}.worked{background:#eef8f6;border-color:#b9dbd7}.setup,.worked li,.conclusion{color:var(--muted)}.conclusion{border-color:#c7dfdc}.conclusion strong{color:var(--teal)}.exercise{background:#fff;border-color:var(--line);box-shadow:0 6px 18px #1f34500f}.exercise>p{color:var(--muted)}.reveal-row button,.confidence button{border-color:#b9c7d7;color:var(--muted);background:#fff}.reveal-row button:hover,.confidence button:hover{border-color:var(--teal);color:var(--teal);background:#effaf7}.hint{color:#765000!important;border-color:var(--gold)}.answer{color:#086b65!important;border-color:var(--teal)}.scheduled{color:var(--teal)}.variant input,.notes-section textarea{background:#fff;color:var(--ink);border-color:#b9c7d7}.variant p,.quiz label,.modal fieldset label{color:var(--muted)}.quiz label.correct{background:#e3f5ef;color:#14634f}.quiz label.incorrect{background:#fff0ef;color:#a62f26}.quiz-explain,.score{color:var(--muted)}.oral details{color:var(--muted)}.oral summary{color:var(--teal)}.source-list a{background:#fff;border-color:var(--line)}.source-list span{color:var(--teal)}.source-list small{color:var(--muted)}.visual-lab{background:#f8fbfd;border-color:#c5d6e2;box-shadow:var(--shadow)}.visual-lab h3{color:#1c2b43}.select-label{color:var(--muted)}.select-label select{background:#fff;color:var(--ink);border-color:#b9c7d7}.scene-wrap svg{background:#fff;border:1px solid #dbe5ee;border-radius:9px}.scene-wrap text{fill:#31445c}.grid{stroke:#d8e3ed}.axis{stroke:#7c8da1}.dash{stroke:#91a3b7}.connection{stroke:#8aa0b4}.visual-controls label,.visual-caption{color:var(--muted)}.graph-panel{background:#fff;border-color:var(--line);box-shadow:var(--shadow)}.legend{color:var(--muted)}.curriculum-graph{background:radial-gradient(circle at 50% 50%,#e6f5f3,#f5f8fb 72%)}.curriculum-graph line{stroke:#b8c8d7}.topic-node{background:#fff;border-color:#b8c7d7;color:var(--ink);box-shadow:0 5px 13px #1f34501a}.topic-node small{color:var(--muted)}.topic-node.practised{border-color:#60b5a5}.topic-node.partial{border-color:#d3ad52}.topic-node.next{border-color:#d98770}.topic-node.locked{border-color:#a695d5}.topic-node.selected{box-shadow:0 0 0 2px var(--teal),0 8px 20px #1f34502b}.status-pill{color:var(--teal)}.status-pill.partial{color:var(--gold)}.status-pill.next{color:var(--coral)}.status-pill.locked{color:var(--violet)}.capstone-card{background:#fff;border-color:var(--line);box-shadow:var(--shadow)}.capstone-card>span{color:var(--violet)}.capstone-card button{border-color:#c2cedc;color:#718099;background:#f7f9fc}.synthetic-map div{border-color:var(--coral)}.prereq-check{border-color:var(--line)}.prereq-check>div{border-color:#c2cedc;color:var(--muted);background:#fff}.prereq-check>div.ready{border-color:#8bcabb;color:#17634f;background:#effaf7}.prereq-check i{color:var(--teal)}.research-warning{background:#fff3ef;border-color:var(--coral);color:#8e3527}.modal-backdrop{background:#1c2b435c}.modal{background:#fff;border-color:#b9c7d7;box-shadow:0 24px 70px #1f345038}.close{color:var(--muted)}.hero-image,.walkthrough-image,.synthetic-image{background:#eaf1f5;border-color:#c7d7e1;box-shadow:var(--shadow)}.hero-image:after{background:linear-gradient(90deg,rgba(8,30,48,.22),transparent 48%,rgba(8,30,48,.05))}.hero-image figcaption{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.45)}.resource-shelf{border-color:var(--line)}.resource-head>p{color:var(--muted)}.resource-card{background:#fff;border-color:var(--line);box-shadow:0 6px 18px #1f34500f}.resource-card:hover{border-color:#71bcb5;background:#f5fbfa}.resource-card .provider,.resource-card>p:not(.provider){color:var(--muted)}.resource-action{border-color:var(--line)}.resource-action strong{color:var(--coral)}.resource-action span{color:var(--muted)}.resource-open{color:var(--teal)}.walkthrough{background:#f8fbfd;border-color:#c7d7e1;box-shadow:var(--shadow)}.walkthrough-intro>p,.walkthrough-steps p,.walkthrough-foot p{color:var(--muted)}.walkthrough-question{border-color:var(--teal)}.walkthrough-steps li{background:#fff;border-color:var(--line);box-shadow:0 4px 12px #1f34500d}.walkthrough-steps strong{color:var(--ink)}.walkthrough-steps li>span{color:var(--gold)}.walkthrough-foot{border-color:var(--line)}.walkthrough-foot>div+div{border-color:var(--line)}.walkthrough-foot span{color:var(--teal)}.walkthrough-image figcaption,.synthetic-image figcaption{background:#f1f5f9;color:var(--muted)}@media(max-width:720px){.main-content{padding-top:31px}.topbar{box-shadow:0 1px 7px #1f345014}.sidebar{box-shadow:0 2px 10px #1f34500d}.stat{padding:15px 13px}.stat strong{font-size:24px}.panel{padding:20px}.hero h1{font-size:clamp(38px,12vw,50px)}.lede,.lesson-hero p{font-size:16px}.lecture-block p{font-size:16px;line-height:1.68}.topic-node{width:138px}.scene-wrap svg{min-height:190px}}
