/* MAIN FORM CONTAINER */
.mcf-form{
    width:100%;
    margin:30px auto;
    padding:15px;
    background:#000;                 /* Black background */
    border-radius:10px;
    box-shadow:0 0px 0px rgba(255,255,255,0.1);
    box-sizing:border-box;
    color:#fff;                      /* White text */
    border:1px solid #333;           /* Subtle border */
}

.mcf-form label{
    display:block;
    margin-bottom:2px;
    font-weight:600;
    color:#f1f1f1;
}

/* INPUTS + SELECT DROPDOWNS */
.mcf-form input, .mcf-form select{
    width:100%;
    padding:8px;
    margin-bottom:10px;
    /* background:#111;                Dark input background 
    color:#fff;                                               */
    border:1px solid #444;
    border-radius:5px;
    box-sizing:border-box;
}

.mcf-form input::placeholder{
    color:#bbb;
}


.mcf-form button {
    background:#0073aa;
    color:#fff;
    padding:10px 15px;
    border:none;
    border-radius:5px;
    cursor:pointer;
}
.mcf-form button:hover {
    background-color: #026797;
}

.step{display:none;}
.step.active{display:block;}


/* STEP 1: Inline layout */
.city-pair{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    border:1px solid #444;
    padding:5px;
    margin-bottom:5px;
    border-radius:5px;
    align-items:flex-end;
    width:98%;
    background:#0d0d0d;
}

/* Mobile: full width */
@media (max-width: 768px){
    .city-pair {
        width: 100%;
    }
}

.city-pair .field-wrapper{
    flex:1 1 200px;
}

.city-pair .removeStop{
    flex:0 0 auto;
    margin-left:5px;
    margin-bottom:0;
}

/* CITY PAIR 2 */
.city-pair2{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    border:1px solid #444;
    padding:5px;
    margin-bottom:5px;
    border-radius:5px;
    align-items:flex-end;
    width:100%;
    background:#0d0d0d;
}

.city-pair2 .field-wrapper{
    flex:1 1 200px;
}

.city-pair2 .removeStop{
    flex:0 0 auto;
    margin-left:5px;
    margin-bottom:0;
}


/* Step1: Passengers, Class, Direct Flights inline */
.step1-extra{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:flex-end;
    width:100%;
    margin-top:10px;
}

.step1-extra .field-wrapper{
    flex:1 1 200px;
}


/* Step2: All fields inline */
.step2-fields{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:flex-end;
    width:100%;
}

.step2-fields .field-wrapper{
    flex:1 1 200px;
}


/* Add Stop button */
#addStop {
    padding: 5px 10px;
    font-size: 14px;
    height: auto;
    border-radius: 4px;
    margin-top: 10px;
    background-color: #FFF;
    color: #000;
    border: none;
    cursor: pointer;
}

#addStop:hover {
    background-color: #026797;
    color: #FFF;
}


/* Inline checkbox for Direct Flights */
.step1-extra .field-wrapper input[type="checkbox"] {
    appearance: none;
    width: 18px;
    height: 18px;
    border: 1px solid #666;
    background:#FFF;
    border-radius: 3px;
    margin-right: 5px;
    vertical-align: middle;
    position: relative;
    cursor: pointer;
}

.step1-extra .field-wrapper input[type="checkbox"]:checked::after {
    content: "✔";
    position: absolute;
    top: -2px;
    left: 2px;
    font-size: 14px;
    color: #FFF;
    color:#000;
}

.step1-extra .field-wrapper label {
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: 600;
    margin-bottom: 0;
    
    color:#fff;
}


/* Step navigation (Next, Back, Submit buttons) */
.step-navigation {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.step-navigation button {
    background: #0073aa;
    color: #fff;
    border: none;
    padding: 8px 16px;
    font-weight: 600;
    border-radius: 5px;
    cursor: pointer;
}

.step-navigation button:hover {
    opacity: 0.85;
}

@media (max-width: 768px) {
    .step-navigation {
        justify-content: center;
    }
}


/* RED REMOVE BUTTON */
.removeStop {
    padding: 3px 8px;
    font-size: 12px;
    background-color: #ff0000;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    height: auto;
}

.removeStop:hover {
    background-color: #cc0000;
}


.mcf-form h3 {
    color: #fff;
}
