::-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;
}

html,
body,
#login {
    height: 100%;
}


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

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;
}

.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;
}


.user-help-doc {
    position: absolute;
    right: 80px;
    color: #191919;
}

.user-help-doc:hover {
    color: #1476ff;
}

.user-help-download {
    vertical-align: middle;
}


.logo-wrapper {
    position: relative;
    height: 35px;
    width: 100px;
    margin-right: 16px;
    background-size: 100% 100%;
}

.logo-wrapper img {
    height: 100%;
    width: 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-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;
    background: #f0f2f5;
}

.login-container {
    position: relative;
    width: 100vw;
    background: #f0f2f5;
    height: calc(100vh - 72px);
    align-items: center;
    background-size: 100% 100%;
    min-height: 800px;
}

.login-header-hide .login-container {
    height: 100%;
}

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

.login-container>.login-layout-content {
    position: absolute;
    right: 10%;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
}

/* Tabs 的样式 */
.login-container>.login-layout-content>.login-tab-container {
    flex-shrink: 0;
    width: 470px;
    height: 604px;
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 15px;
    box-shadow: 0px 8px 16px rgba(0, 53, 128, 0.08);;
}

.login-tab-container.pub_account-hide.sms-hide {
    height: 468px;
}

.lang-icon {
    cursor: pointer;
}

.lang-type {
    display: flex;
    justify-content: flex-start;
    align-self: flex-end;
}

.lang-type>a {
    margin: 6px;
}

.lang-type>a>img {
    width: 40px;
    height: 40px;
}



/*!* 覆盖 Tabs 的样式 *!*/
/*.login-tab > .ant-tabs > .ant-tabs-bar > .ant-tabs-nav-container > .ant-tabs-tab-prev,*/
/*.login-tab > .ant-tabs > .ant-tabs-bar > .ant-tabs-nav-container > .ant-tabs-tab-next,*/
/*.login-tab > .ant-tabs > .ant-tabs-bar > .ant-tabs-nav-container > .ant-tabs-nav-wrap*/
/*> .ant-tabs-nav-scroll > .ant-tabs-nav > .ant-tabs-ink-bar {*/
/*    !* 由于 改写的 style 控制, 所以 这里 使用 !import *!*/
/*    display: none !important;*/
/*}*/

/*.login-tab > .ant-tabs > .ant-tabs-bar > .ant-tabs-nav-container > .ant-tabs-nav-wrap*/
/*> .ant-tabs-nav-scroll > .ant-tabs-nav > .ant-tabs-tab {*/
/*    width: 200px;*/
/*}*/

/* Tabs.TabPane 的样式 */
.login-tab-pane {
    padding: 32px 40px 30px;
}

.login-tab-pane.login-qrcode {
    padding-top: 30px;
}


.login-tab-pane>.logo+form+div {
    /* ant-form-item */
    margin-bottom: 0;
}

/* Footer 的样式 */
.footer {
    bottom: 10px;
    padding: 24px 50px;
    color: #555;
    font-size: 12px;
    text-align: center;
    background-color: #f0f2f5;
}


/* open app login icons' wrap */
.login-open-app {
    /* there use flex because found some flex layout in this project */
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
}

.login-open-app>span {
    /* span is every item in login-open-app */
    flex-shrink: 0;
    height: 40px;
    line-height: 40px;
    /* limit item height to 40px */
    max-height: 40px;
    overflow: hidden;
}

.login-open-app .login-open-app-icon-btn-wrap {
    /* submit btn */
    background-color: transparent;
    outline: none;
    border: 0;
    cursor: pointer;
}

.login-open-app .login-open-app-icon {
    /* icon's style */
    margin-bottom: 12px;
    height: 40px;
    width: 40px;
}


/* 覆盖 表单组件的样式 */

.login-form-item {
    margin-bottom: 16px;
    vertical-align: top;
}

.login-form-item:last-child {
    margin-bottom: 32px;
}

.login-form-item {
    position: relative;
    height: 48px;
}

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


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

.login-form-item-children-prefix .login-form-input {
    outline: none !important;
    display: inline-block;
    position: relative;
    width: 100%;
    margin-bottom: 3px;
    border-width: 2px;
    border-color: #f3f3f3;
    border-style: solid;
    border-radius: 24px;
    background-color: #f3f3f3;
    margin: 0;
    padding: 0 0 0 15px;
    line-height: normal;
    height: 48px;
    font-size: 13px;
    box-shadow: none;
}

.login-form-item-children-prefix .login-form-input:focus {
    background-color: #FFFFFF;
}

.login-form-input.invalid {
  border-color: #f5222d;
}

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

.login-col-12 {
    width: 50%;
    float: left;
}

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

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

.login-form-button-captcha {
    margin-left: 6px;
    width: 91px;
    background: #f2f2f5;
}

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

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

.login-tab-pane .login-form-item-children {
    height: 28px;
    line-height: 36px;
}


.login-tab-pane input:-webkit-autofill {
    background-color: transparent !important;
}

/* login-account */

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



.login-account-login-btn {
    width: 100%;
    background-color: #1476ff;
    color: #FFFFFF;
    text-align: center;
    font-size: 16px;
}

.login-form-item-children .login-account-login-btn:hover {
    color: #FFF;
    opacity: 0.9;
}

.login-form-item-children-prefix .look {
    position: absolute;
    right: 16px;
    top: 16px;
    cursor: pointer;
}

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

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

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

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

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

/* forget password */
.form--validate-hint-wrapper {
    position: relative;
}

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

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

.form-validate-hint-wrapper .find-password-link {
    position: absolute;
    right: 0;
    top: 15px;
}

/* login-phone */

.login-phone-login-btn {
    width: 100%;
    background-color: #3367d6;
    text-align: center;
}

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


/* Custom Tabs */

.login-method-item {
    position: relative;
    height: 100%;
    display: none;
    padding-top: 45px;
}

.login-method-item.active {
    display: block;
}

.other-login-method {
    position: relative;
}

.other-login-method .close {
    position: absolute;
    top: 20px;
    right: 10px;
    font-size: 20px;
    height: 56px;
    width: 56px;
    background: url(../img/close-new.png) no-repeat;
    background-size: 100% 100%;
    opacity: 1;
}

.header-title h4 {
    display: none;
    text-align: center;
    color: #000000;
    font-weight: bold;
    font-size: 20px;
}
.header-title h4.active {
    display: block;
}

.login-public-account.active .login-public-account-pane {
    display: block;
}

.login-phone.active .login-phone-pane {
    display: block;
}

.login-phone.active .find-password-link {
    display: none;
}



.login-tabs .corner-tab {
    position: absolute;
    right: 0;
    top: 0;
}

.login-tabs-tab-pane {
    width: 100%;
    display: none;
}

.login-qrcode-img {
  display: block;
  width: 260px;
  margin: 0 auto 10px auto;
}

.login-qccode-text {
  font-size: 12px;
  color: #999999;
  text-align: center;
  width: 200px;
  margin: 0 auto 10px auto;
}

.active-pane {
    display: block;
}

.login-tabs-tab-nav {
   display: flex;
   justify-content: center;
   align-items: center;
}

.login-tabs-tab-content {
    height: 380px;
}



.login-tabs-tab-nav-item {
    position: relative;
    display: block;
    height: 48px;
    line-height: 48px;
    margin: 0 60px;
    cursor: pointer;
    font-size: 20px;;
    color: #999999;
}

.login-tabs-tab-nav-item.wechat-hide,
.login-tabs-tab-nav-item.account-hide {
    display: none !important;
}

.header-title h4.sms-hide,
.header-title h4.pub_account-hide {
    display: none !important;
}

.login-tabs-tab-pane.wechat-hide,
.login-tabs-tab-pane.account-hide,
.login-tabs-tab-pane.sms-hide,
.login-tabs-tab-pane.pub_account-hide {
    display: none !important;
}

.login-tabs-tab-nav-item:first-child::after {
    position: absolute;
    content: '';
    width: 0;
    height: 20px;
    border-right: 2px solid #dfe1e6;
    right: -60px;
    top: 50%;
    transform: translateY(-50%);
}

.login-tabs-tab-nav-item:last-child::after {
    border-right: none;
}

.active-tab {
    color: #000000;
    font-weight: bold;
}



.find-password-link {
    color: #999999;
}

.login-container a:hover {
    color: #5b8ae3;
}

.login-container a:active,
a:hover {
    outline: 0;
    text-decoration: none;
}

.login-container a:active {
    color: #214ab0;
}

.login-container .btn:focus {
    outline: none;
    box-shadow: none;
    border: 0;
}

.login-container .btn:active:focus {
    outline: none;
}

.login-container .btn:focus-visible {
    outline: none;
}

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




/* notification */

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

.login-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;
    }
}

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

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

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

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

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

.login-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);
}

.login-tabs-footer {
    position: relative;
    padding: 0 40px;
}

.login-tabs-footer.pub_account-hide.sms-hide {
    display: none;
}



.login-footer-divider {
    text-align: center;
    position: relative;
    color: #595959;
    user-select: none;
    margin-bottom: 15px;
}

.login-footer-divider:before {
    content: '';
    position: absolute;
    left: 0;
    right: calc(50% + 4em);
    top: 50%;
    height: 0;
    border-top: 1px solid #dfe1e6;
}

.login-footer-divider:after {
    content: '';
    position: absolute;
    left: calc(50% + 4em);
    right: 0;
    top: 50%;
    height: 0;
    border-top: 1px solid #dfe1e6;
}

.login-icon-list {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    padding-left: 0;
}

.login-phone-icon,
.login-public-icon {
    height: 56px;
    width: 56px;
    margin: 0 20px;
    cursor: pointer;
}

.login-phone-icon:hover,
.login-public-icon:hover {
    transform: scale(1.03);
    transition: transform  0.2s linear;
}

.login-phone-icon {
    background: url(../img/login-mobile.png) no-repeat;
    background-size: cover;
}

.login-public-icon {
    background: url(../img/login-public.png) no-repeat;
    background-size: cover;
}

/* .public-app-select {
  width: 100%;
  height: 36px;
  padding: 0 19px;
  border: 1px solid #ccc;
  border-radius: 19px;
  background-color: #f3f3f3;
  cursor: pointer;
} */
/* 公共账户登录的样式 */
.public-app-select.nice-select {
  width: 100%;
  height: 48px;
  line-height: 48px;
  padding: 0 19px;
  border: 1px solid #f3f3f3;
  border-radius: 24px;
  background-color: #f3f3f3;
  cursor: pointer;
  margin-bottom: 32px;
  z-index: 10;
}


.public-app-select.nice-select .list {
  width: 100%;
  top: calc(100% + 2px);
  border-radius: 8px;
  padding: 10px;
  border: 2px solid #dfe1e6;
  box-shadow: 0px 8px 16px  rgba(0, 53, 128, 0.08);
  max-height: 300px;
  overflow-y: auto;
}

.public-app-select.nice-select .list::-webkit-scrollbar {
    width: 8px;
    background-color: #f5f5f5;
    margin-right: 5px;
}
  /*定义滚动条轨道：内阴影+圆角*/
.public-app-select.nice-select .list::-webkit-scrollbar-track {
    background-color: #f5f5f5;
}
  /*定义滑块：内阴影+圆角*/
.public-app-select.nice-select .list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #a8a6a6;
}



.public-app-select.nice-select:focus,
.public-app-select.nice-select:hover {
    border-color: #66afe9;
}
.public-app-select.nice-select .current {
    text-overflow: ellipsis;
    overflow: hidden;
    display: block;
}


.public-app-select.nice-select .list li {
    border-radius: 16px;
    text-overflow: ellipsis;
    overflow: hidden;
}

.public-app-select.nice-select:after {
    right: 22px;
}

.public-app-select:focus-visible {
  outline: none;

}

.public-app-select:focus {
  background-color: #FFF;
  border-color: #66afe9;
}

.ver-code-button {
  height: 48px;
  line-height: 48px;
  width: 100%;
  text-align: center;
  border: 1px solid #1476ff;
  color: #1476ff;;
  border-radius: 24px;
  cursor: pointer;
  margin-bottom: 16px;
  margin-top: 30px;
  background-color: #FFFFFF;
}

.ver-code-button.disabled {
    color: #91caff;
    opacity: 0.95;
    cursor: not-allowed;
    border-color: #91caff;
}

.un-verify .login-form-item-children-prefix .form-field-phone-vercode {
  display: none;
}

.un-verify .login-account-login-btn {
  display: 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
    }
}
