/* ============================================
   MPHB Booking Form – Horizontales Layout
   Styling analog zum Elementor-Suchblock
   ============================================ */

/* 1. Formular als Flex-Container */
.mphb-booking-form {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0;
  text-align: center;
}

/* 2. Hinweis-Zeile – volle Breite */
.mphb-booking-form .mphb-required-fields-tip {
  width: 100%;
  margin: 0 0 4px 0;
  text-align: left;
}

/* 3. Feldgruppen inline */
.mphb-booking-form .mphb-check-in-date-wrapper,
.mphb-booking-form .mphb-check-out-date-wrapper,
.mphb-booking-form .mphb-adults-wrapper,
.mphb-booking-form .mphb-children-wrapper,
.mphb-booking-form .mphb-reserve-btn-wrapper {
  display: inline-block !important;
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
}

/* 4. <br> zwischen Label und Feld entfernen */
.mphb-booking-form .mphb-check-in-date-wrapper br,
.mphb-booking-form .mphb-check-out-date-wrapper br,
.mphb-booking-form .mphb-adults-wrapper br,
.mphb-booking-form .mphb-children-wrapper br {
  display: none;
}

/* 5. Labels */
.mphb-booking-form .mphb-check-in-date-wrapper label,
.mphb-booking-form .mphb-check-out-date-wrapper label,
.mphb-booking-form .mphb-adults-wrapper label,
.mphb-booking-form .mphb-children-wrapper label {
  font-family: "Work Sans", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: normal !important;
  color: #5d5d5d !important;
  display: block !important;
  margin: 0 0 0 15px !important;
  padding: 0 !important;
  text-align: left;
}

/* 6. Text-Inputs (Datum) */
.mphb-booking-form .mphb-check-in-date-wrapper input[type="text"],
.mphb-booking-form .mphb-check-out-date-wrapper input[type="text"] {
  width: 225px !important;
  height: 56px !important;
  margin: 5px 15px !important;
  border: 1px solid #d3d3d3 !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
  display: block;
}

/* 7. Selects (Erwachsene / Kinder) */
.mphb-booking-form .mphb-adults-wrapper select,
.mphb-booking-form .mphb-children-wrapper select {
  width: 60px !important;
  height: 56px !important;
  margin: 5px 15px !important;
  padding: 0 8px !important;
  border: 1px solid #d3d3d3 !important;
  background: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box !important;
  display: block;
}

/* 8. "Verfügbarkeit prüfen"-Button */
.mphb-booking-form .mphb-reserve-btn-wrapper .mphb-reserve-btn {
  width: 225px !important;
  height: 56px !important;
  margin: 5px 15px !important;
  padding: 0 !important;
  background-color: var(--e-global-color-thmv_primary) !important;
  color: #fff !important;
  border-color: var(--e-global-color-thmv_primary) !important;
  box-sizing: border-box !important;
  cursor: pointer;
  display: block;
  margin-top: 26px !important;
}

.mphb-booking-form .mphb-reserve-btn-wrapper .mphb-reserve-btn:hover {
  opacity: 0.85;
}

/* 9. Ergebnis-Block – volle Breite unter den Feldern */
.mphb-booking-form .mphb-reserve-room-section {
  width: 100%;
  margin-top: 16px;
  text-align: left;
  padding: 0 15px;
}

.mphb-booking-form .mphb-reserve-room-section .mphb-rooms-quantity-single,
.mphb-booking-form .mphb-reserve-room-section .mphb-period-price {
  margin: 4px 0;
}

/* 10. "Reservierung bestätigen"-Button */
.mphb-booking-form .mphb-reserve-room-section .mphb-confirm-reservation {
  width: 225px !important;
  height: 56px !important;
  margin-top: 12px !important;
  padding: 0 !important;
  background-color: var(--e-global-color-thmv_primary) !important;
  color: #fff !important;
  border-color: var(--e-global-color-thmv_primary) !important;
  box-sizing: border-box !important;
  cursor: pointer;
  display: block;
}

.mphb-booking-form .mphb-reserve-room-section .mphb-confirm-reservation:hover {
  opacity: 0.85;
}

/* 11. Mobile */
@media (max-width: 768px) {
  .mphb-booking-form .mphb-check-in-date-wrapper,
  .mphb-booking-form .mphb-check-out-date-wrapper,
  .mphb-booking-form .mphb-adults-wrapper,
  .mphb-booking-form .mphb-children-wrapper,
  .mphb-booking-form .mphb-reserve-btn-wrapper {
    width: 100% !important;
    margin: 0 0 10px 0;
  }

  .mphb-booking-form .mphb-check-in-date-wrapper input[type="text"],
  .mphb-booking-form .mphb-check-out-date-wrapper input[type="text"],
  .mphb-booking-form .mphb-adults-wrapper select,
  .mphb-booking-form .mphb-children-wrapper select,
  .mphb-booking-form .mphb-reserve-btn-wrapper .mphb-reserve-btn {
    width: 100% !important;
    margin: 5px 0 !important;
  }

  .mphb-booking-form .mphb-reserve-btn-wrapper .mphb-reserve-btn {
    margin-top: 0 !important;
  }
}

/* Sicherheitsnetz: mphb-hide immer respektieren */
.mphb-booking-form .mphb-hide {
  display: none !important;
}

/*Tabelle mit den Ausflugszielen anpassen*/
@media (max-width: 768px) {
    #ausflugsziele {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}


/* ─── MotoPress Datepicker – Mobile Fix (max 480px) ─────────────────────── */
@media (max-width: 768px) {
    .datepick-popup {
        position: fixed !important;
        left: 0 !important;
        top: 100px !important;
        width: 100vw !important;
        margin: 0 !important;
        z-index: 99999 !important;
    }

    .datepick-multi {
        width: 100% !important;
    }

    .datepick-month-row {
        display: block !important;
        width: 100% !important;
    }

    .datepick-popup .datepick-month {
        float: none !important;
        display: block !important;
        width: 100% !important;
    }

    .datepick-month table {
        width: 100% !important;
    }

    .datepick-month thead,
    .datepick-month tbody {
        width: 100% !important;
        display: table !important;
    }
}