/* Integrated explorer: shared site fonts and light/dark colors. */
.cobordism-app {color-scheme:light dark}
.cobordism-app section {margin:0}
.cobordism-app h2,.cobordism-app h3 {padding:0;border:0;text-transform:none;letter-spacing:normal;color:var(--ink)}
.cobordism-app h3 {margin:1em 0}
.cobordism-app a,.cobordism-app a:hover {border-bottom:0;color:inherit}
.cobordism-app {
  --paper: var(--bg);
  --white: var(--bg);
  --muted: var(--ink-soft);
  --line: var(--rule);
  --blue: var(--accent);
  --sky: color-mix(in srgb, var(--accent) 20%, var(--bg));
  --copper: #776235;
  --soft: var(--bg-panel);
  --diagram-ink: var(--ink);
  --diagram-muted: var(--ink-soft);
  --diagram-accent: var(--accent);
  --diagram-secondary: var(--copper);
  --diagram-grid: var(--rule);
  --diagram-wire: color-mix(in srgb, var(--accent) 60%, var(--bg));
  --diagram-paper: var(--bg);
  --diagram-panel: var(--bg-panel);
  --diagram-wash: color-mix(in srgb, var(--accent) 16%, var(--bg));
  --diagram-secondary-wash: color-mix(in srgb, var(--copper) 18%, var(--bg));
  --diagram-slice-fill: color-mix(in srgb, var(--copper) 12%, transparent);
  --diagram-slice-edge: color-mix(in srgb, var(--copper) 40%, transparent);
}
@media (prefers-color-scheme: dark) {
  .cobordism-app { --copper: #c9bc97; }
}
.cobordism-app *{box-sizing:border-box}.cobordism-app{scroll-behavior:smooth}.cobordism-app{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 var(--sans);-webkit-font-smoothing:antialiased}.cobordism-app button,.cobordism-app input,.cobordism-app select{font:inherit}.cobordism-app button,.cobordism-app a,.cobordism-app input,.cobordism-app select{-webkit-tap-highlight-color:transparent}.cobordism-app button{cursor:pointer}.cobordism-app a{color:inherit;text-decoration:none}.cobordism-app button{color:inherit}.cobordism-app button:focus-visible,.cobordism-app a:focus-visible,.cobordism-app input:focus-visible,.cobordism-app select:focus-visible,.cobordism-app summary:focus-visible,.cobordism-app [tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.cobordism-app button:disabled{opacity:.35;cursor:default}.cobordism-app button{border:0;background:none}.cobordism-app button,.cobordism-app a,.cobordism-app input,.cobordism-app select{touch-action:manipulation}.cobordism-app h1,.cobordism-app h2,.cobordism-app p{margin:0}.cobordism-app h1,.cobordism-app h2{font-weight:400}.cobordism-app .explorer-header{height:80px;max-width:1550px;margin:auto;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;gap:24px}.cobordism-app .brand{display:flex;align-items:center;gap:13px;font-size:10px;font-weight:650;letter-spacing:1.4px;line-height:1.6}.cobordism-app .brand-mark{font:italic 34px var(--serif);border:1px solid var(--rule);width:43px;height:43px;display:grid;place-items:center;letter-spacing:-4px;padding-right:5px}.cobordism-app .brand-sub{display:block;color:var(--muted);font-size:9px;letter-spacing:2px}.cobordism-app .explorer-header nav{display:flex;gap:25px;align-items:center}.cobordism-app .text-button{padding:8px 0;font-size:12px}.cobordism-app .text-button span{padding-left:7px}.cobordism-app .paper-link{border:1px solid var(--rule);padding:9px 15px;font-size:12px}.cobordism-app .paper-link:hover,.cobordism-app .nav-button:hover:not(:disabled){background:var(--bg-panel)}.cobordism-app main{max-width:1550px;margin:auto;padding:24px 5vw 0}.cobordism-app .intro{display:flex;justify-content:space-between;align-items:center;padding:0 0 35px;gap:35px}.cobordism-app .eyebrow{font-size:10px;font-weight:650;letter-spacing:1.6px;text-transform:uppercase;line-height:1.6}.cobordism-app .status-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--blue);margin-right:8px;vertical-align:middle}.cobordism-app h1{font:clamp(37px,3.6vw,56px)/1.12 var(--serif);letter-spacing:-1.5px;margin:11px 0 13px}.cobordism-app em{font-weight:400;color:var(--blue)}.cobordism-app .intro-copy{width:340px;max-width:35%;padding-bottom:4px}.cobordism-app .intro-copy>p:first-child{font-size:14px;line-height:1.6;margin-bottom:12px}.cobordism-app .muted{color:var(--muted);font-size:13px}.cobordism-app .journey-link{display:inline-flex;align-items:center;gap:22px;font-size:12px;font-weight:650;margin-top:23px;padding:0 0 5px;border-bottom:1px solid var(--rule)}.cobordism-app .journey-link:hover{color:var(--blue)}.cobordism-app .laboratory{background:var(--white);border:1px solid var(--line);scroll-margin-top:15px}.cobordism-app .journey-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:49px;padding:0 25px;font-size:9px;letter-spacing:1.4px;color:var(--muted)}.cobordism-app .journey-bar .text-button{font-size:11px;letter-spacing:0}.cobordism-app .keyboard-hint{font-size:10px;letter-spacing:.3px;margin-left:auto}.cobordism-app kbd{font:11px var(--sans);border:1px solid var(--line);padding:1px 4px;display:inline-block}.cobordism-app .chapters{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cobordism-app .chapter-tab{position:relative;text-align:left;padding:16px 14px 15px;border-right:1px solid var(--line);transition:background .2s}.cobordism-app .chapter-tab:last-child{border-right:0}.cobordism-app .chapter-tab:hover{background:var(--bg-panel)}.cobordism-app .chapter-tab[aria-current=step]{background:var(--bg-panel)}.cobordism-app .chapter-tab[aria-current=step]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:3px;background:var(--blue)}.cobordism-app .chapter-tab .number{display:block;font:10px var(--sans);color:var(--ink-soft);letter-spacing:1px;margin-bottom:5px}.cobordism-app .chapter-tab .name{font-size:12px;font-weight:550}.cobordism-app .workbench{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);min-height:580px}.cobordism-app .visual-column{min-width:0;background:var(--bg-panel);position:relative;display:flex;flex-direction:column;border-right:1px solid var(--line)}.cobordism-app .visual-heading{display:flex;justify-content:space-between;gap:12px;padding:22px 24px 0;align-items:center}.cobordism-app .tag{color:var(--ink-soft);font-size:9px;letter-spacing:1.3px;text-transform:uppercase}.cobordism-app .counter{font:11px var(--serif);color:var(--ink-soft)}.cobordism-app .scene{position:relative;width:100%;height:360px;display:flex;align-items:center;justify-content:center;overflow:hidden}.cobordism-app .scene>svg{width:100%;height:100%;display:block}.cobordism-app .scene canvas{width:100%;height:100%;display:block;touch-action:pan-y;cursor:grab}.cobordism-app .scene canvas:active{cursor:grabbing}.cobordism-app .scene .orbit-help{position:absolute;bottom:8px;left:24px;font-size:9px;color:var(--ink-soft);letter-spacing:.5px;pointer-events:none}.cobordism-app .scene-controls{padding:0 24px 16px;min-height:88px}.cobordism-app .scene-caption{border-top:1px solid var(--rule);padding:15px 24px 17px;color:var(--ink-soft);font-size:10px;line-height:1.7;margin-top:auto}.cobordism-app .story-column{padding:30px 30px 20px}.cobordism-app .story-column .eyebrow{color:var(--blue);font-size:9px}.cobordism-app .story-column h2{font:36px/1.05 var(--serif);letter-spacing:-.4px;margin:15px 0 17px}.cobordism-app .chapter-description{font-size:13px;line-height:1.8;color:var(--ink-soft)}.cobordism-app .term{display:inline;border-bottom:1px dotted var(--ink-soft);padding:0;color:var(--blue);font-size:inherit;line-height:inherit}.cobordism-app .term:hover{background:var(--soft)}.cobordism-app .insight{margin-top:20px;padding:13px 15px;border-left:2px solid var(--blue);background:var(--bg-panel);font-size:12px;line-height:1.65;min-height:70px}.cobordism-app .insight strong{font-weight:650}.cobordism-app .formula{font:20px/1.55 Georgia,serif;text-align:center;padding:20px 0 15px;word-break:normal}.cobordism-app .formula small{display:block;font:10px/1.6 var(--sans);color:var(--muted);margin-top:6px}.cobordism-app .try-this{font-size:11px;line-height:1.7;color:var(--ink-soft);margin-bottom:20px}.cobordism-app .try-this b{color:var(--ink);font-weight:600}.cobordism-app .math-details{border-top:1px solid var(--line);padding-top:13px}.cobordism-app .math-details summary{font-size:11px;font-weight:550;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.cobordism-app .math-details summary::-webkit-details-marker{display:none}.cobordism-app .math-details summary span{font-size:14px}.cobordism-app .math-details[open] summary span{transform:rotate(45deg)}.cobordism-app .math-details>div{font-size:11px;color:var(--ink-soft);line-height:1.8;margin-top:13px}.cobordism-app .math-details p+p{margin-top:9px}.cobordism-app .journey-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:16px 24px;gap:10px}.cobordism-app .nav-button{font-size:11px;border:1px solid var(--rule);min-height:36px;padding:8px 16px;min-width:104px}.cobordism-app .nav-button.primary{background:var(--ink);color:var(--bg);border-color:var(--ink);min-width:165px}.cobordism-app .nav-button.primary:hover{background:var(--blue)}.cobordism-app #step-status{font-size:10px;color:var(--ink-soft)}.cobordism-app .takeaway{position:relative;padding:64px 0;display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.cobordism-app .takeaway>p:nth-child(2){font:40px/1.15 var(--serif);letter-spacing:-.7px}.cobordism-app .takeaway>div{font-size:12px;line-height:1.8;color:var(--muted)}.cobordism-app footer{border-top:1px solid var(--line);max-width:1550px;margin:auto;padding:24px 5vw 35px;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:var(--muted)}.cobordism-app footer nav{display:flex;gap:23px;align-items:center}.cobordism-app footer a:hover{text-decoration:underline}.cobordism-app .control-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cobordism-app .control-row+.control-row{margin-top:13px}.cobordism-app .control-label{font-size:10px;letter-spacing:.5px;display:flex;align-items:center;gap:12px;flex:1;min-width:150px}.cobordism-app .control-label input[type=range]{flex:1;min-width:50px;accent-color:var(--blue)}.cobordism-app input[type=range]{cursor:pointer;width:100%;height:22px}.cobordism-app output,.cobordism-app .readout{font:11px var(--sans);color:var(--blue);font-variant-numeric:tabular-nums;min-width:29px}.cobordism-app .small-button{border:1px solid var(--rule);border-radius:2px;font-size:10px;padding:6px 10px;min-height:31px;background:var(--bg)}.cobordism-app .small-button:hover,.cobordism-app .small-button[aria-pressed=true]{background:var(--sky);border-color:var(--accent)}.cobordism-app .segment{display:flex;border:1px solid var(--rule);border-radius:2px;overflow:hidden;max-width:100%}.cobordism-app .segment button{font-size:10px;padding:7px 11px;flex:1;border-right:1px solid var(--rule);white-space:nowrap;min-height:32px}.cobordism-app .segment button:last-child{border-right:0}.cobordism-app .segment button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.cobordism-app .control-note{font-size:10px;color:var(--ink-soft)}.cobordism-app .toggle-label{font-size:10px;display:flex;gap:7px;align-items:center;cursor:pointer}.cobordism-app .toggle-label input{accent-color:var(--blue)}.cobordism-app .vector-bits{display:flex;gap:5px}.cobordism-app .bit{border:1px solid var(--rule);width:29px;height:29px;background:var(--bg);font-size:11px}.cobordism-app .bit[aria-pressed=true]{background:var(--accent);color:var(--bg)}.cobordism-app .control-row select{font-size:10px;border:1px solid var(--rule);background:var(--bg);padding:6px}.cobordism-app .math-matrix{display:inline-grid;grid-template-columns:repeat(2,1fr);border-left:1px solid currentColor;border-right:1px solid currentColor;gap:0 12px;padding:1px 7px;font:15px Georgia,serif;vertical-align:middle;line-height:1.5;margin:0 3px}.cobordism-app .matrix-strip{display:flex;gap:13px;align-items:center;justify-content:center;margin-top:12px;font:13px Georgia,serif}.cobordism-app .matrix-label{font:10px var(--sans);color:var(--muted)}.cobordism-app .scene svg text{font-family:var(--sans);fill:var(--ink)}.cobordism-app .scene svg .serif{font-family:Georgia,serif}.cobordism-app .scene svg .tiny{font-size:10px;letter-spacing:1px;fill:var(--ink-soft)}.cobordism-app .scene svg .label{font-size:13px;fill:var(--ink-soft)}.cobordism-app .scene svg .large{font:24px Georgia,serif}.cobordism-app .scene svg .blue{fill:var(--blue)}.cobordism-app .scene svg .orange{fill:var(--copper)}.cobordism-app .scene svg .line{fill:none;stroke:var(--accent);stroke-width:1.5}.cobordism-app .scene svg .thin{fill:none;stroke:var(--diagram-wire);stroke-width:.7}.cobordism-app .scene svg .guide{stroke:var(--diagram-wire);stroke-dasharray:4 5;fill:none}.cobordism-app .scene svg .flow{stroke:var(--accent);stroke-width:2;fill:none;stroke-dasharray:5 6;animation:dash 3s linear infinite}.cobordism-app .scene svg .flow-orange{stroke:var(--copper);stroke-width:2;fill:none;stroke-dasharray:5 6;animation:dash 3s linear infinite}.cobordism-app .scene svg .glow{filter:drop-shadow(0 0 4px var(--sky))}@keyframes dash{to{stroke-dashoffset:-44}}.paused .cobordism-app *{animation-play-state:paused!important}.cobordism-app .skip{position:fixed;z-index:100;top:-80px;left:20px;background:var(--bg);padding:12px;border:2px solid var(--accent)}.cobordism-app .skip:focus{top:12px}.cobordism-app dialog{border:1px solid var(--rule);padding:28px 34px 32px;width:min(680px,90vw);max-height:85vh;color:var(--ink);background:var(--bg)}.cobordism-app dialog::backdrop{background:#16161a88;backdrop-filter:blur(5px)}.cobordism-app .dialog-header{display:flex;justify-content:space-between;align-items:center}.cobordism-app .icon-button{font-size:26px;width:35px;height:35px}.cobordism-app .dialog-header .eyebrow{color:var(--blue)}.cobordism-app dialog h2{font:40px var(--serif);margin:12px 0 22px}.cobordism-app #dialog-body{font-size:13px;line-height:1.85;color:var(--ink-soft)}.cobordism-app #dialog-body h3{font:22px var(--serif);color:var(--ink);margin-bottom:7px}.cobordism-app #dialog-body p{margin:10px 0 18px}.cobordism-app #dialog-body a{color:var(--blue);text-decoration:underline}.cobordism-app #dialog-body dl{display:grid;grid-template-columns:130px 1fr;gap:18px}.cobordism-app #dialog-body dt{font-weight:600;color:var(--ink)}.cobordism-app #dialog-body dd{margin:0}.cobordism-app #dialog-body .scope{padding:16px;background:var(--bg-panel)}.cobordism-app .noscript{padding:25px;background:var(--bg-panel)}.cobordism-app .source-ref{display:block;font-size:10px;margin-top:12px;color:var(--blue)}
@media(min-width:1450px){.cobordism-app .scene{height:420px}.cobordism-app .story-column{padding:36px 37px}.cobordism-app .story-column h2{font-size:42px}.cobordism-app .chapter-description{font-size:14px}}
@media(max-width:1050px){.cobordism-app .explorer-header nav{gap:15px}.cobordism-app .explorer-header nav .paper-link{display:none}.cobordism-app .intro{gap:25px}.cobordism-app .intro-copy{max-width:37%;width:auto}.cobordism-app .workbench{grid-template-columns:1.5fr 1fr}.cobordism-app .story-column{padding:25px 20px}.cobordism-app .story-column h2{font-size:31px}.cobordism-app .chapter-tab{padding:13px 9px}.cobordism-app .chapter-tab .name{font-size:10px}.cobordism-app .scene-controls{padding:0 17px 14px}.cobordism-app .visual-heading{padding:20px 17px 0}.cobordism-app .scene-caption{padding:13px 17px}.cobordism-app .takeaway{grid-template-columns:1fr 2fr}.cobordism-app .takeaway .eyebrow{grid-column:1/-1}.cobordism-app .scene{height:340px}}
@media(max-width:760px){.cobordism-app .explorer-header{height:67px}.cobordism-app .brand{font-size:8px;letter-spacing:1px}.cobordism-app .brand-mark{width:35px;height:35px;font-size:28px}.cobordism-app .brand-sub{font-size:7px}.cobordism-app .explorer-header nav{gap:12px}.cobordism-app .explorer-header .text-button{font-size:10px}.cobordism-app .explorer-header .text-button span{display:none}.cobordism-app .intro{display:block;padding:0 0 28px}.cobordism-app h1{font-size:39px;letter-spacing:-1px;margin-top:11px}.cobordism-app .intro .eyebrow{font-size:8px}.cobordism-app .intro-copy{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:24px}.cobordism-app .intro-copy>p:first-child{font-size:13px;margin:0}.cobordism-app .intro-copy .muted{font-size:11px}.cobordism-app .intro-copy .journey-link{grid-column:1/-1;width:fit-content;margin-top:1px}.cobordism-app .journey-bar{padding:0 16px;min-height:43px;font-size:8px;letter-spacing:.6px}.cobordism-app .keyboard-hint{display:none}.cobordism-app .chapters{grid-template-columns:repeat(3,1fr)}.cobordism-app .chapter-tab:nth-child(3){border-right:0}.cobordism-app .chapter-tab:nth-child(-n+3){border-bottom:1px solid var(--line)}.cobordism-app .chapter-tab{padding:10px 14px}.cobordism-app .chapter-tab .number{display:inline-block;margin:0 8px 0 0}.cobordism-app .chapter-tab .name{font-size:10px}.cobordism-app .workbench{display:block}.cobordism-app .visual-column{border-right:0;border-bottom:1px solid var(--line)}.cobordism-app .scene{height:330px}.cobordism-app .story-column{padding:26px 22px}.cobordism-app .story-column h2{font-size:37px}.cobordism-app .chapter-description{font-size:13px}.cobordism-app .insight{min-height:0}.cobordism-app .formula{padding:16px 0}.cobordism-app .try-this{margin-bottom:15px}.cobordism-app .journey-footer{padding:14px 16px}.cobordism-app .nav-button{min-width:82px;padding:8px 10px}.cobordism-app .nav-button.primary{min-width:130px}.cobordism-app #step-status{font-size:9px}.cobordism-app .takeaway{display:block;padding:40px 0}.cobordism-app .takeaway>p:nth-child(2){font-size:35px;margin-top:17px}.cobordism-app .takeaway>div{margin-top:20px}.cobordism-app .takeaway .journey-link{margin-top:12px}.cobordism-app footer{display:block;padding-top:20px}.cobordism-app footer nav{margin-top:20px;flex-wrap:wrap;gap:12px 20px}.cobordism-app dialog{padding:20px}.cobordism-app #dialog-body dl{grid-template-columns:1fr;gap:6px}.cobordism-app #dialog-body dd{margin-bottom:12px}.cobordism-app .control-row{gap:9px}.cobordism-app .control-row select{max-width:155px}}
@media(max-width:400px){.cobordism-app h1{font-size:34px}.cobordism-app .explorer-header nav{gap:8px}.cobordism-app .explorer-header .text-button{font-size:9px}.cobordism-app .brand-sub{letter-spacing:1px}.cobordism-app .scene{height:285px}.cobordism-app .scene-controls{padding:0 12px 15px}.cobordism-app .chapter-tab{padding:11px 8px}.cobordism-app .chapter-tab .name{font-size:9px}.cobordism-app .journey-footer #step-status{display:none}.cobordism-app .segment button{padding:7px 8px;font-size:9px}}.cobordism-app .visual-heading .text-button{font-size:9px;margin-left:auto;white-space:nowrap;padding:0;color:var(--ink-soft)}.cobordism-app .diagram-dialog{width:min(1100px,96vw)}.cobordism-app .diagram-scroll{overflow:auto;background:var(--bg-panel)}.cobordism-app .diagram-scroll svg,.cobordism-app .diagram-scroll img{display:block;width:1000px;max-width:none;height:auto}.cobordism-app .diagram-scroll svg text{font-family:var(--sans);fill:var(--ink)}.cobordism-app .diagram-scroll svg .serif{font-family:Georgia,serif}.cobordism-app .diagram-scroll svg .tiny{font-size:10px;letter-spacing:1px;fill:var(--ink-soft)}.cobordism-app .diagram-scroll svg .label{font-size:13px;fill:var(--ink-soft)}.cobordism-app .diagram-scroll svg .large{font:24px Georgia,serif}.cobordism-app .diagram-scroll svg .blue{fill:var(--blue)}.cobordism-app .diagram-scroll svg .orange{fill:var(--copper)}.cobordism-app .diagram-scroll svg .line{fill:none;stroke:var(--accent);stroke-width:1.5}.cobordism-app .diagram-scroll svg .thin{fill:none;stroke:var(--diagram-wire);stroke-width:.7}.cobordism-app .diagram-scroll svg .guide{stroke:var(--diagram-wire);stroke-dasharray:4 5;fill:none}.cobordism-app .diagram-scroll svg .flow{stroke:var(--accent);stroke-width:2;fill:none;stroke-dasharray:5 6}.cobordism-app .diagram-scroll svg .flow-orange{stroke:var(--copper);stroke-width:2;fill:none;stroke-dasharray:5 6}
@media(prefers-reduced-motion:reduce){.cobordism-app{scroll-behavior:auto}.cobordism-app *{animation:none!important;transition:none!important}}
