body.login {
    background-color: #f4f4f4;
    font-size:        15px;
    line-height:      15px;
    display:          table;
    overflow:         unset;
}

body.login #content {
    padding:        0;
    height:         100%;
    vertical-align: middle;
    display:        table-cell;
}

body.login #content .wrapper {
    position: relative;
    margin:   60px auto 0;
}

body.login .login-block {
    margin:     80px auto;
    max-width:  400px;
    padding:    16px 24px;
    background: #fff;
    position:   relative;
}

body.login.login-auth.cols2 .login-block {
    width:     720px;
    max-width: initial;
}

.cols2 .auth-col {
    float: left;
}

.cols2 .auth-col-1 {
    width:         52%;
    padding-right: 8px;
}

.cols2 .auth-col-2 {
    width:        48%;
    padding-left: 8px;
}

.cols2 .col.auth-col:last-child:after {
    content: "";
    display: table;
    clear:   both;
}

.cols2 .identity-container {
    position:   absolute;
    top:        -80px;
    left:       -24px;
    text-align: left;
}

body.login .login-block .login-logo {
    position: absolute;
    top:      -60px;
    left:     calc(50% - (60px));
}



/**
 * Overrides for approval
 *
 * Offset the original image by 50% of its own height, so it's always vertically centered
 */
body.login.login-approve .login-block .login-logo,
body.login.login-preview .login-block .login-logo {
    top:       0;
    transform: translateY(-50%);
}
body.login.login-approve,
body.login.login-preview {
    line-height: 21px;
}
/**
 * End overrides for approval
 */



body.login .login-block .login-logo img {
    width: 120px;
}

body.login .login-block .login-form-container {
    padding-top: 64px;
    position:    relative;
}

/* Login form input resets */
body.login .login-form-container form.float .field,
body.login .login-form-container form .field .button,
body.login .login-form-container form.float .field label,
body.login .login-form-container form.float .field p.label {
    clear: both;
}

.login-form-container form .field p.input {
    width:      auto;
    background: none;
    border:     none;
    padding:    0;
    margin:     0;
    float:      none;
}

.login-form-container form .field p.input input {
    width: 300px;
}

.login-form-container form .field input[type="checkbox"] {
    float:  left;
    margin: 0 5px 0 1px;
    width:  auto;
}
/* END Login form input resets */

.login .login-form-container ul {
    margin: 8px 0 24px 0;
}

.login .login-form-container ul li {
    line-height: 18px;
}

.login .login-block {
    background-color:      #fff;
    -webkit-border-radius: 3px;
    border-radius:         3px;
    width:                 100%;
    min-height:            250px;
}

.login .login-form-container form .field input[type="text"],
.login .login-form-container form .field input[type="password"],
.login .login-form-container form .field input[type="number"] {
    width:                 100%;
    padding:               10px 12px;
    font-size:             15px;
    margin:                5px 0;
    -webkit-border-radius: 3px;
    border-radius:         3px;
    color:                 #555;
    position:              relative;
    border:                1px solid #d2d2d2;
}

.login .login-form-container form .field input[type="text"],
.login .login-form-container form .field input[type="password"],
.login .login-form-container form .field input[type="number"],
.login div.simplicate-checkbox,
.login form .button,
.login .abcRioButton {
    -webkit-transition: box-shadow .1s linear, border-color .1s linear;
            transition: box-shadow .1s linear, border-color .1s linear;
}

.login .login-form-container form .field input[type="number"] {
    -webkit-appearance: textfield;
    -moz-appearance:    textfield;
    appearance:         textfield;
}

.login .login-form-container form .field input[type="number"]::-webkit-outer-spin-button,
.login .login-form-container form .field input[type="number"]::-webkit-inner-spin-button {
     -webkit-appearance: none;
 }

.login .login-form-container form .field input[type="text"]:disabled,
.login .login-form-container form .field input[type="password"]:disabled,
.login .login-form-container form .field input[type="email"]:disabled {
    background-color: #eee;
    cursor:           not-allowed;
}

.login .login-form-container form label {
    color:       #875290;
}

form.float .field label,
form.float .field p.label {
    width: auto;
}

.login .login-form-container form #LoginForm_rememberMe {
    margin-top:  1px;
    margin-left: 5px
}

.login .login-form-container form button.button:hover,
.login .login-form-container form .field input[type="text"]:focus,
.login .login-form-container form .field input[type="password"]:focus,
.login .login-form-container form .field input[type="number"]:focus {
    border-color: #875290;
    box-shadow:   0 0 3px 3px rgba(155, 89, 182, 0.3);
}

.login .login-form-container form .field.error input[type="text"]:focus,
.login .login-form-container form .field.error input[type="password"]:focus,
.login .login-form-container form .field.error input[type="number"]:focus,
.login .login-form-container form .field input[type="text"].error:focus,
.login .login-form-container form .field input[type="password"].error:focus,
.login .login-form-container form .field input[type="number"].error:focus {
    box-shadow:   0 0 3px 3px rgba(242, 144, 144, 0.51) !important;
}

.login .login-form-container form button.button {
    width:                 100%;
    font-size:             15px;
    padding:               8px 12px;
    border:                none;
    background-color:      #875290;
    color:                 #fff;
    margin:                8px 0 8px 0;
    -webkit-border-radius: 5px;
    border-radius:         5px;
}

.login .login-form-container .buttons-container:after {
    content: "";
    display: table;
    clear: both;
}

.login div.simplicate-checkbox[isChecked="1"]{
    background-color: #875290;
}

.login div.simplicate-checkbox[isChecked="1"]:hover .check-icon {
    visibility: visible;
}

.login div.simplicate-checkbox[isChecked="1"]:hover {
    box-shadow: 0 0 1px 1px rgba(135, 82, 144, 0.51);
}

.login-form-container .col:after {
    content: "";
    display: table;
    clear:   both;
}




/* Login divider */
.login-divider {
    width:         100%;
    text-align:    center;
    border-bottom: 1px solid #eee;
    line-height:   0;
    margin:        30px 0 30px;
    color:         #aaa;
}

.login-divider--medium {
    margin: 15px 0 15px;
}

.login-divider--small-bottom {
    margin: 30px 0 15px;
}

.login-divider span {
    background: #fff;
    padding:    0 10px;
}

.login-form-container .login-divider + .field > label {
    margin-top: 0;
}
/* END Login divider */


.signin-container {
    min-height: 50px;
}

form .field.error input[type="text"],
form .field.error input[type="password"],
form .field.error input[type="number"],
form .field.error textarea,
form .field.error select,
input.error,
textarea.error {
    border-color: #f29090;
    border-width: 1px !important;
}

/* Message */
.login-form-container .message {
    padding:       16px 12px;
    line-height:   20px;
    margin-bottom: 32px;
    text-align:    center;
    border-radius: 3px;
}

.login-form-container .message.alert {
    background-color: #ffefee;
    color:            #db5447;
}

.login-form-container .message.confirmation {
    background-color: #e7f2e7;
    color:            #6ebb6e;
}

.login-form-container .message:not(.alert):not(.confirmation) {
    background-color: #f4f4f4;
    color:            #333;
    margin-bottom:    16px;
}
/* END Message */



/* Media block */
.media-block {
    display:        flex;
    align-items:    flex-start;
    padding-top:    15px; /* Same as font-size of container */
    padding-bottom: 15px; /* Same as font-size of container */
    margin:         0 0 15px 0; /* Same as font-size of container */
    border-radius:  3px;
}

.media-block--with-border {
    border:        1px solid rgba(0, 0, 0, 0.1);
    padding-left:  15px; /* Same as font-size of container */
    padding-right: 15px; /* Same as font-size of container */
}

.media-block--small {
    margin-bottom: 0;
}

.media-block > * {
    margin: 0 15px 0 0; /* Same as font-size of container */
}

.media-block--small > * {
    margin-right: 8px; /* Same as HALF of font-size of container */
}

.media-block > * + * {
    flex: 1;
}

.media-block h3 {
    font-weight: 500;
    margin:      7px 0; /* Same as HALF of font-size of container */
}
/* END Media block */

.login-providers-container {
    padding-bottom: 8px;
}

/**
 * .avatar when no image is uploaded
 * .picture.smal img when an image is uploaded
 */
.auth-avatar .avatar,
.auth-avatar .picture.smal img,
.auth-avatar .picture.smal[style] {
    margin:           0;
    border:           0 solid #fff3;
    background-color: #fefefe;
    border-radius:    20px;
    text-align:       center;
    color:            #fff;
    line-height:      40px;
    width:            40px;
    height:           40px;
}

body.login .login-form-container .sim-strong {
    font-family: 'ProximaNova-Semibold', Helvetica, Arial, sans-serif;
    font-weight: 400;
}


.login a.forgot {
    color:           #875290;
    font-size:       14px;
    text-decoration: none;
    text-align:      center;
    width:           100%;
    display:         block;
}

.login a.forgot:hover {
    text-decoration: none;
}


.login-form-container form .simplicate-checkbox {
    margin-right: 8px;
}

.login-form-container form label[for="rememberMe"] {
    cursor:      pointer;
    color:       #777;
    font-size:   15px;
}

.identity-container > div > div > small:first-child {
    display: block;
}

.login .login-form-container form .button.btn-success {
    background-color: #59b259;
}

.login .login-form-container form .button.btn-success:hover {
    border-color: #59b259;
    box-shadow:   0 0 3px 3px rgba(89, 178, 89, 0.3);
}

.login .login-form-container form .button.btn-inline {
    background-color: inherit;
    color:            inherit;
}

.login .login-form-container form .button.btn-inline:hover {
    border-color: unset;
    box-shadow:   unset;
}


.login .login-form-container form .button.btn-float-left {
    float: left;
}

.login.login-auth.cols2 .login-form-container form .buttons-container {
    display:         flex;
    align-items:     center;
    justify-content: center;
}

.login .login-form-container form .button.btn-float {
    width: auto;
}

.login .login-form-container form .buttons-container .button.btn-float:not(:last-child) {
    margin-right: 16px;
}

.login .login-form-container form .buttons-container .button.btn-float-left:last-child:after {
    content: "";
    display: table;
    clear:   both;
}

.login .login-overlay {
    background: rgba(255, 255, 255, 0.5);
    position:   absolute;
    width:      100%;
    height:     calc(100% - 60px); /** 100% - half of the simplicate-logo */
    bottom:     0;
    left:       0;
    z-index:    99;
    display:    none;
}

.login .login-overlay .spinner {
    background-image: url('/img/ajax-loader.gif');
    position:         absolute;
    height:           24px;
    width:            24px;
    top:              calc(40% - 24px);
    left:             0;
    right:            0;
    margin:           auto;
}

.login .changepassword-heading {
    text-align:    center;
    margin-bottom: 16px;
}


/** Google Sign In Button Styling */
.abcRioButton {
    -webkit-border-radius: 1px;
    border-radius:         1px;
    -webkit-box-shadow:    0 2px 4px 0 rgba(0, 0, 0, .25);
    box-shadow:            0 2px 4px 0 rgba(0, 0, 0, .25);
    -webkit-box-sizing:    border-box;
    box-sizing:            border-box;
    -webkit-transition:    background-color .218s, border-color .218s, box-shadow .218s;
    transition:            background-color .218s, border-color .218s, box-shadow .218s;
    -webkit-user-select:   none;
    -webkit-appearance:    none;
    background-color:      #fff;
    background-image:      none;
    color:                 #262626;
    cursor:                pointer;
    outline:               none;
    overflow:              hidden;
    position:              relative;
    text-align:            center;
    vertical-align:        middle;
    white-space:           nowrap;
    width:                 auto;
}

.abcRioButtonBlue {
    background-color: #4285f4;
    border:           none;
    color:            #fff;
}

.abcRioButtonBlue:hover {
    background-color: #4285f4;
    -webkit-box-shadow: 0 0 3px 3px rgba(66, 133, 244, .3);
    box-shadow:         0 0 3px 3px rgba(66, 133, 244, .3);
}

.abcRioButtonBlue:active {
    background-color: #3367d6;
}

.abcRioButtonLightBlue {
    background-color: #fff;
    color:            #757575;
}

.abcRioButtonLightBlue:active {
    background-color: #eee;
    color:            #6d6d6d;
}

.abcRioButtonIcon {
    float: left;
}

.abcRioButton .abcRioButtonIcon {
    background-color:      #fff;
    -webkit-border-radius: 3px;
    border-radius:         3px;
}

.abcRioButtonSvg {
    display: block;
}

.abcRioButtonContents {
    font-family:    ProximaNova-Regular;
    margin-left:    6px;
    margin-right:   6px;
}

.abcRioButtonContentWrapper {
    height: 100%;
    width:  100%;
}

.abcRioButton .abcRioButtonContentWrapper {
    border: 1px solid transparent;
}

.abcRioButtonErrorWrapper, .abcRioButtonWorkingWrapper {
    display: none;
    height:  100%;
    width:   100%;
}

.abcRioButtonErrorIcon, .abcRioButtonWorkingIcon {
    margin-left:  auto;
    margin-right: auto;
}

.abcRioButtonErrorState, .abcRioButtonWorkingState {
    border:             1px solid #d5d5d5;
    border:             1px solid rgba(0, 0, 0, .17);
    -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, .05);
    box-shadow:         0 1px 0 rgba(0, 0, 0, .05);
    color:              #262626;
}

.abcRioButtonErrorState:hover, .abcRioButtonWorkingState:hover {
    border:             1px solid #aaa;
    border:             1px solid rgba(0, 0, 0, .25);
    -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, .1);
    box-shadow:         0 1px 0 rgba(0, 0, 0, .1);
}

.abcRioButtonErrorState:active, .abcRioButtonWorkingState:active {
    border:             1px solid #aaa;
    border:             1px solid rgba(0, 0, 0, .25);
    -webkit-box-shadow: inset 0 1px 0 #ddd;
    box-shadow:         inset 0 1px 0 #ddd;
    color:              #262626;
}

.abcRioButtonWorkingState, .abcRioButtonWorkingState:hover {
    background-color: #f5f5f5;
}

.abcRioButtonWorkingState:active {
    background-color: #e5e5e5;
}

.abcRioButtonErrorState, .abcRioButtonErrorState:hover {
    background-color: #fff;
}

.abcRioButtonErrorState:active {
    background-color: #e5e5e5;
}

.abcRioButtonWorkingState .abcRioButtonWorkingWrapper, .abcRioButtonErrorState .abcRioButtonErrorWrapper {
    display: block;
}

.abcRioButtonErrorState .abcRioButtonContentWrapper, .abcRioButtonWorkingState .abcRioButtonContentWrapper, .abcRioButtonErrorState .abcRioButtonWorkingWrapper {
    display: none;
}
/** END Google Sign In Button Styling */

/** START Microsoft Sign In Button Styling */
.abcRioButtonRed {
    background-color: #eb3c00;
    border:           none;
    color:            #fff;
}

.abcRioButtonRed:hover {
    -webkit-box-shadow: 0 0 3px 3px rgba(235, 60, 0, 0.3);
    box-shadow:         0 0 3px 3px rgba(235, 60, 0, 0.3);
}

.abcRioButtonRed:active {
    background-color: #eb1100;
}

.abcRioButtonBrown {
    background-color: #2f2f2f;
    border:           none;
    color:            #fff;
}

.abcRioButtonBrown:hover {
    -webkit-box-shadow: 0 0 3px 3px rgba(47, 47, 47, 0.3);
    box-shadow:         0 0 3px 3px rgba(47, 47, 47, 0.3);
}

.abcRioButtonBrown:active {
    background-color: #1f1f1f;
}
/** END Microsoft Sign In Button Styling */

/** START Adfs / SecureLogin Sign In Button Styling */
.abcRioButtonAdfsBlue {
    background-color: #2672ec;
    border:           none;
    color:            #fff;
}

.abcRioButtonAdfsBlue:hover {
    -webkit-box-shadow: 0 0 3px 3px rgba(38, 114, 236, 0.3);
    box-shadow:         0 0 3px 3px rgba(38, 114, 236, 0.3);
}

.abcRioButtonAdfsBlue:active {
    background-color: #255cb9;
}
/** END Adfs / SecureLogin Sign In Button Styling */
