/* Approved Style 4 map palette + Style 1 house pins.
   Keep the original Instant Placements dashboard sidebar, filter toolbar,
   map/results two-column layout and natural document scrolling unchanged. */
.rd-page-discover{
  --ip-map-deep:#004d3e;
  --ip-map-forest:#006e54;
  --ip-map-emerald:#00a77d;
  --ip-map-ink:#113b40;
}
.rd-page-discover .rm-map-wrap{
  background:#e9f3ed;
  border-color:#d9e9df;
  box-shadow:0 7px 24px rgba(0,65,45,.045);
}
.rd-page-discover .rm-map-wrap #liveMap{background:#e9f3ed}
.rd-page-discover .rm-map-wrap .leaflet-tile-pane{
  filter:saturate(.72) brightness(1.07) contrast(.965) sepia(.035);
}
.rd-page-discover .rm-map-wrap .leaflet-control-attribution{
  font-size:9px;
  background:rgba(255,255,255,.88);
  padding:2px 5px;
}
.rd-page-discover .rm-map-wrap .leaflet-control-zoom{
  box-shadow:0 7px 19px rgba(8,70,51,.16);
  background:#fff;
  border-radius:13px;
}
.rd-page-discover .rm-map-wrap .leaflet-control-zoom a{
  color:#00654d;
  border-color:#e1eee7;
}
.rd-page-discover .rm-map-wrap .leaflet-control-zoom a:hover{background:#eef9f2}

/* Interactive markers are SVG, not an overlay screenshot. */
.ip-house-pin{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  vertical-align:middle;
  color:#007b5e;
}
.ip-house-pin svg{
  display:block;
  width:48px;
  height:57px;
  overflow:visible;
  filter:drop-shadow(0 4px 6px rgba(5,47,36,.29));
}
.ip-house-pin--available{color:#007b5e}
.ip-house-pin--partial{color:#e99a1d}
.ip-house-pin--full{color:#d8434b}
.ip-house-pin--paused{color:#909d99}
.ip-house-pin--unresponsive{color:#233832}
.rd-page-discover .house-marker.ip-map-house-marker{
  border:0!important;
  background:transparent!important;
  overflow:visible;
}
.rd-page-discover .ip-branded-property-marker{
  width:48px;
  height:57px;
  display:block;
  cursor:pointer;
}
.rd-page-discover .ip-branded-property-marker .ip-house-pin:hover svg{
  transform:translateY(-2px);
  filter:drop-shadow(0 7px 8px rgba(5,46,36,.38));
  transition:transform .16s ease;
}
.rd-page-discover .ip-campus-leaflet{background:transparent;border:0;overflow:visible}
.rd-page-discover .ip-campus-map-marker{
  display:flex;
  align-items:center;
  flex-direction:column;
  width:90px;
  gap:0;
  transform:translateY(-8px);
}
.rd-page-discover .ip-campus-map-marker .ip-campus-building{
  display:grid;
  place-items:center;
  width:78px;
  height:64px;
  flex:none;
}
.rd-page-discover .ip-campus-map-marker .ip-campus-classic-icon{
  display:block;
  width:74px;
  height:74px;
  transform:translateY(-4px);
  /* Bright silhouette keeps the building distinct over any map tile. */
  filter:drop-shadow(0 0 2px #fff) drop-shadow(0 1px 2px #fff)
    drop-shadow(0 6px 8px rgba(0,70,49,.45));
}
.rd-page-discover .ip-campus-map-marker .ip-campus-map-label{
  color:#fff;
  background:#005542;
  padding:5px 12px;
  border-radius:8px;
  font-size:10px;
  line-height:1.25;
  font-weight:800;
  letter-spacing:.04em;
  box-shadow:0 4px 10px rgba(0,60,44,.18);
}
.rd-page-discover .cluster-wrap{border:0;background:transparent}
.rd-page-discover .ip-map-cluster{
  position:relative;
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border-radius:50%;
  background:rgba(208,245,223,.63);
  border:2px solid #a1e7ca;
  box-shadow:0 0 0 7px rgba(14,171,125,.11),0 7px 18px rgba(10,78,59,.2);
  color:#fff;
}
.rd-page-discover .ip-map-cluster span{
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(135deg,#00ac7c,#004f3d);
  font-size:17px;
  font-weight:790;
}

/* The former top-left floating legend stays in its original location,
   now using the same color-coded SVG pins as the live map. */
.rd-page-discover .rm-map-legend{
  width:245px;
  max-width:55%;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(219,237,226,.75);
  border-radius:18px;
  box-shadow:0 10px 32px rgba(3,51,36,.15);
  padding:14px;
}
.rd-page-discover .rm-map-legend>div{margin-bottom:10px;padding-bottom:10px}
.rd-page-discover .rm-map-legend p{
  display:flex;
  align-items:center;
  min-height:27px;
  gap:7px;
  margin:0 0 5px;
  line-height:1.26;
  font-size:10.5px;
}
.rd-page-discover .rm-map-legend p>.ip-house-pin{
  flex:0 0 25px;
  width:25px;
  height:29px;
}
.rd-page-discover .rm-map-legend p>.ip-house-pin svg{
  width:23px;
  height:29px;
}
.rd-page-discover .rm-map-legend p>.ip-campus-legend-icon{
  display:inline-grid;
  place-items:center;
  width:25px;
  height:27px;
  flex:0 0 25px;
}
.rd-page-discover .rm-map-legend p>.ip-campus-legend-icon svg{
  display:block;
  width:27px;
  height:27px;
}
.rd-page-discover .rm-map-legend p>.rm-dot{flex:none}
.rd-page-discover .rm-map-legend p .ip-house-pin:not(:first-child){margin-left:7px}
.rd-page-discover .rm-map-legend #radiusLabel2{
  margin-left:auto;
  white-space:nowrap;
}
.rd-page-discover .rm-map-note{display:flex;align-items:center;gap:9px}
.rd-page-discover .rm-map-note>span{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.rd-page-discover .rm-map-note b{font-size:11px;font-weight:730;line-height:1.4}
.rd-page-discover .rm-map-note small{display:block;font-size:9px;line-height:1.4}
.rd-page-discover .rm-map-note>.rd-icon{flex:none;margin:0}
@media(max-width:760px){
  .rd-page-discover .rm-map-legend{width:210px;max-width:58%;padding:11px}
  .rd-page-discover .rm-map-legend p{font-size:9px;gap:5px}
  .rd-page-discover .rm-map-legend p>.ip-campus-legend-icon{flex-basis:20px;width:20px;height:24px}
  .rd-page-discover .rm-map-legend p>.ip-campus-legend-icon svg{width:22px;height:22px}
  .rd-page-discover .rm-map-legend p>.ip-house-pin{flex-basis:20px;width:20px;height:24px}
  .rd-page-discover .rm-map-legend p>.ip-house-pin svg{width:19px;height:24px}
  .rd-page-discover .rm-map-note b{font-size:10px}
  .rd-page-discover .rm-map-note small{font-size:8px}
}
@media(max-width:440px){
  .rd-page-discover .rm-map-legend{width:184px;max-width:60%}
  .rd-page-discover .rm-map-legend p{font-size:8.5px}
}
@media(prefers-reduced-motion:reduce){
  .rd-page-discover .ip-branded-property-marker svg{transition:none!important}
}
