/* Native decorative light only, confined to the personal-node illustration. */
.possibilities-section #feature-panel-vps>.node-pulse {
 position:absolute; inset:0; z-index:1; display:block; width:100%; height:100%;
 overflow:hidden; pointer-events:none; opacity:0;
}
.possibilities-section #feature-panel-vps>.node-pulse[data-node-pulse-ready] { opacity:1; }
.node-pulse * { pointer-events:none; }
.node-pulse path { fill:none; stroke-linecap:round; stroke-linejoin:round; }
.node-pulse .node-pulse-track { stroke:#9cdaff; stroke-width:1.2; opacity:.36; }
.node-pulse .node-pulse-signal {
 stroke:#e1f5ff; stroke-width:2.4; stroke-dasharray:12 88; stroke-dashoffset:14;
 opacity:0; animation:node-pulse-travel-r3 4.8s ease-in-out infinite;
 animation-play-state:paused;
}
.node-pulse .node-pulse-glow { stroke:#66baff; stroke-width:7; }
.node-pulse .node-pulse-source { fill:#b2e4ff; opacity:.6; }
.node-pulse .node-pulse-arrival { fill:#8bceff; opacity:.18; }
.node-pulse[data-node-pulse-running] .node-pulse-signal { animation-play-state:running; }
.node-pulse[data-node-pulse-static] .node-pulse-signal { display:none; }
@keyframes node-pulse-travel-r3 {
 0% { stroke-dashoffset:14; opacity:0; }
 12% { opacity:.75; }
 76% { opacity:.75; }
 90%,100% { stroke-dashoffset:-100; opacity:0; }
}
.node-pulse .node-pulse-glow { animation-name:node-pulse-glow-r3; }
@keyframes node-pulse-glow-r3 {
 0% { stroke-dashoffset:14; opacity:0; }
 12% { opacity:.16; }
 76% { opacity:.16; }
 90%,100% { stroke-dashoffset:-100; opacity:0; }
}
@media(prefers-reduced-motion:reduce),(max-width:620px) {
 .node-pulse .node-pulse-signal { display:none; animation:none; }
}
