.nsd{--card:rgb(var(--color-ink-raised));--fg:rgb(var(--color-paper));--muted:rgb(var(--color-slate));--line:rgb(var(--color-line));--chip:rgb(var(--color-ink));--chipfg:rgb(var(--color-paper));--gl:rgb(var(--color-paper));font-family:var(--font-space-grotesk),system-ui,sans-serif}.nsd *{box-sizing:border-box}.nsd-card{position:relative;border-radius:1rem;border:1px solid var(--line);overflow:hidden;background:radial-gradient(80% 55% at 40% 100%,rgb(var(--color-violet)/.28),transparent 70%),var(--card)}.nsd-card:focus-visible{outline:2px solid rgb(var(--color-blue));outline-offset:3px}.nsd-art{overflow-x:auto}.nsd svg{display:block;width:100%;height:auto;overflow:visible}.nsd .lbl-t{font-weight:700;font-size:16px;font-family:inherit;fill:var(--fg)}.nsd .lbl-s{font-weight:500;font-size:12.5px;font-family:inherit;fill:var(--muted)}.nsd .tl{font-weight:600;font-size:12px;font-family:inherit;fill:var(--fg);text-anchor:middle;paint-order:stroke;stroke:var(--card);stroke-width:3px;stroke-linejoin:round}.nsd .chip rect{fill:var(--chip);stroke:var(--line)}.nsd .chip text{font-weight:700;font-size:11.5px;font-family:inherit;fill:var(--chipfg)}.nsd .tb{fill:var(--card)}.nsd .pk{fill:var(--gl)}.nsd .gly{fill:none;stroke:var(--gl);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.nsd .gly .f,.nsd .gly text{fill:var(--gl);stroke:none}.nsd .gly text{font-weight:700;font-size:12px;font-family:inherit;text-anchor:middle}.nsd .flow,.nsd .rail{stroke-dasharray:4 6;fill:none}.nsd .sp{transition:transform .7s cubic-bezier(.2,.8,.2,1)}.nsd-card:focus-within .s1,.nsd-card:hover .s1{transform:translateY(24px)}.nsd-card:focus-within .s3,.nsd-card:hover .s3{transform:translateY(-20px)}.nsd-card:focus-within .sc,.nsd-card:hover .sc{transform:translateY(-14px)}.nsd .drop,.nsd .fade,.nsd .rise{opacity:0}.nsd.play .rise{animation:nsd-rise 1s var(--d) cubic-bezier(.2,.8,.2,1) forwards}.nsd.play .fade{animation:nsd-fade .7s var(--d) ease-out forwards}.nsd.play .drop{animation:nsd-drop .8s var(--d) cubic-bezier(.3,.1,.3,1) forwards}.nsd.play .bob{animation:nsd-bob 4s var(--b) ease-in-out infinite}.nsd.play .flow,.nsd.play .rail{animation:nsd-dash 1.1s linear infinite}.nsd.play .halo{animation:nsd-halo 4s ease-in-out 1.6s infinite}.nsd.down .rise{opacity:0}.nsd.down.play .rise{animation-name:nsd-rise-down}.nsd.down.play .drop{animation-name:nsd-drop-up}.nsd.down .nsd-card:focus-within .s1,.nsd.down .nsd-card:hover .s1{transform:translateY(-20px)}.nsd.down .nsd-card:focus-within .s3,.nsd.down .nsd-card:hover .s3{transform:translateY(24px)}.nsd.down .nsd-card:focus-within .sc,.nsd.down .nsd-card:hover .sc{transform:translateY(14px)}@keyframes nsd-rise-down{0%{opacity:0;transform:translateY(-70px)}to{opacity:1;transform:none}}@keyframes nsd-drop-up{0%{opacity:0;transform:translateY(44px)}to{opacity:1;transform:none}}@keyframes nsd-fade{to{opacity:1}}@keyframes nsd-rise{0%{opacity:0;transform:translateY(70px)}to{opacity:1;transform:none}}@keyframes nsd-drop{0%{opacity:0;transform:translateY(-44px)}to{opacity:1;transform:none}}@keyframes nsd-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes nsd-dash{to{stroke-dashoffset:-20}}@keyframes nsd-halo{0%,to{opacity:.35}50%{opacity:.7}}@media (max-width:640px){.nsd svg{min-width:560px}}@media (prefers-reduced-motion:reduce){.nsd *{animation:none!important;transition:none!important}.nsd .drop,.nsd .fade,.nsd .rise{opacity:1}}