
/* v9.13.8 — readable station relationship links, rendered above the graph. */
.graph-edge-pop{position:absolute;z-index:10;display:none;width:min(270px,calc(100% - 16px));padding:12px 13px;background:#10202bf5;border:1px solid #56829a;box-shadow:0 14px 36px #000c;color:#dceef4;pointer-events:none;overflow-wrap:anywhere;animation:graph-edge-reveal .17s ease-out both}
.graph-edge-pop.visible{display:block}
.graph-edge-pop.pinned{pointer-events:auto;border-color:#b8a47a}
.graph-edge-pop .edge-kicker{font:9px Consolas,monospace;letter-spacing:.14em;color:#82b8cd;margin-bottom:8px}
.graph-edge-pop .edge-pair{font:bold 12px Georgia,serif;color:#f2e1c3;line-height:1.45;padding-right:17px}
.graph-edge-pop .edge-sep{color:#65b7d5;margin:0 3px}
.graph-edge-pop .edge-rel-row{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:9px;padding-top:8px;border-top:1px solid #28495b;font:10px Consolas,monospace}
.graph-edge-pop .edge-rel-row span{color:#a0bac9;font-size:10px}
.graph-edge-pop .edge-rel-row strong{white-space:nowrap;font-size:13px}
.graph-edge-pop .edge-rel-row small{font-size:9px;white-space:nowrap}
.graph-edge-pop .edge-actions{display:none;gap:7px;flex-wrap:wrap;margin-top:12px}
.graph-edge-pop.pinned .edge-actions{display:flex}
.graph-edge-pop .edge-actions button{background:#092737;border:1px solid #365a6d;padding:6px 7px;color:#c0dce9;font:9px Consolas,monospace;cursor:pointer}
.graph-edge-pop .edge-actions button:hover{background:#1a4055;border-color:#79c6e1}
.graph-edge-pop .edge-close{display:none;position:absolute;right:9px;top:8px;border:0;background:none;color:#a0c7d8;font-size:16px;cursor:pointer}
.graph-edge-pop.pinned .edge-close{display:block}
.network-stage canvas:focus-visible{outline:2px solid #65c4e3;outline-offset:-3px}
@keyframes graph-edge-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.graph-edge-pop{animation:none}}
