/* Dark palettes follow html[data-theme], resolved by /assets/skins.js from the skin mode or the OS. */
.architecture-model{--architecture-page:#f7f5ee;--architecture-surface:#fffdf6;--architecture-alt:#e7f0e8;--architecture-ink:#17231b;--architecture-muted:#536158;--architecture-line:#93a79e;position:relative;display:grid;width:100%;gap:18px;margin:0;padding:20px;border:1px solid var(--architecture-line);border-radius:10px;background:var(--architecture-page);color:var(--architecture-ink)}
.architecture-model-head{padding-right:318px}.architecture-model-head h2{margin:0;font-size:20px}.architecture-model-head>p{max-width:760px;margin:3px 0 0;color:var(--architecture-muted)}
.architecture-model-stage{min-width:0}.architecture-model-canvas{display:grid;min-width:0;gap:8px}/* The detail aside floats above the drawing and stays there: lifting the drawing on hover hid the very panel the hovered node fills. The scroll lane keeps a right margin the width of the aside so every part of the drawing can be scrolled out from under it. */.architecture-model-scroll{padding-right:320px}@media(max-width:780px){.architecture-model-scroll{padding-right:0}}.architecture-model-scroll{overflow-x:auto;border:1px solid var(--architecture-line);border-radius:9px;background:var(--architecture-page)}.architecture-model-svg{display:block;min-width:0}.architecture-model-svg svg{display:block;max-width:none}.architecture-model-svg-dark{display:none}.architecture-model-svg svg text{user-select:text}.architecture-model-svg [data-node-id]{cursor:pointer}.architecture-model-svg [data-node-id]:is(:hover,:focus-visible){outline:2px solid var(--architecture-ink);outline-offset:2px}.architecture-model-failure{margin:0;padding:8px 10px;border:1px solid #b42318;border-radius:7px;background:var(--architecture-surface);color:#b42318;font-size:12px}.architecture-model-detail{position:absolute;z-index:3;top:20px;right:20px;display:grid;width:300px;height:180px;gap:6px;overflow:auto;padding:10px;border:1px solid var(--architecture-line);border-radius:9px;background:var(--architecture-surface);box-shadow:0 6px 18px rgba(23,55,47,.12)}.architecture-model-detail h3{display:flex;align-items:center;gap:8px;margin:0;font:800 13px/1.25 ui-monospace,monospace}.architecture-model-detail p{margin:0;color:var(--architecture-muted);font-size:12px;line-height:1.4}.architecture-model-detail-empty{font-style:italic}.architecture-model-detail-state{padding:1px 6px;border-radius:999px;font:700 9px/1.4 ui-monospace,monospace;text-transform:uppercase;background:var(--architecture-alt)}.architecture-model-page-links{display:grid;justify-items:start;gap:4px}.architecture-model-page-link{padding:5px 9px;border:1px solid var(--architecture-line);border-radius:6px;background:var(--architecture-alt);color:var(--architecture-ink);font:700 11px/1.2 ui-monospace,monospace;text-decoration:none}.architecture-model-page-link:hover{background:var(--architecture-surface)}.architecture-model-page-link:focus-visible{outline:2px solid var(--architecture-ink);outline-offset:2px}
.session-store-inspector,.session-store-inspector-loading,.session-store-inspector-error{--architecture-page:#f7f5ee;--architecture-surface:#fffdf6;--architecture-alt:#e7f0e8;--architecture-ink:#17231b;--architecture-muted:#536158;--architecture-line:#93a79e;background:var(--architecture-page);color:var(--architecture-ink)}.session-store-inspector{display:grid;width:min(1120px,calc(100vw - 48px));max-height:82vh;gap:12px;overflow:auto;padding:20px;border:1px solid var(--architecture-line);border-radius:10px}.session-store-inspector-head{display:flex;align-items:start;gap:14px}.session-store-inspector-head button,.session-store-inspector-error button{padding:7px 10px;border:1px solid var(--architecture-line);border-radius:6px;background:var(--architecture-surface);color:var(--architecture-ink);font-weight:700}.session-store-inspector-head h2{margin:0}.session-store-inspector-head p,.session-store-inspector-notice{margin:3px 0 0;color:var(--architecture-muted)}.session-store-inspector-notice{font-size:12px}.session-store-tables{display:grid;gap:8px}.session-store-table{border:1px solid var(--architecture-line);border-radius:7px;background:var(--architecture-surface)}.session-store-table summary{display:flex;justify-content:space-between;gap:12px;padding:10px;cursor:pointer}.session-store-table summary span{color:var(--architecture-muted);font-size:12px}.session-store-schema{display:flex;flex-wrap:wrap;gap:5px;margin:0;padding:0 10px 10px}.session-store-schema code{padding:3px 5px;border-radius:4px;background:var(--architecture-alt);font-size:10px}.session-store-schema code.is-redacted{text-decoration:line-through;opacity:.65}.session-store-grid{max-height:310px;overflow:auto;border-top:1px solid var(--architecture-line)}.session-store-grid table{width:max-content;min-width:100%;border-collapse:collapse;font:11px/1.35 ui-monospace,monospace}.session-store-grid th,.session-store-grid td{max-width:280px;padding:6px 8px;border-right:1px solid var(--architecture-line);border-bottom:1px solid var(--architecture-line);overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.session-store-grid th{position:sticky;top:0;background:var(--architecture-alt)}.session-store-empty,.session-store-inspector-loading,.session-store-inspector-error{padding:16px;color:var(--architecture-muted)}
.architecture-model-mount{--architecture-page:#f7f5ee;--architecture-surface:#fffdf6;--architecture-alt:#e7f0e8;--architecture-ink:#17231b;--architecture-muted:#536158;--architecture-line:#93a79e;display:grid;gap:0}
.architecture-model-compact{width:min(1240px,calc(100vw - 32px));max-height:86vh;overflow:auto;box-shadow:0 18px 54px rgba(16,47,59,.28)}.architecture-model-compact .architecture-model-head p{font-size:12px}
@media(max-width:780px){.architecture-model{padding:14px}.architecture-model-head{min-height:0;padding-right:0}.architecture-model-detail{position:static;width:auto;height:180px;margin-top:10px;box-shadow:none}}
.session-store-grid th strong,.session-store-grid th small{display:block}.session-store-grid th small{margin-top:2px;color:var(--architecture-muted);font-size:9px;font-weight:500}.session-store-grid th.is-redacted,.session-store-grid td.is-redacted{background:var(--architecture-alt);color:var(--architecture-muted)}.session-store-grid td.is-redacted{font-style:italic}
html[data-theme="dark"] .architecture-model-mount,html[data-theme="dark"] .architecture-model,html[data-theme="dark"] .session-store-inspector,html[data-theme="dark"] .session-store-inspector-loading,html[data-theme="dark"] .session-store-inspector-error{--architecture-page:#0e1511;--architecture-surface:#17201a;--architecture-alt:#20382b;--architecture-ink:#edf4ee;--architecture-muted:#a9b7ad;--architecture-line:#536158}html[data-theme="dark"] .architecture-model-svg-light{display:none}html[data-theme="dark"] .architecture-model-svg-dark{display:block}
.architecture-model{--architecture-added:#1f7a4d;--architecture-added-fill:#dff3e6;--architecture-changed:#a6690b;--architecture-changed-fill:#fbefd2}.architecture-model-svg [data-node-id][data-diff="added"]>rect{fill:var(--architecture-added-fill);stroke:var(--architecture-added);stroke-width:3}.architecture-model-svg [data-node-id][data-diff="changed"]>rect{fill:var(--architecture-changed-fill);stroke:var(--architecture-changed);stroke-width:3}.architecture-model-svg g[data-edge-source][data-diff="added"]>path{stroke:var(--architecture-added);stroke-width:3}.architecture-model-svg g[data-edge-source][data-diff="changed"]>path{stroke:var(--architecture-changed);stroke-width:3}.architecture-model-svg g[data-edge-source][data-diff="added"]>rect{fill:var(--architecture-added-fill)}.architecture-model-svg g[data-edge-source][data-diff="changed"]>rect{fill:var(--architecture-changed-fill)}.architecture-model-svg [data-container-id][data-diff="changed"]>text{fill:var(--architecture-changed)}
.architecture-model-svg [data-node-id][data-failure]>rect{fill:hsl(var(--failure-hue) 70% 88%);stroke:hsl(var(--failure-hue) 65% 32%);stroke-width:3}html[data-theme="dark"] .architecture-model-svg [data-node-id][data-failure]>rect{fill:hsl(var(--failure-hue) 45% 20%);stroke:hsl(var(--failure-hue) 60% 62%)}.architecture-model-failure-legend{display:flex;align-items:center;gap:6px;margin:0 0 6px;color:var(--architecture-muted);font:700 11px/1.3 ui-monospace,monospace}.architecture-model-failure-scale{width:120px;height:8px;border-radius:4px;background:linear-gradient(90deg,hsl(130 60% 45%),hsl(65 70% 48%),hsl(0 70% 50%))}.architecture-model-detail-failure{color:var(--architecture-ink);font:700 12px/1.3 ui-monospace,monospace}
html[data-theme="dark"] .architecture-model{--architecture-added:#7fd6a5;--architecture-added-fill:#1d4630;--architecture-changed:#f0c26b;--architecture-changed-fill:#4a3a12}
.architecture-model-detail-owner{color:var(--architecture-muted);font:700 10px/1.3 ui-monospace,monospace}
/* An edge is path + label + invisible hit lane; hovering any part heats all of them. */.architecture-model-edge{cursor:pointer}.architecture-model-edge-hit{outline:none}path.architecture-model-edge:not(.architecture-model-edge-hit).is-hot,path.architecture-model-edge:not(.architecture-model-edge-hit)[aria-pressed="true"]{stroke-width:4}path.architecture-model-edge:not(.architecture-model-edge-hit)[aria-pressed="true"]{stroke:#0b7a5a}g.architecture-model-edge.is-hot text,g.architecture-model-edge[aria-pressed="true"] text{font-weight:700}g.architecture-model-edge.is-hot rect{stroke:#0b7a5a;stroke-width:1.5}.architecture-model-detail-endpoints{color:var(--architecture-muted);font:600 10px/1.3 ui-monospace,monospace;letter-spacing:.02em;text-transform:uppercase}.architecture-model-detail-description{margin-top:4px;color:var(--architecture-ink);font-size:13px;line-height:1.45}.architecture-model-detail-members{margin-top:6px;color:var(--architecture-muted);font-size:11px;line-height:1.4}.architecture-model-boundary{cursor:pointer;outline:none}.architecture-model-boundary:is(:hover,:focus-visible)>rect,.architecture-model-boundary[aria-pressed="true"]>rect{stroke-width:3}.architecture-model-boundary[aria-pressed="true"]>rect{stroke:#0b7a5a}

/* Pinning controls expansion; hover only selects the compact preview. */
.architecture-model-detail{transition:width 200ms ease,height 200ms ease;align-content:start}
.architecture-model-detail.is-pinned{width:min(360px,calc(100% - 40px));height:min(var(--architecture-detail-height,180px),70vh)}
.architecture-model-detail:focus-visible{outline:2px solid var(--architecture-ink);outline-offset:2px}
@media(max-width:780px){.architecture-model-detail.is-pinned{width:auto;height:min(var(--architecture-detail-height,180px),60vh)}}
@media(prefers-reduced-motion:reduce){.architecture-model-detail{transition:none}}

.architecture-model-detail[hidden]{display:none}
.architecture-model-svg [data-node-id][aria-pressed="true"]>rect{stroke:var(--architecture-ink);stroke-width:3}
/* Mouse focus must not look pinned after aria-pressed is cleared. Keep keyboard focus visible. */
.architecture-model-svg [aria-pressed]:focus:not(:focus-visible){outline:none}
/* Database inspection is an explicit snapshot; browsing never refreshes selected text. */
dialog.session-store-inspector{box-sizing:border-box;margin:auto;color-scheme:light}.session-store-inspector::backdrop{background:rgb(8 20 12 / .55)}.session-store-inspector-head h2{flex:1;font-size:17px}.session-store-inspector-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.session-store-inspector-controls label{display:flex;align-items:center;gap:6px;min-width:0}.session-store-inspector-controls button,.session-store-inspector-controls select{max-width:100%;padding:6px 9px;border:1px solid var(--architecture-line);border-radius:7px;background:var(--architecture-surface);color:var(--architecture-ink);font:inherit}.session-store-inspector-controls button:disabled,.session-store-inspector-controls select:disabled{background:var(--architecture-alt);color:var(--architecture-muted);cursor:default}.session-store-inspector :focus-visible{outline:2px solid var(--architecture-ink);outline-offset:2px}.session-store-inspector .session-store-grid{max-height:52vh}.session-store-inspector .session-store-grid td{white-space:pre-wrap;overflow-wrap:anywhere;min-width:110px;max-width:400px;vertical-align:top;user-select:text}.session-store-grid td small{display:block;margin-top:4px;color:var(--architecture-muted)}.session-store-inspector [role=alert]{color:var(--architecture-ink);font-weight:700}html[data-theme="dark"] dialog.session-store-inspector{color-scheme:dark}@media(max-width:600px){dialog.session-store-inspector{width:calc(100vw - 16px);padding:12px;max-height:90dvh}.session-store-inspector-controls label{width:100%}.session-store-inspector-controls select{flex:1;min-width:0}}
.session-store-inspector .session-store-grid table,.session-store-inspector .session-store-grid td{color:var(--architecture-ink);background:var(--architecture-surface)}.session-store-inspector .session-store-grid th,.session-store-inspector .session-store-grid td.is-redacted{color:var(--architecture-ink);background:var(--architecture-alt)}
.session-store-inspector [hidden]{display:none!important}


.architecture-profile-button{padding:6px 10px;border:1px solid var(--architecture-line);border-radius:7px;background:var(--architecture-surface);color:var(--architecture-ink);font:inherit;cursor:pointer}


.architecture-resources{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-block:12px}.architecture-resources a{color:inherit;text-decoration:underline}
.agent-architecture-document{margin:0;background:#edf5ef;color:#17372f;font:16px/1.6 system-ui,sans-serif}.agent-architecture-document main{max-width:960px;margin:auto;padding:24px}.agent-architecture-document nav{display:flex;gap:24px;flex-wrap:wrap}.agent-architecture-document a{color:#285f49}.agent-architecture-document h1{font-size:1.5rem}.agent-architecture-document platform-markdown-page{display:block;overflow-wrap:anywhere}
html[data-theme="dark"] .agent-architecture-document{background:#10251f;color:#edf6ea}html[data-theme="dark"] .agent-architecture-document a{color:#a9d9bc}



.timing-test-label { font: 12px/1.4 system-ui, sans-serif; min-width: 10rem; max-width: 32rem; overflow-wrap: anywhere; }
.timing-test-label details { font-size: .75rem; color: var(--muted); background: var(--surface); }
.timing-test-label code { white-space: normal; color: var(--ink); background: var(--surface); }

.architecture-model-notice{margin:8px 16px;padding:10px 12px;background:var(--architecture-alt);color:var(--architecture-ink);border:1px solid var(--architecture-line);border-radius:8px;font-size:13px}
.architecture-model-table-wrap{margin:16px;overflow-x:auto}
.architecture-model-table{width:100%;border-collapse:collapse;background:var(--architecture-surface);color:var(--architecture-ink);font-size:13px;line-height:1.5}
.architecture-model-table caption{text-align:left;font-weight:700;padding:8px 0;color:var(--architecture-ink)}
.architecture-model-table th,.architecture-model-table td{padding:9px 12px;border:1px solid var(--architecture-line);text-align:left;vertical-align:top;min-width:150px}
.architecture-model-table thead th{background:var(--architecture-alt);color:var(--architecture-ink)}
.architecture-model-table tbody th{width:24%;font-weight:600}
@media(max-width:600px){.architecture-model-table-wrap{margin:10px}.architecture-model-table th,.architecture-model-table td{min-width:120px;padding:7px}}










.releases-page{max-width:1240px;margin:0 auto;color:var(--ink);min-width:0}.releases-page h1{font-size:20px;margin:0 0 12px}.releases-page .architecture-model-head{min-height:0;padding-right:0}.releases-page .architecture-model-detail.has-source.is-pinned{width:min(850px,calc(100% - 40px));height:min(720px,78vh);max-height:78vh}.release-source{min-width:0;border-top:1px solid var(--architecture-line);padding-top:9px}.release-source summary{cursor:pointer;font-weight:700;color:var(--architecture-ink)}.release-source-path{overflow-wrap:anywhere;font-family:ui-monospace,monospace!important}.release-source-code{margin:8px 0 0;max-width:100%;overflow:auto;padding:12px;background:var(--architecture-page);color:var(--architecture-ink);border:1px solid var(--architecture-line);border-radius:6px;font:12px/1.5 ui-monospace,monospace;tab-size:2;white-space:pre}.release-source-code code{font:inherit}.release-source-retry{padding:5px 9px;background:var(--architecture-alt);color:var(--architecture-ink);border:1px solid var(--architecture-line);border-radius:6px}.release-source-code .c,.release-source-code .c1,.release-source-code .ch,.release-source-code .cm{color:#526c5c}.release-source-code .k,.release-source-code .kn,.release-source-code .kd,.release-source-code .kc,.release-source-code .ow{color:#793ba4;font-weight:600}.release-source-code .s,.release-source-code .s1,.release-source-code .s2,.release-source-code .sd,.release-source-code .si{color:#216a42}.release-source-code .nb,.release-source-code .nf,.release-source-code .nc{color:#17618a}.release-source-code .m,.release-source-code .mi,.release-source-code .mf,.release-source-code .nv{color:#8d4b12}
html[data-theme="dark"] .release-source-code .c,html[data-theme="dark"] .release-source-code .c1,html[data-theme="dark"] .release-source-code .ch,html[data-theme="dark"] .release-source-code .cm{color:#a6bdad}html[data-theme="dark"] .release-source-code .k,html[data-theme="dark"] .release-source-code .kn,html[data-theme="dark"] .release-source-code .kd,html[data-theme="dark"] .release-source-code .kc,html[data-theme="dark"] .release-source-code .ow{color:#d2adf2}html[data-theme="dark"] .release-source-code .s,html[data-theme="dark"] .release-source-code .s1,html[data-theme="dark"] .release-source-code .s2,html[data-theme="dark"] .release-source-code .sd,html[data-theme="dark"] .release-source-code .si{color:#9cdeb1}html[data-theme="dark"] .release-source-code .nb,html[data-theme="dark"] .release-source-code .nf,html[data-theme="dark"] .release-source-code .nc{color:#8dcbe9}html[data-theme="dark"] .release-source-code .m,html[data-theme="dark"] .release-source-code .mi,html[data-theme="dark"] .release-source-code .mf,html[data-theme="dark"] .release-source-code .nv{color:#efbc86}
@media(max-width:780px){.releases-page .architecture-model-detail{position:fixed;right:14px;top:54px!important;width:calc(100% - 28px);height:180px;margin:0;z-index:3}.releases-page .architecture-model-detail.has-source.is-pinned{width:calc(100% - 28px);height:70vh;max-height:70vh}}

.releases-page .architecture-model-detail.has-source>p:not(.release-background-description){display:none}.release-source-close{flex:none;padding:4px 7px;border:1px solid var(--architecture-line);border-radius:6px;background:var(--architecture-alt);color:var(--architecture-ink);font:12px system-ui,sans-serif}.release-source-header{position:sticky;top:-10px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-10px -10px 10px;padding:10px;background:var(--architecture-surface);color:var(--architecture-ink);border-bottom:1px solid var(--architecture-line)}.release-source-header h3{margin:0!important;min-width:0}.release-pseudocode-step{padding:9px 0;border-top:1px solid var(--architecture-line)}.release-pseudocode-step summary{font:13px/1.5 system-ui,sans-serif;font-weight:500}.release-pseudocode-step[open]>summary{font-weight:700}.release-pseudocode-step .release-source-path{margin:8px 0 0}.release-source-header button:focus-visible,.release-pseudocode-step summary:focus-visible{outline:2px solid var(--architecture-ink);outline-offset:3px}

.architecture-annotation-button{justify-self:start;max-width:100%;padding:5px 9px;border:1px dashed var(--architecture-line);border-radius:7px;background:var(--architecture-alt);color:var(--architecture-ink);font:600 12px/1.4 system-ui,sans-serif;cursor:pointer;text-align:left}.architecture-annotation-button[aria-pressed="true"]{border-style:solid}.architecture-annotation-button:focus-visible,[data-annotation-id]:focus-visible{outline:2px solid var(--architecture-ink);outline-offset:3px}
.releases-page .architecture-model-detail.has-proposal.is-pinned{width:min(620px,calc(100% - 40px));height:auto;max-height:75vh}.release-security-proposal{display:grid;gap:12px}.release-security-proposal h4{font:700 13px/1.4 system-ui,sans-serif;margin:0 0 4px}.release-security-proposal p{color:var(--architecture-ink)}.release-proposal-status{font-weight:700}
@media(max-width:780px){.releases-page .architecture-model-detail.has-proposal.is-pinned{width:calc(100% - 28px);max-height:70vh}}




.release-timings-link{color:var(--architecture-ink);background:var(--architecture-surface);font-size:12px;text-decoration:underline;justify-self:start}

.release-reliability-detail{color:var(--architecture-ink);background:var(--architecture-surface);font:12px/1.5 system-ui,sans-serif;padding:8px 0}.release-reliability-detail p{margin:5px 0}.release-reliability-detail ul{padding-left:18px;margin:6px 0}.release-reliability-error{font:12px/1.6 system-ui,sans-serif;padding:8px 10px;border:1px solid #b77b72;border-radius:7px;margin:0 0 10px;color:#832c26;background:#fff0ec}html[data-theme="dark"] .release-reliability-error{color:#ffbdb5;background:#382621}

.release-background-guide{margin:16px 0;border:1px solid var(--line,#668c7b);border-radius:10px;padding:10px 12px;background:#fffdf5;color:#17372f;font-size:13px}
.release-background-guide summary{cursor:pointer;font-weight:650}
.release-background-guide dl{display:grid;grid-template-columns:100px 1fr;gap:8px 12px}.release-background-guide dt{font-weight:650}.release-background-guide dd{margin:0}.release-background-guide h2{font-size:14px}.release-background-note{font-size:12px}
html[data-theme="dark"] .release-background-guide{background:#18352e;color:#edf6ea}


/* A standalone system page: its title, one line of description, then the diagram. The detail panel takes no space until something is selected. */
.system-page{grid-template-columns:minmax(0,1fr);margin:12px auto;max-width:1280px;min-width:0;padding:16px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px}.system-page-head h1{margin:0;font-size:22px;color:var(--ink)}.system-page-head p{margin:4px 0 12px;color:var(--muted);font-size:13px}.system-page-notice{margin:0 0 12px;padding:10px;border:1px solid var(--architecture-line);border-radius:8px;background:var(--architecture-surface);color:var(--architecture-ink)}
.system-page-section{scroll-margin-top:12px}.system-page-section+.system-page-section{margin-top:28px;padding-top:16px;border-top:1px solid var(--line)}.system-page-section>h2{margin:0;font-size:18px;color:var(--ink)}.system-page-section>p{margin:4px 0 12px;color:var(--muted);font-size:13px}
@media(max-width:600px){.system-page{padding:10px}}

/* A shared comparison keeps packaging separate from the three execution models. */
.architecture-infographic{min-width:0;max-width:100%;box-sizing:border-box;--info-page:#faf8f2;--info-ink:#192c28;--info-muted:#53645f;--info-line:#c4cec5;--info-surface:#fffef9;--info-blue:#174c6c;--info-blue-bg:#e5eff4;margin:14px 0 24px;padding:24px;border:1px solid var(--info-line);border-radius:10px;background:var(--info-page);color:var(--info-ink);font:14px/1.45 system-ui,sans-serif;user-select:text}
.architecture-infographic-title{font-size:25px;font-weight:750;letter-spacing:-.5px}.architecture-infographic-title p{margin:3px 0 18px;font-size:14px;font-weight:450;letter-spacing:0;color:var(--info-muted);background:var(--info-page)}
.architecture-packaging{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px;border:1px solid var(--info-line);border-radius:8px;background:var(--info-blue-bg);color:var(--info-blue)}
.architecture-packaging-copy{max-width:360px}.architecture-packaging h3{font-size:19px;margin:0 0 4px}.architecture-packaging p{margin:0}.architecture-infographic a{color:inherit;text-decoration:none}.architecture-infographic a:hover{text-decoration:underline}.architecture-infographic a:focus-visible,.architecture-runtime-scroll:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.architecture-package-flow{display:flex;align-items:center;gap:16px;flex-shrink:0}.architecture-package{display:grid;gap:4px;min-width:120px;padding:10px;border:2px solid var(--info-blue);border-radius:5px;background:var(--info-surface);color:var(--info-blue)}.architecture-package strong{font-size:11px;letter-spacing:1px;text-transform:uppercase}.architecture-package span{padding:3px 10px;border:1px solid var(--info-line);background:var(--info-blue-bg);color:var(--info-blue);text-align:center;font-size:12px}.architecture-package-arrow{font-size:24px}.architecture-container{max-width:100px;padding:14px 12px;border:2px dashed var(--info-blue);border-radius:8px;font-weight:650;text-align:center;background:var(--info-surface);color:var(--info-blue)}
.architecture-runtime-scroll{min-width:0;max-width:100%;overflow-x:auto;margin-top:22px}.architecture-runtime-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:760px;color:var(--info-ink);background:var(--info-surface)}.architecture-runtime-table caption{text-align:left;padding:0 0 10px;font-size:13px;color:var(--info-muted);background:var(--info-page)}.architecture-runtime-table th,.architecture-runtime-table td{padding:13px 16px;border:1px solid var(--info-line);text-align:left;vertical-align:top}.architecture-runtime-table tr>:first-child{width:76px;font-size:12px;font-weight:600;color:var(--info-muted);background:var(--info-page)}.architecture-runtime-table thead td{border-top:0;border-left:0}.architecture-runtime-table thead th{font-size:18px;line-height:1.3;border-top:4px solid var(--info-accent);background:var(--info-tint);color:var(--info-accent)}.architecture-runtime-table [data-tone=amber]{--info-accent:#825010;--info-tint:#fbefda}.architecture-runtime-table [data-tone=purple]{--info-accent:#62409a;--info-tint:#f0eaf9}.architecture-runtime-table [data-tone=green]{--info-accent:#1d654d;--info-tint:#e6f3eb}.architecture-runtime-symbol{display:block;width:30px;height:30px;margin-bottom:9px;font:700 28px/30px ui-monospace,monospace;color:var(--info-accent);background:var(--info-tint)}.architecture-runtime-table strong{font-weight:550}.architecture-runtime-table small{display:block;margin-top:5px;font-size:11px;line-height:1.5;font-weight:400}.architecture-runtime-table tbody small{color:var(--info-muted);background:var(--info-surface)}.architecture-runtime-table tr[data-dimension=runs] strong{font-size:17px;color:var(--info-accent);background:var(--info-surface)}.architecture-runtime-table tr[data-dimension=billing] a{font-size:13px}.architecture-runtime-flow{white-space:nowrap;font-size:10px!important}.architecture-infographic-footnote{margin:12px 0 0;font-size:11px;color:var(--info-muted);background:var(--info-page)}
html[data-theme=dark] .architecture-infographic{min-width:0;max-width:100%;box-sizing:border-box;--info-page:#182822;--info-ink:#e8f2ea;--info-muted:#aec2b5;--info-line:#4d6657;--info-surface:#20332b;--info-blue:#aed9ef;--info-blue-bg:#233e4b}html[data-theme=dark] .architecture-runtime-table [data-tone=amber]{--info-accent:#f2c879;--info-tint:#463c24}html[data-theme=dark] .architecture-runtime-table [data-tone=purple]{--info-accent:#d3b6ff;--info-tint:#392f4e}html[data-theme=dark] .architecture-runtime-table [data-tone=green]{--info-accent:#99dfbb;--info-tint:#244735}
@media(max-width:600px){.architecture-infographic{padding:14px 10px}.architecture-infographic-title{font-size:22px}.architecture-packaging{flex-direction:column;align-items:stretch;padding:14px;gap:16px}.architecture-package-flow{justify-content:center;gap:12px}.architecture-package{min-width:96px}.architecture-container{max-width:88px;padding:10px}.architecture-runtime-table th,.architecture-runtime-table td{padding:12px}.architecture-runtime-table tr>:first-child{position:sticky;left:0;z-index:1;width:62px}}

.architecture-comparison{margin:14px 0 24px}.architecture-comparison table{min-width:620px;table-layout:fixed}.architecture-comparison caption{font-size:18px;padding:10px 0 14px}.architecture-comparison th:first-child{width:18%;min-width:100px}.architecture-comparison td{width:41%;font-size:13px}.architecture-comparison tr>:nth-child(3){background:var(--architecture-alt);color:var(--architecture-ink)}

/* Sourced incident tables reuse the system-page palette and stay selectable. */
.architecture-model-table-disclosure{margin:14px 0;color:var(--architecture-ink);background:var(--architecture-surface);border:1px solid var(--architecture-line);border-radius:8px;overflow:hidden}.architecture-model-table-disclosure>summary{padding:12px;cursor:pointer;font-weight:650;color:var(--architecture-ink);background:var(--architecture-alt)}.architecture-model-table-disclosure>summary:focus-visible{outline:2px solid currentColor;outline-offset:-4px}.architecture-model-table-disclosure .architecture-model-table-wrap{margin:0;padding:0 12px 12px}.architecture-model-table a{color:inherit;text-decoration:underline;text-underline-offset:3px}.architecture-model-table a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:600px){.architecture-model-table-stacked table{min-width:0;table-layout:auto}.architecture-model-table-stacked caption{font-size:17px;overflow-wrap:anywhere}.architecture-model-table-stacked thead{display:none}.architecture-model-table-stacked tbody,.architecture-model-table-stacked tr,.architecture-model-table-stacked td,.architecture-model-table-stacked tbody th{display:block;width:auto;min-width:0}.architecture-model-table-stacked tbody th{padding:10px;background:var(--architecture-alt);color:var(--architecture-ink)}.architecture-model-table-stacked td{padding:10px}.architecture-model-table-stacked tr+tr{margin-top:10px}}

.architecture-model-problems{margin:18px 16px;padding-left:22px;max-width:850px;color:var(--architecture-ink);background:var(--architecture-page);font:14px/1.55 system-ui,sans-serif;overflow-wrap:anywhere}
.architecture-model-problems li{margin:10px 0}
.architecture-model-problems a{color:var(--architecture-ink);background:var(--architecture-page);font-weight:650;text-decoration:underline;text-underline-offset:3px}
.architecture-model-problems a:focus-visible{outline:2px solid var(--architecture-ink);outline-offset:3px}
.voice-clips{margin-top:16px;color:var(--ink)}.voice-clips h3{margin:0;font-size:15px;color:var(--ink)}.voice-clips-status{margin:4px 0 10px;color:var(--muted);font-size:13px}.voice-clips-status.voice-clips-error{color:var(--danger)}.voice-clips table{width:100%;border-collapse:collapse;font-size:13px;color:var(--ink);background:var(--surface)}.voice-clips th{text-align:left;color:var(--muted);font-weight:600}.voice-clips th,.voice-clips td{padding:6px 8px;border-top:1px solid var(--line);vertical-align:top;user-select:text}.voice-clips td:first-child{white-space:nowrap;color:var(--muted)}.voice-clips tr[data-outcome=empty] strong,.voice-clips tr[data-outcome=failed] strong,.voice-clips tr[data-outcome=rejected] strong{color:var(--danger)}.voice-clips button{font:inherit;padding:3px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer}.voice-clips audio{width:220px;max-width:100%}
/* Box provisioning waterfall: measured durations on a log axis. Owner colors are set for light and dark together. */
.architecture-waterfall{--waterfall-machine:#2f6f95;--waterfall-machine-pale:#cfe2ee;--waterfall-agent:#7a4ca8;--waterfall-agent-pale:#e6daf2;--waterfall-customer:#2f7d4f;--waterfall-customer-pale:#d4ecdc;--waterfall-idle:#8a6a1f;--waterfall-idle-pale:#f1e5c6;--waterfall-failed:#b42318;--waterfall-failed-pale:#f6dcd8;--waterfall-chip-ink:#17231b;display:grid;gap:14px;margin:0 0 18px;padding:18px 20px;border:1px solid var(--architecture-line);border-radius:10px;background:var(--architecture-surface);color:var(--architecture-ink);font:14px/1.4 system-ui,sans-serif;user-select:text}
html[data-theme="dark"] .architecture-waterfall{--waterfall-machine:#7fb8dc;--waterfall-machine-pale:#1f3a4b;--waterfall-agent:#c3a0e6;--waterfall-agent-pale:#3a2a4d;--waterfall-customer:#83d3a2;--waterfall-customer-pale:#1d3e2a;--waterfall-idle:#e5c16e;--waterfall-idle-pale:#46391a;--waterfall-failed:#ff8a7a;--waterfall-failed-pale:#4a1f1a;--waterfall-chip-ink:#edf4ee}
.architecture-waterfall-verdict{margin:0;font:800 19px/1.3 system-ui,sans-serif;color:var(--architecture-ink)}
.architecture-waterfall-buckets{display:flex;gap:3px;min-height:46px}.architecture-waterfall-bucket{display:grid;align-content:center;min-width:92px;padding:4px 8px;border-radius:6px;background:var(--waterfall-machine-pale);color:var(--waterfall-chip-ink);border-left:4px solid var(--waterfall-machine)}.architecture-waterfall-bucket strong{font:800 14px/1.2 ui-monospace,monospace}.architecture-waterfall-bucket small{color:var(--waterfall-chip-ink);opacity:.78;font-size:11px}
.architecture-waterfall-bucket[data-bucket="agent"]{background:var(--waterfall-agent-pale);border-color:var(--waterfall-agent)}.architecture-waterfall-bucket[data-bucket="failures"]{background:var(--waterfall-failed-pale);border-color:var(--waterfall-failed)}.architecture-waterfall-bucket[data-bucket="idle"]{background:var(--waterfall-idle-pale);border-color:var(--waterfall-idle)}
.architecture-waterfall-rows{display:grid;gap:4px;margin:0;padding:0;list-style:none}.architecture-waterfall-row{display:grid;grid-template-columns:minmax(150px,210px) minmax(160px,1fr) minmax(210px,300px);align-items:center;gap:12px;font-size:13px}
.architecture-waterfall-label{font-weight:700}.architecture-waterfall-step .architecture-waterfall-label{padding-left:16px;font-weight:500;color:var(--architecture-muted)}.architecture-waterfall-step{font-size:12px}
.architecture-waterfall-track{position:relative;height:16px;border-radius:4px;background:var(--architecture-page)}.architecture-waterfall-step .architecture-waterfall-track{height:9px}
.architecture-waterfall-worst,.architecture-waterfall-median{position:absolute;inset:0 auto 0 0;border-radius:4px}.architecture-waterfall-worst{background:var(--waterfall-machine-pale)}.architecture-waterfall-median{min-width:3px;background:var(--waterfall-machine)}
[data-owner="agent"] .architecture-waterfall-worst{background:var(--waterfall-agent-pale)}[data-owner="agent"] .architecture-waterfall-median{background:var(--waterfall-agent)}[data-owner="customer"] .architecture-waterfall-worst{background:var(--waterfall-customer-pale)}[data-owner="customer"] .architecture-waterfall-median{background:var(--waterfall-customer)}
.architecture-waterfall-numbers{display:flex;flex-wrap:wrap;gap:2px 10px;color:var(--architecture-muted);font:12px/1.3 ui-monospace,monospace}.architecture-waterfall-failed{color:var(--waterfall-failed);font-weight:800}
.architecture-waterfall-axis .architecture-waterfall-track{height:14px;background:none}.architecture-waterfall-tick{position:absolute;top:0;transform:translateX(-50%);color:var(--architecture-muted);font:11px/1 ui-monospace,monospace;white-space:nowrap}.architecture-waterfall-tick:first-child{transform:none}
@media(max-width:780px){.architecture-waterfall-row{grid-template-columns:1fr;gap:3px}.architecture-waterfall-axis{display:none}.architecture-waterfall-buckets{flex-wrap:wrap}}
