body, html {
    --bs-body-bg: #fff;
    --bs-body-color: #000;
    --bs-border-radius: 2px;
    --bs-border-color: #ccc;
    --bs-body-font-family: Arial, sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    height: 100%;
    background: #e4ecf4;
}

::-ms-reveal {
    display: none
}


.auth-wrapper {
    width: 100%;
    max-width: 800px;
    margin: auto;
    color: #000;
}

    .auth-wrapper .auth-form {
        background: #fff;
        border-radius: 10px;
        padding: 12px;
        box-shadow: 0 0 15px rgba(0,0,0,.1);
    }

        .auth-wrapper .auth-form .form-control:focus {
            box-shadow: none;
        }

span.field-validation-error {
    width: 100%;
}

.validation-summary-errors {
    --bs-alert-color: var(--bs-danger-text-emphasis);
    --bs-alert-bg: var(--bs-danger-bg-subtle);
    --bs-alert-border-color: var(--bs-danger-border-subtle);
    --bs-alert-link-color: var(--bs-danger-text-emphasis);
    --bs-alert-padding-x: 1rem;
    --bs-alert-padding-y: 1rem;
    --bs-alert-margin-bottom: 1rem;
    --bs-alert-border-color: transparent;
    --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
    --bs-alert-border-radius: var(--bs-border-radius);
    --bs-alert-link-color: inherit;
    position: relative;
    padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
    margin-bottom: var(--bs-alert-margin-bottom);
    color: var(--bs-alert-color);
    background-color: var(--bs-alert-bg);
    border: var(--bs-alert-border);
    border-radius: var(--bs-alert-border-radius);
}

    .validation-summary-errors ul {
        margin-bottom: 0 !important;
    }

.field-validation-error {
    color: var(--bs-danger-text-emphasis) !important;
}

.field-validation-valid {
    display: none;
}

.input-validation-error {
    border-color: var(--bs-form-invalid-border-color);
    padding-right: calc(1.5em + 0.75rem);
}

input:not([type=checkbox]):not([type=radio]).input-validation-error {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.input-validation-error:invalid:focus, .form-control.input-validation-error:focus {
    border-color: var(--bs-form-invalid-border-color);
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

textarea.form-control.input-validation-error {
    padding-right: calc(1.5em + 0.75rem);
    background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.form-select.input-validation-error {
    border-color: var(--bs-form-invalid-border-color);
}

    .form-select.input-validation-error:not([multiple])[size="1"] {
        --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
        padding-right: 4.125rem;
        background-position: right 0.75rem center, center right 2.25rem;
        background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
    }

    .form-select.input-validation-error:focus {
        border-color: var(--bs-form-invalid-border-color);
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
    }

.form-control-color.input-validation-error {
    width: calc(3rem + 1.5em + 0.75rem);
}

.form-check-input.input-validation-error {
    border-color: var(--bs-form-invalid-border-color);
}

    .form-check-input.input-validation-error:checked {
        background-color: var(--bs-form-invalid-color);
    }

    .form-check-input.input-validation-error:focus {
        box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
    }

    .form-check-input.input-validation-error ~ .form-check-label {
        color: var(--bs-form-invalid-color);
    }

.input-group > .form-control:not(:focus).input-validation-error,
.input-group > .form-select:not(:focus).input-validation-error,
.input-group > .form-floating:not(:focus-within).input-validation-error {
    z-index: 4;
}

.text-red-custom {
    color: #de1b1b;
    font-size: 28px;
}
