*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.isolate{isolation:isolate}.block{display:block}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color:#16211f;background:#f4f5f0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{margin:0;min-width:1180px;background:#f4f5f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}button:disabled{cursor:not-allowed;opacity:.45}.loading{min-height:100vh;display:grid;place-items:center;color:#16211f8c;text-transform:uppercase;letter-spacing:.22em;font-size:12px}.app-shell{min-height:100vh;display:grid;grid-template-columns:320px minmax(620px,1fr) 330px}.sidebar,.right-panel{position:sticky;top:0;height:100vh;overflow:auto;background:#fff;border-color:#d8ddd7}.sidebar{border-right:1px solid #d8ddd7}.right-panel{border-left:1px solid #d8ddd7;padding:22px}.main-content{padding:34px}.brand-block{padding:26px;border-bottom:1px solid #d8ddd7;display:flex;gap:14px;align-items:flex-start}.brand-icon{width:44px;height:44px;border-radius:8px;display:grid;place-items:center;background:#16211f;color:#fff;flex:0 0 auto}.brand-block h1{margin:4px 0 0;font-size:18px;line-height:1.2}.eyebrow{color:#16211f7a;font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:700}.top-nav{padding:16px;display:grid;gap:6px}.nav-button,.lesson-link{width:100%;border:0;background:transparent;color:#16211f;text-align:left}.nav-button{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:7px;font-size:14px}.nav-button:hover,.nav-button.active{background:#eef2ed}.unit-title{padding:18px 26px 10px;display:grid;gap:5px}.unit-title span{color:#16211f80;font-size:12px;text-transform:uppercase;letter-spacing:.18em}.unit-title strong{font-size:15px}.lesson-list{padding:8px 14px 24px;display:grid;gap:8px}.lesson-link{display:grid;grid-template-columns:30px 1fr 18px;align-items:center;gap:10px;border:1px solid transparent;border-radius:8px;padding:12px}.lesson-link:hover,.lesson-link.selected{border-color:#c7d0c9;background:#f7f8f4}.lesson-number{width:28px;height:28px;border-radius:50%;background:#e7ece6;display:grid;place-items:center;font-size:12px;font-weight:700}.lesson-link-copy{display:grid;gap:4px;min-width:0}.lesson-link-copy strong{font-size:13px;line-height:1.25}.lesson-link-copy small{color:#16211f85}.page-stack{display:grid;gap:22px}.hero-panel,.page-header,.panel,.step-panel,.lesson-header,.metric,.lesson-card{background:#fff;border:1px solid #d8ddd7;border-radius:8px;box-shadow:0 16px 40px #16211f0d}.hero-panel{min-height:250px;padding:32px;display:flex;justify-content:space-between;gap:24px;align-items:flex-end}.hero-panel h2,.page-header h2,.lesson-header h2{margin:8px 0 12px;font-size:34px;line-height:1.08;letter-spacing:0}.hero-panel p,.page-header p,.lesson-header p,.body-copy{color:#16211fad;line-height:1.7;max-width:760px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.primary-button,.secondary-button{min-height:42px;border-radius:7px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:700;border:1px solid transparent}.primary-button{background:#16211f;color:#fff}.primary-button:hover{background:#225d55}.secondary-button{background:#fff;color:#16211f;border-color:#cfd7d0}.secondary-button:hover{background:#f4f5f0}.metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.metric{padding:18px;display:grid;gap:12px;min-height:106px}.metric span{color:#16211f85;font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.metric strong{font-size:26px;line-height:1.05}.metric .compact-value{font-size:16px;line-height:1.25}.two-col{display:grid;grid-template-columns:1fr 330px;gap:26px;align-items:start}.panel{padding:24px}.panel h3{margin:0 0 10px;font-size:18px}.panel.compact{padding:18px;box-shadow:none;margin-bottom:14px}.panel.compact p,.panel.compact small{color:#16211f9e;line-height:1.55}.next-card{border-left:3px solid #225d55;padding-left:20px}.page-header{padding:30px}.unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.lesson-card{padding:22px;text-align:left;display:grid;gap:12px;color:#16211f}.lesson-card:hover{border-color:#225d55}.lesson-card h3{margin:0;font-size:20px}.lesson-card p{margin:0;color:#16211fa6;line-height:1.55}.lesson-card-top,.lesson-meta{display:flex;justify-content:space-between;gap:12px;align-items:center}.lesson-card-top span,.lesson-meta{color:#16211f85;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.badge{border:1px solid #d8ddd7;border-radius:999px;padding:4px 8px;font-size:11px;text-transform:none;letter-spacing:0}.badge.completed{background:#e8f2ee;color:#225d55;border-color:#b9d4cb}.badge.in-progress{background:#fff6e8;color:#8a5a1e;border-color:#e6c999}.progress-track{height:8px;background:#e8ece7;border-radius:999px;overflow:hidden}.progress-track div{height:100%;background:#225d55;border-radius:999px;transition:width .18s ease}.lesson-layout{display:grid;gap:18px}.lesson-header{padding:28px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.step-count{border:1px solid #d8ddd7;border-radius:999px;padding:8px 12px;font-size:13px;color:#16211f9e;white-space:nowrap}.step-panel{padding:34px;min-height:520px}.step-type{color:#225d55;font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:800}.step-panel h3{margin:10px 0 20px;font-size:30px;line-height:1.15}.prose-block p,.response-step p,.quiz-step p{font-size:18px;line-height:1.8;color:#16211fc7}.bad-example{border-left:4px solid #b35b4d;padding-left:18px}.better-example{border-left:4px solid #225d55;padding-left:18px}.prompt-box{margin-top:18px;border:1px solid #d8ddd7;background:#f7f8f4;border-radius:8px;padding:16px;display:grid;gap:8px;color:#16211fb8;line-height:1.55}.video-frame{aspect-ratio:16 / 9;background:#111;border-radius:8px;overflow:hidden;margin-bottom:18px}.video-frame iframe{width:100%;height:100%;border:0}.resource-card{border:1px solid #d8ddd7;border-radius:8px;padding:18px;background:#f7f8f4}.text-area,.project-field textarea{width:100%;min-height:190px;border:1px solid #cfd7d0;border-radius:8px;padding:14px;outline:none;resize:vertical;color:#16211f;background:#fff;line-height:1.55}.text-area:focus,.project-field textarea:focus{border-color:#225d55;box-shadow:0 0 0 3px #225d551f}details{margin-top:14px;border:1px solid #d8ddd7;border-radius:8px;padding:14px;background:#f7f8f4}summary{cursor:pointer;font-weight:700}.quiz-options{display:grid;gap:10px;margin-top:20px}.quiz-option{border:1px solid #cfd7d0;background:#fff;color:#16211f;border-radius:8px;padding:14px;text-align:left}.quiz-option:hover{border-color:#225d55}.quiz-option.correct{border-color:#225d55;background:#e8f2ee}.quiz-option.incorrect{border-color:#b35b4d;background:#fff0ed}.answer-result{margin-top:16px;font-weight:800}.correct-text{color:#225d55}.incorrect-text{color:#b35b4d}.lesson-controls{display:flex;justify-content:space-between;gap:12px}.check-row{display:grid;grid-template-columns:18px 1fr;gap:9px;align-items:start;padding:8px 0;font-size:13px;color:#16211fb8}.check-row svg{color:#225d55;margin-top:1px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-field{display:grid;gap:8px;background:#fff;border:1px solid #d8ddd7;border-radius:8px;padding:16px}.project-field span,.rubric-grid span{color:#16211f9e;font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.rubric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.rubric-grid label{display:grid;gap:8px}.chart-panel{height:360px}@media(max-width:1200px){.app-shell{grid-template-columns:300px minmax(620px,1fr)}.right-panel{display:none}}body{min-width:0}.app-shell{grid-template-columns:minmax(260px,300px) minmax(0,1fr) minmax(280px,320px)}.app-shell.no-right-panel{grid-template-columns:minmax(260px,300px) minmax(0,1fr)}.main-content{max-width:1120px;width:100%;justify-self:center}.brand-block h1{font-size:16px;line-height:1.25}.sidebar-progress{margin:0 16px 14px;padding:14px;border:1px solid #d8ddd7;border-radius:8px;background:#f7f8f4}.sidebar-progress-copy{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px}.sidebar-progress-copy span{color:#16211f8c;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.sidebar-progress-copy strong{font-size:18px}.nav-button.active,.lesson-link.selected{background:#eef2ed;border-color:#b9c8be;box-shadow:inset 3px 0 #225d55}.hero-panel h2,.page-header h2,.lesson-header h2{max-width:820px}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.metric{min-height:96px}.unit-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.step-map{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:2px 0 4px}.top-nav,.lesson-list,.step-map{--rail-fade-size: 0px}.step-dot{width:30px;height:30px;flex:0 0 auto;border-radius:50%;border:1px solid #cfd7d0;background:#fff;color:#16211fa6;font-size:12px;font-weight:800}.step-dot.done{background:#e8f2ee;border-color:#9fc4b8;color:#225d55}.step-dot.current{background:#16211f;border-color:#16211f;color:#fff}.step-panel{min-height:460px;max-width:900px;width:100%}.prose-block,.response-step,.quiz-step,.video-step{max-width:760px}.save-note{margin-top:8px;color:#16211f85;font-size:12px}.lesson-controls{max-width:900px}.lesson-controls .primary-button{min-width:210px}.project-grid,.rubric-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}@media(max-width:1320px){.app-shell{grid-template-columns:280px minmax(0,1fr)}.right-panel{display:none}.main-content{max-width:980px}}@media(max-width:900px){.app-shell{display:block}.sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid #d8ddd7}.brand-block{padding:18px}.top-nav,.lesson-list{display:flex;overflow-x:auto;padding:12px 14px}.nav-button,.lesson-link{width:auto;min-width:220px}.unit-title,.sidebar-progress{margin-left:14px;margin-right:14px}.main-content{padding:20px}.hero-panel,.lesson-header,.two-col{display:grid;grid-template-columns:1fr}.hero-panel{min-height:auto}.hero-panel h2,.page-header h2,.lesson-header h2{font-size:28px}.step-panel{padding:24px;min-height:0}.lesson-controls{flex-direction:column-reverse}.lesson-controls .primary-button,.lesson-controls .secondary-button{width:100%}}:root{--ink: #16211f;--surface: #ffffff;--field: #f5f6ef;--line: #d8ddd7;--teal: #225d55;--teal-soft: #e8f2ee;--amber: #8a5a1e;--amber-soft: #fff6e8;--red: #9b4e45;--red-soft: #fff2f0}body{background:#f4f5f0}.sidebar{background:#fff}.brand-icon{background:var(--ink)}.hero-panel{border-color:var(--line);background:#fff}.hero-panel:before,.page-header:before{content:"";display:block;width:64px;height:3px;border-radius:999px;background:var(--teal);margin-bottom:18px}.metric,.lesson-card,.project-field{border-top:1px solid var(--line)}.lesson-card:before{content:none}.lesson-number{background:#e7ece6;color:var(--ink)}.sidebar-progress{background:#f7f8f4}.progress-track div{background:var(--teal)}.step-panel:before{background:var(--teal)}.step-type,.step-reading .step-type,.step-video .step-type,.step-concept .step-type,.step-example .step-type,.step-guided_practice .step-type,.step-quiz .step-type,.step-real_work_application .step-type,.step-reflection .step-type,.step-checkpoint .step-type,.step-learning_objectives .step-type,.step-why_this_matters .step-type,.step-framework .step-type,.step-vp_lens .step-type{color:var(--teal)}.prompt-box,.resource-card,details,.reading-card,.video-card,.time-card{border-color:var(--line);background:#f7f8f4}.bad-example{background:var(--red-soft);border-left-color:var(--red)}.better-example{background:var(--teal-soft);border-left-color:var(--teal)}.video-frame{background:#111;box-shadow:none}.quiz-option.correct{border-color:var(--teal);background:var(--teal-soft)}.quiz-option.incorrect{border-color:var(--red);background:var(--red-soft)}.step-dot.done{background:var(--teal-soft);border-color:#9fc4b8;color:var(--teal)}.step-dot.current{background:var(--ink);border-color:var(--ink);color:#fff}.step-learning_objectives .prose-block,.step-framework .prose-block,.step-vp_lens .prose-block{border-left-color:var(--teal);background:#f7f8f4}.rich-text{display:grid;gap:16px;color:#16211fc7}.rich-text p,.resource-card .rich-text p,details .rich-text p{margin:0;font-size:17px;line-height:1.7}.rich-text ul,.rich-text ol{margin:0;padding-left:1.35rem;display:grid;gap:8px;font-size:17px;line-height:1.6}.rich-text li::marker{color:var(--teal);font-weight:800}.prompt-box .rich-text{gap:8px}.prompt-box .rich-text p,.prompt-box .rich-text li,details .rich-text p,details .rich-text li{font-size:15px;line-height:1.55}.prose-block p,.response-step p,.quiz-step p,.resource-card p,details p{white-space:normal}.rich-text ul{list-style-type:disc;list-style-position:outside}.rich-text ol{list-style-type:decimal;list-style-position:outside}.rich-text li{display:list-item;padding-left:.15rem}.step-learning_objectives .prose-block,.step-framework .prose-block,.step-vp_lens .prose-block{border-left:0;border-radius:0;padding:0;background:transparent}.prose-block:not(.bad-example):not(.better-example){background:transparent}.course-build-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:24px;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 16px 40px #16211f0d;padding:22px}.course-build-copy{padding:8px 8px 8px 2px;display:grid;align-content:start;gap:12px}.course-build-copy h3,.continue-card h3{margin:0;font-size:20px;line-height:1.25}.course-build-copy p,.continue-card p{margin:0;color:#16211fa8;line-height:1.58;font-size:15px}.course-build-copy p{max-width:720px}.continue-card{border:1px solid #d8ddd7;border-radius:8px;background:#f7f8f4;padding:18px;display:grid;gap:18px;align-content:space-between}.continue-card .primary-button{width:-moz-fit-content;width:fit-content}@media(max-width:900px){.course-build-section{grid-template-columns:1fr;padding:18px}}.rich-meta{margin:0;display:grid;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.rich-meta-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;padding:12px 14px;border-bottom:1px solid var(--line)}.rich-meta-row:last-child{border-bottom:0}.rich-meta dt{color:#16211f85;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.rich-meta dd{margin:0;color:#16211fd1;font-size:16px;line-height:1.45}@media(max-width:760px){.rich-meta-row{grid-template-columns:1fr;gap:4px}}.step-panel,.prose-block,.response-step,.quiz-step,.video-step{max-width:none}.rich-text{width:100%}.rich-text>p,.rich-text>ul,.rich-text>ol{max-width:980px}.rich-meta,.prompt-box,.text-area,details{max-width:980px}.rich-meta-row{grid-template-columns:minmax(160px,240px) minmax(0,1fr)}.lesson-controls{max-width:none}.rich-numbered{display:grid;gap:12px;max-width:980px}.rich-numbered-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start}.rich-numbered-row span{color:var(--teal);font-size:17px;line-height:1.7;font-weight:800}.rich-numbered-row p{margin:0;color:#16211fc7;font-size:17px;line-height:1.7}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;min-width:0;overflow-x:hidden}.app-shell,.sidebar,.main-content,.right-panel,.lesson-layout,.step-panel,.response-step,.quiz-step,.video-step,.prose-block,.rich-text,.prompt-box,.resource-card,.rich-meta,.text-area,.project-field,.project-field textarea{min-width:0}.main-content{overflow:hidden}.step-panel{overflow:visible;padding:clamp(20px,3vw,34px)}.response-step{display:grid;gap:16px}.text-area,.project-field textarea{display:block;max-width:100%;min-height:clamp(180px,28vh,320px)}.lesson-controls{position:relative;z-index:1;width:100%;margin-top:18px;align-items:center}.lesson-controls .primary-button,.lesson-controls .secondary-button{max-width:100%;white-space:nowrap}.primary-button,.secondary-button,.quiz-option,.nav-button,.lesson-link{min-width:0}.rich-text>p,.rich-text>ul,.rich-text>ol,.rich-numbered,.rich-meta,.prompt-box,.text-area,details{max-width:min(980px,100%)}@media(max-width:1180px){.app-shell{grid-template-columns:minmax(240px,280px) minmax(0,1fr)}.right-panel{display:none}.main-content{max-width:none;padding:24px}.lesson-header{display:grid;grid-template-columns:minmax(0,1fr)}.step-count{justify-self:start}}@media(max-width:760px){.main-content{padding:14px}.page-stack,.lesson-layout{gap:14px}.hero-panel,.page-header,.lesson-header,.step-panel,.panel{padding:18px}.step-panel h3,.hero-panel h2,.page-header h2,.lesson-header h2{font-size:24px;line-height:1.15}.rich-text p,.rich-text li,.rich-numbered-row p,.prose-block p,.response-step p,.quiz-step p{font-size:16px;line-height:1.62}.rich-numbered-row{grid-template-columns:28px minmax(0,1fr)}.lesson-controls{gap:10px}.lesson-controls .primary-button,.lesson-controls .secondary-button{width:100%;min-width:0;white-space:normal;text-align:center}}@media(max-width:520px){.top-nav,.lesson-list{scroll-padding-left:12px}.nav-button,.lesson-link{min-width:190px}.lesson-card-top,.lesson-meta{align-items:flex-start;flex-direction:column}.rich-meta-row{grid-template-columns:minmax(0,1fr)}.text-area,.project-field textarea{min-height:220px}}@media(max-width:1180px){.app-shell{display:block}.sidebar{position:relative;top:auto;height:auto;max-height:none;overflow:visible;border-right:0;border-bottom:1px solid var(--line)}.brand-block{padding:16px 20px;align-items:center}.brand-icon{width:38px;height:38px}.brand-block .eyebrow{display:none}.top-nav,.lesson-list{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;padding:10px 20px}.top-nav,.lesson-list,.step-map{--rail-fade-size: 28px;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 var(--rail-fade-size),#000 calc(100% - var(--rail-fade-size)),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 var(--rail-fade-size),#000 calc(100% - var(--rail-fade-size)),transparent 100%)}.step-map{scrollbar-width:none;-ms-overflow-style:none}.top-nav::-webkit-scrollbar,.lesson-list::-webkit-scrollbar,.step-map::-webkit-scrollbar{display:none;width:0;height:0}.top-nav{border-top:1px solid var(--line)}.nav-button,.lesson-link{width:auto;flex:0 0 auto}.nav-button{min-width:-moz-max-content;min-width:max-content}.lesson-link{min-width:245px;max-width:280px;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center}.lesson-link-copy strong,.lesson-link-copy small{overflow:hidden;text-overflow:ellipsis}.lesson-link-copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.lesson-link-copy small{white-space:nowrap}.unit-title,.sidebar-progress{margin:10px 20px}.unit-title{padding:0}.sidebar-progress{padding:12px}}html,body,.main-content,.sidebar,.right-panel{scrollbar-width:none!important;scrollbar-gutter:auto!important;-ms-overflow-style:none!important}html::-webkit-scrollbar,body::-webkit-scrollbar,.main-content::-webkit-scrollbar,.sidebar::-webkit-scrollbar,.right-panel::-webkit-scrollbar,html::-webkit-scrollbar-track,body::-webkit-scrollbar-track,.main-content::-webkit-scrollbar-track,.sidebar::-webkit-scrollbar-track,.right-panel::-webkit-scrollbar-track,html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,.main-content::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb,.right-panel::-webkit-scrollbar-thumb{display:none!important;width:0!important;min-width:0!important;height:0!important;min-height:0!important;background:transparent!important}.scroll-overlay-thumb{position:fixed;z-index:80;width:4px;border-radius:999px;background:#16211f4d;pointer-events:none;opacity:1;transform:translateZ(0);box-shadow:0 0 0 1px #f4f5f073}@media(min-width:901px){.app-shell{display:grid;height:100vh;min-height:100vh;overflow:hidden}.sidebar,.right-panel{position:relative;top:auto;height:100vh;max-height:100vh;overflow-y:auto;overflow-x:hidden}.sidebar{display:flex;flex-direction:column}.main-content{height:100vh;overflow-y:auto;overflow-x:hidden}.top-nav,.lesson-list{display:grid;overflow:visible}.top-nav{border-top:0}.nav-button,.lesson-link{width:100%;min-width:0;max-width:none}.lesson-link{grid-template-columns:30px minmax(0,1fr) 18px}.lesson-link-copy strong{display:block;-webkit-line-clamp:unset;-webkit-box-orient:initial}.unit-title{margin:0;padding:18px 26px 10px}.sidebar-progress{margin:0 16px 14px}.lesson-list{padding-bottom:16px}.account-card{margin-top:auto}}@media(min-width:901px)and (max-width:1320px){.app-shell{grid-template-columns:minmax(260px,300px) minmax(0,1fr)}.right-panel{display:none}}@media(min-width:1321px){.app-shell{grid-template-columns:minmax(260px,300px) minmax(0,1fr) minmax(280px,320px)}.right-panel{display:block}}.video-source-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.source-link{display:inline-flex;align-items:center;gap:6px;color:var(--teal);font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}.source-link:hover{text-decoration:underline}@media(max-width:640px){.video-source-row{align-items:flex-start;flex-direction:column}}.inline-link{color:var(--teal);font-weight:700;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.video-frame-wrap{display:grid;gap:10px;margin-bottom:18px}.video-frame-wrap .video-frame{margin-bottom:0}.video-expand-button,.video-modal-close{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:800}.video-expand-button{width:-moz-fit-content;width:fit-content;min-height:38px;padding:0 12px}.video-expand-button:hover,.video-modal-close:hover{background:#f4f5f0;border-color:#b9c8be}.video-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;padding:18px;background:#16211ff0}.video-modal-topbar{display:flex;justify-content:space-between;align-items:center;gap:14px;color:#fff}.video-modal-close{width:38px;height:38px;flex:0 0 auto}.video-modal-frame{width:min(1400px,100%);align-self:center;justify-self:center;aspect-ratio:16 / 9;background:#000;border-radius:8px;overflow:hidden}.video-modal-frame iframe{width:100%;height:100%;border:0}.video-actions-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.video-shortcuts{color:#16211f85;font-size:13px;line-height:1.4}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px;background:#f4f5f0}.auth-panel{width:min(100%,520px);display:grid;gap:26px;padding:32px;border:1px solid #d8ddd7;border-radius:8px;background:#fff;box-shadow:0 18px 48px #16211f14}@media(max-width:520px){.auth-shell{padding:10px;align-items:start}.auth-panel{gap:22px;padding:18px}}.auth-panel h1{margin:8px 0 10px;font-size:32px;line-height:1.1}.auth-panel p{margin:0;color:#16211fad;line-height:1.6}.auth-form{display:grid;gap:14px}.auth-form label{display:grid;gap:7px}.auth-form label span,.account-card span{color:#16211f8f;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.auth-form input{min-height:44px;border:1px solid #cfd7d0;border-radius:7px;padding:0 12px;color:#16211f;background:#fff;outline:none}.auth-form input:focus{border-color:#225d55;box-shadow:0 0 0 3px #225d551f}.auth-message{padding:12px;border:1px solid #d8ddd7;border-radius:7px;background:#f7f8f4;font-size:14px}.link-button{border:0;background:transparent;color:#225d55;font-weight:800;text-align:center;padding:8px}.account-card{margin:0 16px 14px;padding:12px;display:grid;gap:7px;border:1px solid #d8ddd7;border-radius:8px;background:#f7f8f4}.account-card strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.account-button{min-height:34px;border:1px solid #cfd7d0;border-radius:7px;background:#fff;color:#16211f;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:800}.google-auth-block{display:grid;gap:10px;min-width:0}.google-button-host{--google-button-scale: 1;width:100%;max-width:100%;min-width:0;height:calc(48px * var(--google-button-scale));display:flex;align-items:flex-start;justify-content:center;overflow:visible;justify-self:stretch}.google-button-host>div{display:block!important;width:400px!important;max-width:none!important;transform:scale(var(--google-button-scale));transform-origin:top center;overflow:visible!important}.google-button-host iframe{display:block!important}.google-config-note{border:1px solid #d8ddd7;border-radius:7px;padding:12px;background:#f7f8f4;color:#16211fa8;font-size:13px;line-height:1.45}.google-config-note code{font-size:12px;color:#16211f}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;color:#16211f75;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#d8ddd7}
