#form-niveau-sortie {
    display: flex;
    gap: 2%;
    max-width: calc(var(--theme-block-max-width, 100%) - 15%);;
    margin: auto;
    padding: 1rem;
    border: 1px solid #ccc;
    border-radius: 8px;
    box-sizing: border-box;
    align-items: stretch;
}

#form-niveau-sortie-inputs {
    width: 60%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1rem;
    max-width: 90%;
    box-sizing: border-box;
}

.form-row {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.form-row label {
    margin-bottom: 0.25rem;
}

.form-row input,
.form-row select {
    width: 80%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0.4rem;
}

.intermediate-result {
    width: 25px;
    height: 25px;
    background-color: #ccc;
    border-radius: 7px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 10px;
    font-size: 0.9rem;
    color: #555;
}


#form-niveau-sortie-results {
    width: 38%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

/* Couleurs des pastilles */
.level-easy    { background-color: #ffff00; }
.level-normal  { background-color: #ffffff; border: 1px solid #000; }
.level-hard    { background-color: #ffc000; }
.level-extreme { background-color: #7030a0; }

/* Pastille de résultat final */
.result {
    width: 50%;
    min-width: 25px;
    height: auto;
    aspect-ratio: 1 / 1;
    background-color: #ccc;
    border-radius: 7px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    color: #fff;
    font-weight: bold;
    text-align: center;
}

.result-green      { background-color: #008000; }
.result-blue       { background-color: #00008B; }
.result-red        { background-color: #FF0000; }
.result-black      { background-color: #000000; }
.result-impossible { background-color: #7030A0; }

/* Responsive */
@media (max-width: 768px) {
    #form-niveau-sortie {
        flex-direction: column;
    }

    #form-niveau-sortie-inputs label,
    #form-niveau-sortie-inputs input,
    #form-niveau-sortie-inputs select {
        width: 100%;
    }

    #form-niveau-sortie-inputs,
    #form-niveau-sortie-results {
        width: 100%;
        max-width: 100%;
    }
}

@media (min-width: 600px) {
    .form-row {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .form-row label {
        width: 40%;
        margin-bottom: 0;
    }

    .form-row input,
    .form-row select {
        width: 55% !important;
    }
}