[data-relay-diagram] { position: relative; isolation: isolate; }
[data-connector-layer] { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; z-index: -1; }
.connector-line { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linejoin: round; stroke-linecap: round; }
.connector-head { fill: currentColor; }
[data-relay-diagram="context"] .connector-line,
[data-relay-diagram="memory"] .connector-line,
[data-relay-diagram="constellation"] .connector-line,
.connector-line.connector-arrow { stroke-linecap: butt; }
.connector-emphasis { color: var(--blue); }
[data-relay-diagram="constellation"] .connector-line,
[data-relay-diagram="constellation"] .connector-head { color: rgb(245 241 237 / .28); }
[data-relay-diagram="constellation"] .connector-emphasis { color: var(--yellow); }
[data-relay-diagram="constellation"] .connector-source { color: var(--yellow); }
[data-relay-diagram="constellation"] .connector-target { color: var(--red); }
@media (prefers-reduced-motion: no-preference) {
  [data-relay-diagram="constellation"][data-orchestration-phase="notice"] .connector-line.connector-source,
  [data-relay-diagram="constellation"][data-orchestration-phase="question"] .connector-line.connector-source { stroke-dasharray: 3 8; animation: connector-flow-in 260ms linear 2; }
  [data-relay-diagram="constellation"][data-orchestration-phase="steer"] .connector-line.connector-target { stroke-dasharray: 3 8; animation: connector-flow-out 260ms linear 2; }
}
@keyframes connector-flow-out { to { stroke-dashoffset: -11; } }
@keyframes connector-flow-in { to { stroke-dashoffset: 11; } }
[data-relay-diagram="route"] .connector-line { stroke: var(--muted); }
