/* Chapter visuals share the portfolio's existing typography, colors and interaction language. */
.chapter-atlas{margin:28px 0 36px;padding:28px;border:1px solid var(--rule);border-radius:18px;background:var(--surface);color:var(--ink);max-width:100%;isolation:isolate}.chapter-atlas *{box-sizing:border-box}.chapter-atlas [hidden]{display:none!important}.chapter-atlas p{max-width:none}.chapter-atlas button,.chapter-atlas summary{font:inherit;color:inherit}.chapter-atlas button{cursor:pointer}.chapter-atlas button:disabled{cursor:default;opacity:1;-webkit-text-fill-color:currentColor}.chapter-atlas button:focus-visible,.chapter-atlas summary:focus-visible,.chapter-atlas a:focus-visible{outline:var(--focus);outline-offset:4px}.ca-heading{margin-bottom:24px}.ca-heading .caps{font-size:11px;margin:0 0 8px}.ca-heading h2{font-family:Newsreader,Georgia,serif;font-weight:400;letter-spacing:-.025em;line-height:1.1;font-size:clamp(1.9rem,3.1vw,2.6rem);margin:0 0 12px;max-width:28ch}.ca-heading>p:last-child{font-size:15px;line-height:1.6;color:var(--ink-2);margin:0;max-width:80ch}.ca-diagram{border:1px solid var(--rule);border-radius:14px;background:var(--paper);padding:24px;position:relative;min-width:0}.ca-icon{width:54px;height:46px;fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;display:block}.ca-node{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;padding:18px 20px;border:1px solid var(--rule);border-radius:10px;background:var(--surface);text-align:left;width:100%;min-width:0;min-height:135px;color:var(--ink);transition:border-color 150ms var(--ease),background 150ms var(--ease)}.ca-node:hover{border-color:var(--accent)}.chapter-atlas[data-ca-ready] .ca-node[aria-expanded=true]{background:var(--brand-soft);border-color:var(--accent);box-shadow:inset 3px 0 var(--accent)}.ca-node-title{font-size:15px;font-weight:600;line-height:1.35;display:block;max-width:100%}.ca-node-sub{font-size:12px;font-weight:400;line-height:1.5;color:var(--ink-2);max-width:100%}.ca-node-open{position:absolute;right:12px;top:10px;font-size:16px;color:var(--accent)}.ca-node .ca-icon{margin-bottom:3px}.ca-arrow{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:28px;text-align:center;color:var(--accent);gap:6px}.ca-arrow b{font-size:25px;font-weight:400;line-height:1}.ca-arrow small{font-size:10px;line-height:1.4;color:var(--ink-2);max-width:70px}.ca-causal-line,.ca-three-line,.ca-context-timeline,.ca-procurement-rest{display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr) 64px minmax(0,1fr);align-items:stretch;gap:8px}.ca-two-wide{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ca-full-node{margin-top:20px;display:grid;grid-template-columns:56px 1fr;min-height:94px;gap:5px 16px}.ca-full-node .ca-icon{grid-row:1/3}.ca-full-node .ca-node-title{align-self:end}.ca-full-node .ca-node-sub{align-self:start}.ca-branch-label{display:flex;align-items:center;gap:16px;margin:24px 0 18px;color:var(--ink-2)}.ca-branch-label>span{flex:1;border-top:1px solid var(--rule)}.ca-branch-label>b{font-size:12px;font-weight:400;line-height:1.5;text-align:center}.ca-diagram-note{font-size:11px;color:var(--ink-2);line-height:1.55;border-top:1px solid var(--rule);margin:20px 0 0;padding-top:14px}.ca-outcome{font-size:15px;font-weight:500;line-height:1.6;margin:20px 0;padding-left:16px;border-left:3px solid var(--accent);max-width:90ch}.ca-insights{border-top:1px solid var(--rule);padding-top:18px}.ca-insight{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px;margin:0 0 20px;padding:16px 0;border-bottom:1px solid var(--rule)}.chapter-atlas[data-ca-ready] .ca-insight{margin:0;padding:4px 0 12px;border-bottom:0;min-height:130px}.ca-insight-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin:0 0 8px}.ca-insight h3{font-family:Newsreader,Georgia,serif;font-size:24px;font-weight:400;line-height:1.2;letter-spacing:-.02em;margin:0 0 8px}.ca-insight>div>p:last-child{font-size:13px;line-height:1.65;margin:0;color:var(--ink-2)}.ca-insight details{align-self:start;border:1px solid var(--rule);border-radius:10px;background:var(--paper);padding:0 16px}.ca-insight summary{cursor:pointer;min-height:48px;padding:13px 0;font-size:13px;line-height:1.6}.ca-insight details p{font-size:13px;line-height:1.7;margin:0 0 16px;color:var(--ink-2)}.ca-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:12px;min-height:44px}.ca-status{font-size:12px;line-height:1.4;color:var(--ink-2);margin:0;min-height:17px}.ca-footer a{font-size:13px;white-space:nowrap;min-height:44px;display:flex;gap:10px;align-items:center;text-decoration:none}.ca-footer a:hover{text-decoration:underline}
/* 01 — the causal chain and two alternative responses. */
.ca-response-paths{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ca-response-paths .ca-node{display:grid;grid-template-columns:54px 1fr;gap:5px 16px;min-height:104px}.ca-response-paths .ca-icon{grid-row:1/3}.ca-response-paths .ca-node-title{align-self:end}.ca-response-paths .ca-node-sub{align-self:start}.ca-response-paths>div>p{font-size:12px;margin:12px 0 0;line-height:1.5;color:var(--ink-2)}.ca-response-paths>div>p>span{color:var(--accent);margin-right:5px}.ca-response-paths .ca-chosen{border:2px solid var(--accent)}.ca-response-paths .ca-risk{border-style:dashed}
/* 02 — three exchange lanes and the evidence across their interfaces. */
.ca-lane-head{display:grid;grid-template-columns:1.1fr .75fr 1fr;gap:20px;margin-bottom:14px;font-size:10px;line-height:1.5;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.ca-exchange-lanes>div{display:grid;grid-template-columns:1.1fr .75fr 1fr;gap:20px;align-items:center;margin-bottom:14px}.ca-exchange-lanes .ca-node{min-height:90px;display:grid;grid-template-columns:52px 1fr;gap:4px 14px}.ca-exchange-lanes .ca-icon{grid-row:1/3}.ca-exchange-lanes .ca-node-title{align-self:end}.ca-exchange-lanes .ca-node-sub{align-self:start}.ca-record-rail{display:flex;align-items:center;gap:12px;border-top:1px solid var(--accent);height:1px;position:relative}.ca-record-rail i{height:20px;width:14px;border:1px solid var(--accent);background:var(--paper);border-radius:2px;z-index:1}.ca-record-rail b{position:absolute;right:0;font-size:21px;color:var(--accent);font-weight:400;background:var(--paper);line-height:1}.ca-receiver{padding:15px 16px;border:1px solid var(--rule);border-radius:0 14px 14px 0;background:var(--brand-soft)}.ca-receiver span{font-size:13px;display:block}.ca-receiver small{display:block;font-size:11px;color:var(--ink-2);margin-top:5px}.ca-exchange .ca-two-wide{margin-top:24px}.ca-exchange .ca-two-wide .ca-node{min-height:115px}
/* 03 — formulary dependencies and a clearly separate later catalog. */
.ca-formulary-ecosystem{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:22px;align-items:stretch}.ca-domain-spokes{display:flex;flex-direction:column;justify-content:space-between;gap:7px;border-right:1px solid var(--accent);padding-right:18px;position:relative}.ca-domain-spokes:after{content:"";position:absolute;right:-22px;top:50%;width:22px;border-top:1px solid var(--accent)}.ca-domain-spokes span{font-size:12px;border:1px solid var(--rule);border-radius:5px;padding:8px 10px;background:var(--surface);position:relative}.ca-domain-spokes span:after{content:"";position:absolute;right:-19px;top:50%;width:18px;border-top:1px solid var(--rule)}.ca-era{display:flex;align-items:center;gap:16px;margin:26px 0 18px}.ca-era:before,.ca-era:after{content:"";border-top:1px solid var(--rule);flex:1}.ca-era span{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}
/* 04 — retail operations, the integration seam and the service layer. */
.ca-retail{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;align-items:stretch}.ca-retail-local,.ca-retail-cloud{background:var(--surface);border:1px solid var(--rule);padding:14px;border-radius:12px}.ca-retail-local>.ca-node,.ca-retail-cloud>.ca-node{border:0;background:transparent;padding:8px;min-height:145px}.ca-retail-cloud>.ca-node+.ca-node{border-top:1px solid var(--rule);border-radius:0}.ca-store-devices{display:flex;flex-direction:column;gap:8px;margin-top:12px}.ca-store-devices span{font-size:12px;padding:12px;border:1px solid var(--rule);background:var(--paper);border-radius:5px}.ca-retail-bridge{align-self:center}.ca-retail-bridge .ca-arrow{margin-top:14px}.ca-retail-foundation{grid-column:1/-1}.ca-retail-foundation .ca-node{min-height:95px;display:grid;grid-template-columns:56px 1fr;gap:5px 18px}.ca-retail-foundation .ca-icon{grid-row:1/3}.ca-retail-foundation .ca-node-title{align-self:end}.ca-retail-foundation .ca-node-sub{align-self:start}
/* 05 — observed populations and a gap in the audit. */
.ca-populations{display:grid;grid-template-columns:1fr 80px 1fr;gap:14px;align-items:center}.ca-populations .ca-node{min-height:160px}.ca-not-equal{text-align:center;font-family:Georgia,serif;font-size:58px;color:var(--accent)}.ca-gap-rail{display:flex;align-items:center;gap:20px;margin:22px 0}.ca-gap-rail>span{flex:1;border-top:1px dashed var(--accent)}.ca-gap-rail>.ca-node{max-width:440px;display:grid;grid-template-columns:56px 1fr;min-height:92px;gap:5px 16px;border-style:dashed}.ca-gap-rail .ca-icon{grid-row:1/3}.ca-gap-rail .ca-node-title{align-self:end}.ca-gap-rail .ca-node-sub{align-self:start}
/* 06 — capability dependencies challenge a migration order. */
.ca-dependency-top{display:grid;grid-template-columns:1fr 1.7fr;gap:40px;align-items:stretch}.ca-dependency-top>.ca-node{position:relative}.ca-dependency-top>.ca-node:after{content:"";position:absolute;right:-41px;width:40px;top:50%;border-top:1px solid var(--accent)}.ca-dependent-capabilities{border:1px solid var(--rule);border-radius:12px;background:var(--surface);padding:12px}.ca-dependent-capabilities>.ca-node{min-height:120px;border:0;background:transparent}.ca-dependency-tags{display:flex;gap:8px;margin:0 16px 10px}.ca-dependency-tags span{flex:1;background:var(--brand-soft);border:1px solid var(--rule);border-radius:5px;padding:9px;font-size:12px;text-align:center}
/* 07 — a cart crosses a boundary; ordering and reconciliation stay distinct. */
.ca-punchout{display:grid;grid-template-columns:1fr 180px 1fr;gap:24px;align-items:center;margin-bottom:24px}.ca-punchout-link{display:flex;flex-direction:column;gap:20px;font-size:12px;color:var(--accent);text-align:center}.ca-punchout-link>span{padding-bottom:9px;border-bottom:1px solid var(--accent)}.ca-procurement-rest{border-top:1px solid var(--rule);padding-top:24px}
/* 08 — two different signals, then the review and changed response. */
.ca-state-label{font-size:11px;color:var(--ink-2);display:flex;gap:7px;align-items:center;margin-bottom:10px}.ca-state-label i{font-style:normal;color:var(--accent)}.ca-state-label--attention i{color:var(--chart-observed,var(--accent))}.ca-review-signals{margin-bottom:26px}.ca-review-signals .ca-node{min-height:140px}
/* 09 — concurrent requirements feed a readiness gate. */
.ca-requirements-pair{display:grid;grid-template-columns:1fr 130px 1fr;gap:20px;align-items:center}.ca-both{text-align:center}.ca-both span{display:inline-flex;border:1px solid var(--accent);border-radius:50%;width:64px;height:64px;justify-content:center;align-items:center;font-size:12px;color:var(--accent)}.ca-both small{display:block;font-size:10px;line-height:1.5;color:var(--ink-2);margin-top:10px}.ca-evidence-gate{border-top:1px solid var(--accent);padding-top:25px;margin-top:25px;position:relative}.ca-gate-label{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:var(--paper);font-size:11px;padding:0 15px;white-space:nowrap;color:var(--ink-2)}
/* 10 — a prior decision has a scope, not timeless authority. */
.ca-context-scope{display:flex;align-items:center;gap:20px;margin:24px 0;border-top:1px dashed var(--accent);padding-top:22px}.ca-context-scope>span{max-width:180px;font-size:15px;font-family:Newsreader,Georgia,serif;line-height:1.3}.ca-context-scope>i{font-style:normal;font-size:28px;color:var(--accent)}.ca-context-scope>.ca-node{flex:1;min-height:104px;display:grid;grid-template-columns:56px 1fr;gap:5px 16px}.ca-context-scope .ca-icon{grid-row:1/3}.ca-context-scope .ca-node-title{align-self:end}.ca-context-scope .ca-node-sub{align-self:start}.ca-context-launch .ca-full-node{margin-top:0}
/* 11 — named authority boundaries with an independently monitored seam. */
.ca-boundary-labels{display:grid;grid-template-columns:1.4fr 1fr;gap:54px;margin-bottom:12px;font-size:10px;color:var(--ink-2);letter-spacing:.05em;text-transform:uppercase}.ca-authority-lanes>div{display:grid;grid-template-columns:1.4fr 18px 1fr;gap:18px;align-items:center;margin-bottom:12px}.ca-authority-lanes .ca-node{display:grid;grid-template-columns:56px 1fr;gap:4px 16px;min-height:100px}.ca-authority-lanes .ca-icon{grid-row:1/3}.ca-authority-lanes .ca-node-title{align-self:end}.ca-authority-lanes .ca-node-sub{align-self:start}.ca-authority-divider{height:70%;border-left:2px solid var(--accent);justify-self:center}.ca-authority-lanes strong{font-size:13px;font-weight:500;line-height:1.6;max-width:25ch}.ca-boundaries>.ca-full-node{border-style:dashed}
/* 12 — evidence becomes intent, contract, release evidence and learning. */
.ca-document-journey{display:grid;grid-template-columns:1fr 25px 1fr 25px 1fr 25px 1fr 25px 1fr;gap:8px}.ca-document-journey .ca-node{padding:15px;min-height:215px;justify-content:flex-start}.ca-document-journey .ca-node-title{font-size:14px;margin-top:9px}.ca-document-journey .ca-node-sub{font-size:11px}.ca-document-binding{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;border-top:1px solid var(--accent);padding-top:20px}.ca-document-binding>span{font-size:13px;background:var(--brand-soft);padding:8px 18px;border:1px solid var(--rule);border-radius:5px}.ca-document-binding>p{font-size:13px;color:var(--ink-2);flex-basis:100%;margin:7px 0 0}
/* 13 — stacked decision altitudes plus an explicit evidence return rail. */
.ca-operating-labels{display:flex;justify-content:space-between;margin:0 8px 12px 0;font-size:11px;color:var(--ink-2)}.ca-operating-stack{display:grid;grid-template-columns:1fr 34px;gap:10px 20px}.ca-operating-stack>.ca-node{grid-column:1;min-height:82px;display:grid;grid-template-columns:56px 1fr;gap:4px 16px;padding:12px 18px}.ca-operating-stack .ca-icon{grid-row:1/3;width:44px;height:38px}.ca-operating-stack .ca-node-title{align-self:end}.ca-operating-stack .ca-node-sub{align-self:start}.ca-return-rail{grid-column:2;grid-row:1/6;border:1px solid var(--accent);border-left:0;border-radius:0 16px 16px 0;margin:38px 6px 38px 0;position:relative}.ca-return-rail span{position:absolute;top:45%;right:-12px;font-size:24px;color:var(--accent);background:var(--paper);padding-block:8px}.ca-operating>.ca-full-node{margin-right:54px;width:calc(100% - 54px)}
/* 14 — a numbered lifecycle with the return to discovery. */
.ca-lifecycle-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 20px}.ca-lifecycle-path>div{position:relative}.ca-stage-number{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-ink);width:28px;height:28px;border-radius:50%;font-size:11px;position:absolute;top:-9px;left:16px;z-index:1}.ca-lifecycle-path .ca-node{min-height:166px;padding-top:28px}.ca-lifecycle-path>div:not(:last-child):after{content:"→";position:absolute;right:-16px;top:50%;font-size:18px;color:var(--accent)}.ca-lifecycle-path>div:nth-child(4):after{content:"↓";right:50%;top:auto;bottom:-20px}.ca-lifecycle-return{display:flex;align-items:center;gap:12px;margin-top:24px;border-top:1px solid var(--accent);padding-top:14px;font-size:12px;color:var(--ink-2)}.ca-lifecycle-return span{font-size:28px;color:var(--accent)}
/* 15 — context/consequence pairs, not a proficiency scorecard. */
.ca-consequence-head{display:grid;grid-template-columns:1fr 1fr;gap:50px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);margin-bottom:12px}.ca-consequence-row{display:grid;grid-template-columns:1fr 30px 1fr;gap:16px;align-items:center;margin-bottom:12px}.ca-consequence-row .ca-node{min-height:100px;display:grid;grid-template-columns:56px 1fr;gap:5px 16px}.ca-consequence-row .ca-icon{grid-row:1/3}.ca-consequence-row .ca-node-title{align-self:end}.ca-consequence-row .ca-node-sub{align-self:start}.ca-consequence-result{font-family:Newsreader,Georgia,serif;font-size:21px;line-height:1.25;max-width:26ch}.ca-consequences>.ca-full-node{border-top:2px solid var(--accent)}
/* 16 — a purpose-indexed reference shelf. */
.ca-toolbox{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}.ca-tool-shelf>span{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2);display:block;margin-bottom:10px}.ca-tool-shelf .ca-node{min-height:193px;justify-content:flex-start}.ca-tool-shelf .ca-node-title{margin-top:7px}.ca-toolbox .ca-diagram-note{grid-column:1/-1;margin-top:0}
@media(max-width:1000px){.chapter-atlas{padding:22px}.ca-diagram{padding:20px}.ca-node{padding:16px;min-height:130px}.ca-node-title{font-size:14px}.ca-node-sub{font-size:11px}.ca-causal-line,.ca-three-line,.ca-context-timeline,.ca-procurement-rest{grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr) 42px minmax(0,1fr);gap:6px}.ca-arrow small{font-size:9px}.ca-punchout{grid-template-columns:1fr 135px 1fr;gap:18px}.ca-document-journey{grid-template-columns:1fr 18px 1fr 18px 1fr 18px 1fr 18px 1fr;gap:5px}.ca-document-journey .ca-node{padding:12px;min-height:225px}.ca-document-journey .ca-icon{width:44px;height:38px}.ca-document-journey .ca-node-title{font-size:13px}.ca-formulary-ecosystem{gap:16px}.ca-domain-spokes:after{right:-17px;width:16px}.ca-retail{gap:14px}.ca-retail-local,.ca-retail-cloud{padding:10px}.ca-authority-lanes strong{font-size:12px}.ca-toolbox{gap:18px 14px}}
@media(max-width:760px){.chapter-atlas{padding:16px;margin-top:22px}.ca-heading h2{font-size:30px;max-width:26ch}.ca-heading>p:last-child{font-size:14px}.ca-diagram{padding:16px}.ca-node{padding:15px;min-height:110px}.ca-node-title{font-size:14px}.ca-node-sub{font-size:12px}.ca-icon{width:48px;height:41px}.ca-causal-line,.ca-three-line,.ca-context-timeline,.ca-procurement-rest{display:flex;flex-direction:column;gap:10px}.ca-causal-line>.ca-node,.ca-three-line>.ca-node,.ca-context-timeline>.ca-node,.ca-procurement-rest>.ca-node{display:grid;grid-template-columns:49px 1fr;gap:4px 13px;min-height:94px}.ca-causal-line .ca-icon,.ca-three-line .ca-icon,.ca-context-timeline .ca-icon,.ca-procurement-rest .ca-icon{grid-row:1/3}.ca-causal-line .ca-node-title,.ca-three-line .ca-node-title,.ca-context-timeline .ca-node-title,.ca-procurement-rest .ca-node-title{align-self:end}.ca-causal-line .ca-node-sub,.ca-three-line .ca-node-sub,.ca-context-timeline .ca-node-sub,.ca-procurement-rest .ca-node-sub{align-self:start}.ca-arrow{flex-direction:row;gap:10px;min-height:26px}.ca-arrow b{transform:rotate(90deg);font-size:23px}.ca-arrow small{font-size:11px;max-width:none}.ca-response-paths{grid-template-columns:1fr;gap:18px}.ca-response-paths .ca-node{grid-template-columns:48px 1fr;padding:15px;gap:4px 13px}.ca-branch-label{margin:20px 0 16px}.ca-branch-label>b{max-width:20ch;font-size:11px}.ca-two-wide{grid-template-columns:1fr;gap:12px}.ca-full-node{grid-template-columns:48px 1fr;padding:14px;gap:5px 13px}.ca-outcome{font-size:14px;margin:18px 0}.ca-insight{grid-template-columns:1fr;gap:14px}.ca-insight h3{font-size:23px}.ca-insight>div>p:last-child{font-size:13px}.ca-footer{display:block}.ca-footer a{margin-top:8px;white-space:normal}.ca-lane-head{display:none}.ca-exchange-lanes>div{grid-template-columns:1fr 24px;gap:10px}.ca-exchange-lanes .ca-node{grid-column:1;grid-template-columns:45px 1fr;padding:14px;gap:4px 10px}.ca-record-rail{grid-column:2;grid-row:1/3;align-self:stretch;height:auto;border-top:0;border-right:1px solid var(--accent);display:block;width:1px;margin:40px 0}.ca-record-rail i{display:none}.ca-record-rail b{top:50%;right:-10px;transform:rotate(90deg);font-size:20px}.ca-receiver{grid-column:1;border-radius:5px;margin-left:58px;padding:9px 12px}.ca-receiver span{font-size:12px}.ca-receiver small{font-size:11px}.ca-exchange-lanes>div+div{border-top:1px solid var(--rule);padding-top:16px}.ca-formulary-ecosystem{grid-template-columns:1fr;gap:16px}.ca-domain-spokes{display:grid;grid-template-columns:1fr 1fr;border-right:0;border-bottom:1px solid var(--accent);padding:0 0 16px;gap:8px}.ca-domain-spokes:after{height:16px;width:0;border-top:0;border-left:1px solid var(--accent);top:auto;bottom:-17px;left:50%}.ca-domain-spokes span:after{display:none}.ca-domain-spokes span{font-size:11px;padding:9px}.ca-formulary-ecosystem>.ca-node{display:grid;grid-template-columns:48px 1fr;gap:5px 13px;min-height:92px}.ca-formulary-ecosystem .ca-icon{grid-row:1/3}.ca-formulary-ecosystem .ca-node-title{align-self:end}.ca-formulary-ecosystem .ca-node-sub{align-self:start}.ca-era span{font-size:10px}.ca-retail{grid-template-columns:1fr}.ca-retail-local>.ca-node,.ca-retail-cloud>.ca-node{min-height:110px}.ca-store-devices{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.ca-store-devices span{font-size:11px;padding:9px}.ca-retail-bridge .ca-node{min-height:100px}.ca-retail-cloud{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ca-retail-cloud>.ca-node+.ca-node{border-top:0;border-left:1px solid var(--rule);padding-left:14px}.ca-retail-foundation .ca-node{grid-template-columns:48px 1fr;gap:5px 13px}.ca-populations{grid-template-columns:1fr;gap:12px}.ca-populations .ca-node{min-height:105px;display:grid;grid-template-columns:48px 1fr;gap:5px 13px}.ca-populations .ca-icon{grid-row:1/3}.ca-populations .ca-node-title{align-self:end}.ca-populations .ca-node-sub{align-self:start}.ca-not-equal{font-size:37px;line-height:1}.ca-gap-rail{gap:0}.ca-gap-rail>span{display:none}.ca-gap-rail>.ca-node{grid-template-columns:48px 1fr;padding:14px;gap:5px 13px}.ca-dependency-top{grid-template-columns:1fr;gap:22px}.ca-dependency-top>.ca-node:after{top:auto;right:50%;bottom:-23px;width:0;height:22px;border-top:0;border-left:1px solid var(--accent)}.ca-dependent-capabilities{padding:8px}.ca-dependent-capabilities>.ca-node{padding:10px;min-height:100px}.ca-dependency-tags{margin:4px 8px 8px;gap:5px}.ca-dependency-tags span{font-size:11px;padding:8px}.ca-punchout{grid-template-columns:1fr;gap:16px}.ca-punchout-link{flex-direction:row;gap:18px;font-size:11px}.ca-punchout-link>span{flex:1;padding-bottom:8px}.ca-review-signals{grid-template-columns:1fr 1fr;gap:12px}.ca-review-signals .ca-node{min-height:180px;padding:13px}.ca-state-label{font-size:10px;align-items:flex-start;line-height:1.5;min-height:30px}.ca-requirements-pair{grid-template-columns:1fr;gap:14px}.ca-requirements-pair .ca-node{display:grid;grid-template-columns:48px 1fr;gap:5px 13px;min-height:100px}.ca-requirements-pair .ca-icon{grid-row:1/3}.ca-requirements-pair .ca-node-title{align-self:end}.ca-requirements-pair .ca-node-sub{align-self:start}.ca-both{display:flex;gap:12px;align-items:center;justify-content:center}.ca-both span{width:44px;height:44px;font-size:10px}.ca-both small{font-size:11px;margin:0}.ca-gate-label{font-size:10px}.ca-context-scope{display:grid;grid-template-columns:1fr;gap:12px}.ca-context-scope>span{font-size:18px;max-width:none}.ca-context-scope>i{display:none}.ca-context-scope>.ca-node{grid-template-columns:48px 1fr;gap:5px 13px}.ca-boundary-labels{display:none}.ca-authority-lanes>div{grid-template-columns:1fr;gap:0;border:1px solid var(--rule);border-radius:10px;background:var(--surface);padding:0 12px 13px}.ca-authority-lanes .ca-node{border:0;border-radius:0;padding:14px 0;background:transparent;grid-template-columns:48px 1fr;gap:5px 13px}.ca-authority-divider{display:none}.ca-authority-lanes strong{max-width:none;border-top:1px solid var(--accent);padding-top:11px;font-size:12px}.ca-document-journey{display:flex;flex-direction:column;gap:9px}.ca-document-journey .ca-node{display:grid;grid-template-columns:48px 1fr;gap:5px 13px;padding:15px;min-height:96px}.ca-document-journey .ca-icon{grid-row:1/3;width:48px;height:41px}.ca-document-journey .ca-node-title{font-size:14px;margin:0;align-self:end}.ca-document-journey .ca-node-sub{font-size:12px;align-self:start}.ca-document-binding{gap:7px}.ca-document-binding>span{font-size:12px;padding:7px 12px}.ca-document-binding>p{font-size:12px;line-height:1.5}.ca-operating-stack{grid-template-columns:1fr 15px;gap:10px 12px}.ca-operating-stack>.ca-node{grid-template-columns:40px 1fr;gap:4px 10px;padding:12px;min-height:97px}.ca-operating-stack .ca-icon{width:38px;height:34px}.ca-operating-stack .ca-node-title{font-size:13px}.ca-operating-stack .ca-node-sub{font-size:11px}.ca-operating>.ca-full-node{margin-right:27px;width:calc(100% - 27px)}.ca-lifecycle-path{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.ca-lifecycle-path .ca-node{min-height:180px;padding:28px 12px 14px}.ca-lifecycle-path .ca-node-title{font-size:13px}.ca-lifecycle-path .ca-node-sub{font-size:11px}.ca-lifecycle-path>div:nth-child(even):after{content:"↓";right:50%;top:auto;bottom:-21px}.ca-lifecycle-path>div:nth-child(odd):not(:last-child):after{content:"→";right:-15px;top:50%;bottom:auto}.ca-lifecycle-return{font-size:11px;line-height:1.5}.ca-consequence-head{display:none}.ca-consequence-row{grid-template-columns:1fr;gap:10px;padding:0 0 18px;margin-bottom:16px;border-bottom:1px solid var(--rule)}.ca-consequence-row .ca-node{grid-template-columns:48px 1fr;gap:5px 13px;padding:14px;min-height:100px}.ca-consequence-row .ca-arrow{display:none}.ca-consequence-result{font-size:20px;max-width:none;padding-left:14px;border-left:2px solid var(--accent);line-height:1.3}.ca-toolbox{grid-template-columns:1fr 1fr;gap:20px 12px}.ca-tool-shelf>span{font-size:9px;line-height:1.5;min-height:27px}.ca-tool-shelf .ca-node{min-height:220px;padding:15px 12px}.ca-tool-shelf .ca-node-title{font-size:13px}.ca-tool-shelf .ca-node-sub{font-size:11px}}
@media(max-width:380px){.chapter-atlas{padding:12px}.ca-diagram{padding:12px}.ca-heading h2{font-size:27px}.ca-node-title{font-size:13px}.ca-node-sub{font-size:11px}.ca-review-signals{grid-template-columns:1fr}.ca-review-signals .ca-node{min-height:135px}.ca-retail-cloud{grid-template-columns:1fr}.ca-retail-cloud>.ca-node+.ca-node{border-left:0;border-top:1px solid var(--rule);padding:15px 8px 8px}.ca-toolbox{grid-template-columns:1fr}.ca-tool-shelf>span{font-size:10px;min-height:0}.ca-tool-shelf .ca-node{min-height:105px;display:grid;grid-template-columns:48px 1fr;gap:5px 12px}.ca-tool-shelf .ca-icon{grid-row:1/3}.ca-tool-shelf .ca-node-title{margin:0;align-self:end}.ca-tool-shelf .ca-node-sub{align-self:start}}
@media(prefers-reduced-motion:reduce){.chapter-atlas *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.chapter-atlas{padding:16px;break-before:page}.chapter-atlas .ca-insight[hidden]{display:grid!important}.ca-node{break-inside:avoid}.ca-footer{display:none}.ca-insight{break-inside:avoid}.ca-insight details>*{display:block!important}.ca-diagram{break-inside:avoid}}
/* The lifecycle is a real serpentine path, with DOM order retained for reading. */
@media(min-width:761px){.ca-lifecycle-path>div:nth-child(5){grid-column:4;grid-row:2}.ca-lifecycle-path>div:nth-child(6){grid-column:3;grid-row:2}.ca-lifecycle-path>div:nth-child(7){grid-column:2;grid-row:2}.ca-lifecycle-path>div:nth-child(5):after,.ca-lifecycle-path>div:nth-child(6):after{content:"←";left:-16px;right:auto;top:50%;bottom:auto}}
@media(max-width:760px){.ca-lifecycle-path>div{grid-column:auto;grid-row:auto}.ca-lifecycle-path>div:nth-child(1){grid-column:1;grid-row:1}.ca-lifecycle-path>div:nth-child(2){grid-column:2;grid-row:1}.ca-lifecycle-path>div:nth-child(3){grid-column:2;grid-row:2}.ca-lifecycle-path>div:nth-child(4){grid-column:1;grid-row:2}.ca-lifecycle-path>div:nth-child(5){grid-column:1;grid-row:3}.ca-lifecycle-path>div:nth-child(6){grid-column:2;grid-row:3}.ca-lifecycle-path>div:nth-child(7){grid-column:2;grid-row:4}.ca-lifecycle-path>div:nth-child(3):after{content:"←";left:-15px;right:auto;top:50%;bottom:auto}}

/* Verified Stage15 repair: diagram annotations do not cover controls. */
.chapter-atlas .ca-node{padding-inline-end:34px}
.chapter-atlas .ca-arrow,.chapter-atlas .ca-stage-number,.chapter-atlas .ca-lifecycle-path>div::after{pointer-events:none}
@media(max-width:760px){.chapter-atlas .ca-lifecycle-path>div:nth-child(3):not(:last-child)::after{content:"←";left:-15px;right:auto;width:auto;top:50%;bottom:auto}}
/* The reading-column width cannot support five full document cards in one row. */
.chapter-atlas .ca-document-journey{display:flex;flex-direction:column;gap:12px}
.chapter-atlas .ca-document-journey>.ca-node{display:grid;grid-template-columns:48px minmax(0,1fr);gap:5px 14px;min-height:100px;padding:15px 34px 15px 15px;justify-content:start}
.chapter-atlas .ca-document-journey>.ca-node>.ca-icon{grid-row:1/3;width:44px;height:40px}
.chapter-atlas .ca-document-journey .ca-node-title{margin:0;align-self:end}
.chapter-atlas .ca-document-journey .ca-node-sub{align-self:start;font-size:12px}
.chapter-atlas .ca-document-journey>.ca-arrow{min-height:18px}
.chapter-atlas .ca-document-journey>.ca-arrow>b{transform:rotate(90deg)}

/* Long source labels retain their text inside narrow diagram cards. */
.chapter-atlas .ca-node-title,.chapter-atlas .ca-node-sub{min-width:0;overflow-wrap:anywhere}

/* Keep the cause chain readable within the desktop reading column. */
.chapter-atlas .ca-causal-line{display:flex;flex-direction:column;gap:12px}
.chapter-atlas .ca-causal-line>.ca-node{display:grid;grid-template-columns:48px minmax(0,1fr);gap:5px 14px;min-height:100px;padding:15px 34px 15px 15px;justify-content:start}
.chapter-atlas .ca-causal-line>.ca-node>.ca-icon{grid-row:1/3;width:44px;height:40px}
.chapter-atlas .ca-causal-line .ca-node-title{margin:0;align-self:end}
.chapter-atlas .ca-causal-line .ca-node-sub{align-self:start;font-size:12px}
.chapter-atlas .ca-causal-line>.ca-arrow{min-height:22px;flex-direction:row;gap:12px}
.chapter-atlas .ca-causal-line>.ca-arrow>b{transform:rotate(90deg)}
