/* ── Search form card ─────────────────────────────────────────────────────── */
.br-search-form-card {
    background-color: var(--br-surface);
    border-color:     #2A2A2A;
    border-radius:    1rem;
}

/* ── Field with left icon ─────────────────────────────────────────────────── */
.br-field-icon-wrap {
    position: relative;
}

.br-field-icon {
    position:    absolute;
    left:        .75rem;
    top:         50%;
    transform:   translateY(-50%);
    font-size:   1rem;
    line-height: 1;
    pointer-events: none;
    color:       #5A5A5A;
}

.br-field-with-icon {
    padding-left: 2.25rem;
}

/* ── Airport autocomplete dropdown ───────────────────────────────────────── */
.br-autocomplete-wrap {
    position: relative;
}

.br-autocomplete-dropdown {
    position:         absolute;
    top:              calc(100% + 4px);
    left:             0;
    right:            0;
    z-index:          1050;
    background-color: #1A1A1A;
    border:           1px solid #2A2A2A;
    border-radius:    .625rem;
    box-shadow:       0 8px 28px rgba(0, 0, 0, .65);
    max-height:       260px;
    overflow-y:       auto;
}

.br-autocomplete-item {
    display:          flex;
    align-items:      center;
    gap:              .75rem;
    width:            100%;
    padding:          .6rem .9rem;
    background:       none;
    border:           none;
    text-align:       left;
    cursor:           pointer;
    color:            #A0A0A0;
    transition:       background-color .12s ease;
}

.br-autocomplete-item:hover,
.br-autocomplete-item:focus {
    background-color: rgba(255, 255, 255, .06);
    color:            #F5F5F5;
    outline:          none;
}

.br-autocomplete-code {
    flex-shrink:      0;
    width:            2.5rem;
    font-size:        .8rem;
    font-weight:      700;
    color:            var(--br-accent);
    letter-spacing:   .04em;
}

.br-autocomplete-info {
    display:        flex;
    flex-direction: column;
    min-width:      0;
}

.br-autocomplete-label {
    font-size:   .875rem;
    color:       #F5F5F5;
    white-space: nowrap;
    overflow:    hidden;
    text-overflow: ellipsis;
}

.br-autocomplete-sub {
    font-size: .75rem;
    color:     #5A5A5A;
    margin-top: 1px;
    white-space: nowrap;
    overflow:    hidden;
    text-overflow: ellipsis;
}

.br-autocomplete-empty {
    padding:   .75rem .9rem;
    font-size: .875rem;
    color:     #5A5A5A;
}

/* ── Passenger stepper ────────────────────────────────────────────────────── */
.br-pax-stepper {
    display:          flex;
    align-items:      center;
    justify-content:  space-between;
    background-color: var(--br-input);
    border:           1px solid #2A2A2A;
    border-radius:    .5rem;
    padding:          .375rem .6rem;
    height:           calc(1.5em + .75rem + 2px);
}

.br-pax-btn {
    background: none;
    border:     none;
    color:      var(--br-accent);
    font-size:  1.1rem;
    font-weight: 700;
    line-height: 1;
    padding:    0 .4rem;
    cursor:     pointer;
    transition: opacity .15s ease;
}

.br-pax-btn:disabled {
    color:   #3A3A3A;
    cursor:  not-allowed;
}

.br-pax-label {
    font-size:   .875rem;
    color:       #F5F5F5;
    flex:        1;
    text-align:  center;
    white-space: nowrap;
    overflow:    hidden;
    text-overflow: ellipsis;
}

/* ── Route summary (results page header) ─────────────────────────────────── */
.br-route-summary {
    display:     flex;
    align-items: center;
    flex-wrap:   wrap;
    gap:         .25rem;
    font-size:   .9rem;
}

.br-route-code {
    font-weight: 700;
    color:       var(--br-accent);
    letter-spacing: .04em;
}

.br-route-arrow { color: #5A5A5A; }

.br-route-date {
    color:     #A0A0A0;
    font-size: .85rem;
}

/* ── Aircraft card ────────────────────────────────────────────────────────── */
.br-aircraft-card {
    background-color: var(--br-surface);
    border:           1px solid #2A2A2A;
    border-radius:    .875rem;
    overflow:         hidden;
    transition:       border-color .18s ease, box-shadow .18s ease;
    color:            inherit;
}

.br-aircraft-card:hover {
    border-color: rgba(201, 168, 76, .5);
    box-shadow:   0 4px 20px rgba(0, 0, 0, .5);
    color:        inherit;
}

.br-aircraft-img-wrap {
    width:    100%;
    height:   180px;
    overflow: hidden;
}

.br-aircraft-img {
    width:      100%;
    height:     100%;
    object-fit: cover;
    display:    block;
    transition: transform .3s ease;
}

.br-aircraft-card:hover .br-aircraft-img {
    transform: scale(1.04);
}

.br-aircraft-img-placeholder {
    background-color: #1A1A1A;
    display:          flex;
    align-items:      center;
    justify-content:  center;
}

.br-aircraft-placeholder-icon {
    font-size: 2.5rem;
    color:     #3A3A3A;
}

.br-aircraft-name {
    font-weight: 600;
    font-size:   .95rem;
    color:       #F5F5F5;
    line-height: 1.3;
}

.br-aircraft-reg {
    font-size:   .78rem;
    color:       var(--br-accent);
    letter-spacing: .04em;
    margin-top:  2px;
}

.br-aircraft-year {
    font-size:   .75rem;
    color:       #5A5A5A;
    white-space: nowrap;
}

.br-card-divider {
    border-color: #2A2A2A;
    margin:       .5rem 0;
}

.br-aircraft-seats {
    font-size: .82rem;
    color:     #A0A0A0;
}

.br-aircraft-operator {
    font-size:  .78rem;
    color:      #5A5A5A;
    max-width:  55%;
    text-align: right;
}

/* ── Empty / idle states ──────────────────────────────────────────────────── */
.br-empty-state,
.br-idle-state {
    color: #5A5A5A;
}

.br-empty-icon,
.br-idle-icon {
    font-size: 3rem;
    display:   block;
    color:     #2A2A2A;
}
