.revalidated {
    position: relative;
    padding-top: 20px;
    padding-bottom: 60px;
    background-color: #020c17;
    color: #e2e8f0;
}

.font_12 {
    font-size: 12px;
}

.booking_header {
    border: 1px solid rgba(62, 174, 238, 0.35);
    background: linear-gradient(135deg, #051d31f7 0%, #03111feb 100%);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.45);
    border-radius: 12px;
}

.header_panel {
    padding: 20px 30px;
}

.search_btn {
    padding: 9px 24px;
    background: rgba(237, 156, 20, 0.12);
    border: 1px solid #ffca58;
    border-radius: 6px;
    color: #ffca58;
    font-weight: 700;
    font-size: 13.5px;
    transition: all 0.2s ease;
}

.search_btn:hover {
    background: linear-gradient(135deg, #ed9c14, #ffd064);
    color: #071522;
    box-shadow: 0 0 15px rgba(247, 177, 40, 0.4);
}

a {
    text-decoration: none !important;
}

.font-700 {
    font-weight: 700;
}

.border-left {
    border-left: 1px solid rgba(148, 163, 184, 0.15);
}

.time {
    color: #ffffff;
    font-size: 20px;
}

.port-block {
    color: #65c5ff;
    font-size: 16px;
}

.date-block {
    font-size: 14px;
    color: #94a3b8;
}

.duration, .total-stop, .flight-no {
    font-size: 13px;
    color: #94a3b8;
}

.btn-price {
    background: #ed9c14;
    border: none;
    color: #071522;
    height: 38px;
    font-size: 13.5px;
    font-weight: 700;
    border-radius: 6px;
    padding: 6px 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}
.btn-price:hover {
    background: #ffb12c;
    color: #000000;
    box-shadow: 0 4px 14px rgba(237, 156, 20, 0.4);
    transform: translateY(-1px);
}
.btn-price:hover {
    background: linear-gradient(135deg, #f5a623, #ffe082);
    color: #000000;
    box-shadow: 0 4px 20px rgba(247, 177, 40, 0.5);
    transform: translateY(-1px);
}

.btn_share_results {
    border: 1px solid #29b6ff;
    color: #29b6ff;
    height: 42px;
    background: transparent;
    width: 100%;
    border-radius: 5px;
}

.btn_share_results:hover {
    background-color: #061e35;
    color: #FFFFFF;
}

.custom_card {
    transition: all 0.3s ease-in-out;
    background: linear-gradient(135deg, #051d31f7, #03111feb);
    border: 1px solid rgba(62, 174, 238, 0.3);
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.45);
    margin-bottom: 16px;
    color: #ffffff;
}

.custom_card:hover {
    box-shadow: 0 12px 35px rgba(32, 184, 255, 0.25);
    border-color: #29b6ff;
    transform: translateY(-2px);
}

.btn-change {
    background-color: #061e35;
    border-color: #29b6ff;
    color: #65c5ff;
}

.btn-change:hover {
    background-color: #082a4a;
    border: 1px solid #29b6ff;
    color: #ffffff;
}

.price_summary .card-header span {
    font-size: 1.25rem;
    color: #65c5ff;
    font-weight: 600;
}

.price_summary ul li {
    color: #cbd5e1;
    font-size: 0.875rem;
}

.air_price span {
    font-size: 1rem;
    font-weight: 500;
    color: #65c5ff;
}

.price_you_pay {
    font-size: 1.25rem !important;
    font-weight: 500;
    color: #ffffff;
}

.price_you_pay span {
    color: #ffca58;
}

.continue_booking {
    background: linear-gradient(135deg, #ed9c14, #ffd064);
    color: #071522;
    font-weight: 700;
}

.support_icon img {
    width: 50px;
    height: 50px;
}

.box_shadow {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.45);
}


/*New Css from 17-1-2025*/
.flight_details {
    border: 1px solid gainsboro;
    padding: 10px;
}
.flight_details .small_text {
    font-size: 10px;
}

/* ── Premium Luxury Flight Card Design (Universal Across Desktop, Tablet & Mobile) ── */

.custom_card {
    transition: all 0.2s ease-in-out !important;
    background: #031322 !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35) !important;
    margin-bottom: 12px !important;
    color: #ffffff !important;
    overflow: hidden !important;
}

.custom_card:hover {
    border-color: rgba(41, 182, 255, 0.35) !important;
    box-shadow: 0 6px 24px rgba(4, 22, 38, 0.6) !important;
}

.custom_card .card-body {
    padding: 14px 18px !important;
}

/* Card Main Flex Row */
.flight-card-main {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
}

/* Left: Flight Info Group */
.flight-info-container {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.flight-leg-layout {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
}

/* Airline Col */
.flight-airline-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-width: 85px !important;
    max-width: 110px !important;
    flex-shrink: 0 !important;
}

.airline-logo-badge {
    width: 42px !important;
    height: 42px !important;
    object-fit: contain !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    padding: 3px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35) !important;
    margin-bottom: 4px !important;
    display: block !important;
    border: 1px solid #ffffff !important;
}

.airline-flight-no {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

.airline-rating-tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2px !important;
    background: rgba(255, 202, 88, 0.12) !important;
    border: 1px solid rgba(255, 202, 88, 0.5) !important;
    color: #ffca58 !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    padding: 1px 6px !important;
    border-radius: 4px !important;
    margin-top: 3px !important;
    line-height: 1.2 !important;
}

/* Schedule 3-Column Layout (Dep ➔ Line ➔ Arr) */
.flight-schedule-3col {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-grow: 1 !important;
    min-width: 0 !important;
    gap: 10px !important;
    padding: 0 6px !important;
}

/* Node (Departure / Arrival) */
.flight-node {
    min-width: 80px !important;
    flex-shrink: 0 !important;
}

.flight-node .node-time {
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    line-height: 1.15 !important;
    letter-spacing: -0.3px !important;
}

.flight-node .node-city-code {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin-top: 2px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

.flight-node .node-sub-info {
    font-size: 11px !important;
    color: #94a3b8 !important;
    margin-top: 2px !important;
    max-width: 150px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.day-diff-tag {
    display: inline-block !important;
    background: rgba(237, 156, 20, 0.15) !important;
    color: #ffca58 !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    padding: 1px 4px !important;
    border-radius: 3px !important;
    vertical-align: middle !important;
    margin-left: 2px !important;
}

/* Glowing Airplane Trail */
.flight-trail-center {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    flex: 1 1 80px !important;
    min-width: 60px !important;
    max-width: 160px !important;
    padding: 0 4px !important;
}

.route-duration {
    font-size: 11.5px !important;
    color: #94a3b8 !important;
    font-weight: 500 !important;
    margin-bottom: 3px !important;
    white-space: nowrap !important;
}

.route-airplane-line {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    position: relative !important;
}

.airplane-head {
    flex-shrink: 0 !important;
    filter: drop-shadow(0 0 6px rgba(41, 182, 255, 0.85)) !important;
    display: inline-block !important;
}

.route-gold-bar {
    height: 1.5px !important;
    background: #ffca58 !important;
    flex-grow: 1 !important;
    margin: 0 2px !important;
}

.route-stops {
    font-size: 11px !important;
    color: #94a3b8 !important;
    margin-top: 3px !important;
    white-space: nowrap !important;
}

/* Right Price & Continue Box */
.flight-price-cta-box {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: center !important;
    text-align: right !important;
    min-width: 110px !important;
    flex-shrink: 0 !important;
}

.card-price-value {
    font-size: 17.5px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: -0.2px !important;
    line-height: 1.15 !important;
    margin-bottom: 7px !important;
    white-space: nowrap !important;
    text-shadow: 0 0 12px rgba(255, 202, 88, 0.25) !important;
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 3px !important;
}

.card-price-value .currency-code {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #ffca58 !important;
    letter-spacing: 0.2px !important;
}

.card-price-value .amount-val {
    font-size: 17.5px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
}

.btn-continue-booking {
    background: #f59e0b !important;
    color: #071522 !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    border-radius: 6px !important;
    padding: 6px 20px !important;
    border: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    box-shadow: 0 2px 8px rgba(245, 158, 11, 0.35) !important;
}

.btn-continue-booking:hover {
    background: #fbbf24 !important;
    box-shadow: 0 4px 14px rgba(245, 158, 11, 0.5) !important;
    transform: translateY(-1px) !important;
}

/* Card Footer */
.flight-card-footer {
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding-top: 8px !important;
    margin-top: 8px !important;
}

.flight-details-toggle {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.flight-details-toggle:hover {
    color: #29b6ff !important;
}

/* ── High-Contrast Legible Flight Details Drawer Badges & Labels ── */
.operated-by-badge {
    background: rgba(3, 169, 244, 0.18) !important;
    border: 1px solid rgba(41, 182, 255, 0.65) !important;
    color: #38bdf8 !important;
    font-weight: 700 !important;
    font-size: 11px !important;
    padding: 2px 8px !important;
    border-radius: 4px !important;
    display: inline-block !important;
    line-height: 1.3 !important;
    vertical-align: middle !important;
}

.equipment-badge {
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    color: #f1f5f9 !important;
    font-weight: 600 !important;
    font-size: 11px !important;
    padding: 2px 8px !important;
    border-radius: 4px !important;
    display: inline-block !important;
    line-height: 1.3 !important;
    vertical-align: middle !important;
}

.terminal-badge {
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 2px 8px !important;
    border-radius: 4px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    line-height: 1.3 !important;
}

.terminal-dep-badge {
    background: rgba(41, 182, 255, 0.22) !important;
    border: 1px solid rgba(41, 182, 255, 0.75) !important;
    color: #38bdf8 !important;
}

.terminal-arr-badge {
    background: rgba(255, 202, 88, 0.22) !important;
    border: 1px solid rgba(255, 202, 88, 0.75) !important;
    color: #ffca58 !important;
}

.layover-notice {
    background: rgba(237, 156, 20, 0.15) !important;
    border: 1px dashed rgba(255, 202, 88, 0.55) !important;
    color: #ffca58 !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
}

/* Responsive Scaling Across Tablet & Mobile (Keeping Single Horizontal Row) */
@media (max-width: 991px) {
    .custom_card .card-body {
        padding: 12px 14px !important;
    }
    .flight-airline-col {
        min-width: 70px !important;
        max-width: 85px !important;
    }
    .airline-logo-badge {
        width: 34px !important;
        height: 34px !important;
    }
    .airline-flight-no {
        font-size: 11px !important;
    }
    .airline-rating-tag {
        font-size: 9.5px !important;
        padding: 1px 4px !important;
    }
    .flight-node .node-time {
        font-size: 16px !important;
    }
    .flight-node .node-city-code {
        font-size: 12px !important;
    }
    .flight-node .node-sub-info {
        font-size: 10px !important;
        max-width: 105px !important;
    }
    .card-price-value {
        font-size: 15.5px !important;
        margin-bottom: 5px !important;
    }
    .card-price-value .currency-code {
        font-size: 11px !important;
    }
    .card-price-value .amount-val {
        font-size: 15.5px !important;
    }
    .btn-continue-booking {
        font-size: 12px !important;
        padding: 5px 14px !important;
    }
}

@media (max-width: 767px) {
    .custom_card {
        margin-bottom: 12px !important;
    }
    .custom_card .card-body {
        padding: 12px 14px !important;
    }
    .flight-card-main {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
        width: 100% !important;
    }
    .flight-info-container {
        width: 100% !important;
        flex: 1 1 auto !important;
    }
    .flight-leg-layout {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
        width: 100% !important;
    }
    .flight-airline-col {
        min-width: 52px !important;
        max-width: 65px !important;
        flex-shrink: 0 !important;
    }
    .airline-logo-badge {
        width: 36px !important;
        height: 36px !important;
    }
    .airline-flight-no {
        font-size: 10.5px !important;
    }
    .airline-rating-tag {
        display: none !important;
    }
    .flight-schedule-3col {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-grow: 1 !important;
        gap: 6px !important;
        padding: 0 4px !important;
    }
    .flight-node {
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }
    .flight-node .node-time {
        font-size: 16px !important;
        font-weight: 700 !important;
    }
    .flight-node .node-city-code {
        font-size: 12px !important;
        font-weight: 600 !important;
    }
    .flight-node .node-sub-info {
        display: none !important;
    }
    .flight-trail-center {
        flex: 0 1 80px !important;
        min-width: 55px !important;
        max-width: 100px !important;
        padding: 0 4px !important;
    }
    .route-duration {
        font-size: 10.5px !important;
    }
    .airplane-head {
        width: 12px !important;
        height: 12px !important;
    }
    .route-stops {
        font-size: 10px !important;
    }
    .flight-price-cta-box {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
        padding-top: 10px !important;
        margin-top: 2px !important;
        text-align: left !important;
    }
    .card-price-value {
        font-size: 18.5px !important;
        margin-bottom: 0 !important;
        display: inline-flex !important;
        align-items: baseline !important;
        gap: 4px !important;
    }
    .card-price-value .currency-code {
        font-size: 12px !important;
        color: #ffca58 !important;
    }
    .card-price-value .amount-val {
        font-size: 18.5px !important;
        color: #ffffff !important;
        font-weight: 800 !important;
    }
    .btn-continue-booking {
        font-size: 13px !important;
        font-weight: 700 !important;
        padding: 8px 24px !important;
        min-height: 38px !important;
        border-radius: 6px !important;
    }
    .flight-card-footer {
        border-top: none !important;
        padding-top: 4px !important;
        margin-top: 0 !important;
        font-size: 11.5px !important;
        gap: 8px !important;
    }
}

/* Top Quick-Filter & Sort Tabs Bar (Mobile Responsive) */
.top-flight-filter-bar {
    background: linear-gradient(135deg, #051d31f7, #03111feb);
    border: 1px solid rgba(62, 174, 238, 0.3);
    border-radius: 10px;
    overflow: hidden;
}

.filter-tabs-container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    flex-wrap: nowrap !important;
}

.filter-tabs-container::-webkit-scrollbar {
    display: none;
}

.top-filter-tab {
    background: transparent;
    border: none;
    padding: 10px 14px;
    color: #ffffff;
    cursor: pointer;
    position: relative;
    transition: all 0.2s ease;
    min-width: 115px;
    flex-shrink: 0;
}

.top-filter-tab:hover {
    background: rgba(41, 182, 255, 0.08);
}

.top-filter-tab.active {
    background: rgba(41, 182, 255, 0.15);
}

.top-filter-tab.active .active-indicator {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #29b6ff;
    box-shadow: 0 0 10px #29b6ff;
}

.tab-divider {
    width: 1px;
    background: rgba(62, 174, 238, 0.2);
    align-self: stretch;
}

@media (max-width: 767px) {
    .top-filter-tab {
        padding: 8px 10px;
        min-width: 100px;
    }
    .top-filter-tab .tab-title {
        font-size: 12.5px !important;
    }
    .top-filter-tab .tab-subtitle {
        font-size: 10.5px !important;
    }
}

/* Header Panel on Mobile */
@media (max-width: 767px) {
    .header_panel {
        padding: 12px 14px;
    }
    .header_panel h5 {
        font-size: 13.5px !important;
    }
    .search_btn {
        padding: 6px 14px;
        font-size: 12px;
    }
}

/* Flight Details Drawer Responsive */
.flight-details-drawer .drawer-inner {
    background: rgba(4, 22, 38, 0.96);
    border: 1px solid rgba(62, 174, 238, 0.25);
    border-radius: 8px;
}

@media (max-width: 767px) {
    .flight-details-drawer .drawer-inner {
        padding: 10px !important;
    }
    .flight-details-drawer .segment-block {
        padding: 10px !important;
    }
    .flight-details-drawer .segment-timeline {
        padding-left: 24px !important;
    }
    .flight-details-drawer .timeline-dot {
        left: -17px !important;
        width: 11px !important;
        height: 11px !important;
    }
    .flight-details-drawer .timeline-line {
        left: -12px !important;
    }
}

/* ── Skyscanner Style Popover & Single Horizontal Pill Search Bar ──── */
.block, .block .inner {
    overflow: visible !important;
}

.sleek-search-wrapper {
    margin-top: 15px;
    margin-bottom: 25px;
    position: relative;
    z-index: 9999 !important;
    overflow: visible !important;
}

/* Top Trigger Links */
.top-trigger-item {
    position: relative;
}

.sleek-text-trigger {
    background: transparent;
    border: none;
    font-size: 14px;
    font-weight: 600;
    color: #1a202c;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 6px;
    border-radius: 6px;
    transition: background 0.15s ease;
}

.sleek-text-trigger:hover {
    background: rgba(0, 0, 0, 0.04);
}

.sleek-dropdown-menu {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
    border: 1px solid #e2e8f0;
    padding: 6px 0;
    z-index: 99999 !important;
    min-width: 140px;
}

.sleek-dropdown-menu .menu-opt {
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    color: #2d3748;
    cursor: pointer;
    transition: background 0.15s ease;
}

.sleek-dropdown-menu .menu-opt:hover:not(.disabled) {
    background: #edf2f7;
    color: #1a202c;
}

.sleek-dropdown-menu .menu-opt.active {
    color: #006fba;
    background: #ebf8ff;
}

.sleek-checkbox-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    color: #4a5568;
    cursor: pointer;
    user-select: none;
}

.sleek-checkbox-label input[type="checkbox"] {
    width: 15px;
    height: 15px;
    cursor: pointer;
    accent-color: #006fba;
}

/* Top Trip Type Radio Pills */
.sleek-trip-pills {
    display: flex;
    align-items: center;
    gap: 8px;
}

.trip-pill {
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid #cbd5e1;
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    color: #4a5568;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    user-select: none;
}

.trip-pill input[type="radio"] {
    display: none;
}

.trip-pill.active {
    background: #006fba;
    color: #ffffff;
    border-color: #006fba;
    box-shadow: 0 2px 8px rgba(0, 111, 186, 0.3);
}

.trip-pill.disabled-pill {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Single Horizontal Pill Bar */
.sleek-unified-bar {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(226, 232, 240, 0.9);
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    padding: 4px;
    width: 100%;
    position: relative;
    z-index: 9999 !important;
    overflow: visible !important;
}

/* Form Segments */
.sleek-segment {
    position: relative;
    transition: all 0.15s ease;
    border-radius: 12px;
    overflow: visible !important;
    min-width: 0;
}

.sleek-segment.active-focus {
    border: 1.5px solid #1a202c !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 2px rgba(26, 32, 44, 0.08);
    z-index: 10000 !important;
}

.sleek-segment.segment-origin {
    background: #dbe4eb;
    border-radius: 14px 0 0 14px;
    padding: 6px 12px;
    display: flex;
    align-items: center;
    flex: 1.8;
    min-width: 0;
}

.sleek-segment.segment-destination {
    background: #ffffff;
    padding: 6px 12px 6px 16px;
    display: flex;
    align-items: center;
    flex: 1.8;
    min-width: 0;
}

.sleek-select-box {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

.field-mini-label {
    font-size: 11px;
    font-weight: 700;
    color: #718096;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2px;
    white-space: nowrap;
}

.sleek-native-select {
    border: none !important;
    background: transparent !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #1a202c !important;
    outline: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    cursor: pointer;
    padding: 2px 0 !important;
    box-shadow: none !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    overflow: hidden !important;
}

.sleek-swap-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    margin: 0 -12px;
    z-index: 10;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    transition: transform 0.2s ease, background 0.15s ease;
    color: #475569;
    flex-shrink: 0;
}
.sleek-swap-btn:hover {
    transform: rotate(180deg);
    background: #f8fafc;
    color: #006fba;
}

.sleek-line-divider {
    width: 1px;
    height: 28px;
    background: #e2e8f0;
    margin: 0 4px;
    flex-shrink: 0;
}

.sleek-segment.segment-date {
    flex: 1.1;
    padding: 6px 10px;
    min-width: 0;
}

.sleek-segment.segment-travelers {
    flex: 1.3;
    padding: 6px 10px;
    min-width: 0;
}

.sleek-date-input, .sleek-inline-select {
    border: none !important;
    background: transparent !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #1a202c !important;
    outline: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    cursor: pointer;
    box-shadow: none !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    overflow: hidden !important;
}

.sleek-theme-btn {
    background: linear-gradient(135deg, #006fba 0%, #005691 100%);
    color: #ffffff;
    font-weight: 700;
    font-size: 15px;
    border: none;
    border-radius: 14px;
    padding: 12px 28px;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(0, 111, 186, 0.35);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    white-space: nowrap;
    margin-left: 6px;
    flex-shrink: 0;
}
.sleek-theme-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(0, 111, 186, 0.45);
    background: linear-gradient(135deg, #005fa0 0%, #004677 100%);
}



/* Swap Button Overlap */
.sleek-swap-btn {
    background: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2d3748;
    z-index: 50;
    margin: 0 -8px;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(0,0,0,0.08);
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.sleek-swap-btn:hover {
    border-color: #718096;
    color: #1a202c;
    transform: scale(1.08);
}

/* Line Divider */
.sleek-line-divider {
    width: 1px;
    height: 28px;
    background: #e2e8f0;
    margin: 0 6px;
    flex-shrink: 0;
}

/* Date & Traveler Segments */
.sleek-segment.segment-date {
    padding: 4px 8px;
    flex: 1;
    min-width: 105px;
}

.sleek-segment.segment-travelers {
    padding: 4px 8px;
    flex: 1.2;
    min-width: 130px;
}

.sleek-segment.disabled {
    opacity: 0.45;
    pointer-events: none;
}

.sleek-date-input,
.sleek-inline-select {
    width: 100%;
    border: none;
    background: transparent;
    font-size: 14px;
    font-weight: 600;
    color: #1a202c;
    outline: none;
    cursor: pointer;
}

.sleek-date-input::placeholder {
    color: #a0aec0;
    font-weight: 500;
}

/* Vibrant Orange CTA Button */
.sleek-orange-btn {
    background: linear-gradient(135deg, #ff5400 0%, #ff3b00 100%);
    color: #ffffff;
    border-radius: 12px;
    padding: 12px 28px;
    font-size: 15px;
    font-weight: 700;
    border: none;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(255, 69, 0, 0.35);
    transition: all 0.2s ease;
    white-space: nowrap;
    margin-left: 6px;
    flex-shrink: 0;
}

.sleek-orange-btn:hover {
    background: linear-gradient(135deg, #e04800 0%, #e03200 100%);
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(255, 69, 0, 0.45);
}

.sleek-orange-btn:active {
    transform: translateY(0);
}

/* ── Skyscanner Style Dark Theme Skyscanner Price Calendar Styles ────────────── */
#ui-datepicker-div,
.ui-datepicker,
#ui-datepicker-div.ui-datepicker {
    background: linear-gradient(145deg, #072238, #031221) !important;
    border: 1px solid rgba(62, 174, 238, 0.4) !important;
    border-radius: 16px !important;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.85), 0 0 20px rgba(41, 182, 255, 0.2) !important;
    padding: 18px 20px !important;
    z-index: 99999 !important;
    font-family: inherit !important;
    color: #ffffff !important;
}

#ui-datepicker-div.ui-datepicker-multi-2 {
    width: 620px !important;
}

#ui-datepicker-div .ui-datepicker-group {
    width: 275px !important;
    float: left !important;
    margin-right: 20px !important;
}

#ui-datepicker-div .ui-datepicker-group-last {
    margin-right: 0 !important;
}

/* Header & Month Titles */
#ui-datepicker-div .ui-datepicker-header {
    background: rgba(15, 45, 75, 0.6) !important;
    border: 1px solid rgba(62, 174, 238, 0.2) !important;
    border-radius: 10px !important;
    margin-bottom: 14px !important;
    position: relative !important;
    padding: 10px 12px !important;
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#ui-datepicker-div .ui-datepicker-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #ffca58 !important;
    text-align: center !important;
    margin: 0 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.2 !important;
}

/* Prev / Next Month Navigation Buttons */
#ui-datepicker-div .ui-datepicker-prev,
#ui-datepicker-div .ui-datepicker-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    background: rgba(15, 45, 75, 0.85) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    z-index: 10 !important;
}

#ui-datepicker-div .ui-datepicker-prev {
    left: 8px !important;
    right: auto !important;
}

#ui-datepicker-div .ui-datepicker-next {
    right: 8px !important;
    left: auto !important;
}

#ui-datepicker-div .ui-datepicker-prev:hover,
#ui-datepicker-div .ui-datepicker-next:hover {
    background: #29b6ff !important;
    border-color: #29b6ff !important;
    box-shadow: 0 0 12px rgba(41, 182, 255, 0.4) !important;
}

/* Hide default jQuery UI icon sprite image & text */
#ui-datepicker-div .ui-datepicker-prev .ui-icon,
#ui-datepicker-div .ui-datepicker-next .ui-icon,
#ui-datepicker-div .ui-icon {
    display: none !important;
    background: none !important;
    background-image: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* Custom CSS Chevron Arrows */
#ui-datepicker-div .ui-datepicker-prev::after {
    content: '' !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    border-left: 2px solid #29b6ff !important;
    border-bottom: 2px solid #29b6ff !important;
    transform: rotate(45deg) !important;
    margin-left: 3px !important;
    transition: border-color 0.2s ease !important;
}

#ui-datepicker-div .ui-datepicker-next::after {
    content: '' !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    border-right: 2px solid #29b6ff !important;
    border-top: 2px solid #29b6ff !important;
    transform: rotate(45deg) !important;
    margin-right: 3px !important;
    transition: border-color 0.2s ease !important;
}

#ui-datepicker-div .ui-datepicker-prev:hover::after,
#ui-datepicker-div .ui-datepicker-next:hover::after {
    border-color: #03101c !important;
}

/* Day Names Header (Sun, Mon, Tue...) */
#ui-datepicker-div .ui-datepicker-calendar {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 3px !important;
    margin: 0 !important;
}

#ui-datepicker-div .ui-datepicker-calendar th {
    color: #65c5ff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    border: none !important;
    text-align: center !important;
    padding: 6px 0 !important;
}

/* Calendar Days / Cells */
#ui-datepicker-div .ui-datepicker-calendar td {
    padding: 1px !important;
    border: none !important;
    background: transparent !important;
}

#ui-datepicker-div .ui-datepicker-calendar td a,
#ui-datepicker-div .ui-datepicker-calendar td span,
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-default {
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 8px !important;
    width: 34px !important;
    height: 34px !important;
    line-height: 32px !important;
    text-align: center !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 auto !important;
    display: block !important;
    padding: 0 !important;
    transition: all 0.15s ease !important;
    background: rgba(15, 38, 62, 0.7) !important;
}

/* Hover Day State */
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-default:hover,
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-hover {
    background: rgba(41, 182, 255, 0.25) !important;
    color: #ffca58 !important;
    border-color: #29b6ff !important;
}

/* Distinct Weekend Styling (Sat/Sun) */
#ui-datepicker-div .ui-datepicker-calendar th.ui-datepicker-week-end {
    color: #ffca58 !important;
}

#ui-datepicker-div .ui-datepicker-calendar td.ui-datepicker-week-end a.ui-state-default {
    background: rgba(255, 202, 88, 0.08) !important;
    color: #ffd875 !important;
    border-color: rgba(255, 202, 88, 0.2) !important;
}

#ui-datepicker-div .ui-datepicker-calendar td.ui-datepicker-week-end a.ui-state-default:hover {
    background: #ffca58 !important;
    color: #03101c !important;
    font-weight: 700 !important;
}

/* Active Selected Day */
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-active,
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-highlight.ui-state-active {
    background: linear-gradient(135deg, #ed9c14, #ffd064) !important;
    color: #03101c !important;
    font-weight: 800 !important;
    border-color: #ffd064 !important;
    box-shadow: 0 4px 15px rgba(237, 156, 20, 0.5) !important;
}

/* Disabled Days (Past Dates) */
#ui-datepicker-div .ui-datepicker-calendar td.ui-datepicker-unselectable span,
#ui-datepicker-div .ui-datepicker-calendar td.ui-state-disabled span {
    color: rgba(255, 255, 255, 0.25) !important;
    background: rgba(255, 255, 255, 0.02) !important;
    border-color: transparent !important;
    opacity: 0.4 !important;
}

/* Legend Bar at Bottom (Hidden) */
#ui-datepicker-div .datepicker-legend-bar,
.datepicker-legend-bar {
    display: none !important;
}

/* Sleek Dark Theme Custom Scrollbar */
.airline-filter-list::-webkit-scrollbar,
.custom-scrollbar::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.airline-filter-list::-webkit-scrollbar-track,
.custom-scrollbar::-webkit-scrollbar-track {
    background: rgba(4, 22, 38, 0.7);
    border-radius: 10px;
}

.airline-filter-list::-webkit-scrollbar-thumb,
.custom-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(41, 182, 255, 0.4);
    border-radius: 10px;
    border: 1px solid rgba(4, 22, 38, 0.8);
    transition: all 0.2s ease;
}

.airline-filter-list::-webkit-scrollbar-thumb:hover,
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #29b6ff;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.7);
}

/* Firefox scrollbar support */
.airline-filter-list,
.custom-scrollbar {
    scrollbar-width: thin;
    scrollbar-color: rgba(41, 182, 255, 0.5) rgba(4, 22, 38, 0.7);
}

/* Sleek Price Range Slider */
.custom-price-range {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 5px;
    background: rgba(62, 174, 238, 0.25);
    border-radius: 5px;
    outline: none;
}

.custom-price-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #29b6ff;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.8);
    cursor: pointer;
    transition: transform 0.15s ease, background-color 0.15s ease;
}

.custom-price-range::-webkit-slider-thumb:hover {
    transform: scale(1.15);
    background: #29b6ff;
}

.custom-price-range::-moz-range-thumb {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #29b6ff;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.8);
    cursor: pointer;
}

@media (max-width: 650px) {
    #ui-datepicker-div.ui-datepicker-multi-2 {
        width: 310px !important;
    }
    #ui-datepicker-div .ui-datepicker-group {
        width: 100% !important;
        float: none !important;
        margin-right: 0 !important;
        margin-bottom: 15px !important;
    }
}

/* Elegant Theme-Matched Scrollbar for All Dropdowns */
.select2-results__options,
.select2-results > .select2-results__options,
.select2-dropdown,
.traveller-popover,
.airport-dropdown-list,
.custom-scrollbar,
select {
    scrollbar-width: thin !important;
    scrollbar-color: #1e527d #061a2b !important;
}

.select2-results__options::-webkit-scrollbar,
.select2-results > .select2-results__options::-webkit-scrollbar,
.select2-dropdown::-webkit-scrollbar,
.traveller-popover::-webkit-scrollbar,
.airport-dropdown-list::-webkit-scrollbar,
.custom-scrollbar::-webkit-scrollbar,
select::-webkit-scrollbar {
    width: 6px !important;
    height: 6px !important;
}

.select2-results__options::-webkit-scrollbar-track,
.select2-results > .select2-results__options::-webkit-scrollbar-track,
.select2-dropdown::-webkit-scrollbar-track,
.traveller-popover::-webkit-scrollbar-track,
.airport-dropdown-list::-webkit-scrollbar-track,
.custom-scrollbar::-webkit-scrollbar-track,
select::-webkit-scrollbar-track {
    background: #061a2b !important;
    border-radius: 4px !important;
}

.select2-results__options::-webkit-scrollbar-thumb,
.select2-results > .select2-results__options::-webkit-scrollbar-thumb,
.select2-dropdown::-webkit-scrollbar-thumb,
.traveller-popover::-webkit-scrollbar-thumb,
.airport-dropdown-list::-webkit-scrollbar-thumb,
.custom-scrollbar::-webkit-scrollbar-thumb,
select::-webkit-scrollbar-thumb {
    background: #1e527d !important;
    border-radius: 4px !important;
    border: 1px solid #061a2b !important;
}

.select2-results__options::-webkit-scrollbar-thumb:hover,
.select2-results > .select2-results__options::-webkit-scrollbar-thumb:hover,
.select2-dropdown::-webkit-scrollbar-thumb:hover,
.traveller-popover::-webkit-scrollbar-thumb:hover,
.airport-dropdown-list::-webkit-scrollbar-thumb:hover,
.custom-scrollbar::-webkit-scrollbar-thumb:hover,
select::-webkit-scrollbar-thumb:hover {
    background: #29b6ff !important;
}







