/* Tour Guides Egypt public enhancements - v8.0.0 */

:root {
    --tge-public-primary: #287dfa;
    --tge-public-dark: #0f233e;
    --tge-public-accent: #ff5533;
}

html,
body {
    max-width: 100%;
    overflow-x: clip;
}

.tge-floating-booking-button {
    position: fixed;
    right: 16px;
    bottom: 18px;
    z-index: 9994;
    display: none;
    min-width: 126px;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 20px;
    border: 0;
    border-radius: 999px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--tge-public-primary), #1767df);
    box-shadow: 0 18px 42px rgba(40, 125, 250, 0.34);
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
}

.tge-floating-booking-button i {
    font-size: 18px;
}

.flatpickr-calendar {
    z-index: 100000 !important;
    border: 1px solid rgba(15, 35, 62, 0.12);
    border-radius: 18px;
    box-shadow: 0 24px 65px rgba(15, 35, 62, 0.18);
    overflow: hidden;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
    border-color: var(--tge-public-primary);
    background: var(--tge-public-primary);
}

@media (max-width: 991px) {
    .tge-floating-booking-button {
        display: inline-flex;
    }

    body.tge-mobile-menu-open .tge-floating-booking-button,
    body.swal2-shown .tge-floating-booking-button {
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
    }
}
