.agent-overview{max-width:720px;margin:0 auto 48px;padding-bottom:32px;color:#18382d}.agent-overview-lead{display:block}.agent-overview-intro h1{font-size:40px;font-weight:500;letter-spacing:-.025em;line-height:1.15;max-width:25ch;text-wrap:balance}.agent-overview-intro h1 span{color:#116246}.agent-overview-definition{font-size:17px;line-height:1.75;margin-top:24px;max-width:65ch}.agent-overview-purpose{color:#52665d;font-size:15px;line-height:1.75;margin-top:16px;max-width:65ch}.agent-overview-example{font-size:15px;line-height:1.75;margin-top:20px;max-width:65ch}.agent-overview-actions{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;margin-top:28px}.agent-overview-actions .workshop-primary{min-height:46px;padding:13px 18px}.agent-overview-actions .workshop-link{min-height:44px}.agent-overview-exploration{margin-top:40px;border-top:1px solid #b9cdc0;border-bottom:1px solid #b9cdc0}.agent-overview-exploration>summary{padding:20px 0;min-height:44px;cursor:pointer;font-size:16px;font-weight:500;line-height:1.5}.agent-overview-disclosure-note{display:block;margin:5px 0 0 17px;font-size:13px;font-weight:400;color:#52665d}.agent-overview-parts{margin-top:8px}.agent-part-picker{display:flex;flex-wrap:wrap;gap:4px 16px;padding-bottom:16px;border-bottom:1px solid #b9cdc0}.agent-part-picker button{min-height:44px;padding:8px 0;border:0;border-bottom:2px solid transparent;color:#52665d;font-size:13px;line-height:1.5;text-align:left;background:transparent}.agent-part-picker button[aria-pressed=true]{color:#116246;border-bottom-color:#116246;font-weight:600}body[data-view=learn] .agent-part-picker button:hover{color:#116246;background:transparent;border-bottom-color:#116246}.agent-part-detail{padding-top:24px;scroll-margin-top:130px}.agent-part-detail h3{font-size:23px;font-weight:500;line-height:1.35;letter-spacing:-.02em;margin-bottom:12px;scroll-margin-top:130px}.agent-part-detail p{font-size:15px;line-height:1.8;max-width:68ch}.agent-part-example h4{font-size:13px;font-weight:600;margin:22px 0 6px}.agent-part-example .agent-part-boundary{color:#52665d}.agent-part-actions{display:flex;flex-wrap:wrap;gap:0 24px;margin-top:18px}.agent-part-detail button{min-height:44px}.agent-map-toggle{min-height:44px;margin-top:20px}.agent-overview-figure{margin:20px 0 0;min-width:0}.agent-map-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.agent-map-heading h2{font-size:16px;font-weight:500}.agent-map-heading button{min-height:44px;white-space:nowrap}#agent-overview-scene{height:300px;width:100%;border:1px solid #b9cdc0;border-radius:10px;overflow:hidden}.agent-overview-figure figcaption{font-size:12px;color:#52665d;line-height:1.65;margin-top:12px}#overview-fallback{padding:24px 0;line-height:1.7}#overview-map-loading{font-size:13px;color:#52665d;margin-top:12px}.agent-overview-sources{margin:28px 0 24px;padding-top:24px;border-top:1px solid #b9cdc0;color:#52665d;font-size:12px;max-width:85ch}.agent-overview-sources h2{font-size:13px;font-weight:500;color:#18382d}.agent-overview-sources p{margin-top:12px;line-height:1.8}.agent-overview-sources ul{padding-left:18px;margin-top:12px}.agent-overview-sources li{margin:10px 0;line-height:1.65}.agent-overview :is(button,summary,a):focus-visible{outline:2px solid #116246;outline-offset:4px}#workshop-entry{scroll-margin-top:125px;outline-offset:6px}.workshop-welcome h2{font-size:clamp(35px,4vw,56px);font-weight:500;line-height:1.08;letter-spacing:-.035em;max-width:14ch}@media(max-width:760px){.agent-overview{margin-bottom:32px;padding-bottom:16px}.agent-overview-intro h1{font-size:32px;max-width:25ch}.agent-overview-definition{font-size:16px;margin-top:20px}.agent-overview-purpose,.agent-overview-example{font-size:14px}.agent-overview-actions{margin-top:24px;gap:4px 20px}.agent-overview-actions .workshop-primary{font-size:13px}.agent-overview-exploration{margin-top:32px}.agent-part-picker{gap:4px 18px}.agent-part-picker button{font-size:13px}.agent-part-detail h3{font-size:21px;scroll-margin-top:140px}.agent-part-detail p{font-size:14px}.agent-map-heading h2{font-size:15px}#agent-overview-scene{height:250px}.workshop-welcome h2{font-size:36px}}@font-face{font-family:Space Grotesk;src:url(../fonts/space-grotesk.ttf) format("truetype");font-weight:300 700;font-display:swap}@font-face{font-family:Manrope;src:url(../fonts/manrope.ttf) format("truetype");font-weight:200 800;font-display:swap}:root{font-family:Manrope,sans-serif;color:#e4f5ed;background:#080f14;font-synthesis:none;--bg:#080f14;--panel:#101b22;--accent:#34d399;--text:#e4f5ed;--muted:#a1b7c3;--line:#263842;--amber:#efbd72;color-scheme:dark;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.45}a{color:var(--accent);text-decoration:none;text-underline-offset:4px}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:#217857;color:#fff}input{caret-color:var(--accent)}*{scrollbar-width:thin;scrollbar-color:#38515b transparent}svg{flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin:0}h1,h2,h3,button,summary{font-family:Space Grotesk,sans-serif}h1,h2,h3{text-wrap:balance}p{line-height:1.8}button{border:0;background:none}button:hover{color:#fff}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;background:var(--accent);color:var(--bg);padding:14px;z-index:50}.skip-link:focus{top:10px}.topbar{height:80px;display:flex;align-items:center;padding:0 34px;gap:24px;border-bottom:1px solid var(--line);background:#0b131a}.brand{display:flex;flex-shrink:0}.brand img{width:145px;height:auto}.header-divider{width:1px;height:22px;background:var(--line)}.academy-label{font-size:12px;color:var(--muted)}.mode-nav{display:flex;height:100%;gap:5px;margin:auto}.mode-nav button{display:flex;gap:9px;align-items:center;padding:0 20px;font-size:13px;position:relative;color:var(--muted)}.mode-nav button.active{color:var(--accent)}.mode-nav button.active:after{content:"";position:absolute;bottom:0;left:20px;right:20px;height:2px;background:var(--accent)}.local-badge{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:9px}.local-badge>span{width:6px;height:6px;border-radius:50%;background:var(--accent)}.app-layout{display:grid;grid-template-columns:252px minmax(0,1fr);max-width:1920px;margin:auto}.sidebar{border-right:1px solid var(--line);padding:31px 17px 22px;display:flex;flex-direction:column;gap:28px;height:calc(100dvh - 80px);min-height:640px;position:sticky;top:0;background:#0b131a}.sidebar details{min-height:0;overflow:auto}.sidebar summary{font-size:15px;display:flex;justify-content:space-between;align-items:center;cursor:default;padding:0 9px;list-style:none}.sidebar summary::-webkit-details-marker{display:none}.sidebar summary>span{font-family:Manrope,sans-serif;font-size:10px;color:var(--muted)}.search-box{border:1px solid var(--line);display:flex;align-items:center;gap:9px;padding:10px 11px;border-radius:6px;color:var(--muted)}.sidebar .search-box{margin:21px 6px 18px}.search-box input{width:100%;min-width:0;border:0;outline:none;background:transparent;color:var(--text);font-size:11px}.search-box:focus-within{border-color:var(--accent);outline:1px solid var(--accent)}input::placeholder{color:var(--muted);opacity:1}.curriculum-group{margin:20px 0 0}.curriculum-group h3{color:#a9c0c9;font-family:Manrope,sans-serif;font-size:10px;font-weight:600;padding:0 10px;margin-bottom:9px}.lesson-link{width:100%;display:flex;gap:10px;align-items:center;text-align:left;font-size:11px;padding:9px 10px;border-radius:5px;color:#b8cbd1;line-height:1.35;min-height:35px}.lesson-link:hover{background:#14232c}.lesson-link.active{background:#15372e;color:#b8f8da}.lesson-number{font-size:10px;color:#8fa6b1;font-variant-numeric:tabular-nums;min-width:16px}.lesson-link.active .lesson-number{color:var(--accent)}.lesson-dot{display:flex;margin-left:auto;color:var(--accent);width:13px;flex-shrink:0}.progress-panel{margin-top:auto;border-top:1px solid var(--line);padding:20px 9px 0}.progress-panel>div{display:flex;justify-content:space-between;font-size:11px}.progress-panel strong{font-weight:600}.progress-panel>div>span{font-variant-numeric:tabular-nums;color:var(--accent)}progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;width:100%;height:4px;background:#263943;border-radius:4px;overflow:hidden}progress::-webkit-progress-bar{background:#263943;border-radius:4px}progress::-webkit-progress-value{background:var(--accent);border-radius:4px}progress::-moz-progress-bar{background:var(--accent)}.progress-panel progress{margin:14px 0 7px}.progress-panel p{font-size:10px;color:var(--muted);line-height:1.7}.text-button{padding:0;color:var(--accent);display:inline-flex;align-items:center;gap:8px;font-size:12px;text-align:left;min-height:35px}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.progress-panel .text-button{font-size:10px;margin-top:8px}.progress-panel .quiet{display:block;color:var(--muted);margin-top:0;font-size:9px;min-height:28px}#search-empty{font-size:12px;padding:12px;color:var(--muted)}main{min-width:0;padding:42px 42px 0}.intro{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:31px}.intro h1{font-size:clamp(32px,3.7vw,61px);font-weight:500;letter-spacing:-.04em;line-height:1.15}.title-period{color:var(--accent)}.intro p{color:var(--muted);margin-top:15px;font-size:13px;line-height:1.75}.course-facts{display:flex;flex-direction:column;gap:9px;text-align:right;font-size:10px;color:var(--muted);padding-bottom:4px;flex-shrink:0}.course-facts strong{font-weight:500;color:var(--text);font-size:12px}.course-facts i,.page-footer i{font-style:normal;color:#526974;margin:0 9px}.observatory{display:grid;grid-template-columns:minmax(0,1fr) 287px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#0b151c}.scene-column{position:relative;min-width:0;background:radial-gradient(ellipse at 47% 48%,#153129,#0b1920 49%,#0b151c 76%)}.scene-topline{padding:20px 23px;display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:11px;position:relative;z-index:2}.scene-topline>span:first-child{display:flex;gap:9px;align-items:center;color:#c3d6df}.scene-topline>span:last-child{color:#8fa8b5;font-size:9px}#scene-host{height:425px;width:100%;position:relative;overflow:hidden}#scene-host canvas{display:block;position:absolute;top:0;right:0;bottom:0;left:0;touch-action:pan-y}#scene-loading{height:100%;display:grid;place-items:center;color:var(--muted);font-size:13px}.scene-labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.layer-label{pointer-events:auto;position:absolute;left:16px;display:flex;align-items:center;gap:7px;padding:7px 10px;background:#0b151ce8;color:#b5cad3;font-family:Manrope,sans-serif;font-size:9px;border:1px solid #2a424b;border-radius:5px;min-height:29px}.layer-label:after{content:"";width:20px;height:1px;background:#3a5961;position:absolute;left:100%;top:50%}.layer-label.selected{background:#123b2e;border-color:#3d9d76;color:#b6f7d7}.layer-dot{width:5px;height:5px;display:block;background:var(--layer-color);border-radius:50%}.scene-bottom{display:flex;align-items:center;justify-content:space-between;padding:13px 21px;border-top:1px solid #23353d;position:relative;gap:12px}.orbit-hint{font-size:9px;color:#a0b9c5}.scene-tools{display:flex;gap:6px}.scene-tools button{height:30px;width:31px;border:1px solid #314751;border-radius:5px;display:grid;place-items:center;color:#b8cbd2;background:#10212a}.scene-tools button:hover{background:#204333}.component-inspector{border-left:1px solid var(--line);padding:29px 26px 20px;background:#101c23;display:flex}#inspector-content{display:flex;flex-direction:column;width:100%}.inspector-symbol{color:var(--component-color);height:45px;width:45px;border:1px solid #34534f;border-radius:11px;display:grid;place-items:center;margin-bottom:22px}.component-name{color:var(--accent);font-size:11px;margin-bottom:10px}.component-inspector h2{font-size:22px;line-height:1.4;letter-spacing:-.025em;font-weight:500}.component-inspector p{font-size:11px;line-height:1.9;color:var(--muted);margin-top:17px}.inspector-concepts{display:flex;flex-wrap:wrap;gap:7px;margin:23px 0 13px}.inspector-concepts>span{font-size:9px;border:1px solid #31454d;padding:5px 8px;border-radius:4px;color:#b4cdd6}.inspector-foot{font-size:10px;color:var(--accent);padding-top:19px;margin-top:auto;display:flex;justify-content:space-between;border-top:1px solid var(--line)}.inspector-foot>span{color:var(--muted);font-size:9px}.component-inspector .text-button{margin-bottom:23px}.reader{margin-top:37px;scroll-margin-top:24px;outline:none!important}.reader-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px}.reader-heading>div{display:flex;align-items:center;gap:20px}#lesson-position{font-size:10px;color:var(--muted);white-space:nowrap}#lesson-title{font-size:24px;font-weight:500;letter-spacing:-.02em}.level-badge{padding:6px 9px;border:1px solid #365249;border-radius:5px;font-size:10px;color:#b7d7c9}.lesson-tabs{display:flex;gap:32px;border-bottom:1px solid var(--line)}.lesson-tabs button{font-size:12px;padding:0 0 15px;position:relative;color:var(--muted)}.lesson-tabs button[aria-selected=true]{color:var(--accent)}.lesson-tabs button[aria-selected=true]:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}#check-indicator{font-size:9px;color:#b1c5ce;margin-left:5px}#lesson-panel{padding:28px 0 0}.lesson-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,1fr);gap:45px}.prose{max-width:72ch}.prose p{font-size:13px;color:#b9cdd6;margin-bottom:20px}.prose h3,.lesson-notes h3{font-size:15px;font-weight:500;margin-bottom:12px}.prose section+section{margin-top:30px}.prose .analogy{padding-top:21px;border-top:1px solid var(--line);margin-top:29px}.analogy p{color:#cfe9dc}.lesson-notes{padding:0 0 0 28px;border-left:1px solid var(--line)}.concept-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.concept-tags span{background:#142831;border:1px solid #2a414b;border-radius:5px;padding:6px 9px;font-size:10px;color:#bfd2db}.lesson-notes p{font-size:12px;color:var(--muted);line-height:1.85;margin-bottom:16px}.lesson-notes pre{padding:20px;background:#0f2028;border:1px solid #2b414b;border-radius:8px;color:#c0e3d5;font-size:10px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.lesson-notes .example-note{font-size:10px}.lesson-sources{display:flex;flex-wrap:wrap;gap:12px 22px;border-top:1px solid var(--line);padding:18px 0;margin-top:23px;font-size:10px;align-items:center}.lesson-sources>span{color:var(--muted)}.lesson-sources a{display:inline-flex;align-items:center;gap:6px}.lesson-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding-top:20px;margin-top:9px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:12px;border-radius:6px;min-height:39px;padding:11px 16px}.primary{background:var(--accent);color:#052518;font-weight:600}.primary:hover{background:#6fe4b8;color:#052518}.secondary{border:1px solid #39515b;color:#c0d3db;background:#11212b}.secondary:hover{background:#1b3540}#lesson-status{font-size:10px;color:var(--muted)}.quiz-intro{font-size:12px;color:var(--muted);margin-bottom:25px}.question{padding:0;border:0;margin:0 0 30px;min-width:0}.question legend{font-size:15px;font-weight:600;line-height:1.7;margin-bottom:15px}.question legend>span{color:var(--accent);margin-right:7px}.answer-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.answer{display:flex;text-align:left;align-items:center;gap:12px;padding:17px 14px;background:#10212a;border:1px solid #324c57;border-radius:8px;font-size:12px;line-height:1.6;min-height:84px}.answer-letter{border:1px solid #45616d;border-radius:50%;height:23px;width:23px;display:grid;place-items:center;flex-shrink:0;font-size:10px;color:var(--muted)}.answer:hover{border-color:#7ca897}.answer.correct{background:#133b2e;border-color:#5ccd98}.answer.incorrect{background:#352820;border-color:var(--amber)}.answer.correct .answer-letter{color:var(--accent);border-color:var(--accent)}.answer-feedback{color:var(--amber);font-size:12px;min-height:23px;margin-top:12px}.answer-feedback.correct{color:var(--accent)}.completion-rule{font-size:11px;color:var(--muted);margin-bottom:22px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;margin:15px 0 28px}.section-heading h2{font-size:28px;letter-spacing:-.025em;font-weight:500}.section-heading p{color:var(--muted);font-size:12px;margin-top:10px}.simulation-badge{border:1px solid #6e5636;color:var(--amber);font-size:10px;padding:7px 10px;border-radius:5px;white-space:nowrap}.scenario-picker{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--line);margin-bottom:25px}.scenario-picker button{text-align:left;line-height:1.6;padding:14px 13px 20px;border-bottom:2px solid transparent;font-size:11px;color:var(--muted);position:relative}.scenario-picker button>span{display:block;font-size:10px;margin-bottom:8px;color:#a2c6b6}.scenario-picker button.active{background:#133027;color:#b7f3d6;border-color:var(--accent)}.scenario-complete{position:absolute;right:9px;top:13px;color:var(--accent)}.lab-grid{display:grid;grid-template-columns:330px minmax(0,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden}.lab-controls{padding:26px;background:#111e26;border-right:1px solid var(--line)}.lab-controls h3{font-size:20px;font-weight:500}.lab-controls>p{font-size:12px;color:var(--muted);margin-top:13px}.lab-controls .concept-note{color:#bddbcd;font-size:10px;padding-top:12px;border-top:1px solid var(--line);margin-top:17px}.lab-controls fieldset{border:0;padding:0;margin:28px 0 20px;min-width:0}.lab-controls legend{font-size:13px;font-weight:600;margin-bottom:10px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:42px;font-size:11px;cursor:pointer}.switch-row input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;width:30px;height:18px;border-radius:15px;background:#43515a;border:1px solid #607982;flex-shrink:0;cursor:pointer}.switch-row input:after{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:#d2dfe1}.switch-row input:checked{background:#20845f;border-color:#6bdba9}.switch-row input:checked:after{left:14px;background:#d4fce4}.range-row{display:flex;justify-content:space-between;gap:12px;font-size:11px;margin:20px 0 10px}.range-row output{color:var(--accent);font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:var(--accent);height:20px;cursor:pointer}.run-actions{display:flex;flex-wrap:wrap;gap:8px}.run-actions .primary{width:100%}.run-actions .secondary{flex:1}.lab-controls .lab-disclaimer{font-size:10px;line-height:1.8;margin-top:23px}.trace-panel{padding:25px 27px;min-width:0;background:#0c171e}.trace-header{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line)}.trace-header h3{font-size:14px;font-weight:500}.trace-header>span{color:var(--accent);font-size:10px}#trace-events{padding:0;list-style:none;margin:5px 0 22px}.trace-empty{color:var(--muted);padding:45px 20px;text-align:center;font-size:12px;line-height:1.9}.trace-event{display:grid;grid-template-columns:23px 1fr auto;gap:11px;padding:16px 0;border-bottom:1px solid #20323c}.trace-sequence{color:#87a99c;font-family:ui-monospace,monospace;font-size:10px;line-height:20px}.trace-event strong{font-size:12px;line-height:1.6;font-weight:600}.trace-event p{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.8}.trace-state{font-size:9px;padding-top:4px;color:#9ecfb7}.trace-event.fail .trace-state,.trace-event.warn .trace-state{color:var(--amber)}.outcome{padding:17px 19px;border:1px solid #477663;border-radius:8px;background:#102d24}.outcome.failed{border-color:#795f3b;background:#30271d}.outcome strong{font-size:13px;line-height:1.7;display:block}.outcome p{font-size:12px;color:#c2d8ce;margin:9px 0}.outcome.failed p{color:#decdb2}.outcome small{font-size:10px;color:var(--muted);line-height:1.8;display:block}.configuration-note{font-size:12px;color:var(--amber)}#related-lesson{margin-top:15px}.reliability-experiment{margin-top:32px;padding:28px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1.15fr .8fr 1fr;gap:35px}.reliability-experiment h3{font-size:21px;font-weight:500;line-height:1.45}.reliability-experiment p{font-size:11px;color:var(--muted);margin-top:12px}.reliability-controls label{display:flex;justify-content:space-between;font-size:10px;margin-bottom:7px}.reliability-controls label:not(:first-child){margin-top:17px}.reliability-controls output{color:var(--accent)}.probabilities>div+div{margin-top:20px}.probabilities span{font-size:10px;color:var(--muted);display:block}.probabilities strong{font-family:Space Grotesk,sans-serif;font-size:26px;font-weight:500;display:block;margin:4px 0;color:var(--accent)}.probabilities>div:last-child strong{color:var(--amber)}#pass-all-bar::-webkit-progress-value{background:var(--amber)}#pass-all-bar::-moz-progress-bar{background:var(--amber)}.reference-search{max-width:420px;margin:0 0 27px}.reference-search input{font-size:13px}#concept-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}#concept-index button{display:flex;flex-direction:column;gap:6px;text-align:left;border-bottom:1px solid var(--line);padding:16px 0;min-width:0}#concept-index button strong{font-size:12px;font-weight:500}#concept-index button>span{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:5px;line-height:1.6}#concept-index button:hover strong{color:var(--accent)}#concept-empty{font-size:13px;color:var(--muted)}.sources-section{padding-top:50px}.sources-section h2{font-size:29px;font-weight:500}.sources-section>p{color:var(--muted);font-size:12px;max-width:75ch;margin:16px 0 25px}.source-list{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.source-list a{padding:18px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.source-list strong{font-size:12px;font-weight:500;display:flex;justify-content:space-between;gap:10px}.source-list span{font-size:11px;color:var(--muted);line-height:1.7}.scope-note{margin:36px 0;padding:25px 0;border-top:1px solid var(--line);max-width:78ch}.scope-note h3{font-size:19px;font-weight:500}.scope-note p{font-size:12px;color:var(--muted);margin-top:12px}#completion{display:flex;justify-content:space-between;align-items:center;gap:32px;background:#12362a;border:1px solid #448468;border-radius:12px;padding:30px;margin-top:40px}#completion h2{font-size:29px;margin:10px 0}#completion p{font-size:12px;color:#c7e6d6;max-width:65ch}#completion button{white-space:nowrap}.page-footer{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#8eabb8;border-top:1px solid var(--line);padding:25px 0;margin-top:45px}.notification{position:fixed;bottom:23px;left:50%;transform:translate(-50%);max-width:min(540px,90vw);padding:17px 23px;border:1px solid #63927c;border-radius:8px;background:#15392d;color:#e3f9eb;font-size:12px;line-height:1.7;z-index:30;box-shadow:0 8px 30px #0006}#scene-fallback{min-height:425px;padding:35px 24px}#scene-fallback h2{font-size:25px;font-weight:500}#scene-fallback p{font-size:12px;color:var(--muted);margin:18px 0}.fallback-components{display:flex;flex-wrap:wrap;gap:10px}.fallback-components button{font-size:11px}@media(min-width:1650px){#scene-host{height:490px}.component-inspector{padding:34px}.observatory{grid-template-columns:minmax(0,1fr) 340px}.component-inspector h2{font-size:26px}.component-inspector p{font-size:13px}.layer-label{font-size:11px;left:25px}.layer-label:after{width:45px}.app-layout{grid-template-columns:275px minmax(0,1fr)}.sidebar{padding-left:22px;padding-right:22px}.lesson-link{font-size:12px}.prose p{font-size:14px}}@media(max-width:1200px){.topbar{padding:0 22px;gap:16px}.local-badge{display:none}.academy-label{font-size:11px}.app-layout{grid-template-columns:224px minmax(0,1fr)}main{padding:30px 25px 0}.sidebar{padding-left:10px;padding-right:10px}.course-facts{display:none}.observatory{grid-template-columns:minmax(0,1fr) 240px}.component-inspector{padding:23px 20px}.component-inspector h2{font-size:20px}#scene-host{height:400px}.scene-topline{padding:17px 15px;font-size:10px}.scene-topline>span:last-child{display:none}.layer-label{font-size:8px;left:9px;padding:6px}.layer-label:after{width:8px}.orbit-hint{font-size:8px}.scene-bottom{padding:12px}.lesson-columns{gap:25px;grid-template-columns:minmax(0,1.2fr) minmax(200px,1fr)}.lesson-notes{padding-left:23px}.lab-grid{grid-template-columns:280px minmax(0,1fr)}.lab-controls,.trace-panel{padding:22px}.scenario-picker{grid-template-columns:repeat(3,1fr)}.trace-event{grid-template-columns:20px 1fr}.trace-state{grid-column:2}.reader-heading>div{gap:13px}#lesson-title{font-size:21px}.reliability-experiment{gap:23px}}@media(max-width:1000px){.observatory{grid-template-columns:1fr}.component-inspector{border-left:0;border-top:1px solid var(--line);padding:22px}.component-inspector h2{font-size:22px;max-width:40ch}.component-inspector p{max-width:70ch}.inspector-symbol,.inspector-concepts,.inspector-foot{display:none}.component-inspector .text-button{margin:10px 0 0}.component-inspector p{margin-top:10px}.scene-topline>span:last-child{display:block}#scene-host{height:400px}.layer-label{font-size:10px;left:18px}.layer-label:after{width:25px}.reader-heading>div{display:block}#lesson-position{display:block;margin-bottom:9px}.lesson-columns{grid-template-columns:1fr}.lesson-notes{padding:23px 0 0;border-left:0;border-top:1px solid var(--line)}.answer-options{grid-template-columns:1fr}.answer{min-height:57px}.lab-grid{grid-template-columns:1fr}.lab-controls{border-right:0;border-bottom:1px solid var(--line)}.lab-controls fieldset{max-width:480px}.run-actions .primary{width:auto}.run-actions .secondary{flex:0}.reliability-experiment{grid-template-columns:1fr 1fr}.reliability-experiment>div:first-child{grid-column:1/-1}#concept-index{grid-template-columns:1fr 1fr}.source-list{grid-template-columns:1fr}.page-footer{flex-direction:column;gap:10px}}@media(max-width:760px){.topbar{height:auto;min-height:112px;flex-wrap:wrap;padding:18px 20px 0;gap:13px}.brand img{width:126px}.header-divider{height:17px}.academy-label{font-size:11px}.mode-nav{order:4;width:100%;justify-content:space-between;height:47px;margin:0;gap:0}.mode-nav button{padding:0 13px;font-size:12px;gap:7px}.mode-nav button.active:after{left:12px;right:12px}.app-layout{display:block}.sidebar{position:static;height:auto;min-height:0;border-right:0;border-bottom:1px solid var(--line);padding:0;gap:0}.sidebar summary{padding:18px 21px;font-size:13px;cursor:pointer}.sidebar summary:after{content:"+";color:var(--accent);font-size:20px;margin-left:15px}.sidebar summary>span{margin-left:auto}.sidebar details[open] summary:after{content:"−"}.sidebar-inner{padding:0 14px 22px;max-height:450px;overflow:auto}.sidebar .search-box{margin-top:0}.lesson-link{font-size:12px;min-height:41px}.curriculum-group h3{font-size:11px}.progress-panel{padding:14px 22px;display:grid;grid-template-columns:1fr auto;gap:5px 20px;align-items:center;background:#0e1b22;border-top:1px solid var(--line);margin:0}.progress-panel>div{gap:20px;font-size:10px}.progress-panel progress{grid-column:1;grid-row:2;margin:5px 0}.progress-panel p{grid-row:3;grid-column:1/-1;font-size:9px}.progress-panel .text-button{margin:0;grid-column:2;grid-row:1/3;min-height:30px;font-size:9px}.progress-panel .quiet{grid-row:3;grid-column:2;font-size:8px;min-height:20px;background:#0e1b22;padding-left:10px;justify-self:end}.progress-panel p{padding-right:67px}main{padding:28px 20px 0}.intro{margin-bottom:24px}.intro h1{font-size:clamp(30px,6.6vw,46px)}.intro p{font-size:12px;margin-top:13px}.desktop-break{display:none}.observatory{border-radius:9px}.scene-topline{font-size:10px;padding:17px 14px}.scene-topline>span:last-child{font-size:8px}#scene-host{height:365px}.layer-label{font-size:8px;left:9px;padding:7px;min-height:30px}.layer-label:after{width:8px}.layer-dot{width:4px;height:4px}.scene-bottom{gap:8px;padding:12px}.orbit-hint{max-width:160px;line-height:1.7;font-size:8px}.scene-tools button{height:34px;width:34px}.component-inspector{padding:23px 21px}.component-inspector h2{font-size:22px}.component-inspector p{font-size:11px}.component-name{font-size:10px}.reader{margin-top:28px}.reader-heading{gap:12px;margin-bottom:22px}#lesson-title{font-size:22px}#lesson-position{font-size:9px}.level-badge{font-size:9px;white-space:nowrap}.lesson-tabs{gap:21px}.lesson-tabs button{font-size:10px;padding-bottom:13px}#check-indicator{font-size:8px;margin-left:2px}.prose p{font-size:12px;line-height:1.95}.prose h3,.lesson-notes h3{font-size:16px}.lesson-sources{font-size:10px;gap:12px}.lesson-sources>span{width:100%}.lesson-footer{flex-wrap:wrap;gap:12px}.lesson-footer button{font-size:10px;padding:10px 12px}.lesson-footer>span{order:3;width:100%;text-align:center;font-size:9px}.question legend{font-size:13px}.answer{font-size:12px;padding:14px}.answer-feedback{font-size:11px}.section-heading{display:block;margin-top:6px}.section-heading h2{font-size:27px}.section-heading p{font-size:12px}.simulation-badge{display:inline-block;margin-top:16px}.scenario-picker{grid-template-columns:repeat(2,1fr);gap:1px}.scenario-picker button{font-size:11px;padding:13px 12px;min-height:80px}.scenario-picker button>span{margin-bottom:5px}.lab-controls{padding:23px 20px}.lab-controls>p{font-size:12px}.switch-row{font-size:12px;min-height:46px}.switch-row input{width:34px;height:21px}.switch-row input:after{width:15px;height:15px}.switch-row input:checked:after{left:15px}.range-row{font-size:12px}.run-actions .primary{flex:1;min-width:150px}.run-actions .secondary{flex:0}.trace-panel{padding:22px 18px}.trace-header h3{font-size:13px}.trace-event p{font-size:11px}.trace-event strong{font-size:12px}.reliability-experiment{gap:25px 20px}.reliability-controls label,.probabilities span{font-size:9px;line-height:1.6}.probabilities strong{font-size:24px}#concept-index{grid-template-columns:1fr;gap:0}#concept-index button{min-height:69px}#concept-index button strong{font-size:13px}#concept-index button>span{font-size:11px}.sources-section{padding-top:35px}.sources-section h2{font-size:27px}.source-list strong{font-size:12px}.source-list span{font-size:11px}#completion{display:block;padding:22px}#completion h2{font-size:26px}#completion button{margin-top:18px}.page-footer{font-size:9px;line-height:1.7;margin-top:30px;padding:21px 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media print{.topbar,.sidebar,.scene-column,.component-inspector,.lesson-tabs,.lesson-footer,.page-footer,.notification{display:none}.app-layout{display:block}main{padding:0}body,:root{background:#fff;color:#000}.prose p,.lesson-notes p{color:#222}.observatory{display:none}.reader{margin-top:20px}.intro h1{font-size:30px}.lesson-columns{display:block}.lesson-notes{border:0;padding:15px 0}.lesson-sources a{color:#18553e}}.workshop-return{display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid var(--line)}.workshop-return .text-button{min-height:44px;margin:0}.workshop-return span{font-size:12px;color:var(--muted)}.workshop-navigation{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:26px;color:#52665d;font-size:12px}.workshop-navigation button{min-height:44px}.workshop-navigation span{white-space:nowrap}@media(max-width:760px){.workshop-navigation{margin-bottom:18px}.workshop-navigation span{display:none}}.topbar .brand{align-items:center;gap:10px;color:#e2eee6;font-size:16px}.topbar .brand img{width:31px;height:34px}.brand strong{font-weight:400}.brand span{white-space:nowrap}@media(max-width:600px){.topbar .brand{font-size:14px;gap:7px}.topbar .brand img{width:26px;height:29px}}body[data-view=explore] .app-layout,body[data-view=reference] .app-layout{display:block;max-width:1160px}body[data-view=explore] main,body[data-view=reference] main{padding:36px 48px 0}body[data-view=explore] .sidebar,body[data-view=reference] .sidebar{position:static;height:auto;min-height:0;display:flex;flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:0 28px;padding:0 48px;border:0;border-bottom:1px solid var(--line);background:transparent}.sidebar #curriculum-disclosure,.sidebar #progress-disclosure,.sidebar .course-about{overflow:visible;flex:1;min-width:180px}.sidebar summary{cursor:pointer;display:list-item;list-style:disclosure-closed;padding:16px 0;font-size:13px;min-height:48px;color:var(--muted)}.sidebar summary::-webkit-details-marker{display:revert}.sidebar summary:after{display:none}.sidebar details[open]>summary{list-style:disclosure-open;color:var(--text)}.sidebar summary>span{margin-left:10px;font-size:11px}.sidebar .sidebar-inner{max-height:430px;overflow:auto;padding:0 0 24px}.sidebar .search-box{margin:6px 0 18px}.sidebar .search-box input{font-size:14px;min-height:24px}.sidebar .lesson-link{font-size:13px;min-height:44px;padding:10px 6px}.sidebar .curriculum-group h3{font-size:12px;padding-inline:6px}.sidebar .progress-panel{display:block;background:transparent;border:0;padding:4px 0 24px;margin:0}.sidebar .progress-panel p{font-size:12px;padding:0}.sidebar .progress-panel .text-button{display:flex;min-height:44px;font-size:12px;padding:0;margin:0;background:none}.sidebar .course-about .intro{display:block;margin:0 0 24px}.sidebar .course-about .intro h1{font-size:23px;letter-spacing:-.02em}.sidebar .course-about .intro p{font-size:13px}.sidebar .course-facts{display:flex;text-align:left;margin-top:16px;font-size:12px}.sidebar .course-facts strong{font-size:13px}body[data-view=explore] #lesson-reader{max-width:740px;margin:0 auto;scroll-margin-top:104px}#lesson-reader .reader-heading{align-items:start;margin-bottom:28px}#lesson-reader .reader-heading>div{display:flex;flex-direction:column;align-items:start;gap:9px}#lesson-reader #lesson-position{font-size:12px;margin:0}#lesson-reader #lesson-title{font-size:34px;line-height:1.2;letter-spacing:-.025em}#lesson-reader .level-badge{font-size:11px;margin-top:5px}#lesson-reader .lesson-tabs{gap:28px}#lesson-reader .lesson-tabs button{font-size:14px;min-height:44px;padding-bottom:12px}#lesson-reader #check-indicator{font-size:11px}#lesson-reader #lesson-panel{padding-top:30px}#lesson-reader .lesson-columns{display:block}#lesson-reader .prose{max-width:72ch}#lesson-reader .prose p{font-size:16px;line-height:1.85;margin-bottom:24px;color:#c2d3da}#lesson-reader .prose h3{font-size:19px;line-height:1.4;margin-bottom:12px}#lesson-reader .lesson-pitfall{margin-top:32px;margin-bottom:28px}#lesson-reader .lesson-pitfall p{color:#d0e6db}#lesson-reader .reading-disclosure{display:block;border:0;border-top:1px solid var(--line);padding:0;margin:0}#lesson-reader .reading-disclosure>summary{font-size:14px;min-height:48px;cursor:pointer;padding:16px 0;color:#b7d3c7}#lesson-reader .reading-disclosure[open]>summary{color:var(--text)}#lesson-reader .reading-disclosure>p,#lesson-reader .reading-disclosure>div{margin:0 0 20px}#lesson-reader .concept-tags{gap:8px 16px}#lesson-reader .concept-tags span{font-size:13px;padding:0;background:none;border:0;border-radius:0;color:#bfd2db}#lesson-reader .lesson-sources>div{display:flex;flex-direction:column;align-items:start;gap:12px}#lesson-reader .lesson-sources a{font-size:14px;min-height:28px}#lesson-reader .lesson-notes pre{font-size:13px;line-height:1.8;padding:18px}#lesson-reader .lesson-notes .example-note{font-size:13px}#lesson-reader .prose>.text-button{margin:16px 0 24px;font-size:14px;min-height:44px}#lesson-reader .stage-section-link{font-size:13px;min-height:44px;padding:6px 0;color:#91cbb3;text-decoration:underline;text-underline-offset:4px}#lesson-reader .lesson-footer{margin-top:24px;padding-top:20px}#lesson-reader .lesson-footer button{font-size:13px;min-height:44px}#lesson-reader #lesson-status{font-size:11px}#lesson-reader .answer-options{grid-template-columns:1fr}#lesson-reader .question legend{font-size:17px}#lesson-reader .answer{font-size:15px;min-height:56px}#lesson-reader .quiz-intro,#lesson-reader .answer-feedback{font-size:15px}#lesson-reader .completion-rule{font-size:13px}#lesson-inspection,#lab-inspection{scroll-margin-top:104px;margin-top:24px}.optional-inspection>button{min-height:44px;margin-bottom:12px;font-size:14px}#lesson-reader .open-lesson-stage{font-size:14px;min-height:44px;margin-top:18px;scroll-margin-top:104px}@media(max-width:760px){body[data-view=explore] main,body[data-view=reference] main{padding:26px 20px 0}body[data-view=explore] .sidebar,body[data-view=reference] .sidebar{padding:0 20px;gap:0 22px}.sidebar #curriculum-disclosure{flex-basis:100%}.sidebar #progress-disclosure,.sidebar .course-about{min-width:120px}.sidebar summary{font-size:13px;padding:12px 0;min-height:44px}.sidebar .course-about .intro h1{font-size:21px}#lesson-reader .reader-heading{margin-bottom:22px;gap:16px}#lesson-reader #lesson-title{font-size:29px}#lesson-reader #lesson-position{font-size:12px}#lesson-reader .level-badge{font-size:10px}#lesson-reader .lesson-tabs{gap:20px}#lesson-reader .lesson-tabs button{font-size:12px}#lesson-reader #check-indicator{font-size:10px}#lesson-reader .prose p{font-size:16px;line-height:1.8}#lesson-reader .lesson-footer>span{font-size:11px;text-align:left}body[data-view=explore] #lesson-reader,#lesson-inspection,#lab-inspection,#lesson-reader .open-lesson-stage,#lesson-reader .stage-section-link{scroll-margin-top:150px}}body{min-height:100vh}#lesson-reader #lesson-summary{font-size:18px;line-height:1.65;color:#c5dfd2;max-width:65ch;margin:-12px 0 28px}#lesson-reader .prose .analogy{border:0;padding:0;margin:28px 0 32px}@media(max-width:760px){#lesson-reader #lesson-summary{font-size:17px;margin:-6px 0 24px}}.odin-capabilities{margin:36px 0 52px;padding-bottom:36px;border-bottom:1px solid var(--line)}.capabilities-lead{max-width:74ch}.capabilities-lead h2{font-size:30px;line-height:1.25;letter-spacing:-.025em;margin-bottom:16px}.capabilities-lead p{font-size:16px;line-height:1.8;color:#c2d3da;margin-bottom:16px}.capabilities-lead .capabilities-notice{font-size:14px;color:var(--muted)}.capability-downloads{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:28px}.capability-downloads a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;color:#91cbb3}.capability-workspace{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,1.65fr);gap:36px;align-items:start}.capability-list{display:flex;flex-direction:column}.capability-card{display:flex;flex-direction:column;gap:6px;padding:16px 12px;border-top:1px solid var(--line);color:var(--text);min-height:88px}.capability-card strong{font-size:15px;line-height:1.6}.capability-card span{font-size:14px;line-height:1.7;color:var(--muted)}.capability-card[aria-current]{border-left:3px solid #91cbb3;background:var(--panel);padding-left:9px}.capability-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.capability-detail{min-width:0;padding:0 0 16px;max-width:72ch}.capability-detail h3{font-size:26px;line-height:1.3;margin-bottom:16px}.capability-detail h4{font-size:17px;margin:26px 0 10px}.capability-detail p,.capability-detail li{font-size:15px;line-height:1.85;color:#c2d3da}.capability-detail p{margin-bottom:18px}.capability-detail .capability-outcome{font-size:17px;color:#c5dfd2}.capability-detail ol{padding-left:22px}.capability-detail li{margin-bottom:10px}.capability-detail blockquote{margin:0;padding:16px 20px;border-left:3px solid #91cbb3;font-size:15px;line-height:1.85;background:var(--panel)}.capability-detail .capability-limits{border-top:1px solid var(--line);padding-top:14px}.capability-detail .text-button{font-size:14px;min-height:44px}#capabilities-title,#capability-detail-title{scroll-margin-top:110px}.capability-mechanism{margin-top:28px}.capability-mechanism summary{font-size:15px;min-height:44px;padding:12px 0;cursor:pointer;color:#91cbb3}.capability-mechanism img{display:block;width:100%;height:auto;margin:16px 0}.capability-mechanism p{font-size:14px;color:var(--muted);line-height:1.8}@media(max-width:760px){.capability-workspace{grid-template-columns:1fr;gap:28px}.capabilities-lead h2{font-size:26px}.capability-card{min-height:80px}.capability-detail h3{font-size:24px}#capabilities-title,#capability-detail-title{scroll-margin-top:150px}.capability-downloads{gap:6px 14px}}.site-link{margin-left:auto;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted);white-space:nowrap}.site-link:hover{color:var(--accent);border-color:var(--accent);text-decoration:none}.page-footer{align-items:center;flex-wrap:wrap;font-size:12px}.footer-links{display:flex;flex-wrap:wrap;gap:6px 18px}.page-footer a{min-height:32px;display:inline-flex;align-items:center}.odin-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin-top:14px}.odin-cta{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:600;text-decoration:underline}.odin-cta.primary-cta{padding:0 18px;border-radius:8px;background:var(--accent);color:#06281c;text-decoration:none}.odin-cta.primary-cta:hover{background:#6ee7b7}.capability-detail .odin-next-step{margin:28px 0 22px;padding:4px 22px 18px;border:1px solid #448468;border-radius:10px;background:#12362a}.capability-detail .odin-next-step h4{margin-top:18px}.capability-detail .odin-next-step p{color:#d3ece0;margin-bottom:10px}.capability-detail .odin-distinction{font-size:14px}.capabilities-products{max-width:72ch}.capabilities-products a{text-decoration:underline}#completion .completion-next{margin-top:12px}.completion-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.completion-actions .odin-cta{white-space:nowrap}.completion-actions .odin-cta.primary-cta{background:transparent;border:1px solid var(--accent);color:var(--accent)}.completion-actions .odin-cta.primary-cta:hover{background:#1a4a38}@media(max-width:850px){.mode-nav{order:4}.site-link{margin-left:0}}@media(max-width:760px){.completion-actions{align-items:flex-start;margin-top:18px}#completion .completion-actions button{margin-top:0}}@media(max-width:600px){.topbar .academy-label{display:none}.site-link{margin-left:auto;min-height:44px}}body[data-view=learn],body[data-view=workspace]{--bg:#f3f6ef;--text:#18382d;--muted:#52665d;--accent:#116246;--line:#c9d7cc;color:var(--text);background:var(--bg);color-scheme:light}body[data-view=learn] .app-layout,body[data-view=workspace] .app-layout{display:block;max-width:1500px}body[data-view=learn] .sidebar,body[data-view=workspace] .sidebar,body[data-view=learn] .intro,body[data-view=workspace] .intro,body[data-view=learn] #completion,body[data-view=workspace] #completion{display:none!important}body[data-view=learn] main,body[data-view=workspace] main{padding:54px 64px 0}.topbar{gap:18px}.mode-nav button{padding:0 13px;white-space:nowrap}.local-badge{display:none}body[data-view=learn] .topbar,body[data-view=workspace] .topbar{--accent:#72e8b4;--muted:#c5d8ce;border-color:#294238;background:#102b22}body[data-view=learn] button:hover,body[data-view=workspace] button:hover{color:#174a36}body[data-view=learn] .topbar button:hover,body[data-view=workspace] .topbar button:hover{color:#fff}.workshop-welcome{display:grid;grid-template-columns:1.35fr 1fr;gap:80px;align-items:center;margin-bottom:48px}.workshop-welcome h1{font-size:clamp(44px,5.2vw,76px);font-weight:500;line-height:1.03;letter-spacing:-.06em;max-width:12ch}.workshop-welcome>div>p{font-size:17px;color:#52665d;margin-top:24px;line-height:1.8}.workshop-mission{padding:8px 0 8px 35px;border-left:2px solid #b9cdc0;max-width:400px}.workshop-mission>span:first-child{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#466853;font-weight:700}.workshop-mission strong{display:block;font-family:Space Grotesk,sans-serif;font-size:31px;line-height:1.2;font-weight:500;letter-spacing:-.035em;margin:14px 0}.workshop-mission p{font-size:14px!important;margin:0!important;max-width:35ch}.workshop-mission code{color:#164c36;font-size:13px}.rehearsal-label{display:inline-block;font-size:11px;color:#466853;margin-top:19px}.workshop-steps{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:40px;gap:10px}.workshop-steps button{display:flex;align-items:center;gap:12px;text-align:left;min-height:77px;font-size:13px;padding:12px 5px;position:relative;color:#53635a}.workshop-steps button>span{border:1px solid #a8bfae;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;flex-shrink:0;font-size:12px}.workshop-steps button[aria-current=step]{color:#124d34}.workshop-steps button[aria-current=step]:after{content:"";height:3px;background:#236849;position:absolute;bottom:-1px;left:0;right:0}.workshop-steps button[aria-current=step]>span{background:#20583c;border-color:#20583c;color:#fff}.workshop-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:23px;scroll-margin-top:25px}.workshop-heading p{font-size:12px;color:#5a6e61;margin-bottom:8px}.workshop-heading h2{font-size:30px;letter-spacing:-.035em;font-weight:500}.workshop-link{color:#1f6144;font-size:12px;text-decoration:underline;text-underline-offset:4px;padding:9px 0;min-height:38px}.workshop-stage{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,1fr);border:1px solid #bfcfc3;border-radius:12px;overflow:hidden;background:#fbfdf8}.workshop-visual{background:#e7efe4;min-width:0}.stage-label{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:19px 23px;border-bottom:1px solid #c6d5c8;font-size:12px;color:#345441}.stage-label>div{display:flex;gap:7px}.stage-label button{border:1px solid #b4c8ba;border-radius:4px;font-size:11px;padding:7px 9px;min-height:33px}#workshop-scene{height:auto;min-height:360px}.scene-explanation{padding:17px 23px;font-size:13px;color:#3b5847;border-top:1px solid #c6d5c8;line-height:1.8;min-height:80px}.workshop-task{padding:29px;border-left:1px solid #bfcfc3;min-width:0}.prediction,.workshop-reflection fieldset,.context-choices{border:0;padding:0;margin:0;min-width:0}.prediction legend{font-size:15px;font-weight:700;margin-bottom:12px}.prediction p{font-size:14px;line-height:1.8;margin-bottom:17px}.choice{width:100%;text-align:left;border:1px solid #bacdbf;border-radius:6px;padding:13px 15px;font-size:13px;line-height:1.65;margin:0 0 9px;background:#fbfdf8;min-height:48px}.choice.chosen{border-color:#256c48;background:#e0efdf;box-shadow:inset 3px 0 #256c48}.workshop-feedback{font-size:12px;line-height:1.7;color:#586d5e;margin:4px 0 24px;min-height:41px}#workshop-action>label{display:block;font-size:12px;font-weight:700;margin:0 0 10px}#workshop-action select{display:block;width:100%;font:inherit;font-size:13px;padding:12px;border:1px solid #aabeb0;color:#254333;background:#fff;border-radius:5px;text-overflow:ellipsis}select:focus-visible{outline:2px solid #1c754d;outline-offset:3px}.workshop-primary{display:inline-flex;justify-content:center;align-items:center;min-height:45px;padding:13px 19px;background:#23583d;color:#fff;border-radius:6px;font-size:13px;font-weight:500;line-height:1.4}body[data-view=learn] .workshop-primary:hover,body[data-view=workspace] .workshop-primary:hover{background:#17452e;color:#fff}#run-workshop{width:100%;margin-top:18px}.fixture-note{font-size:11px;color:#5c6e61;line-height:1.8;margin-top:11px}.context-choices legend{font-size:12px;font-weight:700;margin-bottom:13px}.context-choices label{display:flex;gap:12px;padding:10px 0;align-items:flex-start}.context-choices input{margin-top:4px;width:17px;height:17px;accent-color:#23633f;flex-shrink:0}.context-choices strong{font-size:13px;font-weight:500;display:block}.context-choices small{font-size:11px;color:#536a5b;display:block;margin-top:4px;line-height:1.6}.context-budget,.boundary-rule,.claim{font-size:12px;margin-top:12px;color:#546959}.workshop-evidence{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:32px 0;margin-bottom:6px;border-bottom:1px solid var(--line)}.workshop-evidence h3,.workshop-reflection h3{font-size:18px;font-weight:500;margin-bottom:15px}.workshop-evidence #workshop-result{font-size:14px;line-height:1.8;color:#4e6555}.workshop-evidence strong{display:block;font-size:15px;margin-bottom:10px;color:#195634}.workshop-evidence .result-fail{color:#81500b}.workshop-evidence small{display:block;font-size:11px;margin-top:12px}.artifact-pane{border:1px solid #bfcfc3;border-radius:7px;overflow:hidden;align-self:start}.artifact-pane>div{display:flex;justify-content:space-between;padding:12px 17px;background:#e7eee3;font-size:11px;color:#44604c}.artifact-pane pre{margin:0;background:#fbfdf8;padding:20px 17px;font-size:12px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;color:#234a36}.workshop-reflection{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:27px 0;border-bottom:1px solid var(--line)}.workshop-reflection p{font-size:14px;line-height:1.8;color:#526759}.workshop-reflection legend{font-size:14px;font-weight:600;line-height:1.7;margin-bottom:15px}#reflection-feedback{font-size:12px;color:#246044;margin-top:10px}.workshop-footer{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:24px 0 60px}.workshop-footer p{font-size:12px;color:#506957}.provider-transfer{display:grid;grid-template-columns:1fr 1.7fr;gap:70px;padding:42px 0 36px;border-top:2px solid #96b69d}.transfer-intro h2{font-size:42px;font-weight:500;line-height:1.12;letter-spacing:-.05em}.transfer-intro p{font-size:14px;color:#4e6756;margin:21px 0;max-width:32ch}.transfer-intro #download-status{font-size:12px;min-height:44px}.provider-tabs{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:30px}.provider-tabs button{border:1px solid #b9cdbf;border-radius:5px;padding:11px 13px;font-size:12px;min-height:40px}.provider-tabs button.active{background:#dcebd9;color:#215438;border-color:#71957b}.provider-kind{font-size:11px!important;text-transform:uppercase;letter-spacing:.09em;color:#526d57;margin-bottom:6px}#provider-content h3{font-size:27px;font-weight:500;letter-spacing:-.03em;margin-bottom:14px}#provider-content p,#provider-content li{font-size:13px;color:#48624f;line-height:1.9}#provider-content ol,#provider-content ul{padding-left:21px}#provider-content li{padding-left:5px;margin:12px 0}.provider-command{display:flex;justify-content:space-between;align-items:center;padding:10px 17px;border:1px solid #b8ccbc;background:#e8f0e4;border-radius:6px;margin:18px 0 12px}.provider-command code{font-size:15px;color:#1d5335}.instructions-file{font-size:12px!important}.prompt-disclosure{border-block:1px solid #bccfbe;padding:16px 0;margin:23px 0}.prompt-disclosure summary{cursor:pointer;font-size:14px}.prompt-disclosure p{padding-top:18px}#provider-content h4{font-size:13px;margin-bottom:0}.provider-sources{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:23px}.provider-sources a{font-size:12px;text-decoration:underline}#provider-content .source-date{font-size:10px;margin-top:15px}.workshop-reset{display:flex;justify-content:space-between;gap:24px;align-items:center;border-top:1px solid var(--line);padding-top:20px}.workshop-reset span{font-size:11px;color:#5c7061}.workshop-map{padding:30px;color:#284f36;line-height:2}.workshop-map h3{font-size:18px}.workshop-map p{font-size:13px}.architecture-disclosure{border:1px solid var(--line);border-radius:7px;margin-top:22px}.architecture-disclosure>summary{font-size:13px;padding:17px 22px;cursor:pointer;color:var(--muted)}.architecture-disclosure .observatory{border:0;border-radius:0}.architecture-disclosure:not([open]) #scene-host{visibility:hidden}#lesson-theater,#lab-theater{min-width:0}#lab-theater{margin:25px 0}body[data-view=learn] .page-footer,body[data-view=workspace] .page-footer{color:#506858}@media(max-width:1150px){.academy-label,.header-divider{display:none}.topbar{padding-inline:25px}.mode-nav{margin-left:auto;margin-right:0}.mode-nav button{font-size:12px;padding-inline:11px}body[data-view=learn] main,body[data-view=workspace] main{padding:40px 35px 0}.workshop-welcome{gap:45px}.workshop-task{padding:23px}.workshop-stage{grid-template-columns:1fr 1fr}.provider-transfer{gap:40px}.workshop-steps button{gap:8px;font-size:12px}}@media(max-width:850px){.topbar{flex-wrap:wrap;height:auto;padding:18px 25px 0}.academy-label{display:block;margin-left:auto}.mode-nav{width:100%;height:51px;justify-content:space-between}.workshop-stage{grid-template-columns:1fr}.workshop-task{border-left:0;border-top:1px solid #bfcfc3}.workshop-welcome h1{font-size:54px}.workshop-welcome{gap:30px;grid-template-columns:1.15fr 1fr}.workshop-mission{padding-left:24px}.workshop-mission strong{font-size:27px}.workshop-welcome>div>p{font-size:14px}.workshop-evidence,.workshop-reflection{gap:25px}.provider-transfer{grid-template-columns:1fr}.transfer-intro{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.transfer-intro h2{grid-row:1/3}.transfer-intro p{margin:0 0 16px}.transfer-intro .workshop-primary{justify-self:start}.transfer-intro #download-status{grid-column:2}.workshop-reset{align-items:start}}@media(max-width:600px){body[data-view=learn] main,body[data-view=workspace] main{padding:30px 20px 0}.topbar{padding:17px 20px 0;gap:8px}.mode-nav{flex-wrap:wrap;gap:0;height:auto;justify-content:flex-start;margin-top:6px}.mode-nav button{font-size:11px;padding:12px 9px;gap:5px;min-height:42px}.mode-nav button svg{width:14px}.mode-nav button.active:after{left:9px;right:9px}.workshop-welcome{grid-template-columns:1fr;margin-bottom:30px;gap:25px}.workshop-welcome h1{font-size:53px}.workshop-welcome>div>p{font-size:14px;margin-top:19px}.workshop-mission{max-width:none;padding:15px 0 15px 22px}.workshop-mission strong{font-size:25px;margin:10px 0}.workshop-mission strong br{display:none}.workshop-mission>span:first-child{font-size:10px}.rehearsal-label{margin-top:12px}.workshop-steps{grid-template-columns:1fr;gap:0;margin-bottom:27px}.workshop-steps button{min-height:45px;font-size:12px;padding:7px 2px;gap:12px;border-bottom:1px solid #d7e0d5}.workshop-steps button:last-child{border:0}.workshop-steps button>span{width:25px;height:25px;font-size:10px}.workshop-steps button[aria-current=step]:after{left:auto;width:3px;height:60%;bottom:20%}.workshop-heading{display:block}.workshop-heading h2{font-size:27px}.workshop-heading .workshop-link{margin-top:7px}.workshop-task{padding:22px 18px}.stage-label{padding:15px 16px;font-size:11px;gap:8px}.stage-label button{font-size:10px;padding:6px}.scene-explanation{padding:15px 17px;font-size:12px}.workshop-evidence,.workshop-reflection{grid-template-columns:1fr;gap:23px;padding:25px 0}.workshop-footer{flex-direction:column;align-items:stretch;gap:15px;margin-bottom:40px}.workshop-footer p{font-size:11px}.provider-transfer{padding-top:30px;gap:23px}.transfer-intro{display:block}.transfer-intro h2{font-size:37px}.transfer-intro p{margin:20px 0}.provider-tabs{gap:6px}.provider-tabs button{font-size:11px;padding:10px}.workshop-reset{flex-direction:column;gap:10px}.workshop-reset span{line-height:1.8}.workshop-primary{font-size:12px}}.workshop-visual .teaching-caption{margin:17px 22px;font-size:13px}.workshop-visual .teaching-nodes{margin:0 20px 20px}.workshop-visual .teaching-stage{border-radius:0}.workshop-visual .teaching-nodes button{font-size:12px}.workshop-visual .teaching-node-state{font-size:10px}.workspace-header{max-width:800px;margin-bottom:32px}.workspace-eyebrow{font-size:11px;letter-spacing:.13em;color:#4b6e57;font-weight:700}.workspace-header h1{font-size:clamp(38px,5vw,65px);line-height:1.1;letter-spacing:-.055em;font-weight:500;margin:18px 0 22px}.workspace-header p{font-size:16px;color:#516757;max-width:60ch}.workspace-status{font-size:14px;color:#48634f;margin:28px 0;max-width:75ch}.workspace-locked{border-top:1px solid #b8cdbb;padding:35px 0;max-width:780px}.workspace-locked h2{font-size:27px;font-weight:500;letter-spacing:-.03em;margin-bottom:17px}.workspace-locked p{font-size:14px;color:#4c6654;max-width:64ch;margin-bottom:25px}.workspace-login.primary{background:#23583d;color:#fff;padding:14px 19px;font-size:13px;margin:0 15px 12px 0}.workspace-retry.secondary{background:#f6faf2;color:#2d583d;border-color:#a3bda9;margin-bottom:12px}.workspace-controls{padding:23px 0;border-block:1px solid #bfd1c0}.workspace-controls label{font-size:12px;display:flex;align-items:center;gap:20px}.workspace-controls select{font:inherit;font-size:14px;background:#fff;color:#1c4630;border:1px solid #9db7a4;border-radius:5px;padding:12px;min-width:260px;max-width:100%}.workspace-scope{font-size:12px;color:#47674e;padding:25px 0}.workspace-document{max-width:900px;padding:32px 0;border-top:1px solid #bcd0be}.workspace-document h2{font-size:30px;font-weight:500;letter-spacing:-.035em;margin-bottom:18px}.workspace-document .workspace-summary{font-size:16px;color:#355841}.workspace-document h3{font-family:Space Grotesk,sans-serif;font-size:17px;margin:27px 0 10px}.workspace-document p{font-size:14px;line-height:1.9;max-width:76ch;color:#4b6452;white-space:pre-line}.workspace-provenance{margin:25px 0;font-size:12px;color:#4d6954;overflow-wrap:anywhere}.workspace-provenance summary{padding-block:10px;cursor:pointer}.workspace-provenance p{font-size:11px}.workspace-documents>p{line-height:1.8}@media(max-width:600px){.workspace-controls label{display:block}.workspace-controls select{display:block;min-width:0;width:100%;margin-top:12px}.workspace-login.primary,.workspace-retry.secondary{width:100%;margin-right:0}.workspace-document h2{font-size:26px}.workshop-visual .teaching-nodes{margin-inline:15px}.workshop-visual .teaching-caption{margin-inline:17px}}.workshop-visual{grid-column:1;grid-row:1}.workshop-task{grid-column:2;grid-row:1}@media(max-width:850px){.workshop-task{grid-column:1;grid-row:1;border-top:0;border-bottom:1px solid #bfcfc3}.workshop-visual{grid-column:1;grid-row:2}}@media(max-width:600px){.mode-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:0}.mode-nav button{min-width:0;justify-content:center;padding:10px 2px;min-height:44px}.mode-nav button svg{width:12px}.mode-nav button.active:after{left:5px;right:5px}}@media(max-width:360px){.mode-nav button{font-size:10px;gap:3px}}.workshop-stage .workshop-task.workshop-request-task{grid-template-columns:minmax(0,1fr);max-width:760px;margin-inline:auto}.workshop-stage .workshop-request-task .workshop-configure{margin-top:-8px}.workshop-stage .workshop-request-task #workshop-action{display:none}.workshop-stage .workshop-request-task #run-workshop{margin-top:0}.workshop-stage .workshop-visual[hidden]{display:none}.workshop-inspection-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid #bfcfc3}.workshop-inspection-header h3{font-size:18px;font-weight:500;margin:0}.workshop-visual .stage-provider-select{margin:0;padding:18px 22px;border-top:0}#provider-transfer,#workshop-inspection,.workshop-task,.workshop-heading,#change-workshop-configuration,[data-prediction],#workshop-action input,#workshop-action select{scroll-margin-top:110px}#change-workshop-configuration,#close-workshop-inspection{min-height:44px}@media(max-width:760px){.workshop-inspection-header{display:block;padding:18px}.workshop-inspection-header .workshop-link{margin-top:8px}.workshop-visual .stage-provider-select{padding:18px}#provider-transfer,#workshop-inspection,.workshop-task,.workshop-heading,[data-prediction],#workshop-action input,#workshop-action select{scroll-margin-top:150px}}.provider-transfer-disclosure{margin-block:28px;border-block:1px solid #b8ccbc}.provider-transfer-disclosure>summary{padding:18px 0;min-height:48px;cursor:pointer;font-size:16px;color:#24573d}.provider-transfer-disclosure>.provider-transfer{border-top:1px solid #b8ccbc;margin-top:0}@media(max-width:760px){.workshop-welcome .workshop-introduction{display:none}.workshop-welcome #workshop-entry{font-size:29px;line-height:1.1;max-width:18ch}.workshop-welcome .workshop-mission{padding:8px 0;margin-top:8px}#workshop-host .workshop-welcome{margin-bottom:12px}#workshop-host .workshop-steps{padding-bottom:0;margin-bottom:12px}#workshop-host .workshop-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:end;margin-bottom:14px}#workshop-host .workshop-heading h2{font-size:23px;line-height:1.2}#workshop-host .workshop-heading .workshop-link{max-width:86px;text-align:left;margin:0;line-height:1.5;min-height:44px}#workshop-host #narration-status{grid-column:1/-1;margin:0}#workshop-host #narration-status:empty{display:none}.workshop-stage .workshop-request-task{gap:12px;padding:16px 18px}.workshop-request-task .prediction p{margin-bottom:12px}.workshop-request-task .prediction legend{margin-bottom:8px}}#workshop-host .workshop-welcome{display:block;margin-bottom:24px;max-width:760px}#workshop-host .workshop-welcome #workshop-entry{font-size:28px;line-height:1.2;letter-spacing:-.025em;max-width:none}#workshop-host .workshop-task-brief{font-size:16px;line-height:1.8;max-width:65ch;margin-top:14px}#workshop-host .rehearsal-label{margin-top:8px;font-size:12px;letter-spacing:0}#workshop-host .workshop-about{margin-top:12px}#workshop-host .workshop-about>summary{font-size:13px;color:#476651;cursor:pointer;min-height:44px;padding:12px 0}#workshop-host .workshop-about .workshop-introduction{display:block;margin:0 0 12px;font-size:14px}#workshop-host .workshop-about .workshop-mission{display:block;border:0;padding:0;margin:0 0 16px}#workshop-host .workshop-about .workshop-mission>span{display:block;font-size:13px;letter-spacing:0;text-transform:none;font-weight:400}#workshop-host .workshop-about .workshop-mission strong{display:block;font-size:17px;letter-spacing:0;line-height:1.6;margin:6px 0;font-weight:500}#workshop-host .workshop-about .workshop-mission br{display:none}#workshop-host .workshop-steps-disclosure{border-block:1px solid var(--line);margin-bottom:28px}#workshop-host .workshop-steps-disclosure>summary{cursor:pointer;min-height:48px;padding:14px 0;font-size:13px;color:#31583f}#workshop-host .workshop-steps-disclosure>summary>span{float:right;font-size:12px;color:#52665d;margin-left:12px}#workshop-host .workshop-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;border:0;margin:0;padding:0 0 12px;gap:8px}#workshop-host .workshop-steps button{min-width:0;min-height:52px;flex-wrap:wrap;font-size:13px;border:0;padding:10px 4px}#workshop-host .workshop-steps button:after{display:none}#workshop-host .workshop-steps button>span{border:0;background:none;color:inherit;width:20px;height:auto;font-size:13px}#workshop-host .workshop-steps button[aria-current=step]{font-weight:600;text-decoration:underline;text-underline-offset:5px}#workshop-host .workshop-steps small{font-size:11px;font-weight:400}#workshop-host .workshop-heading{margin-bottom:20px;align-items:center}#workshop-host .workshop-heading h2{font-size:27px;line-height:1.25}#workshop-host .workshop-stage{background:transparent;border:0;border-radius:0;overflow:visible}#workshop-host .workshop-task{padding:0 0 28px;gap:32px;border:0;max-width:none}#workshop-host .workshop-evidence,#workshop-host .workshop-reflection{padding:28px 0;border-top:1px solid var(--line);border-bottom:0}#workshop-host .workshop-stage>.workshop-footer{padding:24px 0;border-top:1px solid var(--line)}#workshop-host .choice{font-size:15px;line-height:1.65;padding:14px 16px;border-radius:6px}#workshop-host .choice.chosen{box-shadow:none}#workshop-host .prediction p,#workshop-host #workshop-result,#workshop-host .workshop-reflection p{font-size:16px;line-height:1.8}#workshop-host .prediction legend,#workshop-host .workshop-reflection legend{font-size:16px;line-height:1.6}#workshop-host .workshop-primary{font-size:14px;min-height:46px}#workshop-host .workshop-feedback{font-size:13px;min-height:0;margin-bottom:12px}#workshop-host .workshop-visual{border:1px solid #bfcfc3;border-radius:10px;overflow:hidden;margin-top:20px}#workshop-host .provider-transfer-disclosure{margin-top:22px}#workshop-host .transfer-intro h2{font-size:32px;letter-spacing:-.025em}@media(max-width:760px){#workshop-host .workshop-welcome{margin-bottom:18px}#workshop-host .workshop-welcome #workshop-entry{font-size:25px;max-width:24ch}#workshop-host .workshop-task-brief{font-size:15px;margin-top:12px}#workshop-host .workshop-steps-disclosure{margin-bottom:22px}#workshop-host .workshop-steps{grid-template-columns:1fr;gap:0}#workshop-host .workshop-steps button{min-height:44px;gap:8px}#workshop-host .workshop-steps small{margin-left:auto}#workshop-host .workshop-heading{display:flex;align-items:start;gap:18px;margin-bottom:18px}#workshop-host .workshop-heading h2{font-size:24px}#workshop-host .workshop-heading .workshop-link{font-size:12px;flex-shrink:0;max-width:80px}#workshop-host .workshop-task{padding:0 0 24px;gap:18px}#workshop-host .workshop-evidence,#workshop-host .workshop-reflection{padding:24px 0}#workshop-host .workshop-stage>.workshop-footer{padding:22px 0}#workshop-host .workshop-stage .workshop-request-task .workshop-configure{margin-top:0}}#workshop-host .workshop-heading #narrate-workshop{white-space:nowrap;max-width:none}.transfer-intro .workshop-odin{grid-column:1/-1;margin-top:22px;padding:18px 20px;border:1px solid #96b69d;border-radius:10px;background:#f1f7f2}.workshop-odin h3{font-size:18px;margin:0 0 8px}.transfer-intro .workshop-odin p{max-width:60ch;margin:0;font-size:13px;color:#3f5a48}.workshop-odin .odin-cta{color:#1f6144;font-size:13px}.workshop-odin .odin-cta.primary-cta{background:#23583d;color:#fff}.workshop-odin .odin-cta.primary-cta:hover{background:#17452e}.engineering-stage{--stage-bg:#0c211e;--stage-panel:#142f29;--stage-ink:#e0f1e9;--stage-muted:#afc8bc;--stage-line:#3a5e50;--stage-active:#93e7ba;--stage-code:#0b1a18;--stage-highlight:#234f3d;color:var(--stage-ink);background:var(--stage-bg);border:1px solid var(--stage-line);border-radius:12px;overflow:hidden;margin:18px 0}.engineering-stage[data-light=true]{--stage-bg:#eaf1e7;--stage-panel:#f7faf2;--stage-ink:#173e2d;--stage-muted:#486754;--stage-line:#b5cab8;--stage-active:#225f40;--stage-code:#f7faf2;--stage-highlight:#d8ead3}.engineering-stage-header{padding:24px 27px 18px;border-bottom:1px solid var(--stage-line)}.engineering-stage-header h2{font-size:26px;font-weight:500;letter-spacing:-.03em;line-height:1.2}.engineering-stage-header p{font-size:13px;color:var(--stage-muted);line-height:1.8;margin-top:10px;max-width:83ch}.engineering-stage-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,1fr)}.engineering-scene-column{min-width:0}.engineering-viewport{height:520px;position:relative;overflow:hidden}.engineering-viewport canvas{display:block;width:100%;height:100%;touch-action:pan-y}.engineering-code{padding:24px;border-left:1px solid var(--stage-line);background:var(--stage-code);min-width:0}.engineering-code h3{font-family:Space Grotesk,sans-serif;font-size:19px;font-weight:500;margin:0 0 10px;line-height:1.4}.engineering-object-detail{font-size:12px;line-height:1.8;color:var(--stage-muted);min-height:64px}.engineering-file{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;margin-top:20px;color:var(--stage-ink);overflow-wrap:anywhere}.engineering-provenance{font-size:10px;margin:8px 0 13px;color:var(--stage-muted)}.engineering-code pre{font-size:11px;line-height:1.9;margin:0 0 17px;overflow:auto;background:var(--stage-panel);border:1px solid var(--stage-line);border-radius:5px;padding:13px 0;max-height:330px;-moz-tab-size:2;tab-size:2}.engineering-code code{font:inherit;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.engineering-code-line{display:block;min-width:max-content;padding:1px 14px 1px 0}.engineering-code-line.highlighted{background:var(--stage-highlight);font-weight:600}.engineering-line-number{display:inline-block;min-width:35px;text-align:right;margin-right:16px;color:var(--stage-muted);font-size:10px;-webkit-user-select:none;user-select:none}.engineering-code-source{font-size:11px;text-decoration:underline;color:var(--stage-active)}.engineering-objects{display:flex;flex-wrap:wrap;gap:7px;padding:18px;border-top:1px solid var(--stage-line)}.engineering-objects button{font-size:11px;line-height:1.5;border:1px solid var(--stage-line);border-radius:5px;min-height:36px;padding:8px 10px;color:var(--stage-ink);background:var(--stage-panel)}.engineering-objects button[aria-pressed=true]{border-color:var(--stage-active);background:var(--stage-highlight)}.engineering-objects button[data-state=blocked]{border-style:dashed}.engineering-stage button:hover{color:var(--stage-ink);background:var(--stage-highlight)}.engineering-stage button:focus-visible,.engineering-stage a:focus-visible{outline:2px solid var(--stage-active);outline-offset:3px}.engineering-controls{display:flex;align-items:center;gap:8px;padding:16px 22px;border-top:1px solid var(--stage-line);flex-wrap:wrap}.engineering-controls button{font-size:12px;padding:10px 13px;min-height:40px;border:1px solid var(--stage-line);border-radius:5px;color:var(--stage-ink)}.engineering-controls button:nth-child(2){background:var(--stage-highlight);border-color:var(--stage-active)}.engineering-count{font-size:11px;font-variant-numeric:tabular-nums;margin:auto;color:var(--stage-muted)}.engineering-timeline{display:flex;gap:4px;padding:0 22px 19px;overflow-x:auto}.engineering-timeline button{font-size:11px;line-height:1.5;color:var(--stage-muted);padding:10px 12px;border-bottom:2px solid transparent;text-align:left;flex:1;min-width:115px}.engineering-timeline button[aria-current=step]{color:var(--stage-ink);border-bottom-color:var(--stage-active);background:var(--stage-highlight)}.engineering-narrative{padding:22px 27px;border-top:1px solid var(--stage-line);background:var(--stage-panel)}.engineering-narrative h3{font-size:18px;font-family:Space Grotesk,sans-serif;font-weight:500;margin:0 0 10px}.engineering-narrative p{font-size:14px;line-height:1.9;color:var(--stage-muted);max-width:85ch}.engineering-note{font-size:11px;line-height:1.8;color:var(--stage-muted);padding:17px 27px 0}.engineering-sources{display:flex;gap:10px 20px;flex-wrap:wrap;padding:14px 27px 22px}.engineering-sources a{font-size:11px;color:var(--stage-active);text-decoration:underline}.engineering-fallback{padding:25px;font-size:13px;line-height:1.9;min-height:300px}.engineering-fallback h3{font-size:20px;margin:0 0 12px}.engineering-fallback ol{padding-left:20px}.workshop-stage{display:block}.workshop-task{border:0;display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.workshop-task .prediction{grid-column:1;grid-row:1/4}.workshop-task #prediction-feedback{grid-column:1;grid-row:4}.workshop-task #workshop-action,.workshop-task #run-workshop,.workshop-task .fixture-note{grid-column:2}.workshop-task #run-workshop{align-self:start}.workshop-visual{border-top:1px solid #bfcfc3}.workshop-visual .engineering-stage{margin:0;border:0;border-radius:0}.workshop-visual #workshop-scene{min-height:0}.workshop-visual .scene-explanation{margin:0}.stage-provider-select{display:flex;align-items:center;gap:20px;margin:22px 0 18px;padding:18px 0;border-block:1px solid var(--line)}.stage-provider-select label{font-size:13px;font-weight:600}.stage-provider-select select{font:inherit;font-size:14px;padding:11px 14px;border:1px solid #adc3b3;background:#f8fbf4;color:#19452e;border-radius:5px;min-width:220px}.stage-provider-select p{font-size:12px;color:#506c58;margin-left:auto;max-width:50ch}.stage-section-link{min-height:40px;padding:10px 0;font-size:12px;text-decoration:underline;color:var(--accent)}.lesson-stage-picker{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.lesson-stage-picker button{font-size:12px;padding:11px 14px;border:1px solid var(--line);border-radius:5px;color:var(--muted)}.lesson-stage-picker button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}@media(max-width:1100px){.engineering-stage-grid{grid-template-columns:minmax(0,1.25fr) minmax(260px,1fr)}.engineering-code{padding:20px}.engineering-viewport{height:460px}.engineering-stage-header h2{font-size:23px}}@media(max-width:800px){.engineering-stage-grid{grid-template-columns:1fr}.engineering-code{border-left:0;border-top:1px solid var(--stage-line);padding:23px}.engineering-object-detail{min-height:0}.engineering-viewport{height:440px}.engineering-code pre{max-height:260px}.workshop-task{display:block}.stage-provider-select{flex-wrap:wrap;gap:12px}.stage-provider-select p{width:100%;margin:0}.engineering-objects button{min-height:44px}}@media(max-width:500px){.engineering-stage-header{padding:21px 18px 16px}.engineering-stage-header h2{font-size:23px}.engineering-stage-header p{font-size:12px}.engineering-viewport{height:370px}.engineering-code{padding:20px 17px}.engineering-objects{padding:14px;gap:6px}.engineering-objects button{font-size:11px}.engineering-controls{padding:15px;gap:6px}.engineering-controls button{font-size:11px;padding:9px;min-height:42px}.engineering-controls .engineering-count{font-size:10px;order:6}.engineering-timeline{padding-inline:15px}.engineering-narrative{padding:20px 18px}.engineering-narrative p{font-size:13px}.engineering-note,.engineering-sources{padding-inline:18px}.engineering-stage{border-radius:9px}.stage-provider-select{align-items:start;flex-direction:column}.stage-provider-select select{width:100%}.stage-label>span{max-width:45%;line-height:1.5}.lesson-stage-picker button{font-size:11px;padding:10px}}.engineering-stage-header{padding:18px 22px 14px}.engineering-stage-header h2{font-size:24px}.engineering-stage-header p{margin-top:6px;line-height:1.5}.engineering-controls{padding:12px 20px;border-top:0}.engineering-controls button{min-height:44px}.engineering-narrative{padding:14px 22px}.engineering-narrative h3{font-size:17px;margin-bottom:5px}.engineering-narrative p{font-size:13px;line-height:1.65;max-width:85ch}.engineering-sequence,.engineering-references{border-top:1px solid var(--stage-line)}.engineering-sequence>summary,.engineering-references>summary{cursor:pointer;padding:12px 22px;font-size:12px;color:var(--stage-muted);min-height:44px}.engineering-timeline{padding-bottom:12px}.engineering-hint{font-size:12px;line-height:1.6;color:var(--stage-muted);padding:10px 22px;border-top:1px solid var(--stage-line)}.engineering-viewport{height:360px}.engineering-code{padding:18px 20px}.engineering-code h3{font-size:20px}.engineering-object-detail{min-height:0;font-size:13px;line-height:1.65}.engineering-file{margin-top:14px}.engineering-code pre{font-size:12px;max-height:260px;line-height:1.75}.engineering-code-line{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere;padding-left:40px;text-indent:0;position:relative}.engineering-line-number{position:absolute;left:0;min-width:28px;margin-right:8px}.engineering-inspection-status{font-size:12px;color:var(--stage-active);line-height:1.5;margin-bottom:8px}.engineering-inspection-status:empty{display:none}.engineering-return{display:none;font-size:12px;text-decoration:underline;min-height:44px;margin-top:12px}.engineering-objects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px}.engineering-objects button{display:grid;grid-template-columns:24px 1fr;text-align:left;align-content:start;column-gap:7px;font-size:12px;padding:9px;min-height:64px}.engineering-object-number{grid-row:1/3;display:grid;place-items:center;align-self:start;height:24px;border:1px solid var(--stage-line);border-radius:50%;font-variant-numeric:tabular-nums}.engineering-object-state{grid-column:2;font-size:10px;color:var(--stage-muted);margin-top:4px}.workshop-task{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:22px}.workshop-task .prediction{display:block}.workshop-predict,.workshop-configure{min-width:0}.workshop-task #prediction-feedback{margin-bottom:0;min-height:0}.workshop-configure #run-workshop{width:100%;margin-top:16px}.workshop-configure .fixture-note{margin-top:12px}.workshop-stage>.workshop-evidence{padding:22px;margin:0;gap:24px;border-top:1px solid #bfcfc3}.workshop-stage>.workshop-reflection{padding:22px;gap:24px}.workshop-stage>.workshop-footer{padding:16px 22px;margin:0}.workshop-evidence>#inspect-workshop-run{grid-column:1/-1;justify-self:start;min-height:44px}.workshop-welcome{gap:32px;margin-bottom:24px}.workshop-welcome h1{font-size:clamp(32px,3.5vw,48px);letter-spacing:-.035em}.workshop-welcome>div>p{font-size:14px;margin-top:12px}.workshop-mission strong{font-size:24px}.workshop-heading{margin-bottom:12px}.stage-provider-select{margin:12px 0;padding:12px 0}.workshop-steps{margin-bottom:20px}.stage-label{padding:12px 20px}.scene-explanation:empty{display:none}.stage-label{flex-wrap:wrap}.stage-label>.scene-explanation{flex-basis:100%;padding:0;margin:0;font-size:12px}#narration-status:empty{display:none}#narration-status{flex-basis:100%;font-size:12px}.workshop-heading{flex-wrap:wrap}.topbar{position:sticky;top:0;z-index:30}.workshop-evidence,#lesson-reader,#workshop-scene,#lab-theater,#lesson-theater,.engineering-code,.engineering-scene-column,.lab-grid,#learn-view,#lab-view,#reference-view{scroll-margin-top:100px}#lesson-reader{margin-top:0}.open-lesson-stage{margin:18px 0;min-height:44px}#lesson-theater{margin-top:16px}.architecture-disclosure{margin-top:20px}body[data-view=lab] .sidebar,body[data-view=lab] .intro{display:none}body[data-view=lab] .app-layout{display:block}body[data-view=lab] main{max-width:1500px;margin:auto;padding-top:28px}.lab-grid{align-items:start}.lab-controls{padding:22px}.lab-controls fieldset{margin:18px 0}.lab-controls .lab-disclaimer{font-size:12px}.trace-panel{min-width:0}.trace-header{padding:18px 20px}#trace-events{max-height:330px;overflow:auto;overscroll-behavior:contain}#trace-outcome:empty{display:none}#lab-theater{margin-top:18px}.trace-panel>.text-button{margin:12px 20px;min-height:44px}@media(max-width:1000px){.engineering-stage-grid{grid-template-columns:1fr}.engineering-viewport{height:340px}.engineering-code{border-left:0;border-top:1px solid var(--stage-line)}.engineering-return{display:block}.engineering-objects{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.workshop-task{grid-template-columns:1fr;padding:18px;gap:18px}.workshop-welcome{display:block;margin-bottom:18px}.workshop-welcome h1{font-size:34px}.workshop-welcome h1 br{display:none}.workshop-welcome>div>p{margin-top:8px}.workshop-mission{padding:12px 0;border:0;margin-top:8px}.workshop-mission>span:first-child,.workshop-mission strong{display:none}.workshop-mission p{margin:0}.rehearsal-label{margin-top:6px}.workshop-steps{display:flex;overflow-x:auto;gap:10px;padding-bottom:8px;margin-bottom:14px}.workshop-steps button{min-width:135px;min-height:44px;border:0}.workshop-steps button[aria-current=step]:after{display:none}.workshop-heading h2{font-size:25px}.stage-provider-select{display:grid;grid-template-columns:1fr;margin:10px 0;gap:6px}.stage-provider-select p{display:none}.engineering-stage-header h2{font-size:21px}.engineering-stage-header,.engineering-narrative{padding:15px 17px}.engineering-viewport{height:300px}.engineering-objects{grid-template-columns:repeat(2,minmax(0,1fr))}.engineering-code pre{font-size:12px;max-height:300px}.engineering-controls{padding:10px 14px;gap:6px}.engineering-controls button{padding:9px;font-size:12px}.engineering-sequence>summary,.engineering-references>summary,.engineering-hint{padding-inline:17px}.workshop-stage>.workshop-evidence,.workshop-stage>.workshop-reflection{padding:18px;grid-template-columns:1fr;gap:16px}.workshop-stage>.workshop-footer{padding:16px 18px}.workshop-evidence,#lesson-reader,#workshop-scene,#lab-theater,#lesson-theater,.engineering-code,.engineering-scene-column,.lab-grid,#learn-view,#lab-view,#reference-view{scroll-margin-top:150px}body[data-view=lab] main{padding:22px 20px}.lab-grid{grid-template-columns:1fr}.scenario-picker{grid-template-columns:repeat(2,minmax(0,1fr))}#trace-events{max-height:260px}}.trace-panel{scroll-margin-top:100px}.trace-panel>.run-actions{padding:16px 20px;margin:0;border-bottom:1px solid var(--line);display:flex;gap:8px}.trace-panel>.run-actions button{min-height:44px}.engineering-code:focus-visible,#trace-events:focus-visible{outline:2px solid var(--stage-active,var(--accent));outline-offset:3px}@media(max-width:760px){.trace-panel{scroll-margin-top:150px}.trace-panel>.run-actions{padding:14px}}.sidebar{top:80px}.engineering-narrative{scroll-margin-top:100px}.copy-feedback{font-size:12px;line-height:1.6}.provider-command{flex-wrap:wrap}.provider-command>.copy-feedback{flex-basis:100%;margin:0}@media(max-width:760px){.engineering-narrative{scroll-margin-top:150px}}
