/* Layout fix for custom login form */
.section-login {
    min-height: 90vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
}

.card {
    max-width: 500px;
    width: 100%;
    margin: auto;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

/* Fix Moodle form alignment */
/* Fix Moodle form grid to force full-width stacked layout */

/* Labels take full width */
/* Force label and input stacking */
/* Target the entire fitem block */
#fitem_id_username.row,
#fitem_id_password.row,
#fitem_id_submitbutton.row {
    flex-wrap: wrap;
    display: block;
    flex-direction: column;
}

/* Label occupies full width */
#fitem_id_username .col-md-3,
#fitem_id_password .col-md-3,
#fitem_id_submitbutton .col-md-3 {
    flex: 0 0 100%;
    max-width: 100%;
    padding-right: 0;
}

/* Input occupies full width */
#fitem_id_username .col-md-9,
#fitem_id_password .col-md-9,
#fitem_id_submitbutton .col-md-9 {
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 0;
}

/* Fix form-control layout */
input.form-control {
    width: 100%;
    margin-bottom: 10px;
}

/* Fix button layout */
#id_submitbutton {
    width: 100%;
    margin-top: 10px;
}

/* Optional: make required icon flow below label */
.form-label-addon {
    display: none; /* Or adjust placement if you prefer */
}


/* Label appearance */
label {
    font-weight: 600;
    margin-bottom: 5px;
}

/* Error message alignment */
.form-control-feedback {
    display: block;
    margin-top: 5px;
    color: red;
    font-size: 0.9rem;
}

/* Card alignment */
.section-login .card {
    max-width: 500px;
    margin: auto;
    padding: 20px;
}


/* Clean error placement */
.form-control-feedback {
    display: block;
    margin-top: 5px;
    color: red;
    font-size: 0.9rem;
}

.form-control {
    height: auto;
    border: none;
}
