/* =========================================================
   RESET
   ========================================================= */
.wpsd_widget,
.wpsd_widget * {
  margin: 0 !important;
  padding: 0 !important;
}
.wpsd_widget {
  position: relative !important;
  width: 100% !important;
}
/* =========================================================
   FORMULARIO
   ========================================================= */
.wpsd_search_widget {
  display: flex !important;
  align-items: flex-end !important;
  flex-wrap: wrap !important;
  gap: 20px 24px !important;
}

.wpsd_search_widget--compact {
  flex-direction: column !important;
  align-items: stretch !important;
}


/* =========================================================
   CAMPOS
   ========================================================= */

.wpsd_field {
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
}

.wpsd_field--hotel {
  flex: 2.2 1 200px !important;
  min-width: 200px !important;
}

.wpsd_field--date {
  flex: 1 !important;
  min-width: 120px !important;
}

.wpsd_field--guests {
  flex: 0 1 90px !important;
  min-width: 90px !important;
}


/* =========================================================
   LABELS
   ========================================================= */

.wpsd_field label {
  font-size: 14px !important;
  color: #003B5E !important;
  margin-bottom: 10px !important;
  font-weight: 400 !important;
}


/* =========================================================
   SELECT
   ========================================================= */

.wpsd_field select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  border: 0.5px solid #B0C2CD !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: #003B5E !important;
  padding: 8px 28px 8px 10px !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'><path d='M2 4.66038L7 10L12 4.66038L11.3728 4L7 8.66981L2.62721 4L2 4.66038Z' fill='%23003B5E'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: right 8px center !important;
  outline: none !important;
  cursor: pointer !important;
  width: 100% !important;
}

.wpsd_field select:hover,
.wpsd_field select:focus {
  border-color: #003B5E !important;
}


/* =========================================================
   CAMPO HOTEL TEXTO
   ========================================================= */

.wpsd_hotel--text {
  box-sizing: border-box !important;
  border: 0.5px solid #B0C2CD !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: #003B5E !important;
  padding: 8px 10px !important;
  outline: none !important;
  width: 100% !important;
}

.wpsd_hotel--text:hover,
.wpsd_hotel--text:focus {
  border-color: #003B5E !important;
}

.wpsd_hotel--text::placeholder {
  color: #7c93a1 !important;
}


/* =========================================================
   GRUPO DE FECHAS
   ========================================================= */

.wpsd_dates_group {
  position: relative !important;
  display: flex !important;
  gap: 20px 24px !important;
  flex: 2.6 1 280px !important;
  min-width: 280px !important;
}

.wpsd_search_widget--compact .wpsd_dates_group {
  flex: 0 0 auto !important;
  width: 100% !important;
  flex-direction: column !important;
}


/* =========================================================
   FECHAS
   ========================================================= */

.wpsd_date_display {
  border: 0.5px solid #B0C2CD !important;
  background-color: transparent !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: #003B5E !important;
  padding: 8px 28px 8px 10px !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'><path d='M2 4.66038L7 10L12 4.66038L11.3728 4L7 8.66981L2.62721 4L2 4.66038Z' fill='%23003B5E'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: right 8px center !important;
  cursor: pointer !important;
  user-select: none !important;
  white-space: nowrap !important;
}

.wpsd_date_display.active_field {
  border-color: #003B5E !important;
  font-weight: 400 !important;
}


/* =========================================================
   ALT INPUT DE FLATPICKR (fix: no traía el estilo del resto)
   ========================================================= */

input.wpsd_alt_checkin,
input.wpsd_alt_checkout,
input.wpsd_alt_checkin.form-control,
input.wpsd_alt_checkout.form-control {
  box-sizing: border-box !important;
  border: 0.5px solid #B0C2CD !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  background-image: none !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: #003B5E !important;
  padding: 8px 10px !important;
  outline: none !important;
  cursor: pointer !important;
  width: 100% !important;
  height: auto !important;
  box-shadow: none !important;
}

input.wpsd_alt_checkin:hover,
input.wpsd_alt_checkin:focus,
input.wpsd_alt_checkout:hover,
input.wpsd_alt_checkout:focus {
  border-color: #003B5E !important;
  box-shadow: none !important;
}


/* =========================================================
   CALENDARIO BASE
   ========================================================= */

.wpsd_cal_panel {
  display: none !important;
  position: absolute !important;
  top: calc(100% + 10px) !important;
  left: 0 !important;
  background: #fff !important;
  padding: 22px 26px 26px !important;
  box-shadow: 0 10px 40px rgba(20,30,50,0.16) !important;
  z-index: 99999 !important;
}

.wpsd_cal_panel.open {
  display: block !important;
}


/* =========================================================
   HEADER DEL CALENDARIO
   ========================================================= */

.wpsd_cal_header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.wpsd_nav_btn {
  width: 34px !important;
  height: 34px !important;
  border: 1px solid #d8dde5 !important;
  background: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  color: #444 !important;
}

.wpsd_nav_btn:hover {
  background: #f4f6f8 !important;
}


/* =========================================================
   MESES
   ========================================================= */

.wpsd_months {
  display: flex !important;
  gap: 36px !important;
  margin-top: 10px !important;
}

.wpsd_month {
  flex: 1 !important;
  min-width: 260px !important;
}

.wpsd_month_title {
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #1c2430 !important;
  margin-bottom: 12px !important;
}




/* =========================================================
   BOTÓN
   ========================================================= */

.wpsd_submit_wrap {
  display: flex !important;
  flex: 0 0 auto !important;
}

.wpsd_submit {
  background: #C8806A !important;
  color: #fff !important;
  font-weight: 400 !important;
  border: none !important;
  padding: 12px 20px !important;
  font-size: 14px !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  align-self: stretch !important;
  width: 100% !important;
}

.wpsd_submit:hover,
.wpsd_submit:focus {
  background: #8E5B4B !important;
}


/* =========================================================
   VARIANTES DEL BOTÓN
   ========================================================= */

.wpsd_submit_wrap--newrow {
  flex-basis: 100% !important;
  margin-top: 6px !important;
}

.wpsd_submit--auto {
  width: auto !important;
  align-self: auto !important;
}

.wpsd-custom-mrg {
  margin-top: 50px !important;
}


/* =========================================================
   FORMULARIO COMPACTO
   ========================================================= */

.wpsd_search_widget--compact .wpsd_field {
  flex: 0 0 auto !important;
  width: 100% !important;
  min-width: 0 !important;
}

.wpsd_search_widget--compact .wpsd_submit_wrap {
  width: 100% !important;
  margin-top: 4px !important;
}


/* =========================================================
   ELEMENTOR POPUP
   ========================================================= */

.elementor-popup-modal,
.elementor-popup-modal .dialog-widget-content,
.elementor-popup-modal .dialog-message {
  overflow: visible !important;
}

.elementor-popup-modal .wpsd_widget {
  position: relative !important;
}




/* =========================================================
   TABLET
   ========================================================= */
@media (min-width: 641px) and (max-width: 900px) {
  .wpsd_search_widget {
    row-gap: 16px !important;
  }

  .wpsd_field--hotel {
    flex-basis: 100% !important;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 640px) {
  .wpsd_widget,
  .wpsd_widget * {
    margin: 0 !important;
  }


  .wpsd_search_widget {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
  }

  .wpsd_field {
    width: 100% !important;
  }

  .wpsd_field--hotel,
  .wpsd_field--date,
  .wpsd_field--guests {
    flex: 0 0 auto !important;

    min-width: 0 !important;
  }

  .wpsd_dates_group {
    flex: 0 0 auto !important;
    width: 100% !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  .wpsd_field label {
    margin-bottom: 4px !important;
  }

  .wpsd_submit_wrap {
    width: 100% !important;
    margin-top: 4px !important;
  }

}

input.wpsd_checkin.flatpickr-input[type="hidden"],
input.wpsd_checkout.flatpickr-input[type="hidden"],
input.flatpickr-input[type="hidden"] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    padding: 0 !important;
    border: none !important;
}

.flatpickr-wrapper {
    width: 100% !important;
}

.flatpickr-calendar {
    z-index: 999999 !important;
}