@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4f6667dd39116621-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07935285219a259d-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f58031ded4338640-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/77814b00d5ca94a4-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/605ce01b664af129-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.u8MhCG_className{font-family:Geist,Geist Fallback;font-style:normal}.u8MhCG_variable{--font-geist:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b0c6b664fd57c2c6-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6e342921ee4dcd9d-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bb852295097cd96-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9eb5a876700c0028-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2a04751c893bf294-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07a39a8a4660cc7c-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.Gb1_vG_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.Gb1_vG_variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/f7095de3000afb68-s.3zvkfbs08rnj_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/e63b65bb308a9351-s.p.3strvg7o-g5v2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/125b6750c58ce347-s.1wwzpfhzaj2r0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d902bc2bfdd0a4cb-s.p.2rlzm4mj5kw8e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.ZPbyaG_className{font-family:Instrument Serif,Instrument Serif Fallback;font-weight:400}.ZPbyaG_variable{--font-instrument-serif:"Instrument Serif", "Instrument Serif Fallback"}
:root{--burgundy:var(--brand-600);--burgundy-dark:var(--brand-700);--ink:var(--ink-900);--muted:var(--ink-500);--border:var(--line-200);--paper:var(--canvas);--green:var(--ok-700);--blush:var(--brand-100);--sidebar:240px;font-family:var(--font-sans);color:var(--ink);background:var(--paper);font-synthesis:none;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}button,a,input,select,summary,[tabindex]{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus-colour)}a{color:var(--burgundy)}button{background:0 0;border:0}input,select,textarea{border:1px solid var(--line-300);background:var(--bg-900);min-width:0;max-width:100%;color:var(--ink);border-radius:6px;padding:9px 11px;font-size:15px}input[type=checkbox]{accent-color:var(--burgundy);width:18px;height:18px}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.2}h1{font-size:32px;font-weight:650}h2{font-size:25px;font-weight:650}h3{font-size:21px;font-weight:650}p{line-height:1.7}svg{flex-shrink:0}button svg,a svg{vertical-align:middle}small{font-size:15px}code,pre{font-family:SFMono-Regular,Consolas,monospace;font-size:16px}pre{white-space:pre-wrap;background:var(--night-900);color:var(--night-text);border-radius:10px;margin:24px 0;padding:22px;line-height:1.8}hr{border:0;border-top:1px solid var(--border);margin:28px 0}.main-column{margin-left:var(--sidebar);min-height:100vh}.page-content{max-width:1720px;margin:0 auto;padding:35px 38px 44px}.eyebrow{letter-spacing:1.2px;color:var(--ink-500);font-size:15px;font-weight:650;line-height:1.5;display:block}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:26px;display:flex}.button{white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:10px;padding:12px 18px;font-size:15px;font-weight:600;line-height:1.4;transition:background .15s,transform .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{background:var(--action-600);color:var(--action-ink);border:1px solid #0000}.button.primary:hover:not(:disabled){background:var(--action-700)}.button.secondary{background:var(--bg-800);border:1px solid var(--line-200);color:var(--ink-700)}.button.secondary:hover:not(:disabled){background:var(--canvas)}.button.dark{background:var(--ink-950);color:var(--bg-950);border:1px solid var(--ink-950)}.text-button{color:var(--ink-700);align-items:center;gap:9px;padding:5px 0;font-size:15px;font-weight:600;line-height:1.5;display:inline-flex}.text-button:hover{color:var(--burgundy)}.stat-icon{background:var(--surface-2);border:1px solid var(--line-200);min-width:48px;height:48px;color:var(--ink-500);border-radius:10px;justify-content:center;align-items:center;display:flex}.difficulty{color:var(--ok-700);background:var(--bg-800);border-radius:5px;padding:4px 8px;font-size:15px;font-weight:550;display:inline-flex}.difficulty.applied{color:var(--info-700)}.difficulty.advanced{color:var(--burgundy)}.page-footer{border-top:1px solid var(--border);color:var(--ink-500);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:0 38px;padding:22px 0 28px;font-size:15px;display:flex}.page-footer>span:first-child{color:var(--ink-700);font-weight:600}.page-footer button,.page-footer a{align-items:center;gap:6px;font-size:15px;display:flex}.library-toolbar{justify-content:space-between;align-items:center;gap:18px;margin:0 0 27px;display:flex}.filter-tabs{flex-wrap:wrap;gap:5px;display:flex}.filter-tabs button{color:var(--ink-600);border:1px solid #0000;border-radius:6px;padding:10px 12px;font-size:15px;font-weight:550}.filter-tabs button.active{color:var(--burgundy);border-color:var(--brand-border);background:var(--brand-100)}.search-box{background:var(--bg-900);border:1px solid var(--border);color:var(--ink-500);border-radius:7px;align-items:center;gap:7px;padding:0 10px;display:flex}.search-box input{background:0 0;border:0;width:170px;padding-left:0}.progress-track{background:var(--canvas-2);border-radius:8px;width:100%;height:7px;overflow:hidden}.progress-track>span{background:var(--brand-600);border-radius:8px;height:100%;transition:width .2s;display:block}.lesson-time{color:var(--ink-600);align-items:center;gap:7px;margin-top:23px;font-size:15px;display:flex}.lesson-reader{max-width:850px;margin:0 auto;padding:5px 0 35px}.back-link{color:var(--ink-600);align-items:center;gap:4px;margin-bottom:21px;padding:0;font-size:15px;font-weight:550;display:flex}.lesson-reader>.eyebrow{margin-top:38px}.lesson-reader h1{margin:12px 0 22px;font-size:43px}.lesson-intro{color:var(--ink-600);margin-bottom:42px;font-size:22px;line-height:1.65}.lesson-reader>section{margin:28px 0}.lesson-reader>section h2{margin-bottom:13px;font-size:25px}.lesson-reader>section p{color:var(--ink-600);font-size:18px;line-height:1.9}.try-it{background:var(--surface-2);border:1px solid var(--line-200);border-radius:11px;margin:38px 0 24px;padding:30px}.try-it h2{margin:8px 0 13px}.try-it p{margin-bottom:24px;font-size:18px}.quiz-layout{grid-template-columns:minmax(0,2.2fr) minmax(240px,1fr);gap:30px;display:grid}.quiz-card{background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:35px}.quiz-heading{color:var(--ink-500);justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.quiz-card h2{margin:30px 0 25px;font-size:28px;line-height:1.45}.quiz-options{flex-direction:column;gap:12px;display:flex}.quiz-options button{text-align:left;border:1px solid var(--line-200);border-radius:8px;align-items:center;gap:15px;padding:16px 18px;font-size:17px;line-height:1.5;display:flex}.quiz-options button>span{background:var(--surface-2);color:var(--ink-600);border-radius:5px;padding:3px 8px;font-weight:550}.quiz-options button.selected{border-color:var(--brand-border);background:var(--brand-50)}.quiz-options button.correct{border-color:var(--ok-700);background:var(--ok-100);opacity:1}.quiz-options button.incorrect{border-color:var(--fault-700);background:var(--fault-100);opacity:1}.quiz-options button>svg{color:var(--ok-700);margin-left:auto}.quiz-actions{justify-content:flex-end;margin-top:28px;display:flex}.answer-explanation{background:var(--surface-2);border:1px solid var(--line-200);border-radius:9px;margin-top:22px;padding:20px}.answer-explanation strong{font-size:18px}.answer-explanation p{color:var(--ink-600);margin-top:6px}.answer-explanation a{align-items:center;gap:8px;margin-top:10px;font-size:15px;display:flex}.quiz-aside{padding:28px 5px 0 6px}.quiz-aside .stat-icon{width:53px;margin-bottom:22px}.quiz-aside h3{margin-bottom:16px;font-size:24px;line-height:1.35}.quiz-aside p{color:var(--ink-500);font-size:16px}.quiz-aside strong{font-size:28px}.quiz-finish{text-align:center;flex-direction:column;align-items:center;gap:20px;padding:35px 0;display:flex}.quiz-finish>svg{color:var(--burgundy)}.quiz-finish h2{margin:0}.quiz-finish p{max-width:480px;color:var(--muted);font-size:18px}.white-card{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:28px}.white-card>h2{margin-bottom:20px}.white-card>p{color:var(--ink-600);font-size:16px}.progress-summary{background:var(--surface);border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(4,1fr);margin-bottom:28px;padding:30px 10px;display:grid}.progress-summary>div{border-right:1px solid var(--border);flex-direction:column;gap:12px;padding:0 22px;display:flex}.progress-summary>div:last-child{border:0}.progress-summary svg{color:var(--brand-600)}.progress-summary strong{font-size:39px;font-weight:600}.progress-summary small{color:var(--ink-500);font-size:19px;font-weight:400}.progress-summary span{color:var(--ink-500);font-size:15px}.progress-columns{grid-template-columns:1.1fr 1fr;gap:26px;display:grid}.skill-row{margin:24px 0}.skill-row>div:first-child{justify-content:space-between;margin-bottom:11px;display:flex}.skill-row strong{font-size:16px;font-weight:550}.skill-row span{color:var(--ink-500)}.backup-card .stat-icon{width:49px;margin-bottom:20px}.backup-card p{margin-bottom:25px;line-height:1.8}.backup-card .panel-note{margin:18px 0 0}.completion-card{margin-top:26px}.completion-row{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:16px;padding:18px 0;font-size:15px;display:flex}.completion-row>svg{color:var(--ok-700)}.completion-row strong{margin-right:auto}.completion-row>span{color:var(--ink-500)}.reference-profiles{grid-template-columns:repeat(8,1fr);gap:9px;margin-bottom:27px;display:grid}.reference-profiles button{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:14px 13px}.reference-profiles span{color:var(--ink-500);margin-bottom:8px;font-size:15px;display:block}.reference-profiles strong{font-size:17px;font-weight:600;line-height:1.25}.reference-profiles button.active{background:var(--brand-100);border-color:var(--line-300);color:var(--burgundy)}.reference-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:13px;display:flex}.reference-heading h2{margin-top:5px;font-size:29px}.scope-badge{white-space:nowrap;background:var(--ok-100);color:var(--ok-700);border-radius:5px;padding:7px 11px;font-size:15px}.reference-card dl{margin:26px 0 0}.reference-card dl>div{border-top:1px solid var(--border);grid-template-columns:220px 1fr;gap:22px;padding:20px 0;display:grid}.reference-card dt{font-size:16px;font-weight:600}.reference-card dd{color:var(--ink-600);margin:0;font-size:16px;line-height:1.75}.reference-note{border-top:1px solid var(--border);padding-top:20px}.reference-note h3{margin:0 0 10px;font-size:18px}.reference-columns{grid-template-columns:1fr 1fr;gap:26px;margin-top:26px;display:grid}.readable-list{color:var(--ink-600);padding-left:22px;font-size:16px;line-height:1.75}.readable-list li{margin-bottom:12px}.source-link{border-bottom:1px solid var(--line-100);justify-content:space-between;gap:14px;margin-top:18px;padding-bottom:12px;font-size:15px;text-decoration:none;display:flex}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toast{background:var(--ink-950);width:max-content;max-width:700px;color:var(--bg-950);z-index:120;border-radius:9px;align-items:center;gap:20px;padding:17px 20px;font-size:16px;line-height:1.6;display:flex;position:fixed;bottom:25px;left:calc(50% + 100px);transform:translate(-50%);box-shadow:0 6px 30px #1012162e}.toast button{color:inherit;padding:0}.page-loading,.scene-loading,.editor-loading{height:100%;min-height:240px;color:var(--ink-500);justify-content:center;align-items:center;font-size:16px;display:flex}.editor-loading{background:var(--night-900);color:var(--night-muted)}.empty-state{text-align:center;min-height:260px;color:var(--ink-600);flex-direction:column;justify-content:center;align-items:center;gap:13px;padding:30px;display:flex}.empty-state strong{color:var(--ink-900);font-size:20px}.empty-state p{color:var(--ink-500);font-size:16px}.empty-state.compact{min-height:180px;padding:22px}.skip-link{z-index:200;background:var(--bg-750);color:var(--ink-950);padding:12px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.workbench-main{max-width:2000px;margin:auto;padding:25px 25px 40px}.brief-toggle{width:100%;color:var(--ink-600);background:var(--canvas);justify-content:space-between;align-items:center;padding:14px 19px;font-size:16px;font-weight:600;display:flex}.brief-toggle>span{align-items:center;gap:9px;display:flex}.brief-content{padding:17px 20px}.brief-content>p{color:var(--ink-600);font-size:16px}.criteria{flex-wrap:wrap;gap:22px;margin-top:14px;display:flex}.criteria>span{color:var(--ink-600);align-items:flex-start;gap:8px;font-size:15px;line-height:1.7;display:flex}.brief-actions{gap:20px;margin-top:14px;display:flex}.brief-actions button{color:var(--burgundy);align-items:center;gap:7px;padding:0;font-size:15px;display:flex}.brief-content>.hint{border-left:3px solid var(--warn-700);background:var(--warn-100);color:var(--warn-700);margin-top:15px;padding:12px 15px}.run-controls{align-items:center;gap:8px;display:flex}.run-controls .button{padding:10px 13px}.run-controls select{background:var(--bg-900);padding:10px 8px;font-size:15px}.simulation-state{color:var(--ink-600);white-space:nowrap;align-items:center;gap:8px;font-size:15px;display:flex}.simulation-state>span:last-child{color:var(--ink-500);border-left:1px solid var(--line-300);margin-left:4px;padding-left:10px}.pane-heading{border-bottom:1px solid var(--night-700);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;min-height:49px;padding:12px 15px;display:flex}.pane-heading select{background:var(--night-900);color:var(--night-text);border:0;width:auto;max-width:85%;padding:0 8px 0 0;font-size:15px;font-weight:550}.revision{color:var(--night-600);font-family:monospace;font-size:15px}.pane-heading .revision{margin-left:auto}.reset-draft{color:var(--night-text);align-items:center;gap:6px;padding:5px 0;font-size:15px;display:inline-flex}.draft-recovery{border:1px solid var(--line-200);background:var(--brand-50);color:var(--brand-700);border-radius:8px;margin-bottom:16px;padding:15px 18px;font-size:15px}.draft-recovery p{margin:0 0 12px;line-height:1.5}.draft-recovery>p:last-child{margin-bottom:0}.draft-recovery summary{cursor:pointer;font-weight:600}.draft-recovery details[open] summary{margin-bottom:12px}.draft-recovery-actions{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.draft-recovery-actions label{flex:260px;gap:6px;min-width:0;display:grid}.draft-recovery-actions select{width:100%;min-width:0;font-size:15px}.editor-tabs{background:var(--night-950);border-bottom:1px solid var(--night-700);min-height:44px;padding:0 8px;display:flex}.editor-tabs button{color:var(--night-muted);white-space:nowrap;border-bottom:2px solid #0000;padding:11px;font-size:15px}.editor-tabs button.active{color:var(--night-text);border-color:var(--brand-border);background:var(--night-900)}.editor-tabs button:last-child{margin-left:auto}.editor-content{flex:1;min-height:0;overflow:hidden}.editor-status{background:var(--night-950);color:var(--night-muted);border-top:1px solid var(--night-700);white-space:nowrap;justify-content:space-between;gap:10px;padding:8px 13px;font-size:15px;display:flex;overflow:auto}.equipment-inspector{z-index:19;border:1px solid var(--line-200);background:var(--bg-800);box-shadow:var(--shadow-2);border-radius:8px;padding:19px 21px;position:relative;bottom:120px;left:15px;right:15px}.equipment-inspector h3{margin:6px 0;font-size:20px}.equipment-inspector p{color:var(--ink-700);padding-right:20px;font-size:15px}.equipment-inspector .eyebrow{color:var(--brand-600);font-size:15px}.tag-pills{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.tag-pills>span{background:var(--surface-2);border-radius:4px;align-items:center;gap:12px;padding:5px 8px;font-size:15px;display:flex}.tag-pills b{color:var(--ink-600);font:15px monospace}.tag-pills b.value-on{color:var(--ok-700)}.schematic{flex-direction:column;align-items:center;gap:25px;height:100%;padding:50px 20px;display:flex;overflow-y:auto}.schematic>:first-child{margin-top:auto}.schematic>:last-child{margin-bottom:auto}.overlay-bar .schematic{padding-top:68px}.schematic-line{align-items:center;gap:10px;font-size:24px;display:flex}.schematic-line button{border:2px solid var(--ink-500);background:var(--surface-2);border-radius:6px;padding:14px;font-size:16px;line-height:1.6}.schematic-line button.on{border-color:var(--ok-600);background:var(--ok-100)}.schematic p{color:var(--ink-600);text-align:center;font-size:15px}.monitor-tabs{border-bottom:1px solid var(--border);background:var(--surface-2);align-items:center;gap:4px;padding:0 12px;display:flex;overflow:auto}.monitor-tabs button{color:var(--ink-600);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:15px 13px;font-size:15px;display:flex}.monitor-tabs button.active{border-color:var(--burgundy);color:var(--burgundy)}.scan-counter{color:var(--ink-500);white-space:nowrap;margin-left:auto;padding-left:15px;font:15px monospace}.monitor-body{min-height:180px;padding:19px 22px}.panel-note{color:var(--ink-500);font-size:15px;line-height:1.6}.input-grid{grid-template-columns:repeat(5,1fr);gap:11px;margin-top:18px;display:grid}.input-toggle{border:1px solid var(--line-200);background:var(--surface-2);text-align:left;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;font-size:15px;display:flex}.input-toggle.on{background:var(--ok-100);border-color:var(--ok-border);color:var(--ok-700)}.input-toggle>span:last-child{color:var(--ink-600);margin-left:auto;font-size:15px}.toggle-track{background:var(--line-300);border-radius:20px;width:27px;min-width:27px;height:15px;display:inline-block;position:relative}.toggle-track:after{content:"";background:var(--ink-900);border-radius:50%;width:11px;height:11px;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #10121640}.input-toggle.on .toggle-track{background:var(--ok-600)}.input-toggle.on .toggle-track:after{left:14px}.numeric-input{color:var(--ink-500);flex-direction:column;gap:6px;font-size:15px;display:flex}.numeric-input input{width:100%;font-family:monospace;font-size:16px}.tag-search{width:250px;margin-bottom:17px}.watch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px;max-height:360px;display:grid;overflow:auto}.watch-grid>div{border-bottom:1px solid var(--surface-2);justify-content:space-between;gap:9px;padding:9px 0;font-size:15px;display:flex}.watch-grid code{color:var(--ink-600);overflow-wrap:anywhere;font-size:15px}.watch-grid span{color:var(--ink-500);font:15px monospace}.watch-grid .value-on{color:var(--ok-700);font-weight:650}.trend-heading{color:var(--ink-600);justify-content:space-between;gap:15px;margin-bottom:9px;font-size:15px;display:flex}.trend strong{font-size:17px}.trend strong span{margin-left:8px;font-size:15px;font-weight:400}.trend svg{width:100%;height:180px}.diagnostic-list>div{color:var(--fault-700);background:var(--warn-100);border:1px solid var(--warn-border);border-radius:7px;gap:14px;margin-bottom:10px;padding:17px;display:flex}.diagnostic-list p{color:var(--fault-700);margin-top:5px;font-size:16px}.test-summary{background:var(--warn-100);color:var(--warn-700);border-radius:7px;align-items:center;gap:15px;margin-bottom:9px;padding:19px;display:flex}.test-summary.passed{background:var(--ok-100);color:var(--ok-700)}.test-summary strong{font-size:18px}.test-summary p{margin-top:5px;font-size:15px}.test-summary>span{white-space:nowrap;margin-left:auto;font:15px monospace}.test-case{border-bottom:1px solid var(--line-200);align-items:center;gap:14px;padding:18px 3px;display:flex}.test-case>div{flex:1}.test-case strong{font-size:16px}.test-case p{color:var(--ink-500);margin-top:4px;font-size:15px}.result-pass{color:var(--ok-700)}.result-fail{color:var(--warn-700)}.replay-strip{background:var(--warn-100);border:1px solid var(--warn-border);color:var(--warn-700);border-radius:8px;align-items:center;gap:16px;margin-top:16px;padding:15px 20px;display:flex}.replay-strip>div{flex-direction:column;gap:5px;min-width:160px;display:flex}.replay-strip strong{font-size:16px}.replay-strip span{font-size:15px}.replay-strip>input{accent-color:var(--warn-700);flex:1;min-width:80px}.replay-strip>span{white-space:nowrap}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:110;background:#0f111573;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-850);border:1px solid var(--line-200);box-shadow:var(--shadow-2);border-radius:14px;width:100%;max-width:770px;max-height:90vh;padding:38px;position:relative;overflow:auto;box-shadow:0 25px 80px #10121638}.modal h2{margin:10px 0 22px;font-size:30px}.modal>p{color:var(--ink-600);font-size:17px;line-height:1.8}.modal .button{margin-top:22px}.modal .panel-note{margin-top:22px;font-size:15px}.beginner-chapters{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.beginner-chapters button{text-align:left;border:1px solid var(--line-300);background:var(--surface);color:var(--ink-700);border-radius:10px;align-items:center;gap:14px;padding:16px 20px;font-size:15px;line-height:1.5;display:flex}.beginner-chapters button[aria-current]{background:var(--brand-50);border-color:var(--brand-border);color:var(--brand-700)}.beginner-chapters strong{font-size:18px;display:block}.beginner-chapters svg{flex-shrink:0}.guided-source{resize:vertical;background:var(--night-900);width:100%;min-height:100px;color:var(--night-text);border:1px solid var(--line-300);border-radius:8px;padding:16px;font-family:monospace;font-size:16px;line-height:1.6}.worked-answer p{color:var(--ink-900);font-size:16px;line-height:1.6}@media (max-width:760px){.beginner-chapters{grid-template-columns:1fr;gap:8px}.beginner-chapters button{padding:12px 16px}}.executed-line{background:#1f9d5a1f!important}.executed-glyph{border-left:3px solid var(--editor-power)}.structured-editor{background:var(--night-900);height:100%;color:var(--night-muted);overflow:auto}.graph-toolbar{border-bottom:1px solid var(--ink-700);color:var(--night-muted);justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;font-size:15px;display:flex}.structured-editor button{color:var(--night-muted);border:1px solid var(--ink-700);border-radius:5px;align-items:center;gap:6px;padding:6px 8px;font-size:15px;display:inline-flex}.structured-editor button:hover{background:var(--night-800)}.structured-editor input,.structured-editor select,.tag-interface input,.tag-interface select{color:var(--night-text);background:var(--night-900);border-color:var(--ink-700);border-radius:4px;padding:7px 8px;font-size:15px}.ladder-canvas{padding:10px;overflow:auto}.structured-editor .rung{text-align:left;border:1px solid var(--night-700);border-radius:6px;align-items:center;width:100%;margin-bottom:10px;padding:12px 0 0;display:flex;position:relative;overflow:auto}.structured-editor .rung.selected{border-color:var(--night-600);background:var(--night-900)}.rung-number{font:15px var(--font-mono);color:var(--night-muted);position:absolute;top:8px;left:14px}.rung svg{width:100%}.structured-editor>.graph-toolbar{z-index:3;background:var(--night-900);position:sticky;top:0}.wb .structured-editor>.graph-toolbar{background:var(--night-800)}.structured-editor .rung-card{margin-bottom:12px;scroll-margin-top:110px}.structured-editor .rung-card .rung{margin-bottom:0;display:block;overflow:visible}.structured-editor .rung-card.selected .rung{border-bottom-right-radius:0;border-bottom-left-radius:0}.ladder-selection-bar{border:1px solid var(--night-600);background:var(--night-900);color:var(--night-text);border-top:0;border-radius:0 0 6px 6px;padding:10px 12px 4px}.wb .ladder-selection-bar{border-color:var(--editor-accent);background:var(--night-800)}.ladder-chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.structured-editor .ladder-chip{min-height:30px;font:14px var(--font-mono);padding:0 9px}.structured-editor .ladder-chip[aria-pressed=true]{border-color:var(--focus-colour);background:var(--editor-selection);color:var(--night-text)}.ladder-actions-gap{flex:1}.graph-toolbar:has(>.ladder-toolbar){padding:6px 10px;display:block}.ladder-toolbar-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ladder-tabs{scrollbar-width:none;gap:2px;display:flex;overflow-x:auto}.structured-editor .ladder-tabs button{white-space:nowrap;border:0;border-bottom:2px solid #0000;border-radius:0;min-height:32px}.structured-editor .ladder-tabs button[aria-selected=true]{border-bottom-color:var(--editor-power);color:var(--night-text)}.ladder-undo{gap:4px;display:flex}.ladder-palette{flex-wrap:wrap;align-items:center;gap:6px;padding:7px 0 3px;display:flex}@media (max-width:640px){.ladder-palette{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.structured-editor .ladder-palette>*{flex:none}.ladder-btn-text{display:none}}.ladder-palette-gap{background:var(--night-600);width:1px;height:22px;margin:0 4px}.structured-editor .ladder-palette button,.structured-editor .ladder-undo button{min-height:30px;padding:0 8px}.structured-editor .ladder-instruction{font:14px var(--font-mono);cursor:grab}.structured-editor .ladder-instruction.output{border-style:dashed}.rung-comment{min-height:4px}.structured-editor .rung-comment button{min-height:0;color:var(--night-muted);font:italic 15px var(--font-sans,inherit);text-align:left;background:0 0;border:0;padding:2px 4px 4px}.structured-editor .rung-comment .has-comment{color:var(--night-text)}.rung-comment input{width:100%;margin-bottom:4px}.rung-scroll{position:relative;overflow:auto visible}.rung-scroll[data-more-right=true],.ladder-tabs[data-more-right=true],.ladder-palette[data-more-right=true]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000)}.rung-scroll[data-more-left=true],.ladder-tabs[data-more-left=true],.ladder-palette[data-more-left=true]{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 48px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 48px),#0000)}.rung-scroll[data-more-left=true][data-more-right=true],.ladder-tabs[data-more-left=true][data-more-right=true],.ladder-palette[data-more-left=true][data-more-right=true]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 48px calc(100% - 48px),#0000);mask-image:linear-gradient(90deg,#0000,#000 48px calc(100% - 48px),#0000)}.rung-more-hint{color:var(--night-muted);margin:0;padding:0 12px 8px;font-size:14px;display:none}.rung[data-overflow=true] .rung-more-hint{display:block}.ladder-editable{cursor:text}.ladder-editable:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.ladder-inplace{z-index:15;position:absolute}.ladder-inplace[data-align=right] .tag-suggestions{left:auto;right:0}.ladder-inplace .tag-suggestions{max-width:calc(100vw - 32px)}.ladder-inplace input{width:100%;min-width:140px;font:15px var(--font-mono);border:1px solid var(--focus-colour);scroll-margin-top:100px;box-shadow:0 6px 20px #00000073}.ladder-level{cursor:pointer}.ladder-drop>rect{stroke-dasharray:4 3}.ladder-drop.ok>rect{fill:#2bb46a1f;stroke:var(--editor-power)}.ladder-drop.no>rect{fill:#0000;stroke:var(--night-600)}.ladder-drop.ok.hot>rect{fill:var(--editor-power);stroke-dasharray:none}.ladder-drop.no.hot>rect{stroke:var(--night-fault-text)}.ladder-drop-label{pointer-events:none}.ladder-drop-label rect{fill:var(--night-950,var(--night-900));stroke:var(--editor-power)}.ladder-drop-label text{fill:var(--night-text)}.ladder-drop.no .ladder-drop-label rect{stroke:var(--night-fault-text)}.ladder-drop.no .ladder-drop-label text{fill:var(--night-fault-text)}.ladder-empty{color:var(--night-muted);padding:20px}.tag-input{display:block;position:relative}.tag-input>input{width:100%}.tag-suggestions{z-index:20;border:1px solid var(--night-600);background:var(--night-950,var(--night-900));border-radius:6px;min-width:100%;max-height:280px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 10px 28px #00000073}.tag-suggestions li{color:var(--night-text);font:15px var(--font-mono);white-space:nowrap;cursor:pointer;border-radius:4px;justify-content:space-between;gap:16px;padding:7px 9px;display:flex}.tag-suggestions li[aria-selected=true]{background:var(--editor-selection)}.tag-suggestions .tag-type{color:var(--night-muted);font-size:13px}@media (pointer:coarse){.tag-suggestions li{align-items:center;min-height:44px}}.structured-editor button.rung-number,.wb .structured-editor button.rung-number{z-index:1;min-height:0;color:var(--night-muted);background:0 0;border:0;padding:0 4px}.ladder-contact,.ladder-branch-rail{cursor:pointer}.ladder-contact:focus,.ladder-branch-rail:focus{outline:none}.ladder-contact:focus-visible>rect:first-child{stroke-width:3px}.ladder-actions{flex-wrap:wrap;gap:8px;display:flex}.ladder-hint{color:var(--night-muted);margin:10px 0 14px;font-size:15px;line-height:1.5}@media (pointer:coarse){.ladder-hint-keys{display:none}}.node-inspector{background:var(--night-900);border-top:1px solid var(--night-700);color:var(--night-text);padding:16px;font-size:15px}.inspector-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;display:flex}.inspector-title strong{font-size:16px}.inspector-title select{max-width:240px}.field-grid{grid-template-columns:1fr 1fr;gap:13px;margin:15px 0;display:grid}.field-grid label{flex-direction:column;gap:7px;font-size:15px;display:flex}.field-grid label input,.field-grid select{width:100%}.field-grid .check-field{flex-direction:row;align-items:center}.field-grid .check-field input{width:18px}.branch-edit{border-top:1px solid var(--night-700);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0;display:flex}.contact-edit{border:1px solid var(--ink-700);border-radius:4px;flex-wrap:wrap;align-items:center;gap:5px;padding:8px;display:flex}.contact-edit input:not([type=checkbox]){width:145px}.contact-edit label{align-items:center;gap:5px;display:flex}.contact-edit .contact-setting{flex-direction:column;align-items:stretch;gap:6px;font-size:15px}.contact-edit .contact-setting input,.contact-edit .contact-setting select{width:190px}.contact-edit input[type=checkbox]{width:16px;height:16px}.branch-edit>span{font-size:15px}.action-edit{align-items:center;gap:10px;margin-bottom:10px;display:flex}.action-edit>select{min-width:160px}.action-edit>input{flex:1}.node-inspector details{border-top:1px solid var(--night-700);margin-top:17px;padding-top:12px}.node-inspector summary{cursor:pointer;line-height:1.6}.connection-form{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.connection-form select{flex:1;min-width:95px}.connection-row{border-bottom:1px solid var(--night-700);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:15px;display:flex}.graph-stage{flex-direction:column;min-height:100%;display:flex}.flow-canvas{flex:1 0 250px;position:relative}.flow-canvas>.react-flow{position:absolute;inset:0}.flow-node{border:1px solid var(--night-600);background:var(--night-800);min-width:220px;color:var(--night-text);border-radius:6px;font-size:15px;overflow:visible}.flow-node.energised{border-color:var(--editor-power);box-shadow:0 0 0 2px var(--editor-power-glow)}.flow-node.initial{outline:3px double var(--night-600);outline-offset:4px}.flow-node-title{border-bottom:1px solid var(--night-700);background:var(--night-700);border-radius:5px 5px 0 0;justify-content:space-between;align-items:center;gap:20px;padding:10px 12px;font-size:16px;font-weight:600;display:flex}.flow-node-body{white-space:nowrap;padding:10px 13px;font:15px/2.1 monospace}.flow-node-output{border-top:1px solid var(--night-700);text-align:right;color:var(--night-text);padding:8px 12px;font:15px monospace}.node-status{background:var(--night-muted);border-radius:50%;width:7px;height:7px}.energised .node-status{background:var(--editor-power)}.react-flow__handle{background:var(--night-text)!important;border-color:var(--night-600)!important;width:10px!important;height:10px!important}.react-flow__controls button{color:var(--night-600)!important;background:var(--canvas-2)!important;border-color:var(--line-300)!important;border-radius:0!important;padding:0!important}.react-flow__edge-text{font-size:15px!important}.structured-editor .transition-label{pointer-events:all;background:var(--night-800);width:max-content;max-width:240px;color:var(--night-text);border:1px solid var(--night-600);text-align:center;white-space:normal;overflow-wrap:anywhere;padding:7px 10px;font-size:15px;line-height:1.5;display:block;position:absolute}.structured-editor .transition-label.selected,.structured-editor .transition-label:focus-visible{outline:2px solid var(--night-warn-text);outline-offset:3px}.structured-editor .transition-label.active{border-color:var(--editor-power);background:var(--editor-power-bg)}.tag-interface{color:var(--night-muted);height:100%;padding:17px;overflow:auto}.tag-interface>p{margin-bottom:15px;font-size:15px;line-height:1.6}.tag-table-wrap{margin-top:14px;overflow:auto}.tag-interface table{border-collapse:collapse;width:100%;min-width:530px;font-size:15px}.tag-interface th{text-align:left;border-bottom:1px solid var(--ink-500);padding:8px 4px;font-weight:500}.tag-interface td{padding:6px 4px}.tag-interface td:first-child input{width:135px}.tag-interface td:nth-child(2) input{width:230px}.tag-interface td:last-child input:not([type=checkbox]){width:70px}.tag-interface>button{border:1px solid var(--ink-500);border-radius:5px;margin-top:15px;padding:7px 12px}.nav-scrim{display:none}@media (min-width:1600px){.page-content{padding:40px 48px}}@media (max-width:1390px){:root{--sidebar:224px}.page-content{padding:28px 28px 38px}.hero-actions{gap:16px;margin-top:22px}.stat-icon{min-width:42px;height:42px}.workbench-main{padding:22px 20px 35px}.simulation-state>span:last-child{display:none}.input-grid{grid-template-columns:repeat(4,1fr)}.monitor-tabs{gap:0;padding:0 5px}.monitor-tabs button{gap:6px;padding:14px 10px}.scan-counter{display:none}.library-toolbar{flex-wrap:wrap}.reference-profiles{grid-template-columns:repeat(4,1fr)}.reference-profiles button{padding:12px 16px}.reference-profiles strong{font-size:18px}.page-footer{margin:0 28px}}@media (max-height:760px) and (min-width:1051px){.brief-content{padding:14px 17px}.criteria{gap:12px}}@media (max-width:1100px){:root{--sidebar:200px}.page-content{padding:27px 24px}.progress-summary{grid-template-columns:repeat(2,1fr);gap:30px 0}.progress-summary>div:nth-child(2){border:0}.progress-columns,.reference-columns{grid-template-columns:1fr}.simulation-state{margin-left:auto}.run-controls .button span{display:none}.editor-status{flex-wrap:wrap;gap:3px}.monitor-tabs button>svg{display:none}.input-grid{grid-template-columns:repeat(3,1fr)}.watch-grid{grid-template-columns:repeat(2,1fr)}.brief-content .criteria{display:none}.test-case{flex-wrap:wrap}.quiz-layout{grid-template-columns:1fr}.quiz-aside{display:none}}@media (max-width:900px){:root{--sidebar:0px}.main-column{margin-left:0}.nav-scrim{z-index:39;background:#0f111552;display:block;position:fixed;inset:0}.page-content{padding:30px 24px}.toast{max-width:calc(100vw - 30px);left:50%}.workbench-main{padding:24px 18px}.reference-card dl>div{grid-template-columns:180px 1fr}}@media (max-width:650px){.page-content{padding:25px 18px 30px}.hero-actions{gap:16px;margin-top:25px}.hero-actions .button{width:100%;padding:14px}.hero-actions .text-button{margin:auto}.page-footer{flex-direction:column;align-items:start;gap:12px;margin:0 18px}.library-toolbar{gap:15px}.filter-tabs{gap:2px}.filter-tabs button{padding:8px 9px;font-size:15px}.search-box,.search-box input{width:100%}.lesson-reader h1{font-size:35px}.lesson-intro{font-size:20px}.lesson-reader>section p{font-size:17px}.try-it{padding:25px}.try-it .button{white-space:normal;text-align:left}.quiz-card{padding:23px}.quiz-card h2{font-size:24px;line-height:1.45}.quiz-options button{gap:12px;padding:14px 12px;font-size:16px}.quiz-actions .button{width:100%}.quiz-finish .button{white-space:normal}.quiz-finish>p{font-size:17px}.progress-summary{gap:27px 0;padding:25px 0}.progress-summary>div{gap:9px;padding:0 20px}.progress-summary strong{font-size:34px}.progress-summary>div>span{line-height:1.5}.white-card{padding:23px}.white-card .button{white-space:normal;text-align:left}.progress-columns{gap:20px}.progress-columns .button-row{gap:10px}.progress-columns .button-row .button{flex:1}.progress-columns p{font-size:16px}.completion-row{gap:10px}.completion-row>strong{width:calc(100% - 34px)}.completion-row>span{margin-left:30px}.reference-profiles{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:20px}.reference-profiles button{padding:12px 14px}.reference-profiles span{margin-bottom:5px}.reference-heading{flex-wrap:wrap;gap:13px}.reference-heading h2{font-size:27px}.reference-card dl>div{grid-template-columns:1fr;gap:9px;padding:18px 0}.reference-card dd{font-size:16px}.reference-columns{gap:20px;margin-top:20px}.workbench-main{padding:19px 12px 30px}.brief-content{padding:15px}.brief-content>p{font-size:16px}.brief-actions{flex-wrap:wrap;gap:14px}.run-controls{flex-wrap:wrap;flex:1;gap:6px}.run-controls .button{padding:10px 11px}.run-controls select{max-width:111px;padding:10px 6px}.equipment-inspector{padding:17px;bottom:95px;left:10px;right:10px}.tag-pills{gap:5px}.tag-pills>span{gap:8px;font-size:15px}.equipment-inspector p{display:none}.pane-heading{padding:13px}.editor-tabs button{padding:10px;font-size:15px}.editor-status{flex-wrap:nowrap;padding:8px 11px;font-size:15px;line-height:1.4}.editor-status>span:last-child{display:none}.node-inspector{padding:14px}.field-grid{grid-template-columns:1fr}.inspector-title{flex-wrap:wrap;gap:11px}.inspector-title select{width:100%;max-width:100%}.graph-toolbar{padding:11px;font-size:15px}.graph-toolbar>span{max-width:180px;line-height:1.5}.structured-editor .rung{padding-top:22px}.monitor-tabs{gap:0;padding:0 3px}.monitor-tabs button{min-width:max-content;padding:14px 12px}.monitor-tabs button svg{display:none}.monitor-body{padding:17px 15px}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.input-toggle{flex-wrap:wrap;gap:7px;font-size:15px}.input-toggle>span:last-child{font-size:15px}.watch-grid{grid-template-columns:1fr}.tag-search{width:100%}.replay-strip{flex-wrap:wrap;gap:10px;padding:14px 13px}.replay-strip>svg{display:none}.replay-strip>div{flex:1;min-width:0}.replay-strip>input{order:4;min-width:100%;padding:0}.replay-strip>span{font-size:15px}.replay-strip>button{padding:0}.test-summary{flex-wrap:wrap;align-items:start;gap:10px;padding:16px}.test-summary>div{flex:1}.test-summary>span{width:100%;margin-left:34px}.test-summary strong{font-size:17px;line-height:1.5}.test-summary p{font-size:15px;line-height:1.7}.test-case{gap:10px;padding:16px 0}.test-case>div{flex:1;min-width:calc(100% - 30px)}.test-case>.button{margin-left:30px}.modal-backdrop{padding:14px}.modal{padding:29px 23px}.modal h2{font-size:27px}.modal>p{font-size:16px}.modal pre{padding:16px;font-size:16px}.modal .button{white-space:normal;width:100%}.toast{padding:14px 16px;font-size:15px;bottom:16px}.scene-loading{min-height:160px}.schematic-line{gap:6px}.schematic-line button{padding:10px;font-size:15px}.reference-heading .eyebrow{letter-spacing:.3px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.eyebrow,.lesson-time,.panel-note,.progress-summary span,.progress-summary small,.completion-row>span,.reference-profiles span,.page-footer,.trend-heading,.numeric-input,.test-case p,.skill-row span,.quiz-aside p,.simulation-state,.simulation-state>span:last-child,.criteria>span{color:var(--ink-600)}@media (max-width:650px){.graph-toolbar>span{max-width:165px}}.next-action{background:var(--canvas);border:1px solid var(--brand-border);border-left:4px solid var(--burgundy);border-radius:9px;align-items:flex-start;gap:12px;margin:22px 0;padding:17px;line-height:1.55;display:flex}.next-action>svg{color:var(--burgundy);flex:none;margin-top:3px}.next-action strong{font-size:17px;display:block}.next-action p{margin:6px 0 0;font-size:16px}.beginner-note{color:var(--ink-700);font-size:15px!important;line-height:1.6!important}.beginner-navigation{border-top:1px solid var(--border);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding:20px 0;display:flex}.beginner-navigation>.button{margin-left:auto}.beginner-navigation>span{text-align:right;width:100%;color:var(--ink-700);font-size:15px}.beginner-success{color:var(--ok-700);align-items:flex-start;gap:9px;font-size:16px;line-height:1.6;display:flex}.beginner-success>svg{flex:none;margin-top:3px}.beginner-checklist{flex-direction:column;gap:12px;font-size:16px;display:flex}.beginner-checklist span{align-items:center;gap:10px;display:flex}.beginner-checklist svg{width:19px;color:var(--ok-700)}.beginner-code{background:var(--night-900);color:var(--night-text);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:20px 0;padding:20px;font:16px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace}.beginner-code span{color:var(--syntax-variable)}.beginner-code em{color:var(--night-warn-text);font-style:normal}.code-key{margin:18px 0;font-size:16px;line-height:1.6}.code-key>div{border-bottom:1px solid var(--surface-2);grid-template-columns:95px 1fr;gap:10px;padding:10px 0;display:grid}.code-key dt{color:var(--brand-700);font:16px/1.6 ui-monospace,SFMono-Regular,monospace}.code-key dd{margin:0}.beginner-question{border:0;margin:22px 0 10px;padding:0}.beginner-question legend{margin-bottom:12px;font-size:17px;font-weight:650;line-height:1.5}.beginner-question label{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:10px;margin:8px 0;padding:12px;font-size:16px;display:flex}.beginner-question input{width:18px;height:18px;accent-color:var(--burgundy)}.beginner-feedback{border-left:3px solid var(--warn-700);background:var(--warn-100);border-radius:6px;padding:14px;font-size:16px;line-height:1.6}.guided-code{background:var(--night-900);color:var(--night-text);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;padding:18px;font:16px/1.8 ui-monospace,SFMono-Regular,monospace;display:flex}.guided-code select{font:inherit;background:var(--bg-800);min-height:44px;color:var(--ink-950);border:2px solid var(--night-muted);border-radius:6px;padding:8px}.beginner-editor-label{margin:18px 0 8px;font-size:16px;font-weight:650;display:block}#beginner-source{resize:vertical;border:1px solid var(--line-300);background:var(--night-900);width:100%;min-height:124px;color:var(--night-text);border-radius:10px;padding:16px;font:16px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace}.beginner-hint{margin:16px 0;display:flex}.beginner-error{border:1px solid var(--fault-border);background:var(--fault-100);color:var(--brand-700);border-radius:9px;margin:16px 0;padding:16px;font-size:16px;line-height:1.6}.beginner-error p{margin:7px 0}.beginner-results{margin:20px 0}.beginner-results>div{border:1px solid var(--line-200);background:var(--surface-2);border-radius:10px;margin:10px 0;padding:14px 16px;font-size:16px;line-height:1.5}.beginner-results p{margin:6px 0 0}.beginner-results .failed{border-color:var(--warn-border);background:var(--warn-100)}.beginner-complete{border:1px solid var(--ok-border);background:var(--ok-100);border-radius:12px;margin-top:22px;padding:22px;font-size:17px;line-height:1.6}.beginner-complete>svg{color:var(--ok-700)}.beginner-complete h3{margin:8px 0 12px;font-size:23px;line-height:1.35}.beginner-complete .button{margin:14px 0}.term-wrap{display:inline;position:relative}.term-button{border:0;border-bottom:1px dashed var(--brand-600);color:var(--brand-700);font:inherit;background:0 0;padding:0;font-weight:600;display:inline}.term-more{color:var(--brand-600);white-space:nowrap;font-weight:600}.term-definition{border:1px solid var(--line-200);background:var(--brand-50);color:var(--ink-700);border-radius:8px;margin:8px 0;padding:12px 15px;font-size:16px;font-style:normal;line-height:1.6;display:block;position:relative}@media (max-width:760px){.code-key>div{grid-template-columns:85px 1fr}}@media (max-height:760px) and (min-width:761px){.beginner-chapters{margin-bottom:12px}.beginner-chapters button{padding:9px 14px}}.workbench-guide{border:1px solid var(--line-100);background:var(--brand-50);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:16px 0;padding:16px 18px;display:grid}.workbench-guide p{margin:0;font-size:16px;line-height:1.6}.sensor-overrides{border:1px solid var(--border);border-radius:8px;margin-top:18px;padding:14px 16px}.sensor-overrides summary{cursor:pointer;font-size:16px;font-weight:600}.sensor-overrides p{color:var(--ink-600);max-width:760px;font-size:15px;line-height:1.6}.tag-visibility{margin:14px 0 4px;font-size:15px}.workbench-guide .text-link{grid-column:1/-1;justify-self:start}.brief-actions .button.primary{background:var(--action-600);color:var(--action-ink);padding:11px 16px}@media (max-width:760px){.workbench-guide{grid-template-columns:1fr;gap:12px}}.schematic-stage{align-items:center;min-width:0;display:flex;position:relative}.schematic-branch{flex-direction:column;gap:8px;width:100%;min-width:0;display:flex}.schematic-arrow{color:var(--ink-600);font-size:22px;position:absolute;left:-20px}.schematic-line{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:100%;display:grid}.schematic-line button{min-width:0;padding:10px 4px;font-size:15px}.schematic-code{white-space:nowrap}.schematic-machine .schematic-line{grid-template-columns:minmax(0,1fr)}.schematic-machine .schematic-branch{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.process-phase{background:var(--surface-2);color:var(--ink-900);border-top:1px solid var(--canvas-2);justify-content:space-between;gap:12px;padding:12px 18px;font-size:15px;display:flex}.skill-row>.text-link{align-items:center;gap:6px;margin-top:12px;padding:0;font-weight:560;text-decoration:none;display:inline-flex}.skill-row>.text-link:hover{text-decoration:underline}.process-feedback{background:var(--canvas);border-top:1px solid var(--line-200);flex-shrink:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.feedback-card{border-bottom:1px solid var(--line-200);border-right:1px solid var(--line-200);flex-direction:column;gap:5px;min-width:0;padding:13px 16px;display:flex}.feedback-card>span{color:var(--ink-700);font-size:15px}.feedback-card strong{color:var(--ink-900);font-variant-numeric:tabular-nums;font-size:23px;font-weight:650}.feedback-card small{color:var(--ink-700);font-size:15px;line-height:1.4}.feedback-card.responding{background:var(--ok-100);box-shadow:inset 3px 0 var(--ok-700)}@media (max-width:760px){.feedback-card{padding:12px}.feedback-card strong{font-size:21px}}.diagram-guide{color:var(--ok-700);background:var(--night-800);margin:0;padding:10px 14px;font-size:15px;line-height:1.5}.learning-figure{border:1px solid var(--line-200);background:var(--night-900);color:var(--night-text);border-radius:10px;margin:20px 0;overflow:hidden}.learning-figure figcaption{color:var(--signal-400);border-bottom:1px solid var(--line-200);padding:12px 16px;font-size:15px;font-weight:600;line-height:1.5}.learning-figure pre{white-space:pre;margin:0;padding:18px;font-size:16px;line-height:1.8;overflow:auto}.learning-figure code{font-size:16px}.figure-scroll{max-width:100%;overflow-x:auto}.figure-scroll svg{display:block}.figure-scroll-hint{display:none}@media (max-width:700px){.learning-figure .figure-scroll-hint{color:var(--night-muted);margin:0;padding:12px 16px 0;font-size:15px;display:block}}.figure-blocks{flex-direction:column;align-items:center;gap:4px;padding:20px;display:flex}.figure-stage{width:300px;max-width:100%}.figure-block{border:1px solid var(--line-300);border-radius:5px;flex-direction:column;gap:8px;padding:14px;display:flex}.figure-block strong{color:var(--night-text);font-size:17px}.figure-block code{white-space:normal;overflow-wrap:anywhere}.figure-connection{text-align:center;color:var(--signal-400);padding:10px;font-size:20px}.trace-table{border-collapse:collapse;width:100%;margin:20px 0;font-size:16px}.trace-table th,.trace-table td{border:1px solid var(--line-200);text-align:left;padding:13px;line-height:1.5}.trace-table th{background:var(--surface-2)}.lesson-reasoning{border:1px solid var(--line-200);background:var(--surface-2);border-radius:8px;margin:18px 0;padding:15px}.lesson-reasoning summary{cursor:pointer;color:var(--ink-900);font-size:16px;font-weight:600}.quiz-card .learning-figure{margin:18px 0 24px}.storage-recovery-dock{z-index:110;height:0;position:sticky;top:0}.storage-recovery{background:linear-gradient(var(--warn-100), var(--warn-100)), var(--surface);border:1px solid var(--warn-border);width:max-content;max-width:min(980px,100% - 32px);box-shadow:var(--shadow-2);color:var(--warn-700);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 8px 8px 14px;font-size:15px;line-height:1.45;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.storage-recovery-icon{flex:none}.storage-recovery p{flex:300px;margin:0}.storage-recovery>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.storage-recovery .button{min-height:34px;padding:0 12px;font-size:14.5px}.storage-recovery-close{width:34px;height:34px;color:inherit;border-radius:8px;flex:none;place-items:center;display:grid}.storage-recovery-close:hover{background:var(--warn-100)}.storage-recovery-short{display:none}.storage-recovery.folded{border-radius:999px;padding:0;left:auto;right:16px;transform:none}.storage-recovery-chip{min-height:34px;color:inherit;border-radius:999px;align-items:center;gap:7px;padding:0 14px;font-size:14.5px;font-weight:600;display:inline-flex}@media (max-width:900px){.storage-recovery-dock{top:var(--header-h)}.storage-recovery{width:calc(100% - 24px);max-width:none;top:8px}.storage-recovery p{flex:1 1 0}.storage-recovery-close{order:1}.storage-recovery>div{flex:100%;order:2}.storage-recovery>div .button{flex:1 1 0;padding:0 8px}.storage-recovery-short{display:inline}.storage-recovery-full,.storage-recovery-more{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.storage-recovery.folded{width:auto;right:12px}}.workbench .back-link,.workbench .equipment-inspector p,.workbench .tag-pills b,.workbench .monitor-tabs button:not(.active),.workbench .scan-counter,.workbench .input-toggle>span:last-child,.workbench .watch-grid code,.workbench .watch-grid span{color:var(--ink-600)}.workbench .value-on{color:var(--ok-700)}.workbench .test-summary:not(.passed){color:var(--warn-700)}.logic-flow{fill:none;stroke:var(--editor-power);stroke-width:3px;stroke-dasharray:7 17;pointer-events:none}.flow-node[data-logic-pulse],.transition-label[data-logic-pulse]{box-shadow:0 0 0 3px rgb(31 157 90/calc(var(--logic-pulse,1) * .45))}.transition-fired{opacity:calc(.35 + var(--logic-pulse,1) * .65)}@media (prefers-reduced-motion:reduce){.logic-flow{stroke-dasharray:none}}.operator-report{border-left:4px solid var(--burgundy);background:var(--brand-50);color:var(--ink-900);margin-bottom:18px;padding:17px 19px;font-size:16px;line-height:1.6}.operator-report blockquote{margin:8px 0}.operator-report>span{color:var(--ink-600);font-size:15px}.lesson-fault-exercise{border-top:1px solid var(--line-200);margin-top:24px;padding-top:15px}.brief-actions{flex-wrap:wrap;align-items:center}.chatter-trend{color:var(--ink);font-size:15px}.chatter-trend>p{line-height:1.6}.chatter-trend .trend-heading{color:var(--ink);flex-wrap:wrap}.signal-caption{flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:15px;display:flex}.signal-caption>span{color:var(--ink-600)}.signal-chart{grid-template-columns:48px minmax(0,1fr);gap:8px;margin:6px 0 20px;display:grid}.signal-chart svg{width:100%;height:120px}.signal-chart.digital svg{height:72px}.signal-scale{color:var(--ink-600);flex-direction:column;justify-content:space-between;padding:6px 0;font-size:15px;display:flex}.mission-operating-guide{border:1px solid var(--border);background:var(--paper);border-radius:8px;margin:18px 0;padding:16px 20px;font-size:15px;line-height:1.6}.mission-operating-guide summary{cursor:pointer;color:var(--burgundy);font-size:16px;font-weight:650}.mission-operating-guide dl>div{border-bottom:1px solid var(--border);grid-template-columns:minmax(150px,1fr) 3fr;gap:16px;padding:12px 0;display:grid}.mission-operating-guide dt{font-weight:650}.mission-operating-guide dd{margin:0}.mission-operating-guide h2{margin-top:24px;font-size:18px}.mission-operating-guide li{padding:4px 0 8px 6px}.mission-readouts{border:1px solid var(--border);background:var(--surface-2);border-radius:8px;flex-basis:100%;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px 18px;margin:0;padding:10px 16px;font-size:15px;display:grid}.mission-readouts dt{color:var(--ink-700)}.mission-readouts code{margin-left:6px;font-size:15px}.mission-readouts dd{margin:3px 0 0;font-size:17px;font-weight:650}@media (min-width:1051px) and (max-height:760px){.mission-readouts>div{flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.mission-readouts dt code{display:none}.mission-readouts dd{margin:0}}@media (max-width:600px){.mission-operating-guide dl>div{grid-template-columns:1fr;gap:4px}}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-950:#f3f2ef;--bg-900:#fff;--bg-850:#fff;--bg-800:#f8f7f5;--bg-750:#fff;--bg-700:#eeede9;--bg-650:#e3e1dc;--signal-300:#2d3138;--signal-400:#1a1d22;--signal-500:#16181c;--signal-600:#000;--signal-ink:#fff;--signal-tint:#16181c0d;--signal-tint-2:#16181c17;--signal-line:#16181c42;--signal-glow:#16181c1a;--lamp-700:#146b3d;--lamp-600:#17804a;--lamp-500:#1f9d5a;--lamp-tint:#1f9d5a1a;--lamp-halo:#1f9d5a2e;--water-400:#3fa7e0;--water-500:#1f8bcb;--run-400:var(--lamp-600);--run-500:var(--lamp-500);--brand-800:var(--ink-950);--brand-700:var(--ink-950);--brand-600:var(--ink-900);--brand-500:var(--signal-500);--brand-100:var(--signal-tint);--brand-50:#16181c08;--action-700:#2b2e34;--action-600:var(--signal-500);--action-100:var(--signal-tint);--action-ink:#fff;--ink-950:#0f1115;--ink-900:#1a1d22;--ink-800:#2d3138;--ink-700:#40454d;--ink-600:#535861;--ink-500:#62666e;--ink-400:#a3a7ad;--line-input:#8e8c85;--line-300:#d3d0c9;--line-200:#e3e1db;--line-100:#ecebe6;--surface:var(--bg-850);--surface-2:var(--bg-800);--canvas:var(--bg-950);--canvas-2:var(--bg-700);--hairline:#16181c12;--highlight:0 0 0 transparent;--night-950:#f6f5f2;--night-900:#fff;--night-800:#f8f7f4;--night-700:#eeede9;--night-600:#d3d0c9;--night-text:#1a1d22;--night-muted:#62666e;--ok-700:#17703f;--ok-600:#1f9d5a;--ok-100:#1f9d5a1a;--warn-700:#8a5600;--warn-100:#d6941724;--fault-700:#b42318;--fault-100:#d6342817;--info-700:#1d5fa8;--info-100:#2570c417;--rail-glass:#fafaf8db;--rail-bg:#fafaf8;--rail-hover:#16181c0b;--rail-active:#16181c12;--rail-text:#2d3138;--rail-muted:#62666e;--rail-accent:var(--lamp-500);--rail-line:#e7e5e0;--focus-colour:#2563eb;--brand-border:#16181c2e;--ok-border:#1f9d5a61;--warn-border:#d6941773;--fault-border:#d6342861;--editor-selection:#d7e3fb;--editor-line:#f6f5f1;--editor-power:#1f9d5a;--editor-power-glow:#1f9d5a2e;--editor-power-bg:#e5f3eb;--editor-wire:#6b7079;--editor-accent:#1a1d22;--syntax-comment:#6b7079;--syntax-keyword:#2148c0;--syntax-variable:#8a3b12;--syntax-number:#0b6e66;--syntax-type:#7444c2;--night-warn-bg:#fff3d6;--night-warn-text:#7a4b00;--night-fault-text:#b42318;--showroom-950:#0f1115;--showroom-900:#16191e;--showroom-800:#1f232a;--showroom-line:#ffffff1a;--on-dark:#fff;--on-dark-2:#ffffffbd;--on-dark-3:#ffffff94;--lamp-on-dark:#6fe0a0;--stage-top:#fbfbf9;--stage-mid:#f0efeb;--stage-bottom:#e2e0da;--stage-grid-cell:#dad7d0;--stage-grid-section:#c8c4bb;--chart-grid:#e6e4df;--chart-axis:#62666e;--chart-signal:var(--ink-900);--chart-good:var(--lamp-500);--chart-muted:#a3a7ad;--burgundy:var(--brand-600);--burgundy-dark:var(--brand-700);--ink:var(--ink-900);--muted:var(--ink-500);--border:var(--line-200);--paper:var(--canvas);--green:var(--ok-700);--blush:var(--brand-100);--font-sans:var(--font-geist), "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-display:var(--font-sans);--font-serif:var(--font-instrument-serif), "Iowan Old Style", Georgia, serif;--font-mono:var(--font-geist-mono), "SFMono-Regular", Consolas, monospace;--display-stretch:100%;--fs-15:15px;--fs-16:16px;--fs-17:17px;--fs-19:19px;--fs-22:22px;--fs-28:28px;--fs-36:36px;--fs-48:48px;--fs-display:clamp(44px, 5.4vw, 84px);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--r-xl:18px;--r-pill:999px;--r-xs:4px;--r-sm:8px;--r-md:10px;--r-lg:14px;--shadow-soft:0 1px 2px #1012160d, 0 8px 24px -14px #10121624;--shadow-brand:0 1px 2px #10121633;--shadow-1:0 1px 2px #10121612;--shadow-2:0 1px 2px #1012160f, 0 24px 60px -24px #10121647;--focus:0 0 0 2px #fff, 0 0 0 4px var(--focus-colour);--rail:264px;--rail-collapsed:76px;--header-h:60px;--page-max:1880px;--ease:cubic-bezier(.2, .7, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1)}@media screen{:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-950:#0f1115;--bg-900:#15181d;--bg-850:#191c22;--bg-800:#1e2228;--bg-750:#1c2026;--bg-700:#23272e;--bg-650:#2b3038;--signal-300:#c9ccd1;--signal-400:#e4e6e9;--signal-500:#f4f5f6;--signal-600:#fff;--signal-ink:#0f1115;--signal-tint:#ffffff0f;--signal-tint-2:#ffffff1a;--signal-line:#ffffff42;--signal-glow:#ffffff1f;--action-700:#e6e7e9;--action-600:#fff;--action-100:#ffffff14;--action-ink:#0f1115;--brand-50:#ffffff08;--lamp-700:#6fe0a0;--lamp-600:#4cd08a;--lamp-500:#2bb46a;--lamp-tint:#4cd08a1f;--lamp-halo:#4cd08a38;--water-400:#4cb3ea;--water-500:#2a98d6;--ink-950:#fff;--ink-900:#eef0f2;--ink-800:#d9dce1;--ink-700:#c2c6cc;--ink-600:#a9aeb6;--ink-500:#8e939c;--ink-400:#5c616a;--line-input:#6b717b;--line-300:#353a43;--line-200:#2a2e35;--line-100:#22262c;--hairline:#ffffff12;--night-950:#0c0e11;--night-900:#111317;--night-800:#171a1f;--night-700:#23272e;--night-600:#353a43;--night-text:#e6e8eb;--night-muted:#8a9099;--ok-700:#6fe0a0;--ok-600:#2bb46a;--ok-100:#4cd08a21;--warn-700:#f3c46b;--warn-100:#f3c46b21;--fault-700:#ff8f86;--fault-100:#ff8f861f;--info-700:#8ec5ff;--info-100:#8ec5ff1f;--brand-border:#ffffff2e;--ok-border:#4cd08a61;--warn-border:#f3c46b6b;--fault-border:#ff8f8666;--rail-glass:#111317e0;--rail-bg:#111317;--rail-hover:#ffffff0f;--rail-active:#ffffff1a;--rail-text:#d9dce1;--rail-muted:#8e939c;--rail-line:#22262c;--focus-colour:#6f9bff;--editor-selection:#26406b;--editor-line:#161a20;--editor-power:#2bb46a;--editor-power-glow:#2bb46a40;--editor-power-bg:#2bb46a29;--editor-wire:#8a9099;--editor-accent:#e6e8eb;--syntax-comment:#7d838c;--syntax-keyword:#7aa2ff;--syntax-variable:#f0a36b;--syntax-number:#5fd3c4;--syntax-type:#c39bff;--night-warn-bg:#f3c46b24;--night-warn-text:#f3c46b;--night-fault-text:#ff8f86;--stage-top:#262a31;--stage-mid:#1b1e23;--stage-bottom:#111317;--stage-grid-cell:#2a2f36;--stage-grid-section:#3a4049;--chart-grid:#2a2e35;--chart-axis:#8e939c;--chart-muted:#5c616a;--shadow-soft:0 1px 2px #0006, 0 10px 28px -14px #0009;--shadow-brand:0 8px 20px -10px #000000b3;--shadow-1:0 1px 2px #00000073;--shadow-2:0 1px 2px #0006, 0 24px 60px -24px #000000bf}}:root{--tour-dim:#0009}
:root{font-family:var(--font-sans);font-size:var(--fs-16);color:var(--ink-900);background:var(--canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;accent-color:var(--ink-900)}body{background:var(--canvas);color:var(--ink-900)}::selection{color:var(--ink-950);background:#2563eb2e}h1,h2,h3,h4{font-family:var(--font-sans);color:var(--ink-950);letter-spacing:-.022em;font-weight:640;line-height:1.15}h1{font-family:var(--font-display);font-size:var(--fs-36);letter-spacing:-.03em;font-weight:650}h2{font-size:var(--fs-28)}h3{font-size:var(--fs-19);letter-spacing:-.012em}p{line-height:1.6}code,pre,kbd{font-family:var(--font-mono)}code{font-size:.94em}a{color:var(--ink-950);-webkit-text-decoration-color:var(--line-input);text-decoration-color:var(--line-input);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--ink-950);text-decoration-color:currentColor}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{box-shadow:var(--focus);outline:none}input,select,textarea{border:1px solid var(--line-input);border-radius:var(--r-sm);background:var(--bg-900);color:var(--ink-900);font-size:var(--fs-15);transition:border-color .14s var(--ease), background .14s var(--ease);padding:8px 11px}input::placeholder,textarea::placeholder{color:var(--ink-500)}input:hover,select:hover,textarea:hover{border-color:var(--ink-600)}select{background-color:var(--bg-900)}option{background:var(--bg-750);color:var(--ink-900)}.eyebrow{font-size:var(--fs-15);letter-spacing:.01em;text-transform:none;color:var(--ink-500);font-weight:560}.button,.btn{border-radius:var(--r-sm);min-height:40px;font-size:var(--fs-15);white-space:nowrap;transition:background .14s var(--ease), border-color .14s var(--ease), color .14s var(--ease), box-shadow .16s var(--ease), transform .16s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex;position:relative}.button.primary,.btn-primary{background:var(--action-600);color:var(--action-ink);box-shadow:inset 0 1px 0 #ffffff1f, var(--shadow-brand);border-color:#0000}.button.primary:hover:not(:disabled),.btn-primary:hover:not(:disabled){background:var(--action-700);color:var(--action-ink);box-shadow:inset 0 1px #ffffff1f,0 6px 16px -8px #10121673}.button.primary:active:not(:disabled),.btn-primary:active:not(:disabled){background:var(--signal-600);transform:translateY(1px)}.button.dark,.btn-dark{background:var(--bg-700);color:var(--ink-950);border-color:var(--line-300)}.button.dark:hover:not(:disabled),.btn-dark:hover:not(:disabled){background:var(--bg-650);border-color:var(--line-input)}.button.secondary,.btn-secondary{background:var(--bg-900);border-color:var(--line-300);color:var(--ink-900);box-shadow:var(--shadow-1)}.button.secondary:hover:not(:disabled),.btn-secondary:hover:not(:disabled){border-color:var(--line-input);background:var(--bg-800);color:var(--ink-950)}.btn-ghost{color:var(--ink-800);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--rail-hover);color:var(--ink-950)}.btn-sm{min-height:34px;padding:0 12px}.button:disabled,.btn:disabled{opacity:1;background:var(--bg-800);color:var(--ink-500);border-color:var(--line-200);box-shadow:none}.text-button{font-size:var(--fs-15);color:var(--ink-950);align-items:center;gap:6px;padding:6px 2px;font-weight:600;display:inline-flex}.text-button:hover{color:var(--ink-950);text-underline-offset:3px;text-decoration:underline}.text-button svg{transition:transform .16s var(--ease)}.text-button:hover svg{transform:translate(2px)}.icon-btn{border-radius:var(--r-sm);border:1px solid var(--line-200);background:var(--bg-900);width:36px;height:36px;color:var(--ink-700);transition:background .14s var(--ease), color .14s var(--ease), border-color .14s var(--ease);place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){border-color:var(--line-300);color:var(--ink-950);background:var(--bg-800)}.card{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--r-md)}.chip{min-height:28px;font-size:var(--fs-15);background:var(--bg-700);color:var(--ink-800);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-weight:560;display:inline-flex}.chip.ok{background:var(--ok-100);color:var(--ok-700)}.chip.warn{background:var(--warn-100);color:var(--warn-700)}.chip.fault{background:var(--fault-100);color:var(--fault-700)}.chip.brand{background:var(--lamp-tint);color:var(--lamp-700)}.dot{background:var(--ink-400);border-radius:50%;flex:none;width:8px;height:8px}.dot.ok{background:var(--ok-600);box-shadow:0 0 0 3px var(--lamp-halo)}.dot.warn{background:var(--warn-700);box-shadow:0 0 0 3px #d694172e}.dot.fault{background:var(--fault-700);box-shadow:0 0 0 3px #d6342826}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}html[data-route=pending] main{visibility:hidden}main[tabindex="-1"]:focus,main[tabindex="-1"]:focus-visible{box-shadow:none;outline:none}*{scrollbar-color:#353a43 transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#353a43 padding-box padding-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:#b9b6ae}::-webkit-scrollbar-track{background:0 0}
.shell{grid-template-columns:var(--rail) minmax(0, 1fr);background:var(--canvas);min-height:100vh;display:grid}.shell.rail-collapsed{grid-template-columns:var(--rail-collapsed) minmax(0, 1fr)}.shell .main-column{isolation:isolate;flex-direction:column;min-width:0;min-height:100vh;margin-left:0;display:flex;position:relative}.shell .main-column:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#ffffff09 1px,#0000 1px) 0 0/40px 40px,linear-gradient(90deg,#ffffff09 1px,#0000 1px) 0 0/40px 40px;height:640px;position:absolute;inset:0 0 auto;-webkit-mask-image:radial-gradient(120% 100% at 70% 0,#000 0%,#0000 75%);mask-image:radial-gradient(120% 100% at 70% 0,#000 0%,#0000 75%)}.shell.workbench-shell .main-column:before,.shell.focus-view .main-column:before{opacity:.45}.shell .main-column>main{flex:1 0 auto}.shell .skip-link{border-radius:var(--r-sm);box-shadow:var(--shadow-2);font-weight:600}.rail{gap:var(--s-3);height:100vh;padding:var(--s-5) var(--s-3) var(--s-4);background:var(--rail-bg);border-right:1px solid var(--rail-line);z-index:40;scrollbar-width:thin;flex-direction:column;display:flex;position:sticky;top:0;overflow:hidden auto}.rail:after{display:none}.rail-head{min-height:48px;padding:0 var(--s-2) var(--s-2);justify-content:space-between;align-items:center;display:flex}.rail-brand{min-width:0;color:var(--ink-950);text-align:left;border-radius:var(--r-md);align-items:center;text-decoration:none;display:flex}.brand-lockup{align-items:center;gap:12px;min-width:0;display:inline-flex}.brand-lockup-mark{flex:none}.brand-lockup-logo{width:auto;max-width:100%;display:block}.brand-lockup>.brand-lockup-mark{display:none}.rail-collapsed .brand-lockup>.brand-lockup-mark{display:block}.rail-collapsed .brand-lockup-logo{display:none}.rail-nav{flex-direction:column;gap:2px;display:flex}.rail-nav a,.rail-progress,.rail-toggle{border-radius:var(--r-sm);width:100%;min-height:40px;font-size:var(--fs-15);color:var(--rail-text);text-align:left;transition:background .15s var(--ease), color .15s var(--ease);align-items:center;gap:12px;padding:0 12px;font-weight:520;text-decoration:none;display:flex;position:relative}.rail-nav a svg{color:var(--rail-muted);stroke-width:1.8px;transition:color .15s var(--ease)}.rail-nav a:hover{background:var(--rail-hover);color:var(--ink-950)}.rail-nav a:hover svg{color:var(--ink-800)}.rail-nav a.active{background:var(--rail-active);color:var(--ink-950);font-weight:600}.rail-nav a.active svg{color:var(--ink-950)}.rail-nav a.active:before{content:"";background:var(--lamp-500);border-radius:0 3px 3px 0;width:3px;position:absolute;top:11px;bottom:11px;left:-12px}.rail-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.rail-count{background:var(--bg-700);min-width:28px;font-family:var(--font-mono);font-size:var(--fs-15);text-align:center;color:var(--ink-600);font-variant-numeric:tabular-nums;border-radius:999px;padding:1px 7px;font-weight:500}.rail-nav a.active .rail-count{background:var(--bg-900);color:var(--ink-900);box-shadow:0 0 0 1px var(--line-200)}.rail-foot{gap:var(--s-2);padding-top:var(--s-4);flex-direction:column;margin-top:auto;display:flex}.rail-progress{border:1px solid var(--line-200);background:var(--bg-900);min-height:60px;box-shadow:var(--shadow-1);color:var(--rail-text);padding:10px 12px}.rail-progress-ring{flex:none;place-items:center;width:38px;height:38px;display:grid;position:relative}.rail-progress-ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.rail-progress-ring .ring-track{stroke:var(--bg-650)}.rail-progress-ring .ring-fill{stroke:var(--lamp-500);transition:stroke-dashoffset .6s var(--ease-out)}.rail-progress-ring>svg+svg,.rail-progress-ring>.ring-icon{color:var(--ink-800);position:static;transform:none}.rail-progress .rail-label{line-height:1.3;display:grid}.rail-progress .rail-label strong{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink-950);font-weight:650}.rail-progress .rail-label span{color:var(--rail-muted);font-weight:450}.rail-progress:hover{border-color:var(--line-300);background:var(--bg-900)}.rail-save{min-height:30px;font-size:var(--fs-15);color:var(--rail-muted);align-items:center;gap:10px;padding:0 14px;display:flex}.rail-toggle{color:var(--rail-muted);min-height:36px}.rail-toggle:hover{background:var(--rail-hover);color:var(--rail-text)}.rail-collapsed .rail{align-items:stretch;padding-inline:12px}.rail-collapsed .rail:after{height:120px}.rail-collapsed .rail-label,.rail-collapsed .rail-count{clip:rect(0 0 0 0);width:1px;height:1px;overflow:hidden;position:absolute!important}.rail-collapsed .rail-head{padding:0 0 var(--s-2);justify-content:center}.rail-collapsed .rail-nav a,.rail-collapsed .rail-progress,.rail-collapsed .rail-toggle,.rail-collapsed .rail-save{justify-content:center;padding:0}.rail-collapsed .rail-progress{box-shadow:none;background:0 0;border-color:#0000}.rail-collapsed .rail-nav a.active:before{left:-12px}.mobile-bar,.nav-scrim{display:none}@media (max-width:900px){.shell,.shell.rail-collapsed{grid-template-columns:minmax(0,1fr)}.mobile-bar{z-index:30;align-items:center;gap:var(--s-3);height:var(--header-h);padding:0 var(--s-4);background:var(--rail-glass);border-bottom:1px solid var(--rail-line);-webkit-backdrop-filter:blur(18px)saturate(140%);backdrop-filter:blur(18px)saturate(140%);display:flex;position:sticky;top:0}.mobile-brand{min-width:0;font-size:var(--fs-16);color:var(--ink-950);flex:1;align-items:center;gap:10px;font-weight:620;text-decoration:none;display:flex}.mobile-brand>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.xp-chip{border:1px solid var(--line-200);background:var(--bg-900);min-height:34px;color:var(--ink-900);font-weight:620;font-size:var(--fs-15);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.rail{width:min(320px,86vw);height:auto;transition:transform .24s var(--ease-out);border-right-color:var(--line-200);overscroll-behavior:contain;position:fixed;inset:0 auto 0 0;transform:translate(-102%)}.rail.open{transform:none;box-shadow:24px 0 60px #1012162e}.nav-scrim{z-index:39;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);touch-action:none;background:#0f111552;display:block;position:fixed;inset:0}html:has(.rail.open){overflow:hidden}.rail-nav a{min-height:44px}}@media (max-width:900px) and (prefers-reduced-motion:reduce){.rail{transition:none}}.rail-group{font-size:var(--fs-15);color:var(--rail-muted);align-items:center;gap:10px;margin:16px 12px 6px;font-weight:500;display:flex}.rail-group:after{content:"";background:linear-gradient(90deg, var(--rail-line), transparent);flex:1;height:1px}.rail-collapsed .rail-group{background:var(--line-200);height:1px;margin:10px 14px}.rail-collapsed .rail-group:after,.rail-collapsed .rail-group .rail-label{display:none}
.stage-consequence{background:var(--warn-100);border-top:1px solid var(--warn-border);color:var(--warn-700);flex:none;gap:4px;padding:10px 16px;font-size:15px;line-height:1.45;display:grid}.stage{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--r-md);flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden;container:stage/inline-size}.stage-bar{justify-content:space-between;align-items:center;gap:var(--s-3);border-bottom:1px solid var(--line-100);background:var(--surface);min-height:54px;padding:8px 10px 8px 16px;display:flex}.stage-title{align-items:center;gap:10px;min-width:0;display:flex}.stage-title>*{flex:none}.stage-title>strong{flex:0 auto;min-width:0}.stage-title>.simulation-state{flex:0 auto;gap:6px;min-width:0;display:flex}.stage-title .simulation-state .chip{flex:0 auto;min-width:0}.chip-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.stage-tools,.stage-view{min-width:0}.stage-view select{min-width:120px}.stage-title strong{font-size:var(--fs-16);color:var(--ink-950);white-space:nowrap;text-overflow:ellipsis;font-weight:640;overflow:hidden}.stage-tools{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.stage-bar>.stage-tools{flex:0 3 auto}.stage-tools .stage-view{flex:0 auto;min-width:104px}.stage-tools .stage-view select{width:100%}.stage-view select{max-width:250px;height:36px;padding:0 32px 0 10px;font-weight:560}.stage-body{flex-direction:column;flex:1;min-height:0;display:flex}.stage-canvas{background:radial-gradient(120% 95% at 50% 32%, var(--stage-top) 0%, var(--stage-mid) 52%, var(--stage-bottom) 100%);flex:1;min-height:0;position:relative}.stage-canvas>div:not(.view-pad,.stage-bar,.gesture-tip),.stage-canvas canvas{width:100%!important;height:100%!important}.stage-canvas:focus-visible{box-shadow:inset 0 0 0 3px var(--focus-colour);outline:none}.stage-canvas .scene-loading{color:var(--ink-500);font-size:var(--fs-15);place-items:center;display:grid;position:absolute;inset:0}.stage-hint{background:var(--surface);box-shadow:var(--shadow-1);color:var(--ink-600);font-size:var(--fs-15);pointer-events:none;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;display:inline-flex;position:absolute;bottom:12px;left:12px}.gesture-tip{z-index:4;border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface);width:min(280px,100% - 24px);box-shadow:var(--shadow-2);color:var(--ink-900);animation:gesture-tip-in .32s var(--ease-out) both;gap:10px;padding:16px 18px;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.gesture-tip strong{font-size:var(--fs-17)}.gesture-tip ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.gesture-tip li{font-size:var(--fs-15);color:var(--ink-700);align-items:center;gap:12px;display:flex}.gesture-tip li svg{color:var(--brand-600);flex:none}.gesture-tip b{color:var(--ink-900)}.gesture-tip .btn{justify-self:stretch;min-height:44px}@keyframes gesture-tip-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.gesture-tip{animation:none}}.stage-foot{border-top:1px solid var(--line-100);background:var(--surface)}.stage-detail{border-top:1px solid var(--line-100);background:var(--surface-2);gap:6px;padding:14px 56px 14px 16px;display:grid;position:relative}.stage-detail>div:first-child{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.stage-detail-code{font-family:var(--font-mono);font-size:var(--fs-15);color:var(--brand-700);font-weight:600}.stage-detail strong{font-size:var(--fs-16)}.stage-detail-live{font-size:var(--fs-15);color:var(--ok-700);font-weight:560}.stage-detail p{font-size:var(--fs-15);color:var(--ink-600);max-width:78ch}.stage-detail-tags{flex-wrap:wrap;gap:6px;display:flex}.stage-detail-tags code{font-size:var(--fs-15);border-radius:var(--r-xs);background:var(--canvas-2);color:var(--ink-800);padding:2px 7px}.stage-detail>.icon-btn{position:absolute;top:10px;right:10px}.stage.compact .stage-bar{min-height:48px}.stage.is-fullscreen{border:0;border-radius:0;height:100vh}.reading-note.reading-process-value{color:var(--ink-700);font-variant-numeric:tabular-nums;display:block}.readings{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.reading{border-left:1px solid var(--line-100);gap:2px;min-width:0;padding:12px 16px;display:grid}.reading:first-child{border-left:0}.reading-label{font-size:var(--fs-15);color:var(--ink-500);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.reading-value{font-size:var(--fs-22);letter-spacing:-.02em;color:var(--ink-950);font-variant-numeric:tabular-nums;font-weight:640;line-height:1.2}.reading-note{font-size:var(--fs-15);color:var(--ink-500);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.reading.on .reading-value{color:var(--ok-700)}.reading.alert .reading-value{color:var(--fault-700)}@media (max-width:700px){.stage-bar{flex-wrap:wrap;padding:8px 10px}.stage-tools{justify-content:flex-start;width:100%}.stage-view{flex:1}.stage-view select{width:100%;max-width:none}.stage-hint{display:none}.readings{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.reading{padding:8px 10px}.reading-value{font-size:var(--fs-17)}.reading-note{display:none}}@container stage (max-width:860px){.stage-optional{display:none!important}.stage-view select{max-width:190px}}@container stage (max-width:620px){.stage-title strong{display:none}}@media (max-height:760px) and (min-width:901px){.stage-bar{min-height:48px;padding-block:6px}.reading{padding:8px 14px}.reading-note{display:none}.reading-value{font-size:var(--fs-19)}}@container stage (max-width:760px){.simulation-state:has(.process-phase)>.chip:first-child .chip-text{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.simulation-state:has(.process-phase)>.chip:first-child{padding:0 9px}}.view-pad{z-index:2;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:12px;right:12px}.view-zoom,.view-dpad{border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-2);padding:3px}.view-zoom{gap:2px;display:grid}.view-dpad{grid-template-rows:repeat(3,32px);grid-template-columns:repeat(3,32px);gap:2px;display:grid}.view-pad button{border-radius:var(--r-sm);width:32px;height:32px;color:var(--ink-800);touch-action:none;-webkit-user-select:none;user-select:none;place-items:center;display:grid}.view-pad button:hover{background:var(--canvas-2);color:var(--ink-950)}.view-pad button:active{background:var(--line-200)}.view-pad .corner{color:var(--ink-500)}.view-pad .view-home{color:var(--brand-600)}@container stage (max-width:760px){.view-dpad{grid-template-rows:32px;grid-template-columns:32px}.view-dpad>:not(.view-home){display:none}}.stage-hint .hint-short{display:none}@container stage (max-width:900px){.stage-hint .hint-long{display:none}.stage-hint .hint-short{display:inline}}@container stage (max-width:480px){.stage-hint{display:none}}.stage-bar.stage-bar-overlay{z-index:3;pointer-events:none;background:0 0;border:0;min-height:0;padding:10px 10px 0 12px;position:absolute;inset:0 0 auto}.stage-bar-overlay>*{pointer-events:auto}.stage-bar-overlay .stage-title>strong,.stage-bar-overlay .stage-tools{background:color-mix(in srgb, var(--surface) 86%, transparent);-webkit-backdrop-filter:blur(10px);box-shadow:0 0 0 1px color-mix(in srgb, var(--line-200) 70%, transparent), var(--shadow-1)}.stage-bar-overlay .stage-title>strong{font-size:var(--fs-15);border-radius:999px;padding:7px 14px}.stage-bar-overlay .stage-tools{border-radius:var(--r-md);gap:2px;padding:3px}.stage-bar-overlay .stage-view select{background-color:#0000;border-color:#0000;height:34px}.stage-bar-overlay .stage-view select:hover{background-color:var(--canvas-2)}.stage-bar-overlay .icon-btn{background:0 0;border-color:#0000;width:34px;height:34px}.stage-bar-overlay .icon-btn:hover{background:var(--canvas-2)}.rig-tooltip-anchor{pointer-events:none}.rig-tooltip{border-radius:var(--r-md);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(10px);width:max-content;max-width:280px;box-shadow:0 0 0 1px color-mix(in srgb, var(--line-200) 70%, transparent), var(--shadow-2);color:var(--ink-700);font-size:var(--fs-15);pointer-events:none;gap:2px;padding:8px 12px 9px;line-height:1.35;display:grid;transform:translate(16px,calc(-100% - 12px))}.rig-tooltip.left{transform:translate(calc(-100% - 16px),calc(-100% - 12px))}.rig-tooltip.below{transform:translate(16px,16px)}.rig-tooltip.left.below{transform:translate(calc(-100% - 16px),16px)}.rig-tooltip.centred{max-width:min(280px,100vw - 48px);transform:translate(-50%,calc(-100% - 14px))}.rig-tooltip strong{color:var(--ink-950);font-size:var(--fs-16);align-items:baseline;gap:8px;font-weight:650;display:flex}.rig-tooltip code{font-family:var(--font-mono);font-size:var(--fs-15);color:var(--ink-600);font-weight:500}
.focus-view .page-content{max-width:none;padding:14px 18px 18px}.page-content:has(>.lab){flex-direction:column;gap:12px;height:100vh;display:flex}.page-content .beginner-chapters{border-radius:var(--r-md);background:var(--canvas-2);align-self:flex-start;gap:4px;margin:0;padding:4px;display:inline-flex}.page-content .beginner-chapters button{border-radius:var(--r-sm);color:var(--ink-600);font-size:var(--fs-15);background:0 0;border:0;align-items:center;gap:10px;padding:8px 14px;line-height:1.3;display:flex}.page-content .beginner-chapters button svg{width:18px;height:18px}.page-content .beginner-chapters strong{font-size:var(--fs-15);color:inherit;margin-right:6px;font-weight:620;display:inline}.page-content .beginner-chapters button[aria-current]{background:var(--surface);color:var(--ink-950);box-shadow:var(--shadow-1)}.beginner-chapters .chapter-complete{color:var(--ok-700);flex:none}.lab{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex}.lab-head{justify-content:space-between;align-items:center;gap:var(--s-6);flex-wrap:wrap;display:flex}.lab-title{gap:2px;display:grid}.lab-title h1{font-size:var(--fs-28)}.lab-mobile-action{display:none}.lab-head{align-items:flex-end}.lab-stepper{flex:620px;gap:10px;min-width:0;display:grid}.lab-stepper-meta{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.lab-stepper-meta strong{font-size:var(--fs-16);color:var(--brand-700)}.lab-stepper-meta>span:not(.lab-stepper-bar){font-size:var(--fs-15);color:var(--ink-600)}.lab-stepper-bar{background:var(--line-200);border-radius:999px;flex:120px;min-width:80px;height:6px;overflow:hidden}.lab-stepper-bar>span{border-radius:inherit;background:var(--brand-600);height:100%;transition:width .3s var(--ease);display:block}.lab-stepper ol{grid-template-columns:repeat(6,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.lab-stepper li{position:relative}.lab-stepper li+li:before{content:"";background:var(--line-300);border-radius:2px;height:2px;position:absolute;top:15px;left:calc(20px - 50%);right:calc(50% + 20px)}.lab-stepper li.done+li:before{background:var(--ok-600)}.lab-stepper button{border-radius:var(--r-sm);text-align:center;flex-direction:column;align-items:center;gap:6px;width:100%;padding:0 4px 2px;display:flex;position:relative}.lab-stepper button:disabled{cursor:not-allowed}.lab-stepper-mark{border:2px solid var(--line-300);background:var(--surface);width:32px;height:32px;color:var(--ink-700);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-weight:700;display:grid}.lab-stepper li.done .lab-stepper-mark{border-color:var(--ok-600);background:var(--ok-600);color:var(--bg-950)}.lab-stepper li.current .lab-stepper-mark{border-color:var(--signal-500);background:var(--signal-500);color:var(--signal-ink);box-shadow:0 0 0 4px var(--signal-tint-2), 0 0 18px var(--signal-glow)}.lab-stepper li.locked .lab-stepper-mark{border-color:var(--line-200);background:var(--canvas-2);color:var(--ink-500)}.lab-stepper-name{font-size:var(--fs-15);color:var(--ink-700);font-weight:560;line-height:1.25}.lab-stepper li.current .lab-stepper-name{color:var(--ink-950);font-weight:700}.lab-stepper li.locked .lab-stepper-name{color:var(--ink-500)}.lab-stepper button:hover:not(:disabled) .lab-stepper-name{color:var(--brand-700);text-underline-offset:3px;text-decoration:underline}.lab-body{flex:1;grid-template-columns:minmax(340px,440px) minmax(0,1fr);gap:14px;min-height:0;display:grid}@media (min-width:901px){.lab-body{min-height:560px}.lab-body:has(.lab-input-overrides[open]){min-height:680px}.lab-stage .stage-canvas{flex-basis:320px;min-height:320px}}.lab-stage{min-width:0;min-height:0}.lab-guide{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--r-md);min-height:0;font-size:var(--fs-16);flex-direction:column;display:flex;overflow:hidden}.lab-guide-top{flex:none;padding:18px 22px 2px}.lab-guide-body{flex:1;min-height:0;padding:2px 22px 16px;overflow-y:auto}.lab-guide>p,.lab-guide p{color:var(--ink-700);margin:0 0 12px}.lab-step-count{font-weight:600;font-size:var(--fs-15)!important;color:var(--brand-600)!important;margin:0 0 4px!important}.lab-guide h2{font-size:var(--fs-22);outline:none;margin-bottom:14px}.lab-guide .next-action{background:var(--brand-50);border:1px solid var(--brand-border);border-radius:var(--r-md);gap:12px;margin:0 0 18px;padding:14px 16px;display:flex}.lab-guide .next-action>svg{color:var(--brand-600);margin-top:2px}.lab-guide .next-action strong{font-size:var(--fs-15);color:var(--brand-700);display:block}.lab-guide .next-action p{font-size:var(--fs-16);color:var(--ink-900);margin:2px 0 0;font-weight:540}.lab-guide .guided-code,.lab-guide .beginner-code,.lab-guide .guided-source{background:var(--night-900);color:var(--night-text);border:1px solid var(--night-700);border-radius:var(--r-md);font-family:var(--font-mono);font-size:var(--fs-16)}.lab-guide .guided-code{margin:0 0 14px;padding:14px 16px}.lab-guide .guided-code select{font-family:var(--font-mono);background:var(--bg-800);border:2px solid var(--signal-line);min-height:40px}.lab-guide .code-key{font-size:var(--fs-15);margin:0 0 14px}.lab-guide .code-key>div{border-bottom:1px solid var(--line-100);grid-template-columns:92px 1fr;padding:8px 0}.lab-guide .code-key dt{font-family:var(--font-mono);color:var(--brand-700)}.lab-guide .beginner-checklist{font-size:var(--fs-15);margin:4px 0 14px}.lab-guide .beginner-checklist svg{color:var(--ok-600)}.lab-guide .beginner-editor-label{font-size:var(--fs-15);margin:12px 0 6px;font-weight:620}.lab-guide .guided-source{min-height:96px;padding:12px 14px}.lab-guide .beginner-note,.lab-guide .beginner-feedback{font-size:var(--fs-15)!important}.lab-guide .beginner-feedback{border-left:3px solid var(--warn-700);background:var(--warn-100);color:var(--warn-700)}.lab-guide .beginner-success{color:var(--ok-700);font-size:var(--fs-15);margin:6px 0 12px}.lab-guide .beginner-error{background:var(--fault-100);border-color:var(--fault-border);color:var(--fault-700)}.lab-guide .beginner-results>div{border-color:var(--ok-border);background:var(--ok-100);font-size:var(--fs-15)}.lab-guide .beginner-results .failed{border-color:var(--warn-border);background:var(--warn-100)}.lab-guide .beginner-complete{background:var(--ok-100);border-color:var(--ok-border);font-size:var(--fs-16)}.lab-guide .beginner-complete h3{font-size:var(--fs-19)}.lab-equipment{border:1px solid var(--line-200);border-radius:var(--r-md);background:var(--surface-2);gap:4px;margin:6px 0 14px;padding:12px 14px;display:grid}.lab-equipment p{font-size:var(--fs-15);margin:0!important}.lab-guide .beginner-navigation{background:var(--surface-2);border-top:1px solid var(--line-200);flex:none;margin:0;padding:12px 22px 14px}.lab-guide .beginner-navigation>span{font-size:var(--fs-15);color:var(--ink-500)}.lab-glossary{border:1px solid var(--line-200);border-radius:var(--r-md);font-size:var(--fs-15);margin:4px 0 12px;padding:10px 14px}.lab-glossary summary{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:flex}.lab-glossary dl{gap:8px;margin:10px 0 2px;display:grid}.lab-glossary dt{font-weight:620}.lab-glossary dd{color:var(--ink-600);margin:0}.lab-footnote{font-size:var(--fs-15)!important;color:var(--ink-500)!important}.lab-guide .beginner-question{border:1px solid var(--line-200);border-radius:var(--r-md);margin:0 0 14px;padding:12px 14px}@media (max-height:760px) and (min-width:901px){.page-content:has(>.lab){gap:8px;padding-top:10px}.lab-title .eyebrow{display:none}.lab-title h1{font-size:var(--fs-22)}.page-content .beginner-chapters button{padding:6px 12px}}@media (max-width:1180px){.lab-body{grid-template-columns:minmax(300px,340px) minmax(0,1fr)}}@media (max-width:900px){.lab-mobile-action{background:var(--brand-50);border:1px solid var(--brand-border);border-radius:var(--r-md);color:var(--ink-900);font-size:var(--fs-15);flex-basis:100%;gap:4px;margin:0;padding:12px 14px;line-height:1.5;display:grid}.lab-mobile-action strong{color:var(--brand-700)}.page-content:has(>.lab){height:auto}.lab-body{flex-direction:column;display:flex}.lab-stage{order:-1;height:66vh;min-height:400px}.lab-guide,.lab-guide-body{overflow:visible}.lab-guide-body>.next-action{box-shadow:none;position:static}.lab-guide .beginner-navigation{z-index:2;position:sticky;bottom:0}.lab-stepper li:not(.current) .lab-stepper-name{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-content .beginner-chapters{flex-direction:row;align-self:stretch}.page-content .beginner-chapters button{flex:1;justify-content:center;gap:4px;min-width:0;padding:10px 8px}.beginner-chapters .chapter-description,.page-content .beginner-chapters button>svg:not(.chapter-complete){display:none}.page-content .beginner-chapters strong{margin-right:0}}@media (min-width:901px){.shell.focus-view .page-footer{display:none}}.lab-guide .beginner-code.lab-type-this{border:1px dashed var(--line-300);border-left:4px solid var(--brand-600);border-radius:var(--r-sm);background:var(--brand-50);color:var(--ink-950);font-size:var(--fs-16);white-space:pre-wrap;margin:0 0 12px;padding:10px 14px}.lab-input-overrides{padding:var(--s-3);font-size:var(--fs-15);color:var(--ink-950);background:var(--surface)}.lab-input-overrides summary{cursor:pointer;font-weight:600}.lab-input-overrides p{margin-block:var(--s-2)}.lab-stepper-current{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:620;overflow:hidden;color:var(--ink-900)!important}@media (max-width:720px){.shell.focus-view .page-content:has(>.lab.phone){height:calc(100dvh - var(--header-h));gap:8px;padding:8px 10px 0;overflow:clip}.shell.focus-view:has(.lab.phone) .page-footer{display:none}.page-content:has(>.lab.phone)>.tour-entry{display:none}.page-content:has(>.lab.phone)>.beginner-chapters{flex:none}.page-content:has(>.lab.phone) .beginner-chapters button{min-height:44px;padding:6px 8px}.lab.phone{background:var(--surface);border-top:1px solid var(--line-200);flex:1;gap:0;min-height:0;margin:0 -10px;overflow:clip}.lab.phone .lab-head{flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:8px 12px;display:grid}.lab.phone .lab-title{grid-area:1/2}.lab.phone .lab-title .eyebrow{display:none}.lab.phone .lab-title h1{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lab.phone .lab-stepper{grid-area:1/1;gap:6px}.lab.phone .lab-mobile-action{grid-column:1/-1}.lab.phone .lab-stepper-meta{flex-wrap:nowrap;gap:10px}.lab.phone .lab-stepper-meta strong{font-size:var(--fs-15);flex:none}.lab.phone .lab-stepper-bar{flex:0 0 44px;min-width:0;margin-left:auto}.lab.phone .lab-mobile-action{gap:2px;padding:8px 12px}.lab.phone .lab-body{overscroll-behavior:contain;border-top:1px solid var(--line-200);flex:1;min-height:0;display:block;overflow-y:auto}.lab.phone .lab-guide{border:0;border-radius:0}.lab.phone .lab-guide-top{padding:14px 16px 0}.lab.phone .lab-guide-body{padding:10px 16px 18px}.lab.phone .lab-guide .next-action{display:none}.lab.phone .lab-guide h2{font-size:var(--fs-19);margin-bottom:8px}.lab.phone .lab-stage{height:auto;min-height:0}.lab.phone .lab-stage .stage{border:0;border-radius:0;height:auto}.lab.phone .lab-stage .stage-canvas{flex:none;height:clamp(180px,30dvh,340px);min-height:0}.lab.phone .stage-bar{flex-wrap:nowrap;gap:8px;min-height:0;padding:6px 10px}.lab.phone .stage-tools{flex:auto;justify-content:flex-end;width:auto}.lab.phone .stage-title>strong{display:none}.lab.phone .operator-strip button,.lab.phone .lab-input-overrides summary{min-height:48px;font-size:var(--fs-16)}.lab.phone .operator-strip button.momentary{padding-inline:18px}.lab.phone .lab-input-overrides summary{align-items:center;display:flex}.lab.phone .lab-guide .guided-code select{min-height:44px;font-size:var(--fs-16)}.lab.phone .lab-guide .guided-source,.lab.phone .lab-guide textarea{width:100%;font-size:var(--fs-16)}.lab.phone .stage-foot .lab-equipment{border-width:1px 0 0;border-radius:0;margin:0}.lab.phone[data-phone-tab=machine] .lab-guide,.lab.phone:not([data-phone-tab=machine]) .lab-stage,.lab.phone:not([data-phone-tab=task]) .lab-guide-top,.lab.phone[data-phone-tab=task] .lab-guide-body>[data-phone]:not([data-phone=task],[data-phone=all]),.lab.phone[data-phone-tab=code] .lab-guide-body>:not([data-phone=code],[data-phone=all]),.lab.phone[data-phone-tab=results] .lab-guide-body>:not([data-phone=results],[data-phone=all]){display:none}.lab.phone .phone-action-bar .button{white-space:nowrap;gap:6px}.lab.phone .phone-action-bar .phone-bar-side{width:48px;padding:0}}@media (max-width:720px) and (max-height:760px){.lab.phone .lab-stage .stage-canvas{height:clamp(160px,25dvh,340px)}.lab.phone .operator-strip{padding-block:6px}}.lab-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;display:flex}.lab-help-line{font-size:var(--fs-15);color:var(--ink-500);margin:0}.lab-help-line a{color:var(--ink-900);text-decoration:underline;-webkit-text-decoration-color:var(--line-300);text-decoration-color:var(--line-300);text-underline-offset:3px;font-weight:600}.lab-help-line a:hover{-webkit-text-decoration-color:var(--ink-900);text-decoration-color:var(--ink-900)}.lab-guide .lab-task{border:1px solid var(--line-300);border-radius:var(--r-lg);background:var(--surface-2);transition:border-color .2s var(--ease), background .2s var(--ease);grid-template-columns:32px minmax(0,1fr);align-items:start;gap:12px;margin:0 0 16px;padding:14px 16px;display:grid}.lab-task-mark{background:var(--ink-950);width:32px;height:32px;color:var(--bg-950);border-radius:50%;place-items:center;display:grid}.lab-guide .lab-task strong{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-500);font-size:13px;font-weight:700;display:block}.lab-guide .lab-task p{font-size:var(--fs-17);color:var(--ink-950);margin:2px 0 0;font-weight:600;line-height:1.4}.lab-guide .lab-task .lab-task-why{font-size:var(--fs-15);color:var(--ink-600);margin-top:6px;font-weight:450}.lab-guide .lab-task.done{border-color:var(--ok-border);background:var(--ok-100)}.lab-task.done .lab-task-mark{background:var(--lamp-500)}.lab-guide .lab-task.done strong{color:var(--ok-700)}.lab-task-next{margin-top:12px}.lab-task-next .lab-next{max-width:100%}.lab-guide .lab-intro{margin-top:0}.lab-guide .lab-intro p{margin:10px 0 0;line-height:1.55}.lab-guide .lab-intro .on-site-line{border-top:1px solid var(--line-200);margin-top:12px;padding-top:12px}.lab-guide .type-this{border:1px solid var(--line-300);border-radius:var(--r-lg);background:var(--surface-2);gap:10px;margin:0 0 14px;padding:14px;display:grid}.lab-guide .type-this.right{border-color:var(--ok-border)}.type-this-head{font-size:var(--fs-15);color:var(--ink-700);justify-content:space-between;align-items:center;gap:12px;font-weight:650;display:flex}.type-this-head .text-button{font-size:var(--fs-15);gap:6px}.type-this-line{border:1px dashed var(--line-input);border-radius:var(--r-md);background:var(--surface);font-family:var(--font-mono);font-size:var(--fs-19);overflow-wrap:anywhere;padding:12px 14px;line-height:1.4;display:block}.type-this-done{color:var(--lamp-700)}.type-this-next{background:var(--ink-950);color:var(--bg-950);border-radius:3px}.type-this-rest{color:var(--ink-500)}.lab-guide .type-this .beginner-editor-label{margin:4px 0 0}.lab-guide .type-this .guided-source{width:100%;min-height:0;font-size:var(--fs-17);resize:vertical;margin:0}.lab-guide .type-this-status{font-size:var(--fs-15);color:var(--ink-700);align-items:flex-start;gap:8px;margin:0;display:flex}.lab-guide .type-this-status.good{color:var(--ok-700);font-weight:600}.type-this-status svg{flex:none;margin-top:3px}.type-this-fill{font-size:var(--fs-15);justify-self:start}.lab-guide .beginner-navigation.lab-guide-foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.lab-guide .lab-guide-foot .lab-next{margin-left:auto}.button.lab-next:disabled{background:var(--bg-700);border-color:var(--line-200);color:var(--ink-500);opacity:1}.button.lab-next.ready{background:var(--ink-950);border-color:var(--ink-950);color:var(--bg-950);box-shadow:0 0 0 0 var(--lamp-halo)}.button.lab-next.ready:hover{background:var(--ink-800)}@media (prefers-reduced-motion:no-preference){.button.lab-next.ready{animation:2.2s ease-in-out infinite lab-next-ready}}@keyframes lab-next-ready{0%,to{box-shadow:0 0 0 0 var(--lamp-halo)}50%{box-shadow:0 0 0 6px var(--lamp-halo)}}
