.box {
    position: relative;
    top: 0;
    opacity: 1;
    float: left;
    padding: 60px 50px 40px 50px;
    width: 100%;
    background: #fff;
    border-radius: 10px;
    transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    z-index: 5;
    background: rgba(255, 255, 255, 0.9);
}

.box.back {
    transform: scale(.95);
    -webkit-transform: scale(.95);
    -ms-transform: scale(.95);
    top: -20px;
    opacity: .6;
    z-index: -1;
}

.box:before {
    content: "";
    width: 100%;
    height: 30px;
    border-radius: 10px;
    position: absolute;
    top: -10px;
    background: rgba(255, 255, 255, .6);
    left: 0;
    transform: scale(.95);
    -webkit-transform: scale(.95);
    -ms-transform: scale(.95);
    z-index: -1;
}

.overbox .title {
    color: #fff;
}

.overbox .title:before {
    background: #fff;
}

.title {
    width: 100%;
    /* float: left; */
    line-height: 40px;
    font-size: 26px;
    font-weight: 400;
    letter-spacing: 1px;
    color: #d0c016;
    position: relative;
}

.title:before {
    content: "";
    width: 5px;
    height: 100%;
    position: absolute;
    top: 0;
    left: -50px;
    background: #d0c016;
}

.login-input,
.login-input label,
.login-input input,
.login-input .spin,
.button,
.button button .button.login button i.fa,
.material-button .shape:before,
.material-button .shape:after,
.button.login button {
    transition: 300ms cubic-bezier(.4, 0, .2, 1);
    -webkit-transition: 300ms cubic-bezier(.4, 0, .2, 1);
    -ms-transition: 300ms cubic-bezier(.4, 0, .2, 1);
}

.login-input,
.login-input label,
.login-input input,
.login-input .spin,
.button,
.button button {
    width: 100%;
    float: left;
}

.login-input,
.button {
    margin-top: 40px;
    height: 50px;
}

.login-input,
.login-input input,
.button,
.button button {
    position: relative;
}

.login-input input {
    font-family: 'Roboto', sans-serif;
    color: rgba(0, 0, 0, 0.8);
    font-weight: 200;
    
    font-size: 14px;
    height: 60px;
    top: 6px;
    border: none;
    background: transparent;
}

.login-input label,
.button button {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    color: rgba(0, 0, 0, 0.8);
    font-weight: 200;
}




.login-input:before,
.login-input .spin {
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
}

.login-input:before {
    content: "";
    background: rgba(0, 0, 0, 0.1);
    z-index: 3;
}

.login-input .spin {
    background: #d0c016;
    z-index: 4;
    width: 0;
}

.overbox .login-input .spin {
    background: rgba(255, 255, 255, 1);
}

.overbox .login-input:before {
    background: rgba(255, 255, 255, 0.5);
}

.login-input label {
    position: absolute;
    top: 0px;
    left: 0;
    /* z-index: 2; */
    cursor: pointer;
    line-height: 60px;
}

.button.login {
    width: 40%;
    left: 30%;
}

.button.login button,
.button button {
    width: 100%;
    line-height: 44px;
    left: 0%;
    background-color: transparent;
    border: 2px solid rgba(0, 0, 0, 0.3);
    font-weight: 400;
    font-size: 16px;
    color: rgba(0, 0, 0, 0.5);
}

.button.login {
    margin-top: 42px;
}

.button {
    margin-top: 24px;
}

.button button {
    background-color: #fff;
    color: #d0c016;
    border: none;
}

.button.login button.active {
    border: 3px solid transparent;
    color: #fff !important;
}

.button.login button.active span {
    opacity: 0;
    transform: scale(0);
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
}

.button.login button.active i.fas {
    color: #d0c016;
    opacity: 1;
}

.button.login button i.fas {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 50px;
    opacity: 0;
}

.button.login button:hover {
    color: #d0c016;
    border-color: #d0c016;
}

.button.login button:focus {
    color: #d0c016;
    border-color: #d0c016;
}

.button {
    margin: 20px 0;
    overflow: hidden;
    z-index: 2;
}

.button button {
    cursor: pointer;
    position: relative;
    z-index: 2;
}

.pass-forgot {
    width: 100%;
    float: left;
    text-align: center;
    color: rgba(0, 0, 0, 0.4);
    font-size: 16px;
}

body {
    font-family: 'Roboto', sans-serif;
}

.login-container {
    background-image: url(https://images.unsplash.com/photo-1509023464722-18d996393ca8?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1350&q=80);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 100vh;
}

.materialContainer {
    width: 100%;
    max-width: 460px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

*,
*:after,
*::before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    text-decoration: none;
    list-style-type: none;
    outline: none;
}


/** PRELOADER */

.bg-login { 
    height: 100%; 
    background-image: url('../images/bg-login.jpg'); 
    background-repeat: no-repeat; 
    background-size: cover; 
    background-position: center;  
    animation: colorize-bg 2s ease-out 2s forwards; 
    -webkit-animation: colorize-bg 2s ease-out 2s forwards; 
 
    -webkit-filter: grayscale(100%) brightness(0%); /* Safari 6.0 - 9.0 */ 
    filter: grayscale(100%) brightness(0%); 
} 
 
@keyframes colorize-bg { 
    from { 
        -webkit-filter: grayscale(100%) brightness(0%); /* Safari 6.0 - 9.0 */ 
        filter: grayscale(100%) brightness(0%); 
    } 
    to { 
        -webkit-filter: grayscale(0%) brightness(100%); /* Safari 6.0 - 9.0 */ 
        filter: grayscale(0%) brightness(100%); 
    } 
} 
 
@keyframes show-login-menu { 
    from { 
        right: -100%; 
    }  
    to { 
        right: 0%; 
    } 
} 
 
/**  
 * loading  
 */ 
 
  
.loading { 
    -webkit-animation: fadein 2s; 
    -moz-animation: fadein 2s; 
    -o-animation: fadein 2s; 
    animation: fadein 2s; 
} 
 
@-moz-keyframes fadein { 
    from { 
        opacity: 0 
    } 
    to { 
        opacity: 1 
    } 
} 
 
@-webkit-keyframes fadein { 
    from { 
        opacity: 0 
    } 
    to { 
        opacity: 1 
    } 
} 
 
@-o-keyframes fadein { 
    from { 
        opacity: 0 
    } 
    to { 
        opacity: 1 
    } 
} 
 
@keyframes fadein { 
    from { 
        opacity: 0 
    } 
    to { 
        opacity: 1 
    } 
} 
 
#load_overlay_container { 
    position: fixed; 
    left: 0; 
    top: 0; 
    width: 100%; 
    height: 100%; 
    background: #fff; 
    display: table; 
    text-align: center; 
    z-index: 9999; 
} 
 
#load_overlay { 
    display: table-cell; 
    vertical-align: middle; 
} 
 
#load_overlay_logo { 
    width: 150px; 
    height: auto; 
    animation: 5000ms color-fade ease infinite; 
} 
 
#load_overlay_bar { 
    position: fixed; 
    left: 50%; 
    top: 50%; 
    margin-left: -80px; 
    height: 4px; 
    width: 160px; 
    background: #c0c0c0; 
    margin-top: 50px; 
} 
 
#load_overlay_bar_inner { 
    position: relative; 
    background: #3d3d3d; 
    width: 0; 
    height: 4px; 
    animation: 2000ms load ease infinite; 
} 
 
@keyframes shake { 
    10%, 
    90% { 
        transform: translate3d(-1px, 0, 0); 
    } 
    20%, 
    80% { 
        transform: translate3d(2px, 0, 0); 
    } 
    30%, 
    50%, 
    70% { 
        transform: translate3d(-4px, 0, 0); 
    } 
    40%, 
    60% { 
        transform: translate3d(4px, 0, 0); 
    } 
} 
 
@keyframes spin { 
    20% { 
        -moz-transform: rotate(0deg); 
    } 
    50% { 
        -moz-transform: rotate(180deg); 
    } 
    80% { 
        -moz-transform: rotate(0deg); 
    } 
} 
 
@keyframes load { 
    0% { 
        width: 0; 
        left: 0; 
    } 
    50% { 
        width: 100%; 
        left: 0; 
    } 
    100% { 
        width: 0; 
        left: 100%; 
    } 
} 
 
@-moz-keyframes color-fade { 
    0% { 
        filter: blur(5px); 
    } 
    50% { 
        filter: blur(0px); 
    } 
    100% { 
        filter: blur(5px); 
    } 
} 
 
@keyframes color-fade { 
    0% { 
        filter: blur(5px); 
    } 
    50% { 
        filter: blur(0px); 
    } 
    100% { 
        filter: blur(5px); 
    } 
} 
