/* 现代登录弹窗样式 - 自定义美化  开始 */
.modern-login-box {
background: #ffffff;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
border-radius: 20px;
overflow: hidden;
max-width: 400px;
width: 90%;
animation: modalFadeIn 0.4s ease-out;
}

.modern-login-header {
padding: 30px 0 20px;
position: relative;
text-align: center;
border-bottom: 1px solid #f3f5f9;
background: linear-gradient(135deg, #f8faff 0%, #f2f6fc 100%);
}

.modern-login-header .close-button {
position: absolute;
right: 20px;
top: 20px;
font-size: 24px;
color: #98a6b9;
transition: all 0.2s ease;
transform: rotate(0deg);
}

.modern-login-header .close-button:hover {
color: #ff3a6d;
transform: rotate(90deg);
}

.modern-login-body {
padding: 0;
}

.modern-login-form {
padding: 25px 30px 30px;
}

.modern-login-form .login-title {
margin-bottom: 25px;
font-size: 20px;
font-weight: 600;
text-align: center;
color: #33475b;
}

.modern-form-item {
margin-bottom: 22px;
position: relative;
}

.modern-form-item input[type="text"],
.modern-form-item input[type="password"] {
width: 100%;
border: 1px solid #e8edf2;
background-color: #f8fafc;
padding: 14px 16px;
border-radius: 12px;
font-size: 15px;
transition: all 0.3s;
}

.modern-form-item input[type="text"]:focus,
.modern-form-item input[type="password"]:focus,
.modern-form-item input[type="text"].active,
.modern-form-item input[type="password"].active {
border-color: #4a89dc;
background-color: #ffffff;
box-shadow: 0 0 0 2px rgba(74, 137, 220, 0.15);
}

.modern-form-item span {
color: #8c98a9;
position: absolute;
left: 16px;
top: 12px;
font-size: 14px;
transition: all 0.3s;
}

.modern-form-item input.active + span,
.modern-form-item input:focus + span {
transform: translateY(-28px) scale(0.8);
color: #4a89dc;
font-weight: 600;
}

.modern-site-terms {
margin: 20px 0;
font-size: 13px;
}

.modern-site-terms label {
display: flex;
align-items: center;
color: #7a8599;
}

.modern-site-terms input[type="checkbox"] {
margin-right: 8px;
width: 16px;
height: 16px;
}

.modern-site-terms a {
color: #4a89dc;
text-decoration: none;
transition: color 0.2s;
}

.modern-site-terms a:hover {
color: #346bbb;
}

.modern-login-bottom {
margin-top: 25px;
}

.modern-submit-btn {
display: block;
width: 100%;
background: linear-gradient(135deg, #4a89dc 0%, #3a6bc7 100%);
color: white;
border: none;
padding: 15px;
border-radius: 12px;
font-size: 16px;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}

.modern-submit-btn:hover {
transform: translateY(-2px);
box-shadow: 0 7px 14px rgba(74, 137, 220, 0.2);
}

.modern-submit-btn:active {
transform: translateY(0);
}

.modern-submit-btn:disabled {
background: #c2d0e9;
cursor: not-allowed;
transform: none;
box-shadow: none;
}

.modern-submit-btn.b2-loading:after {
animation: submit-loading 1.2s linear infinite;
}

@keyframes submit-loading {
0% {
  transform: rotate(0deg);
}
100% {
  transform: rotate(360deg);
}
}

/* 社交登录部分样式 */
.modern-social-login {
padding: 0 30px 30px;
text-align: center;
}

.login-social-divider {
position: relative;
margin: 20px 0;
text-align: center;
}

.login-social-divider:before {
content: "";
position: absolute;
top: 50%;
left: 0;
width: 100%;
height: 1px;
background: #e8edf2;
}

.login-social-divider span {
position: relative;
background: #fff;
padding: 0 15px;
color: #8c98a9;
font-size: 14px;
}

.modern-social-login .login-social-button-bottom {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 12px;
margin-top: 15px;
}

.social-login-btn {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 10px 20px;
border-radius: 50px;
background: rgba(74, 137, 220, 0.06);
color: inherit;
transition: all 0.3s ease;
text-decoration: none;
margin: 0 5px;
font-size: 14px;
}

.social-login-btn i {
font-size: 16px;
margin-right: 8px;
}

.social-login-btn:hover {
background: rgba(74, 137, 220, 0.12);
transform: translateY(-2px);
}

/* 邀请码区域样式 */
.modern-invitation-box {
padding: 25px 30px 30px;
text-align: center;
}

.invitation-icon {
font-size: 36px;
color: #4a89dc;
margin-bottom: 15px;
}

.invitation-des {
font-size: 16px;
color: #33475b;
margin-bottom: 10px;
}

.invitation-tips {
color: #7a8599;
margin-bottom: 15px;
font-size: 14px;
}

.invitation-input input {
width: 100%;
border: 1px solid #e8edf2;
background-color: #f8fafc;
padding: 14px 16px;
border-radius: 12px;
font-size: 15px;
text-align: center;
transition: all 0.3s;
}

.invitation-input input:focus {
border-color: #4a89dc;
background-color: #ffffff;
box-shadow: 0 0 0 2px rgba(74, 137, 220, 0.15);
}

.invitation-button .empty.text.button {
background: transparent;
color: #8c98a9;
border: 1px solid #e8edf2;
padding: 8px 20px;
border-radius: 12px;
cursor: pointer;
}

.invitation-button .empty.text.button:hover {
background: #f8fafc;
}

.login-tk a {
color: #4a89dc;
text-decoration: none;
transition: color 0.2s;
}

.login-tk a:hover {
color: #346bbb;
text-decoration: underline;
}

.check-code-img {
position: absolute;
right: 10px;
top: 10px;
z-index: 2;
cursor: pointer;
transition: all 0.3s ease;
}

.check-code-img:hover {
opacity: 0.8;
}

.check-code-img img {
border-radius: 6px;
height: 38px;
}

.login-eye {
position: absolute;
right: 10px;
top: 10px;
background: none;
border: none;
color: #8c98a9;
cursor: pointer;
z-index: 2;
font-size: 18px;
padding: 5px;
display: flex;
align-items: center;
justify-content: center;
}

.login-eye:hover {
color: #4a89dc;
}

.forget-pass-info {
padding: 12px 16px;
background: #f8fafc;
border: 1px solid #e8edf2;
border-radius: 12px;
font-size: 13px;
line-height: 1.5;
color: #7a8599;
margin: 20px 0;
}

/* 响应式适配 */
@media (max-width: 480px) {
.modern-login-box {
  width: 95%;
  max-width: none;
  margin: 10px;
  border-radius: 15px;
}

.modern-login-header {
  padding: 25px 0 15px;
}

.modern-login-form,
.modern-social-login,
.modern-invitation-box {
  padding-left: 20px;
  padding-right: 20px;
}

.modern-form-item input[type="text"],
.modern-form-item input[type="password"] {
  padding: 12px 14px;
}

.modern-submit-btn {
  padding: 13px;
}

.social-login-btn {
  padding: 8px 15px;
  font-size: 13px;
}
}

/* 动画效果 */
@keyframes modalFadeIn {
from {
  opacity: 0;
  transform: translateY(-20px);
}
to {
  opacity: 1;
  transform: translateY(0);
}
}

.show-modal .modern-login-box {
animation: modalFadeIn 0.4s ease-out;
}

/* 分栏式登录弹窗样式 */
.split-login-modal {
padding: 0;
overflow: hidden;
max-width: 900px;
width: 90%;
display: flex;
border-radius: 16px;
box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15);
background: #fff;
}

/* 左侧图片区域 */
.login-left-panel {
width: 45%;
background-image: url('https://api.ixiaowai.cn/gqapi/gqapi.php');
background-size: cover;
background-position: center;
background-repeat: no-repeat;
position: relative;
display: flex;
flex-direction: column;
justify-content: flex-end;
border-radius: 16px 0 0 16px;
overflow: hidden;
}

.login-left-panel::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.7) 100%);
z-index: 1;
}

.login-left-content {
position: relative;
padding: 40px;
color: white;
z-index: 2;
}

.login-brand-logo {
margin-bottom: 30px;
}

.login-brand-logo img {
height: 40px;
width: auto;
}

.login-welcome h2 {
font-size: 26px;
font-weight: 600;
margin-bottom: 10px;
color: white;
}

.login-welcome p {
font-size: 16px;
margin-bottom: 30px;
opacity: 0.9;
line-height: 1.6;
}

.login-features {
margin-top: 30px;
}

.login-feature-item {
display: flex;
align-items: center;
margin-bottom: 15px;
}

.login-feature-item i {
font-size: 20px;
margin-right: 12px;
}

.login-feature-item span {
font-size: 15px;
}

/* 右侧表单区域 */
.login-right-panel {
width: 55%;
padding: 40px;
position: relative;
}

.login-right-panel .close-button {
position: absolute;
right: 20px;
top: 20px;
font-size: 24px;
color: #aab2bd;
cursor: pointer;
transition: all 0.2s;
width: 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
}

.login-right-panel .close-button:hover {
background: #f5f7fa;
color: #555;
transform: rotate(90deg);
}

.split-login-form {
padding: 0;
max-width: 400px;
margin: 0 auto;
}

.split-login-form .login-title {
text-align: center;
margin-bottom: 30px;
font-size: 22px;
font-weight: 700;
color: #333;
}

.split-form-item {
margin-bottom: 20px;
position: relative;
}

.split-form-item input[type="text"],
.split-form-item input[type="password"] {
width: 100%;
border: 1px solid #e6e9ed;
background-color: #f5f7fa;
padding: 14px 16px;
border-radius: 8px;
font-size: 14px;
transition: all 0.3s ease;
}

.split-form-item input[type="text"]:focus,
.split-form-item input[type="password"]:focus,
.split-form-item input[type="text"].active,
.split-form-item input[type="password"].active {
border-color: #007bff;
background-color: #ffffff;
box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.1);
}

.split-form-item span {
color: #8a94a6;
position: absolute;
left: 16px;
top: 15px;
font-size: 14px;
transition: all 0.3s ease;
pointer-events: none;
}

.split-form-item input.active + span,
.split-form-item input:focus + span {
transform: translateY(-25px) scale(0.85);
color: #007bff;
font-weight: 500;
}

.split-site-terms {
margin: 20px 0;
font-size: 13px;
color: #8a94a6;
}

.split-site-terms label {
display: flex;
align-items: center;
}

.split-site-terms input[type="checkbox"] {
margin-right: 8px;
}

.split-site-terms a {
color: #007bff;
text-decoration: none;
}

.split-site-terms a:hover {
text-decoration: underline;
}

.split-login-bottom {
margin-top: 30px;
}

.split-submit-btn {
display: block;
width: 100%;
background: #007bff;
color: white;
border: none;
padding: 14px;
border-radius: 8px;
font-size: 16px;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
}

.split-submit-btn:hover {
background: #0069d9;
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(0, 123, 255, 0.3);
}

.split-submit-btn:disabled {
background: #c3d7f0;
cursor: not-allowed;
transform: none;
box-shadow: none;
}

/* 社交登录部分 */
.split-social-login {
text-align: center;
margin-top: 30px;
}

.split-social-login .login-social-divider {
position: relative;
margin: 25px 0;
text-align: center;
}

.split-social-login .login-social-divider:before {
content: "";
position: absolute;
top: 50%;
left: 0;
width: 100%;
height: 1px;
background: #e6e9ed;
}

.split-social-login .login-social-divider span {
position: relative;
background: #fff;
padding: 0 15px;
color: #8a94a6;
font-size: 13px;
}

.split-social-login .login-social-button-bottom {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 10px;
}

.split-social-login .social-login-btn {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 8px 15px;
border-radius: 6px;
background: #f5f7fa;
color: #4a5568;
transition: all 0.2s ease;
text-decoration: none;
font-size: 13px;
border: 1px solid #e6e9ed;
}

.split-social-login .social-login-btn:hover {
background: #e6e9ed;
transform: translateY(-2px);
}

.split-social-login .social-login-btn i {
margin-right: 6px;
font-size: 16px;
}

/* 响应式适配 */
@media (max-width: 768px) {
.split-login-modal {
  flex-direction: column;
  max-width: 400px;
}

.login-left-panel {
  width: 100%;
  height: 200px;
  border-radius: 16px 16px 0 0;
}

.login-left-content {
  padding: 20px;
}

.login-features {
  display: none;
}

.login-welcome h2 {
  font-size: 22px;
  margin-bottom: 5px;
}

.login-welcome p {
  font-size: 14px;
  margin-bottom: 0;
}

.login-right-panel {
  width: 100%;
  padding: 30px 20px;
}
}

@media (max-width: 480px) {
.split-login-modal {
  width: 95%;
  border-radius: 12px;
}

.login-left-panel {
  height: 150px;
  border-radius: 12px 12px 0 0;
}

.login-left-content {
  padding: 15px;
}

.login-welcome h2 {
  font-size: 20px;
}

.login-right-panel {
  padding: 20px 15px;
}

.split-form-item input[type="text"],
.split-form-item input[type="password"] {
  padding: 12px 14px;
}

.split-submit-btn {
  padding: 12px;
}
}

/* 邀请码区域样式 */
.split-invitation-box {
text-align: center;
padding: 30px 20px;
max-width: 400px;
margin: 0 auto;
}

.split-invitation-box .invitation-icon {
font-size: 40px;
color: #007bff;
margin-bottom: 20px;
}

.split-invitation-box .invitation-des {
font-size: 16px;
font-weight: 600;
color: #333;
margin-bottom: 10px;
}

.split-invitation-box .invitation-tips {
font-size: 14px;
color: #8a94a6;
margin-bottom: 20px;
}

.split-invitation-box .invitation-input input {
width: 100%;
border: 1px solid #e6e9ed;
background-color: #f5f7fa;
padding: 14px 16px;
border-radius: 8px;
font-size: 14px;
margin-bottom: 20px;
transition: all 0.3s ease;
}

.split-invitation-box .invitation-input input:focus {
border-color: #007bff;
background-color: #ffffff;
box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.1);
}

.split-invitation-box .invitation-button {
display: flex;
justify-content: space-between;
align-items: center;
}

.split-invitation-box .invitation-button a {
color: #007bff;
text-decoration: none;
}

.split-invitation-box .invitation-button a:hover {
text-decoration: underline;
}

.split-invitation-box .invitation-button div:last-child {
display: flex;
gap: 10px;
}

/* 添加登录框过渡动画 */
@keyframes modalFadeIn {
from {
  opacity: 0;
  transform: translateY(20px);
}
to {
  opacity: 1;
  transform: translateY(0);
}
}

/* 简约登录弹窗样式 */
.simple-login-modal {
display: flex;
padding: 0;
overflow: hidden;
max-width: 900px;
width: 90%;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
border-radius: 12px;
background: #fff;
}

/* 左侧灰色区域 */
.simple-login-left {
width: 40%;
background-color: #f5f7fa;
padding: 40px 30px;
display: flex;
flex-direction: column;
justify-content: flex-start;
border-radius: 12px 0 0 12px;
position: relative;
box-shadow: inset -2px 0 10px -5px rgba(0, 0, 0, 0.1);
}

.simple-login-logo {
margin-bottom: 40px;
text-align: center;
}

.simple-login-logo img {
height: 35px;
width: auto;
}

.simple-login-welcome {
margin-top: 30px;
}

.simple-login-welcome h2 {
font-size: 22px;
font-weight: 600;
margin-bottom: 10px;
color: #333;
}

.simple-login-welcome p {
color: #666;
font-size: 14px;
line-height: 1.5;
}

.simple-login-features {
margin-top: 40px;
}

.simple-login-feature {
display: flex;
align-items: center;
margin-bottom: 20px;
color: #666;
}

.simple-login-feature i {
margin-right: 10px;
font-size: 18px;
color: #007bff;
}

/* 右侧表单区域 */
.simple-login-right {
width: 60%;
padding: 40px 50px;
position: relative;
background: #fff;
}

.simple-login-right .close-button {
position: absolute;
right: 20px;
top: 20px;
font-size: 22px;
color: #9ea3a9;
cursor: pointer;
transition: all 0.3s;
}

.simple-login-form {
max-width: 380px;
margin: 0 auto;
}

.simple-login-form .login-title {
text-align: center;
margin-bottom: 30px;
}

.simple-login-form .login-title span {
font-size: 22px;
font-weight: 600;
color: #333;
}

/* 表单项目样式 */
.simple-form-item {
position: relative;
margin-bottom: 20px;
}

.simple-form-item input[type="text"],
.simple-form-item input[type="password"] {
width: 100%;
height: 46px;
padding: 0 15px;
border: 1px solid #e0e6ed;
border-radius: 4px;
font-size: 14px;
background-color: #fff;
transition: all 0.3s;
}

.simple-form-item input:focus {
border-color: #007bff;
box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.1);
outline: none;
}

.simple-form-tip {
font-size: 12px;
color: #8a94a6;
margin-top: 5px;
}

/* 验证码输入框样式 */
.simple-check-input {
position: relative;
}

.simple-check-input input {
padding-right: 120px;
}

.simple-check-input .check-code-img {
position: absolute;
right: 1px;
top: 1px;
height: 44px;
width: 100px;
border-radius: 0 4px 4px 0;
overflow: hidden;
cursor: pointer;
}

.simple-check-input .check-code-img img {
height: 100%;
width: 100%;
object-fit: cover;
}

.simple-check-input .send-code-button {
position: absolute;
right: 1px;
top: 1px;
height: 44px;
background: #f5f7fa;
border: none;
border-left: 1px solid #e0e6ed;
border-radius: 0 4px 4px 0;
color: #007bff;
padding: 0 15px;
font-size: 13px;
cursor: pointer;
}

/* 密码输入框 */
.simple-password-input {
position: relative;
}

.simple-password-input .eye-button {
position: absolute;
right: 10px;
top: 50%;
transform: translateY(-50%);
background: transparent;
border: none;
color: #8a94a6;
cursor: pointer;
font-size: 18px;
}

/* 协议条款 */
.simple-terms {
margin: 20px 0;
font-size: 13px;
color: #666;
display: flex;
align-items: center;
}

.simple-terms input[type="checkbox"] {
margin-right: 8px;
}

.simple-terms a {
color: #007bff;
text-decoration: none;
}

/* 登录按钮 */
.simple-login-actions {
margin-top: 30px;
}

.simple-submit-btn {
width: 100%;
height: 46px;
background: #007bff;
color: white;
border: none;
border-radius: 4px;
font-size: 16px;
font-weight: 500;
cursor: pointer;
transition: all 0.3s;
}

.simple-submit-btn:hover {
background: #0069d9;
}

.simple-submit-btn:disabled {
background: #c0d6f1;
cursor: not-allowed;
}

/* 其他登录选项链接 */
.simple-login-links {
margin-top: 20px;
text-align: center;
}

.simple-login-links p {
margin-bottom: 10px;
font-size: 13px;
color: #666;
}

.simple-login-links a {
color: #007bff;
text-decoration: none;
transition: color 0.2s;
}

.simple-login-links a:hover {
color: #0056b3;
text-decoration: underline;
}

.simple-login-options {
display: flex;
justify-content: space-between;
margin-top: 15px;
}

/* 社交登录部分 */
.simple-social-login {
margin-top: 30px;
display: none;
}

.simple-social-login.show {
display: block;
}

.social-login-divider {
position: relative;
text-align: center;
margin: 25px 0;
}

.social-login-divider:before {
content: "";
position: absolute;
top: 50%;
left: 0;
width: 100%;
height: 1px;
background: #e0e6ed;
}

.social-login-divider span {
position: relative;
background: #fff;
padding: 0 15px;
color: #8a94a6;
font-size: 13px;
}

.social-login-buttons {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 10px;
}

.social-login-btn {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 100px;
padding: 8px 15px;
background: #f5f7fa;
border: 1px solid #e0e6ed;
border-radius: 4px;
color: #4a5568;
transition: all 0.2s;
text-decoration: none;
font-size: 13px;
}

.social-login-btn:hover {
background: #e9ecef;
}

.social-login-btn i {
margin-right: 5px;
font-size: 16px;
}

/* 邀请码样式 */
.simple-invitation-box {
text-align: center;
padding: 20px;
}

.simple-invitation-box .invitation-icon {
font-size: 30px;
color: #007bff;
margin-bottom: 15px;
}

.simple-invitation-box .invitation-des {
font-size: 16px;
font-weight: 600;
color: #333;
margin-bottom: 10px;
}

.simple-invitation-box .invitation-tips {
font-size: 14px;
color: #8a94a6;
margin-bottom: 15px;
}

.simple-invitation-box .invitation-input input {
width: 100%;
height: 46px;
border: 1px solid #e0e6ed;
border-radius: 4px;
padding: 0 15px;
font-size: 14px;
margin-bottom: 15px;
}

.simple-invitation-box .invitation-button {
display: flex;
justify-content: space-between;
align-items: center;
}

.simple-invitation-box .invitation-button a {
color: #007bff;
}

/* 响应式适配 */
@media (max-width: 768px) {
.simple-login-modal {
  flex-direction: column;
  max-width: 400px;
}

.simple-login-left {
  width: 100%;
  padding: 30px 20px;
  border-radius: 12px 12px 0 0;
}

.simple-login-right {
  width: 100%;
  padding: 30px 20px;
}

.simple-login-form {
  padding: 0;
}
}

@media (max-width: 480px) {
.simple-login-modal {
  width: 95%;
}

.simple-login-left {
  padding: 20px 15px;
}

.simple-login-welcome h2 {
  font-size: 18px;
}

.simple-login-feature {
  margin-bottom: 10px;
}

.simple-login-right {
  padding: 20px 15px;
}
}

/* 登录弹窗尺寸修改 */
.flat-login-modal {
width: 900px !important;
height: 600px !important;
border-radius: 24px !important;
overflow: hidden;
padding: 0;
max-width: 900px;
display: flex;
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
}

.flat-login-modal .flat-login-left,
.flat-login-modal .flat-login-right {
height: 600px;
}

/* 确保弹窗中内容适应新的高度 */
.flat-login-modal .flat-login-features {
margin-top: 40px;
}

/* 修复内部元素圆角 */
.flat-login-modal .flat-login-left {
border-top-left-radius: 24px;
border-bottom-left-radius: 24px;
}

.flat-login-modal .flat-login-right {
border-top-right-radius: 24px;
border-bottom-right-radius: 24px;
}

/* 左侧深色区域 */
.flat-login-left {
width: 40%;
background-color: #222;
background-image: linear-gradient(to bottom, #111, #222);
color: white;
display: flex;
align-items: center;
justify-content: center;
position: relative;
padding: 40px 30px;
box-sizing: border-box;
}

.flat-login-product {
max-width: 100%;
}

.flat-login-logo {
margin-bottom: 40px;
}

.flat-login-logo img {
height: 30px;
width: auto;
margin-bottom: 200px;
margin-left: 37px;
}

.flat-login-product-info h2 {
font-size: 26px;
font-weight: 700;
margin: 10px 0 30px;
color: #fff;
}

.flat-login-product-info h3 {
font-size: 18px;
font-weight: normal;
margin: 0;
color: #fff;
}

.flat-login-features {
margin-top: 50px;
}

.flat-login-feature {
display: flex;
/*align-items: center;*/
margin-bottom: 20px;
font-size: 14px;
}

.flat-login-feature i {
font-size: 16px;
margin-right: 10px;
color: #fff;
}

.flat-login-feature span {
color: #fff;
}

/* 右侧表单区域 */
.flat-login-right {
width: 60%;
background: #fff;
padding: 40px 50px;
position: relative;
}

.flat-login-right .close-button {
position: absolute;
right: 15px;
top: 15px;
font-size: 18px;
color: #999;
cursor: pointer;
background: transparent;
border: none;
z-index: 5;
}

/* 顶部登录方式选项卡 */
.flat-login-tabs {
display: flex;
border-bottom: 1px solid #f0f0f0;
margin-bottom: 30px;
}

.flat-login-tab {
padding: 12px 0;
margin-right: 20px;
font-size: 14px;
color: #666;
cursor: pointer;
position: relative;
}

.flat-login-tab:hover {
color: #000;
}

.flat-login-tab.active {
color: #000;
font-weight: 500;
}

.flat-login-tab.active:after {
content: "";
position: absolute;
bottom: -1px;
left: 0;
width: 100%;
height: 2px;
background: #FF6A4E;
}

/* 登录表单 */
.flat-login-form {
margin-top: 20px;
animation: tabFadeIn 0.3s ease-in-out;
}

@keyframes tabFadeIn {
from {
  opacity: 0;
  transform: translateY(10px);
}
to {
  opacity: 1;
  transform: translateY(0);
}
}

.flat-form-item {
position: relative;
margin-bottom: 20px;
}

.flat-form-item input[type="text"],
.flat-form-item input[type="password"] {
width: 100%;
height: 45px;
padding: 0 15px;
border: 1px solid #e0e0e0;
border-radius: 4px;
font-size: 14px;
transition: all 0.2s;
background: #f9f9f9;
}

.flat-form-item input:focus {
border-color: #FF6A4E;
box-shadow: 0 0 0 1px #ff6a4e1a;
outline: none;
background: #fff;
}

.flat-form-tip {
font-size: 12px;
color: #999;
margin-top: 5px;
}

/* 验证码输入框 */
.flat-check-input input {
padding-right: 120px;
}

.flat-check-input .check-code-img {
position: absolute;
right: 1px;
top: 1px;
height: 43px;
width: 110px;
border-radius: 0 4px 4px 0;
overflow: hidden;
cursor: pointer;
background: #f0f0f0;
}

.flat-check-input .check-code-img img {
height: 100%;
width: 100%;
object-fit: cover;
}

.flat-check-input .send-code-button {
position: absolute;
right: 1px;
top: 1px;
height: 43px;
background: #f0f0f0;
border: none;
border-left: 1px solid #e0e0e0;
border-radius: 0 4px 4px 0;
color: #333;
padding: 0 15px;
font-size: 13px;
cursor: pointer;
}

/* 密码输入框 */
.flat-password-input {
position: relative;
}

.flat-password-input .eye-button {
position: absolute;
right: 10px;
top: 50%;
transform: translateY(-50%);
background: transparent;
border: none;
color: #999;
cursor: pointer;
font-size: 16px;
}

/* 协议条款 */
.flat-terms {
margin: 15px 0;
font-size: 13px;
color: #666;
}

.flat-terms input[type="checkbox"] {
margin-right: 8px;
}

.flat-terms a {
color: #666;
text-decoration: underline;
}

/* 登录按钮 */
.flat-login-actions {
margin-top: 25px;
}

.flat-submit-btn {
width: 100%;
height: 45px;
background: #FF6A4E;
color: #fff;
border: none;
border-radius: 4px;
font-size: 16px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s;
}

.flat-submit-btn:hover {
background: #4CAF50;
}

.flat-submit-btn:disabled {
background: #e0e0e0;
color: #999;
cursor: not-allowed;
}

/* 忘记密码等链接 */
.flat-login-options {
margin-top: 15px;
display: flex;
justify-content: space-between;
}

.flat-login-links {
display: flex;
gap: 15px;
font-size: 13px;
}

.flat-login-links a {
color: #666;
text-decoration: none;
}

.flat-login-links a:hover {
color: #333;
text-decoration: underline;
}

/* 社交登录 */
.flat-social-login {
margin-top: 30px;
display: none;
}

.flat-social-login.show {
display: block;
}

.flat-social-login .social-login-divider {
position: relative;
text-align: center;
margin: 25px 0;
}

.flat-social-login .social-login-divider:before {
content: "";
position: absolute;
top: 50%;
left: 0;
width: 100%;
height: 1px;
background: #e0e0e0;
}

.flat-social-login .social-login-divider span {
position: relative;
background: #fff;
padding: 0 15px;
color: #999;
font-size: 13px;
}

.flat-social-login .social-login-buttons {
display: flex;
justify-content: center;
margin-top: 20px;
}

.flat-social-login .wx-login-btn {
display: inline-flex;
align-items: center;
justify-content: center;
}

.flat-social-login .wx-login-btn img {
width: 40px;
height: 40px;
}

/* 邀请码区域 */
.flat-invitation-box {
text-align: center;
padding: 20px;
}

.flat-invitation-box .invitation-icon {
font-size: 30px;
color: #FF6A4E;
margin-bottom: 15px;
}

.flat-invitation-box .invitation-des {
font-size: 16px;
font-weight: 600;
color: #333;
margin-bottom: 10px;
}

.flat-invitation-box .invitation-tips {
font-size: 14px;
color: #666;
margin-bottom: 15px;
}

.flat-invitation-box .invitation-input input {
width: 100%;
height: 45px;
border: 1px solid #e0e0e0;
border-radius: 4px;
padding: 0 15px;
font-size: 14px;
margin-bottom: 15px;
background: #f9f9f9;
}

.flat-invitation-box .invitation-button {
display: flex;
justify-content: space-between;
align-items: center;
}

.flat-invitation-box .invitation-button a {
color: #666;
}

/* 响应式适配 */
@media (max-width: 768px) {
.flat-login-modal {
  flex-direction: column;
  height: auto;
  max-height: 90vh;
  overflow-y: auto;
  width: 100% !important;
  max-width: 400px !important;
  margin: 0 auto !important;
}
  
/* 强制隐藏左侧黑色区域 */
  body .flat-login-left,
  html .flat-login-left,
  .modal .flat-login-left,
  .show-modal .flat-login-left,
  .flat-login-modal .flat-login-left {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    z-index: -1 !important;
  }
  
  /* 右侧登录表单区域占满宽度 */
  body .flat-login-right,
  html .flat-login-right,
  .modal .flat-login-right,
  .show-modal .flat-login-right,
  .flat-login-modal .flat-login-right {
    width: 100% !important;
    border-radius: 12px !important;
    padding: 30px 20px !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1) !important;
  }
}

/* 针对基于视口高度的查询 */
@media screen and (max-height: 700px) {
  .flat-login-left {
    display: none !important;
  }
  
  .flat-login-right {
    width: 100% !important;
  }
}

/* 移动设备特定样式 */
@media only screen and (max-device-width: 812px) {
  body .flat-login-left,
  .flat-login-modal .flat-login-left {
    display: none !important;
  }
  
  body .flat-login-right,
  .flat-login-modal .flat-login-right {
    width: 100% !important;
    border-radius: 12px !important;
  }
}

.sxzy {
  display: flex!important;
  flex-direction: column;
  align-items: baseline;
}
/* 新版登录界面样式 */
.flat-login-modal {
    display: flex;
    max-width: 900px;
    height: 500px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

/* 左侧黑色区域 */
.flat-login-left {
    width: 36%;
    background: #18191c;
    padding: 40px 30px;
    color: #fff;
    position: relative;
    display: flex;
    align-items: center;
}

/* 右侧表单区域 */
.flat-login-right {
    width: 64%;
    padding: 40px;
    position: relative;
    background: #fff;
}
.flat-login-features::before {
  content: "";
  position: absolute;
  left: -3px;
  right: 0;
  bottom: 2px;
  filter: blur(5px);
  background-color: #33333312;
  width: 339px;
  height: 198px;
}

/* 现代登录弹窗样式 - 自定义美化  结束 */