/* Background map: gradient backdrop + keyframes used by bg-map.js. */

#particle-div.bg-map {
    background:
        linear-gradient(180deg, #0c0d18 0%, #10111f 50%, #0c0d18 100%);
    overflow: hidden;
    pointer-events: none;
}

#particle-div.bg-map .bg-svg {
    width: 100%;
    height: 100%;
    display: block;
}

@keyframes bgRouteDash {
    from { stroke-dashoffset: 0;    }
    to   { stroke-dashoffset: -400; }
}

@keyframes bgCityPulse {
    0%   { r: 4;  opacity: 0.85; }
    100% { r: 26; opacity: 0;    }
}

@media (prefers-reduced-motion: reduce) {
    #particle-div.bg-map .bg-svg *,
    #particle-div.bg-map .bg-svg {
        animation: none !important;
        transition: none !important;
    }
}
