.sysmap{color-scheme:light;--sm-bg:#ffffff;--sm-surface:#f1f3f6;--sm-paper:#ffffff;--sm-data:#e4e9ef;--sm-ink:#16202b;--sm-ink-2:#425061;--sm-ink-3:#5c6a7a;--sm-rule:#d3dae2;--sm-agent:#16202b;--sm-agent-ink:#f3f5f7;--sm-agent-ink-2:#b9c4d0;--sm-accent:#d4401a;--sm-accent-ink:#b5330f;--sm-on-accent:#ffffff;--sm-bead:#ffffff;--sm-slab:#16202b;--sm-slab-ink:#f3f5f7;--sm-slab-ink-2:#b9c4d0;--sm-slab-rule:#36434f;--sm-badge:#ffffff;--sm-f-body:var(--font-sans);--sm-f-mono:var(--font-mono);position:relative;z-index:1;isolation:isolate;background:var(--sm-bg);color:var(--sm-ink);font-family:var(--sm-f-body);font-size:1rem;line-height:1.55}.sysmap .sm-sprite{position:absolute;width:0;height:0;overflow:hidden}.sysmap .sm-wrap{max-width:1640px;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:clamp(32px,5vw,64px) clamp(48px,6vw,96px);display:grid;gap:clamp(48px,6.5vw,88px)}.sysmap h1,.sysmap h2,.sysmap h3{margin:0;font-family:var(--sm-f-body);color:var(--sm-ink);text-wrap:balance}.sysmap p{margin:0}.sysmap .sm-top{display:grid;gap:.8rem;max-width:60rem}.sysmap .sm-kicker{font-family:var(--sm-f-mono);font-size:.76rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--sm-ink-3)}.sysmap h1{font-weight:500;font-size:clamp(2.3rem,5.6vw,4rem);line-height:1.04;letter-spacing:-.03em}.sysmap .sm-lede{max-width:46rem;font-size:clamp(1.05rem,1.5vw,1.22rem);line-height:1.55;color:var(--sm-ink-2);text-wrap:pretty}.sysmap h2{font-weight:500;font-size:clamp(1.45rem,2.6vw,2rem);line-height:1.15;letter-spacing:-.02em}.sysmap .sm-fig{margin:0;display:grid;gap:1rem;min-width:0}.sysmap .sm-fig-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem 2.5rem}.sysmap .sm-fig-head.is-stack{display:grid;gap:.6rem;justify-content:start}.sysmap .sm-sub{max-width:52rem;color:var(--sm-ink-2);text-wrap:pretty}.sysmap .sm-legend{display:flex;flex-wrap:wrap;gap:.45rem 1.35rem;margin:0;padding:0;list-style:none;font-size:.86rem;line-height:1.3;color:var(--sm-ink-2)}.sysmap .sm-legend li{display:inline-flex;align-items:center;gap:.5rem}.sysmap .sm-legend svg{flex:none;width:36px;height:20px}.sysmap .sm-scroller{overflow-x:auto;-webkit-overflow-scrolling:touch;border-block:1px solid var(--sm-rule);padding-block:14px}.sysmap .sm-scroller:focus-visible{outline:2px solid var(--sm-accent);outline-offset:4px}.sysmap .fm-main{display:block;width:100%;min-width:1280px;height:auto}.sysmap .fm-comp,.sysmap .fm-crawl,.sysmap .fm-data{display:block;width:100%;max-width:1200px;min-width:980px;height:auto}.sysmap figcaption{max-width:60rem;font-size:.94rem;color:var(--sm-ink-2);text-wrap:pretty}.sysmap .fm text{font-family:var(--sm-f-body);font-size:13px;fill:var(--sm-ink-2)}.sysmap .fm .nt{font-size:13.5px;font-weight:600;fill:var(--sm-ink)}.sysmap .fm .nt.big{font-size:17px}.sysmap .fm .ns{font-size:13px;fill:var(--sm-ink-2)}.sysmap .fm .ns.sm{font-size:12px}.sysmap .fm .chip{fill:var(--sm-ink);font-size:12.5px}.sysmap .fm .nt.on-agent{fill:var(--sm-agent-ink)}.sysmap .fm .ns.on-agent{fill:var(--sm-agent-ink-2)}.sysmap .fm .ph{font-size:15.5px;font-weight:600;fill:var(--sm-ink)}.sysmap .fm .ph-acc{fill:var(--sm-accent-ink)}.sysmap .fm .colh{font-family:var(--sm-f-mono);font-size:11.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;fill:var(--sm-ink-3)}.sysmap .fm .ann,.sysmap .fm .lbl{font-size:12.5px;fill:var(--sm-ink-3)}.sysmap .fm .acc-t{font-size:13px;font-weight:600;fill:var(--sm-accent-ink)}.sysmap .fm .note-t{font-size:14px}.sysmap .fm .numt,.sysmap .fm .numt-acc{font-family:var(--sm-f-mono);font-size:11.5px;font-weight:500}.sysmap .fm .numt{fill:var(--sm-bg)}.sysmap .fm .numt-acc{fill:var(--sm-on-accent)}.sysmap .fm .num{fill:var(--sm-ink)}.sysmap .fm .num-acc{fill:var(--sm-accent)}.sysmap .fm .panel{fill:var(--sm-surface)}.sysmap .fm .n-data{fill:var(--sm-data)}.sysmap .fm .n-agent{fill:var(--sm-agent)}.sysmap .fm .n-rule{fill:var(--sm-paper);stroke:var(--sm-ink-2);stroke-width:1.3;stroke-linejoin:round}.sysmap .fm .n-rule-r{fill:var(--sm-paper);stroke:var(--sm-rule);stroke-width:1.2}.sysmap .fm .n-dec{fill:var(--sm-paper);stroke:var(--sm-ink);stroke-width:1.4;stroke-linejoin:round}.sysmap .fm .n-out{fill:var(--sm-paper);stroke:var(--sm-ink-3);stroke-width:1.1}.sysmap .fm .n-repo{fill:var(--sm-data);stroke:var(--sm-ink-2);stroke-width:1.3;stroke-linejoin:round}.sysmap .fm .badge{fill:var(--sm-badge);stroke:var(--sm-rule);stroke-width:1}.sysmap .fm .ic-ink{color:var(--sm-ink)}.sysmap .fm .ic-ink2{color:var(--sm-ink-2)}.sysmap .fm .c{fill:none;stroke:var(--sm-ink-3);stroke-width:1.3}.sysmap .fm .hair{fill:none;stroke:var(--sm-ink-3);stroke-width:1}.sysmap .fm .flow{fill:none;stroke:var(--sm-ink);stroke-width:1.7}.sysmap .fm .ah{fill:var(--sm-ink-3)}.sysmap .fm .ah-flow{fill:var(--sm-ink)}.sysmap .fm .ah-acc{fill:var(--sm-accent)}.sysmap .fm .dot{fill:var(--sm-ink-3)}.sysmap .fm .dot-acc{fill:var(--sm-accent)}.sysmap .fm .loop{fill:none;stroke:var(--sm-accent);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.sysmap .fm .loop-b{fill:none;stroke:var(--sm-accent);stroke-width:2.6}.sysmap .fm .loop-beads{fill:none;stroke:var(--sm-bead);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:.1 18;animation:sm-beads 1.6s linear infinite}@keyframes sm-beads{to{stroke-dashoffset:-18.1}}@media (prefers-reduced-motion:reduce){.sysmap .fm .loop-beads{animation:none}}.sysmap .sm-rules{display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem 2rem;margin:.4rem 0 0;padding:0;list-style:none;font-size:.93rem;line-height:1.5;color:var(--sm-ink-2)}.sysmap .sm-rules li{padding-top:.7rem;border-top:1px solid var(--sm-rule);min-width:0}.sysmap .sm-rk{display:block;margin-bottom:.25rem;font-family:var(--sm-f-mono);font-size:.72rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--sm-ink)}@media (min-width:720px){.sysmap .sm-rules{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1180px){.sysmap .sm-rules{grid-template-columns:repeat(4,minmax(0,1fr))}}.sysmap .sm-phases{display:grid;gap:1.2rem}.sysmap .sm-plist{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--sm-ink-3)}.sysmap .sm-phase{display:grid;align-content:start;grid-template-columns:2.4rem minmax(0,1fr);column-gap:.6rem;row-gap:.3rem;padding-block:1.05rem 1.15rem;border-bottom:1px solid var(--sm-rule)}.sysmap .sm-pn{grid-row:1/span 2;font-family:var(--sm-f-mono);font-size:.82rem;font-weight:500;color:var(--sm-ink-3);padding-top:.15rem}.sysmap .sm-phase h3{font-size:1.08rem;font-weight:600;letter-spacing:-.01em}.sysmap .sm-phase p{font-size:.95rem;color:var(--sm-ink-2);text-wrap:pretty}.sysmap .sm-phase.is-loop .sm-pn,.sysmap .sm-phase.is-loop h3{color:var(--sm-accent-ink)}@media (min-width:760px){.sysmap .sm-plist{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2.5rem}}@media (min-width:1240px){.sysmap .sm-plist{grid-template-columns:repeat(4,minmax(0,1fr))}}.sysmap .sm-diff{background:var(--sm-slab);border-radius:8px;padding:clamp(22px,3.4vw,46px) clamp(18px,3.4vw,46px) clamp(26px,3.8vw,52px);display:grid;gap:1.4rem}.sysmap .sm-diff,.sysmap .sm-diff h2,.sysmap .sm-diff h3{color:var(--sm-slab-ink)}.sysmap .sm-dlist{display:grid;grid-template-columns:minmax(0,1fr);gap:1.2rem;margin:0;padding:0;list-style:none}@media (min-width:700px){.sysmap .sm-dlist{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.7rem 2.5rem}}@media (min-width:1180px){.sysmap .sm-dlist{grid-template-columns:repeat(5,minmax(0,1fr));gap:2rem}}.sysmap .sm-dlist li{padding-top:.9rem;border-top:1px solid var(--sm-slab-rule);min-width:0}.sysmap .sm-dn{font-family:var(--sm-f-mono);font-size:.78rem;font-weight:500;color:var(--sm-slab-ink-2)}.sysmap .sm-dlist h3{margin:.4rem 0 .45rem;font-size:1.1rem;font-weight:600;line-height:1.25;letter-spacing:-.01em}.sysmap .sm-dlist p{font-size:.93rem;line-height:1.5;color:var(--sm-slab-ink-2);text-wrap:pretty}