.architecture-plate{--ap-ink:var(--diagram-ink);--ap-muted:var(--diagram-muted);--ap-line:var(--diagram-line);--ap-evidence:var(--diagram-evidence);--ap-deny:var(--diagram-deny);container-type:inline-size;padding:16px;background:var(--bg-code)}.architecture-plate-title{margin:-16px -16px 20px;padding:16px 20px;border-bottom:1px solid var(--border);color:var(--accent);font:.875rem/1.6 var(--font-mono),monospace;overflow-wrap:anywhere}.docs-figure-body:has(>.architecture-plate){padding:0}.architecture-view{display:block;width:100%;height:auto;overflow:visible;font-family:var(--font-sans),sans-serif}.architecture-wide{display:none}.architecture-compact{max-width:400px;margin-inline:auto}@container (min-width: 640px){.architecture-wide{display:block}.architecture-compact{display:none}}.architecture-view .ap-label text,.architecture-view .ap-node-sub,.architecture-view .ap-node-title,.architecture-view .ap-text{font-size:18px;fill:var(--ap-ink)}.architecture-view .ap-small{font-size:18px}.architecture-view .ap-node-title{font-weight:600}.architecture-view .ap-node-sub,.architecture-view .ap-text{fill:var(--ap-muted)}.architecture-view .ap-accent{--ap-color:var(--accent)}.architecture-view .ap-evidence{--ap-color:var(--ap-evidence)}.architecture-view .ap-deny{--ap-color:var(--ap-deny)}.architecture-view .ap-neutral{--ap-color:var(--ap-line)}.architecture-view .ap-text.ap-accent{fill:var(--accent)}.architecture-view .ap-text.ap-evidence{fill:var(--ap-evidence)}.architecture-view .ap-text.ap-deny{fill:var(--ap-deny)}.architecture-view .ap-node-shape{fill:var(--bg-code);stroke:var(--ap-color);stroke-width:1.2}.architecture-view .ap-node.ap-accent .ap-node-shape{fill:var(--accent-soft)}.architecture-view .ap-boundary rect{fill:none;stroke:var(--ap-color);stroke-opacity:.85;stroke-width:1}.architecture-view .ap-dashed>:is(path,rect){stroke-dasharray:5 5}.architecture-view .ap-connection path{fill:none;stroke:var(--ap-color);stroke-width:1.5}.architecture-view .ap-connection polygon,.architecture-view .ap-junction{fill:var(--ap-color)}.architecture-view .ap-record-spine{fill:none;stroke:var(--ap-color);stroke-width:2}.architecture-view .ap-label text{fill:var(--ap-muted);paint-order:stroke;stroke:var(--bg-code);stroke-width:7;stroke-linejoin:round}.architecture-view .ap-label.ap-deny text{fill:var(--ap-deny)}.architecture-view .ap-label.ap-evidence text{fill:var(--ap-evidence)}.architecture-view .ap-message{paint-order:stroke;stroke:var(--bg-code);stroke-width:6;stroke-linejoin:round}