:root {
    --bs-border-color : #cdcdcd;
}

form .modal-title {
    text-align: center !important;
    font-weight: var(--fw-medium) !important;
    font-size: 1.4rem !important;
}

label.line {
    position: absolute;
    top: -.6rem;
    margin-left: .5rem;
    background-color: #fff;
    font-size: 0.85em;
}

.form-check-input {
    width: 1.2em;
    height: 1.2em;
}

.div-radio {
    border-radius: var(--bs-border-radius) !important;
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

    form input::placeholder,
    form textarea::placeholder {
        opacity: 0.8 !important;
    }


.form-control.is-valid:focus, 
.was-validated .form-control:valid:focus,
.form-check-input.is-valid:focus, 
.was-validated .form-check-input:valid:focus,
.form-check-input:focus {
    border-color: #c5c5c5;
    box-shadow: none;
}

.form-control.is-invalid:focus,
.was-validated .form-control:invalid:focus,
.form-check-input.is-invalid:focus,
.was-validated .form-check-input:invalid:focus {
    border-color: var(--bs-form-invalid-border-color);
    box-shadow: none;
}

.form-control.is-valid,
.was-validated .form-control:valid,
.was-validated .form-select:valid:not([multiple]):not([size]),
.was-validated .form-control:valid {
    --bs-form-select-bg-icon: none;
    border-color: var(--input-border);
}

.was-validated .form-check-input:valid ~ .form-check-label {
    color: var(--standart-color);
}

.was-validated .form-select:invalid:not([multiple]):not([size]) {
    --bs-form-select-bg-icon: none;
}

.was-validated .form-control:valid {
    background-image: none;
}

form .form-check-input {
    width: 1.3em;
    height: 1.3em;
    border: var(--bs-border-width) solid #bbb;
}

form .form-check-label {
    margin-left: .35rem !important
}

.form-check-input:checked,
.form-check-input.is-valid:checked, .was-validated .form-check-input:valid:checked {
    background-color: var(--master-color);
    border-color: var(--master-color);
}

.form-check-input.is-valid, .was-validated .form-check-input:valid {
    border-color: var(--bs-border-color);
}

.invalid-feedback {
    position: absolute;
    margin-top: 0;
    font-size: 0.8rem;
}

.was-validated .form-control:invalid + input {
    border: 1px solid red;
}

.was-validated .form-control:invalid {
    background-image: none;
    border: 1px solid red !important;
}

.form-control:focus,
.form-select:focus {
    border-color: var(--input-focus-border);
    box-shadow: none;
}

form .middle-caption {
    overflow: hidden;
    color: var(--standart-color);
    font-weight: var(--fw-medium);
    margin-bottom: 0.5em;
}

form input.form-control:read-only {
    color: var(--readonly-color);
}

.border-focus {
    border-color: var(--input-focus-border);
}

#admin-realestate-visuals .img-fluid {
    height: 200px !important;
}



input[data-bs-toggle=""] {
    background-color: var(--bs-secondary-bg);
    opacity: 0.6;
}

.middle-caption > sup {
    color: var(--master-color) !important;
}

.virtual-circle sup {
    color: green !important;
}


input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}
