:root{--bg: #0f1411;--bg-2: #171d19;--bg-3: #212922;--line: rgba(226, 236, 226, .16);--text: #e7f0e8;--muted: #93a69a;--blue: #a9cfe6;--green: #c6e4a4;--ink: #142016;--amber: #e2c48a;--serif: "Fraunces", Georgia, serif;--sans: "Outfit", "Avenir Next", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--max: 1080px;--prose: 72ch;--pad: 28px;--header: 72px;color-scheme:dark;accent-color:var(--green)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(880px 360px at 0% -12%,rgba(169,207,230,.06),transparent 55%),radial-gradient(720px 320px at 100% 0%,rgba(198,228,164,.05),transparent 50%),var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.65}a{color:inherit}img,svg,video{max-width:100%}button,input,textarea{font:inherit;color:inherit}button{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--bg-3);color:var(--text);border:1px solid var(--line);border-radius:999px;padding:8px 14px;cursor:pointer;line-height:1.3}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:2px solid var(--green);outline-offset:2px}.skip{position:absolute;left:12px;top:-48px;background:var(--green);color:var(--ink);padding:8px 12px;z-index:30;border-radius:999px;text-decoration:none}.skip:focus{top:12px}.topbar{position:sticky;top:0;z-index:10;background:#0f1411eb;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar-inner{width:min(var(--max),calc(100% - 2 * var(--pad)));margin:0 auto;min-height:var(--header);padding:10px 0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px 20px;align-items:center}.wordmark{display:inline-flex;align-items:center;gap:10px;min-width:0;font-family:var(--serif);font-size:1.45rem;font-weight:680;letter-spacing:-.03em;text-decoration:none}.wordmark img,.mast-mark{display:block;object-fit:contain;flex:none}.wordmark img{width:36px;height:36px}.mast-mark{width:56px;height:56px;margin:0 0 16px}.wordmark .word{color:#fff;white-space:nowrap}.wordmark .word span{color:var(--green)}.nav-toggle{display:none;justify-self:end}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.site-search{position:relative;min-width:0;width:100%;max-width:420px;justify-self:end}.site-search label{display:block}.site-search input{width:100%;background:var(--bg-2);border:1px solid var(--line);border-radius:999px;padding:10px 16px}.search-icon{display:none}.search-results{position:absolute;z-index:20;top:calc(100% + 16px);left:0;right:0;margin:0;padding:6px;list-style:none;background:var(--bg-2);border:1px solid var(--line);border-radius:14px;max-height:min(30rem,70vh);overflow:auto}.search-results button{width:100%;text-align:left;background:transparent;border:0;border-radius:10px;padding:8px 10px;display:grid;gap:2px}.search-results button:hover{background:var(--bg-3)}.search-results span{font-family:var(--mono);font-size:.68rem;color:var(--amber);letter-spacing:.04em;text-transform:uppercase}.search-results .empty{padding:8px 10px;color:var(--muted)}.topbar nav{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;min-width:0}.topbar nav a{color:var(--muted);text-decoration:none;font-size:.95rem;padding:8px 12px;border-radius:999px;white-space:nowrap}.topbar nav a.active{color:var(--text);background:var(--bg-3);box-shadow:inset 0 0 0 1px var(--line)}.topbar nav a:hover{color:var(--text)}.shell main{width:min(var(--max),calc(100% - 2 * var(--pad)));margin:0 auto;padding:48px 0 88px}.kicker{margin:0 0 10px;color:var(--amber);font-family:var(--mono);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.kicker a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(226,196,138,.45)}h1,h2,h3{font-family:var(--serif);font-weight:560;letter-spacing:-.03em}h1{font-size:clamp(2.15rem,4.6vw,3.5rem);line-height:1.08;margin:0 0 16px}h2{line-height:1.2}.lede{font-size:1.12rem;max-width:var(--prose);color:#d5e4d8;margin:0 0 18px}.meta,.result-count,.empty,.figure-note{color:var(--muted);font-family:var(--mono);font-size:.82rem}.figure-note{margin:4px 0 0}.page>*+*,.reader>*+*{margin-top:2.5rem}.page-head{max-width:75ch;margin:0}.page-head h1{font-size:clamp(1.9rem,4vw,2.85rem)}.narrow{max-width:42rem}.btn,.text-link{display:inline-flex;align-items:center;text-decoration:none}.btn{background:var(--green);color:var(--ink);border:0;border-radius:999px;padding:11px 18px;font-weight:640;cursor:pointer}.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}.btn.quiet{background:transparent;color:var(--muted);border:1px solid var(--line);cursor:default}.text-link{color:var(--blue);border-bottom:1px solid rgba(169,207,230,.45)}.mast-actions{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 28px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 18px;margin:8px 0 0;padding:0;max-width:640px}.stats div{border-top:1px solid var(--line);padding-top:12px;min-width:0}.stats dt{font-family:var(--serif);font-size:clamp(1.45rem,3vw,1.85rem)}.stats dd{margin:0;color:var(--muted);font-size:.88rem}.section-grid,.band,.closing,.reader-grid{display:grid;gap:32px;min-width:0}.section-grid{grid-template-columns:minmax(0,1.45fr) minmax(240px,.8fr)}.band,.closing{grid-template-columns:repeat(2,minmax(0,1fr))}.band>div,.closing>div,.rail,.callout,.glossary article{background:var(--bg-2);border:1px solid var(--line);border-radius:16px;padding:22px 22px 18px;min-width:0}.section-label{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;align-items:baseline;margin-bottom:8px}.section-label h2,.rail h2{margin:0;font-size:clamp(1.45rem,2.4vw,1.75rem)}.section-label a,.section-label p{color:var(--muted);margin:0;text-decoration:none;max-width:46ch}.path-list,.start-list,.lesson-index,.library-list{list-style:none;margin:0;padding:0}.path-list a,.start-list a,.lesson-index a,.library-list a{display:grid;text-decoration:none;min-width:0}.path-list a{grid-template-columns:2.6rem minmax(0,1fr);gap:2px 14px;padding:16px 0;border-top:1px solid var(--line)}.path-list span,.start-list span,.lesson-index span{font-family:var(--mono);color:var(--green);font-size:.8rem}.path-list span{grid-row:1 / span 2}.path-list strong,.lesson-index strong{min-width:0}.path-list em,.lesson-index em,.note-card em{color:var(--muted);font-style:normal;min-width:0;overflow-wrap:anywhere}.start-list a{padding:14px 0;border-top:1px solid var(--line);gap:2px}.start-list strong{display:block}.start-list em{color:var(--muted);font-style:normal;font-family:var(--mono);font-size:.75rem}.rail-note{color:var(--muted);margin:16px 0 0}.rail-note a{color:var(--blue)}.note-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px}.note-card{display:flex;flex-direction:column;gap:8px;min-width:0;text-decoration:none;background:var(--bg-2);border:1px solid var(--line);border-radius:16px;padding:20px}.note-card strong{font-family:var(--serif);font-size:1.4rem;font-weight:560}.note-card span{font-family:var(--mono);font-size:.72rem;color:var(--amber)}.note-card:hover strong,.path-list a:hover strong,.lesson-index a:hover strong,.library-list a:hover strong,.deeper-list a:hover strong{color:var(--green)}.deeper{min-width:0;max-width:100%}.deeper h3{margin:1.75rem 0 .35rem;font-size:1.2rem}.deeper-list{list-style:none;margin:0;padding:0}.deeper-list a{display:grid;grid-template-columns:2.6rem minmax(0,1fr);gap:2px 14px;padding:16px 0;border-top:1px solid var(--line);text-decoration:none;min-width:0;max-width:100%}.deeper-list span{grid-row:1 / span 2;font-family:var(--mono);color:var(--green);font-size:.8rem}.deeper-list strong,.deeper-list em{min-width:0;overflow-wrap:anywhere}.deeper-list em{color:var(--muted);font-style:normal}.path-block{margin:0}.lesson-index a{grid-template-columns:2.6rem minmax(0,1fr) auto;grid-template-areas:"num title time" "num summary time";gap:4px 16px;padding:18px 0;border-top:1px solid var(--line);align-items:start}.lesson-index span{grid-area:num}.lesson-index strong{grid-area:title}.lesson-index em{grid-area:summary}.lesson-index small{grid-area:time;color:var(--muted);font-family:var(--mono);font-size:.75rem;white-space:nowrap}.prose{max-width:var(--prose);min-width:0}.prose h2{font-size:1.55rem;margin:0 0 .7rem}.reader-main>*+*{margin-top:1.75rem}.reader-main .prose+.prose h2,.reader .prose+.prose h2{margin-top:2rem}.prose p{margin:0 0 .95rem}.prose ul{margin:0 0 1rem 1.15rem;padding:0}.prose li{margin:.35rem 0}.reader-grid{grid-template-columns:minmax(0,1fr) minmax(11rem,15rem);gap:40px 48px;align-items:start}.reader-grid>*{min-width:0;max-width:100%}.lesson-figures{container-type:inline-size;container-name:figures;min-width:0;max-width:100%;margin:0 0 8px}.lesson-figures h2{font-size:1.55rem;margin:0 0 14px}.flow-figure,.compare,.proxy,.copy-block{margin:0 0 14px;border:1px solid var(--line);border-radius:16px;background:var(--bg-2);padding:16px;min-width:0;max-width:100%}.flow-figure figcaption,.compare figcaption,.proxy figcaption,.copy-block figcaption{font-family:var(--mono);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--amber);margin-bottom:12px}.flow-track{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;padding:0;min-width:0}.flow-track li{display:flex;min-width:0;max-width:100%}.flow-track button{display:inline-flex;align-items:center;gap:10px;min-width:0;max-width:100%;background:var(--bg-3);color:var(--text);border:1px solid var(--line);border-radius:999px;padding:5px 14px 5px 5px;text-align:left}.flow-track button.on{background:var(--green);color:var(--ink);border-color:var(--green)}.step-index{flex:0 0 1.75rem;width:1.75rem;height:1.75rem;display:grid;place-items:center;border-radius:999px;background:#e7f0e814;font-family:var(--mono);font-size:.72rem;line-height:1}.flow-track button.on .step-index{background:#14201624;color:var(--ink)}.step-name{min-width:0;font-family:var(--sans);font-size:.95rem;line-height:1.25}.schematic{list-style:none;display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:0;min-width:0}.schematic li{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 0;border:0;background:transparent;padding:0}.schematic li:not(:last-child):after{content:"";flex:1 1 12px;height:1px;min-width:8px;background:var(--line)}.schematic span{flex:none;width:1.7rem;height:1.7rem;display:grid;place-items:center;border-radius:999px;border:1px solid var(--line);background:var(--bg);font-family:var(--mono);font-size:.68rem;color:var(--muted)}.schematic li.on span{background:var(--green);border-color:var(--green);color:var(--ink)}.schematic strong{min-width:0;font-family:var(--sans);font-weight:500;font-size:.84rem;letter-spacing:0;overflow-wrap:anywhere}.flowchart{list-style:none;display:flex;flex-wrap:wrap;align-items:stretch;margin:0 0 14px;padding:0;min-width:0;max-width:100%;row-gap:8px}.flowchart>li{display:flex;align-items:center;flex:1 1 auto;min-width:max-content;max-width:100%}.flow-node{flex:1 1 auto;display:flex;align-items:center;gap:8px;min-width:max-content;max-width:100%;width:auto;background:var(--bg-3);color:var(--text);border:1px solid var(--line);border-radius:14px;padding:10px 12px;text-align:left}.flow-node.on{background:var(--green);color:var(--ink);border-color:var(--green)}.flow-node .step-index{background:#e7f0e814;color:var(--text);border:1px solid var(--line)}.flow-node.on .step-index{background:#14201624;color:var(--ink);border-color:transparent}.flow-node .step-name{font-size:.92rem;white-space:nowrap}.node-glyph{width:28px;height:28px;flex:none;max-width:none}.join{flex:none;display:flex;align-items:center;justify-content:center;width:28px}.flow-arrow{display:block;width:28px;height:16px;max-width:none;overflow:visible}.flow-arrow path{fill:none;stroke:var(--muted);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.flow-stage{min-width:0}.flow-stage strong{display:block}.flow-stage p{margin:6px 0 0}.flow-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.compare .chips,.proxy .chips{margin:0 0 12px}.compare-board,.proxy-cols{display:grid;gap:10px;min-width:0}.compare-board{grid-template-columns:repeat(3,minmax(0,1fr))}.compare-board.unsafe{box-shadow:inset 3px 0 #e3a398}.compare-board.safe{box-shadow:inset 3px 0 0 var(--green)}.compare-board>div,.proxy-cols section{border:1px solid var(--line);border-radius:12px;padding:12px;min-width:0;background:var(--bg)}.compare-board span,.proxy-cols h3{font-family:var(--mono);font-size:.72rem;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.compare-board p,.proxy-cols p{margin:8px 0 0}.compare-board code,.statement code{display:block;margin-top:8px;font-family:var(--mono);font-size:.82rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.proxy-window{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#0c100e;min-width:0}.proxy-window header{display:flex;gap:6px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line);min-width:0}.proxy-window header span{width:9px;height:9px;border-radius:50%;background:#3a463e;flex:none}.proxy-window header span:first-child{background:#e07a6a}.proxy-window header span:nth-child(2){background:var(--amber)}.proxy-window header span:nth-child(3){background:var(--green)}.proxy-window header p{margin:0 0 0 8px;font-family:var(--mono);font-size:.75rem;color:var(--muted);min-width:0;overflow-wrap:anywhere}.proxy-cols{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.proxy-cols pre,.copy-block pre,.sample{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--mono);font-size:.82rem;line-height:1.5;max-width:100%}.proxy-read{margin:0;padding:0 16px 14px 32px}.proxy-read li{margin:4px 0}.copy-block figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px}.copy-block figcaption span{min-width:0;flex:1 1 12rem}.copy-block button{flex:none}.copy-block pre{color:#d7e6da;padding:12px 14px;background:#0c100e;border-radius:12px}.sample{background:#0c100e;border:1px solid var(--line);border-radius:12px;padding:14px 16px;color:#d7e6da}.topic-map{min-width:0;max-width:100%}.topic-intro{color:var(--muted);margin:0 0 14px}.topic-map .flow-track a{display:inline-flex;align-items:center;gap:10px;min-width:0;max-width:100%;background:var(--bg-3);color:var(--text);border:1px solid var(--line);border-radius:999px;padding:5px 14px 5px 5px;text-decoration:none;text-align:left}.topic-map .flow-track a.on{background:var(--green);color:var(--ink);border-color:var(--green)}.topic-map .flow-track a.on .step-index{background:#14201624;color:var(--ink)}.topic-card{margin:0 0 14px;border:1px solid var(--line);border-radius:16px;background:var(--bg-2);padding:16px;min-width:0}.topic-card.on{box-shadow:inset 3px 0 0 var(--green)}.topic-card h3{margin:0 0 12px;font-size:1.25rem}.topic-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.topic-fields div{border:1px solid var(--line);border-radius:12px;padding:12px;min-width:0;background:var(--bg)}.topic-fields dt{font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--amber)}.topic-fields dd{margin:8px 0 0}.lesson-check{min-width:0}.lesson-check .choices button{text-align:left}.toc{position:sticky;top:calc(var(--header) + 16px);min-width:0;padding-left:16px;border-left:1px solid var(--line);font-size:.92rem}.toc p{margin:0 0 8px;font-family:var(--mono);font-size:.72rem;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.toc ol{margin:0 0 16px;padding-left:1.15rem}.toc a{color:var(--muted);text-decoration:none;overflow-wrap:anywhere}.toc li{margin:.28rem 0}.toc a:hover{color:var(--text)}.toc>a{color:var(--blue)}.callout{margin-top:2rem}.callout strong{display:block;margin-bottom:6px}.callout p{margin:0;color:var(--muted)}.pager{display:flex;justify-content:space-between;gap:16px 24px;margin-top:1.5rem}.pager a{color:var(--blue);text-decoration:none;max-width:46%;min-width:0;overflow-wrap:anywhere}.filters{display:grid;gap:14px;margin:0}.search{display:grid;gap:6px;min-width:0}.search span{font-family:var(--mono);font-size:.72rem;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.search input,.contact-form input,.contact-form textarea{width:100%;max-width:100%;background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.chips button{background:var(--bg-3);border:1px solid var(--line);border-radius:999px;padding:7px 12px;color:var(--text);max-width:100%;text-align:left}.chips button.on{color:var(--ink);background:var(--green);border-color:var(--green)}.library-list a{grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:8px 16px;padding:14px 0;border-top:1px solid var(--line);align-items:baseline}.library-list span{color:var(--muted);font-family:var(--mono);font-size:.75rem;min-width:0;overflow-wrap:anywhere}.library-list strong{min-width:0;overflow-wrap:anywhere}.glossary{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px}.glossary header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 12px;align-items:baseline}.glossary h2{margin:0 0 8px;font-size:1.3rem}.glossary span{font-family:var(--mono);font-size:.72rem;color:var(--amber)}.glossary p{margin:0 0 8px;color:#d5e4d8}.glossary-pages{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px}.glossary-pages a{color:var(--blue);text-decoration:none;overflow-wrap:anywhere}.contact-form{display:grid;gap:16px;max-width:640px}.contact-form label{display:grid;gap:6px}.choices{display:grid;gap:8px;margin:16px 0}.choices button{width:100%;text-align:left;background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:14px 16px}.choices button.good{border-color:var(--green)}.choices button.bad{border-color:#e3a398}.feedback{margin:8px 0 18px}.desk{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:28px;align-items:start}.desk-controls p{margin:0 0 8px;font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.switch{display:flex;gap:10px;align-items:flex-start;margin:12px 0}.switch input{width:1rem;height:1rem;margin-top:.25rem;flex:none}.library-list button{display:grid;grid-template-columns:minmax(0,4.5rem) minmax(0,1fr);gap:12px;width:100%;text-align:left;background:transparent;border:0;border-radius:0;border-top:1px solid var(--line);padding:14px 0;color:inherit}.callout.denied{border-color:var(--amber)}.desk .btn.ghost{margin:12px 0 0}.site-footer{width:min(var(--max),calc(100% - 2 * var(--pad)));margin:0 auto 32px;padding-top:22px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px 28px}.site-footer p{color:var(--muted);margin:6px 0 0;max-width:46ch}.footer-links{display:flex;flex-wrap:wrap;gap:10px 14px;align-content:start;min-width:0}.footer-links a{color:var(--blue);text-decoration:none;overflow-wrap:anywhere}.copy{grid-column:1 / -1;font-family:var(--mono);font-size:.75rem}.event-hero{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px;padding:32px 28px 20px;background:var(--bg-2);margin:0}.event-hero .kicker,.event-hero h1,.event-hero .lede{max-width:min(40rem,calc(100% - 72px))}.ended-ribbon{position:absolute;top:22px;right:-46px;transform:rotate(32deg);background:var(--amber);color:#1a1408;font-family:var(--mono);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:650;padding:7px 56px}.prize-grid,.judge-grid{display:grid;gap:12px}.prize-grid,.judge-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.prize-grid article,.judge-grid li{border:1px solid var(--line);border-radius:16px;background:var(--bg-2);padding:16px 16px 8px;min-width:0}.prize-grid h3{margin:0 0 8px;font-size:1.25rem}.prize-grid ul,.judge-grid{list-style:none;margin:0;padding:0}.prize-grid li{margin:0 0 .45rem;color:#d5e4d8;overflow-wrap:anywhere}.prize-grid .span-row{grid-column:1 / -1}.sponsor-banner{display:block;width:100%;height:auto;border-radius:16px;border:1px solid var(--line);background:#fff}.judge-grid img{width:72px;height:72px;object-fit:cover;border-radius:50%;margin-bottom:10px}.judge-grid strong{display:block}.judge-grid span{color:var(--muted);font-size:.92rem}.lab-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:16px;align-items:start}.mission-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.mission-list button{width:100%;text-align:left;background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:4px}.mission-list .current button{border-color:var(--green)}.mission-list span{font-family:var(--mono);font-size:.72rem;color:var(--amber)}.mission-list em{color:var(--muted);font-style:normal;font-size:.92rem}.lab-help{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0}.lab-help .hint,.lab-help .solution{flex-basis:100%;margin:0;min-width:0}.lab-help .solution{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--bg-2)}.lab-help .solution strong{display:block;margin-bottom:4px}.terminal-help{margin-bottom:8px}.terminal{background:#0c100e;border:1px solid var(--line);border-radius:16px;min-width:0;overflow:hidden}.terminal-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line)}.terminal-bar span{width:10px;height:10px;border-radius:50%;background:#3a463e;flex:none}.terminal-bar span:first-child{background:#e07a6a}.terminal-bar span:nth-child(2){background:var(--amber)}.terminal-bar span:nth-child(3){background:var(--green)}.terminal-bar p{margin:0 0 0 8px;font-family:var(--mono);font-size:.75rem;color:var(--muted);min-width:0}.terminal-scroll{height:min(520px,68vh);overflow:auto;padding:14px 14px 18px;font-family:var(--mono);font-size:.92rem;line-height:1.55}.terminal-scroll p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.terminal-scroll .in{color:var(--green)}.terminal-scroll .out{color:#d7e6da}.terminal-input{display:flex;gap:8px;align-items:center;margin-top:8px;min-width:0}.terminal-input span{color:var(--blue);white-space:nowrap}.terminal-input input{flex:1;min-width:0;background:transparent;border:0;border-radius:0;padding:0;outline:none;font-family:var(--mono)}@container figures (max-width: 720px){.compare-board,.proxy-cols,.topic-fields{grid-template-columns:minmax(0,1fr)}.flow-track{flex-direction:column;align-items:stretch}.flow-track li,.flow-track button{width:100%}.schematic strong{display:none}.flowchart{flex-direction:column;align-items:stretch}.flowchart>li{flex-direction:column;width:100%;flex:none;min-width:0;max-width:none}.flow-node{width:100%;min-width:0}.flow-node .step-name{white-space:normal}.join{width:auto;height:28px}.flow-arrow{transform:rotate(90deg)}}@media(min-width:1200px){:root{--max: 1440px}.reader-main{display:grid;grid-template-columns:minmax(0,var(--prose)) minmax(0,1fr);column-gap:32px;align-items:start}.reader-main>*{grid-column:1 / -1}.reader-main>.prose,.reader-main>.callout{grid-column:1;max-width:none}.reader-main>.prose:has(>pre),.reader-main>.deeper{grid-column:1 / -1}.reader-main>.prose:has(>pre)>:not(pre),.reader-main>.deeper>h2,.reader-main>.deeper>h3,.reader-main>.deeper>p,.deeper-list em{max-width:var(--prose)}.lesson-figures,.topic-map,.lesson-check,.compare,.compare-board,.proxy,.copy-block,.sample,.glossary,.note-grid,.prize-grid,.judge-grid,.section-grid,.lab-layout{width:100%;max-width:100%}}@media(max-width:900px){.topbar-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"logo menu" "search search"}.topbar-inner:has(#site-nav.open){grid-template-areas:"logo menu" "search search" "nav nav"}.wordmark{grid-area:logo}.nav-toggle{display:inline-flex;grid-area:menu}.site-search{grid-area:search;max-width:none;justify-self:stretch}.topbar nav{display:none;grid-area:nav;flex-direction:column;align-items:stretch;gap:4px;padding:4px 0 12px}.topbar nav.open{display:flex}.topbar nav a{padding:10px 12px}.section-grid,.band,.closing,.reader-grid,.site-footer,.desk,.lab-layout{grid-template-columns:minmax(0,1fr)}.toc{position:static;border-left:0;border-top:1px solid var(--line);padding:16px 0 0}}@media(max-width:720px){:root{--pad: 16px;--header: 64px}.shell main{padding:32px 0 64px}h1{font-size:clamp(1.85rem,9vw,2.4rem)}.page-head h1{font-size:clamp(1.75rem,8vw,2.2rem)}.wordmark{font-size:1.25rem}.deeper-list a{grid-template-columns:minmax(0,1fr);gap:4px;padding:18px 0}.deeper-list span{grid-row:auto}.lesson-index a{grid-template-columns:2.4rem minmax(0,1fr);grid-template-areas:"num title" "num summary" "num time"}.library-list a{grid-template-columns:minmax(0,1fr)}.mast-actions{align-items:stretch}.mast-actions .btn{justify-content:center}.pager{flex-direction:column}.pager a{max-width:none}.stats{grid-template-columns:minmax(0,1fr)}.site-footer p{max-width:none}.event-hero{padding:56px 16px 16px}.prize-grid .span-row{grid-column:auto}.terminal-scroll{height:62vh;font-size:.84rem}.compare-board,.proxy-cols,.topic-fields{grid-template-columns:minmax(0,1fr)}.schematic strong{display:none}.flow-track{flex-direction:column;align-items:stretch}.flow-track li,.flow-track button{width:100%}.flowchart{flex-direction:column;align-items:stretch}.flowchart>li{flex-direction:column;width:100%;flex:none;min-width:0;max-width:none}.flow-node{width:100%;min-width:0}.flow-node .step-name{white-space:normal}.join{width:auto;height:28px}.flow-arrow{transform:rotate(90deg)}.section-label{display:grid}}
