:root{--paper:#f6f1e7;--paper-deep:#ece3d3;--card:#fffdf8;--ink:#17324d;--ink-soft:#48647a;--line:#17324d;--coral:#e65336;--coral-soft:#ffe3db;--gold:#e4a623;--gold-soft:#fff0bf;--mint:#3aae8f;--mint-soft:#d9f2e8;--sky:#3d94ba;--sky-soft:#dcedf5;--violet:#745bb8;--violet-soft:#e9e2f8;--danger:#b43b32;--success:#17785f;--shadow:6px 6px 0 var(--ink);--shadow-small:3px 3px 0 var(--ink);--radius:18px;--font-sans:"Avenir Next", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-mono:"SFMono-Regular", "Cascadia Mono", Consolas, monospace;color:var(--ink);background:var(--paper);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:radial-gradient(circle at 10% 5%, #e6533614, transparent 24rem), radial-gradient(circle at 88% 34%, #3d94ba17, transparent 27rem), var(--paper);min-width:320px;min-height:100vh;margin:0}body,button,input,select,textarea{font-family:var(--font-sans)}button,input,select,textarea{font-size:1rem}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img,svg{max-width:100%}h1,h2,h3,p,blockquote{margin-top:0}h1,h2,h3,strong{text-wrap:balance}p{color:var(--ink-soft);line-height:1.72}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}::selection{color:var(--ink);background:var(--gold-soft)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;color:#fff;background:var(--ink);padding:10px 14px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-shell{flex-direction:column;min-height:100vh;display:flex}#main-content{flex:1}.section-shell{width:min(1180px,100% - 40px);margin-inline:auto}.site-header{z-index:100;border-bottom:3px solid var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8f2;position:sticky;top:0}.header-inner{grid-template-columns:auto 1fr auto;align-items:center;gap:30px;width:min(1180px,100% - 40px);min-height:76px;margin-inline:auto;display:grid}.brand{align-items:center;gap:11px;display:inline-flex}.brand-mark{color:#fff;background:var(--coral);border:3px solid var(--ink);width:42px;height:42px;box-shadow:3px 3px 0 var(--ink);border-radius:12px;place-items:center;display:grid;transform:rotate(-2deg)}.brand>span:last-child{flex-direction:column;line-height:1.05;display:flex}.brand strong{letter-spacing:.04em;font-size:1.12rem;font-weight:900}.brand small{color:var(--ink-soft);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;margin-top:4px;font-size:.58rem}.desktop-nav{justify-self:center;align-items:center;gap:4px;display:flex}.desktop-nav a{color:var(--ink-soft);border-radius:9px;align-items:center;gap:6px;padding:9px 11px;font-size:.88rem;font-weight:800;display:inline-flex}.desktop-nav a:hover,.desktop-nav a.active{color:var(--ink);background:var(--gold-soft)}.header-progress{align-items:center;gap:9px;display:flex}.progress-ring{--progress:0deg;border:2px solid var(--ink);background:conic-gradient(var(--mint) var(--progress), var(--paper-deep) 0);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.progress-ring:before{content:"";background:var(--card);border-radius:50%;grid-area:1/1;width:30px;height:30px}.progress-ring span{z-index:1;font-family:var(--font-mono);grid-area:1/1;font-size:.65rem;font-weight:500}.progress-label{flex-direction:column;line-height:1.15;display:flex}.progress-label small{color:var(--ink-soft);font-size:.66rem}.progress-label strong{margin-top:3px;font-size:.79rem;font-weight:900}.mobile-nav{display:none}.site-footer{border-top:3px solid var(--ink);grid-template-columns:1fr auto;align-items:start;gap:20px 40px;width:min(1180px,100% - 40px);margin:90px auto 0;padding:34px 0 42px;display:grid}.footer-brand{font-size:1.1rem;font-weight:900}.site-footer p{margin:5px 0 0;font-size:.86rem}.footer-links{gap:22px;font-size:.84rem;font-weight:800;display:flex}.footer-links a:hover{color:var(--coral)}.footer-note{font-family:var(--font-mono);border-top:1px dashed #17324d59;grid-column:1/-1;padding-top:16px;font-size:.69rem!important}.eyebrow{color:var(--coral);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:11px;font-size:.72rem;font-weight:500;line-height:1.45}.button{border:2px solid var(--ink);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 17px;font-weight:900;line-height:1.2;transition:transform .12s,box-shadow .12s;display:inline-flex}.button:hover:not(:disabled){box-shadow:var(--shadow-small);transform:translate(-1px,-1px)}.button:active:not(:disabled){box-shadow:none;transform:translate(1px,1px)}.button:disabled{cursor:not-allowed;opacity:.45}.button-primary{color:#fff;background:var(--coral)}.button-quiet{color:var(--ink);background:var(--card)}.button-ink{color:#fff;background:var(--ink)}.bar-wrap{min-width:0}.bar-track{background:var(--paper-deep);border:2px solid var(--ink);border-radius:999px;width:100%;height:9px;overflow:hidden}.bar-track span{background:var(--mint);border-right:2px solid var(--ink);height:100%;transition:width .3s;display:block}.bar-wrap small{color:var(--ink-soft);margin-top:7px;font-size:.72rem;font-weight:700;display:block}.hero{grid-template-columns:minmax(0,1.02fr) minmax(440px,.98fr);align-items:center;gap:62px;min-height:670px;padding-block:78px 70px;display:grid}.hero-copy{min-width:0}.live-dot{background:var(--mint);border:1px solid var(--ink);border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.hero h1{letter-spacing:-.065em;margin-bottom:24px;font-size:clamp(2.9rem,5.7vw,5.1rem);font-weight:900;line-height:.98}.hero h1 em{color:var(--coral);font-style:normal;position:relative}.hero h1 em:after{content:"";background:var(--gold);border-radius:99px;height:5px;position:absolute;bottom:-7px;left:0;right:0;transform:rotate(-1deg)}.hero-lead{max-width:620px;margin-bottom:28px;font-size:1.08rem}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-progress-card{background:#fffdf8b8;border:2px dashed #17324d8c;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:18px;max-width:510px;margin-top:32px;padding:15px 18px;display:grid}.hero-progress-card>div:first-child{flex-direction:column;display:flex}.hero-progress-card strong{font-family:var(--font-mono);font-size:1.4rem}.hero-progress-card span{color:var(--ink-soft);font-size:.69rem}.field-map{background:var(--card);border:3px solid var(--ink);min-width:0;box-shadow:9px 9px 0 var(--ink);border-radius:20px;padding:23px;position:relative;transform:rotate(.7deg)}.field-map:before{content:"";pointer-events:none;border:1px dashed #17324d47;border-radius:12px;position:absolute;inset:11px}.field-map-top{border-bottom:2px solid var(--ink);font-family:var(--font-mono);justify-content:space-between;padding-bottom:14px;font-size:.63rem;display:flex;position:relative}.map-grid{z-index:1;grid-template-columns:1fr 34px 1fr;align-items:center;gap:12px 6px;padding:28px 0 20px;display:grid;position:relative}.map-node{border:2px solid var(--ink);border-radius:14px;flex-direction:column;justify-content:center;min-height:125px;padding:16px;display:flex}.map-node svg{margin-bottom:9px}.map-node small{font-family:var(--font-mono);font-size:.58rem}.map-node strong{margin:3px 0;font-size:1.04rem}.map-node span{color:var(--ink-soft);font-size:.72rem}.node-observed{background:var(--sky-soft)}.node-model{background:var(--gold-soft)}.node-test{background:var(--violet-soft)}.node-action{background:var(--mint-soft)}.node-test{grid-area:2/3}.node-action{grid-area:2/1}.map-arrow{justify-self:center}.arrow-two{grid-area:2/2;transform:rotate(180deg)}.arrow-three{position:absolute;bottom:-3px;right:49%;transform:rotate(90deg)}.field-map blockquote{z-index:1;margin:6px 0 0;padding:16px 82px 5px 5px;font-size:.89rem;font-weight:800;line-height:1.55;position:relative}.stamp{width:63px;height:63px;color:var(--coral);border:3px double var(--coral);font-family:var(--font-mono);text-align:center;border-radius:50%;place-items:center;font-size:.65rem;font-weight:500;display:grid;position:absolute;bottom:23px;right:26px;transform:rotate(-9deg)}.principles-band{color:#fff;background:var(--ink);border-block:3px solid var(--ink)}.principles-grid{grid-template-columns:repeat(4,1fr);display:grid}.principles-grid>div{border-right:1px dashed #ffffff4d;align-items:center;gap:13px;min-height:118px;padding:22px;display:flex}.principles-grid>div:last-child{border-right:0}.principles-grid svg{color:var(--gold);flex:none}.principles-grid span{color:#ffffffb8;font-size:.78rem;line-height:1.5}.principles-grid strong{color:#fff;margin-bottom:2px;font-size:.91rem;display:block}.map-section{padding-top:100px}.section-heading{grid-template-columns:minmax(300px,.8fr) 1fr;align-items:end;gap:50px;margin-bottom:38px;display:grid}.section-heading h2{letter-spacing:-.045em;margin-bottom:0;font-size:clamp(2rem,4vw,3.3rem);font-weight:900;line-height:1.08}.section-heading>p{margin-bottom:3px}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;display:grid}.module-card{background:var(--card);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;scroll-margin-top:110px;position:relative;overflow:hidden}.module-card:before{content:"";background:var(--tone);border-bottom:2px solid var(--ink);height:9px;position:absolute;top:0;left:0;right:0}.tone-coral{--tone:var(--coral);--tone-soft:var(--coral-soft)}.tone-gold{--tone:var(--gold);--tone-soft:var(--gold-soft)}.tone-mint{--tone:var(--mint);--tone-soft:var(--mint-soft)}.tone-sky{--tone:var(--sky);--tone-soft:var(--sky-soft)}.tone-violet{--tone:var(--violet);--tone-soft:var(--violet-soft)}.module-card-head{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:8px;display:grid}.module-number,.catalog-order,.mini-module{color:var(--ink);background:var(--tone-soft);border:2px solid var(--ink);font-family:var(--font-mono);border-radius:11px;place-items:center;font-weight:500;display:grid}.module-number{width:49px;height:49px;font-size:.9rem}.module-card .eyebrow{color:var(--ink-soft);margin-bottom:3px;font-size:.6rem}.module-card h3{margin:0;font-size:1.28rem;font-weight:900}.module-percent{font-family:var(--font-mono);font-size:.7rem}.module-description{min-height:52px;margin:18px 0 13px;font-size:.88rem}.skill-chip{color:var(--ink);background:var(--tone-soft);border:1px solid var(--ink);border-radius:999px;margin-bottom:18px;padding:5px 9px;font-size:.7rem;font-weight:800;display:inline-flex}.module-lessons{gap:7px;margin-top:17px;display:grid}.lesson-row{border:1px solid #0000;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;min-width:0;padding:10px;display:grid}.lesson-row:hover{background:var(--tone-soft);border-color:var(--ink)}.lesson-state{background:var(--paper);border:1px solid var(--ink);width:28px;height:28px;font-family:var(--font-mono);border-radius:50%;place-items:center;font-size:.62rem;display:grid}.lesson-row.completed .lesson-state{color:#fff;background:var(--mint)}.lesson-row-copy{flex-direction:column;min-width:0;display:flex}.lesson-row-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.lesson-row-copy small{color:var(--ink-soft);align-items:center;gap:4px;margin-top:3px;font-size:.65rem;display:flex}.module-practice{background:var(--paper);border-top:1px dashed #17324d73;margin:17px -24px -24px;padding:13px 24px;font-size:.72rem}.module-practice strong{color:var(--coral);margin-right:9px}.capstone-banner{color:#fff;background:var(--ink);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:8px 8px 0 var(--coral);grid-template-columns:auto 1fr auto;align-items:center;gap:22px;margin-top:75px;padding:28px;display:grid}.capstone-banner .eyebrow{color:var(--gold);margin-bottom:4px}.capstone-banner h2{margin-bottom:6px;font-size:1.45rem}.capstone-banner p{color:#ffffffb3;margin-bottom:0;font-size:.82rem}.capstone-icon{width:58px;height:58px;color:var(--ink);background:var(--gold);border:2px solid #fff;border-radius:14px;place-items:center;display:grid;transform:rotate(-3deg)}.page-stack{padding-top:72px}.page-intro{border-bottom:3px solid var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:45px;margin-bottom:44px;padding-bottom:38px;display:grid}.page-intro h1{letter-spacing:-.06em;max-width:850px;margin-bottom:16px;font-size:clamp(2.4rem,5vw,4.6rem);font-weight:900;line-height:1.02}.page-intro>div:first-child>p:last-child{max-width:760px;margin-bottom:0;font-size:1rem}.page-intro-aside{padding-bottom:4px}.stat-card,.progress-hero-number{background:var(--gold-soft);border:2px solid var(--ink);min-width:135px;box-shadow:var(--shadow-small);text-align:center;border-radius:14px;flex-direction:column;padding:16px 20px;display:flex;transform:rotate(1deg)}.stat-card strong,.progress-hero-number strong{font-family:var(--font-mono);font-size:2rem}.stat-card span,.progress-hero-number span{color:var(--ink-soft);font-size:.72rem;font-weight:800}.catalog-controls{grid-template-columns:1fr 250px;gap:12px;display:grid}.search-field,.select-field{background:var(--card);border:2px solid var(--ink);border-radius:12px;align-items:center;gap:10px;min-height:50px;padding:0 15px;display:flex}.search-field input,.select-field select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-weight:700}.select-field select{cursor:pointer}.catalog-count{color:var(--ink-soft);font-family:var(--font-mono);margin:20px 0 10px;font-size:.72rem}.catalog-list{background:var(--card);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.catalog-item{border-bottom:1px dashed #17324d59;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;min-height:94px;padding:15px 20px;display:grid}.catalog-item:last-child{border-bottom:0}.catalog-item:hover{background:var(--gold-soft)}.catalog-order{width:48px;height:48px;font-size:.78rem}.catalog-item.completed .catalog-order{color:#fff;background:var(--mint)}.catalog-copy{flex-direction:column;min-width:0;display:flex}.catalog-copy small{color:var(--coral);font-family:var(--font-mono);font-size:.62rem}.catalog-copy strong{margin:3px 0 2px;font-size:1rem}.catalog-copy>span{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.catalog-meta{color:var(--ink-soft);text-align:right;font-size:.69rem;line-height:1.7}.catalog-meta svg{vertical-align:-2px}.empty-state{text-align:center;padding:60px 25px}.empty-state svg{color:var(--coral)}.empty-state h1,.empty-state h2{margin:12px 0 8px}.empty-state.standalone{flex-direction:column;justify-content:center;align-items:center;min-height:62vh;display:flex}.glossary-search{max-width:580px;margin-bottom:25px}.glossary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.glossary-card{background:var(--card);border:2px solid var(--ink);border-radius:16px;min-width:0;padding:25px;position:relative}.glossary-card:hover{box-shadow:var(--shadow-small);transform:translate(-1px,-1px)}.glossary-index{color:#17324d40;font-family:var(--font-mono);font-size:1.5rem;position:absolute;top:17px;right:19px}.glossary-title{align-items:baseline;gap:9px;display:flex}.glossary-title svg{color:var(--coral);flex:none;transform:translateY(3px)}.glossary-title h2{margin-bottom:0;font-size:1.25rem}.glossary-title small{color:var(--ink-soft);font-family:var(--font-mono);font-size:.61rem}.glossary-card>p{margin:15px 0;font-size:.84rem}.mistake-note{background:var(--coral-soft);border-left:4px solid var(--coral);color:var(--ink-soft);border-radius:0 8px 8px 0;padding:11px 13px;font-size:.75rem;line-height:1.55}.mistake-note strong{color:var(--coral);margin-bottom:2px;display:block}.related-lessons{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.related-lessons a{background:var(--sky-soft);border:1px solid var(--ink);border-radius:999px;padding:4px 8px;font-size:.64rem;font-weight:800}.lesson-page{grid-template-columns:250px minmax(0,790px);justify-content:center;align-items:start;gap:48px;padding-top:38px;display:grid}.lesson-sidebar{min-width:0;position:sticky;top:112px}.sidebar-back{color:var(--ink-soft);align-items:center;gap:6px;margin-bottom:15px;font-size:.75rem;font-weight:800;display:inline-flex}.sidebar-module{background:var(--tone-soft);border:2px solid var(--ink);border-radius:13px;grid-template-columns:auto 1fr;gap:2px 10px;padding:16px;display:grid}.sidebar-module>span{font-family:var(--font-mono);grid-row:1/3;font-size:1.4rem}.sidebar-module small{color:var(--ink-soft);font-size:.63rem}.sidebar-module strong{font-size:.83rem}.lesson-sidebar nav{gap:5px;margin-top:12px;display:grid}.lesson-sidebar nav a{min-width:0;color:var(--ink-soft);border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:8px 10px;font-size:.72rem;font-weight:700;display:grid}.lesson-sidebar nav a>span{border:1px solid var(--ink-soft);width:22px;height:22px;font-family:var(--font-mono);border-radius:50%;place-items:center;font-size:.53rem;display:grid}.lesson-sidebar nav a:hover,.lesson-sidebar nav a.active{color:var(--ink);background:var(--card)}.lesson-sidebar nav a.done>span{color:#fff;background:var(--mint);border-color:var(--ink)}.lesson-jump-links{border-top:1px dashed #17324d59;margin-top:15px;padding-top:12px;display:grid}.lesson-jump-links a{color:var(--ink-soft);justify-content:space-between;padding:7px 3px;font-size:.68rem;font-weight:800;display:flex}.lesson-article{min-width:0}.lesson-header{padding:30px 0 40px}.lesson-breadcrumb{color:var(--ink-soft);align-items:center;gap:5px;font-size:.72rem;display:flex}.lesson-breadcrumb a{font-weight:800}.lesson-meta{flex-wrap:wrap;gap:8px;margin:25px 0 13px;display:flex}.lesson-meta span{background:var(--card);border:1px solid var(--ink);font-family:var(--font-mono);border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font-size:.61rem;display:inline-flex}.lesson-header h1{letter-spacing:-.06em;margin-bottom:10px;font-size:clamp(2.4rem,5vw,4.25rem);font-weight:900;line-height:1.05}.lesson-header>p{font-size:1.08rem}.lesson-objectives{background:var(--gold-soft);border:2px solid var(--ink);border-radius:13px;margin-top:28px;padding:18px 20px}.lesson-objectives>strong{align-items:center;gap:7px;display:flex}.lesson-objectives ul{color:var(--ink-soft);margin:10px 0 0;padding-left:20px;font-size:.82rem;line-height:1.8}.scenario-card{background:var(--ink);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:6px 6px 0 var(--coral);margin-bottom:38px;padding:25px 28px}.scenario-card>div{color:var(--gold);align-items:center;gap:8px;font-size:.8rem;display:flex}.scenario-card p{color:#fff;margin:13px 0 0;font-size:1.03rem;font-weight:700;line-height:1.7}.tutor-invite{background:var(--gold-soft);border:2px solid var(--ink);box-shadow:var(--shadow-small);border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:-8px 0 38px;padding:18px 20px;display:grid}.tutor-invite-icon{color:#fff;background:var(--coral);border:2px solid var(--ink);border-radius:13px;place-items:center;width:46px;height:46px;display:grid}.tutor-invite div{gap:3px;min-width:0;display:grid}.tutor-invite small{color:var(--coral);font-family:var(--font-mono);font-size:.65rem}.tutor-invite strong{font-size:.92rem;line-height:1.45}.lesson-block,.calibration-block{background:var(--card);border:2px solid var(--ink);border-radius:var(--radius);margin-bottom:28px;padding:30px}.block-heading{align-items:center;gap:13px;margin-bottom:18px;display:flex}.block-heading h2{margin:0;font-size:1.55rem;font-weight:900}.block-heading .eyebrow{margin-bottom:3px;font-size:.62rem}.block-index,.block-icon{background:var(--sky-soft);border:2px solid var(--ink);width:44px;height:44px;font-family:var(--font-mono);border-radius:11px;flex:none;place-items:center;font-size:.7rem;display:grid}.concept-block>p{font-size:.93rem}.check-list{gap:9px;margin:20px 0 0;padding:0;list-style:none;display:grid}.check-list li{color:var(--ink-soft);align-items:flex-start;gap:8px;font-size:.84rem;line-height:1.55;display:flex}.check-list svg{color:var(--mint);flex:none;margin-top:2px}.formula-card{background:var(--paper);border:2px dashed var(--ink);border-radius:11px;flex-direction:column;margin-top:22px;padding:17px 20px;display:flex}.formula-card small{color:var(--coral);font-family:var(--font-mono);margin-bottom:5px;font-size:.58rem}.formula-card strong{font-family:var(--font-mono);font-size:.85rem;line-height:1.65}.case-card{background:var(--sky-soft);border:2px solid var(--ink);box-shadow:inset 8px 0 0 var(--sky);border-radius:4px 18px 18px 4px;margin:42px 0;padding:28px 30px;position:relative}.case-label{color:var(--sky);font-family:var(--font-mono);align-items:center;gap:7px;font-size:.65rem;font-weight:500;display:flex}.case-card h2{margin:13px 0 8px;font-size:1.25rem}.case-card p{margin-bottom:0;font-size:.86rem}.calibration-block{background:var(--paper-deep)}.calibration-block .block-icon{background:var(--gold-soft)}.calibration-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.calibration-grid>div{border:2px solid var(--ink);border-radius:12px;padding:18px}.calibration-grid h3{align-items:center;gap:7px;margin:0 0 10px;font-size:.9rem;display:flex}.calibration-grid ul{color:var(--ink-soft);margin:0;padding-left:18px;font-size:.76rem;line-height:1.75}.keep-card{background:var(--mint-soft)}.keep-card svg{color:var(--success)}.update-card{background:var(--gold-soft)}.update-card svg{color:var(--coral)}.exercise-block .block-icon{background:var(--violet-soft)}.hint{color:var(--ink-soft);background:var(--gold-soft);border-radius:9px;gap:9px;margin:15px 0;padding:11px 13px;font-size:.75rem;line-height:1.55;display:flex}.hint svg{color:var(--gold);flex:none}.hint strong{color:var(--ink);display:block}.note-field textarea,.tool-panel textarea,.capstone-editor textarea{resize:vertical;width:100%;color:var(--ink);border:2px solid var(--ink);background:#fff;border-radius:11px;padding:17px;font-size:.84rem;line-height:1.7}.exercise-block .button{margin-top:12px}.quiz-block .block-icon{background:var(--coral-soft)}.saved-score{background:var(--mint-soft);border:1px solid var(--ink);border-radius:999px;margin-left:auto;padding:5px 9px;font-size:.65rem;font-weight:800}.quiz-list{gap:20px;display:grid}.quiz-question{border:0;border-bottom:1px dashed #17324d61;margin:0;padding:0 0 20px}.quiz-question:last-child{border-bottom:0}.quiz-question legend{align-items:flex-start;gap:8px;width:100%;margin-bottom:11px;font-size:.9rem;font-weight:900;line-height:1.5;display:flex}.quiz-question legend>span{color:#fff;background:var(--ink);width:24px;height:24px;font-family:var(--font-mono);border-radius:50%;flex:none;place-items:center;font-size:.55rem;display:grid}.quiz-options{gap:7px;display:grid}.quiz-options label{cursor:pointer;background:var(--paper);color:var(--ink-soft);border:1px solid #17324d73;border-radius:9px;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:10px 12px;font-size:.78rem;font-weight:700;display:grid}.quiz-options label:has(input:checked){color:var(--ink);background:var(--sky-soft);border:2px solid var(--ink);padding:9px 11px}.quiz-options label.correct{color:var(--success);background:var(--mint-soft);border:2px solid var(--success);padding:9px 11px}.quiz-options label.wrong{color:var(--danger);background:var(--coral-soft);border:2px solid var(--danger);padding:9px 11px}.quiz-options input{opacity:0;position:absolute}.option-marker,.option-marker svg{width:18px;height:18px}.quiz-explanation{background:var(--gold-soft);border-radius:8px;gap:7px;margin:8px 0 0;padding:9px 11px;font-size:.73rem;display:flex}.quiz-explanation svg{flex:none;margin-top:3px}.quiz-submit{margin-top:22px}.quiz-result{border:2px solid var(--ink);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:22px;padding:17px;display:grid}.quiz-result.pass{background:var(--mint-soft)}.quiz-result.retry{background:var(--gold-soft)}.quiz-result>div{flex-direction:column;display:flex}.quiz-result>div strong{font-family:var(--font-mono);font-size:1.45rem}.quiz-result>div span{font-size:.65rem}.quiz-result p{margin:0;font-size:.76rem}.takeaway-card{color:#fff;background:var(--ink);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:6px 6px 0 var(--gold);margin:38px 0;padding:27px 30px}.takeaway-card small{color:var(--gold);font-family:var(--font-mono);font-size:.62rem}.takeaway-card blockquote{margin:13px 0 0;font-size:1.2rem;font-weight:800;line-height:1.55}.complete-card{background:var(--card);border:2px dashed var(--ink);border-radius:var(--radius);grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:22px;display:grid}.complete-card.is-complete{background:var(--mint-soft);border-style:solid}.complete-check{background:var(--paper);border:2px solid var(--ink);border-radius:50%;place-items:center;width:52px;height:52px;display:grid}.is-complete .complete-check{color:#fff;background:var(--mint)}.complete-card h2{margin:0 0 4px;font-size:1.1rem}.complete-card p{margin:0;font-size:.72rem}.lesson-pagination{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:30px;display:grid}.lesson-pagination a{background:var(--card);border:2px solid var(--ink);border-radius:12px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:10px;min-width:0;min-height:74px;padding:14px 16px;display:grid}.lesson-pagination a:hover{box-shadow:var(--shadow-small)}.lesson-pagination a>svg{grid-row:1/3}.lesson-pagination small{color:var(--ink-soft);font-size:.64rem}.lesson-pagination strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.lesson-pagination .next{text-align:right;grid-template-columns:1fr auto}.lesson-pagination .next>svg{grid-column:2}.tool-stamp,.source-seal,.capstone-seal{background:var(--sky-soft);border:2px solid var(--ink);min-width:126px;min-height:100px;box-shadow:var(--shadow-small);font-family:var(--font-mono);border-radius:50%;justify-content:center;align-items:center;gap:10px;padding:15px;font-size:.65rem;line-height:1.5;display:flex;transform:rotate(3deg)}.tool-panel{background:var(--card);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:30px;padding:30px}.tool-heading{align-items:flex-start;gap:15px;margin-bottom:28px;display:flex}.tool-number{color:#fff;background:var(--coral);border:2px solid var(--ink);width:48px;height:48px;font-family:var(--font-mono);border-radius:12px;flex:none;place-items:center;display:grid}.tool-heading .eyebrow{margin-bottom:2px}.tool-heading h2{margin-bottom:5px;font-size:1.65rem}.tool-heading p:last-child{margin-bottom:0;font-size:.8rem}.economics-layout{grid-template-columns:1.15fr .85fr;gap:28px;display:grid}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.number-field{gap:6px;display:grid}.number-field>span{color:var(--ink-soft);font-size:.72rem;font-weight:800}.number-field>div{background:var(--paper);border:2px solid var(--ink);border-radius:10px;align-items:center;min-height:46px;padding:0 12px;display:flex}.number-field input{width:100%;min-width:0;color:var(--ink);font-family:var(--font-mono);background:0 0;border:0;outline:0;font-weight:500}.number-field small{color:var(--ink-soft);font-size:.68rem}.result-board{background:var(--ink);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px;display:grid}.result-board>div{background:#ffffff14;border:1px solid #ffffff3d;border-radius:9px;flex-direction:column;padding:14px;display:flex}.result-board .wide{grid-column:1/-1}.result-board small{color:#ffffff9e;font-size:.63rem}.result-board strong{color:#fff;font-family:var(--font-mono);margin-top:4px;font-size:1.1rem}.result-board .positive strong{color:#70e3bf}.result-board .negative strong{color:#ff8d74}.tool-caveat{background:var(--gold-soft);border-left:5px solid var(--gold);gap:10px;margin-top:22px;padding:13px 15px;display:flex}.tool-caveat svg{flex:none;margin-top:3px}.tool-caveat p{margin:0;font-size:.74rem}.framework-tools{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:30px;display:grid}.framework-tools article{background:var(--paper-deep);border:2px solid var(--ink);border-radius:13px;padding:18px}.framework-tools svg{color:var(--coral);margin-bottom:17px}.framework-tools strong{margin-bottom:5px;font-size:.85rem;display:block}.framework-tools p{margin:0;font-size:.7rem}.audit-tool textarea{min-height:480px;font-family:var(--font-mono);font-size:.74rem}.tool-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.progress-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:26px;display:grid}.progress-summary-grid article{background:var(--card);border:2px solid var(--ink);border-radius:13px;flex-direction:column;padding:20px;display:flex}.progress-summary-grid article:first-child{background:var(--mint-soft)}.progress-summary-grid article:nth-child(2){background:var(--sky-soft)}.progress-summary-grid article:nth-child(3){background:var(--gold-soft)}.progress-summary-grid article:nth-child(4){background:var(--violet-soft)}.progress-summary-grid strong{font-family:var(--font-mono);font-size:1.7rem}.progress-summary-grid small{font-size:.72rem}.progress-summary-grid span{color:var(--ink-soft);margin-top:4px;font-size:.72rem;font-weight:800}.progress-panel{background:var(--card);border:2px solid var(--ink);border-radius:var(--radius);margin-bottom:25px;padding:26px}.panel-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;display:flex}.panel-heading .eyebrow{margin-bottom:2px}.panel-heading h2{margin-bottom:0;font-size:1.5rem}.panel-heading>strong{font-family:var(--font-mono)}.module-progress-list{margin-top:22px;display:grid}.module-progress-list>a{border-bottom:1px dashed #17324d4d;grid-template-columns:auto 170px 1fr 45px;align-items:center;gap:13px;min-width:0;padding:11px 4px;display:grid}.module-progress-list>a:last-child{border-bottom:0}.mini-module{width:36px;height:36px;font-size:.66rem}.module-progress-list>a>span:nth-child(2){flex-direction:column;display:flex}.module-progress-list>a>span:nth-child(2) strong{font-size:.78rem}.module-progress-list>a>span:nth-child(2) small{color:var(--ink-soft);font-size:.63rem}.module-progress-list b{font-family:var(--font-mono);text-align:right;font-size:.68rem}.score-list{display:grid}.score-list a{border-bottom:1px dashed #17324d52;justify-content:space-between;gap:20px;padding:11px 3px;font-size:.77rem;display:flex}.score-list a:last-child{border-bottom:0}.score-list a span{align-items:center;gap:7px;display:flex}.score-list svg{color:var(--mint)}.score-list strong{font-family:var(--font-mono)}.empty-inline{color:var(--ink-soft);background:var(--paper);border-radius:10px;padding:18px;font-size:.76rem}.data-panel{color:#fff;background:var(--ink);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:6px 6px 0 var(--gold);justify-content:space-between;align-items:center;gap:25px;padding:24px;display:flex}.data-panel>div:first-child{align-items:center;gap:13px;display:flex}.data-panel p{color:#ffffffa6;margin:4px 0 0;font-size:.7rem}.data-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.text-button{cursor:pointer;color:#ffffffb3;background:0 0;border:0;align-items:center;gap:5px;padding:8px;font-size:.7rem;font-weight:800;display:inline-flex}.text-button.danger:hover{color:#ff9a85}.status-message{background:var(--mint-soft);border:1px solid var(--ink);border-radius:9px;margin-top:15px;padding:10px 13px;font-size:.75rem}.capstone-seal{background:var(--gold-soft);border-radius:15px;transform:rotate(-2deg)}.capstone-guide{color:#fff;background:var(--ink);border-radius:var(--radius);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:40px;margin-bottom:28px;padding:26px;display:grid}.capstone-guide>div>svg{color:var(--gold)}.capstone-guide h2{margin:8px 0 5px}.capstone-guide p{color:#ffffffa6;margin:0;font-size:.75rem}.capstone-guide ol{counter-reset:steps;grid-template-columns:repeat(2,1fr);gap:9px;margin:0;padding:0;list-style:none;display:grid}.capstone-guide li{background:#ffffff14;border:1px solid #ffffff38;border-radius:9px;flex-direction:column;padding:11px;display:flex}.capstone-guide li strong{color:var(--gold);font-size:.78rem}.capstone-guide li span{color:#ffffffb3;margin-top:2px;font-size:.66rem}.capstone-workspace{grid-template-columns:minmax(0,1fr) 285px;align-items:start;gap:25px;display:grid}.capstone-editor{background:var(--card);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px}.capstone-editor .panel-heading small{color:var(--ink-soft);font-family:var(--font-mono);font-size:.62rem}.capstone-editor textarea{min-height:1050px;font-family:var(--font-mono);font-size:.72rem}.rubric-card{background:var(--gold-soft);border:2px solid var(--ink);border-radius:15px;padding:22px;position:sticky;top:112px}.rubric-card h2{margin-bottom:15px;font-size:1.25rem}.rubric-card ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.rubric-card li{color:var(--ink-soft);gap:7px;font-size:.7rem;line-height:1.5;display:flex}.rubric-card li svg{color:var(--mint);flex:none;margin-top:2px}.rubric-note{background:var(--card);border:1px dashed var(--ink);margin-top:17px;padding:12px;font-size:.7rem;line-height:1.55}.rubric-note strong{color:var(--coral);display:block}.source-seal{background:var(--mint-soft);border-radius:16px;transform:rotate(2deg)}.boundary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:28px;display:grid}.boundary-grid article{background:var(--card);border:2px solid var(--ink);border-radius:14px;padding:22px}.boundary-grid article:first-child svg{color:var(--coral)}.boundary-grid article:nth-child(2) svg{color:var(--sky)}.boundary-grid article:nth-child(3) svg{color:var(--mint)}.boundary-grid h2{margin:13px 0 7px;font-size:1rem}.boundary-grid p{margin:0;font-size:.75rem}.source-table-panel{background:var(--card);border:3px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:25px}.source-table{border-top:2px solid var(--ink)}.source-row{border-bottom:1px dashed #17324d4d;grid-template-columns:130px 1fr 170px;align-items:center;gap:15px;min-height:52px;padding:10px 6px;font-size:.73rem;display:grid}.source-row:hover:not(.source-head){background:var(--gold-soft)}.source-row span{color:var(--ink-soft);font-family:var(--font-mono);font-size:.62rem}.source-row span:last-child{text-align:right}.source-head{min-height:40px;font-weight:900}.source-head span{color:var(--ink)}.disclaimer-card{background:var(--coral-soft);border-left:7px solid var(--coral);gap:14px;margin-top:28px;padding:22px;display:flex}.disclaimer-card svg{color:var(--coral);flex:none}.disclaimer-card h2{margin:0 0 5px;font-size:1rem}.disclaimer-card p{margin:0;font-size:.75rem}.tutor-page{--tutor-border:#17324d3d;padding-top:24px}.tutor-page .tone-ink{--tone:var(--ink);--tone-soft:var(--paper-deep)}.tutor-page-header{grid-template-columns:minmax(0,1fr) minmax(320px,410px);align-items:end;gap:44px;margin-bottom:32px;display:none}.tutor-page-title>a{color:var(--ink-soft);align-items:center;gap:6px;margin-bottom:17px;font-size:.78rem;font-weight:800;display:inline-flex}.tutor-page-title>a:hover{color:var(--coral)}.tutor-page-title .eyebrow{align-items:center;gap:7px;display:flex}.tutor-page-title h1{letter-spacing:-.055em;max-width:720px;margin-bottom:11px;font-size:clamp(2.25rem,5vw,4rem);font-weight:900;line-height:1.05}.tutor-page-title>p:last-child{max-width:680px;margin:0;font-size:.98rem}.tutor-current-card{background:var(--card);border:2px solid var(--ink);box-shadow:var(--shadow-small);border-radius:16px;grid-template-columns:auto 1fr;align-items:start;gap:14px;padding:18px;display:grid}.tutor-current-card>span,.tutor-chat-lesson>span{width:45px;height:45px;color:var(--ink);background:var(--tone-soft);border:2px solid var(--tone);font-family:var(--font-mono);border-radius:12px;place-items:center;font-size:.72rem;font-weight:800;display:grid}.tutor-current-card div,.tutor-chat-lesson div{gap:3px;min-width:0;display:grid}.tutor-current-card small,.tutor-chat-lesson small{color:var(--ink-soft);font-family:var(--font-mono);font-size:.62rem}.tutor-current-card strong,.tutor-chat-lesson strong{font-size:.96rem;font-weight:900}.tutor-current-card p{margin:2px 0 0;font-size:.72rem;line-height:1.5}.tutor-workspace{grid-template-columns:272px minmax(0,1fr);align-items:stretch;gap:22px;display:grid}.tutor-course-sidebar{background:var(--card);border:2px solid var(--ink);height:calc(100dvh - 124px);max-height:900px;box-shadow:var(--shadow-small);border-radius:17px;flex-direction:column;display:flex;position:sticky;top:102px;overflow:hidden}.tutor-sidebar-heading{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:center;gap:10px;min-height:68px;padding:14px 15px;display:flex}.tutor-sidebar-heading>div,.tutor-sidebar-heading>div>span{align-items:center;gap:9px;display:flex}.tutor-sidebar-heading>div>span{flex-direction:column;align-items:flex-start;gap:1px}.tutor-sidebar-heading small{color:var(--coral);font-family:var(--font-mono);font-size:.55rem}.tutor-sidebar-heading strong{font-size:.86rem}.tutor-sidebar-heading button{width:44px;height:44px;color:var(--ink);background:0 0;border:0;border-radius:10px;place-items:center;display:none}.tutor-course-nav{scrollbar-width:thin;padding:11px;overflow-y:auto}.tutor-course-group+.tutor-course-group{border-top:1px dashed #17324d40;margin-top:10px;padding-top:11px}.tutor-course-group>header{grid-template-columns:auto 1fr;align-items:center;gap:9px;margin-bottom:6px;padding:6px 7px;display:grid}.tutor-course-group>header>span{color:var(--tone);font-family:var(--font-mono);font-size:.65rem;font-weight:900}.tutor-course-group>header>div{gap:1px;min-width:0;display:grid}.tutor-course-group>header small{color:var(--tone);font-size:.68rem;font-weight:900}.tutor-course-group>header strong{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;overflow:hidden}.tutor-course-group>div{gap:3px;display:grid}.tutor-course-group a{border:1px solid #0000;border-radius:10px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px;min-height:46px;padding:7px;display:grid}.tutor-course-group a>span{width:25px;height:25px;color:var(--ink-soft);background:var(--paper);font-family:var(--font-mono);border-radius:8px;place-items:center;font-size:.55rem;display:grid}.tutor-course-group a>div{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.tutor-course-group a strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.tutor-course-group a small{color:var(--ink-soft);font-family:var(--font-mono);flex:none;font-size:.49rem}.tutor-course-group a:hover{background:var(--paper)}.tutor-course-group a.active{background:var(--tone-soft);border-color:var(--tone)}.tutor-course-group a.active>span{color:#fff;background:var(--tone)}.tutor-chat-panel{border:2px solid var(--ink);min-width:0;height:calc(100dvh - 124px);min-height:0;max-height:900px;box-shadow:5px 5px 0 var(--ink);background:#fffdf8c7;border-radius:19px;flex-direction:column;display:flex;overflow:clip}.tutor-chat-toolbar{background:var(--card);border-bottom:2px solid var(--ink);flex:none;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-height:76px;padding:13px 18px;display:grid}.tutor-course-drawer-button{min-height:44px;color:var(--ink);background:var(--gold-soft);border:2px solid var(--ink);border-radius:11px;align-items:center;gap:7px;padding:9px 12px;font-size:.74rem;font-weight:900;display:none}.tutor-chat-lesson{align-items:center;gap:10px;display:flex}.tutor-read-lesson{min-height:44px;color:var(--ink-soft);border:1px solid var(--tutor-border);border-radius:10px;align-items:center;gap:7px;padding:8px 12px;font-size:.7rem;font-weight:800;display:inline-flex}.tutor-read-lesson:hover{color:var(--coral);border-color:var(--coral)}.tutor-mode-switcher{background:var(--paper);border-bottom:1px dashed #17324d4d;flex:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 17px;display:grid}.tutor-mode-switcher button{text-align:left;min-height:56px;color:var(--ink);background:var(--card);cursor:pointer;border:1px solid #17324d3d;border-radius:10px;gap:2px;padding:8px 10px;display:grid}.tutor-mode-switcher button:hover{border-color:var(--coral)}.tutor-mode-switcher button.active{color:#fff;background:var(--ink);border-color:var(--ink)}.tutor-mode-switcher strong{font-size:.72rem}.tutor-mode-switcher small{color:inherit;opacity:.68;font-size:.51rem;line-height:1.35}.tutor-transcript{background:linear-gradient(#fffdf86b,#fffdf86b),radial-gradient(circle at 95% 10%,#3d94ba14,#0000 22rem);flex:1;align-content:start;gap:27px;min-height:0;padding:27px 24px 12px;display:grid;overflow-y:auto}.tutor-message{min-width:0}.tutor-message-assistant{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:10px;width:min(100%,850px);display:grid}.tutor-message-user{grid-template-columns:minmax(0,1fr);justify-self:end;align-items:end;gap:8px;max-width:min(72%,600px);display:grid}.tutor-message-avatar{color:#fff;background:var(--coral);border:2px solid var(--ink);width:42px;height:42px;box-shadow:2px 2px 0 var(--ink);border-radius:50%;place-items:center;display:grid}.tutor-message-assistant .tutor-message-avatar{background:radial-gradient(circle, var(--gold-soft) 0 34%, transparent 35%), conic-gradient(from 35deg, var(--coral) 0 12%, var(--card) 12% 25%, var(--sky) 25% 38%, var(--card) 38% 62%, var(--mint) 62% 75%, var(--card) 75% 88%, var(--coral) 88%);color:var(--ink)}.tutor-user-bubble{background:var(--sky-soft);border:2px solid var(--sky);border-radius:15px 15px 4px;padding:12px 16px;box-shadow:2px 2px #17324d2e}.tutor-user-bubble p{color:var(--ink);white-space:pre-wrap;margin:0;font-size:.94rem;font-weight:800;line-height:1.6}.tutor-ai-panel{background:var(--card);border:2px solid var(--ink);border-radius:17px;min-width:0;padding:21px;box-shadow:3px 3px #17324d24}.tutor-ai-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.tutor-ai-heading small{color:var(--coral);font-family:var(--font-mono);font-size:.58rem}.tutor-ai-heading h3{margin:4px 0 0;font-size:1.27rem;font-weight:900;line-height:1.25}.tutor-grounding-badge{min-height:28px;color:var(--success);background:var(--mint-soft);border:1px solid var(--mint);border-radius:999px;flex:none;align-items:center;gap:5px;padding:5px 8px;font-size:.56rem;font-weight:800;display:inline-flex}.tutor-grounding-badge.status-inference{color:var(--violet);background:var(--violet-soft);border-color:var(--violet)}.tutor-grounding-badge.status-insufficient{color:var(--danger);background:var(--coral-soft);border-color:var(--coral)}.tutor-ai-lead{color:var(--ink);margin-bottom:17px;font-size:.95rem;font-weight:700;line-height:1.72}.tutor-block-stack{gap:13px;display:grid}.tutor-block{--tone:var(--sky);--tone-soft:var(--sky-soft);background:color-mix(in srgb, var(--tone-soft) 38%, var(--card));border:1px solid color-mix(in srgb, var(--tone) 62%, var(--ink));border-radius:13px;min-width:0;padding:16px}.tutor-block-heading{align-items:center;gap:8px;margin-bottom:10px;display:flex}.tutor-block-icon{width:31px;height:31px;color:var(--tone);background:var(--card);border:1px solid var(--tone);border-radius:9px;flex:none;place-items:center;display:grid}.tutor-block-heading h4{color:var(--ink);margin:0;font-size:.94rem;font-weight:900}.tutor-block>p,.tutor-paragraph>p{color:var(--ink);white-space:pre-wrap;margin:0;font-size:.94rem;line-height:1.72}.tutor-emphasis{color:var(--tone);background:var(--tone-soft);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;padding:1px 4px;font-weight:900}.tutor-flow-list{scrollbar-width:thin;align-items:stretch;gap:0;margin:13px 0 0;padding:0;list-style:none;display:flex;overflow-x:auto}.tutor-flow-list>li{flex:1 0 150px;align-items:center;min-width:0;display:flex}.tutor-flow-node{--tone:var(--sky);--tone-soft:var(--sky-soft);background:var(--card);border:1.5px solid var(--tone);border-radius:11px;flex:1;grid-template-columns:auto 1fr;align-content:center;gap:8px;min-width:0;min-height:88px;padding:11px;display:grid}.tutor-flow-index{color:#fff;background:var(--tone);width:23px;height:23px;font-family:var(--font-mono);border-radius:50%;place-items:center;font-size:.48rem;display:grid}.tutor-flow-node strong{color:var(--tone);font-size:.94rem}.tutor-flow-node p{color:var(--ink-soft);margin:3px 0 0;font-size:.94rem;line-height:1.4}.tutor-flow-arrow{color:var(--ink-soft);flex:none;margin:0 4px}.tutor-item-values{flex-wrap:wrap;grid-column:1/-1;gap:4px;display:flex}.tutor-item-values>span{color:var(--ink-soft);background:var(--paper);border-radius:5px;padding:2px 5px;font-size:.94rem}.tutor-comparison-scroll{border:1px solid var(--tutor-border);border-radius:10px;margin-top:12px;overflow-x:auto}.tutor-comparison table{border-collapse:collapse;width:100%;color:var(--ink);font-size:.94rem}.tutor-comparison th,.tutor-comparison td{text-align:left;vertical-align:top;border-right:1px solid var(--tutor-border);border-bottom:1px solid var(--tutor-border);padding:10px;line-height:1.5}.tutor-comparison th:last-child,.tutor-comparison td:last-child{border-right:0}.tutor-comparison tbody tr:last-child>*{border-bottom:0}.tutor-comparison thead{background:var(--paper)}.tutor-comparison tbody th{background:var(--tone-soft);min-width:118px}.tutor-comparison tbody th small{color:var(--ink-soft);margin-top:3px;font-weight:500;display:block}.tutor-mobile-column-label{display:none}.tutor-steps>ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.tutor-steps>ol>li{--tone:var(--sky);--tone-soft:var(--sky-soft);background:var(--card);border:1px solid var(--tone);border-radius:10px;grid-template-columns:auto 1fr;gap:8px;min-width:0;padding:11px;display:grid}.tutor-steps>ol>li>span{color:#fff;background:var(--tone);border-radius:50%;place-items:center;width:23px;height:23px;font-size:.58rem;font-weight:900;display:grid}.tutor-steps li strong{color:var(--tone);font-size:.94rem}.tutor-steps li p{margin:4px 0 0;font-size:.94rem;line-height:1.55}.tutor-steps li small{color:var(--ink-soft);margin-top:5px;font-size:.94rem;display:block}.tutor-formula-expression{background:var(--card);border:2px dashed var(--tone);border-radius:10px;align-items:center;gap:12px;margin-top:12px;padding:13px 15px;display:flex}.tutor-formula-expression small{color:var(--tone);font-family:var(--font-mono);font-size:.52rem}.tutor-formula-expression code{color:var(--ink);font-family:var(--font-sans);white-space:pre-wrap;font-size:.94rem;font-weight:900}.tutor-formula-terms{gap:7px;display:grid}.tutor-formula-terms>div{background:var(--card);border-left:3px solid var(--tone);padding:8px}.tutor-formula-terms dt{color:var(--tone);font-size:.94rem;font-weight:900}.tutor-formula-terms dd{color:var(--ink-soft);margin:3px 0 0;font-size:.94rem}.tutor-bullet-list{gap:7px;margin:12px 0 0;padding:0;list-style:none;display:grid}.tutor-bullet-list>li{--tone:var(--sky);--tone-soft:var(--sky-soft);color:var(--ink);background:var(--card);border-left:3px solid var(--tone);border-radius:7px;align-items:flex-start;gap:7px;padding:9px 10px;font-size:.94rem;line-height:1.5;display:flex}.tutor-bullet-list svg{color:var(--tone);flex:none;margin-top:2px}.tutor-bullet-list strong{color:var(--tone);margin-right:5px}.tutor-bullet-list small{color:var(--ink-soft);display:block}.tutor-highlight blockquote{color:var(--ink);margin:0;font-size:.96rem;font-weight:900;line-height:1.65}.tutor-highlight-items{gap:7px;display:grid}.tutor-highlight-items p{background:var(--card);border-left:3px solid var(--tone);margin:0;padding:8px;font-size:.94rem}.tutor-highlight-items strong{color:var(--tone);margin-right:6px}.tutor-block-footer{border-top:1px dashed var(--tutor-border);margin-top:12px;padding-top:10px}.tutor-block-takeaway{background:var(--gold-soft);border:1px solid var(--gold);border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-weight:900;display:flex;color:var(--ink)!important;margin:0!important}.tutor-source-refs,.tutor-response-sources{color:var(--ink-soft);font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px;font-size:.47rem;display:flex}.tutor-source-refs span,.tutor-response-sources code{color:var(--ink-soft);background:var(--paper);border-radius:5px;padding:3px 5px;font-family:inherit}.tutor-next-question{background:var(--sky-soft);border:2px dashed var(--sky);border-radius:11px;gap:4px;margin-top:14px;padding:12px 14px;display:grid}.tutor-next-question small{color:var(--sky);font-family:var(--font-mono);font-size:.53rem}.tutor-next-question strong{color:var(--ink);font-size:.94rem;line-height:1.55}.tutor-suggestions{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.tutor-suggestions button{min-height:44px;color:var(--ink);background:var(--card);border:1px solid var(--violet);cursor:pointer;border-radius:999px;padding:7px 11px;font-size:.82rem;font-weight:800}.tutor-suggestions button:hover{color:#fff;background:var(--violet)}.tutor-loading-panel{background:var(--card);border:2px solid var(--ink);border-radius:15px;min-height:78px;padding:16px}.tutor-loading-panel>span{gap:5px;display:flex}.tutor-loading-panel i{background:var(--coral);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite alternate tutor-pulse}.tutor-loading-panel i:nth-child(2){background:var(--gold);animation-delay:.16s}.tutor-loading-panel i:nth-child(3){background:var(--mint);animation-delay:.32s}.tutor-loading-panel p{margin:8px 0 0;font-size:.94rem}@keyframes tutor-pulse{to{opacity:.45;transform:translateY(-4px)}}.tutor-error{color:var(--danger);background:var(--coral-soft);border:2px solid var(--danger);border-radius:11px;align-items:center;gap:9px;margin-left:54px;padding:12px 14px;display:flex}.tutor-error p{color:inherit;flex:1;margin:0;font-size:.94rem}.tutor-error button{min-height:44px;color:inherit;background:var(--card);border:1px solid;border-radius:8px;padding:6px 10px;font-weight:800}.tutor-composer-wrap{z-index:8;background:linear-gradient(transparent, var(--card) 17%);flex:none;padding:15px 19px 17px;position:relative}.tutor-composer{background:var(--card);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:14px;padding:12px;display:block}.tutor-composer:focus-within{outline:3px solid var(--gold);outline-offset:3px}.tutor-composer textarea{resize:none;width:100%;min-height:58px;max-height:120px;color:var(--ink);background:0 0;border:0;outline:0;line-height:1.6;overflow-y:auto}.tutor-composer textarea::placeholder{color:#48647ab8}.tutor-composer-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.tutor-composer-meta{flex-wrap:wrap;align-items:center;gap:5px 10px;min-width:0;display:flex}.tutor-composer-actions small{color:var(--ink-soft);font-family:var(--font-mono);align-items:center;gap:5px;font-size:.53rem;display:flex}.tutor-composer-count{justify-content:flex-end;min-width:62px}.tutor-security-row{justify-content:flex-end;align-items:center;gap:8px;min-height:18px;margin-top:4px;display:flex}.tutor-turnstile{min-width:0;line-height:0}.tutor-security-status{color:var(--success);font-family:var(--font-mono);font-size:.5rem}.tutor-security-status.is-error{color:var(--danger);font-family:var(--font-sans);font-size:.7rem;font-weight:800}.tutor-send-button,.tutor-abort-button{color:#fff;background:var(--coral);border:2px solid var(--ink);min-height:44px;box-shadow:2px 2px 0 var(--ink);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:8px 14px;font-weight:900;display:inline-flex}.tutor-abort-button{background:var(--ink)}.tutor-send-button:disabled{cursor:not-allowed;opacity:.45;box-shadow:none}.tutor-composer-note{text-align:center;margin:9px 3px 0;font-size:.56rem;line-height:1.45}.tutor-drawer-backdrop{display:none}@media (width<=1040px){.header-inner{gap:16px}.desktop-nav a{padding-inline:7px;font-size:.78rem}.hero{grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);gap:35px}.principles-grid{grid-template-columns:repeat(2,1fr)}.principles-grid>div:nth-child(2){border-right:0}.principles-grid>div:nth-child(-n+2){border-bottom:1px dashed #ffffff4d}.lesson-page{grid-template-columns:220px minmax(0,1fr);gap:30px}}@media (width<=900px){.header-inner{grid-template-columns:1fr auto}.desktop-nav{display:none}.mobile-nav{scrollbar-width:none;gap:6px;width:min(1180px,100% - 28px);margin-inline:auto;padding:0 0 8px;display:flex;overflow-x:auto}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav a,.mobile-nav-label{border-radius:8px;flex:none;padding:6px 9px;font-size:.68rem;font-weight:800}.mobile-nav-label{color:var(--ink-soft);align-items:center;gap:4px;display:flex}.mobile-nav a.active{background:var(--gold-soft)}.hero{grid-template-columns:1fr;gap:45px;min-height:0;padding-block:62px}.field-map{justify-self:center;width:min(620px,100%)}.module-grid{grid-template-columns:1fr}.capstone-banner{grid-template-columns:auto 1fr}.capstone-banner .button{grid-column:1/-1;justify-self:start}.lesson-page{grid-template-columns:1fr;gap:0;padding-top:22px}.lesson-sidebar{margin-bottom:10px;position:static}.lesson-sidebar nav,.lesson-jump-links{display:none}.economics-layout{grid-template-columns:1fr}.framework-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.capstone-workspace{grid-template-columns:1fr}.rubric-card{grid-row:1;position:static}}@media (width<=720px){.section-shell,.header-inner,.site-footer{width:min(100% - 28px,1180px)}.header-inner{min-height:66px}.brand-mark{width:37px;height:37px}.brand strong{font-size:1rem}.brand small,.progress-label{display:none}.progress-ring{width:38px;height:38px}.progress-ring:before{width:27px;height:27px}.hero{padding-block:48px}.hero h1{font-size:clamp(2.65rem,12vw,4rem)}.hero-lead{font-size:.95rem}.field-map{box-shadow:6px 6px 0 var(--ink);padding:18px;transform:none}.map-grid{grid-template-columns:1fr;gap:9px}.map-node,.node-test,.node-action{grid-area:auto;min-height:94px}.map-node{grid-template-columns:auto 1fr;gap:2px 10px;display:grid}.map-node svg{grid-row:1/4;align-self:center;margin:0}.map-arrow{display:none}.field-map blockquote{padding-right:74px;font-size:.8rem}.principles-grid{grid-template-columns:1fr}.principles-grid>div,.principles-grid>div:nth-child(2){border-bottom:1px dashed #ffffff4d;border-right:0;min-height:86px}.principles-grid>div:last-child{border-bottom:0}.map-section{padding-top:70px}.section-heading{grid-template-columns:1fr;gap:16px}.section-heading h2{font-size:2.3rem}.module-card{box-shadow:4px 4px 0 var(--ink);padding:19px}.module-description{min-height:0}.module-practice{margin:17px -19px -19px;padding-inline:19px}.capstone-banner{box-shadow:5px 5px 0 var(--coral);grid-template-columns:1fr;margin-top:55px}.capstone-banner .button{grid-column:auto;width:100%}.page-stack{padding-top:48px}.page-intro{grid-template-columns:1fr;gap:20px;padding-bottom:28px}.page-intro h1{font-size:clamp(2.35rem,12vw,3.5rem)}.page-intro-aside{justify-self:start}.catalog-controls{grid-template-columns:1fr}.catalog-item{grid-template-columns:auto minmax(0,1fr);padding:13px}.catalog-meta{display:none}.catalog-copy>span{white-space:normal}.glossary-grid{grid-template-columns:1fr}.lesson-header{padding-top:18px}.lesson-header h1{font-size:clamp(2.35rem,12vw,3.5rem)}.lesson-block,.calibration-block,.case-card{padding:22px}.calibration-grid,.quiz-result{grid-template-columns:1fr}.quiz-result .button{justify-self:start}.complete-card{grid-template-columns:auto 1fr}.complete-card .button{grid-column:1/-1}.lesson-pagination{grid-template-columns:1fr}.lesson-pagination>span{display:none}.input-grid,.result-board{grid-template-columns:1fr}.result-board .wide{grid-column:auto}.framework-tools,.progress-summary-grid,.boundary-grid{grid-template-columns:1fr}.module-progress-list>a{grid-template-columns:auto 1fr auto}.module-progress-list .bar-wrap{grid-column:2/-1}.data-panel{flex-direction:column;align-items:flex-start}.data-actions{justify-content:flex-start}.capstone-guide{grid-template-columns:1fr;gap:20px}.source-table-panel{padding:18px}.source-row{grid-template-columns:92px 1fr}.source-row>span:last-child{display:none}.site-footer{grid-template-columns:1fr;margin-top:65px}.footer-links{flex-wrap:wrap;gap:10px 18px}}@media (width<=440px){.hero-actions .button{width:100%}.hero-progress-card{grid-template-columns:1fr}.field-map-top span:last-child{display:none}.stamp{bottom:18px;right:18px}.module-card-head{grid-template-columns:auto 1fr}.module-percent{display:none}.lesson-row-copy strong{white-space:normal}.tool-panel,.progress-panel,.capstone-editor{padding:19px}.tool-heading{gap:10px}.tool-number{width:40px;height:40px}.tool-heading h2,.panel-heading h2{font-size:1.25rem}.tool-stamp,.source-seal,.capstone-seal{min-width:110px;min-height:85px}.capstone-guide ol{grid-template-columns:1fr}.source-row{grid-template-columns:1fr;gap:2px}.source-head{display:none}.data-actions .button{width:100%}.tutor-security-row{flex-direction:column;align-items:flex-end}.tutor-turnstile{width:150px;max-width:100%}}@media (width<=980px){.tutor-page-header{grid-template-columns:1fr;gap:18px}.tutor-current-card{max-width:620px}.tutor-workspace{grid-template-columns:1fr}.tutor-course-sidebar{z-index:310;visibility:hidden;pointer-events:none;border-radius:0 18px 18px 0;width:min(340px,100vw - 42px);height:100dvh;max-height:none;transition:transform .18s,visibility 0s linear .18s;position:fixed;inset:0 auto 0 0;transform:translate(-110%);box-shadow:8px 0 #17324d47}.tutor-course-sidebar.is-open{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.tutor-sidebar-heading button{display:grid}.tutor-drawer-backdrop{z-index:300;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17324d75;border:0;padding:0;display:block;position:fixed;inset:0}.tutor-course-drawer-button{display:inline-flex}}@media (width<=720px){.tutor-invite{grid-template-columns:auto 1fr}.tutor-invite .button{grid-column:1/-1;width:100%}.tutor-page{width:min(100%,100% - 24px);padding-top:12px}.tutor-page-header{margin-bottom:18px}.tutor-page-title>a{margin-bottom:12px}.tutor-page-title .eyebrow{margin-bottom:7px}.tutor-page-title h1{margin-bottom:8px;font-size:clamp(1.85rem,9vw,2.6rem)}.tutor-page-title>p:last-child{font-size:.82rem}.tutor-current-card{display:none}.tutor-chat-panel{height:calc(100dvh - 148px);min-height:0;max-height:none;box-shadow:3px 3px 0 var(--ink);border-radius:15px}.tutor-chat-toolbar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;min-height:66px;padding:10px 11px}.tutor-course-drawer-button{justify-content:center;width:44px;padding:0;font-size:0}.tutor-chat-lesson>span{width:36px;height:36px}.tutor-chat-lesson strong{text-overflow:ellipsis;white-space:nowrap;max-width:36vw;font-size:.78rem;display:block;overflow:hidden}.tutor-chat-lesson small{font-size:.52rem}.tutor-read-lesson{justify-content:center;width:44px;padding:0;font-size:0}.tutor-mode-switcher{scrollbar-width:none;gap:7px;padding:10px 11px;display:flex;overflow-x:auto}.tutor-mode-switcher::-webkit-scrollbar{display:none}.tutor-mode-switcher button{text-align:center;min-width:max-content;min-height:44px;padding:9px 12px;display:block}.tutor-mode-switcher small{display:none}.tutor-transcript{gap:22px;min-height:0;padding:20px 12px 8px}.tutor-message-assistant{grid-template-columns:31px minmax(0,1fr);gap:5px;width:100%}.tutor-message-user{grid-template-columns:minmax(0,1fr);max-width:88%}.tutor-message-user .tutor-message-avatar{display:none}.tutor-message-avatar{width:31px;height:31px;margin-top:5px}.tutor-message-avatar svg{width:15px}.tutor-user-bubble{padding:11px 13px}.tutor-user-bubble p{font-size:.94rem}.tutor-ai-panel{border-radius:14px;padding:15px 13px}.tutor-ai-heading{flex-direction:column;align-items:flex-start;gap:8px}.tutor-ai-heading h3{font-size:1.06rem}.tutor-grounding-badge{align-self:flex-start}.tutor-ai-lead{font-size:.95rem}.tutor-block{padding:13px 11px}.tutor-block>p,.tutor-paragraph>p{font-size:.94rem}.tutor-flow-list{flex-direction:column;align-items:stretch;overflow:visible}.tutor-flow-list>li{flex-direction:column;flex:none;width:100%}.tutor-flow-node{width:100%;min-height:66px}.tutor-flow-arrow{margin:4px 0;transform:rotate(90deg)}.tutor-steps>ol{grid-template-columns:1fr}.tutor-steps>ol>li{min-height:64px}.tutor-comparison-scroll{border:0;overflow:visible}.tutor-comparison table,.tutor-comparison tbody,.tutor-comparison tr,.tutor-comparison th,.tutor-comparison td{width:100%;display:block}.tutor-comparison thead{display:none}.tutor-comparison tr{background:var(--card);border:1px solid var(--tone);border-radius:10px;margin-bottom:9px;overflow:hidden}.tutor-comparison th,.tutor-comparison td{border:0;border-bottom:1px dashed var(--tutor-border);padding:8px 10px}.tutor-comparison tr>:last-child{border-bottom:0}.tutor-mobile-column-label{width:88px;color:var(--ink-soft);font-weight:900;display:inline-block}.tutor-highlight blockquote{font-size:.96rem}.tutor-next-question strong{font-size:.94rem}.tutor-suggestions{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.tutor-suggestions::-webkit-scrollbar{display:none}.tutor-suggestions button{flex:none}.tutor-error{flex-wrap:wrap;align-items:flex-start;margin-left:36px}.tutor-composer-wrap{padding:12px 11px calc(13px + env(safe-area-inset-bottom))}.tutor-composer{box-shadow:2px 2px 0 var(--ink);border-radius:12px;padding:10px}.tutor-composer textarea{min-height:54px;font-size:1rem}.tutor-composer-shortcut{display:none!important}.tutor-composer-actions{justify-content:space-between}.tutor-security-status{font-size:.48rem}.tutor-security-status.is-error{font-size:.66rem}.tutor-composer-note{font-size:.5rem}}@media (width<=720px) and (height<=620px){.tutor-chat-panel{height:calc(100dvh - 124px)}.tutor-chat-toolbar{min-height:56px;padding-block:6px}.tutor-mode-switcher{padding-block:5px}.tutor-transcript{gap:14px;padding-block:10px 5px}.tutor-composer-wrap{padding:6px 9px calc(7px + env(safe-area-inset-bottom))}.tutor-composer{padding:7px 9px}.tutor-composer textarea{min-height:40px;max-height:48px}.tutor-security-row{min-height:0;margin-top:1px}.tutor-security-status:not(.is-error),.tutor-composer-note{display:none}}@media (width<=720px) and (height<=480px){.tutor-mode-switcher{display:none}}@media (width<=440px){.tutor-page-title>p:last-child{display:none}.tutor-page-title h1{max-width:330px;font-size:1.75rem;line-height:1.12}.tutor-chat-lesson>span{display:none}.tutor-chat-lesson strong{max-width:40vw}.tutor-ai-heading h3{font-size:.96rem}.tutor-block-heading h4{font-size:.94rem}.tutor-formula-expression{flex-direction:column;align-items:flex-start;gap:5px}.tutor-formula-expression code{font-size:.94rem}.tutor-source-refs span:nth-of-type(n+4),.tutor-response-sources code:nth-of-type(n+4){display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}.tutor-loading-panel i{animation:none!important}}
