/* -- Input styles ---------------------------------- */
.form-group {
	position: relative; 
}
.input-group {
  position: relative;
}

/* Material input */
.material-form .material-input{
    position: relative;
    padding-top: 18px;
    margin-bottom: 10px;
    background:#fff;
}

.material-form .material-input:after{
    display: block;
    clear: both;
    content:"";
}
.material-form .material-input input, 
.material-form .material-input textarea{
    font-size: 16px;
    width: 100%;
    border:0;
    border-bottom: 1px solid lightgray;
	margin-bottom: 0;	
    outline: none;
    background: 0;
    float:left;
}

.material-form .material-input textarea{
    height: 120px;
    padding:7px 0;
}

.material-form .material-input input{
    height: 32px;
}

.material-form .material-input label{
    line-height: 32px;
}

.material-form .material-input label{
    color:gray;
    font-size: 16px;
    font-weight: 300;

    position: absolute;
    left:0;
    top:18px;
}

.material-form .material-bar{
    position: absolute;
    bottom:0;left:0;
    display: block;
    width: 100%;
}

.material-form .material-bar:before, 
.material-form .material-bar:after{
    content:"";
    height: 2px;
    width: 0;
    bottom:0;
    position: absolute;
    background: #63B1B1;
}

.material-form .material-bar:before{
    left:50%;
}

.material-form .material-bar:after{
    right:50%;
}

.material-form .material-input :focus ~ .material-bar:before,
.material-form .material-input :focus ~ .material-bar:after,
.material .error ~ .material-bar:before,
.material .error ~ .material-bar:after{
  width:50%;
}


.material-form .material-input :focus ~ label,
.material-form .material-input .filled ~ label,
.material .error:focus ~ label{
    color:lightgray;
    font-size: 13px;
    top:0;
    line-height: 24px;
}

.material-form .material-input :focus ~ label{
    color:#63B1B1;
}

.material-input input.form-control-danger {
	border-bottom: 1px solid #cc0000;
}

.material-input input.form-control-danger:focus, .material-input input.form-control-danger:hover {

}

.material-input input.form-control-danger ~.invalid-feedback {
	position:absolute;
	bottom:-20px;
}

.material-input-help {
	position:absolute;
	bottom: -20px;
}

.material-input input.form-control-danger ~ .material-input-help {
	bottom: -45px;
}

.material-input input.form-control-danger:focus,
.material-input input.form-control-danger.filled,
.material-input input.form-control-danger:not(.filled) ~ label{
    color:#cc0000;
}

.material-input input.form-control-danger ~ .material-bar:before,
.material-input input.form-control-danger ~ .material-bar:after,
.material-input input.form-control-danger ~ .material-bar:before,
.material-input input.form-control-danger ~ .material-bar:after{
    background:#cc0000;
}

/* Animation */
.material-form .material-select ul,
.material-form .material-bar:before, 
.material-form .material-bar:after,
.material-form .material-input label,
.material-form .material-select .material-bar,
.material-form .material-select > span,
.material-form .material-radio:before,
.material-form .material-checkbox,
.material-form .material-checkbox:before,
.material-form .material-checkbox:after{
    transition:.2s ease all; 
    -moz-transition:.2s ease all; 
    -webkit-transition:.2s ease all;
}

/* Disable select */
.material{
    -webkit-user-select: none;  
    -moz-user-select: none;    
    -ms-user-select: none;      
    user-select: none;
}

/* Material border box reset */
.material *,
.material *:before,
.material *:after {
    -webkit-box-sizing: border-box; 
    -moz-box-sizing:    border-box; 
    box-sizing:         border-box;
}