.group {margin-bottom:30px;}
.group .fields {padding-top:8px;}
.group-title {font-size:20px;font-weight:bold;line-height:20px;}
.group-title .circnum {font-size:16px;margin-right:10px;}
.form-container input {outline:none;}
.form-container input.form-control,
.form-container textarea.form-control {
    display:block;
    height:40px;
    border:none;
    border-bottom:solid 1px #C4C4C4;
    border-radius:0;
    font-size:16px;
    width:100%;
}
.form-container textarea.form-control {height:170px;padding-top:10px;border:solid 1px #e4e4e4;}
.form-container input:focus,
.form-container textarea:focus {outline:none}
.fields .field {position:relative;margin-bottom:10px;}
.fields .field.errors {margin-bottom:0;}
.fields .field.errors input {border:solid 1px red;}
.fields .field .error {font-size:12px;font-weight:bold;color:red;margin:0;}
._vplaceholder {position:absolute;text-align:right;left:-210px;width:200px;top:0;line-height:40px;font-size:12px;color:gray;opacity:0;transition:opacity 0.2s;}
._vplaceholder.visible {opacity:1;}
textarea {resize:none;}
.icon-calendar {position:absolute;top:12px;right:2px;width:24px;height:24px;cursor:pointer;}
.icon-calendar:hover {opacity:0.4;}
.icon-arrow-down {width:10px;height:7px;position:absolute;top:13px;right:15px;cursor:pointer;}
.small-label {font-size:12px;color:gray;font-weight:bold;padding-top:10px;margin-top:0px;margin-bottom:10px;}
.field-description {font-size:12px;color:gray;margin:0;margin-top:10px;font-weight:400;line-height:1.2;opacity:1;transition:opacity 0.2s;}
.field-description.hidden {opacity:0;}

.form-container input:focus,
.form-container textarea:focus {box-shadow:none;border-bottom-color:rgba(255,0,0,0.3);}

.form-container input[type="file"] {
    /*color: transparent;*/
    padding-left:50px;
}
.form-container input[type="file"]::-webkit-file-upload-button {
    visibility: hidden;
}
.form-container input[type="file"]::before {
    content: 'Выберите файл';
    color: black;
    display: inline-block;
    background: -webkit-linear-gradient(top, #f9f9f9, #e3e3e3);
    border: 1px solid #999;
    border-radius: 3px;
    padding: 5px 8px;
    outline: none;
    white-space: nowrap;
    -webkit-user-select: none;
    cursor: pointer;
    text-shadow: 1px 1px #fff;
    font-weight: 700;
    font-size: 10pt;
    margin-left:-50px;
}
.form-container input[type="file"]:hover::before {
    border-color:gray;
}
.form-container input[type="file"]:active {
    outline: 0;
}
.form-container input[type="file"]:active::before {
    background: -webkit-linear-gradient(top, #e3e3e3, #f9f9f9); 
}

.errors {display:block;}
.errors .error {display:block;}