::-webkit-input-placeholder {
    /* WebKit browsers */
    color: #bfbfbf;
}

::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    color: #bfbfbf;
}

:-ms-input-placeholder {
    /* Internet Explorer 10+ */
    color: #bfbfbf;
}

/** 文本输入框的 X  **/
input::-ms-clear {
    display: none;
}

/** 密码输入框的 X  **/
input::-ms-reveal {
    display: none;
}

a {
    cursor: pointer;
}

/* 整个页面外面的样式 */

body {
    font-family: Monospaced Number, Chinese Quote, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Helvetica Neue, Helvetica, Arial, sans-serif;
}

.password-layout {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -webkit-flex: auto;
    -ms-flex: auto;
    flex: auto;
}

.password-container {
    height: 100vh;
    width: 100vw;
    align-items: center;
    background: #f0f2f5;
    min-height: 800px;
    overflow-y: auto;
}

.login-header {
    display: flex;
    position: relative;
    height: 72px;
    align-items: center;
    z-index: 2;
    background-color: #FFFFFF;
    padding-left: 80px;
    border-bottom: 1px solid #dfe1e6;
    width: 100%;
}

.logo-wrapper {
    position: relative;
    height: 35px;
    width: 100px;
    margin-right: 16px;
    background: url(../img/sj-logo.png) no-repeat;
    background-size: 100% 100%;
}

.logo-wrapper:after {
    position: absolute;
    content: '';
    width: 0;
    height: 20px;
    border-right: 2px solid #dfe1e6;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
}

.login-header h2 {
    margin: 0;
    padding-left: 16px;
    font-size: 20px;
    font-weight: 500;
}

.login-header h2 {
    margin: 0;
}

.password-container>.password-layout-header,
.password-container>.password-layout-footer {
    width: 100%;
}

.password-container>.password-layout-content {
    flex: auto;
    display: flex;
    align-items: center;
}

/* 内容区域 的样式 */
.password-container>.password-layout-content>.password-tab {
    flex-shrink: 0;
    width: 956px;
    background-color: #fff;
    padding: 80px 108px;
    position: relative;
    border-radius: 16px;
}

.password-steps {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    margin-bottom: 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.password-steps-item {
    display: inline-block;
    margin-right: 16px;
    white-space: nowrap;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    overflow: hidden;
}

.password-steps-item:last-child {
    margin-right: 0;
    -webkit-box-flex: 0;
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
}


.password-steps-item-wait .password-steps-item-icon {
    background-color: #FFFFFF;
    color: rgba(153, 153, 153, 1);
    border: 2px solid rgba(223, 225, 230, 1);;
}

.password-steps-item-icon,
.password-steps-item-content {
    display: inline-block;
    vertical-align: top;
}

.password-steps-item-icon {
    margin-right: 8px;
    width: 32px;
    height: 32px;
    border-radius: 100%;
    font-size: 16px;
    text-align: center;
    line-height: 28px;
    color: white;
    background: #1476ff;
    border: 2px solid #1476ff;
    transition: background-color .3s, border-color .3s;
}

.password-steps-item-icon span {}

.password-steps-item-process>.password-steps-item-content>.password-steps-item-title {
    color: rgba(0, 0, 0, .85);
}

.password-steps-item-wait>.password-steps-item-content>.password-steps-item-title {
    color: rgba(0, 0, 0, .45);
}



.password-steps-item-title {
    position: relative;
    padding-right: 16px;
    font-size: 16px;
    line-height: 28px;
}


.password-steps-item-title::after {
    content: "";
    height: 1px;
    width: 9999px;
    background: rgba(0, 0, 0, .26);
    display: block;
    position: absolute;
    top: 14px;
    left: 100%;
}

.password-steps-item:last-of-type .password-steps-item-title::after {
    content: "";
    height: 0;
    width: 0;
}

.password-steps-item:last-child .password-steps-item-title {
    padding-right: 0;
}


.password-spin-container {
    padding: 60px 175px 0 175px;
}


/* Footer 的样式 */
.password-layout-footer {
    color: #555;
    bottom: 10px;
    font-size: 12px;
    text-align: center;
}

/* 覆盖表单样式 */

.password-form .password-form-item-children {
    height: 30px;
    line-height: 30px;
}

.password-form .password-input-rendered-wrapper .password-input-prefix {
    padding-left: 10px;
}

.password-form .password-input-rendered-wrapper .password-input-rendered {
    padding-left: 10px;
}

.password-form .password-input-rendered-wrapper .password-input-rendered .password-input-placeholder {
    padding-left: 10px;
}

/* .password-tab .password-form-item-children-input input:-webkit-autofill {
    background-color: transparent !important;
    -webkit-box-shadow: 0 0 0 1000px white inset !important;
    border: 0 solid #CCC !important;
} */


/* 按钮 */
.password-btn {
    width: 100%;
}

.password-btn-cancel {
    border: 2px solid rgba(223, 225, 230, 1);
    border-radius: 2px;
    background-color: #fff;
    color: #191919;
}

.password-btn-cancel:hover {
    opacity: 0.9;
}

.password-btn-confirm-account {}

.password-form-item {
    margin-bottom: 24px;
    vertical-align: top;
    line-height: 36px;
}

.password-form-item-captcha {
    position: relative;
}

.password-account-captcha {
    position: absolute;
    top: 5px;
    right: 50px;
}

.password-account-captcha img {
    height: 34px;
}

.reload-icon {
    height: 36px;
    width: 36px;
    position: absolute;
    right: -5px;
    top: 5px;
    cursor: pointer;
}

.reload-icon:hover img {
    opacity: 0.7;
    user-select: none;
}

.password-account-captcha:after {
    position: absolute;
    content: '';
    width: 0;
    height: 20px;
    top: 50%;
    right: -10px;
    transform: translateY(-50%);
    border-right: 2px solid #dfe1e6;
}

.password-form-item-with-help {
    margin-bottom: 6.5px;
}

.password-form-item-children-prefix {
    display: inline-block;
    position: relative;
    width: 100%;
    margin-bottom: 3px;
    border: 1px solid #ccc;
    border-radius: 24px;
    height: 48px;
}

.password-form-explain {
    color: #d50000;
    line-height: normal;
}

.password-form-input {
    outline: none !important;
    box-shadow: none;
    margin: 0;
    padding: 0;
    line-height: 48px;
    height: 48px;
    font-size: 13px;
    border-width: 2px;
    border-color: #f3f3f3;
    border-style: solid;
    border-radius: 24px;
    background-color: #f3f3f3;
    padding: 0 0 0 15px;
}

.password-form-input-prefix {
    padding-left: 10px;
    position: absolute !important;
    top: 0;
    bottom: 0;
    margin: auto 0;
    color: rgba(0, 0, 0, .26);
}

.password-col-12 {
    padding-right: 6px;
    width: 50%;
    float: left;
}

.password-form-item-control {
    height: 42.75px
}

.password-form-item-control:after,
.password-form-item-control:before {
    content: " ";
    display: table;
}

.password-form-item-children .btn-raised {
    height: 48px;
    font-size: 13px;
    line-height: 26px;
    overflow: hidden;
    border-radius: 24px;
}

.password-form-item-children .btn-raised.btn-primary {
    background-color: rgba(20, 118, 255, 1);
    color: #FFF;
    border-color: rgba(20, 118, 255, 1);
}

.password-form-item-children .btn-raised.btn-primary:hover {
    opacity: 0.9;
}

.password-form-item-children-input {
    position: relative;
}

.form-control:focus {
    border-color: #1476ff !important;
}


.password-form-item-children-input .look {
    position: absolute;
    right: 15px;
    top: 17px;
    cursor: pointer;
    display: none;
}

.password-form-button-captcha {
    width: 91px;
    background: #f2f2f5;
}

.btn-flat:hover {
    background: rgba(0, 0, 0, .08);
}

.has-error .password-form-input-prefix {
    color: #d50000;
}

.has-error-msg {
    color: #d50000;
    position: absolute;
    left: 0;
    top: 30px;
    font-weight: normal;
}

/* 重置成功界面 */
.password-success {
    text-align: center;
}




.password-success>p,
.password-success>button {
    margin-top: 12px;
}

.password-success img {
    margin-bottom: 24px;
}

.reset-finish-text {
    font-size: 16px;
    color: #000;
    font-weight: bold;
}

.finish-fonts {
    color: #999999;
}

.password-success .button-login {
    background-color: #FFF;
    color: rgba(20, 118, 255, 1);
    text-decoration: underline;
}


/* 覆盖样式 */
.password-notification-notice-close-x:after {
    content: 'x' !important;
    font-size: 16px;
}

.password-notification-notice-icon-error::before {
    content: "\E000";
}

.password-notification-notice-icon-success::before {
    content: "\E876";
}


.password-validate {
    padding: 0;
    margin: 0;
    border: 0;
    position: relative;
    top: -50px;
    line-height: normal;
    width: fit-content;
    left: 475px;
    max-width: 400px;
}

.password-validate-active {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 10px;
    background-color: white;
}

.password-validate-active:after {
    content: '';
    top: 22px;
    left: -7px;
    background: white;
    width: 12px;
    height: 12px;
    transform: rotate(45deg);
    position: absolute;
    display: block;
    border: 1px solid transparent;
    border-bottom-color: #ccc;
    border-left-color: #ccc;
}

/* notification */

.password-notification {
    position: fixed;
    right: 0;
    bottom: 60px;
    background-color: transparent
}

.password-alert {
    position: relative;
    padding: 16px 24px;
    margin-right: 24px;
    margin-bottom: 16px;
    width: 384px;
    background-color: #fff;
    font-size: 18px;
    border-radius: .02rem;
    webkit-box-shadow: 0 0.04rem 0.12rem rgba(0, 0, 0, 0.12);
    box-shadow: 0 0.04rem 0.12rem rgba(0, 0, 0, 0.12);
    animation: notificationMove 0.5s;
    -webkit-animation: notificationMove 0.5s;
}

@keyframes notificationMove {
    0% {
        right: -100px;
    }

    100% {
        right: 0;
    }
}

@-webkit-keyframes notificationMove

/* Safari and Chrome */
    {
    0% {
        right: -100px;
    }

    100% {
        right: 0;
    }
}

.password-alert .glyphicon-ok {
    position: absolute;
    top: 16px;
}

.password-alert .glyphicon-exclamation-sign {
    position: absolute;
    top: 16px;
}

.password-alert .glyphicon-remove {
    font-size: 12px;
    color: rgba(0, 0, 0, .45);
    position: absolute;
    right: 22px;
    top: 16px;
    outline: none;
    cursor: pointer;
}

.password-alert .password-notification-content {
    margin-left: 48px;
}

.password-notification-error {
    color: #d50000;
    font-size: 24px;
}

.password-notification-success {
    color: #00bf96;
    font-size: 24px;
}

/* .water-btn-style {
    position: relative;
    background: #fff;
    border-radius: 100%;
    animation: waterBtn 3s;
    -webkit-animation: waterBtn 3s;
    transform: translate(-50%, -50%) scale(1);
} */

.form-validate-text {
    color: #f5222d;
    text-align: center;
}

.form-validate-text .account-error {
    margin-right: 10px;
}

.form-validate-text .invalid {
  margin-right: 3px;
}

.form-validate-hint-wrapper  {
    width: 100%;
}

.password-form-item-captcha {
    position: relative;
}

.password-form-item-captcha .btn-raised {
    position: absolute;
    background-color: transparent;
    color: rgba(20, 118, 255, 1);
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}

.btn.btn-raised:focus {
    outline: none;
}



@keyframes waterBtn {
    0% {
        width: 0px;
        height: 0px;
    }

    50% {
        width: 1000px;
        height: 1000px;
        opacity: 0
    }

    100% {
        opacity: 0
    }
}

@-webkit-keyframes waterBtn

/* Safari and Chrome */
    {
    0% {
        width: 0px;
        height: 0px;
    }

    50% {
        width: 1000px;
        height: 1000px;
        opacity: 0
    }

    100% {
        opacity: 0
    }
}