/* <vivid-diagram> — the default skin, from @senserva/vivid-js@0.0.1 on 2026-10-27.
   GENERATED. Do not edit in a consuming repo: change src/vivid-diagram.css in
   Senserva/vivid-js, re-run `npm run bundle:diagram`, and re-vendor BOTH files.
   Needs the Vivid tokens beside it — every value here is a --sv-* token. */
vivid-diagram{--vivid-diagram-node-bg: var(--sv-surface);--vivid-diagram-node-ink: var(--sv-text-primary);--vivid-diagram-node-line: var(--sv-grid);--vivid-diagram-accent: var(--sv-accent);--vivid-diagram-wire: var(--sv-text-secondary);--vivid-diagram-label-ink: var(--sv-text-secondary);--vivid-diagram-radius: var(--sv-corner-radius);display:block;position:relative;overflow-x:auto;overflow-y:hidden}vivid-diagram>ul,vivid-diagram>ol{list-style:none;margin:0;padding:0}vivid-diagram>ul>li,vivid-diagram>ol>li{margin:0}vivid-diagram .vdiag-wires{position:absolute;inset:0;pointer-events:none;overflow:visible}vivid-diagram .vdiag-wire{fill:none;stroke:var(--vivid-diagram-wire);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}vivid-diagram .vdiag-arrowhead{fill:var(--vivid-diagram-wire)}vivid-diagram .vdiag-wire.is-accent{stroke:var(--sv-accent)}vivid-diagram .vdiag-wire.is-good{stroke:var(--sv-good)}vivid-diagram .vdiag-wire.is-critical{stroke:var(--sv-severity-critical)}vivid-diagram .vdiag-wire.is-high{stroke:var(--sv-severity-high)}vivid-diagram .vdiag-wire.is-medium{stroke:var(--sv-severity-medium)}vivid-diagram .vdiag-wire.is-low{stroke:var(--sv-severity-low)}vivid-diagram .vdiag-wire.is-neutral{stroke:var(--vivid-diagram-wire)}vivid-diagram .vdiag-arrowhead.is-accent{fill:var(--sv-accent)}vivid-diagram .vdiag-arrowhead.is-good{fill:var(--sv-good)}vivid-diagram .vdiag-arrowhead.is-critical{fill:var(--sv-severity-critical)}vivid-diagram .vdiag-arrowhead.is-high{fill:var(--sv-severity-high)}vivid-diagram .vdiag-arrowhead.is-medium{fill:var(--sv-severity-medium)}vivid-diagram .vdiag-arrowhead.is-low{fill:var(--sv-severity-low)}vivid-diagram .vdiag-arrowhead.is-neutral{fill:var(--vivid-diagram-wire)}vivid-diagram[data-scaled]>ul,vivid-diagram[data-scaled]>ol,vivid-diagram[data-scaled]>.vdiag-wires{transform:scale(var(--vivid-diagram-scale, 1));transform-origin:0 0}vivid-diagram .vdiag-label{fill:var(--vivid-diagram-label-ink);font-family:var(--sv-font-stack);font-size:var(--sv-font-micro);stroke:var(--sv-background);stroke-width:4;paint-order:stroke fill}vivid-diagram .vdiag-node{display:inline-block;box-sizing:border-box;background:var(--vivid-diagram-node-bg);color:var(--vivid-diagram-node-ink);border:1px solid var(--vivid-diagram-node-line);border-radius:var(--vivid-diagram-radius);padding:calc(var(--sv-spacing) * 1.5) calc(var(--sv-spacing) * 2);font-family:var(--sv-font-stack);font-size:var(--sv-font-small);line-height:1.35;white-space:nowrap}vivid-diagram .vdiag-node.is-primary{border-color:var(--vivid-diagram-accent);border-width:2px}vivid-diagram .vdiag-node.is-critical{border-color:var(--sv-severity-critical);border-width:2px}vivid-diagram .vdiag-node.is-high{border-color:var(--sv-severity-high);border-width:2px}vivid-diagram .vdiag-node.is-good{border-color:var(--sv-good);border-width:2px}vivid-diagram .vdiag-node.is-external{border-style:dashed}@media(prefers-reduced-motion:no-preference){vivid-diagram>ul>li,vivid-diagram>ol>li{transition:left .18s ease,top .18s ease}}
