.chapter-hero{padding-top:42px;padding-bottom:44px}.book-breadcrumb{display:inline-block;margin-bottom:38px;font-size:13px;color:var(--muted);text-decoration:none}.book-breadcrumb:hover{color:var(--accent)}.chapter-hero h1{font-size:clamp(49px,7vw,83px);line-height:1.02;margin:20px 0 24px;letter-spacing:-.045em}.chapter-lead{font-size:clamp(18px,2vw,21px);line-height:1.6;color:var(--muted);max-width:58ch;margin-bottom:24px}.chapter-meta{display:flex;flex-wrap:wrap;gap:10px 24px;font:400 10px/1.5 var(--mono);color:var(--dim)}.result-section{padding-bottom:58px}.result-intro{color:var(--muted);font-size:15px;margin-bottom:22px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:20px}.comparison figure{margin:0;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:var(--surface)}.comparison-canvas{position:relative;aspect-ratio:16/9;background:#0b111b}.comparison-canvas canvas{position:absolute;width:100%;height:100%;inset:0}.preview-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.comparison figcaption{padding:19px 22px;display:grid;gap:8px}.figure-label{color:var(--dim);font:400 10px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.07em}.comparison strong{font:600 19px/1.3 var(--display)}.comparison code{color:var(--accent);font:400 11px/1.6 var(--mono);overflow-wrap:anywhere}.reading-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:60px}.chapter-sidebar{align-self:start;position:sticky;top:105px;font-size:13px}.chapter-sidebar ol{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:11px}.chapter-sidebar a{color:var(--muted);text-decoration:none;line-height:1.5}.chapter-sidebar a:hover{color:var(--accent)}.sidebar-outcome{border-top:1px solid var(--line);margin-top:26px;padding-top:22px;color:var(--muted)}.sidebar-outcome strong{font-weight:500;color:var(--ink)}.sidebar-outcome p{font-size:13px;margin:8px 0 0}.chapter-prose{min-width:0;max-width:760px}.chapter-prose>p,.chapter-prose section>p,.chapter-prose li{font-size:17px;line-height:1.85;color:var(--muted);margin-bottom:21px}.chapter-prose strong{color:var(--ink);font-weight:500}.chapter-prose h2{font-size:clamp(27px,3vw,35px);line-height:1.15;letter-spacing:-.025em;margin:48px 0 22px}.chapter-prose section:first-of-type h2{margin-top:36px}.chapter-prose h3{font-size:22px;line-height:1.3}.chapter-prose code{font-family:var(--mono);color:#bcdfca;font-size:.83em;overflow-wrap:anywhere}.chapter-prose pre{border:1px solid var(--line);border-radius:9px;background:#0b111b;padding:22px 24px;margin:25px 0;overflow:auto;font:400 12px/1.8 var(--mono);tab-size:4}.chapter-prose pre code{font-size:inherit;white-space:pre;overflow-wrap:normal;color:#d3e6dd}.chapter-prose .key-formula{border-left:3px solid var(--accent);background:#4be08f06}.note{border-left:2px solid var(--line);padding:17px 22px;margin:26px 0;background:var(--surface)}.note>strong{font-size:14px;color:var(--ink)}.note p{font-size:14px;line-height:1.75;color:var(--muted);margin:9px 0 0}.calculation{padding:20px 24px;border-block:1px solid var(--line);margin:25px 0}.calculation p{font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 8px}.calculation p:last-child{margin:0}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:10px;margin:28px 0 0}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px;line-height:1.6}caption{text-align:left;padding:16px 18px;font-size:13px;color:var(--muted)}th,td{border-top:1px solid var(--line);padding:12px 14px;white-space:nowrap}thead{background:var(--surface)}th{font-weight:500;color:var(--ink)}td{font-family:var(--mono);color:var(--muted);font-size:11px}.coordinate-lab-section{padding-top:64px;padding-bottom:22px}.lab-intro{color:var(--muted);font-size:16px;max-width:76ch;margin-bottom:25px}.lab-intro strong{font-weight:500;color:var(--ink)}.coordinate-lab{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.lab-preview-column{min-width:0;background:#0b111b;display:flex;flex-direction:column}.coordinate-stage{display:grid;place-items:center;align-content:center;position:relative;min-height:300px;flex:1;overflow:hidden;background:#090f17}.coordinate-stage canvas{position:relative;inset:auto;width:100%;max-width:100%;height:auto;display:block}.coordinate-stage canvas:focus-visible{outline-offset:-3px}.coordinate-stage>img{max-width:100%;height:auto;display:block}.coordinate-stage>img[hidden],.preview-fallback[hidden]{display:none}.coordinate-stage:has(>img:not([hidden]))>canvas{display:none}.coordinate-stage #webgl-fallback{inset:auto 16px 14px;font-size:13px;padding:12px}.canvas-caption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--line);font:400 9px/1.6 var(--mono);color:var(--dim)}.coordinate-readouts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);padding:16px 18px;gap:14px 18px}.coordinate-readouts>div{display:grid;gap:4px}.coordinate-readouts span{font:400 10px/1.5 var(--mono);color:var(--dim)}.coordinate-readouts output{font:400 12px/1.5 var(--mono);font-variant-numeric:tabular-nums}.coordinate-controls{padding:24px;border-left:1px solid var(--line)}.coordinate-controls h3{font-size:22px;line-height:1.2;margin-bottom:18px}.space-presets{display:grid;grid-template-columns:1fr 1fr;gap:7px}.space-presets button,.shape-presets button{border-radius:7px;font-size:11px;min-height:38px;padding:8px 9px}.space-presets button[aria-pressed=true],.shape-presets button[aria-pressed=true]{border-color:var(--accent);background:#4be08f09;color:var(--accent)}#active-formula{display:block;background:#0b111b;border:1px solid var(--line);border-radius:7px;padding:14px;margin-top:18px;font:400 11px/1.7 var(--mono);color:var(--accent);overflow-wrap:anywhere;min-height:68px}#space-note{font-size:12px;line-height:1.65;margin:10px 0 22px;color:var(--muted)}.coordinate-controls h4{font:500 11px/1.5 var(--mono);color:var(--ink);margin-bottom:10px}.shape-presets{display:flex;gap:7px}.shape-presets button{flex:1}.size-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.size-inputs label{font-size:11px;color:var(--muted)}.size-inputs label>span{color:var(--dim);margin-left:4px}.size-inputs input{display:block;width:100%;min-width:0;background:#0b111b;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:10px;margin-top:6px;font:400 12px/1.5 var(--mono)}.view-label{display:block;font-size:12px;color:var(--muted);margin-top:18px}.view-label select{display:block;min-height:42px;width:100%;margin-top:7px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:#0b111b;color:var(--ink);font:400 12px/1.5 var(--body)}.control-help{color:var(--dim);font-size:11px;line-height:1.65;margin:15px 0}.coordinate-controls #shader-state{font:400 10px/1.6 var(--mono);color:var(--accent)}.lab-footnote{font-size:12px;line-height:1.7;color:var(--dim);max-width:100ch;margin-top:18px}.after-lab{padding-top:10px}.sidebar-tip{color:var(--muted);font-size:14px;line-height:1.8;margin-top:17px}.exercise-steps{padding-left:22px}.exercise-steps li{padding-left:4px;font-size:16px}.answer{border:1px solid var(--line);border-radius:9px;margin:14px 0;background:var(--surface)}.answer summary{font:500 14px/1.6 var(--body)}.answer p{padding:0 22px;font-size:15px;line-height:1.8;color:var(--muted)}.answer p:last-child{padding-bottom:10px}.references{border-top:1px solid var(--line);margin:38px 0 0;padding-top:24px}.references h3{font-size:14px;color:var(--muted);margin-bottom:10px}.references p{font-size:12px;line-height:1.8;color:var(--dim)}.references a{color:var(--muted)}.chapter-pagination{padding-top:45px;padding-bottom:60px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.chapter-pagination>span{font-size:12px;color:var(--muted);line-height:1.6}.chapter-pagination small{color:var(--dim);font-size:11px}
@media(max-width:980px){.reading-layout{grid-template-columns:170px minmax(0,1fr);gap:32px}.coordinate-lab{grid-template-columns:minmax(0,1.3fr) 280px}.coordinate-controls{padding:20px}.comparison figcaption{padding:18px}.comparison strong{font-size:17px}}
@media(max-width:720px){.chapter-hero{padding-top:26px;padding-bottom:32px}.book-breadcrumb{margin-bottom:24px;font-size:12px}.chapter-hero h1{font-size:clamp(43px,9.6vw,65px)}.chapter-hero h1 br{display:none}.chapter-meta{font-size:9px;gap:7px 14px}.comparison{gap:12px}.comparison figcaption{padding:13px}.comparison strong{font-size:15px}.comparison code{font-size:9px}.figure-label{font-size:8px}.result-section{padding-bottom:30px}.reading-layout{grid-template-columns:minmax(0,1fr);gap:24px}.chapter-sidebar{position:static}.chapter-sidebar ol{display:flex;flex-wrap:wrap;gap:7px 16px;font-size:11px;margin:12px 0 8px}.sidebar-outcome,.after-lab>.chapter-sidebar{display:none}.chapter-prose>p,.chapter-prose section>p{font-size:16px;line-height:1.8}.chapter-prose h2{font-size:28px;margin-top:36px}.chapter-prose pre{padding:16px;font-size:11px}.note{padding:15px 17px}.note p{font-size:13px}.calculation{padding:16px}.calculation p{font-size:14px}.coordinate-lab-section{padding-top:42px}.coordinate-lab{grid-template-columns:1fr}.coordinate-controls{border-left:0;border-top:1px solid var(--line)}.coordinate-stage{min-height:210px}.coordinate-stage canvas{max-height:none}.canvas-caption{font-size:9px}.coordinate-readouts{padding:14px 18px}.coordinate-readouts output{font-size:11px}.coordinate-controls h3{font-size:23px}.space-presets{grid-template-columns:repeat(4,1fr)}.space-presets button{font-size:10px;padding:8px 5px}#active-formula{min-height:0}.coordinate-controls h4{margin-top:22px}.control-help{max-width:65ch}.lab-footnote{font-size:11px}.chapter-pagination{align-items:start;justify-content:flex-start;padding-bottom:40px}.chapter-pagination>span{width:100%}.chapter-pagination .button{font-size:12px;padding:10px 14px}}
@media(max-width:420px){.comparison{grid-template-columns:1fr}.comparison-canvas{aspect-ratio:16/9}.comparison figcaption{padding:15px 18px}.comparison strong{font-size:18px}.comparison code{font-size:10px}.figure-label{font-size:9px}}
.chapter-page [hidden]{display:none!important}
