.sa-graph{background:var(--brand-surface-alt);color:var(--brand-ink);border-top:1px solid var(--brand-border);padding:clamp(22px,2.8vw,32px) clamp(16px,5vw,56px) clamp(24px,3vw,36px)}.sa-graph__bar{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:16px;display:flex}.sa-graph__bar h2{font-family:var(--brand-font-heading);letter-spacing:.02em;color:var(--brand-muted);margin:0;font-size:13px;font-weight:700}.sa-graph__filters{flex-wrap:wrap;gap:6px;display:flex}.sa-graph__filters button{font:inherit;color:var(--brand-muted);background:var(--brand-surface);border:1px solid var(--brand-border);cursor:pointer;border-radius:999px;padding:6px 13px;font-size:12.5px;transition:color .2s,background .2s,border-color .2s}.sa-graph__filters button:hover{color:var(--brand-ink);border-color:var(--brand-ink)}.sa-graph__filters button.is-on{color:var(--brand-accent-ink);background:var(--brand-accent);border-color:var(--brand-accent);font-weight:600}.sa-graph__filters button:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}.sa-graph__scroll{scrollbar-width:thin;overflow-x:auto}.sa-graph svg{width:100%;min-width:760px;height:auto;font-family:var(--brand-font-body);display:block}.sa-graph__link{stroke-linecap:round;transition:opacity .2s}.sa-graph__link.is-in_room{stroke:color-mix(in srgb, var(--brand-ink) 16%, transparent);stroke-width:.7px}.sa-graph__link.is-in_series{stroke:color-mix(in srgb, var(--brand-ink) 26%, transparent);stroke-width:.9px}.sa-graph__link.is-requires{stroke:var(--brand-accent);stroke-width:2px;opacity:.9}.sa-graph__link.is-dim{opacity:.06}.sa-graph__dot{fill:color-mix(in srgb, var(--brand-accent) 55%, var(--brand-surface));cursor:pointer;transition:fill .2s,opacity .2s}.sa-graph__dot.is-needy{fill:var(--brand-accent);r:5.5}.sa-graph__dot:hover,.sa-graph__dot.is-focused{fill:var(--brand-ink)}.sa-graph__dot.is-dim{opacity:.16}.sa-graph__pin{fill:none;stroke:var(--brand-accent);stroke-width:1.5px;opacity:.55;animation:1.8s ease-out infinite sa-graph-pulse}@keyframes sa-graph-pulse{0%{r:8;opacity:.6}to{r:18;opacity:0}}@media (prefers-reduced-motion:reduce){.sa-graph__pin{opacity:.5;animation:none}}.sa-graph__hub circle{fill:var(--brand-accent)}.sa-graph__hub.is-series circle{fill:color-mix(in srgb, var(--brand-accent) 45%, var(--brand-surface))}.sa-graph__hub text{fill:var(--brand-ink);pointer-events:none;font-size:12px;font-weight:700}.sa-graph__hub.is-series text{fill:var(--brand-muted);font-size:10px;font-weight:500}.sa-graph__hub.is-dim{opacity:.22}.sa-graph__read{min-height:22px;color:var(--brand-muted);flex-wrap:wrap;align-items:baseline;gap:10px;margin:12px 0 0;font-size:13px;display:flex}.sa-graph__read strong{color:var(--brand-ink);font-weight:600}.sa-graph__read em{font-style:italic}
