/* v2.96 map clarity: keep all land connections visible in yellow; player actions override in red/green. */
#campaign-map .route-group[data-route="land"] .route-shadow {
  stroke: rgba(25, 18, 8, .78) !important;
  stroke-width: 5.5 !important;
  opacity: .62 !important;
}

#campaign-map .route-group[data-route="land"] .route-base {
  stroke: #b28d48 !important;
  stroke-width: 2.8 !important;
  opacity: .9 !important;
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, .7)) !important;
}

#campaign-map .route-group[data-route="land"] .route-highlight {
  stroke: rgba(244, 218, 145, .78) !important;
  stroke-width: 1 !important;
  stroke-dasharray: 2 3.5 !important;
  opacity: .72 !important;
  animation: none !important;
}

#campaign-map .route-group.attackable-route .route-shadow {
  stroke: rgba(117, 16, 11, .82) !important;
  stroke-width: 6.5 !important;
  opacity: .82 !important;
}

#campaign-map .route-group.attackable-route .route-base {
  stroke: #f1674c !important;
  stroke-width: 3.8 !important;
  opacity: 1 !important;
  filter: url(#routeGlow) !important;
}

#campaign-map .route-group.attackable-route .route-highlight {
  stroke: #ffe5a8 !important;
  stroke-width: 1.7 !important;
  stroke-dasharray: 4 3 !important;
  opacity: 1 !important;
  animation: routeFlow .6s linear infinite !important;
}

#campaign-map .route-group.movable-route .route-shadow {
  stroke: rgba(17, 79, 48, .76) !important;
  stroke-width: 5.9 !important;
  opacity: .76 !important;
}

#campaign-map .route-group.movable-route .route-base {
  stroke: #6cc88b !important;
  stroke-width: 3.4 !important;
  opacity: 1 !important;
}

#campaign-map .route-group.movable-route .route-highlight {
  stroke: #d8ffe3 !important;
  stroke-width: 1.45 !important;
  stroke-dasharray: 2 3 !important;
  opacity: .92 !important;
}

#campaign-map .route-group.active-route .route-base {
  stroke: #ffd06d !important;
  stroke-width: 5.1 !important;
  opacity: 1 !important;
  filter: url(#routeGlow) !important;
}

#campaign-map .route-group.active-route .route-highlight {
  stroke: #fff5c1 !important;
  stroke-width: 1.8 !important;
  stroke-dasharray: 5 4 !important;
  opacity: 1 !important;
  animation: routeFlow .55s linear infinite !important;
}

.city-landmark-badge {
  position: absolute;
  z-index: 16;
  top: 30px;
  left: -3px;
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border: 1px solid #c6a35e;
  border-radius: 50%;
  background: #332719;
  color: #f1d38c;
  box-shadow: 0 2px 7px rgba(0, 0, 0, .62);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
}

.city-landmark-badge.major {
  border-color: #e0bc70;
  background: #4a3518;
  color: #ffe8ae;
}

.city-landmark-badge.gate {
  border-color: #b99d6a;
  background: #302a20;
  color: #ead9b2;
}

.legend-landmark {
  display: inline-grid;
  width: 19px;
  height: 19px;
  place-items: center;
  border: 1px solid #c6a35e;
  border-radius: 50%;
  background: #332719;
  color: #f1d38c;
  font-style: normal;
  font-size: 10px;
  font-weight: 900;
}

.legend-landmark.major {
  border-color: #e0bc70;
  background: #4a3518;
  color: #ffe8ae;
}

.legend-landmark.gate {
  border-color: #b99d6a;
  background: #302a20;
  color: #ead9b2;
}
