/* Station warning lamps animate without moving the card or geographic anchors. */
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .ob-network .ob-section-heading{padding-right:112px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .ob-station-tabs{gap:8px;padding:2px 1px 5px}
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .river-node.ob-station-tab.sa-station{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;position:relative;padding:14px 12px;min-height:106px;min-width:0;border:1px solid #cbdff7;border-left:3px solid #8ab7ef;border-radius:12px;background:linear-gradient(135deg,#edf5ff,#f8fbff);box-shadow:0 2px 6px #254d8310;transform:none;color:#315275;--sa-speed:2.8s;overflow:visible}
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .river-node.ob-station-tab.sa-station:hover{border-color:#76a6e8;background:linear-gradient(135deg,#e3efff,#f1f7ff);transform:none;box-shadow:0 4px 14px #265da21a}
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .river-node.ob-station-tab.sa-station.selected{outline:2px solid #3779d6;outline-offset:1px;border-color:#6196dd;border-left-color:#2563c4;box-shadow:0 4px 14px #265da21a;background:linear-gradient(135deg,#dbeaff,#edf5ff)}
.sa-top{display:flex;align-items:center;gap:8px;min-width:0}
.sa-source-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:#d8e9ff;color:#2b6dc2;border:1px solid #bdd7f8}
.sa-source-icon svg{width:19px;height:19px;animation:none}
.sa-identity{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0}
:root body.observatory-interface .ob-flow-upgrade .sa-station .sa-identity strong{font-size:15px;line-height:1.4;color:#294975;margin:0}
:root body.observatory-interface .ob-flow-upgrade .sa-station .sa-identity small{font-size:11px;line-height:1.4;color:#5c7798;margin:0}
.sa-lamp{position:relative;display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px}
.sa-lamp>i{display:block;position:relative;width:9px;height:9px;border-radius:50%;background:var(--sa-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--sa-color) 10%,transparent);opacity:.9}
.sa-active .sa-lamp>i{animation:sa-lamp-blink var(--sa-speed) ease-in-out infinite;box-shadow:0 0 6px color-mix(in srgb,var(--sa-color) 50%,transparent)}
.sa-active .sa-lamp:after{content:'';position:absolute;inset:3px;border-radius:50%;border:1px solid var(--sa-color);animation:sa-lamp-ring var(--sa-speed) ease-out infinite;pointer-events:none}
.sa-bottom{display:flex;align-items:flex-start;align-content:flex-start;justify-content:space-between;flex-wrap:wrap;gap:4px 6px;min-height:40px}
.sa-state{display:inline-flex;align-items:center;gap:4px;color:var(--sa-color);font-size:12px;line-height:1.5}
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .sa-state .badge{background:none;background-image:none;border:0;margin:0;padding:0;color:var(--sa-color);font-size:12px;font-weight:600;line-height:1.5;white-space:nowrap;animation:none;box-shadow:none}
.sa-viewing{color:#fff;background:#3779d6;border:1px solid #3779d6;border-radius:5px;padding:2px 6px;font-size:10px;font-weight:600;line-height:1.5;white-space:nowrap}
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .river-node.ob-station-tab.sa-station[data-station-alert="2"]{--sa-speed:2.1s}
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .river-node.ob-station-tab.sa-station[data-station-alert="3"]{--sa-speed:1.7s}
:root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .river-node.ob-station-tab.sa-station[data-station-alert="4"]{--sa-speed:1.4s}
.sa-priority{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--sa-color) 30%,white);border-radius:7px;background:color-mix(in srgb,var(--sa-color) 7%,white);color:var(--sa-color);font-size:12px;line-height:1.5;cursor:pointer;white-space:nowrap}
.sa-priority strong{font-weight:650}.sa-priority svg{flex-shrink:0}.sa-priority svg:first-child{animation:sa-bell 3s ease-in-out infinite;transform-origin:50% 20%}
.sa-priority:hover{background:color-mix(in srgb,var(--sa-color) 13%,white)}
.sa-station:focus-visible,.sa-priority:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
@keyframes sa-lamp-blink{0%,100%{opacity:1;box-shadow:0 0 8px var(--sa-color)}50%{opacity:.38;box-shadow:0 0 1px transparent}}
@keyframes sa-lamp-ring{0%{transform:scale(.65);opacity:.55}75%,100%{transform:scale(1.2);opacity:0}}
@keyframes sa-bell{0%,15%,100%{transform:rotate(0)}3%,9%{transform:rotate(12deg)}6%,12%{transform:rotate(-12deg)}}
@media(max-width:900px){
 :root body.observatory-interface .ob-flow-upgrade.ob-reading-upgrade.ob-design-system.ob-gis-upgrade .river-node.ob-station-tab.sa-station{flex:0 0 166px;min-height:106px;padding:12px}
 .sa-viewing{display:none}
 .sa-identity{display:block}
 .sa-priority{font-size:11px;padding:3px 6px;gap:4px}
}
@media(prefers-reduced-motion:reduce){.sa-active .sa-lamp>i,.sa-active .sa-lamp:after,.sa-priority svg:first-child{animation:none}.sa-active .sa-lamp:after{opacity:.3}}
