.arch-diagram{overflow-x:auto;padding:clamp(1rem,2.5vw,1.75rem);border:1px solid var(--border);border-radius:var(--radius-card);background:radial-gradient(60% 80% at 50% 0,color-mix(in srgb,var(--sky-100) 70%,transparent),transparent 70%),var(--surface);box-shadow:var(--shadow-3)}.arch-diagram svg{display:block;width:100%;min-width:46rem;height:auto;font-family:var(--font-sans)}.arch-region{fill:color-mix(in srgb,var(--sky-50) 80%,transparent);stroke:color-mix(in srgb,var(--sky-500) 45%,transparent);stroke-width:1.2;stroke-dasharray:6 6}.arch-region-label{fill:var(--primary-text);font-size:12.5px;font-weight:600;letter-spacing:.02em}.arch-col-label{fill:var(--muted);font:600 12px var(--font-mono);letter-spacing:.06em}.arch-box rect,.arch-chip rect{fill:var(--surface);stroke:var(--border);stroke-width:1.2}.arch-box--core rect{fill:color-mix(in srgb,var(--sky-100) 55%,var(--surface));stroke:color-mix(in srgb,var(--primary) 55%,var(--border));stroke-width:1.6}.arch-box--planned rect{fill:transparent;stroke:color-mix(in srgb,var(--sky-500) 55%,var(--border));stroke-dasharray:5 5}.arch-box-title{fill:var(--ink);font-size:15px;font-weight:650}.arch-box--core .arch-box-title{fill:var(--primary-text)}.arch-box-line,.arch-chip text{fill:var(--ink-2);font-size:12.5px}.arch-chip text{font-weight:600}.arch-links path{fill:none;stroke:color-mix(in srgb,var(--sky-500) 75%,transparent);stroke-width:1.6;stroke-dasharray:5 6;stroke-linecap:round}.arch-links .arch-link--planned{stroke:color-mix(in srgb,var(--sky-500) 40%,transparent)}.arch-arrow{fill:var(--sky-500)}.arch-fan-outer{fill:var(--chart-band-outer)}.arch-fan-inner{fill:var(--chart-band-inner)}.arch-fan-mid{fill:none;stroke:var(--chart-forecast);stroke-width:2;stroke-dasharray:5 4}@media (prefers-reduced-motion:no-preference){.arch-links path{animation:arch-flow 1.8s linear infinite}@keyframes arch-flow{to{stroke-dashoffset:-22}}}