/* Map and markers share the same projection and fixed viewBox aspect ratio. */
.traffic-map-stage{min-height:0;aspect-ratio:5/4;width:100%;align-self:center}
.traffic-region-outline{position:absolute;inset:0;width:100%;height:100%;fill:rgba(239,34,40,.07);stroke:#8b555b;stroke-width:1.5px}
.traffic-region-outline path{vector-effect:non-scaling-stroke}
.traffic-map-stage .traffic-map-marker{width:36px;height:36px;display:block;transform:translate(-50%,-50%)}
.traffic-map-stage .traffic-map-marker span{width:36px;height:36px}
.traffic-map-stage .traffic-map-marker b{position:absolute;top:calc(100% + 5px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px}
.traffic-map-stage .marker-neunkirchen b,.traffic-map-stage .marker-stwendel b{top:auto;bottom:calc(100% + 5px)}
.traffic-map-stage .marker-saarlouis b{left:auto;right:calc(100% + 5px);top:50%;transform:translateY(-50%)}
.traffic-map-stage .traffic-map-marker:focus-visible{outline:3px solid #ff7378;outline-offset:4px;border-radius:50%}
.traffic-map-credit{grid-column:1/-1;margin:0;color:#a4a4ad;font-size:10px}
.traffic-map-credit a{text-decoration:underline}
@media(max-width:480px){
  .traffic-map-stage .traffic-map-marker,.traffic-map-stage .traffic-map-marker span{width:28px;height:28px}
  .traffic-map-stage .traffic-map-marker b{font-size:9px;padding:3px 4px}
  .traffic-map-stage .marker-saarlouis b{right:auto;left:50%;top:calc(100% + 5px);transform:translateX(-50%)}
}
