form {
    display: block; width: 100%;
}
.form-item {
    display: block; clear: both; width: 100%; height: auto;
    margin: 0 0 16px 0;
}
.form-item label {
    display: block; position: relative;
    font: 500 13px / 13px "Inter", serif;
    color: #999;
}
.form-item .subLabelTripleGroup { display: flex; justify-content: space-between; margin: 16px 0 0 0; }
.form-item .subLabelTripleInput {
    display: inline-block; vertical-align: top; width: 33%;
    font: 500 13px / 13px "Inter", serif; color: #888;
}
.form-item .subLabelTripleInput input { text-align: center; }

.form-item label .alert {
    display: block; position: absolute; top: 0; left: 0;
    padding: 2px 0 0 5px; margin: 16px 0 0 0;
    font-size: 10px; font-weight: 600; color: var(--primary-red);
}
.form-item .fitem:not([type="date"]) {
    display: block; width: 100%; height: 50px;
    padding: 2px 16px 0 16px; margin-top: 4px;
    border: 1px solid #ccc; border-radius: 8px;

    font: 400 16px/16px "Inter", serif;
}
.form-item .fitem#proposal_desc {
    padding: 16px !important; height: auto !important; min-height: 80px;
    line-height: 18px;
}
.form-item .fitem:read-only { background: transparent;  }

.form-item .fitem.error,.form-item .fitec.error { border-color: var(--primary-red); }
.form-item .fitem.success,.form-item .fitec.success { border-color: var(--primary-green); }

.form-item input[type="date"] {
    display: flex;
    padding: 14px;
    border-radius: 8px;
    border: 1px solid #ccc;
    margin-top: 4px;
    align-items: center;
    justify-content: center;
}
.form-item input[type="file"] {
    padding: 0; padding-left: 0 !important;
    border: 0 !important; border-radius: 0 !important;
    margin-top: 16px !important;
}

.form-item .fitec {
    display: block; float: left;
    padding: 0; margin: 0 5px 0 0;
}

.form-item.checkbox label {
    font: 600 18px / 24px "Inter", serif;
    color: #4CAF50;
}
.form-item.checkbox label.error { color: var(--primary-red); }

.form-legend {
    display: block;
    margin: 0 0 16px 0;
}
.form-legend ul li {
    font: 300 16px/18px "Inter", serif; color: #828282;
}
.form-legend p {
    font: 600 14px/18px "Inter", serif; color: #828282;
    text-align: center;
}


/* Buttons */
.form-item .button_submit {
    display: flex; align-items: center; justify-content: center;
    width: auto; min-width: 200px; height: 40px;
    margin: 0 auto;
    background: var(--primary-blue);
    border: 0; border-radius: 8px;
    font: 400 16px/16px "Inter", serif; color: #fff;
    transition: all 0.15s linear 0s;
    cursor: pointer;
}
.form-item .button_submit:hover {
    outline: 3px solid rgba(11,100,221,0.5);
}
.form-item .button_submit:disabled {
    background: var(--buttons-disabled);
}
.form-item .button_submit:disabled:hover { outline: 3px solid rgba(136,136,136,0.5); }

.form-item.a-button a {
    display: flex; align-items: center; justify-content: center;
    width: auto; min-width: 200px; max-width: 250px; height: 40px;
    margin: 0 auto;
    background: var(--primary-blue);
    border: 0; border-radius: 8px;
    font: 400 16px/16px "Inter", serif; color: #fff;
    transition: all 0.15s linear 0s;
    cursor: pointer; text-decoration: none;
}
.form-item.a-button a:hover {
    outline: 3px solid rgba(11,100,221,0.5);
}


/* register form control */
#register_step_1 { display: block; }
#register_step_2 { display: none; }
#register_step_3 { display: none; }

#input_user_name { border: 0; }




/* global */
.button {
    cursor: pointer;
    transition: all 0.1s linear 0s;
    outline: 0px solid #fff;
}
.button-default {
    font: 500 13px/13px "Inter", serif;
    background: #ddd;
    color: #111;
}
.button-default:hover {
    background: #ccc;
    outline: 3px solid #eee;
}
.form-container .form-info { display: block; margin: 16px 0 0 0; }
.form-container .small_alert {
    display: block; width: 100%;
    margin: 8px auto; padding: 8px;
    background: rgba(255,0,0,0.1); border-radius: 8px;
    font-size: 12px; color: #ff0000; text-align: center;

}