/* A quiet atlas surface keeps dense traffic readable against any wallpaper. */
.stage-map.glass-panel{--map-source:#0c789f;--map-server:#c97916;--map-muted:#527384;border-radius:24px;padding:0;background:#fff;border:1px solid #e3e8eb;box-shadow:0 12px 32px rgba(35,56,68,.07);backdrop-filter:none;-webkit-backdrop-filter:none;font-family:'AI Noto Sans','Noto Sans SC','Source Han Sans SC',sans-serif;isolation:isolate}
.stage-map::before{display:none}
.stage-map .stage-map-head{display:flex;align-items:center;gap:16px;margin:0;padding:19px 23px 16px;background:#fff;border-bottom:1px solid #edf0f2}
.stage-map-heading{display:flex;align-items:center;gap:11px;min-width:0}
.stage-map-mark{display:flex;align-items:center;justify-content:center;width:31px;height:31px;color:#527788;flex-shrink:0}
.stage-map-mark svg{width:28px;height:28px}
.stage-map .stage-map-title{font-size:18px;line-height:1.4;font-weight:600;letter-spacing:.035em;color:#263943;white-space:nowrap}
.stage-map .stage-map-actions{display:flex;align-items:center;gap:14px;flex-wrap:nowrap}
.stage-map button{font:inherit;-webkit-tap-highlight-color:transparent}
.stage-map-motion{display:inline-flex;align-items:center;gap:8px;padding:8px 0;border:0;background:transparent;color:#718391;font-size:11px!important;cursor:pointer;white-space:nowrap}
.stage-map-live-dot{width:5px;height:5px;border-radius:50%;background:var(--map-source);box-shadow:0 0 0 4px rgba(12,120,159,.14)}
.stage-map-motion[aria-pressed="false"] .stage-map-live-dot{background:#9aaab4;box-shadow:none}
.stage-map-motion:hover{color:#26556b}
.stage-map-reset{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #d4e0e7;border-radius:9px;background:rgba(255,255,255,.65);color:#718391;cursor:pointer;transition:background .2s,color .2s}
.stage-map-reset svg{width:16px;height:16px}
.stage-map-reset:hover{color:#174d68;background:#fff}
.stage-map button:focus-visible{outline:2px solid var(--map-source);outline-offset:4px}
.stage-map .home-map-wrap{min-height:170px;border:0;border-radius:0;background:#fff;box-shadow:none}
.stage-map .home-map-wrap::before{display:none}
.stage-map .home-map{position:absolute;inset:0}
.stage-map-foot{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 24px 16px;background:#fff;border-top:1px solid #edf0f2;font-size:10px;line-height:1.5;color:var(--map-muted);flex-shrink:0}
.stage-map-legend,.stage-map-summary{display:flex;align-items:center;gap:18px}
.stage-map-legend>span{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.stage-map-legend i{display:block;width:5px;height:5px;border-radius:50%;background:var(--map-source)}
.stage-map-legend .map-key-server{background:var(--map-server);outline:1px solid rgba(201,121,22,.34);outline-offset:3px}
.stage-map-summary{gap:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
.stage-map-summary strong{font-size:12px;font-weight:600;color:#294554;margin-right:3px}
.home-map-tooltip{min-width:110px;padding:3px 4px;font-family:'AI Noto Sans','Noto Sans SC',sans-serif}
.home-map-tooltip-label{font-size:10px;color:#527384;margin-bottom:5px}
.home-map-tooltip-name{font-size:12px;font-weight:600;color:#263943;max-width:220px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:900px){.stage-map .stage-map-head{padding:16px 17px 13px;gap:10px}.stage-map .stage-map-title{font-size:16px}.stage-map-foot{padding:12px 18px 14px}.stage-map-summary,.stage-map-legend{gap:12px}}
@media(max-width:640px){.stage-map.glass-panel{min-height:340px;border-radius:20px}.stage-map .stage-map-head{display:flex}.stage-map-heading{gap:8px}.stage-map .stage-map-title{font-size:15px}.stage-map-mark{width:25px}.stage-map-mark svg{width:24px;height:24px}.stage-map .stage-map-actions{gap:10px}.stage-map-motion{font-size:10px!important;gap:6px}.stage-map-reset{width:29px;height:29px}.stage-map-foot{flex-wrap:wrap;padding:11px 16px 13px;gap:9px;font-size:9px}.stage-map-summary{margin-left:auto}.stage-map-summary strong{font-size:11px}.stage-map-legend,.stage-map-summary{gap:11px}}
@media(prefers-reduced-motion:reduce){.stage-map button{transition:none}}
