body {
    margin: 0;
    padding: 0;
    font-family: "Roboto", sans-serif
}

* {
    font-family: "Roboto", sans-serif;
    box-sizing: border-box
}

.bg {
    display: block;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1;
    top: 0;
    left: 0;
    background: url(/files/themes/overrides/images/login-bg.jpg) center center #efefef;
    background-size: cover
}

.loginbox {
    display: block;
    position: absolute;
    min-width: 340px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 10
}

.loginbox__container {
    background: #fff;
    box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
    border-radius: 2px;
    padding: 0 20px 20px 20px;
    overflow: hidden
}

.loginbox__header {
    margin: 0 -20px 0 -20px;
    padding: 20px 0 0 0;
    text-align: center;
    background: #2bc2fc
}

.loginbox__header h2 {
    margin: 0;
    padding: 20px 0;
    font-weight: 300;
    color: #fff
}

.loginbox__header .logo {
    position: relative;
    background: #fff;
    width: 128px;
    height: 128px;
    margin: 20px auto 0 auto;
    border-radius: 128px
}

.loginbox__header .logo img {
    position: absolute;
    width: 80%;
    height: auto;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.loginbox__form {
    margin-top: 20px
}

.loginbox__form .field {
    position: relative;
    min-height: 44px;
    margin-bottom: 15px
}

.loginbox__form .field input {
    display: block;
    width: 100%;
    height: 42px;
    margin: 0;
    padding: 0;
    border: none;
    border-bottom: 1px solid #ccc;
    outline: none;
    font-size: 16px;
    font-weight: 400;
    font-family: "Roboto", sans-serif;
    -webkit-transition-property: border-color;
    transition-property: border-color;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;
    -webkit-transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94);
    transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94)
}

.loginbox__form .field input:focus {
    border-bottom: 2px solid #2bc2fc
}

.loginbox__form .field input:focus+label:not(.switch-label) {
    top: -5px;
    font-size: 12px
}

.loginbox__form .field input.filled+label {
    top: -5px;
    font-size: 12px
}

.loginbox__form .field>label:not(.switch-label) {
    position: absolute;
    top: 11px;
    left: 0px;
    font-size: 16px;
    font-weight: 400;
    font-family: "Roboto", sans-serif;
    color: #a4a4a4;
    -webkit-transition-property: top font-size;
    transition-property: top font-size;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;
    -webkit-transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94);
    transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94)
}

.loginbox__form .field .switch-label {
    display: block;
    position: relative;
    height: 44px
}

.loginbox__form .field .switch-label>label {
    width: 60%;
    height: 44px;
    line-height: 42px;
    font-size: 16px;
    font-weight: 400
}

.loginbox__form .field .switch-label .switch {
    display: block;
    position: absolute;
    width: 40%;
    top: 0;
    right: 0
}

.loginbox__form .field .switch-label .switch input {
    visibility: hidden;
    width: 0;
    height: 0
}

.loginbox__form .field .switch-label .switch input:checked+.box {
    background: rgba(43, 194, 252, 0.5)
}

.loginbox__form .field .switch-label .switch input:checked+.box .handle {
    left: 27px;
    background: #2bc2fc
}

.loginbox__form .field .switch-label .switch .box {
    display: block;
    position: absolute;
    width: 34px;
    height: 14px;
    border-radius: 7px;
    top: 22px;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: #9e9e9e;
    -webkit-transition-property: background;
    transition-property: background;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;
    -webkit-transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94);
    transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94)
}

.loginbox__form .field .switch-label .switch .box .handle {
    display: block;
    position: absolute;
    width: 20px;
    height: 20px;
    background: #fff;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 2px 1px -1px rgba(0, 0, 0, 0.12);
    top: 50%;
    left: 7px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    -webkit-transition-property: background left;
    transition-property: background left;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;
    -webkit-transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94);
    transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94)
}

.loginbox__form .field input[type="submit"] {
    letter-spacing: .5px;
    border-radius: 2px;
    height: 36px;
    line-height: 36px;
    padding: 0 2rem;
    text-transform: uppercase;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
    background: #2bc2fc;
    color: #fff;
    border: none;
    -webkit-transition-property: background;
    transition-property: background;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;
    -webkit-transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94);
    transition-timing-function: cubic-bezier(0.3, 0.14, 0.23, 0.94)
}

.loginbox__form .field input[type="submit"]:hover {
    background: #44c9fc;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2)
}

.loginbox__form .field input[type="submit"]:focus {
    background: #12bbfc
}

.loginbox .forgot {
    display: block;
    text-align: center;
    color: #333;
    text-decoration: none;
    margin: 15px 0;
    font-size: 14px
}

.loginbox .validation-error {
    margin: 20px 0;
    color: #ff7373;
    text-align: center
}