/* Airport type-ahead for the flight, package and transfer searches (assets/js/airport-autocomplete.js). Colours follow the theme. */
select[data-airport-ac-ready] { display: none !important; }
.airport-ac { position: relative; width: 100%; }
.airport-ac-field.airport-ac-open { z-index: 60; }
.b-search .flight-field .airport-ac-input,
.airport-ac-input { width: 100%; text-transform: none; }
.b-search .flight-field .airport-ac-input::placeholder { text-transform: none; }
.airport-ac-list {
    position: absolute; top: calc(100% + 12px); left: -14px; z-index: 1000;
    min-width: max(calc(100% + 28px), 300px); width: max-content; max-width: min(440px, calc(100vw - 24px));
    max-height: 340px; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain;
    margin: 0; padding: 6px; list-style: none;
    background: var(--card, #fff); color: var(--txt, #111);
    border: 1px solid var(--line-2, rgba(0,0,0,.12)); border-radius: 16px;
    box-shadow: 0 24px 48px -16px rgba(0,0,0,.55);
    font-family: var(--f, inherit); text-align: left;
}
.airport-ac-list[hidden] { display: none; }
.airport-ac-item {
    display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px;
    cursor: pointer; line-height: 1.25; min-height: 48px; text-transform: none; letter-spacing: 0;
}
.airport-ac-item + .airport-ac-item { margin-top: 2px; }
.airport-ac-item.is-active, .airport-ac-item:hover { background: var(--card-3, rgba(0,0,0,.06)); }
.airport-ac-code {
    flex: 0 0 auto; min-width: 52px; padding: 6px 8px; border-radius: 10px; text-align: center;
    font-weight: 800; font-size: 15px; letter-spacing: .04em;
    background: var(--bg, #f3f3f3); color: var(--txt, #111);
}
.airport-ac-item.is-active .airport-ac-code { background: var(--lime, #d7ff3a); color: var(--primary-ink, #111); }
.airport-ac-text { display: flex; flex-direction: column; min-width: 0; }
.airport-ac-name { font-weight: 700; font-size: 15px; white-space: normal; overflow-wrap: anywhere; }
.airport-ac-place { font-size: 13px; color: var(--mute, #666); margin-top: 2px; }
.airport-ac-empty { padding: 12px; font-size: 14px; color: var(--mute, #666); }
@media (max-width: 575px) {
    .airport-ac-list { left: -14px; min-width: calc(100% + 28px); width: calc(100% + 28px); max-width: none; max-height: 52vh; }
}
