/* 72Hz Community Map signal network — lightweight visual layer */
.map-coming-preview{isolation:isolate}
.map-signal-hub{position:absolute;z-index:7;right:14px;top:14px;width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(5,24,44,.88);color:#ff7a3c;box-shadow:0 8px 24px rgba(0,0,0,.32),0 0 0 5px rgba(233,105,44,.08);backdrop-filter:blur(7px)}
.map-signal-hub svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.map-signal-hub:before,.map-signal-hub:after{content:"";position:absolute;inset:-6px;border:1px solid rgba(233,105,44,.34);border-radius:50%;animation:hzHubPulse 4.8s ease-out infinite}
.map-signal-hub:after{inset:-13px;animation-delay:1.6s;opacity:.42}
@keyframes hzHubPulse{0%,58%{opacity:.1;transform:scale(.86)}78%{opacity:.62}100%{opacity:0;transform:scale(1.12)}}
.map-signal-lines{position:absolute;z-index:4;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.map-signal-lines path{fill:none;stroke:rgba(255,132,73,.36);stroke-width:1.15;stroke-linecap:round;stroke-dasharray:4 7;vector-effect:non-scaling-stroke}
.map-signal-lines path.signal-trace{stroke:rgba(255,170,113,.78);stroke-width:1.6;stroke-dasharray:1 180;animation:hzSignalTrace 4.8s ease-out 1 both}
@keyframes hzSignalTrace{0%{stroke-dashoffset:190;opacity:0}18%{opacity:.95}75%{stroke-dashoffset:0;opacity:.75}100%{stroke-dashoffset:0;opacity:0}}
.preview-badge.wildfire-badge{left:5%;bottom:13%}
.preview-badge.shelter-badge{right:5%;top:52%}
.preview-badge.wildfire-badge>.premium-icon{color:#ff6c32}
.preview-badge.shelter-badge>.premium-icon{color:#ff9b65}
.map-coming-features.map-features-six{grid-template-columns:repeat(2,minmax(0,1fr))}
.map-coming-features .map-added-feature{animation:mapFeatureIn .34s ease-out both}
@keyframes mapFeatureIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.map-signal-hub:before,.map-signal-hub:after,.map-signal-lines path.signal-trace,.map-coming-features .map-added-feature{animation:none!important}}
@media(max-width:380px){.map-signal-hub{width:39px;height:39px;right:10px;top:10px}.map-signal-hub svg{width:20px;height:20px}.preview-badge.wildfire-badge,.preview-badge.shelter-badge{transform:scale(.88)}.preview-badge.wildfire-badge{transform-origin:left bottom}.preview-badge.shelter-badge{transform-origin:right center}}
