/* Shared map markup uses data-network; country-cycle.js owns its animation. */
.network-visual{height:490px;position:relative;min-width:0}
.network-eyebrow{position:absolute;top:10px;left:18px;color:var(--muted);z-index:1}
.network-map{position:absolute;inset:20px -18px 65px;mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 93%,transparent)}
.network-map>svg,.network-map>img{width:100%;height:100%;object-fit:contain}
.network-map>img{filter:grayscale(1);opacity:.25}
.network-map svg path{fill:#e9eaed!important;stroke:var(--paper)!important;stroke-width:9!important}
.network-map svg #Ocean{fill:transparent!important}
.network-map svg .cycle-covered{fill:#e1e2e6!important;transition:fill 1.3s ease}
.network-map svg .cycle-active{fill:#efb08c!important}
.network-map svg .cycle-covered:hover{fill:#e69a71!important}
.network-map svg .live-link{fill:none!important;stroke:#ce581f!important;stroke-width:16!important;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
.live-connection{pointer-events:none}
.live-halo{fill:#c7470a12}
.live-point{fill:var(--orange);stroke:var(--paper);stroke-width:16}
.live-pulse{fill:#fff;stroke:var(--orange);stroke-width:13}
.network-caption{position:absolute;bottom:67px;left:18px;display:flex;gap:18px;align-items:center}
.caption-number{font-size:48px;line-height:1;font-weight:500;letter-spacing:-.06em;padding-right:18px;border-right:1px solid var(--line)}
.caption-number>span{display:block;font-size:12px;color:var(--muted);letter-spacing:0;margin-top:8px}
.network-caption strong{display:block;font-size:16px;line-height:1.35;font-weight:500;letter-spacing:-.025em}
.network-caption a{display:inline-block;padding:8px 0;font-size:12px;color:var(--orange-dark)}
.network-controls{position:absolute;bottom:0;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--muted);font-size:11px}
.network-controls button{border:0;background:none;color:var(--muted);font-size:12px;min-height:44px;padding:8px;white-space:nowrap}
.network-controls button:hover{color:var(--orange-dark)}
.network-controls button:disabled{cursor:default}
@media(max-width:850px){.network-visual{height:440px}.network-map{inset:12px 0 65px}}
@media(max-width:540px){.network-visual{height:390px}.network-map{inset:15px -12px 72px}.network-caption{left:4px;bottom:58px}.network-caption strong{font-size:14px}.network-caption a{font-size:12px}.caption-number{font-size:40px}.network-controls{left:4px;right:4px;font-size:10px}.network-eyebrow{left:4px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.network-map svg .cycle-covered{transition:none}}
