:root{color-scheme:dark;--bg:#081218;--panel:#101e25;--ink:#f2f0e9;--muted:#a4b3b8;--line:#263940;--mint:#8ce2d1;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.65}a{color:inherit}button,input,select{font:inherit}button,a,input,summary{touch-action:manipulation}a,button,input,summary{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--mint)}button{cursor:pointer}button[hidden],[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:20px;z-index:20;background:var(--mint);color:var(--bg);padding:12px}.skip-link:focus{top:10px}.reading-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px max(24px,calc((100vw - 1280px)/2));border-bottom:1px solid var(--line);background:#081218f5;backdrop-filter:blur(12px)}.reading-brand{font-size:20px;letter-spacing:.11em;text-decoration:none;font-weight:650}.reading-brand small{display:block;font:8px var(--mono);letter-spacing:.16em;color:var(--muted);margin-top:3px}.reading-nav{display:flex;gap:28px;align-items:center}.reading-nav a{text-decoration:none;font-size:13px;color:var(--muted)}.reading-nav a:hover{color:var(--mint)}.reading-wrap{width:min(1240px,calc(100% - 64px));margin:auto}.reading-hero{padding:68px 0 45px;max-width:970px}.eyebrow{font:10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mint)}.breadcrumbs{display:flex;gap:12px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:36px}.breadcrumbs a{text-decoration:none}.reading-hero h1{font-size:clamp(2.1rem,4.5vw,3.8rem);font-weight:450;line-height:1.13;letter-spacing:-.045em;margin:18px 0 24px}.reading-lead{font-size:18px;line-height:1.7;max-width:760px;color:#bdc9ca}.reading-question{font-size:21px;font-weight:450;color:var(--ink);max-width:850px}.reading-tags{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.reading-tags a,.reading-tag{font:10px var(--mono);border:1px solid var(--line);border-radius:3px;text-decoration:none;padding:6px 10px;color:var(--mint)}.reading-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:26px}.reading-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:11px 18px;border:1px solid var(--line);border-radius:3px;text-decoration:none;background:transparent;color:var(--ink);font-size:12px}.reading-button.primary{background:var(--mint);border-color:var(--mint);color:#07191a}.reading-button:hover{border-color:var(--mint)}.reading-meta{font:11px var(--mono);color:var(--muted)}.reading-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:38px;align-items:start;margin-top:8px}.reading-sidebar{position:sticky;top:106px;max-height:calc(100vh - 126px);overflow:auto;padding:8px 14px 12px 0;scrollbar-width:thin}.reading-sidebar summary{font:11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--mint);cursor:pointer;margin-bottom:16px}.reading-sidebar nav{display:grid;gap:6px}.reading-sidebar nav a{font-size:12px;line-height:1.5;color:var(--muted);text-decoration:none;padding:5px 0 5px 12px;border-left:1px solid var(--line)}.reading-sidebar nav a:hover,.reading-sidebar nav a[aria-current]{color:var(--mint);border-color:var(--mint)}.reading-sidebar .tools{border-top:1px solid var(--line);padding-top:18px;margin-top:20px;display:grid;gap:12px}.reading-sidebar .tools a{font-size:12px;color:var(--muted);text-decoration:none}.article-body{min-width:0;background:#f5f3ed;color:#20343b;padding:42px 52px;border-radius:5px;font:18px/1.88 Georgia,'Times New Roman',serif;color-scheme:light;overflow-wrap:break-word}.article-body a{color:#14625c;text-decoration-thickness:1px;text-underline-offset:3px}.article-body a:focus-visible,.article-body summary:focus-visible{outline-color:#14625c}.article-body p{margin:1em 0}.article-body h2{font:550 clamp(1.45rem,2vw,1.8rem)/1.3 var(--sans);letter-spacing:-.025em;margin:2.8em 0 1em;scroll-margin-top:110px}.article-body h2:first-child{margin-top:0}.article-body h3{font:600 1.1rem/1.4 var(--sans);margin-top:2.4em}.article-body hr{border:0;border-top:1px solid #cbd3cf;margin:2em 0}.article-body .math-block{overflow:auto;max-width:100%;padding:8px 0}.article-body .katex{font-size:1.06em}.article-body .katex-display{margin:.8em 0;overflow:visible}.article-body figure{margin:30px -10px;padding:16px 10px;background:white;border:1px solid #dfe3df;border-radius:3px}.article-body figure img{width:100%;height:auto;display:block}.article-body figcaption{font:12px/1.65 var(--sans);padding:12px 10px 2px;color:#475c61}.figure-expand{display:block;margin-top:8px;font:10px var(--mono)}.table-scroll{overflow:auto;max-width:100%;margin:25px 0}.article-body table{border-collapse:collapse;width:100%;font:13px/1.65 var(--sans)}.article-body th,.article-body td{border-bottom:1px solid #ced6d2;padding:10px 12px;text-align:left;min-width:80px}.article-body th{background:#e7ece6;font-weight:600}.article-body pre{max-width:100%;overflow:auto;background:#e7ece6;padding:20px;border:1px solid #d0d9d2;border-radius:3px;font:12px/1.75 var(--mono);tab-size:4}.article-body :not(pre)>code{font:.84em var(--mono);background:#e7ece6;padding:.12em .3em;overflow-wrap:anywhere}.article-body blockquote{border-left:3px solid #72a898;margin:1.5em 0;padding-left:20px;color:#45605d}.solutions{border-top:1px solid #bccfc4;border-bottom:1px solid #bccfc4;padding:20px 0;margin:40px 0}.solutions>summary{font:600 17px var(--sans);cursor:pointer}.solutions>div{padding-top:14px}.solutions>div>h2{margin-top:15px}.reading-connections{padding:60px 0 70px}.reading-connections h2,.library-section h2{font-size:30px;line-height:1.2;letter-spacing:-.025em;font-weight:450}.connection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.connection-card{border-top:1px solid var(--line);padding:22px 4px;text-decoration:none}.connection-card strong{font-weight:500;display:block;font-size:17px}.connection-card p{font-size:13px;color:var(--muted);line-height:1.7}.connection-card span{color:var(--mint);font-size:12px}.prerequisites{border-top:1px solid var(--line);padding-top:24px;margin-top:24px;color:var(--muted);font-size:13px}.prerequisites a{margin-right:16px;color:var(--mint);display:inline-block}.reading-footer{border-top:1px solid var(--line);padding:25px 0 38px;color:var(--muted);font-size:11px}.reading-footer .reading-wrap{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.reading-footer a{text-decoration:none}.progress{position:fixed;z-index:15;top:0;left:0;height:2px;background:var(--mint);width:0;pointer-events:none}.library-hero{max-width:850px;padding-bottom:30px}.library-hero h1{max-width:750px}.library-section{padding:25px 0 55px}.routes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.route-card{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--panel);padding:25px;text-decoration:none;border-radius:4px}.route-card:hover{border-color:#517870}.route-card .eyebrow{font-size:8px}.route-card h3{font-size:21px;line-height:1.4;font-weight:450;margin:20px 0}.route-card p{font-size:13px;color:var(--muted);margin-top:0}.route-card>span:last-child{font:10px var(--mono);color:var(--mint);margin-top:auto;padding-top:15px}.library-toolbar{display:flex;gap:20px;align-items:center;justify-content:space-between;margin:20px 0}.library-search{display:block;flex:1;max-width:650px}.library-search span{display:block;font-size:12px;color:var(--muted);margin-bottom:9px}.library-search input{display:block;width:100%;border:1px solid var(--line);border-radius:3px;padding:14px 16px;color:var(--ink);background:var(--panel)}.library-count{font:11px var(--mono);color:var(--muted);white-space:nowrap}.library-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.library-filters button{background:transparent;border:1px solid var(--line);border-radius:3px;padding:8px 12px;color:var(--muted);font-size:11px}.library-filters button[aria-pressed=true]{background:var(--mint);color:var(--bg);border-color:var(--mint)}.topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.topic-card{border:1px solid var(--line);border-radius:4px;padding:25px;display:flex;flex-direction:column;background:linear-gradient(160deg,#122129,#0c1920);text-decoration:none;min-height:295px}.topic-card:hover{border-color:#517870}.topic-card .topic-label{font:10px/1.5 var(--mono);color:var(--mint);text-transform:uppercase;letter-spacing:.035em}.topic-card h3{font-size:22px;font-weight:450;line-height:1.35;letter-spacing:-.02em;margin:18px 0 12px}.topic-card p{font-size:13px;color:var(--muted);line-height:1.7;margin:0 0 22px}.topic-card .topic-foot{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-top:auto;font:10px var(--mono);color:var(--mint)}.empty-results{padding:35px;border:1px solid var(--line);border-radius:4px}.empty-results p{color:var(--muted)}.editorial-note{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.home-readings{border:1px solid var(--line);padding:28px;margin:28px 0;background:#101e25}.home-readings h3{font-size:25px;font-weight:450;margin:8px 0 14px}.home-readings p{font-size:13px;color:var(--muted)}.home-reading-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.home-reading-links a{text-decoration:none;border-top:1px solid var(--line);padding:15px 0;font-size:14px;line-height:1.6}.home-reading-links a span{display:block;color:var(--mint);font:9px var(--mono);margin-top:10px}
@media(max-width:1000px){.reading-layout{grid-template-columns:190px minmax(0,1fr);gap:24px}.article-body{padding:32px}.topic-grid,.routes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.connection-grid{gap:24px}.reading-hero h1{max-width:850px}}
@media(max-width:760px){html{scroll-padding-top:90px}.reading-wrap{width:calc(100% - 36px)}.reading-header{padding:14px 18px;gap:18px}.reading-brand{font-size:17px}.reading-brand small{font-size:6px}.reading-nav{gap:16px}.reading-nav a{font-size:11px}.reading-nav a:last-child{display:none}.reading-hero{padding:38px 0 30px}.breadcrumbs{margin-bottom:25px}.reading-hero h1{font-size:32px}.reading-lead{font-size:16px}.reading-question{font-size:18px}.reading-layout{display:block}.reading-sidebar{position:static;max-height:none;padding:18px;border:1px solid var(--line);margin-bottom:24px}.reading-sidebar summary{margin:0;padding:6px 0}.reading-sidebar[open] summary{margin-bottom:15px}.reading-sidebar nav{gap:3px}.reading-sidebar nav a{font-size:13px}.article-body{font-size:17px;padding:26px 22px}.article-body h2{font-size:24px}.article-body figure{margin:25px -10px;padding:8px}.article-body figcaption{font-size:11px;padding:8px 3px}.article-body pre{padding:14px;font-size:11px}.article-body .katex{font-size:1em}.connection-grid{grid-template-columns:1fr;gap:5px}.reading-connections{padding:30px 0}.connection-card{padding:20px 0}.library-toolbar{display:block}.library-count{margin:15px 0 0}.home-reading-links{grid-template-columns:1fr}.topic-card{padding:22px;min-height:280px}.topic-card h3{font-size:20px}.reading-footer .reading-wrap{display:block}.reading-footer p{margin:8px 0}}
@media(max-width:520px){.topic-grid,.routes-grid{grid-template-columns:1fr}.topic-card{min-height:0}.route-card{padding:22px}.article-body{padding:25px 18px}.reading-nav{gap:14px}.reading-nav a:nth-last-child(2){display:none}.reading-tags{gap:6px}.reading-tags a{font-size:9px}.reading-actions{gap:9px}.reading-button{padding:10px 13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
@media print{body{background:white;color:black}.reading-header,.reading-sidebar,.reading-actions,.reading-connections,.reading-footer,.progress,.skip-link{display:none}.reading-wrap{width:100%}.reading-hero{padding:0 0 20px}.reading-hero h1{font-size:28pt}.reading-lead,.reading-question,.reading-meta,.eyebrow{color:#222}.reading-layout{display:block}.article-body{padding:0;background:white;font-size:11pt}.article-body h2{font-size:17pt;break-after:avoid}.article-body figure{break-inside:avoid}.article-body .math-block,.table-scroll{overflow:visible}.reading-tags{display:none}}


/* Accessible compact index for long legacy chapters; article anchors remain unchanged. */
.reading-sidebar nav .reading-index-group{border-left:1px solid var(--line);padding:5px 0 5px 10px}
.reading-sidebar nav .reading-index-group summary{color:var(--muted);font:12px/1.5 var(--sans);letter-spacing:0;text-transform:none;margin:0;padding:5px 0;overflow-wrap:anywhere;cursor:pointer;list-style:revert}
.reading-sidebar nav .reading-index-group[open] summary{color:var(--mint);margin-bottom:5px}
.reading-sidebar nav .reading-index-group>div{display:grid;gap:3px;padding-left:4px}
.reading-sidebar nav .reading-index-group>div a{border-left:1px solid var(--line);padding-left:10px}

.learning-bridge{background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:32px;margin:0 0 40px;scroll-margin-top:110px}.learning-bridge h2{font:450 clamp(24px,3vw,32px)/1.25 var(--sans);letter-spacing:-.025em;margin:16px 0 22px}.learning-bridge p{color:#bdc9ca;font-size:16px;line-height:1.85;max-width:850px}.bridge-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}.bridge-columns p{margin-top:0}.learning-bridge h3{font-size:17px;font-weight:500}.learning-bridge details{margin:18px 0 24px;padding:16px 0;border-top:1px solid #46616b;border-bottom:1px solid #46616b}.learning-bridge summary{cursor:pointer;min-height:44px;display:list-item;font-size:15px;line-height:1.7;padding:9px 0}.learning-bridge details p{font-size:15px}.bridge-experiment{border-left:2px solid var(--mint);padding:0 0 4px 22px;margin:25px 0}.bridge-experiment p{font-size:14px;max-width:750px}.bridge-next{display:inline-block;font-size:12px;color:var(--mint);padding:12px 0;text-decoration:none;min-height:44px}.start-page{max-width:1100px}.start-page>.library-section>p{color:var(--muted);max-width:850px}.guided-lab{display:block;padding:28px 30px;border:1px solid #537d75;border-radius:4px;margin:0 0 35px;background:linear-gradient(120deg,#17312f,#0d2028)}.guided-lab h3{margin:14px 0;font-size:27px;line-height:1.3}.guided-lab p{font-size:14px;margin-bottom:20px;max-width:750px}.guided-lab:hover{border-color:var(--mint)}.repro-note{font:11px/1.75 var(--sans);color:var(--muted);max-width:720px;padding-top:15px}.export-row{flex-wrap:wrap;row-gap:8px}.export-row button{min-height:44px}.model-readings{display:grid;gap:8px}.model-readings a{display:block;font-size:12px;color:var(--mint);padding:10px 0;border-bottom:1px solid var(--line)}#atlas-list-tools{padding:65px 24px 0}#atlas-list-tools label{display:block;font-size:12px;color:var(--ink);margin-bottom:10px}#atlas-search{width:100%;padding:13px;background:var(--bg);color:var(--ink);border:1px solid #58717c;border-radius:3px;min-height:44px}#atlas-list-count{font:10px/1.8 var(--mono);color:var(--muted);margin-top:12px}.atlas-stage.list-mode{min-height:0;background:none}#atlas-list{padding:18px 24px 25px}#atlas-list button{min-height:44px;padding:10px;font-size:13px}.atlas-empty{grid-column:1/-1;font-size:14px;padding:20px 0}.atlas-related button,.atlas-models button{min-height:44px}.atlas-detail{scroll-margin-top:125px}.atlas-toolbar button{min-height:44px}.atlas-toolbar{flex-wrap:wrap}#atlas-filter{min-height:44px}.reading-actions>a{min-height:44px}.reading-nav a{min-height:35px;display:inline-flex;align-items:center}@media(max-width:760px){.learning-bridge{padding:22px 20px;margin-bottom:28px}.bridge-columns{grid-template-columns:1fr;gap:0}.learning-bridge p{font-size:15px}.learning-bridge h2{font-size:25px}.guided-lab{padding:24px}.guided-lab h3{font-size:25px}.reading-header{flex-wrap:wrap;gap:12px}.reading-nav{width:100%;justify-content:space-between;gap:12px}.reading-nav a:last-child,.reading-nav a:nth-last-child(2){display:inline-flex}.reading-nav a{font-size:12px}.reading-sidebar{top:auto}.atlas-detail{scroll-margin-top:120px}}@media(max-width:560px){#atlas-list{grid-template-columns:1fr;max-height:360px;overflow:auto;overscroll-behavior:contain}.atlas-toolbar{gap:12px}.atlas-toolbar .atlas-count{display:none}.atlas-toolbar .select-label{flex-wrap:wrap;width:100%}.atlas-toolbar select{flex:1;max-width:none}.atlas-stage.list-mode{min-height:0}.learning-bridge .reading-button{max-width:100%;text-align:left}.repro-note{font-size:12px}.guided-lab h3{font-size:23px}.hero-cta{flex-wrap:wrap;gap:15px}}@media print{.learning-bridge{background:white;color:black;border-color:#aaa;break-inside:avoid}.learning-bridge p,.learning-bridge .eyebrow{color:#222}.bridge-experiment,.bridge-next{display:none}}

@media(max-width:800px){.header{height:118px;padding-bottom:44px}.header nav{height:44px}.header nav a{min-height:44px;display:inline-flex;align-items:center}.atlas-detail{scroll-margin-top:130px}}

/* Keep prose within a comfortable measure without shrinking figures or tables. */
.article-body{--reading-measure:42rem;line-height:1.8}
.article-body :is(p,h2,h3,h4,ul,ol,blockquote,hr){max-width:var(--reading-measure);margin-inline:auto}
.article-body h2:not(:first-child){margin-top:2.3em}
.article-body .compact-math{display:inline-block;max-width:100%;vertical-align:baseline}
.article-body .math-block{padding:4px 0}
.article-body .math-block .katex-display{width:max-content;min-width:100%;margin:.45em 0}
.article-body :is(.math-block,pre,.table-scroll){scrollbar-width:thin;scrollbar-color:#698980 #e7ece6;overscroll-behavior-inline:contain}
.article-body :is(.math-block,pre,.table-scroll):focus-visible{outline:2px solid #14625c;outline-offset:4px}
.article-body .reading-scroll-hint{max-width:none;margin:4px 0 20px;color:#475c61;font:12px/1.6 var(--sans)}
@media(max-width:760px){.article-body{line-height:1.8}.article-body .reading-scroll-hint{font-size:11px}}
@media print{.article-body{--reading-measure:none}.article-body .reading-scroll-hint{display:none}.article-body .math-block .katex-display{width:auto;min-width:0}}
