.mcf-form{
    width:90%;
    /*max-width:1200px;*/
    margin:30px auto;
    padding:10px;
    background:#fff;
    border-radius:10px;
    box-shadow:0 2px 10px rgba(0,0,0,0.1);
    box-sizing:border-box;
}

.mcf-form label{
    display:block;
    margin-bottom:2px;
    font-weight:600;
}

.mcf-form input, .mcf-form select{
    width:100%;
    padding:8px;
    margin-bottom:10px;
    border:1px solid #ccc;
    border-radius:5px;
    box-sizing:border-box;
}

button{
    background:#0073aa;
    color:#fff;
    padding:10px 15px;
    border:none;
    border-radius:5px;
    cursor:pointer;
}

.step{display:none;}
.step.active{display:block;}

/* STEP 1: Inline layout */
.city-pair{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    border:1px solid #ddd;
    padding:5px;
    margin-bottom:5px;
    border-radius:5px;
    align-items:flex-end;
    width:98%;
}

/* 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-pair2{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    border:1px solid #ddd;
    padding:5px;
    margin-bottom:5px;
    border-radius:5px;
    align-items:flex-end;
    width:100%;
}

.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: #ff6600;  /* orange color */
    color: #fff;                /* white text */
    border: none;
    cursor: pointer;
}

/* Optional: hover effect */
#addStop:hover {
    background-color: #e65c00;
}

/* Inline checkbox for Direct Flights */
.step1-extra .field-wrapper input[type="checkbox"] {
    appearance: none;       /* remove default checkbox style */
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 18px;
    height: 18px;
    border: 1px solid #ccc; /* simple border */
    border-radius: 3px;     /* optional rounded */
    margin-right: 5px;
    vertical-align: middle;
    position: relative;
    cursor: pointer;
}

/* Show checkmark when checked */
.step1-extra .field-wrapper input[type="checkbox"]:checked::after {
    content: "✔";
    position: absolute;
    top: -2px;
    left: 2px;
    font-size: 14px;
    color: #ff6600;
}

/* Keep label and checkbox inline */
.step1-extra .field-wrapper label {
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: 600;
    margin-bottom: 0;
}

.step-navigation {
    display: flex;
    justify-content: flex-end;  /* aligns buttons to right */
    gap: 10px;                  /* spacing between buttons */
    margin-top: 20px;
    flex-wrap: wrap;            /* allow wrapping on mobile */
}

.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;
}

/* Mobile: center buttons */
@media (max-width: 768px) {
    .step-navigation {
        justify-content: center;
    }
}

.removeStop {
    padding: 3px 8px;        /* smaller size */
    font-size: 12px;         /* smaller text */
    background-color: #ff0000; /* red color */
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    height: auto;            /* auto height for small button */
}

.removeStop:hover {
    background-color: #cc0000; /* darker red on hover */
}

