.arch-diagram:where(.astro-3tqnor4r){font-family:var(--sl-font);flex-direction:column;gap:0;margin:2rem 0 2.5rem;display:flex;position:relative;container-type:inline-size}.arch-cap:where(.astro-3tqnor4r){background:var(--sl-color-gray-6);border:1px solid var(--sl-color-gray-4);align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex}.arch-cap--top:where(.astro-3tqnor4r){border-bottom:none;border-radius:10px 10px 0 0}.arch-cap--bottom:where(.astro-3tqnor4r){background:color-mix(in srgb, var(--sl-color-accent) 8%, var(--sl-color-gray-6));border-top:none;border-radius:0 0 10px 10px}.arch-cap-label:where(.astro-3tqnor4r){color:var(--sl-color-white);font-size:.85rem;font-weight:700}.arch-cap-sub:where(.astro-3tqnor4r){color:var(--sl-color-gray-2);font-size:.75rem;font-style:italic}.arch-cap:where(.astro-3tqnor4r),.arch-layer:where(.astro-3tqnor4r){margin:0}.arch-layer:where(.astro-3tqnor4r){border-left:1px solid var(--sl-color-gray-4);border-right:1px solid var(--sl-color-gray-4);border-bottom:1px solid var(--sl-color-gray-4);grid-template-columns:10rem 1fr;align-items:start;gap:0;display:grid}.arch-layer-header:where(.astro-3tqnor4r){border-right:1px solid var(--sl-color-gray-4);flex-direction:column;justify-content:center;gap:.2rem;min-height:100%;padding:.65rem .85rem;display:flex}.arch-layer-name:where(.astro-3tqnor4r){letter-spacing:.02em;font-size:.78rem;font-weight:700}.arch-layer-sub:where(.astro-3tqnor4r){opacity:.7;font-size:.68rem;font-style:italic}.arch-chips:where(.astro-3tqnor4r){flex-wrap:wrap;align-content:flex-start;gap:.4rem;padding:.6rem .75rem;display:flex}.arch-chip:where(.astro-3tqnor4r){font-size:.75rem;font-weight:600;font-family:var(--sl-font-mono);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:4px;align-items:center;padding:.2rem .6rem;text-decoration:none;transition:transform 80ms,box-shadow 80ms,border-color 80ms;display:inline-flex}.arch-chip:where(.astro-3tqnor4r):hover,.arch-chip:where(.astro-3tqnor4r):focus-visible{outline:none;transform:translateY(-1px);box-shadow:0 3px 8px #00000040}.arch-layer:where(.astro-3tqnor4r){background:color-mix(in srgb, var(--lc) 5%, var(--sl-color-bg))}.arch-layer:where(.astro-3tqnor4r) .arch-layer-header:where(.astro-3tqnor4r){background:color-mix(in srgb, var(--lc) 11%, var(--sl-color-bg))}.arch-layer:where(.astro-3tqnor4r) .arch-layer-name:where(.astro-3tqnor4r),.arch-layer:where(.astro-3tqnor4r) .arch-layer-sub:where(.astro-3tqnor4r){color:var(--lt)}.arch-layer:where(.astro-3tqnor4r) .arch-chip:where(.astro-3tqnor4r){background:color-mix(in srgb, var(--lc) 14%, var(--sl-color-bg));color:var(--lt);border-color:color-mix(in srgb, var(--lc) 30%, transparent)}.arch-layer:where(.astro-3tqnor4r) .arch-chip:where(.astro-3tqnor4r):hover,.arch-layer:where(.astro-3tqnor4r) .arch-chip:where(.astro-3tqnor4r):focus-visible{background:color-mix(in srgb, var(--lc) 24%, var(--sl-color-bg));border-color:var(--lc)}.arch-layer--ai:where(.astro-3tqnor4r){--lc:#f59e0b;--lt:#b45309}.arch-layer--mcp:where(.astro-3tqnor4r){--lc:#f97316;--lt:#c2410c}.arch-layer--business:where(.astro-3tqnor4r){--lc:#e879f9;--lt:#c026d3}.arch-layer--saas:where(.astro-3tqnor4r){--lc:#d946ef;--lt:#a21caf}.arch-layer--iot:where(.astro-3tqnor4r){--lc:#e11d48;--lt:#9f1239}.arch-layer--building-blocks:where(.astro-3tqnor4r){--lc:#f43f5e;--lt:#e11d48}.arch-layer--api:where(.astro-3tqnor4r){--lc:#ec4899;--lt:#db2777}.arch-layer--infra:where(.astro-3tqnor4r){--lc:#7c3aed;--lt:#6d28d9}.arch-layer--compliance:where(.astro-3tqnor4r){--lc:#8b5cf6;--lt:#7c3aed}.arch-layer--security:where(.astro-3tqnor4r){--lc:#6366f1;--lt:#4f46e5}.arch-layer--data:where(.astro-3tqnor4r){--lc:#3b82f6;--lt:#2563eb}.arch-layer--core:where(.astro-3tqnor4r){--lc:#0ea5e9;--lt:#0284c7}.arch-tooltip:where(.astro-3tqnor4r){z-index:1000;background:var(--sl-color-black);border:1px solid var(--sl-color-gray-4);pointer-events:none;opacity:0;border-radius:6px;max-width:260px;padding:.5rem .7rem;font-size:.78rem;line-height:1.4;transition:opacity .12s;position:fixed;box-shadow:0 4px 16px #0006}.arch-tooltip:where(.astro-3tqnor4r).is-visible{opacity:1}.arch-tooltip-pkg:where(.astro-3tqnor4r){font-family:var(--sl-font-mono);color:var(--sl-color-gray-2);margin-bottom:.2rem;font-size:.7rem}.arch-tooltip-tip:where(.astro-3tqnor4r){color:var(--sl-color-white)}@container (width<=540px){.arch-layer:where(.astro-3tqnor4r){grid-template-columns:1fr}.arch-layer-header:where(.astro-3tqnor4r){border-right:none;border-bottom:1px solid var(--sl-color-gray-4);flex-direction:row;gap:.5rem}}
