.cv-hero-root{--bg:#fff;--blue:#f34b13;--blue-2:#bf2f00;--green:#00b81c;--amber:#e5a000;--crimson:#e5484d;--c-indexer:rgba(0,0,0,.55);--c-frontend:rgba(0,0,0,.55);--c-backend:rgba(0,0,0,.55);--text:rgba(0,0,0,.85);--text-dim:rgba(0,0,0,.52);--text-mono:rgba(0,0,0,.55);--glass:#fff;--hairline:rgba(0,0,0,.1);--lane-fill:rgba(0,0,0,.02);--lane-stroke:rgba(0,0,0,.08);--focus-fill:rgba(243,75,19,.1);--focus-stroke:rgba(243,75,19,.9)}.cv-hero-root .hero-diagram{width:100%;max-width:1200px;aspect-ratio:60/31;position:relative;isolation:isolate;margin:0 auto}.cv-hero-root .hero-diagram svg{width:100%;height:100%;display:block;user-select:none;overflow:visible}.cv-hero-root .hero-diagram:before{content:"";position:absolute;inset:0;background:radial-gradient(900px 420px at 50% 42%,rgba(243,75,19,.05),transparent 68%);z-index:-1;border-radius:12px;pointer-events:none}.cv-hero-root .t-label{font:600 13px/1 Inter,system-ui,sans-serif;fill:var(--text);letter-spacing:.02em}.cv-hero-root .t-sub{font:500 11px/1 Inter,system-ui,sans-serif;fill:var(--text-dim);letter-spacing:.02em}.cv-hero-root .t-lane{font:600 14px/1 Inter,system-ui,sans-serif;fill:var(--text);letter-spacing:.08em;text-transform:uppercase}.cv-hero-root .t-lane-sub{font:400 11.5px/1 Inter,system-ui,sans-serif;fill:var(--text-dim)}.cv-hero-root .t-mono{font:500 12px/1 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;fill:var(--text);letter-spacing:.02em}.cv-hero-root .t-mono-s{fill:var(--text-mono)}.cv-hero-root .t-mono-dim,.cv-hero-root .t-mono-s{font:500 10.5px/1 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.02em}.cv-hero-root .t-mono-dim{fill:var(--text-dim)}.cv-hero-root .t-mark{font:700 22px/1 Inter,system-ui,sans-serif;fill:var(--text);letter-spacing:.06em}.cv-hero-root .card-bg{fill:var(--glass);stroke:var(--hairline);stroke-width:1}.cv-hero-root .icon{fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.95}.cv-hero-root .core-bg{fill:var(--glass);stroke:var(--hairline);stroke-width:1}.cv-hero-root .lane{fill:var(--lane-fill);stroke:var(--lane-stroke);stroke-width:1;transition:fill .22s ease,stroke .22s ease,opacity .24s ease}.cv-hero-root .fs-box,.cv-hero-root .lane-clickable{cursor:pointer}.cv-hero-root .fs-box text,.cv-hero-root .lane-clickable text{pointer-events:none}.cv-hero-root .fs-box .fs-bg{cursor:pointer;fill:var(--glass);stroke:rgba(0,0,0,.1);stroke-width:1;transition:fill .22s ease,stroke .22s ease,opacity .24s ease}.cv-hero-root .fs-box .fs-name{font:600 12px/1 Inter,system-ui,sans-serif;fill:var(--text);letter-spacing:.06em;text-transform:uppercase}.cv-hero-root .fs-box .fs-tag{font:500 10px/1.2 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;fill:var(--text-dim);letter-spacing:.02em}.cv-hero-root .flow{fill:none;stroke-width:1.4;opacity:.5;stroke-dasharray:4 6;stroke-linecap:round;filter:drop-shadow(0 0 4px rgba(96,165,250,.45));animation:flowDash 1.6s linear infinite;pointer-events:none}.cv-hero-root .flow.exit-rail{opacity:.62;stroke-width:1.6;stroke-dasharray:5 7}@keyframes flowDash{to{stroke-dashoffset:-10}}.cv-hero-root .flow.cordoned{stroke-dasharray:4 4;stroke:var(--crimson);opacity:.42;animation:none;filter:none}.cv-hero-root .flow.slow{stroke-width:1;opacity:.32;animation-duration:2.6s}.cv-hero-root .cache-off-rails,.cv-hero-root svg.cache-off .cache-on-rails{display:none}.cv-hero-root svg.cache-off .cache-off-rails{display:inline}.cv-hero-root svg.cache-off #rail-c-m{display:none}.cv-hero-root .dot{transform-box:fill-box;transform-origin:center}.cv-hero-root .dot.healthy{fill:var(--green);filter:drop-shadow(0 0 3px rgba(0,184,28,.5));animation:heartbeat 2.6s ease-in-out infinite}.cv-hero-root .dot.slow{fill:var(--amber);filter:drop-shadow(0 0 3px rgba(229,160,0,.45));animation:heartbeat 3.4s ease-in-out infinite}.cv-hero-root .dot.cordoned{fill:var(--crimson);opacity:.55;filter:none;animation:none}@keyframes heartbeat{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.92)}}.cv-hero-root .up-node{cursor:pointer}.cv-hero-root .up-node .card-bg{transition:stroke .2s ease,fill .2s ease,opacity .2s ease}.cv-hero-root .up-node.cordoned .card-bg{opacity:.5;stroke:hsla(0,91%,71%,.3)}.cv-hero-root .up-node.cordoned text{opacity:.55}.cv-hero-root .up-node.cordoned .dot{fill:var(--crimson);opacity:.55;filter:none;animation:none}.cv-hero-root .up-node.cordoned:hover .card-bg{stroke:hsla(0,91%,71%,.55);opacity:.7}.cv-hero-root .up-node .slider-track{stroke:rgba(0,0,0,.16);stroke-width:2;stroke-linecap:round}.cv-hero-root .up-node .slider-fill{stroke:var(--blue);stroke-width:2;stroke-linecap:round;opacity:.85}.cv-hero-root .up-node.cordoned .slider-fill{stroke:var(--crimson);opacity:.55}.cv-hero-root .up-node .slider-thumb{fill:#fff;stroke:var(--blue);stroke-width:1.2;cursor:ew-resize}.cv-hero-root .up-node.cordoned .slider-thumb{stroke:var(--crimson);opacity:.6}.cv-hero-root .cordon-toggle{cursor:pointer}.cv-hero-root .cordon-toggle .ct-bg{fill:rgba(0,0,0,.03);stroke:rgba(0,0,0,.14);stroke-width:1;transition:fill .2s ease,stroke .2s ease}.cv-hero-root .cordon-toggle:hover .ct-bg{stroke:rgba(243,75,19,.45);fill:rgba(243,75,19,.05)}.cv-hero-root .cordon-toggle.cordoned .ct-bg{fill:hsla(0,91%,71%,.1);stroke:hsla(0,91%,71%,.5)}.cv-hero-root .cordon-toggle.cordoned:hover .ct-bg{stroke:hsla(0,91%,71%,.7)}.cv-hero-root .cordon-toggle .ct-knob{fill:var(--green);filter:drop-shadow(0 0 4px rgba(52,211,153,.6));transition:transform .24s cubic-bezier(.4,0,.2,1),fill .22s ease;transform-box:fill-box}.cv-hero-root .cordon-toggle.cordoned .ct-knob{transform:translateY(22px);fill:var(--crimson);filter:drop-shadow(0 0 4px rgba(248,113,113,.6))}.cv-hero-root .cordon-toggle .ct-label{font:500 9px/1 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;fill:rgba(0,0,0,.45);letter-spacing:.06em;text-anchor:middle}.cv-hero-root .toggle{cursor:pointer}.cv-hero-root .toggle .switch-track{transition:fill .2s ease,stroke .2s ease;fill:hsla(0,0%,100%,.1);stroke:hsla(0,0%,100%,.2)}.cv-hero-root .toggle.on .switch-track{fill:rgba(52,211,153,.18);stroke:rgba(52,211,153,.55)}.cv-hero-root .toggle:hover .switch-track{stroke-opacity:.7}.cv-hero-root .toggle .switch-knob{transition:transform .24s cubic-bezier(.4,0,.2,1),fill .2s ease,filter .2s ease;transform-box:fill-box}.cv-hero-root .toggle.off .switch-knob{transform:translateX(0);fill:hsla(0,0%,100%,.55);filter:none}.cv-hero-root .toggle.on .switch-knob{transform:translateX(20px);fill:var(--green);filter:drop-shadow(0 0 4px rgba(52,211,153,.7))}.cv-hero-root .toggle .toggle-label{font:500 11px/1 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.04em;fill:var(--text-dim)}.cv-hero-root .toggle .toggle-state{font:600 11px/1 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.04em}.cv-hero-root .toggle.on .toggle-state{fill:var(--green)}.cv-hero-root .toggle.off .toggle-state{fill:var(--text-dim)}.cv-hero-root .hint-copy{fill:rgba(0,0,0,.45)}.cv-hero-root .hint-copy,.cv-hero-root .reset-link{font:500 11px/1 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.02em}.cv-hero-root .reset-link{fill:rgba(0,0,0,.5);cursor:pointer}.cv-hero-root .reset-link:hover{fill:var(--text)}.cv-hero-root #reset-group{opacity:0;transition:opacity .24s ease;pointer-events:none}.cv-hero-root #reset-group.show{opacity:1;pointer-events:auto}.cv-hero-root .annot-check{fill:var(--green);filter:drop-shadow(0 0 3px rgba(52,211,153,.45))}.cv-hero-root .annot-text{fill:rgba(0,0,0,.62);transition:opacity .32s ease}.cv-hero-root #annot-line{font:500 14px/1 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.02em}.cv-hero-root #annot-line.swapping .annot-text{opacity:.2}.cv-hero-root .pulse{mix-blend-mode:normal;pointer-events:none}.cv-hero-root .pulse.backend,.cv-hero-root .pulse.blue,.cv-hero-root .pulse.frontend,.cv-hero-root .pulse.indexer{fill:var(--blue);filter:drop-shadow(0 0 4px rgba(243,75,19,.65))}.cv-hero-root .pulse.green{fill:var(--green);filter:drop-shadow(0 0 5px rgba(52,211,153,.95)) drop-shadow(0 0 12px rgba(52,211,153,.45))}.cv-hero-root .pulse.amber{fill:var(--amber);filter:drop-shadow(0 0 5px rgba(251,191,36,.95)) drop-shadow(0 0 12px rgba(251,191,36,.45))}.cv-hero-root .pulse.crimson{fill:var(--crimson);filter:drop-shadow(0 0 5px rgba(248,113,113,.95)) drop-shadow(0 0 10px rgba(248,113,113,.4))}.cv-hero-root .burst{fill:none;stroke-width:1.5;pointer-events:none}.cv-hero-root .burst.green{stroke:var(--green);filter:drop-shadow(0 0 6px rgba(52,211,153,.7))}.cv-hero-root .burst.blue{stroke:var(--blue);filter:drop-shadow(0 0 6px rgba(96,165,250,.7))}.cv-hero-root .score-box{fill:rgba(0,0,0,.015);stroke:rgba(0,0,0,.08);stroke-width:1}.cv-hero-root .bar-bg{fill:rgba(0,0,0,.07)}.cv-hero-root .bar{fill:var(--blue);opacity:.9;filter:drop-shadow(0 0 2px rgba(243,75,19,.35));transition:width .32s ease,opacity .24s ease,fill .24s ease}.cv-hero-root .bar.slow{fill:var(--amber);filter:drop-shadow(0 0 3px rgba(251,191,36,.55))}.cv-hero-root .bar.cordoned{opacity:.3;filter:none;fill:var(--crimson)}.cv-hero-root .bar-name{font:600 10px/1 Inter,system-ui,sans-serif;fill:rgba(0,0,0,.78);letter-spacing:.02em}.cv-hero-root .bar-score{font:500 9.5px/1 JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;fill:rgba(0,0,0,.45);letter-spacing:.02em}.cv-hero-root .bar-cell.cordoned .bar-name{fill:rgba(0,0,0,.35)}.cv-hero-root .bar-cell.cordoned .bar-score{fill:hsla(0,91%,71%,.65)}.cv-hero-root svg.focused #clients,.cv-hero-root svg.focused #upstreams,.cv-hero-root svg.focused .hint-copy,.cv-hero-root svg.focused .toggle{opacity:.15}.cv-hero-root svg.focused .flow{opacity:.1;animation-duration:3s}.cv-hero-root svg.focused #core .lane{opacity:.38}.cv-hero-root svg.focused #lane-route{opacity:.32}.cv-hero-root svg.focused #core .t-lane,.cv-hero-root svg.focused #core .t-lane-sub,.cv-hero-root svg.focused .t-mark,.cv-hero-root svg.focused .t-mono-dim{opacity:.4}.cv-hero-root svg.focused .fs-box .fs-bg{opacity:.32}.cv-hero-root svg.focused .fs-box .fs-name,.cv-hero-root svg.focused .fs-box .fs-tag{opacity:.35}.cv-hero-root svg.focused .focus-target,.cv-hero-root svg.focused .focus-target .fs-name,.cv-hero-root svg.focused .focus-target .fs-tag,.cv-hero-root svg.focused .focus-target .t-lane,.cv-hero-root svg.focused .focus-target .t-lane-sub{opacity:1!important}.cv-hero-root svg.focused .focus-target .lane,.cv-hero-root svg.focused .fs-box.focus-target .fs-bg{opacity:1!important;fill:var(--focus-fill);stroke:var(--focus-stroke);stroke-width:2;filter:drop-shadow(0 0 6px rgba(243,75,19,.55)) drop-shadow(0 0 18px rgba(243,75,19,.25))}.cv-hero-root .tooltip{pointer-events:none;opacity:0;transition:opacity .28s ease}.cv-hero-root .tooltip.show{opacity:1}.cv-hero-root .tooltip .tt-bg{fill:hsla(0,0%,100%,.98);stroke:rgba(243,75,19,.35);stroke-width:1.2;filter:drop-shadow(0 4px 16px rgba(0,0,0,.1))}.cv-hero-root .tooltip .tt-text{font:500 12.5px/1.45 Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;fill:rgba(0,0,0,.82);letter-spacing:.005em}.cv-hero-root .tooltip .tt-step circle{fill:var(--amber);stroke:hsla(0,0%,100%,.4);stroke-width:1.2;filter:drop-shadow(0 0 10px rgba(251,191,36,.85)) drop-shadow(0 0 22px rgba(251,191,36,.45))}.cv-hero-root .tooltip .tt-step text{font:700 16px/1 Inter,system-ui,sans-serif;text-anchor:middle}@media (prefers-reduced-motion:reduce){.cv-hero-root .dot,.cv-hero-root .flow{animation:none!important}}@media (max-width:720px){.cv-hero-root .hero-diagram{aspect-ratio:auto;min-height:360px}.cv-hero-root .hero-diagram svg{height:auto}}.cv-hero-root .lane-clickable:hover .lane{fill:rgba(243,75,19,.05);stroke:rgba(243,75,19,.28)}.cv-hero-root .lane.active-blue{fill:rgba(243,75,19,.07);stroke:rgba(243,75,19,.45)}.cv-hero-root .lane.active-green{fill:rgba(0,184,28,.06);stroke:rgba(0,184,28,.4)}.cv-hero-root .lane.active-amber{fill:rgba(229,160,0,.06);stroke:rgba(229,160,0,.45)}.cv-hero-root .fs-box:hover .fs-bg{stroke:rgba(243,75,19,.4);fill:rgba(243,75,19,.04)}.cv-hero-root .fs-box.active .fs-bg{fill:rgba(229,160,0,.08);stroke:rgba(229,160,0,.55)}.cv-hero-root .flow{stroke:var(--blue);opacity:.55;filter:drop-shadow(0 0 2px rgba(243,75,19,.25))}.cv-hero-root .up-node:hover .card-bg{stroke:rgba(243,75,19,.45);fill:rgba(243,75,19,.035)}.cv-hero-root .icon-backend,.cv-hero-root .icon-frontend,.cv-hero-root .icon-indexer{stroke:rgba(0,0,0,.55);filter:none}.cv-hero-root .tooltip .tt-step text{fill:#fff}.cv-hero-root svg.focused .tooltip .tt-bg{stroke:rgba(243,75,19,.45)}