
.stack-app{color-scheme:light;--background:var(--card-background);--foreground:var(--card-text-color-main);--muted-foreground:var(--card-text-color-secondary);--border:var(--card-separator-color);--card:var(--card-background);--font-size-base:14px;--viz-series-1:#286a88;--viz-series-2:#ad512d;--viz-series-3:#417562;--viz-series-4:#6c608d;--viz-series-5:#aa7430;--viz-series-6:#497785;--primary:var(--accent-color);--accent:var(--accent-color);--muted:var(--card-text-color-secondary)}
.stack-app *{box-sizing:border-box}.stack-app{scroll-behavior:smooth;scroll-padding-top:24px}.stack-app{background:var(--card-background);color:inherit;font-family:var(--base-font-family);-webkit-font-smoothing:antialiased}.stack-app a{color:inherit;text-underline-offset:.22em}.stack-app a:focus-visible,
.stack-app summary:focus-visible{outline:2px solid #286a88;outline-offset:4px}.stack-app p{margin:0 0 1.15em;overflow-wrap:anywhere}.stack-app strong{font-weight:700}.stack-app sub,
.stack-app sup{font-size:.74em;line-height:0}.stack-app h1,
.stack-app h2,
.stack-app h3{line-height:1.4}.stack-app h1{font-family:var(--base-font-family);letter-spacing:.015em;margin:22px 0 28px}.stack-app h2{font-family:var(--base-font-family);margin:0 0 28px;overflow-wrap:anywhere}.stack-app h3{font-size:1.792rem;margin:36px 0 14px}.stack-app li{padding-left:.25em;margin-bottom:.65em}.stack-app .layout{display:grid;grid-template-columns:245px minmax(0,1fr);max-width:1440px;margin:auto;gap:48px;padding:0 48px 0 24px}.stack-app aside{align-self:start;position:sticky;top:0;max-height:100vh;overflow:auto;padding:32px 16px 32px 8px;font-size:13px;line-height:1.6}.stack-app aside .brand{font-size:14px;letter-spacing:.08em;margin-bottom:20px}.stack-app nav a{display:block;color:inherit;text-decoration:none;padding:8px 0;border-bottom:1px solid var(--card-separator-color)}.stack-app nav a:hover{color:inherit}.stack-app aside details{border:0;margin:0;padding:0}.stack-app aside summary{font-weight:700;cursor:pointer}.stack-app main{min-width:0;max-width:910px;margin:0 auto}.stack-app .book-cover{padding:76px 0 60px;border-bottom:1px solid var(--card-separator-color)}.stack-app .eyebrow{font-size:13px;letter-spacing:.09em;color:inherit;margin:0 0 14px}.stack-app .lead{font-size:20px;line-height:1.8;max-width:680px}.stack-app .scope{font-size:15px;color:inherit}.stack-app .continue{display:inline-block;margin-top:12px;font-weight:700}.stack-app section{padding:58px 0 22px;border-bottom:1px solid var(--card-separator-color)}.stack-app .eq{font-family:var(--base-font-family);overflow-x:auto;white-space:nowrap;background:var(--card-background);padding:16px 20px;margin:24px 0;border-left:1px solid var(--card-separator-color)}.stack-app .level{font-size:15px;line-height:1.9;margin-top:28px;padding:18px 0 8px;color:inherit}.stack-app .table-wrap{overflow-x:auto;margin:22px 0 28px}.stack-app table{border-collapse:collapse;width:100%;min-width:520px;font-size:15px;line-height:1.85}.stack-app th,
.stack-app td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--card-separator-color)}.stack-app th{font-weight:700;background:var(--card-background)}.stack-app td:first-child{min-width:108px}.stack-app details{margin:18px 0;border-top:1px solid var(--card-separator-color);border-bottom:1px solid var(--card-separator-color);padding:14px 0}.stack-app summary{font-size:15px;font-weight:700;cursor:pointer;color:inherit;line-height:1.8}.stack-app details p{margin:16px 0 4px;font-size:16px}.stack-app .course-plot,
.stack-app .new-circuit{max-width:420px;margin:28px auto}.stack-app .course-plot svg,
.stack-app .new-circuit svg{display:block;width:100%;height:auto}.stack-app .course-plot figcaption,
.stack-app .new-circuit figcaption{font-size:13px;line-height:1.8;color:inherit;margin-top:10px}.stack-app .new-circuit{max-width:360px}.stack-app .circuit-pair{margin:30px 0 22px;--font-size-base:14px}.stack-app .circuit-pair figure{margin:0!important}.stack-app .circuit-pair .diagrams{justify-content:center}.stack-app .circuit-pair svg{color:var(--foreground)}.stack-app .correction{border-left:1px solid var(--card-separator-color);padding-left:18px;font-size:15px}.stack-app .route{font-size:17px;line-height:2.1;color:inherit;padding:20px 0;margin:20px 0;border-top:1px solid var(--card-separator-color);border-bottom:1px solid var(--card-separator-color)}.stack-app footer{padding:55px 0 72px;font-size:14px;color:inherit}.stack-app footer h2{font-size:1.92rem}.stack-app .top-link{font-size:13px}
@media(min-width:1000px){.stack-app aside summary{display:none}.stack-app aside details:not([open])>nav{display:block}}
@media(max-width:999px){.stack-app .layout{display:block;padding:0 32px;max-width:900px}.stack-app aside{position:static;max-height:none;padding:20px 0;border-bottom:1px solid var(--card-separator-color)}.stack-app aside .brand{display:none}.stack-app nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.stack-app .book-cover{padding-top:48px}.stack-app{}}
@media(max-width:540px){.stack-app .layout{padding:0 16px}.stack-app h1{font-size:3.392rem}.stack-app h2{font-size:2.464rem}.stack-app{}.stack-app .lead{font-size:18px}.stack-app h3{font-size:17px}.stack-app .eyebrow{font-size:12px}.stack-app section{padding-top:38px}.stack-app .eq{font-size:16px;padding:12px;line-height:2.2}.stack-app nav{display:block}.stack-app .book-cover{padding-top:35px}.stack-app .circuit-pair .diagrams{gap:20px}.stack-app .circuit-pair figure{flex-basis:288px!important}.stack-app .course-plot{max-width:370px}.stack-app th,
.stack-app td{padding:10px}.stack-app .scope{font-size:14px}}
@media print{.stack-app{background:var(--card-background)}.stack-app .layout{display:block;padding:0}.stack-app aside{display:none}.stack-app main{max-width:none}.stack-app .book-cover{padding:20px 0}.stack-app section{break-before:page;border:0}.stack-app .course-plot,
.stack-app .circuit-pair,
.stack-app .new-circuit,
.stack-app .eq,
.stack-app table{break-inside:avoid}.stack-app details>p{display:block}.stack-app details{break-inside:avoid}.stack-app a{color:inherit;text-decoration:none}.stack-app{scroll-behavior:auto}}


.stack-app .lesson-diagram{margin:30px 0;--font-size-base:14px}
.stack-app .lesson-diagram .panels{align-items:start}
.stack-app .reading-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-bottom:18px}
.stack-app .reading-links a{font-size:14px}
.stack-app .new-circuit{max-width:288px}
.stack-app .chapter-circuit{width:100%;max-width:360px;margin:32px auto;color:inherit}
.stack-app .chapter-circuit svg{display:block;width:100%;height:auto}
.stack-app .eq{max-width:100%}
@media(prefers-reduced-motion:reduce){.stack-app{scroll-behavior:auto}}

.stack-app .chapter-figure{width:100%;max-width:360px;margin:32px auto;color:inherit}
.stack-app .chapter-figure svg{display:block;width:100%;height:auto}
.stack-app .chapter-figure.plot{max-width:410px}
.stack-app details.answer{margin:20px 0}
@media(max-width:600px){.stack-app .chapter-figure{margin:25px auto}}

.stack-app .chapter-figure{width:100%;max-width:360px;margin:32px auto;color:inherit}
.stack-app .chapter-figure svg{display:block;width:100%;height:auto}
.stack-app .chapter-figure.plot{max-width:410px}
.stack-app details.answer{margin:20px 0}
@media(max-width:600px){.stack-app .chapter-figure{margin:25px auto}}
.stack-app .c4-next .source-note,
.stack-app .c4-chart-note{font-size:14px;line-height:1.8;color:inherit}
.stack-app .chapter-figure.c4r-wide{max-width:min(100%,var(--c4-figure-width));overflow-x:auto;overscroll-behavior-x:contain}
.stack-app .chapter-figure.c4r-wide svg{width:var(--c4-figure-width);max-width:none}
.stack-app .chapter-figure.c4r-wide figcaption{font-size:13px;color:inherit;margin-top:12px;line-height:1.7}
.stack-app .c4-lab{margin:28px 0;padding:24px;border:1px solid var(--card-separator-color);background:var(--card-background);max-width:100%;min-width:0}
.stack-app .c4-lab .chapter-figure{max-width:420px;margin:22px auto}
.stack-app .c4-mode{display:flex;flex-wrap:wrap;gap:12px 24px;border:0;margin:0 0 18px;padding:0;min-width:0}
.stack-app .c4-mode legend{font-size:14px;color:inherit;margin-bottom:10px}
.stack-app .c4-mode label{font-size:15px;cursor:pointer;display:flex;align-items:center;gap:7px}
.stack-app .c4-mode input{accent-color:#286a88;width:18px;height:18px}
.stack-app .c4-slider-label{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-size:16px;font-weight:700}
.stack-app .c4-slider-label output{color:inherit;font-variant-numeric:tabular-nums}
.stack-app #c4-frequency{display:block;width:100%;margin:18px 0 20px;accent-color:#286a88;min-height:24px}
.stack-app .c4-presets{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 22px}
.stack-app .c4-presets button{font-family:var(--base-font-family);font-size:15px;background:var(--card-background);color:inherit;border:1px solid var(--card-separator-color);padding:8px 14px;min-height:44px;border-radius:var(--card-border-radius);cursor:pointer}
.stack-app .c4-presets button[aria-pressed=true]{background:var(--card-background);color:inherit;border-color:var(--card-separator-color)}
.stack-app .c4-lab :focus-visible{outline:2px solid #ad512d;outline-offset:4px}
.stack-app .c4-readouts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0;padding:18px 0;border-top:1px solid var(--card-separator-color);border-bottom:1px solid var(--card-separator-color)}
.stack-app .c4-readouts div{min-width:0}.stack-app .c4-readouts dt{font-size:13px;color:inherit;margin-bottom:5px}.stack-app .c4-readouts dd{margin:0;font-family:var(--base-font-family);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.stack-app #c4-lab-explanation{font-size:15px;line-height:1.85;border-left:1px solid var(--card-separator-color);padding-left:14px;margin-bottom:0}
@media(max-width:600px){.stack-app .c4-lab{padding:16px 12px}.stack-app .c4-readouts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.stack-app .c4-mode{gap:12px}.stack-app .c4-mode label{font-size:14px}.stack-app .c4-presets button{padding:7px 12px}.stack-app .c4-next .chapter-figure.c4r-wide{margin-left:0;margin-right:0}}
@media print{.stack-app .c4-lab{border:0;padding:0}.stack-app .c4-mode,
.stack-app #c4-frequency,
.stack-app .c4-slider-label,
.stack-app .c4-presets{display:none}.stack-app .c4-next details>p{display:block}.stack-app .chapter-figure.c4r-wide{max-width:100%;overflow:visible}.stack-app .chapter-figure.c4r-wide svg{max-width:100%;height:auto}}

.stack-app main li,
.stack-app main p{overflow-wrap:anywhere}.stack-app .collection-math-display,
.stack-app .collection-math-inline{position:relative}.stack-app .collection-math-display{max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-block:.3em}.stack-app .collection-math-display>.katex-display{margin:.35em 0;text-align:inherit}.stack-app .collection-math-inline{display:inline-block;max-width:100%;vertical-align:-.15em;overflow-x:auto;overflow-y:hidden;font-family:var(--base-font-family);background:transparent!important;padding:0!important}.stack-app .collection-math-inline>.katex{font-size:1.04em}.stack-app .collection-math-svg{overflow:visible;pointer-events:none}.stack-app .collection-math-svg .katex{font-size:1em}.stack-app .eq:has(>.katex),
.stack-app .formula:has(>.katex){font-family:inherit}.stack-app .katex-display>.katex{white-space:nowrap} .stack-app .katex .katex-mathml{white-space:nowrap}