.kzvn-login-form, .webauthn-otp {
    display: flex;
    flex-direction: column;
}

.webauthn-passwordless {
    display: flex;
    flex-direction: column-reverse;
}

@supports not (gap: 1.3rem) {
    .kzvn-login-form > * {
        margin-bottom: 1.3rem;
    }

    .kzvn-login-form > *:last-child {
        margin-bottom: 0;
    }
}

@supports (gap: 1.3rem) {
    .kzvn-login-form {
        gap: 1.3rem;
    }
}

.kzvn-form-group:not(.submit) {
    display: flex;
    flex-direction: column;
}

@supports not (gap: 0.5rem) {
    .kzvn-form-group:not(.submit) > * {
        margin-bottom: 0.5rem;
    }

    .kzvn-form-group:not(.submit) > *:last-child {
        margin-bottom: 0;
    }
}

@supports (gap: 0.5rem) {
    .kzvn-form-group:not(.submit) {
        gap: 0.5rem;
    }
}

.kzvn-form-group.submit {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: .5rem;
}

.kzvn-form-group.submit a,
.kzvn-form-group.submit button,
.kzvn-form-group.submit input {
    flex: 1 1 calc(50% - 0.25rem);
}

.kzvn-form-group.submit button:only-child,
.kzvn-form-group.submit input:only-child {
    flex: unset;
}

@media (max-width: 1329px) {
    .kzvn-form-group.submit button,
    .kzvn-form-group.submit input,
    .kzvn-form-group.submit a {
        flex: unset;
    }
}

.kzvn-form-group.submit form {
    flex-grow: 1;
}

.kzvn-form-group.submit form button {
    width: 100%;
    max-width: 200px;
}

@supports not (gap: 0.5rem) {
    .kzvn-form-group.submit > * {
        margin-right: 0.5rem;
    }

    .kzvn-form-group.submit > *:last-child {
        margin-right: 0;
    }
}

@supports (gap: 0.5rem) {
    .kzvn-form-group.submit {
        gap: 0.5rem;
    }
}

.form-input {
    border-radius: var(--border-radius);
    border: var(--border-basic);
    flex: 1;
    padding: .7rem;
}

.kzvn-fehlermeldung {
    color: var(--error-text-color);
    padding: 0;
    margin: 0;
}

.kzvn-fehlermeldung-border {
    border: 2px solid var(--error-text-color);
}

.kzvn-fehlermeldung-text {
    color: var(--error-text-color);
}

.kzvn-form-group-password {
    display: flex;
}

@supports not (gap: 0.2rem) {
    .kzvn-form-group-password > * {
        margin-right: 0.2rem;
    }

    .kzvn-form-group-password > *:last-child {
        margin-right: 0;
    }
}

@supports (gap: 0.2rem) {
    .kzvn-form-group-password {
        gap: 0.2rem;
    }
}

.kzvn-form-footer {
    border-top: var(--border-basic);
    padding: .5rem 0;
    display: flex;
}

@supports not (gap: 1.5rem) {
    .kzvn-form-footer > * {
        margin-right: 1.5rem;
    }

    .kzvn-form-footer > *:last-child {
        margin-right: 0;
    }
}

@supports (gap: 1.5rem) {
    .kzvn-form-footer {
        gap: 1.5rem;
    }
}

.show-username-in-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.disabled-color {
    color: var(--kzvn-grey-color-700);
}

#webauth, #authn_select {
    display: none;
}