/* Override Foundation's default 600px reveal width so calendar + summary panel both fit */
#booking_modal.reveal {
    width: 95% !important;
    max-width: 1100px !important;
    overflow: hidden !important;
    padding: 0 !important;
    z-index: 200000 !important;
}
/* bookingBox is designed as a fixed side-drawer; inside the modal we reposition it */
#booking_modal #bookingBox {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    width: 100% !important;
    height: auto !important;
}
#booking_modal #bookingBox.show,
#booking_modal #bookingBox.show.show-booking-container {
    width: 100% !important;
}
#booking_modal .booking-info {
    height: auto !important;
    min-height: 520px;
    align-items: stretch;
}
#booking_modal .booking-calendar-box {
    flex-shrink: 0;
}
#booking_modal .booking-container {
    position: relative !important;
    height: auto !important;
    flex: 1;
    padding-bottom: 80px !important;
}
#booking_modal .booking-container .btn-book {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    margin-top: 20px;
}

/* Hide the side-drawer overlay when the form is embedded inside the Foundation modal */
#booking_modal #overlay-bookingBox {
    display: none !important;
}

/* Ensure bookingBox always sits above the site nav */
#bookingBox {
    z-index: 2147483640 !important;
}
#overlay-bookingBox {
    z-index: 2147483639 !important;
}
#ui-datepicker-div {
    z-index: 2147483641 !important;
}

/* Full-page spinner overlay */
#booking-loading-spinner {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.55);
    z-index: 2147483642;
    align-items: center;
    justify-content: center;
}
#booking-loading-spinner.active {
    display: flex;
}
#booking-loading-spinner .spinner-inner {
    width: 56px;
    height: 56px;
    border: 6px solid rgba(255,255,255,0.3);
    border-top-color: #ff6600;
    border-radius: 50%;
    animation: booking-spin 0.8s linear infinite;
}
@keyframes booking-spin {
    to { transform: rotate(360deg); }
}

#bookingBox button[type="submit"] {
    background-color: #ff6600;
    color: #fefefe;
}
.extras-tooltip {
    color: #ff6600;
}
.ui-datepicker-calendar .ui-state-hover {
    background: #ff6600 !important;
    color: #fff !important;
}
.ui-datepicker-days-cell-over .ui-state-default {
    background: #ff6600 !important;
}
.ui-datepicker-calendar .datepicker-start-date a,
.ui-datepicker-calendar .datepicker-date-range a, 
.ui-datepicker-calendar .datepicker-date-range span {
    background: #ff6600 !important;
}
.ui-datepicker-calendar .ui-datepicker-current-day .ui-state-active {
    background: #ff6600 !important;
}
.datepicker-start-date.datepicker-date-range  a{
    background: #ff6600 !important;
}
.form-quantity-btn {
    background-color: #ff6600;
    color: #fff;
}
.booking-tabs-wrap button.active {
    color: #f76300;
}