/* =========================================================
   NVHomesLV PROPERTYMINDER — NATIVE COMMAND BAR 1.0
   Evidence-based enhancement.

   PropertyMinder's real Back, Send To Friend, Favorites and
   Schedule controls remain in their original DOM hierarchy.
   This file changes presentation only.
========================================================= */

:root {
  --nv-pm-bar-bg: #070707;
  --nv-pm-bar-text: #ffffff;
  --nv-pm-bar-line: rgba(255, 255, 255, 0.14);
  --nv-pm-blue: #1473e6;
  --nv-pm-bar-height: 62px;
  --nv-pm-font: "Poppins", Arial, sans-serif;
}

/* Nothing is applied until the real PropertyMinder details module is open. */
body:not(.nv-pm-property-open) #nv-pm-photo-viewer {
  display: none !important;
}

body.nv-pm-property-open .details-menu-wrapp-wrapp,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp *,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp *::before,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp *::after {
  box-sizing: border-box !important;
}

body.nv-pm-property-open .details-menu-wrapp-wrapp {
  position: relative !important;
  z-index: 9000 !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: var(--nv-pm-bar-bg) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--nv-pm-bar-line) !important;
  box-shadow: 0 9px 24px rgba(0, 0, 0, 0.16) !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  color: var(--nv-pm-bar-text) !important;
  background: var(--nv-pm-bar-bg) !important;
  border: 0 !important;
  box-shadow: none !important;
  font-family: var(--nv-pm-font) !important;
}

/* Hide controls that are not part of this focused command bar. */
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li {
  display: none !important;
  float: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-schedule,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-share,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-save {
  display: block !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .expand-detail,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp ._detailsExpand {
  display: none !important;
}

/* Shared native-control presentation. */
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites {
  appearance: none !important;
  -webkit-appearance: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  overflow: hidden !important;
  color: var(--nv-pm-bar-text) !important;
  -webkit-text-fill-color: var(--nv-pm-bar-text) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--nv-pm-font) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-tap-highlight-color: transparent !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide:hover,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide:focus-visible,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink:hover,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink:focus-visible,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink:hover,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink:focus-visible,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button:hover,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button:focus-visible,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites:hover,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites:focus-visible {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: rgba(255, 255, 255, 0.08) !important;
  box-shadow: inset 0 -3px 0 var(--nv-pm-blue) !important;
  outline: none !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide:active,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink:active,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink:active,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button:active,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites:active {
  background: rgba(255, 255, 255, 0.13) !important;
}

/* Preserve the native anchors but replace only their visible wording. */
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide .btn-label,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink .btn-label,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink .btn-label,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button .btn-label,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites .btn-label {
  display: inline-block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 1 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide .btn-label::after {
  content: "Back to Results" !important;
  font-size: 13px !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink .btn-label::after {
  content: "Schedule a Tour" !important;
  font-size: 12px !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink .btn-label::after,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button .btn-label::after {
  content: "Share" !important;
  font-size: 13px !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites .btn-label::after {
  content: "Save" !important;
  font-size: 13px !important;
}

/* Progressive saved-state wording. The native click/request remains untouched. */
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites[data-nv-pm-saved="true"] .btn-label::after {
  content: "Saved" !important;
}

/* Remove legacy extra wording/icon clutter from the retained controls. */
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink .icon-prom-more-info,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide .icon-prom-clear {
  display: none !important;
}

body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a i,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a .stButton,
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide i {
  flex: 0 0 auto !important;
  color: currentColor !important;
  -webkit-text-fill-color: currentColor !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

/* A clean arrow without changing the native Close/Back element. */
body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide::before {
  content: "‹" !important;
  display: block !important;
  flex: 0 0 auto !important;
  color: currentColor !important;
  font-family: Arial, sans-serif !important;
  font-size: 38px !important;
  font-weight: 300 !important;
  line-height: 0.7 !important;
}

/* Mobile: the original Back, Share and Favorites controls become one bar. */
@media (max-width: 900px) {
  body.nv-pm-property-open .details-menu-wrapp-wrapp {
    height: var(--nv-pm-bar-height) !important;
    min-height: var(--nv-pm-bar-height) !important;
    max-height: var(--nv-pm-bar-height) !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp {
    height: var(--nv-pm-bar-height) !important;
    min-height: var(--nv-pm-bar-height) !important;
    max-height: var(--nv-pm-bar-height) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(0, 2fr) !important;
    align-items: stretch !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: var(--nv-pm-bar-height) !important;
    padding: 0 10px 0 12px !important;
    justify-content: flex-start !important;
    border-right: 1px solid var(--nv-pm-bar-line) !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: var(--nv-pm-bar-height) !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    list-style: none !important;
    background: transparent !important;
    border: 0 !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-schedule {
    display: none !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-share,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-save {
    width: 100% !important;
    height: var(--nv-pm-bar-height) !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites {
    width: 100% !important;
    height: var(--nv-pm-bar-height) !important;
    padding: 0 8px !important;
    border-right: 1px solid var(--nv-pm-bar-line) !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li:last-child > a {
    border-right: 0 !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink > i,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink > .stButton,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button > i,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button > .stButton {
    display: none !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink::before,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button::before {
    content: "" !important;
    width: 25px !important;
    height: 25px !important;
    flex: 0 0 25px !important;
    background: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M18 16.1c-.76 0-1.44.3-1.96.77L8.91 12.7a3.4 3.4 0 0 0 0-1.4l7.05-4.11A3 3 0 1 0 15 5c0 .23.03.45.08.66L8.03 9.77a3 3 0 1 0 0 4.46l7.12 4.15c-.05.2-.08.41-.08.62a3 3 0 1 0 3-2.9Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M18 16.1c-.76 0-1.44.3-1.96.77L8.91 12.7a3.4 3.4 0 0 0 0-1.4l7.05-4.11A3 3 0 1 0 15 5c0 .23.03.45.08.66L8.03 9.77a3 3 0 1 0 0 4.46l7.12 4.15c-.05.2-.08.41-.08.62a3 3 0 1 0 3-2.9Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  }
}

@media (max-width: 380px) {
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp {
    grid-template-columns: minmax(0, 1.55fr) minmax(0, 1.85fr) !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites {
    gap: 5px !important;
    padding-inline: 5px !important;
    font-size: 11px !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide .btn-label::after,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink .btn-label::after,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button .btn-label::after,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites .btn-label::after {
    font-size: 11px !important;
  }
}

/* Desktop: a restrained native command row; PropertyMinder still owns actions. */
@media (min-width: 901px) {
  body.nv-pm-property-open .details-menu-wrapp-wrapp {
    min-height: 58px !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp {
    min-height: 58px !important;
    display: flex !important;
    align-items: stretch !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns {
    order: 1 !important;
    min-width: 0 !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: stretch !important;
    list-style: none !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-schedule,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-share,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .details-menu-btns > li.nv-pm-action-save {
    min-height: 58px !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._sendToFriendLink.sendToFriendLink,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a._shareThis.st-custom-button,
  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-like._addToFavorites {
    height: 58px !important;
    padding: 0 18px !important;
    border-right: 1px solid var(--nv-pm-bar-line) !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp a.details-menu-contact._contactAgentLink {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: #67b800 !important;
  }

  body.nv-pm-property-open .details-menu-wrapp._detailsMenuWrapp .close-detail._detailsHide {
    order: 3 !important;
    position: relative !important;
    inset: auto !important;
    min-width: 145px !important;
    height: 58px !important;
    margin-left: auto !important;
    padding: 0 18px !important;
    border-left: 1px solid var(--nv-pm-bar-line) !important;
  }
}

/* =========================================================
   Lightweight photo viewer retained from the proven workaround.
========================================================= */

body.nv-pm-property-open img.sp-image {
  cursor: zoom-in !important;
}

#nv-pm-photo-viewer {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: none;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.96);
  touch-action: pan-y;
}

#nv-pm-photo-viewer.is-open {
  display: flex;
}

#nv-pm-photo-viewer__image {
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

#nv-pm-photo-viewer__close {
  position: absolute;
  top: max(14px, env(safe-area-inset-top));
  right: max(14px, env(safe-area-inset-right));
  z-index: 2;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  padding: 0;
  color: #fff;
  background: rgba(0, 0, 0, 0.46);
  border: 1px solid rgba(255, 255, 255, 0.45);
  border-radius: 50%;
  font: 300 32px/1 Arial, sans-serif;
  cursor: pointer;
}

#nv-pm-photo-viewer__counter {
  position: absolute;
  top: max(25px, calc(env(safe-area-inset-top) + 10px));
  left: 50%;
  z-index: 2;
  color: rgba(255, 255, 255, 0.88);
  font: 600 12px/1 var(--nv-pm-font);
  transform: translateX(-50%);
}
