html, body {
    height: 100%
}

body {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center
}

.login-form {
    display: block;
    width: 301px;
    background: no-repeat center top
}

.login-form.has-logo {
    padding-top: 116px
}

.login-form h1 {
    text-align: center;
    font-size: 3em;
    color: #3f4d5a;
    word-wrap: break-word
}

.login-form .field {
    margin: 0
}

.login-form .btn {
    display: block
}

.login-form .buttons {
    position: relative;
    text-align: center
}

.login-form .submit {
    display: block;
    float: none;
    padding: 14px 16px;
    height: auto;
    width: 100%;
    border-radius: 4px;
    background-color: #FFF!important;
    color: #000!important;
}

.login-form .submit:not(.disabled):not(.inactive):hover,
.login-form .submit:not(.disabled):not(.inactive).hover,
.login-form .submit:not(.disabled):not(.inactive):focus  {
    background-color: #FFF!important;
    color: #000!important;
}


#spinner {
    position: absolute;
    top: 58px;
    left: 50%;
    margin-left: -12px
}

p.error {
    text-align: center
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5), only screen and (min-resolution: 1.5dppx) {
    .login-form {
        background-size: 202px
    }
}
