.graph-stage{max-width:1080px;margin:0 auto;position:relative}.graph-stage>svg{width:100%;height:auto;display:block;overflow:visible}.graph-stage.in .gedge{animation:.9s forwards gedge}.graph-stage.in .gnode{animation:.55s cubic-bezier(.2,1.5,.4,1) both gnodeIn}.graph-stage.in .gedge2{animation:15s linear infinite gmarch}.graph-stage.in .gedge-grp{animation:.5s both edgeIn}@media (prefers-reduced-motion:reduce){.graph-stage .gnode{opacity:1;animation:none}.graph-stage .gnode .ring{animation:none}.graph-stage .gedge{stroke-dashoffset:0;animation:none}.graph-stage .gedge2{opacity:.9;animation:none}.graph-stage .gedge-grp{opacity:1;animation:none}}.graph-stage .gedge{stroke:#ffffff29;stroke-width:1.6px;fill:none;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke .25s}.graph-stage .gedge-grp{opacity:0}.graph-stage .gedge2{fill:none;stroke-width:1.8px;stroke-dasharray:7 6;opacity:.92}.graph-stage .gedge2.addr{stroke:#f59e0b}.graph-stage .gedge2.tender{stroke:#3b82f6}.graph-stage .gedge2.founder{stroke:#22c55e}.graph-stage .gedge2.director{stroke:#8b5cf6}.graph-stage .gnode{transform-box:fill-box;transform-origin:50%;opacity:0}.graph-stage .gnode .ring{animation:5s ease-in-out infinite gFloat}.graph-stage .gncard{filter:drop-shadow(0 12px 24px #00000080)}.graph-stage .glbl{fill:#fff;font-family:Inter,sans-serif;font-size:11.5px;font-weight:700}.graph-stage .gsub{fill:#8b93a3;font-family:Inter,sans-serif;font-size:9px}.graph-stage .gelbl{fill:#7a8294;font-family:Inter,sans-serif;font-size:9.5px;font-weight:600}.graph-stage .gelbl.addr{fill:#f8b14c;font-weight:700}.graph-stage .gelbl.tender{fill:#6aa8ff;font-weight:700}.graph-stage .gelbl.founder{fill:#4ade80;font-weight:700}.graph-stage .gelbl.director{fill:#a78bfa;font-weight:700}.graph-stage .gelblbg{fill:#14161b}.graph-stage .gchip{letter-spacing:.04em;font-family:Inter,sans-serif;font-size:8.5px;font-weight:800}.glegend{flex-wrap:wrap;justify-content:center;gap:22px;margin-top:30px;display:flex}.glegend span{color:#9aa3b2;align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.glegend i{border-radius:4px;width:12px;height:12px;display:inline-block}.glegend i.dash{border-top:2px dashed;border-radius:0;width:20px;height:0;background:0 0!important}.glegend i.solid{border-radius:2px;width:20px;height:2px;background:#fff6!important}@keyframes gedge{to{stroke-dashoffset:0}}@keyframes gnodeIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes gFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes edgeIn{0%{opacity:0}to{opacity:1}}@keyframes gmarch{to{stroke-dashoffset:-280px}}.gsch{width:100%;max-width:900px;height:auto;margin:0 auto;display:block;overflow:visible}.gsch__ring{fill:none;stroke:#ffffff14;stroke-dasharray:4 9}.gsch__edge{stroke:var(--c);stroke-width:2px;stroke-opacity:.55;stroke-linecap:round;stroke-dasharray:calc(var(--len)*1px);stroke-dashoffset:calc(var(--len)*1px)}.gsch__pulse{stroke:var(--c);stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:16 calc(var(--len)*1px);stroke-dashoffset:16px;opacity:0}.gsch__node{opacity:0;transform:scale(.4)}.gsch__node circle:first-child,.gsch__node rect{fill:#1d2433;stroke:var(--c);stroke-width:2px}.gsch__dot{fill:var(--c)}.gsch__core rect{fill:var(--primary)}.gsch__glyph{fill:none;stroke:#fff;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.gsch__wave{fill:none;stroke:var(--primary);stroke-width:2px;opacity:0;transform-origin:400px 220px}.gsch.is-in .gsch__edge{animation:gschDraw .9s calc(.3s + var(--i)*.12s) ease-out forwards}.gsch.is-in .gsch__node{animation:gschPop .55s calc(.8s + var(--i)*.12s) cubic-bezier(.34, 1.56, .64, 1) forwards}.gsch.is-in .gsch__pulse{animation:gschPulse 2.8s calc(1.8s + var(--i)*.37s) linear infinite}.gsch.is-in .gsch__wave{animation:2.6s ease-out 1s infinite gschWave}@media (prefers-reduced-motion:reduce){.gsch.is-in .gsch__edge,.gsch.is-in .gsch__node{animation-duration:10ms;animation-delay:0s}.gsch.is-in .gsch__pulse,.gsch.is-in .gsch__wave{animation:none}}@keyframes gschDraw{to{stroke-dashoffset:0}}@keyframes gschPop{to{opacity:1;transform:none}}@keyframes gschPulse{0%{stroke-dashoffset:16px;opacity:0}12%,85%{opacity:1}to{stroke-dashoffset:calc(var(--len)*-1px);opacity:0}}@keyframes gschWave{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}
