#map-canvas {
  height: 100%;
  width: 100%;
}

/* ----------------------------LABEL STYLING----------------------------*/  

.hide {
  display: none !important;
}

.show {
  display: block !important;
}


.building-labels {
  color: black;
  width: 7em;
  overflow: inherit !important;
  font-family: Arial, sans-serif;
  font-size: 1em;
  font-weight: 600;
  text-shadow: 1px 1px #fff, 1px -1px #fff, -1px -1px #fff, -1px 1px #fff;
  background-color: inherit;
  cursor: inherit;
  border: inherit;
}

.category-label {
  /* margin-top: -25px !important; */
  width: 100px;
}

.campus-marker-with-label {
  z-index: 3 !important;
}

.cluster-markers-label {
  display: none;
  color: #007fac !important;
  background-color: inherit;
  cursor: inherit;
  border: inherit;
  width: 10em;
  padding: 0;
  font-weight: 600;
  text-shadow:
    1px 1px 0 #fff,
    1px -1px 0 #fff,
    -1px -1px 0 #fff,
    -1px 1px 0 #fff;
}

.cluster-markers-label:focus {
  border: #007fac 2px solid;
}

.marker-cluster-labels-internal {
  margin-left: -10em;
}

.campus-marker-label {
    font-weight: bold;
    font-size: 1.5em;
    color: black;
    text-shadow: 1px 1px #fff, 1px -1px #fff, -1px -1px #fff, -1px 1px #fff;
    background-color: inherit;
    cursor: inherit;
    border: inherit;
}

.campus-marker-label:focus {
  border: #007fac 2px solid;
}

.district-label {
    font-weight: bold;
    font-size: 1.3em;
    color: black;
    text-shadow: 1px 1px #fff, 1px -1px #fff, -1px -1px #fff, -1px 1px #fff;
    background-color: inherit;
    cursor: inherit;
    border: inherit;
}

.district-label:focus {
  border: #007fac 2px solid;
}

.ocf-cluster {
  background-color: inherit;
  border: inherit;
  color: inherit;
  font-size: inherit;
  padding: inherit;
}

.OCF-marker-label {
  /* display: none !important; */
  /* display: none; */
}

.shadow {
  box-shadow: black 0px 0px 0px 3px;
}

.displayBlock {
  display: block !important;
}

/* ----------------------------GMAPS INFOWINOW STYLING----------------------------*/  

/*style the content*/
.content {
  text-align: left !important;
  overflow-y: scroll;
}

.closeButton {
  font-size: 1em !important;
  position: absolute  !important;
  right: 0 !important;
  margin-right: -1.4em !important;
  color: #ffffff !important;
  -webkit-appearance: none;
  border-radius: 0;
}

.backButton {
  color: #cc0033 !important;
  font-size: 1.5em !important;
  margin-left: -1em !important;
  padding: 6px !important;
  -webkit-appearance: none;
  border-radius: 0;
}

.content > div {
  padding-left: 10px;
  padding-right: 10px;
}

.content h3 {
  margin-top: 10px;
  color: #cc0033;
}

.parcels-detail {
  margin: 5px 0px;
}

/* info drawer Alert Links */
a.alert-link {
  color: #cc0033 !important;
}

.alert-link h2 {
  padding: 10px;
  text-align: center !important;
}

/* info drawer Links and Directions */
/* .info-window-middle {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  padding-left: 0px !important;
  padding-right: 0px !important;
} */
/* .info-window-img {
  display: flex;
  flex-direction: column;
} */

/* .info-window-img object,
.info-window-img img {
  max-height: 150px;
  min-height: 150px;
  max-width: 50vw;
} */

.info-window-links {
  background-color: #5f6a72 !important;
  /* padding: 0 !important; */
  /* display: flex; */
  /* justify-content: center; */
  /* flex-direction: column; */
  width: 100%;
  min-width: 150px;
  max-height: 25vh;
}

/* .links-wrapper {
  margin: auto;
  max-height: 150px;
} */

/* .info-window-links a {
  font-size: 1.3em !important;
  color: #fff !important;
  padding-left: 0.5em !important;
  line-height: 2em;
} */
 

/* LEARN MORE */

div.info-window-title > div {
  width: max-content;
  margin-top: -1.7em;
  background-color: #FFF;
}

div.info-window-more ul {
  -webkit-margin-before: 0.5em;
  -webkit-margin-after: 0.5em;
  -webkit-padding-start: 10px;
}

div.info-window-more ul:first-of-type {
  columns: 3;
  -webkit-columns: 3;
  -moz-columns: 3;
}

div.info-window-more li {
  list-style-type: none;
}

.info-window-img-more object,
.info-window-img-more img {
  height: 25vh;
  max-width: 35vw !important;
}

@media only screen and (max-width: 768px) {
  .info-window-img-more object,
  .info-window-img-more img {
    max-width: 50vw !important;
  }
}

.links-wrapper-more img {
  width: 25vh !important;
  height: 25vh;
}

.links-wrapper-more img {
  margin-top: 3px;
}

.links-wrapper-more {
  margin: auto;
}

div.info-window-directions {
  display: flex;
    justify-content: center;
    padding-left: 0;
}

div.info-window-directions > div {
  width: max-content;
  margin-bottom: -14px;
  background-color: #fff;
}

div.info-window-directions > div > a {
  margin-left: 5px;
  margin-right: 5px;
}

@media only screen and (max-width: 768px) {
  div.info-window-directions > div {
    margin-bottom: 5px;
    background-color: #fff;
  }
}

/* GEOLOCATOR */
#geolocator {
  margin-right: 10px;
  padding: 3px;
  background-color: #fff;
  color: #5f6a72;
  width: 27px;
  height: 27px;
  cursor: pointer;
  border-radius: 2px;
  box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 4px -1px;
}

#geolocator svg {
  width: 100%;
  height: 100%;
}

.active-control {
  color: #3ab0ff;
}

/* STREET VIEW */
div.gm-iv-address {
  height: 100% !important;
}


/* ------------- 2020 Marker Label Tweaks ------------- */

div[title="RBHS at Newark"] {
  margin-left: -25px !important;
}

div[title="Rutgers University - Newark"] {
  margin-left: -10px !important;
}


/* --------------------- IMAGERY CONTROL PANEL ---------------------*/

/* MUI Popper/Drawer paper that holds the imagery panel */
.imagery-panel-paper {
  border-radius: 8px !important;
  overflow: hidden;
}

.imagery-panel-paper-sheet {
  border-radius: 12px 12px 0 0 !important;
}

.imagery-panel {
  width: 288px;
  max-width: 92vw;
  font-family: 'Roboto', Arial, sans-serif;
  color: #202124;
}

.imagery-panel-paper-sheet .imagery-panel {
  width: 100%;
  max-width: 100%;
  padding-bottom: env(safe-area-inset-bottom, 8px);
}

.imagery-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 8px 10px 16px;
}

.imagery-panel-title {
  font-size: 15px !important;
  font-weight: 600 !important;
}

.imagery-section {
  padding: 12px 16px;
}

.imagery-section-heading {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}

.imagery-section-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: #5f6368;
  margin: 0 0 8px !important;
}

.imagery-section-heading .imagery-section-title {
  margin: 0 !important;
}

.imagery-hd-chip {
  height: 18px !important;
  background: #cc0033 !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.4px;
}

.imagery-hd-chip .MuiChip-label {
  padding: 0 7px !important;
}

/* Base map segmented radio group */
.basemap-options {
  display: flex;
  gap: 8px;
}

.basemap-option-wrap {
  flex: 1 1 0;
  display: flex;
}

/* Visually hide the native radio without removing it from the tab order or the
   accessibility tree (so it keeps full keyboard + screen-reader semantics). */
.basemap-option-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.basemap-option {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  padding: 6px;
  background: #fff;
  border: 2px solid #dadce0;
  border-radius: 8px;
  cursor: pointer;
  font-family: inherit;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.basemap-option:hover {
  background: #f5f5f5;
}

.basemap-option-input:focus-visible + .basemap-option {
  outline: 2px solid #cc0033;
  outline-offset: 2px;
}

.basemap-option.is-selected {
  border-color: #cc0033;
  background: #fff5f7;
}

.basemap-option-thumb {
  width: 100%;
  height: 44px;
  object-fit: cover;
  border-radius: 4px;
  display: block;
}

/* Thumbnail wrapper so the "HD" chip can overlay the corner of a source tile */
.basemap-option-thumb-wrap {
  position: relative;
  display: block;
  width: 100%;
}

.basemap-option-hd-chip {
  position: absolute;
  top: 3px;
  right: 3px;
  pointer-events: none;
}

/* Three-up source tiles need slightly tighter labels than the 2-up base map row */
.imagery-source-options .basemap-option-label {
  font-size: 11px;
  white-space: nowrap;
}

.basemap-option-label {
  font-size: 12px;
  font-weight: 500;
  color: #202124;
}

.basemap-option.is-selected .basemap-option-label {
  color: #cc0033;
  font-weight: 700;
}

/* Provider attribution shown under a source label (e.g. Google for Satellite) */
.basemap-option-provider {
  font-size: 9.5px;
  font-weight: 500;
  letter-spacing: 0.2px;
  color: #5f6368;
  white-space: nowrap;
}

/* Nested Rutgers collection select, revealed under the Rutgers HD source tile */
.imagery-collection-wrap {
  margin-top: 10px;
}

/* Rutgers imagery collection select */
.imagery-collection-select {
  width: 100%;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid #dadce0;
  border-radius: 6px;
  background: #fff;
  font-family: inherit;
  font-size: 13px;
  color: #202124;
  cursor: pointer;
}

.imagery-collection-select:focus-visible {
  outline: 2px solid #cc0033;
  outline-offset: 1px;
}

.imagery-section-help {
  margin-top: 6px !important;
  font-size: 11.5px !important;
  line-height: 1.35 !important;
  color: #5f6368;
}

/* Labels switch row */
.imagery-labels-row {
  padding-top: 8px;
  padding-bottom: 14px;
}

.imagery-labels-control {
  margin: 0 !important;
  width: 100%;
  justify-content: space-between;
  align-items: flex-start !important;
  gap: 12px;
}

.imagery-labels-control .MuiFormControlLabel-label {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
  color: #202124;
}

/* Vexcel imagery credit — shown in the bottom-left map attribution area only
   while Rutgers (Vexcel) imagery is active, styled to match Google's own
   attribution without obscuring its logo. */
.imagery-attribution-credit {
  display: inline-block;
  margin: 0 0 2px 4px;
  padding: 1px 6px;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 2px;
  font-family: 'Roboto', Arial, sans-serif;
  font-size: 10px;
  line-height: 1.4;
  color: #5f6368;
  white-space: nowrap;
  pointer-events: none;
}
