/* VNUTI location modal - final scoped UI */
html.vnuti-modal-open,
html.vnuti-modal-open body {
  overflow: hidden !important;
}

.vnuti-ui-shell [data-quick-location-modal],
.vnuti-ui-shell [data-booking-location-modal] {
  position: fixed !important;
  inset: 0 !important;
  z-index: 99999 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  width: 100vw !important;
  height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: rgba(12, 20, 14, .46) !important;
  color: #142016 !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

.vnuti-ui-shell [data-quick-location-modal][hidden],
.vnuti-ui-shell [data-booking-location-modal][hidden] {
  display: none !important;
}

.vnuti-ui-shell [data-quick-location-modal] *,
.vnuti-ui-shell [data-quick-location-modal] *::before,
.vnuti-ui-shell [data-quick-location-modal] *::after,
.vnuti-ui-shell [data-booking-location-modal] *,
.vnuti-ui-shell [data-booking-location-modal] *::before,
.vnuti-ui-shell [data-booking-location-modal] *::after {
  box-sizing: border-box !important;
}

.vnuti-ui-shell .vnuti-quick-location__backdrop {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.vnuti-ui-shell .vnuti-quick-location__sheet.location-sheet,
.vnuti-ui-shell .location-modal .vnuti-quick-location__sheet {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  width: min(100%, 428px) !important;
  max-width: 428px !important;
  max-height: calc(100dvh - 24px) !important;
  margin: 0 auto !important;
  padding: 24px 14px 16px !important;
  overflow-y: auto !important;
  border: 0 !important;
  border-radius: 20px 20px 0 0 !important;
  background: #fff !important;
  box-shadow: 0 -12px 34px rgba(0, 0, 0, .18) !important;
  transform: none !important;
  -webkit-overflow-scrolling: touch !important;
}

.vnuti-ui-shell .vnuti-quick-location__handle.grabber {
  position: absolute !important;
  top: 10px !important;
  left: 50% !important;
  display: block !important;
  width: 48px !important;
  height: 5px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: #d7eadb !important;
  transform: translateX(-50%) !important;
}

.vnuti-ui-shell .vnuti-quick-location__header {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 42px !important;
  gap: 12px !important;
  align-items: start !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}

.vnuti-ui-shell .vnuti-quick-location__header h2 {
  margin: 0 0 5px !important;
  color: #142016 !important;
  font-size: 22px !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
}

.vnuti-ui-shell .vnuti-quick-location__header p {
  margin: 0 !important;
  color: #7a8b7f !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

.vnuti-ui-shell .vnuti-quick-location__close.modal-close {
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid #d9eadc !important;
  border-radius: 50% !important;
  background: #edf7ef !important;
  color: #2f7b3b !important;
  box-shadow: none !important;
}

.vnuti-ui-shell .vnuti-quick-location__close svg {
  width: 19px !important;
  height: 19px !important;
}

.vnuti-ui-shell .vnuti-quick-location__input.modal-search {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  align-items: center !important;
  width: 100% !important;
  height: 52px !important;
  margin: 0 0 13px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid #9bd5a5 !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #2f7b3b !important;
  box-shadow: none !important;
}

.vnuti-ui-shell .vnuti-quick-location__input svg {
  width: 18px !important;
  height: 18px !important;
  margin: 0 auto !important;
  color: #2f7b3b !important;
}

.vnuti-ui-shell .vnuti-quick-location__input input {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 12px 0 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: #fff !important;
  color: #142016 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.vnuti-ui-shell .vnuti-quick-location__suggestions {
  position: relative !important;
  z-index: 6 !important;
  width: 100% !important;
  max-height: 210px !important;
  margin: -6px 0 10px !important;
  overflow-y: auto !important;
  border: 1px solid #d9eadc !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.12) !important;
}

.vnuti-ui-shell .vnuti-quick-location__suggestions[hidden] {
  display: none !important;
}

.vnuti-ui-shell .vnuti-quick-location__suggestions button {
  display: block !important;
  width: 100% !important;
  min-height: 44px !important;
  padding: 9px 12px !important;
  border: 0 !important;
  border-bottom: 1px solid #edf3ee !important;
  background: #fff !important;
  color: #142016 !important;
  font-size: 13px !important;
  text-align: left !important;
}

.vnuti-ui-shell .vnuti-quick-location__map.mini-map {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  margin: 0 0 10px !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: #f2eee5 !important;
  box-shadow: none !important;
}

.vnuti-ui-shell .vnuti-quick-location__map-canvas.map-canvas,
.vnuti-ui-shell .vnuti-quick-location__map-canvas .leaflet-container {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 220px !important;
  background: #f2eee5 !important;
}

.vnuti-ui-shell .vnuti-quick-location__map-pin.map-pin {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 1200 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% 50% 50% 0 !important;
  background: #3f7848 !important;
  box-shadow: 0 0 0 17px rgba(63,120,72,.18), 0 0 0 30px rgba(63,120,72,.08), 0 4px 12px rgba(0,0,0,.22) !important;
  transform: translate(-50%, -65%) rotate(-45deg) !important;
  pointer-events: none !important;
}

.vnuti-ui-shell .vnuti-quick-location__map-pin.map-pin::after {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 13px !important;
  height: 13px !important;
  content: "" !important;
  border-radius: 50% !important;
  background: #fff !important;
  transform: translate(-50%, -50%) !important;
}

.vnuti-ui-shell .vnuti-quick-location__map .leaflet-control-container {
  position: relative !important;
  z-index: 850 !important;
}

.vnuti-ui-shell .vnuti-quick-location-route {
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, .18));
  pointer-events: none;
}

.vnuti-ui-shell .vnuti-quick-route-destination-marker {
  display: grid !important;
  place-items: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 999px !important;
  background: rgba(63, 120, 72, .14) !important;
}

.vnuti-ui-shell .vnuti-quick-route-destination-marker span {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  border: 3px solid #fff !important;
  border-radius: 999px !important;
  background: #3f7848 !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .22) !important;
}

.vnuti-ui-shell .vnuti-quick-location__selected.selected-address {
  display: grid !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  gap: 11px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 66px !important;
  margin: 0 0 12px !important;
  padding: 12px 14px !important;
  border: 1px solid #c8e8ce !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #142016 !important;
  box-shadow: none !important;
}

.vnuti-ui-shell .vnuti-quick-location__selected svg {
  width: 22px !important;
  height: 22px !important;
  color: #3f7848 !important;
}

.vnuti-ui-shell .vnuti-quick-location__selected strong {
  display: block !important;
  margin: 0 0 4px !important;
  overflow: hidden !important;
  color: #142016 !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 950 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.vnuti-ui-shell .vnuti-quick-location__selected small {
  display: block !important;
  overflow: hidden !important;
  color: #7b8a80 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.vnuti-ui-shell .vnuti-quick-location__actions.modal-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.vnuti-ui-shell .vnuti-quick-location__actions button {
  display: grid !important;
  min-width: 0 !important;
  height: 46px !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 10px !important;
  border: 1px solid #c8e8ce !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #3f7848 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-align: center !important;
  box-shadow: 0 2px 6px rgba(0,0,0,.05) !important;
}

.vnuti-ui-shell .vnuti-quick-location__actions .vnuti-quick-location__primary {
  grid-column: 1 / -1 !important;
  height: 47px !important;
  border-color: #2f7b3b !important;
  border-radius: 10px !important;
  background: #2f7b3b !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

.vnuti-ui-shell .vnuti-quick-location__actions button:disabled {
  opacity: .68 !important;
  cursor: wait !important;
}

@media (min-width: 501px) {
  .vnuti-ui-shell .vnuti-quick-location__sheet.location-sheet,
  .vnuti-ui-shell .location-modal .vnuti-quick-location__sheet {
    margin-bottom: 0 !important;
    border-radius: 20px !important;
  }
}

@media (max-width: 380px) {
  .vnuti-ui-shell .vnuti-quick-location__sheet.location-sheet,
  .vnuti-ui-shell .location-modal .vnuti-quick-location__sheet {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .vnuti-ui-shell .vnuti-quick-location__header h2 {
    font-size: 20px !important;
  }

  .vnuti-ui-shell .vnuti-quick-location__actions button {
    font-size: 13px !important;
  }
}

/* 00-location final lock 1.20.88 */
body.vnuti-staff-page:has(.vnuti-ui-shell.location-screen) {
  background: #fff !important;
  overflow-x: hidden !important;
}

.vnuti-staff-page:has(.vnuti-ui-shell.location-screen) .site-content,
.vnuti-staff-page:has(.vnuti-ui-shell.location-screen) .ast-container,
.vnuti-staff-page:has(.vnuti-ui-shell.location-screen) #primary,
.vnuti-staff-page:has(.vnuti-ui-shell.location-screen) article,
.vnuti-staff-page:has(.vnuti-ui-shell.location-screen) .entry-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.vnuti-staff-page:has(.vnuti-ui-shell.location-screen) .entry-title,
.vnuti-staff-page:has(.vnuti-ui-shell.location-screen) .site-footer {
  display: none !important;
}

.vnuti-ui-shell.location-screen {
  --green: #3f7848 !important;
  --dark: #245526 !important;
  position: relative !important;
  display: block !important;
  width: min(100%, 428px) !important;
  max-width: 428px !important;
  min-height: 926px !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background: #fff !important;
  color: #111 !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  line-height: 1.35 !important;
  -webkit-overflow-scrolling: touch !important;
}

.vnuti-ui-shell.location-screen,
.vnuti-ui-shell.location-screen *,
.vnuti-ui-shell.location-screen *::before,
.vnuti-ui-shell.location-screen *::after {
  box-sizing: border-box !important;
  letter-spacing: 0 !important;
}

.vnuti-ui-shell.location-screen a {
  color: inherit !important;
  text-decoration: none !important;
}

.vnuti-ui-shell.location-screen button {
  border: 0 !important;
  font: inherit !important;
  cursor: pointer !important;
}

.vnuti-ui-shell.location-screen .hero {
  position: relative !important;
  height: 181px !important;
  margin: 0 !important;
  padding: 18px 18px 0 !important;
  overflow: hidden !important;
  border-radius: 0 0 18px 18px !important;
  background: linear-gradient(135deg, #245526 0%, #3f7848 100%) !important;
  color: #fff !important;
}

.vnuti-ui-shell.location-screen .hero::before,
.vnuti-ui-shell.location-screen .hero::after {
  position: absolute !important;
  top: -85px !important;
  width: 170px !important;
  height: 260px !important;
  content: "" !important;
  background: rgba(255, 255, 255, .08) !important;
  transform: rotate(35deg) !important;
  pointer-events: none !important;
}

.vnuti-ui-shell.location-screen .hero::before {
  left: 42% !important;
}

.vnuti-ui-shell.location-screen .hero::after {
  left: 76% !important;
  opacity: .7 !important;
}

.vnuti-ui-shell.location-screen .statusbar,
.vnuti-ui-shell.location-screen .title-row,
.vnuti-ui-shell.location-screen .hero > p,
.vnuti-ui-shell.location-screen .search-row {
  position: relative !important;
  z-index: 1 !important;
}

.vnuti-ui-shell.location-screen .statusbar {
  display: flex !important;
  justify-content: space-between !important;
  height: 17px !important;
  color: #eef7ef !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

.vnuti-ui-shell.location-screen .title-row {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  margin-top: 25px !important;
}

.vnuti-ui-shell.location-screen .back {
  position: relative !important;
  display: block !important;
  width: 26px !important;
  height: 26px !important;
  background: transparent !important;
  box-shadow: none !important;
}

.vnuti-ui-shell.location-screen .back::before {
  position: absolute !important;
  inset: 6px !important;
  content: "" !important;
  border-bottom: 2px solid #fff !important;
  border-left: 2px solid #fff !important;
  transform: rotate(45deg) !important;
}

.vnuti-ui-shell.location-screen h1 {
  margin: 0 !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 950 !important;
  line-height: 1.15 !important;
}

.vnuti-ui-shell.location-screen .hero > p {
  margin: 21px 0 11px !important;
  color: #e8efe8 !important;
  font-size: 12px !important;
  font-style: italic !important;
  line-height: 1.3 !important;
}

.vnuti-ui-shell.location-screen .search {
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  align-items: center !important;
  width: 100% !important;
  height: 39px !important;
  padding: 0 12px !important;
  overflow: hidden !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #222 !important;
  text-align: left !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .18) !important;
}

.vnuti-ui-shell.location-screen .search span {
  display: block !important;
  width: 15px !important;
  height: 15px !important;
  border-radius: 50% !important;
  background: #3f7848 !important;
  box-shadow: inset 0 0 0 5px #fff !important;
}

.vnuti-ui-shell.location-screen .search strong {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  color: #222 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.vnuti-ui-shell.location-screen .tabs {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 13px 18px 14px !important;
  background: #fff !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, .18) !important;
}

.vnuti-ui-shell.location-screen .tabs button {
  display: grid !important;
  height: 31px !important;
  place-items: center !important;
  border-radius: 6px !important;
  background: #e1e1e1 !important;
  color: #57725b !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.vnuti-ui-shell.location-screen .tabs button.is-active {
  background: #3f7848 !important;
  color: #fff !important;
}

.vnuti-ui-shell.location-screen .places {
  display: grid !important;
  gap: 17px !important;
  padding: 25px 30px 38px !important;
}

.vnuti-ui-shell.location-screen .places[hidden] {
  display: none !important;
}

.vnuti-ui-shell.location-screen .location-empty[hidden] {
  display: none !important;
}

.vnuti-ui-shell.location-screen .place {
  display: grid !important;
  grid-template-columns: 32px minmax(0, 1fr) !important;
  gap: 11px !important;
  align-items: start !important;
  min-height: 40px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: #111 !important;
  text-align: left !important;
  box-shadow: none !important;
}

.vnuti-ui-shell.location-screen .place h2 {
  margin: 0 0 5px !important;
  overflow: hidden !important;
  color: #111 !important;
  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.vnuti-ui-shell.location-screen .place p {
  display: -webkit-box !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #222 !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}

.vnuti-ui-shell.location-screen .pin {
  display: none !important;
}

.vnuti-ui-shell.location-screen .distance {
  position: relative !important;
  display: grid !important;
  justify-items: center !important;
  color: #555 !important;
  font-size: 7px !important;
  font-style: italic !important;
  line-height: 1.1 !important;
}

.vnuti-ui-shell.location-screen .distance::before {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  margin-bottom: 3px !important;
  content: "" !important;
  border-radius: 50% !important;
  background: #3f7848 !important;
}

.vnuti-ui-shell.location-screen .location-empty {
  margin: 28px 30px !important;
  padding: 16px !important;
  border: 1px solid #d9eadc !important;
  border-radius: 10px !important;
  background: #f8fcf9 !important;
  color: #57725b !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  text-align: center !important;
}

@media (max-width: 500px) {
  .vnuti-ui-shell.location-screen {
    width: 100vw !important;
    max-width: 100vw !important;
    min-height: 100dvh !important;
  }
}

/* 00-location-map final lock 1.20.89 */
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) {
  background: #eef4ee !important;
  overflow-x: hidden !important;
}

.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site-content,
.vnuti-staff-page:has(.vnuti-location-map.map-screen) .ast-container,
.vnuti-staff-page:has(.vnuti-location-map.map-screen) #primary,
.vnuti-staff-page:has(.vnuti-location-map.map-screen) article,
.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-title,
.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site-footer {
  display: none !important;
}

.vnuti-location-map.map-screen {
  --green: #3f7848 !important;
  --dark: #245526 !important;
  position: relative !important;
  display: block !important;
  width: min(100%, 428px) !important;
  max-width: 428px !important;
  height: 926px !important;
  min-height: 926px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #f5f0e4 !important;
  color: #111 !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  line-height: 1.35 !important;
}

.vnuti-location-map.map-screen,
.vnuti-location-map.map-screen *,
.vnuti-location-map.map-screen *::before,
.vnuti-location-map.map-screen *::after {
  box-sizing: border-box !important;
  letter-spacing: 0 !important;
}

.vnuti-location-map.map-screen button,
.vnuti-location-map.map-screen input {
  font: inherit !important;
}

.vnuti-location-map.map-screen button {
  border: 0 !important;
  cursor: pointer !important;
}

.vnuti-location-map.map-screen .map-canvas,
.vnuti-location-map.map-screen .vnuti-location-map__canvas {
  position: absolute !important;
  inset: 0 !important;
  overflow: hidden !important;
  background: #f6f0e3 !important;
  touch-action: pan-x pan-y !important;
}

.vnuti-location-map.map-screen .vnuti-location-map__leaflet,
.vnuti-location-map.map-screen .leaflet-container {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: #f6f0e3 !important;
}

.vnuti-location-map.map-screen.has-real-map .map-canvas::before,
.vnuti-location-map.map-screen.has-real-map .road,
.vnuti-location-map.map-screen.has-real-map .map-label {
  display: none !important;
}

.vnuti-location-map.map-screen .vnuti-location-map__header,
.vnuti-location-map.map-screen .map-header {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 40 !important;
  height: 142px !important;
  padding: 18px 26px 0 !important;
  overflow: visible !important;
  border-radius: 0 0 18px 18px !important;
  background: linear-gradient(135deg, #245526, #3f7848) !important;
  color: #fff !important;
}

.vnuti-location-map.map-screen .vnuti-location-map__header::before,
.vnuti-location-map.map-screen .map-header::before {
  position: absolute !important;
  top: -72px !important;
  left: 48% !important;
  width: 160px !important;
  height: 240px !important;
  content: "" !important;
  background: rgba(255, 255, 255, .08) !important;
  transform: rotate(35deg) !important;
  pointer-events: none !important;
}

.vnuti-location-map.map-screen .statusbar {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  justify-content: space-between !important;
  height: 17px !important;
  color: #eef7ef !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

.vnuti-location-map.map-screen .address-row {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  margin-top: 26px !important;
  overflow: visible !important;
}

.vnuti-location-map.map-screen .back {
  position: relative !important;
  display: block !important;
  width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.vnuti-location-map.map-screen .back::before {
  position: absolute !important;
  inset: 6px !important;
  content: "" !important;
  border-bottom: 2px solid #fff !important;
  border-left: 2px solid #fff !important;
  transform: rotate(45deg) !important;
}

.vnuti-location-map.map-screen .address-pill {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) !important;
  align-items: center !important;
  width: 100% !important;
  height: 42px !important;
  padding: 0 13px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #171717 !important;
  box-shadow: 0 3px 8px rgba(0, 0, 0, .2) !important;
  cursor: text !important;
}

.vnuti-location-map.map-screen .address-pill__icon {
  display: block !important;
  width: 14px !important;
  height: 14px !important;
  border-radius: 50% !important;
  background: #3f7848 !important;
  box-shadow: inset 0 0 0 5px #fff !important;
}

.vnuti-location-map.map-screen .address-pill input {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: #171717 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  box-shadow: none !important;
}

.vnuti-location-map.map-screen .location-suggestions,
.vnuti-location-map.map-screen .location-notice {
  position: absolute !important;
  top: 48px !important;
  right: 0 !important;
  left: 40px !important;
  z-index: 45 !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .18) !important;
}

.vnuti-location-map.map-screen .location-suggestions[hidden],
.vnuti-location-map.map-screen .location-notice[hidden] {
  display: none !important;
}

.vnuti-location-map.map-screen .selected-pin {
  position: absolute !important;
  top: 40% !important;
  left: 50% !important;
  z-index: 20 !important;
  display: block !important;
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  background: rgba(63, 120, 72, .18) !important;
  box-shadow: 0 0 0 15px rgba(63, 120, 72, .16) !important;
  transform: translate(-50%, -50%) !important;
  pointer-events: none !important;
}

.vnuti-location-map.map-screen .selected-pin::before {
  position: absolute !important;
  top: 2px !important;
  left: 20px !important;
  width: 32px !important;
  height: 42px !important;
  content: "" !important;
  border-radius: 50% 50% 50% 0 !important;
  background: #3f7848 !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .2) !important;
  transform: rotate(-45deg) !important;
}

.vnuti-location-map.map-screen .selected-pin span {
  position: absolute !important;
  top: 14px !important;
  left: 31px !important;
  z-index: 1 !important;
  display: block !important;
  width: 11px !important;
  height: 11px !important;
  border-radius: 50% !important;
  background: #fff !important;
}

.vnuti-location-map.map-screen .locate[data-location-gps] {
  position: absolute !important;
  right: 34px !important;
  bottom: 330px !important;
  z-index: 35 !important;
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  place-items: center !important;
  padding: 0 !important;
  border-radius: 999px !important;
  background: #f7fbf7 !important;
  color: #3f7848 !important;
  font-size: 0 !important;
  box-shadow: 0 8px 20px rgba(38, 65, 43, .18) !important;
}

.vnuti-location-map.map-screen .bottom-sheet,
.vnuti-location-map.map-screen .vnuti-location-map__sheet {
  position: absolute !important;
  right: 22px !important;
  bottom: 28px !important;
  left: 22px !important;
  z-index: 36 !important;
  padding: 18px 18px 20px !important;
  border-radius: 20px 20px 14px 14px !important;
  background: #fff !important;
  box-shadow: 0 -8px 20px rgba(0, 0, 0, .1) !important;
}

.vnuti-location-map.map-screen .hotel-row {
  display: grid !important;
  grid-template-columns: 35px minmax(0, 1fr) !important;
  gap: 11px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 36px !important;
  margin: 0 0 15px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #111 !important;
  text-align: left !important;
  box-shadow: none !important;
}

.vnuti-location-map.map-screen .hotel-row.is-selected strong {
  color: #3f7848 !important;
}

.vnuti-location-map.map-screen .hotel-row strong {
  display: block !important;
  margin: 1px 0 5px !important;
  overflow: hidden !important;
  color: #111 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.vnuti-location-map.map-screen .hotel-row small {
  display: block !important;
  overflow: hidden !important;
  color: #444 !important;
  font-size: 8px !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.vnuti-location-map.map-screen .pin-small {
  display: grid !important;
  justify-items: center !important;
  color: #333 !important;
  font-size: 7px !important;
  font-style: italic !important;
}

.vnuti-location-map.map-screen .pin-small::before {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  margin-bottom: 3px !important;
  content: "" !important;
  border-radius: 50% 50% 50% 0 !important;
  background: #3f7848 !important;
  transform: rotate(-45deg) !important;
}

.vnuti-location-map.map-screen .choose {
  display: grid !important;
  width: 100% !important;
  height: 35px !important;
  place-items: center !important;
  margin-top: 3px !important;
  border-radius: 5px !important;
  background: #3f7848 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

@media (max-width: 500px) {
  .vnuti-location-map.map-screen {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    min-height: 926px !important;
  }
}

/* 00-location-map selected-place sheet 1.20.93 */
.vnuti-location-map.map-screen .bottom-sheet,
.vnuti-location-map.map-screen .vnuti-location-map__sheet {
  right: 20px !important;
  bottom: 28px !important;
  left: 20px !important;
  z-index: 36 !important;
  padding: 14px 16px 18px !important;
  border-radius: 22px 22px 16px 16px !important;
  background: #fff !important;
  box-shadow: 0 -8px 22px rgba(0, 0, 0, .13) !important;
}

.vnuti-location-map.map-screen .sheet-handle {
  width: 46px !important;
  height: 4px !important;
  margin: 0 auto 13px !important;
  border-radius: 999px !important;
  background: #dfe8df !important;
}

.vnuti-location-map.map-screen .selected-place {
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 0 12px !important;
  padding: 12px !important;
  border: 1px solid #d9eadc !important;
  border-radius: 14px !important;
  background: #fbfffc !important;
  text-align: left !important;
}

.vnuti-location-map.map-screen .selected-place p {
  margin: 0 0 5px !important;
  color: #6f7c72 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

.vnuti-location-map.map-screen .selected-place strong {
  display: block !important;
  margin: 0 0 5px !important;
  overflow: hidden !important;
  color: #172016 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 950 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.vnuti-location-map.map-screen .selected-place small {
  display: block !important;
  overflow: hidden !important;
  color: #69746b !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

.vnuti-location-map.map-screen .sheet-note {
  margin: 0 4px 13px !important;
  color: #7a847d !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

.vnuti-location-map.map-screen .choose {
  width: 100% !important;
  height: 42px !important;
  margin-top: 0 !important;
  border-radius: 7px !important;
  background: #3f7848 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 950 !important;
}

.vnuti-location-map.map-screen .selected-place .pin-small {
  display: grid !important;
  justify-items: center !important;
  color: #3f7848 !important;
  font-size: 9px !important;
  font-style: normal !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

/* 00-location-map mobile fit + centered pin 1.20.98 */
html.vnuti-staff-page:has(.vnuti-location-map.map-screen),
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) {
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  background: #eef4ee !important;
}

body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site-content,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .ast-container,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) #primary,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) article,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-content {
  width: 100% !important;
  max-width: none !important;
  height: 100dvh !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.vnuti-location-map.map-screen,
.vnuti-ui-shell.map-screen.vnuti-location-map {
  position: relative !important;
  display: block !important;
  width: min(100vw, 428px) !important;
  max-width: 428px !important;
  height: 100dvh !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  overscroll-behavior: contain !important;
  background: #eef4ee !important;
}

@supports (height: 100svh) {
  body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site,
  body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site-content,
  body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .ast-container,
  body.vnuti-staff-page:has(.vnuti-location-map.map-screen) #primary,
  body.vnuti-staff-page:has(.vnuti-location-map.map-screen) article,
  body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-content,
  .vnuti-location-map.map-screen,
  .vnuti-ui-shell.map-screen.vnuti-location-map {
    height: 100svh !important;
  }
}

body.admin-bar .vnuti-location-map.map-screen,
body.admin-bar .vnuti-ui-shell.map-screen.vnuti-location-map {
  height: calc(100dvh - 32px) !important;
}

.vnuti-location-map.map-screen .map-canvas,
.vnuti-location-map.map-screen .vnuti-location-map__canvas,
.vnuti-ui-shell.map-screen .map-canvas,
.vnuti-ui-shell.map-screen .vnuti-location-map__canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  touch-action: pan-x pan-y !important;
}

.vnuti-location-map.map-screen .vnuti-location-map__leaflet,
.vnuti-location-map.map-screen .leaflet-container,
.vnuti-ui-shell.map-screen .vnuti-location-map__leaflet,
.vnuti-ui-shell.map-screen .leaflet-container {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 1 !important;
}

.vnuti-location-map.map-screen.has-real-map .selected-pin,
.vnuti-ui-shell.map-screen.has-real-map .selected-pin {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 22 !important;
  display: block !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% 50% 50% 0 !important;
  background: #3f7848 !important;
  box-shadow: 0 8px 16px rgba(27, 67, 35, .24) !important;
  transform: translate(-50%, -72%) rotate(-45deg) !important;
  pointer-events: none !important;
}

.vnuti-location-map.map-screen.has-real-map .selected-pin::before,
.vnuti-ui-shell.map-screen.has-real-map .selected-pin::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: -1 !important;
  width: 82px !important;
  height: 82px !important;
  border-radius: 999px !important;
  background: rgba(63, 120, 72, .2) !important;
  box-shadow: none !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

.vnuti-location-map.map-screen.has-real-map .selected-pin span,
.vnuti-ui-shell.map-screen.has-real-map .selected-pin span {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 2 !important;
  display: block !important;
  width: 12px !important;
  height: 12px !important;
  border-radius: 999px !important;
  background: #fff !important;
  transform: translate(-50%, -50%) !important;
}

.vnuti-location-map.map-screen .locate[data-location-gps],
.vnuti-ui-shell.map-screen .locate[data-location-gps] {
  right: 34px !important;
  bottom: calc(max(18px, env(safe-area-inset-bottom)) + 236px) !important;
  z-index: 38 !important;
}

.vnuti-location-map.map-screen .bottom-sheet,
.vnuti-location-map.map-screen .vnuti-location-map__sheet,
.vnuti-ui-shell.map-screen .bottom-sheet,
.vnuti-ui-shell.map-screen .vnuti-location-map__sheet {
  left: 20px !important;
  right: 20px !important;
  bottom: max(18px, env(safe-area-inset-bottom)) !important;
  z-index: 42 !important;
  max-height: min(245px, calc(100dvh - 166px)) !important;
  padding: 14px 16px 16px !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important;
}

.vnuti-location-map.map-screen .sheet-handle,
.vnuti-ui-shell.map-screen .sheet-handle {
  margin-bottom: 10px !important;
}

.vnuti-location-map.map-screen .selected-place,
.vnuti-ui-shell.map-screen .selected-place {
  min-height: 62px !important;
  margin-bottom: 10px !important;
  padding: 10px 12px !important;
}

.vnuti-location-map.map-screen .sheet-note,
.vnuti-ui-shell.map-screen .sheet-note {
  margin-bottom: 10px !important;
}

.vnuti-location-map.map-screen .choose,
.vnuti-ui-shell.map-screen .choose {
  height: 40px !important;
}

@media (max-height: 740px) {
  .vnuti-location-map.map-screen .vnuti-location-map__header,
  .vnuti-location-map.map-screen .map-header,
  .vnuti-ui-shell.map-screen .vnuti-location-map__header,
  .vnuti-ui-shell.map-screen .map-header {
    height: 116px !important;
    padding-top: 14px !important;
  }

  .vnuti-location-map.map-screen .address-row,
  .vnuti-ui-shell.map-screen .address-row {
    margin-top: 18px !important;
  }

  .vnuti-location-map.map-screen .bottom-sheet,
  .vnuti-location-map.map-screen .vnuti-location-map__sheet,
  .vnuti-ui-shell.map-screen .bottom-sheet,
  .vnuti-ui-shell.map-screen .vnuti-location-map__sheet {
    max-height: min(220px, calc(100dvh - 132px)) !important;
    padding: 12px 14px 14px !important;
  }

  .vnuti-location-map.map-screen .locate[data-location-gps],
  .vnuti-ui-shell.map-screen .locate[data-location-gps] {
    bottom: calc(max(14px, env(safe-area-inset-bottom)) + 214px) !important;
  }
}

/* 00-location-map cleanup 1.20.111 */
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-content > p:empty{
  display:none!important;
}
.vnuti-location-map.map-screen .location-suggestions button{
  display:block!important;
  width:100%!important;
  padding:12px 14px!important;
  border:0!important;
  border-bottom:1px solid #edf1ee!important;
  background:#fff!important;
  color:#152116!important;
  text-align:left!important;
  box-shadow:none!important;
}
.vnuti-location-map.map-screen .location-suggestions button:last-child{
  border-bottom:0!important;
}
.vnuti-location-map.map-screen .location-suggestions button strong{
  display:block!important;
  margin:0 0 3px!important;
  overflow:hidden!important;
  color:#1d261e!important;
  font-size:13px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
.vnuti-location-map.map-screen .location-suggestions button small{
  display:block!important;
  overflow:hidden!important;
  color:#6e7a70!important;
  font-size:11px!important;
  line-height:1.35!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
.vnuti-location-map.map-screen .location-notice{
  padding:10px 12px!important;
  color:#4d5c51!important;
  font-size:12px!important;
  line-height:1.35!important;
}
.vnuti-location-map.map-screen .locate[data-location-gps].is-loading{
  opacity:.72!important;
}
.vnuti-location-map.map-screen .locate[data-location-gps][disabled]{
  pointer-events:none!important;
}
.vnuti-location-map.map-screen .hotel-row{
  display:none!important;
}

/* map header lock 1.20.116 */
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-content,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site-content,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .ast-container,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .content-area,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) article,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .hentry{
  margin-top:0!important;
  padding-top:0!important;
}

.vnuti-location-map.map-screen,
.vnuti-ui-shell.map-screen{
  width:min(100%,428px)!important;
  max-width:428px!important;
  margin:0 auto!important;
  overflow:hidden!important;
}

.vnuti-location-map.map-screen .vnuti-location-map__header,
.vnuti-location-map.map-screen .map-header,
.vnuti-ui-shell.map-screen .vnuti-location-map__header,
.vnuti-ui-shell.map-screen .map-header{
  display:block!important;
  width:100%!important;
  min-height:112px!important;
  height:112px!important;
  margin:0!important;
  padding:18px 16px 0!important;
  border-radius:0 0 18px 18px!important;
}

.vnuti-location-map.map-screen .address-row,
.vnuti-ui-shell.map-screen .address-row{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:30px!important;
}

.vnuti-location-map.map-screen .back,
.vnuti-ui-shell.map-screen .back{
  align-self:center!important;
  justify-self:start!important;
  width:36px!important;
  height:36px!important;
  margin:0!important;
}

.vnuti-location-map.map-screen .address-pill,
.vnuti-ui-shell.map-screen .address-pill{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  height:46px!important;
  margin:0!important;
  padding:0 14px!important;
  border-radius:11px!important;
}

.vnuti-location-map.map-screen .address-pill input,
.vnuti-ui-shell.map-screen .address-pill input{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

/* map bottom sheet final lock 1.20.118 */
.vnuti-location-map.map-screen .bottom-sheet.vnuti-location-map__sheet,
.vnuti-ui-shell.map-screen.vnuti-location-map .bottom-sheet.vnuti-location-map__sheet{
  position:absolute!important;
  left:20px!important;
  right:20px!important;
  bottom:max(18px,env(safe-area-inset-bottom))!important;
  z-index:42!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:14px 16px 18px!important;
  border-radius:22px 22px 16px 16px!important;
  background:#fff!important;
  box-shadow:0 -8px 22px rgba(0,0,0,.13)!important;
  overflow:visible!important;
  -webkit-overflow-scrolling:auto!important;
}

.vnuti-location-map.map-screen .sheet-handle,
.vnuti-ui-shell.map-screen.vnuti-location-map .sheet-handle{
  width:46px!important;
  height:4px!important;
  margin:0 auto 2px!important;
  border-radius:999px!important;
  background:#dfe8df!important;
}

.vnuti-location-map.map-screen .selected-place,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  min-height:0!important;
  margin:0!important;
  padding:12px!important;
  border:1px solid #d9eadc!important;
  border-radius:14px!important;
  background:#fbfffc!important;
  text-align:left!important;
}

.vnuti-location-map.map-screen .selected-place__icon,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place__icon{
  position:relative!important;
  display:block!important;
  width:42px!important;
  height:42px!important;
  border-radius:999px!important;
  background:#eef7f0!important;
}

.vnuti-location-map.map-screen .selected-place__icon::before,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place__icon::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:47%!important;
  width:18px!important;
  height:18px!important;
  border-radius:50% 50% 50% 0!important;
  background:#3f7848!important;
  transform:translate(-50%,-50%) rotate(-45deg)!important;
}

.vnuti-location-map.map-screen .selected-place__icon::after,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place__icon::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:41%!important;
  width:6px!important;
  height:6px!important;
  border-radius:999px!important;
  background:#fff!important;
  transform:translate(-50%,-50%)!important;
}

.vnuti-location-map.map-screen .selected-place p,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place p{
  margin:0 0 4px!important;
  color:#6f7c72!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:800!important;
}

.vnuti-location-map.map-screen .selected-place strong,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place strong{
  display:block!important;
  margin:0!important;
  color:#172016!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.vnuti-location-map.map-screen .selected-place small,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place small{
  display:block!important;
  margin:4px 0 0!important;
  color:#69746b!important;
  font-size:10px!important;
  line-height:1.35!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.vnuti-location-map.map-screen .sheet-note,
.vnuti-ui-shell.map-screen.vnuti-location-map .sheet-note{
  margin:0!important;
  color:#7a847c!important;
  font-size:11px!important;
  line-height:1.35!important;
  font-weight:600!important;
}

.vnuti-location-map.map-screen .choose,
.vnuti-ui-shell.map-screen.vnuti-location-map .choose{
  width:100%!important;
  height:40px!important;
  margin:0!important;
  border-radius:7px!important;
  background:#397742!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:900!important;
}

.vnuti-location-map.map-screen .bottom-sheet.vnuti-location-map__sheet.is-loading .choose,
.vnuti-location-map.map-screen .bottom-sheet.vnuti-location-map__sheet .choose[disabled],
.vnuti-ui-shell.map-screen.vnuti-location-map .bottom-sheet.vnuti-location-map__sheet.is-loading .choose,
.vnuti-ui-shell.map-screen.vnuti-location-map .bottom-sheet.vnuti-location-map__sheet .choose[disabled]{
  opacity:.55!important;
  pointer-events:none!important;
}

.vnuti-location-map.map-screen .selected-place.is-loading strong,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place.is-loading strong{
  color:#47614c!important;
}

.vnuti-location-map.map-screen .selected-place.is-empty,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place.is-empty{
  border-color:#eadfd1!important;
  background:#fffaf3!important;
}

.vnuti-location-map.map-screen .selected-place.is-empty strong,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place.is-empty strong{
  color:#6e5a39!important;
}

/* VNUTI location map screen - final scoped rules 1.20.120 */
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-header,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-title,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site-footer{
  display:none!important;
}

body.vnuti-staff-page:has(.vnuti-location-map.map-screen),
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .site-content,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .ast-container,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) #primary,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) article,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .entry-content,
body.vnuti-staff-page:has(.vnuti-location-map.map-screen) .wp-block-post-content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#eef4ee!important;
}

.vnuti-location-map.map-screen,
.vnuti-ui-shell--map.vnuti-location-map{
  position:relative!important;
  display:block!important;
  width:min(100%,428px)!important;
  max-width:428px!important;
  height:100dvh!important;
  min-height:720px!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:hidden!important;
  background:#f5f0e4!important;
  color:#172016!important;
}

.vnuti-location-map.map-screen *,
.vnuti-location-map.map-screen *::before,
.vnuti-location-map.map-screen *::after{
  box-sizing:border-box!important;
}

.vnuti-location-map.map-screen button,
.vnuti-location-map.map-screen input{
  font:inherit!important;
}

.vnuti-location-map.map-screen .map-canvas,
.vnuti-location-map.map-screen .vnuti-location-map__canvas{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  background:#efe8d7!important;
}

.vnuti-location-map.map-screen .vnuti-location-map__leaflet,
.vnuti-location-map.map-screen .leaflet-container{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
}

.vnuti-location-map.map-screen.has-real-map .road,
.vnuti-location-map.map-screen.has-real-map .map-label,
.vnuti-location-map.map-screen.has-real-map .map-canvas::before{
  display:none!important;
}

.vnuti-location-map.map-screen .map-header,
.vnuti-location-map.map-screen .vnuti-location-map__header{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:40!important;
  display:block!important;
  width:100%!important;
  height:112px!important;
  min-height:112px!important;
  margin:0!important;
  padding:18px 16px 0!important;
  overflow:visible!important;
  border-radius:0 0 18px 18px!important;
  background:linear-gradient(135deg,#245526 0%,#3f7848 100%)!important;
  box-shadow:none!important;
}

.vnuti-location-map.map-screen .map-header::before,
.vnuti-location-map.map-screen .vnuti-location-map__header::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(124deg,transparent 0 42%,rgba(255,255,255,.12) 42% 62%,transparent 62% 100%)!important;
  pointer-events:none!important;
}

.vnuti-location-map.map-screen .statusbar{
  display:none!important;
}

.vnuti-location-map.map-screen .address-row{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  width:100%!important;
  margin:30px 0 0!important;
  padding:0!important;
}

.vnuti-location-map.map-screen .back{
  position:relative!important;
  display:block!important;
  align-self:center!important;
  justify-self:start!important;
  width:38px!important;
  height:46px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.vnuti-location-map.map-screen .back::before{
  content:""!important;
  position:absolute!important;
  left:11px!important;
  top:14px!important;
  width:17px!important;
  height:17px!important;
  border-left:2.4px solid #fff!important;
  border-bottom:2.4px solid #fff!important;
  transform:rotate(45deg)!important;
}

.vnuti-location-map.map-screen .address-pill{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  height:46px!important;
  margin:0!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(20,45,25,.12)!important;
}

.vnuti-location-map.map-screen .address-pill__icon{
  position:relative!important;
  width:18px!important;
  height:18px!important;
}

.vnuti-location-map.map-screen .address-pill__icon::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:13px!important;
  height:13px!important;
  border-radius:50% 50% 50% 0!important;
  background:#3f7848!important;
  transform:translate(-50%,-55%) rotate(-45deg)!important;
}

.vnuti-location-map.map-screen .address-pill__icon::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:41%!important;
  width:4px!important;
  height:4px!important;
  border-radius:50%!important;
  background:#fff!important;
  transform:translate(-50%,-50%)!important;
}

.vnuti-location-map.map-screen .address-pill input{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#172016!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:46px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.vnuti-location-map.map-screen .location-suggestions,
.vnuti-location-map.map-screen .location-notice{
  position:absolute!important;
  left:48px!important;
  right:0!important;
  top:52px!important;
  z-index:50!important;
  width:auto!important;
  max-height:260px!important;
  overflow:auto!important;
  border:1px solid #dce9de!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 16px 34px rgba(19,48,24,.18)!important;
}

.vnuti-location-map.map-screen .location-suggestions[hidden],
.vnuti-location-map.map-screen .location-notice[hidden]{
  display:none!important;
}

.vnuti-location-map.map-screen .selected-pin{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  z-index:22!important;
  width:42px!important;
  height:42px!important;
  border-radius:50% 50% 50% 0!important;
  background:#3f7848!important;
  transform:translate(-50%,-72%) rotate(-45deg)!important;
  pointer-events:none!important;
  box-shadow:0 0 0 23px rgba(63,120,72,.18),0 8px 18px rgba(21,52,27,.2)!important;
}

.vnuti-location-map.map-screen .selected-pin span{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:11px!important;
  height:11px!important;
  border-radius:999px!important;
  background:#fff!important;
  transform:translate(-50%,-50%)!important;
}

.vnuti-location-map.map-screen .locate[data-location-gps]{
  position:absolute!important;
  right:34px!important;
  bottom:calc(max(18px,env(safe-area-inset-bottom)) + 236px)!important;
  z-index:38!important;
  display:grid!important;
  width:41px!important;
  height:41px!important;
  place-items:center!important;
  border:0!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#3f7848!important;
  box-shadow:0 8px 20px rgba(31,64,38,.18),0 0 0 7px rgba(255,255,255,.62)!important;
}

.vnuti-location-map.map-screen .locate[data-location-gps]::before{
  content:""!important;
  display:block!important;
  width:15px!important;
  height:15px!important;
  border:2px solid currentColor!important;
  border-radius:50%!important;
  box-shadow:0 0 0 4px rgba(63,120,72,.12)!important;
}

.vnuti-location-map.map-screen .locate[data-location-gps]::after{
  content:""!important;
  position:absolute!important;
  width:5px!important;
  height:5px!important;
  border-radius:50%!important;
  background:currentColor!important;
}

.vnuti-location-map.map-screen .locate[data-location-gps].is-loading{
  opacity:.65!important;
}

.vnuti-location-map.map-screen .bottom-sheet.vnuti-location-map__sheet{
  position:absolute!important;
  left:20px!important;
  right:20px!important;
  bottom:max(18px,env(safe-area-inset-bottom))!important;
  z-index:42!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:14px 16px 18px!important;
  border-radius:22px 22px 16px 16px!important;
  background:#fff!important;
  box-shadow:0 -8px 22px rgba(0,0,0,.13)!important;
  overflow:visible!important;
}

.vnuti-location-map.map-screen .hotel-row,
.vnuti-location-map.map-screen .pin-small{
  display:none!important;
}

@media (max-height:740px){
  .vnuti-location-map.map-screen .bottom-sheet.vnuti-location-map__sheet{
    left:16px!important;
    right:16px!important;
    padding:12px 14px 14px!important;
  }

  .vnuti-location-map.map-screen .sheet-note{
    display:none!important;
  }

  .vnuti-location-map.map-screen .locate[data-location-gps]{
    bottom:calc(max(14px,env(safe-area-inset-bottom)) + 206px)!important;
  }
}

/* VNUTI map selected-place compact lock 1.20.121 */
.vnuti-location-map.map-screen .bottom-sheet.vnuti-location-map__sheet,
.vnuti-ui-shell.map-screen.vnuti-location-map .bottom-sheet.vnuti-location-map__sheet{
  top:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:calc(100dvh - 162px)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  overflow:visible!important;
}

.vnuti-location-map.map-screen .sheet-handle,
.vnuti-ui-shell.map-screen.vnuti-location-map .sheet-handle{
  flex:0 0 auto!important;
}

.vnuti-location-map.map-screen .selected-place[data-location-selected-place],
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place[data-location-selected-place]{
  position:relative!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  height:auto!important;
  min-height:64px!important;
  max-height:none!important;
  flex:0 0 auto!important;
  align-self:stretch!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid #d9eadc!important;
  border-radius:12px!important;
  background:#fff!important;
  overflow:hidden!important;
}

.vnuti-location-map.map-screen .selected-place__content,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place__content{
  display:block!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

.vnuti-location-map.map-screen .selected-place p,
.vnuti-location-map.map-screen .selected-place strong,
.vnuti-location-map.map-screen .selected-place small,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place p,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place strong,
.vnuti-ui-shell.map-screen.vnuti-location-map .selected-place small{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

.vnuti-location-map.map-screen .sheet-note,
.vnuti-ui-shell.map-screen.vnuti-location-map .sheet-note{
  flex:0 0 auto!important;
  margin:0!important;
}

.vnuti-location-map.map-screen .choose[data-location-choose],
.vnuti-ui-shell.map-screen.vnuti-location-map .choose[data-location-choose]{
  flex:0 0 40px!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
}

/* VNUTI map GPS pin icon lock 1.20.158 */
.vnuti-location-map.map-screen .locate[data-location-gps],
.vnuti-ui-shell.map-screen.vnuti-location-map .locate[data-location-gps]{
  display:block!important;
  width:44px!important;
  height:44px!important;
  border:0!important;
  border-radius:999px!important;
  background-color:#fff!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%233f7848' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 48c5.1 4.1 22.9 4.1 28 0' stroke-width='5'/%3E%3Cpath d='M32 8c-8.4 0-15.2 6.8-15.2 15.2 0 10.9 15.2 26.8 15.2 26.8s15.2-15.9 15.2-26.8C47.2 14.8 40.4 8 32 8Z' fill='%233f7848' stroke-width='3'/%3E%3Ccircle cx='32' cy='23.5' r='5.6' fill='%23fff' stroke='none'/%3E%3C/g%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:30px 30px!important;
  box-shadow:0 7px 18px rgba(29,66,36,.16),0 1px 3px rgba(0,0,0,.12)!important;
}

.vnuti-location-map.map-screen .locate[data-location-gps]::before,
.vnuti-location-map.map-screen .locate[data-location-gps]::after,
.vnuti-ui-shell.map-screen.vnuti-location-map .locate[data-location-gps]::before,
.vnuti-ui-shell.map-screen.vnuti-location-map .locate[data-location-gps]::after{
  content:none!important;
  display:none!important;
}

.vnuti-location-map.map-screen .locate[data-location-gps].is-loading,
.vnuti-ui-shell.map-screen.vnuti-location-map .locate[data-location-gps].is-loading{
  opacity:.72!important;
  filter:saturate(.9)!important;
}
