.form-field {
    margin-bottom: 5px;
    position: relative;
}
.form-field label {
    font-weight: bold;
    position: relative;
    font-size: 0.9rem;
    width:100%;
}
.form-field input, .form-field select, .form-field textarea {
    width: 100%;
    border-radius: 8px;
    padding: 0.8rem 1rem;
    margin: 0 0 9px 0;
    font-size: 16px;
    border: solid 1px var(--muted-waiting-color);
}
.form-field .input-error {
    position: absolute;
    display: none;
    left: 0;
    top: 65px;
    padding: 5px;
    border-radius: 5px;
    background: var(--bs-danger);
    color: #ffffff;
    z-index: 3;
}
.form-field input:focus, .form-field textarea:focus {
    box-shadow: 0 5px 7px rgba(11,90,145,0.2);
    background-color: var(--white-color);
    border: solid 1px var(--c-grey);
}
.form-field label.required:after {
    display: inline;
    position:absolute;
    right:0;
    vertical-align: middle;
    padding: 2px 5px;
    font-size: 9px;
    color: var(--white-color);
    border-radius: 4px;
    background-color: var(--bs-danger);
    content: 'Обязательное';
    margin-left:1rem;
    font-weight: bold;
}
.form-field.error[type="checkbox"] .input-error{
    top: 25px;
}
.form-field .input-error {
    position: absolute;
    display: none;
    left: 0;
    top: 65px;
    padding: 5px;
    border-radius: 5px;
    background: var(--bs-danger);
    color: #ffffff;
    z-index: 3;
}
.form-field.error .input-error{
    display: block;
}
.form-field .input-error:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 7px 6px 7px;
    border-color: transparent transparent var(--bs-danger) transparent;
    left: 15px;
    top: -6px;
    content: '';
    position: absolute;
}
.form-field.error,
.form-field.error input,
.form-field.error textarea,
.form-field.error .checkbox{
    border-color: var(--bs-danger);
    color: var(--bs-danger);
}
.form-field input:focus,
.form-field textarea:focus{
    box-shadow: 0 5px 7px rgba(11,90,145,0.2);
    background-color: var(--white-color);
    border: solid 1px var(--c-grey);
}

.form-field .checkbox {
    padding-left: 1.9rem;
    position: relative;
    cursor: pointer;
    line-height: 1.1;
    transition: all 0.4s ease-in-out;
}
.form-field .checkbox i {
    display: none;
    position: absolute;
    left: 1px;
    top: 1px;
    font-size:16px;
    z-index: 2;
}
.form-field .checkbox i{
    color:var(--white-color);
}
.form-field .checkbox:hover:after {
    border-color: var(--main-link-color);
}
.form-field .checkbox:after {
    width: 18px;
    height: 18px;
    position: absolute;
    left: 0;
    top: 0;
    content: '';
    border-radius: 3px;
    border: solid 1px var(--c-grey);
    transition: all 0.4s ease-in-out;
}
.form-field .checkbox.checked:after {
    border-color: var(--bs-success);
    background: var(--bs-success);
}
.form-field .checkbox.checked i{
    display: block;
}