body {
    background-color: #f3f5f8;
}

.container {
    display: block;
    margin: 200px auto;
}

.signin-logo {
    display: block;
    margin: 10px auto;
    width: 100px;
    height: 30px;
}

.form-signin {
    width: 388px;
    border-radius: 5px;
    background-color: #fff;
    padding: 60px 20px;
    margin: 40px auto;
}

.form-item {
    margin: 0 0 24px;
    font-size: 14px;
}

.form-control {
    display: block;
    height: 45px;
}

.ant-input {
    box-sizing: border-box;
    margin: 0;
    font-variant: tabular-nums;
    list-style: none;
    font-feature-settings: "tnum", "tnum";
    position: relative;
    display: inline-block;
    width: 100%;
    min-width: 0;
    padding: 4px 11px;
    color: rgba(0, 0, 0, .85);
    font-size: 14px;
    line-height: 1.5715;
    background-color: #fff;
    background-image: none;
    border: 1px solid #d9d9d9;
    border-radius: 2px;
    transition: all .3s;
}

.form-head {
    display: block;
    font-size: 12px;
    color: #54698d;
    padding-bottom: 8px;
    padding-left: 4px;

}

.form-head.required::before {
    display: inline-block;
    margin-right: 4px;
    color: #ff4d4f;
    font-size: 14px;
    line-height: 1;
    content: "*";
}

.btn-primary {
    color: #fff;
    background: #0070d2;
    border-color: #0070d2;
    text-shadow: 0 -1px 0 rgb(0 0 0 / 12%);
    box-shadow: 0 2px 0 rgb(0 0 0 / 5%);

    width: 100%;
    height: 45px;
    font-size: 14px;
    border-radius: 4px;

    line-height: 45px;
    position: relative;
    display: inline-block;
    font-weight: 400;
    white-space: nowrap;
    text-align: center;
    border: 1px solid #d9d9d9;
}

.language-selector {
    position: fixed;
    top: 50px;
    right: 50px;

    border-radius: 4px;
    padding: 10px 20px;
    border-width: 0;
    box-shadow: 0 0 10px 5px rgb(0 0 0 / 5%);
    border-right: 10px solid transparent;
}

.login-footer-block {
    margin: 8px 0;
    padding: 0 5px;
}

.footer-jump-text {
    color: #0070d2;
    cursor: pointer;
    font-size: 14px;
}

.help-text {
    margin: 10px 0;
    color: grey;
    font-size: 14px;
}

.space {
    margin: 30px 0 10px;
}

.offset {
    margin-top: -10px;
    margin-bottom: 20px;
    font-size: 12px;
}


.dis-n {
    display: none;
}

.pointer-cursor {
    cursor: pointer;
}

.errortip {
    color: red;
}

.sent-title {
    font-size: 18px;
}

.sent-email {
    margin: 5px 0;
    font-size: 18px;
    color: #0070d2;
}


.forget-password-body {
    overflow: hidden;
}

.reset_password {
    background-color: #fff;
    width: 98vw;
    height: 88vh;
    margin: 0 auto;
    border-radius: 10px;
    overflow: hidden;
}

.navigate-container {
    display: inline-flex;
    align-items: center;
    background-color: #fff;
    margin: 3px 0 10px;
    padding: 10px;
    width: 100%;
}

.navigate-title {
    margin: 0 10px;
}

.reset_password-title {
    padding: 20px;
    background-color: #d8d6d5;
}

.reset_password .form-margin-top {
    margin-top: 100px;
}

.reset_password .form-signin {
    background-color: transparent;
}

.reset_password .language-selector {
    top: 84px;
    right: 33px;
}

.reset_password-step {
    margin: 30px auto 0;
    text-align: center;
}

.step-container {
    display: inline-flex;
    display: -webkit-inline-box;
}

.step {
    position: relative;
}

.step-line {
    width: 400px;
    height: 10px;
    border-top: 2px solid #d8d6d5;
    margin: 10px;
}

.blue-line {
    border-color: rgba(0, 112, 209, 0.6);
}

.step-icon {
    width: 20px;
    height: 20px;
}

.step-desc {
    position: absolute;
    width: calc(400px + 20px); /* step-line 长度的偏小量 180 + margin 20 + icon 宽度 20 */
    left: calc(-1 * (400px + 20px) / 2 + 10px);
    text-align: center;
    word-break: break-all;
    font-size: 13px;
    color: grey;
}

.active {
    border-color: #157eeb;
}

.alert-container {
    position: fixed;
    top: 100px;
    width: 100vw;
    text-align: center;
}

.alert-tip {
    display: inline-flex;
    padding: 10px 20px;
    border-radius: 5px;
}

.success {
    background-color: #297941;
}

.error {
    background-color: #e7001c;
}

.info {
    background-color: #656360;
}

.alert-tip-icon {
    width: 25px;
    height: 25px;
}

.alert-tip-content {
    padding: 0 15px;
    min-width: 100px;
    color: #fff;
    font-size: 18px;
    height: 25px;
    line-height: 25px;
}

.password-input-container {
    position: relative;
}

.password-icon {
    position: absolute;
    right: 20px;
    top: 50%;

    width: 20px;
    height: 20px;
    margin-top: -10px;

    cursor: pointer;
}