.arch-diagram .dg-routes path{fill:none;stroke:none}.arch-diagram .dg-traveler{pointer-events:none;display:none}.arch-run.dg-live .arch-diagram .dg-traveler{opacity:0;display:inline}.arch-diagram .dg-ack-text{fill:#0a0e16;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;font-weight:700}.arch-diagram [data-s]{transition:opacity .45s}.arch-run.dg-live .arch-diagram [data-s].is-pending{opacity:.16}.arch-diagram text.dg-fail-text{fill:var(--color-fail)}.arch-diagram text.dg-ok-text{fill:var(--color-ok)}.arch-diagram rect.dg-p1{stroke:color-mix(in srgb, var(--color-fail) 60%, transparent)}.arch-diagram rect.dg-p2{stroke:color-mix(in srgb, var(--color-ok) 60%, transparent)}.arch-run.dg-live .arch-diagram .is-now .dg-checkpoint{filter:drop-shadow(0 0 10px #f2a83b73)}.dg-player{margin-top:.9rem}.dg-btn{width:2rem;height:2rem;color:var(--color-ink);background:var(--color-saffron-400);border-radius:999px;justify-content:center;align-items:center;transition:background .2s,transform .15s;display:inline-flex}.dg-btn:hover{background:var(--color-saffron-300)}.dg-btn:active{transform:scale(.94)}.dg-step{font-family:var(--font-mono);color:color-mix(in srgb, var(--color-cream) 60%, transparent);background:color-mix(in srgb, var(--color-cream) 3%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-cream) 10%, transparent);border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 5px;font-size:11px;transition:color .2s,background .2s,box-shadow .2s;display:inline-flex}.dg-step:hover{color:var(--color-cream)}.dg-step-n{background:color-mix(in srgb, var(--color-cream) 8%, transparent);border-radius:999px;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;display:inline-flex}.dg-step.is-done .dg-step-n{color:var(--color-ink);background:color-mix(in srgb, var(--color-saffron-400) 70%, transparent)}.dg-step.is-now{color:var(--color-saffron-200);background:color-mix(in srgb, var(--color-saffron-400) 10%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-saffron-400) 40%, transparent)}.dg-step.is-now .dg-step-n{color:var(--color-ink);background:var(--color-saffron-400)}.dg-caption{min-height:2.9em;color:var(--color-cream);opacity:.85;margin-top:.7rem;font-size:13.5px;line-height:1.5}.arch-prose{color:var(--color-mist);font-size:14.5px;line-height:1.75}.arch-prose h2{color:var(--color-cream);font-family:var(--font-display);font-variation-settings:"wdth" 125;border-bottom:1px solid color-mix(in srgb, var(--color-cream) 8%, transparent);margin-top:3.2rem;margin-bottom:.9rem;padding-bottom:.7rem;scroll-margin-top:96px;font-size:1.35rem;font-weight:640;line-height:1.25}.arch-prose p{margin-bottom:.9rem}.arch-prose strong{color:var(--color-cream);font-weight:500}.arch-prose em{color:var(--color-cream);font-style:italic}.arch-prose code{color:color-mix(in srgb, var(--color-cream) 85%, transparent);background:color-mix(in srgb, var(--color-cream) 7%, transparent);border-radius:4px;padding:1px 5px;font-size:12.5px}.arch-prose a,.arch-link{color:var(--color-cream);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--color-cream) 30%, transparent);text-underline-offset:2px}.arch-prose a:hover,.arch-link:hover{text-decoration-color:var(--color-cream)}.arch-prose dl dt{color:var(--color-cream);margin-top:1.6rem;font-size:.98rem;font-weight:600}.arch-prose dl dd{margin-top:.35rem}.arch-diagram{border:1px solid color-mix(in srgb, var(--color-cream) 8%, transparent);background:color-mix(in srgb, var(--color-cream) 2%, transparent);border-radius:12px;padding:20px 16px}.arch-diagram text{text-anchor:middle}.arch-diagram .dg-zonelabel,.arch-diagram .dg-tiny,.arch-diagram .dg-mono,.arch-diagram .dg-mono-s{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.arch-diagram .dg-zonelabel{text-anchor:start;letter-spacing:.22em;text-transform:uppercase;fill:color-mix(in srgb, var(--color-cream) 45%, transparent);font-size:10px}.arch-diagram .dg-title{fill:var(--color-cream);font-size:13px;font-weight:600}.arch-diagram .dg-title-ghost{fill:var(--color-mist);font-size:13px;font-weight:600}.arch-diagram .dg-mono{fill:var(--color-mist);font-size:10.5px}.arch-diagram .dg-mono-s{fill:var(--color-saffron-400);font-size:10.5px}.arch-diagram .dg-tiny{fill:color-mix(in srgb, var(--color-mist) 75%, transparent);font-size:9.5px}.arch-diagram .dg-zone{fill:none;stroke:color-mix(in srgb, var(--color-cream) 11%, transparent);stroke-dasharray:3 6}.arch-diagram .dg-box{fill:color-mix(in srgb, var(--color-cream) 3%, transparent);stroke:color-mix(in srgb, var(--color-mist) 45%, transparent)}.arch-diagram .dg-box-ghost{fill:none;stroke:color-mix(in srgb, var(--color-mist) 25%, transparent);stroke-dasharray:4 4}.arch-diagram .dg-box-hero{fill:color-mix(in srgb, var(--color-saffron-400) 7%, transparent);stroke:color-mix(in srgb, var(--color-saffron-400) 55%, transparent)}.arch-diagram .dg-line{stroke:color-mix(in srgb, var(--color-mist) 55%, transparent)}.arch-diagram .dg-ghostline{stroke:color-mix(in srgb, var(--color-mist) 18%, transparent)}.arch-diagram .dg-thin{stroke:color-mix(in srgb, var(--color-mist) 30%, transparent)}.arch-diagram .dg-line-s{stroke:color-mix(in srgb, var(--color-saffron-400) 80%, transparent);fill:none}.arch-diagram .dg-dash{stroke:color-mix(in srgb, var(--color-mist) 40%, transparent);stroke-dasharray:5 5;fill:none}.arch-diagram .dg-pulse{animation:2.6s ease-in-out infinite dgPulse}@keyframes dgPulse{0%,to{opacity:.55}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.arch-diagram .dg-pulse{animation:none}}
