:root{color-scheme:dark;--bg:#091513;--panel:#10211e;--line:#29423a;--mint:#b4efb9;--gold:#e6bf77;--muted:#93ada3}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#e7eee6;font:15px/1.75 "Segoe UI","Microsoft YaHei",sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);color:inherit;background:transparent;border-radius:5px;padding:7px 13px}button:hover,a:hover{color:var(--mint);border-color:var(--mint)}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}header{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;margin:0 5%;font-size:13px}header a{letter-spacing:1px}header span{color:var(--muted);margin-left:12px}header button{border:0}main{max-width:1440px;margin:auto;padding:0 5%}.intro{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:60px 0 44px}.eyebrow{font-size:10px;letter-spacing:2.6px;color:var(--mint);font-weight:600}h1{font-size:clamp(32px,3.4vw,54px);font-weight:500;line-height:1.45;letter-spacing:-1.5px;margin:17px 0}h1 span{color:var(--mint)}.lede{color:var(--muted);font-size:14px}.intro-meta{width:265px;flex-shrink:0;border-left:1px solid var(--line);padding-left:32px}.intro-meta strong{font-size:42px;display:block;font-weight:400;line-height:1.5}.intro-meta small{font-size:12px;color:var(--muted);margin-left:14px}.intro-meta p{font-size:11px;color:var(--muted)}.workbench{display:grid;grid-template-columns:215px 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#0b1916;box-shadow:0 25px 100px #0002}aside{border-right:1px solid var(--line);background:#10201b;padding:22px 13px}.rail-label{font-size:9px;color:var(--muted);letter-spacing:1.5px;padding:0 10px 15px}.rail-label span{display:block;font-size:13px;color:#d6e1d4;margin-top:6px;letter-spacing:0}#stations{display:grid;gap:3px}#stations button{display:flex;align-items:center;border:1px solid transparent;border-radius:5px;font-size:12px;text-align:left;gap:13px;padding:9px}#stations b{font:11px monospace;color:#6e8f7e}#stations button[aria-current=true]{border-color:#49654b;background:#b4efb910;color:var(--mint)}#stations button[aria-current=true] b{color:var(--mint)}.stage{min-width:0}.stage-top{padding:18px 25px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;color:var(--muted);border-bottom:1px solid #29423a66}.canvas-wrap{position:relative;height:380px;background:radial-gradient(ellipse at center,#18312633,transparent 70%)}canvas{display:block;width:100%;height:100%}.diagram-note{position:absolute;bottom:12px;right:20px;font-size:9px;color:#6b8678}.playbar{display:flex;gap:9px;align-items:center;padding:12px 23px;font-size:11px;border-top:1px solid #29423a66}.playbar button{font-size:11px}.playbar label{display:flex;align-items:center;gap:7px;color:var(--muted)}select{font-size:11px;background:var(--panel);color:#d7e8d3;border:1px solid var(--line);padding:5px}.grow{flex:1}#elapsed{font:10px monospace;color:var(--muted)}#timeline{width:calc(100% - 46px);display:block;height:3px;margin:5px 23px 22px;accent-color:var(--mint)}.experiment{display:grid;grid-template-columns:155px 1fr 100px;gap:18px;align-items:center;margin:0 23px;padding-top:15px;border-top:1px solid var(--line);font-size:12px}.experiment input{width:100%;accent-color:var(--gold)}.experiment output{text-align:right;color:var(--gold);font-variant-numeric:tabular-nums}.metrics{display:grid;grid-template-columns:1fr 1fr 1.8fr;gap:25px;padding:20px 23px}.metrics small{display:block;font-size:10px;color:var(--muted)}.metrics strong{font:22px/1.7 monospace;color:var(--mint)}.metrics p{margin:0;color:var(--muted);font-size:11px;align-self:center}.lesson{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;padding:46px 0}.lesson h2,.milestones h2{font-weight:500;font-size:28px;margin:15px 0}.lesson p{color:#adbdaf;font-size:14px}.lesson .boundary{border-left:2px solid var(--gold);padding-left:15px;font-size:12px;color:#baaf93}.source-link{color:var(--mint);border:0;padding:5px 0}.assignment{background:var(--panel);padding:25px 30px;border-radius:8px}.assignment>span{font-size:9px;letter-spacing:2px;color:var(--mint)}.assignment h3{font-size:13px;margin-bottom:4px}.assignment p{font-size:12px;margin:0 0 16px}.assignment button{font-size:12px;color:var(--mint)}.assignment small{display:block;margin-top:10px;font-size:10px;color:var(--muted)}.milestones{border-top:1px solid var(--line);padding:25px 0 40px}.milestones>div{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:30px}.milestones b{font-size:11px;color:var(--gold)}.milestones h3{font-size:17px;font-weight:500}.milestones p{font-size:12px;color:var(--muted)}footer{padding:25px 0;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}footer span{display:block}footer a{display:inline-block;margin-top:12px;color:var(--mint)}dialog{width:min(1200px,94vw);max-height:90svh;border:1px solid var(--line);border-radius:12px;background:#10201b;color:#d9e6d6;padding:25px}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.reader-head{display:flex;align-items:center;justify-content:space-between}.reader-head h2{margin:5px 0;font-size:24px}.source-note{font-size:12px;color:var(--muted)}.search-label{font-size:12px}.search-label input{display:block;width:100%;background:#08150f;border:1px solid var(--line);padding:10px;color:white;border-radius:4px;margin:8px 0 15px}.reader-grid{display:grid;grid-template-columns:260px 1fr;gap:25px;min-height:300px}.reader-grid nav,.reader-grid article{max-height:52svh;overflow:auto}#source-list button{display:block;width:100%;text-align:left;font-size:11px;margin:4px 0}#source-list button[aria-current=true]{color:var(--mint);border-color:var(--mint)}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.9 "Microsoft YaHei",sans-serif}#source-title{font-size:18px}@media(max-width:900px){main{padding:0 4%}.workbench{grid-template-columns:175px 1fr}.canvas-wrap{height:330px}.metrics{gap:12px;grid-template-columns:1fr 1fr}.metrics p{grid-column:1/-1}.experiment{grid-template-columns:120px 1fr 72px;gap:8px}.intro-meta{width:220px}.lesson{gap:30px}}@media(max-width:650px){header{height:66px;margin:0 4%;font-size:11px}header span{display:none}.intro{padding:30px 0 22px;display:block}h1{font-size:34px;letter-spacing:-1px}.intro-meta{display:flex;gap:22px;border:0;padding:15px 0 0;width:auto}.intro-meta strong{font-size:26px}.intro-meta small{font-size:10px;margin-left:5px}.intro-meta p{display:none}.workbench{display:block}aside{padding:12px;border-right:0;border-bottom:1px solid var(--line)}.rail-label{display:none}#stations{display:flex;overflow:auto;gap:6px}#stations button{min-width:120px;padding:8px;font-size:11px}#stations b{font-size:10px}.stage-top{padding:13px;font-size:9px;letter-spacing:1px}.canvas-wrap{height:300px}.playbar{padding:12px 10px;gap:6px}.playbar button{padding:6px 8px;font-size:10px}.playbar label{font-size:0;gap:0}#elapsed{font-size:9px}.experiment{margin:0 13px;grid-template-columns:1fr 75px}.experiment label{grid-column:1/-1}#parameter{min-width:0}.metrics{padding:15px 13px}.lesson{grid-template-columns:1fr;gap:18px;padding:25px 0}.lesson h2{font-size:25px}.assignment{padding:22px}.milestones h2{font-size:23px}.milestones>div{grid-template-columns:1fr 1fr;gap:15px}.reader-grid{grid-template-columns:1fr}.reader-grid nav{max-height:140px}.reader-grid article{max-height:35svh}dialog{padding:18px}.source-note{font-size:11px}}
@media(max-width:650px){.canvas-wrap{overflow-x:auto;overscroll-behavior-x:contain;height:310px}#visual{min-width:620px;height:295px}.diagram-note{top:8px;bottom:auto;right:12px;font-size:9px;background:#0b1916dd;padding:2px 5px;pointer-events:none}.diagram-note::after{content:" · 左右滑动图示"}}
.deep-lab{border:1px solid #486448;border-radius:12px;margin:0 0 55px;background:#0d1c15;overflow:hidden;scroll-margin-top:20px}.deep-heading{padding:28px 28px 16px;display:flex;justify-content:space-between;align-items:center;gap:20px}.deep-heading h2{font-size:28px;font-weight:500;margin:8px 0}.deep-heading p:not(.eyebrow){color:#9bb39e;font-size:12px}.live-badge{font:9px monospace;letter-spacing:1px;color:#b4efb9;border:1px solid #476048;padding:8px;white-space:nowrap}.deep-tabs{display:flex;gap:8px;padding:12px 24px;border-bottom:1px solid #38513b;overflow:auto}.deep-tabs button{font-size:12px;white-space:nowrap}.deep-tabs button[aria-current=true]{background:#b4efb9;color:#0c2314;border-color:#b4efb9}.deep-toolbar{display:flex;align-items:center;gap:10px;padding:15px 24px;flex-wrap:wrap;border-bottom:1px solid #263f2d}.deep-toolbar button,.deep-toolbar label{font-size:11px}.deep-toolbar label{color:#9cb69f}.deep-toolbar output{margin-left:auto;font-size:11px;color:#e6bf77}.deep-grid{display:grid;grid-template-columns:minmax(0,1fr) 255px}.deep-viewport{min-width:0;overflow:auto;padding:16px 10px}#deep-canvas{width:100%;height:auto;aspect-ratio:800/520;touch-action:none}.deep-viewport p{font-size:11px;color:#a7b99e;margin:8px 15px}.deep-inspector{padding:20px;border-right:0;border-left:1px solid #2d4532;background:#12261b}.deep-inspector label{display:block;font-size:11px;color:#c3d3bf;margin:12px 0}.deep-inspector select{max-width:100%;display:block;margin-top:5px}.deep-inspector input[type=range]{width:100%;accent-color:#b4efb9}.config-note{font-size:11px;color:#98b39a}.vertex-edit{display:flex;gap:7px}.vertex-edit label{width:33%;min-width:0}.vertex-edit input{width:100%;background:#0a1910;color:#b8e0b7;border:1px solid #42634a;padding:5px;font-size:12px}#deep-values{border-top:1px solid #37543a;margin-top:18px;padding-top:8px}#deep-values>div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #29422f;font-size:11px}#deep-values span{color:#8ca590}#deep-values strong{font-family:monospace;font-weight:400;color:#d2efbc}.deep-bottom{display:grid;grid-template-columns:1.1fr 1fr;gap:25px;border-top:1px solid #2d4532;padding:20px 25px}.deep-bottom h3{font-size:14px;font-weight:500}.deep-bottom h3 small{font-size:9px;color:#8ba48d;margin-left:15px}#deep-log{font:11px/2 monospace;color:#9bbc99;min-height:160px;max-height:190px;overflow:auto;background:#09160f;padding:12px;border-radius:6px}.deep-challenge p{font-size:12px;color:#a4b89e}.deep-challenge button{font-size:12px;color:#e6bf77}.deep-challenge #deep-feedback{color:#c9e7ad}.deep-boundary{margin:0;padding:14px 25px;border-top:1px solid #2d4532;color:#ad9f7d;font-size:10px}.program{font:12px/2 monospace;color:#e3ce9e}@media(max-width:1000px){.deep-grid{grid-template-columns:minmax(0,1fr) 220px}#deep-canvas{min-width:560px}.live-badge{display:none}.deep-toolbar output{margin-left:0}}@media(max-width:650px){.deep-heading{padding:20px 16px}.deep-heading h2{font-size:24px}.deep-tabs{padding:10px;gap:6px}.deep-tabs button{font-size:11px;padding:8px}.deep-toolbar{padding:12px;gap:8px}.deep-toolbar output{width:100%}.deep-grid{grid-template-columns:1fr}.deep-viewport{padding:10px;overflow-x:auto}#deep-canvas{min-width:560px}.deep-inspector{border-left:0;border-top:1px solid #2d4532;padding:18px}.deep-inspector select{display:inline-block}.deep-bottom{grid-template-columns:1fr;padding:18px;gap:10px}.deep-inspector label{font-size:13px}.deep-inspector .config-note{font-size:12px}.deep-boundary{padding:14px 18px}#deep-values>div{font-size:12px}}
@media(max-width:650px){#deep-canvas{touch-action:auto}}
