@font-face{font-family:Reactor;src:local('Avenir Next');font-weight:100 900;font-display:swap}
:root{--paper:#f5f3eb;--ink:#1c352c;--green:#2c7258;--muted:#647269;--line:#d1d6ca;--blue:#416ba2;--amber:#a97937;--red:#a3453b;--sans:Reactor,'Avenir Next',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--serif:'Iowan Old Style',Baskerville,Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,summary{cursor:pointer}button,a,summary,select{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--amber);outline-offset:5px}a{color:inherit;text-underline-offset:4px}button{color:inherit}p{margin:0}h1,h2,h3{margin:0;font-weight:500;line-height:1.1}h1,h2{font-family:var(--serif);letter-spacing:-.045em}h3{letter-spacing:-.025em}.skip{position:absolute;left:20px;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.masthead{max-width:1544px;margin:auto;padding:23px 52px;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.04em}.brand{font-weight:750;letter-spacing:.18em;text-decoration:none}.masthead .edition{margin-left:auto;color:var(--green)}.masthead a:last-child{text-decoration:none;color:var(--muted)}main{max-width:1544px;margin:auto;padding:0 52px}.hero{display:grid;grid-template-columns:1.3fr 1fr;column-gap:100px;padding:46px 0 33px;align-items:end}.eyebrow,.kicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--green)}h1{font-size:clamp(65px,7vw,102px);font-weight:400;margin:8px 0 20px}.subtitle{font-size:17px;max-width:530px;line-height:1.5;color:var(--muted)}.hero-right{padding-bottom:4px}.hero-right .thesis{font-family:var(--serif);font-size:clamp(26px,2.7vw,37px);line-height:1.15;letter-spacing:-.025em;max-width:530px}.author{margin-top:28px;font-size:13px;line-height:1.7}.author .kicker{display:block;font-size:9px;margin-bottom:3px;color:var(--muted)}.author strong{font-weight:650;font-size:16px}.author a{color:var(--green);text-decoration:none}.author .mail{display:block;font-size:12px;color:var(--muted)}.origin{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:34px}.origin summary{list-style:none;display:flex;gap:16px;align-items:center;padding:12px 0;font-size:12px}.origin summary::-webkit-details-marker{display:none}.origin summary img{width:58px;height:35px;object-fit:cover;border-radius:2px}.origin summary span:last-child{margin-left:auto;color:var(--green)}.origin summary small{color:var(--muted);margin-left:7px}.origin>img{display:block;width:100%;max-height:75vh;object-fit:contain;margin:20px 0}.origin figcaption{font-size:12px;color:var(--muted);padding-bottom:20px}.factory-intro{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 18px}.factory-intro h2{font:500 clamp(25px,2.4vw,34px)/1.2 var(--sans);letter-spacing:-.035em}.factory-intro p{font-size:12px;color:var(--muted);margin-top:6px}.legend{display:flex;gap:17px;font-size:10px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:7px}.legend i{width:6px;height:6px;background:var(--green);border-radius:50%;display:inline-block}.legend span:nth-child(2) i{background:var(--blue)}.legend span:nth-child(3) i{background:var(--amber)}.factory{background:#fdfcf6;border:1px solid #d4d9cd;border-radius:12px;box-shadow:0 22px 55px -30px #263e3233;overflow:hidden;position:relative}.factory-top{display:flex;align-items:center;gap:15px;padding:15px 22px;border-bottom:1px solid #e0e2d8;font-size:10px;letter-spacing:.08em}.signal{width:6px;height:6px;border-radius:50%;background:#97a699}.factory.running .signal{background:var(--green);box-shadow:0 0 0 4px #2c725813}.factory-top .sim-label{color:var(--muted);letter-spacing:0}.factory-top .scene-tools{margin-left:auto;display:flex;gap:10px}.text-button{border:0;background:none;font-size:11px;color:var(--muted);padding:4px 5px}.scene-window{overflow:auto;overscroll-behavior:contain}.scene-window svg{display:block;width:100%;min-width:1000px;height:auto}.scene-window.zoomed svg{width:150%;min-width:1440px}.scene-window.fit svg{min-width:0}.scene-window svg text{font-family:var(--sans)}.rail{stroke:#93aa91;stroke-width:1;fill:none}.rail-label{font-size:17px;letter-spacing:2px;fill:#2a674f;font-weight:650}.rail-sub{font-size:13px;fill:#6a7b6b}.wire{stroke:#b7c5b6;stroke-width:1.5;marker-end:url(#arrow);transition:stroke .5s,stroke-width .5s}.wire-caption{font-size:12px;fill:#778377}.small-cap{font-size:12px;letter-spacing:1.3px;fill:#48654f;font-weight:650}.node-title{font-size:16px;fill:#284735;letter-spacing:-.3px}.node-sub{font-size:12px;fill:#677c69}.request{font-family:var(--serif)!important;font-size:23px;fill:#254631;letter-spacing:-.3px}.paper,.chat-shape{fill:#fffef9;stroke:#aabca6;stroke-width:1}.edict-paper{fill:#f0f3f7;stroke:#9bb0c1;stroke-width:1}.margin-note{font-size:16px;fill:#8b9687;font-family:var(--serif)!important;font-style:italic}.shelf{stroke:#bbc7b3;fill:none;stroke-width:1}.definition-label{font-size:17px;fill:#3e5542}.micro{font-size:11px;fill:#6d7d6c}.binding-pill{fill:#f1eee4;stroke:#cbc9b8}.context-disc{fill:#f6f6ed;stroke:#a8b8a1}.core-halo{fill:#e8efe2;opacity:.5;transition:opacity .5s}.rotor-ring{fill:none;stroke:#8cab8b;stroke-width:1;stroke-dasharray:3 9}.agent-ring{fill:#eef2e9;stroke:#91ab92;stroke-width:1.5}.loop{stroke-dasharray:3 5;stroke:#bccabb}.code-paper{fill:#fbfbf3;stroke:#b8c4b0;filter:url(#soft-shadow)}.code-line{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-size:14px;fill:#647060;opacity:.26;transition:opacity .5s,transform .5s}.code-keyword{fill:#467094}.gate-shape{fill:#edf1e8;stroke:#9aaf96;stroke-width:1}.gate-tick{fill:none;stroke:#3e7d58;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;opacity:.25}.gate-cross{fill:none;stroke:#a3453b;stroke-width:2.5;opacity:0}.delivery-shape{fill:#e3eadb;stroke:#b6c6ac}.delivery-label{font-size:12px;letter-spacing:1px;fill:#5e755a}.delivery-light{fill:#aab8a2}.component{cursor:pointer;transition:opacity .6s,filter .6s}.component:hover{filter:brightness(.96)}.component:focus-visible{outline:none;filter:drop-shadow(0 0 4px #b78c3c)}.packet{fill:none;stroke:#388b5c;stroke-width:3;stroke-linecap:round;stroke-dasharray:8 350;opacity:0;animation:packet 3s linear infinite;animation-play-state:paused}.bus-packet{stroke-dasharray:9 190;stroke-width:2}.factory.running .bus-packet{opacity:.85}.factory.running .packet{animation-play-state:running}.factory[data-stage="0"] .flow-intent,.factory[data-stage="1"] .flow-bind,.factory[data-stage="2"] .flow-compose,.factory[data-stage="3"] .flow-build,.factory[data-stage="4"] .flow-check,.factory[data-stage="5"]:not(.denied) .flow-deliver{opacity:.9}.factory[data-stage="0"] .wire-intent,.factory[data-stage="1"] .wire-bind,.factory[data-stage="2"] .wire-compose,.factory[data-stage="3"] .wire-build,.factory[data-stage="4"] .wire-check,.factory[data-stage="5"]:not(.denied) .wire-deliver{stroke:#378260;stroke-width:2.2}.factory.running[data-stage="2"] .rotor,.factory.running[data-stage="3"] .rotor{transform-origin:797px 329px;animation:rotate 14s linear infinite}.factory[data-stage="2"] .core-halo,.factory[data-stage="3"] .core-halo{opacity:1}.factory[data-stage="3"] .code-line,.factory[data-stage="4"] .code-line,.factory[data-stage="5"] .code-line{opacity:1}.factory[data-stage="3"] .code-line:nth-of-type(3){transition-delay:.3s}.factory[data-stage="3"] .code-line:nth-of-type(4){transition-delay:.6s}.factory[data-stage="3"] .code-line:nth-of-type(5){transition-delay:.9s}.factory[data-stage="4"]:not(.denied) .gate-tick,.factory[data-stage="5"]:not(.denied) .gate-tick{opacity:1}.factory[data-stage="5"]:not(.denied) .delivery-shape{fill:#2c7258;stroke:#2c7258}.factory[data-stage="5"]:not(.denied) .delivery-label{fill:#fff}.factory[data-stage="5"]:not(.denied) .delivery-light{fill:#badd9e}.factory.denied[data-stage="4"] .gate-shape,.factory.denied[data-stage="5"] .gate-shape{fill:#f7e7df;stroke:#b97868}.factory.denied[data-stage="4"] .gate-cross,.factory.denied[data-stage="5"] .gate-cross{opacity:1}.factory.denied .gate-tick{opacity:0}.factory.denied[data-stage="4"] .wire-deliver,.factory.denied[data-stage="5"] .wire-deliver{stroke:#d2bfb4;stroke-dasharray:2 5}.factory.denied[data-stage="5"] .delivery-label{fill:#a3453b}.factory.paused .packet,.factory.paused .rotor{animation-play-state:paused!important}.factory.expanded{position:fixed;inset:18px;z-index:50;display:flex;flex-direction:column;overflow:auto}.factory.expanded .scene-window{flex:1;display:flex;align-items:center}.factory.expanded svg{max-height:none}.factory.expanded .step-caption{min-height:85px}.transport{border-top:1px solid #dde2d5;padding:18px 22px;background:#f6f7ef;display:flex;align-items:center;gap:20px}.play-button{border:0;border-radius:25px;background:var(--ink);color:white;font-size:12px;font-weight:550;padding:12px 20px;min-width:127px;display:flex;gap:12px;align-items:center;justify-content:center}.play-button:hover{background:var(--green)}.stepper{display:flex;flex:1;justify-content:space-between;gap:6px}.stepper button{border:0;background:none;padding:6px 9px;color:#74816f;font-size:11px;position:relative;white-space:nowrap}.stepper button span{font-size:9px;color:#9aa493;margin-right:6px}.stepper button[aria-current="step"]{color:var(--green);font-weight:700}.stepper button:after{content:'';position:absolute;bottom:0;left:9px;right:9px;height:2px;background:transparent}.stepper button[aria-current="step"]:after{background:var(--green)}.speed{font-size:11px;border:0;background:transparent;color:var(--muted);padding:5px}.progress-track{height:2px;background:#e3e7dc}.progress-track>div{height:100%;background:var(--green);width:0;transition:width .2s linear}.step-caption{display:grid;grid-template-columns:55px 1fr auto;align-items:start;gap:18px;padding:23px 25px;min-height:116px;border-top:1px solid #dde2d5}.step-number{font-family:var(--serif);font-size:35px;color:#9baa93;line-height:1}.step-caption h3{font-size:19px;line-height:1.3;margin-bottom:5px}.step-caption p{font-size:13px;color:var(--muted);max-width:820px;line-height:1.65}.scenario{padding-top:7px;font-size:11px;white-space:nowrap;display:flex;align-items:center;gap:8px;color:var(--muted)}.scenario input{accent-color:var(--green)}.inspection{position:absolute;bottom:185px;left:30px;width:320px;padding:24px;background:#fffef9;box-shadow:0 12px 40px #182f2d22;border:1px solid #d0d8c8;border-radius:8px;z-index:3}.inspection[hidden]{display:none}.inspection .close{position:absolute;right:9px;top:7px;border:0;background:none;font-size:20px;color:var(--muted)}.inspection h3{font-size:19px;margin:8px 0 10px}.inspection p{font-size:13px;color:var(--muted);line-height:1.7}.inspection a{font-size:12px;color:var(--green)}.after-factory{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 2px;font-size:11px;color:var(--muted)}.after-factory a{color:var(--green)}.invariants{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:52px 0 72px;padding:25px 0;gap:30px}.invariants span{font-family:var(--serif);font-size:28px;display:block;letter-spacing:-.02em}.invariants small{font-size:12px;color:var(--muted)}.essays{display:grid;grid-template-columns:1fr 1fr;gap:75px;margin:70px 0}.essay .kicker{margin-bottom:15px}.essay h2{font-size:36px;line-height:1.13;margin-bottom:23px}.essay p{font-size:15px;color:#52665a;max-width:600px;margin-bottom:15px}.essay a{color:var(--green)}.contracts{border-top:1px solid var(--line);padding:40px 0}.contracts header{display:flex;justify-content:space-between;align-items:end;gap:40px}.contracts h2{font-size:40px}.contracts header p{font-size:14px;color:var(--muted);max-width:410px}.contract-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:30px}.contract-grid>div{border-top:1px solid var(--line);padding-top:20px}.contract-grid h3{font-size:18px;margin-bottom:10px}.contract-grid p{font-size:13px;color:var(--muted)}.details-stack{border-top:1px solid var(--line);margin-top:30px}.details-stack details{border-bottom:1px solid var(--line);padding:20px 0}.details-stack summary{font-size:14px;font-weight:550;list-style:none;display:flex;justify-content:space-between}.details-stack summary:after{content:'+';color:var(--green);font-size:20px;font-weight:400}.details-stack details[open] summary:after{content:'−'}.details-body{padding:25px 0;max-width:1040px;color:var(--muted);font-size:14px}.details-body p{margin-bottom:16px}.defs{display:grid;grid-template-columns:1fr 1fr;gap:20px 60px}.defs dt{font-weight:600;color:var(--ink)}.defs dd{margin:5px 0 0;font-size:13px}.details-body table{border-collapse:collapse;width:100%;font-size:13px}.details-body th,.details-body td{padding:12px 20px 12px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.details-body th{font-weight:600;color:var(--ink)}.credit-entry{display:grid;grid-template-columns:1fr 1.6fr;gap:25px;border-top:1px solid var(--line);padding:17px 0}.credit-entry h3{font:550 14px/1.5 var(--sans);letter-spacing:0}.credit-entry p{font-size:13px;margin:0}.credits-coda{font-family:var(--serif);font-size:24px;margin-top:30px}.references{padding-left:18px;font-size:13px}.references li{padding:8px 0}.footer{padding:35px 0 45px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}.footer a{text-decoration:none}.download[aria-disabled="true"]{pointer-events:none;opacity:.4}body.scene-expanded{overflow:hidden}.no-js-note{padding:20px;font-size:14px;border:1px solid var(--line)}@keyframes packet{from{stroke-dashoffset:360}to{stroke-dashoffset:0}}@keyframes rotate{to{transform:rotate(360deg)}}
@media(min-width:1800px){main{max-width:1650px}.masthead{max-width:1650px}.hero{padding-top:55px}.scene-window svg{min-width:100%}}
@media(max-width:1050px){main{padding:0 25px}.masthead{padding:20px 25px}.hero{gap:40px}.transport{gap:10px;padding:16px 12px}.stepper button{padding:7px 4px}.stepper button span{display:none}.step-caption{grid-template-columns:40px 1fr}.scenario{grid-column:2}.essays{gap:40px}.legend{display:none}.factory.expanded{inset:8px}}
@media(max-width:700px){body{font-size:15px}.masthead{gap:16px}.masthead a:last-child{font-size:10px}.hero{grid-template-columns:1fr;padding:35px 0 25px;gap:23px}h1{font-size:67px;margin-bottom:14px}.hero-right .thesis{font-size:28px;max-width:450px}.author{margin-top:20px}.subtitle{font-size:15px}.origin{margin-bottom:28px}.origin summary small{display:block;margin:0}.factory-intro h2{font-size:25px}.scene-window{max-height:440px}.scene-window.fit svg{min-width:760px}.transport{flex-wrap:wrap}.play-button{padding:10px 17px;min-width:125px}.stepper{order:3;flex-basis:100%;overflow:auto;gap:13px;justify-content:flex-start}.speed{margin-left:auto}.step-caption{padding:20px 16px;gap:12px;min-height:155px}.step-number{font-size:29px}.step-caption h3{font-size:17px}.scenario{padding-top:0}.after-factory{align-items:start;font-size:10px}.after-factory span{max-width:220px}.invariants{grid-template-columns:1fr 1fr;margin:35px 0 40px;gap:22px}.invariants span{font-size:26px}.essays{grid-template-columns:1fr;gap:38px;margin:45px 0}.essay h2{font-size:32px}.contracts header{display:block}.contracts h2{font-size:34px}.contracts header p{margin-top:15px}.contract-grid{grid-template-columns:1fr;gap:23px}.defs{grid-template-columns:1fr}.details-body{overflow-x:auto}.details-body table{min-width:620px}.credit-entry{grid-template-columns:1fr;gap:6px}.footer{flex-wrap:wrap}.inspection{left:12px;bottom:255px;width:min(310px,calc(100% - 24px))}.factory-top{padding:13px 12px;gap:7px}.factory-top .sim-label{font-size:9px}.factory-top .scene-tools{gap:3px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.packet{display:none}}
@media print{body{background:white}.masthead,.transport,.progress-track,.scene-tools,.scenario,.inspection,.after-factory,.origin,.step-caption{display:none}main{padding:0}h1{font-size:50px}.hero{padding:20px 0;gap:40px}.factory{box-shadow:none;border:0}.scene-window{overflow:visible;max-height:none}.scene-window svg,.scene-window.fit svg{min-width:0;width:100%}.hero-right .thesis{font-size:25px}.invariants{margin:20px 0}.essays{margin:25px 0;gap:35px}.essay h2{font-size:27px}.essay p{font-size:11px}.contracts{padding:20px 0}.details-stack details{break-inside:avoid}.code-line{opacity:1}.packet{display:none}}
.edict-title{font-size:14px}.dictation{display:grid;grid-template-columns:1.05fr 1fr;gap:22px;margin:0 0 22px}.dictation>div{padding:16px 20px;border-left:2px solid #b4c3ad;background:#eceee4}.dictation>div:nth-child(2){border-color:#9dafbe;background:#e9edf0}.dictation .kicker{font-size:9px;margin-bottom:7px}.dictation p{font:400 18px/1.4 var(--serif);letter-spacing:-.015em}.dictation p em{font-style:normal;color:var(--green)}.source-note{font-size:10px;color:var(--muted);margin:8px 0 22px}.source-note a{color:var(--green)}@media(max-width:700px){.dictation{grid-template-columns:1fr;gap:10px}.dictation p{font-size:17px}}
.system-overview{margin:0 0 68px;border-top:1px solid var(--line);padding-top:25px}.system-overview header{display:flex;justify-content:space-between;align-items:baseline;gap:25px;margin-bottom:10px}.system-overview h2{font:500 27px/1.2 var(--sans);letter-spacing:-.035em}.system-overview header p{font-size:12px;color:var(--muted)}.system-overview svg{width:100%;display:block;min-width:900px}.system-overview .system-window{overflow:auto}.overview-title{font:500 19px var(--sans);fill:#2d5039;letter-spacing:-.5px}.overview-title.core-name{font-size:18px}.system-caption{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:18px;font-size:13px;color:var(--muted);margin-top:24px}.system-caption a{white-space:nowrap;color:var(--green)}.journeys{padding:55px 0 10px}.journeys>header{margin-bottom:40px}.journeys>header h2{font-size:45px;margin-top:12px}.journey{display:grid;grid-template-columns:320px 1fr;align-items:center;gap:60px;padding:38px 0;border-top:1px solid var(--line)}.journey .journey-num{font-family:var(--serif);font-size:37px;color:#92a286;margin-bottom:15px}.journey h3{font:400 30px/1.12 var(--serif);margin-bottom:15px;letter-spacing:-.03em}.journey p{font-size:14px;color:var(--muted);line-height:1.7}.journey a{font-size:12px;color:var(--green);display:inline-block;margin-top:15px}.journey figure{margin:0}.journey svg{width:100%;height:auto;display:block}.journey figcaption{font-size:11px;color:var(--muted);padding-top:12px}.journey .component{cursor:default}.journey .packet{display:none}.journey .margin-note{display:none}.journey svg text{font-family:var(--sans)}.review-sub{font-size:11px;color:var(--muted);margin-top:14px}@media(max-width:900px){.journey{grid-template-columns:230px 1fr;gap:25px}.system-caption{display:block}.system-caption a{display:inline-block;margin-top:12px}}@media(max-width:700px){.system-overview{margin-bottom:40px}.system-overview header{display:block}.system-overview header p{margin-top:12px}.system-overview svg{min-width:900px}.journeys{padding-top:30px}.journeys>header h2{font-size:35px}.journey{grid-template-columns:1fr;gap:25px}.journey-num{display:none}.journey figure{overflow:auto}.journey svg{min-width:540px}.system-caption{font-size:12px}}@media print{.system-overview svg,.journey svg{min-width:0}.journeys>header h2{font-size:30px}.journey{grid-template-columns:220px 1fr;gap:20px}.journey p{font-size:11px}.system-overview{margin-bottom:20px}.system-caption{font-size:10px}}

svg text{font-family:var(--sans)}

.ticket-status{font-size:11px}.pan-hint{display:none}@media(max-width:700px){.pan-hint{display:block;font-size:11px;color:var(--muted);margin:8px 0 12px}}
/* The reference model and its proposed example keep distinct, named visual roles. */
.perspective{font-size:10px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:8px}.perspective:before{content:'';width:8px;height:8px;border:1px solid currentColor;display:inline-block;transform:rotate(45deg)}.perspective.reference{color:var(--green)}.perspective.example{color:var(--blue)}.perspective.example:before{background:currentColor;border-radius:50%;transform:none}.chapter-deck{font-size:14px;color:var(--muted);margin-top:22px;max-width:610px}.deep-journey{padding:40px 0 46px;border-top:1px solid var(--line)}.journey-heading{display:flex;gap:28px;align-items:start;margin-bottom:25px}.journey-index{font:400 37px/1 var(--serif);color:#92a286;min-width:42px}.journey-heading h3{font:400 38px/1.12 var(--serif);letter-spacing:-.035em;margin:0 0 16px}.journey-heading p{font-size:15px;color:var(--muted);max-width:860px}.wide-diagram{margin:30px 0 12px;overflow-x:auto}.wide-diagram svg{width:100%;min-width:940px;height:auto;display:block}.wide-diagram.model-diagram svg{min-width:960px}.example-mapping{display:flex;gap:22px;align-items:baseline;background:#e9eef2;border-left:2px solid #8ba2ba;padding:17px 20px;margin:18px 0;color:#42637f;font-size:13px}.example-mapping>span{font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.example-mapping a{white-space:nowrap;font-size:11px}.diagram-note{font-size:12px;line-height:1.8;color:var(--muted);max-width:1080px;margin:13px 0}.contract-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:26px 0}.contract-strip p{font-size:13px;color:var(--muted)}.contract-strip strong{color:var(--ink);display:block;margin-bottom:3px;font-weight:600}.trigger-pair{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-top:22px;margin-top:25px}.trigger-pair p{font-size:14px;margin-top:8px}.binding-details{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.binding-details summary{font-size:13px;color:var(--green)}.binding-details .details-body{max-width:none}.concurrency-demo{background:#fdfcf6;border-top:1px solid #d9dece;border-bottom:1px solid #d9dece;padding:15px 12px}.concurrency-demo figure{margin:8px 0 0}.moment-controls{display:flex;gap:12px;flex-wrap:wrap;border-top:1px solid #dde2d5;padding-top:16px}.moment-controls button{background:none;border:1px solid #d4dccb;border-radius:25px;padding:9px 15px;font-size:12px}.moment-controls button[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}.moment-caption{font-size:13px;color:var(--muted);margin:15px 4px 6px;min-height:44px}.time-block{fill:#dde9d8;stroke:#a6bba1;transition:fill .4s}.time-block.secondary{fill:#e2eaf2;stroke:#a4b6c7}.time-block.parallel{fill:#e8ecdf}.time-middle,.time-late{opacity:.2;transition:opacity .45s}.done-dot{fill:#f9faf5;stroke:#a9b99d;transition:fill .4s}.concurrency-demo[data-moment="1"] .time-middle,.concurrency-demo[data-moment="2"] .time-middle,.concurrency-demo[data-moment="3"] .time-middle,.concurrency-demo[data-moment="2"] .time-late,.concurrency-demo[data-moment="3"] .time-late{opacity:1}.concurrency-demo[data-moment="2"] .done-dot{fill:#2c7258;stroke:#2c7258}.recovery-annotation{display:none}.concurrency-demo[data-moment="3"] .recovery-annotation{display:block}.concurrency-demo[data-moment="3"] .inventory-done,.concurrency-demo[data-moment="3"] .news-done{fill:#2c7258}.concurrency-demo[data-moment="3"] .req-done{fill:#f9faf5}.concurrency-demo[data-moment="3"] .req-resume .time-block{fill:#f3e9d7;stroke:#b89057}
@media(max-width:700px){.journey-heading{gap:15px}.journey-index{font-size:29px;min-width:30px}.journey-heading h3{font-size:30px}.journey-heading p{font-size:14px}.deep-journey{padding:30px 0}.example-mapping{display:block;padding:14px}.example-mapping p{margin-top:7px}.example-mapping a{display:inline-block;margin-top:9px}.contract-strip,.trigger-pair{grid-template-columns:1fr;gap:15px}.moment-controls{gap:8px}.moment-controls button{font-size:11px;padding:8px 10px}.binding-details .details-body{overflow-x:auto}.moment-caption{min-height:90px}.system-overview header{align-items:end}.wide-diagram{margin-top:18px}.journey .perspective{font-size:9px}}
@media print{.moment-controls{display:none}.wide-diagram svg{min-width:0!important}.wide-diagram{overflow:visible}.deep-journey{break-inside:avoid}.time-middle,.time-late{opacity:1}.journey-heading h3{font-size:26px}.example-mapping{font-size:10px}.diagram-note{font-size:10px}}

/* Future work remains readable; dashed boundaries indicate it has not run. */
.time-middle,.time-late{opacity:1}.time-middle .time-block,.time-late .time-block{fill:#f4f5f0;stroke-dasharray:4 4}.concurrency-demo[data-moment="1"] .time-middle .time-block,.concurrency-demo[data-moment="2"] .time-middle .time-block,.concurrency-demo[data-moment="3"] .time-middle .time-block{fill:#e2eaf2;stroke-dasharray:none}.concurrency-demo[data-moment="2"] .time-late .time-block{fill:#dde9d8;stroke-dasharray:none}.concurrency-demo[data-moment="3"] .time-late .time-block{fill:#f3e9d7;stroke-dasharray:none}
/* Execution semantics are independent of component fill and example labelling. */
svg .edge-agentic{fill:none;stroke:#806491!important;stroke-width:2!important;stroke-dasharray:8 5!important}svg .edge-process{fill:none;stroke:#527f63!important;stroke-width:1.6!important;stroke-dasharray:none!important}svg .edge-human{fill:none;stroke:#a97937!important;stroke-width:2!important;stroke-dasharray:2 4!important}svg .edge-relation{fill:none;stroke:#b0b8aa!important;stroke-width:1!important;stroke-dasharray:none!important}.factory .packet.flow-intent,.factory .packet.flow-bind,.factory .packet.flow-build{stroke:#806491}.arrow-key{display:flex;gap:30px;flex-wrap:wrap;border-top:1px solid var(--line);padding:16px 0;margin:12px 0;font-size:12px}.arrow-key>div{display:flex;gap:12px;align-items:center}.arrow-key strong{font-weight:600}.arrow-key small{color:var(--muted);display:block;font-size:11px}.key-line{width:45px;height:0;border-top:2px solid #527f63;position:relative}.key-line:after{content:'';position:absolute;right:0;top:-5px;width:6px;height:6px;border-top:2px solid #527f63;border-right:2px solid #527f63;transform:rotate(45deg)}.key-line.agentic{border-top:2px dashed #806491}.key-line.agentic:after{border-color:#806491}.key-line.human{border-top:2px dotted #a97937}.key-line.human:after{border-color:#a97937}.arrow-footnote{font-size:11px;color:var(--muted);margin-bottom:15px}.reading-link{font-size:11px;color:var(--muted);white-space:nowrap}.service-line{font-size:14px;fill:#4c6b53;opacity:.6;transition:opacity .5s}.factory[data-stage="3"] .service-line,.factory[data-stage="4"] .service-line,.factory[data-stage="5"] .service-line{opacity:1}.implementation-specimen{margin:20px 0 35px;padding:18px 20px;border-left:2px solid #8ba2ba;background:#e9eef2}.implementation-specimen summary{font-size:13px;color:var(--blue)}.implementation-specimen p{font-size:13px;color:#50697f;margin:16px 0}.implementation-specimen pre{overflow:auto;padding:20px;background:#f8fafb;font:12px/1.8 ui-monospace,SFMono-Regular,monospace;color:#37546d}.implementation-specimen a{font-size:12px}.ingress-note{max-width:860px}.human-key{margin-top:10px;font-size:11px;color:#86602e;display:flex;align-items:center;gap:12px}@media(max-width:700px){.arrow-key{gap:18px}.arrow-key>div{flex-basis:100%}.reading-link{display:none}.implementation-specimen{padding:14px}.implementation-specimen pre{padding:12px;font-size:11px}}

.article-nav{display:flex;flex-wrap:wrap;gap:12px 25px;padding:0 0 23px;font-size:12px;color:var(--muted)}.article-nav a{text-decoration:none}.article-nav a:hover{color:var(--green);text-decoration:underline}@media print{.article-nav{display:none}}
