/* 登录页面容器 */
.login-container {
  min-height: 100vh;
  min-height: 100dvh; /* 动态视口高度，避免移动端地址栏影响 */
  height: 100vh;
  height: 100dvh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
    'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
    sans-serif;
  /* 确保容器稳定定位 */
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  /* 重置文本对齐 */
  text-align: initial;
}

/* 小红书风格背景 */
.login-background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #f8f8f8;
  z-index: -1;
}

/* 登录内容区域 */
.login-content {
  width: 100%;
  max-width: 500px; /* 增加桌面端最大宽度 */
  padding: 0;
  z-index: 1;
  /* 确保内容稳定定位 */
  box-sizing: border-box;
  position: relative;
  display: flex;
  justify-content: center;
}

/* 小红书风格登录卡片 */
.login-card {
  background: #fff;
  border-radius: 8px;
  padding: 40px; /* 增加桌面端内边距 */
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
  border: 1px solid #e1e1e1;
  width: 100%;
  max-width: 450px; /* 增加桌面端卡片最大宽度 */
  transition: none;
}

/* 登录头部 */
.login-header {
  text-align: center;
  margin-bottom: 40px;
}

/* Logo样式 */
.logo-section {
  margin-bottom: 24px;
}

.logo-icon {
  width: 60px;
  height: 60px;
  background: #ff2442;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  margin: 0 auto 16px;
  box-shadow: 0 4px 12px rgba(255, 36, 66, 0.2);
}

.login-title {
  font-size: 24px;
  font-weight: 600;
  color: #333;
  margin: 0 0 12px 0;
  text-align: center;
}

.login-title::after {
  display: none;
}

.login-subtitle {
  font-size: 14px;
  color: #999;
  margin: 0 0 32px 0;
  font-weight: 400;
  text-align: center;
}

/* 表单样式 */
.login-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 2px;
  position: relative; /* 为绝对定位的错误提示提供参考点 */
}

.form-group .input-wrapper {
  width: 100%;
  box-sizing: border-box;
}

.form-label {
  font-size: 14px;
  font-weight: 500;
  color: #333;
  margin-bottom: 8px;
}

.input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  box-sizing: border-box;
}

.form-input {
  width: 100% !important;
  height: 44px;
  padding: 12px 16px 12px 48px;
  border: 1px solid #e1e1e1;
  border-radius: 6px;
  font-size: 14px;
  transition: border-color 0.2s ease;
  background: #fff;
  color: #333;
  box-sizing: border-box !important;
  flex: 1;
  min-width: 0;
}

/* 针对 Antd Input 组件的特定样式 */
.form-input.ant-input,
.form-input.ant-input-affix-wrapper {
  width: 100% !important;
  height: 44px !important;
  border: 1px solid #e1e1e1 !important;
  border-radius: 6px !important;
  padding: 12px 48px 12px 48px !important;
  font-size: 14px !important;
  background: #fff !important;
  color: #333 !important;
  box-sizing: border-box !important;
  flex: 1 !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
}

.form-input.ant-input-affix-wrapper .ant-input {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  flex: 1 !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.form-input:focus {
  outline: none;
  border-color: #ff2442;
  box-shadow: none;
  transform: none;
}

/* Antd Input focus 样式 */
.form-input.ant-input:focus,
.form-input.ant-input-affix-wrapper:focus,
.form-input.ant-input-affix-wrapper-focused {
  outline: none !important;
  border-color: #ff2442 !important;
  box-shadow: none !important;
  transform: none !important;
}

.form-input::placeholder {
  color: #9ca3af;
}

.input-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: #9ca3af;
  pointer-events: none;
  transition: color 0.3s ease;
  z-index: 2;
}

.form-input:focus + .input-icon {
  color: #ff2442;
}

.password-toggle {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: #9ca3af;
  cursor: pointer;
  padding: 4px;
  border-radius: 4px;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  width: 24px;
  height: 24px;
}

.password-toggle:hover {
  color: #ff2442;
  background-color: rgba(255, 36, 66, 0.1);
}

/* 表单选项 */
.form-options {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 8px;
  margin-bottom: 16px;
  width: 100%;
  flex-wrap: nowrap; /* 确保不换行 */
  min-height: 24px;
  gap: 8px; /* 添加基础间距 */
}

/* Ant Design Checkbox 样式兼容 */
.form-options .ant-checkbox-wrapper {
  flex: 0 0 auto; /* 不伸缩，保持原始大小 */
  font-size: 14px;
  color: #64748b;
  white-space: nowrap; /* 防止文字换行 */
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 50%; /* 限制最大宽度 */
}

.form-options .ant-checkbox-wrapper .ant-checkbox {
  margin-right: 8px;
}

.form-options .forgot-password {
  flex: 0 0 auto; /* 不伸缩，保持原始大小 */
  margin-left: auto;
  white-space: nowrap;
  color: #ff2442;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.3s ease;
  max-width: 45%; /* 限制最大宽度 */
  overflow: hidden;
  text-overflow: ellipsis;
}

.form-options .forgot-password:hover {
  color: #ff1a3a;
  text-decoration: underline;
}

.checkbox-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  font-size: 14px;
  color: #64748b;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  flex-shrink: 0;
}

.checkbox {
  position: relative;
  width: 18px;
  height: 18px;
  margin: 0;
  cursor: pointer;
  opacity: 0;
}

.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  background-color: #fff;
  border: 1px solid #e1e1e1;
  border-radius: 3px;
  transition: all 0.2s ease;
}

.checkbox:checked + .checkmark {
  background-color: #ff2442;
  border-color: #ff2442;
}

.checkmark:after {
  content: "";
  position: absolute;
  display: none;
  left: 5px;
  top: 2px;
  width: 4px;
  height: 8px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.checkbox:checked + .checkmark:after {
  display: block;
}

.forgot-password {
  font-size: 14px;
  color: #ff2442;
  text-decoration: none;
  font-weight: 400;
  transition: color 0.2s ease;
  margin-left: auto;
  flex-shrink: 0;
  white-space: nowrap;
}

.forgot-password:hover {
  color: #d91e3a;
  text-decoration: underline;
}

/* 小红书风格登录按钮 */
.login-button {
  width: 100%;
  height: 48px; /* 固定高度，防止布局变化 */
  padding: 12px;
  background: #ff2442;
  color: white;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 8px;
  box-sizing: border-box; /* 确保padding包含在总尺寸内 */
  min-width: 0; /* 防止flex子元素造成宽度变化 */
}

.login-button:hover:not(:disabled) {
  background: #d91e3a;
  transform: none;
  box-shadow: none;
}

.login-button:active:not(:disabled) {
  transform: none;
}

.login-button:disabled {
  background: #ccc;
  cursor: not-allowed;
  opacity: 0.8;
}

.login-button.loading {
  background: #ff7b8a;
  cursor: not-allowed;
}

.loading-spinner {
  width: 16px;
  height: 16px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  border-top-color: #fff;
  animation: spin 1s ease-in-out infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

/* 加载遮罩层 */
.loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  backdrop-filter: blur(4px);
}

.loading-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  background: white;
  padding: 32px;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.loading-spinner-large {
  width: 40px;
  height: 40px;
  border: 4px solid rgba(255, 36, 66, 0.2);
  border-radius: 50%;
  border-top-color: #ff2442;
  animation: spin 1s ease-in-out infinite;
}

.loading-text {
  margin: 0;
  color: #333;
  font-size: 16px;
  font-weight: 500;
}

/* 分隔线 */
.login-divider {
  position: relative;
  text-align: center;
  margin: 32px 0;
  color: #9ca3af;
  font-size: 14px;
}

.login-divider::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(to right, transparent, #e5e7eb, transparent);
}

.login-divider span {
  background: rgba(255, 255, 255, 0.95);
  padding: 0 16px;
  position: relative;
  z-index: 1;
}

/* 社交登录 */
.social-login {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.social-button {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid #e1e1e1;
  border-radius: 6px;
  background: white;
  color: #333;
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  transition: border-color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.social-button:hover {
  border-color: #ccc;
}

.social-button.google:hover {
  border-color: #4285f4;
  box-shadow: 0 4px 12px rgba(66, 133, 244, 0.2);
}

.social-button.github:hover {
  border-color: #333;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.social-button.xiaohongshu:hover {
  border-color: #ff2442;
  box-shadow: 0 4px 12px rgba(255, 36, 66, 0.2);
}

/* 注册链接 */
.signup-link {
  text-align: center;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #e5e7eb;
}

.signup-link p {
  margin: 0;
  font-size: 14px;
  color: #64748b;
}

.signup-link a {
  color: #ff2442;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s ease;
}

.signup-link a:hover {
  color: #d91e3a;
  text-decoration: underline;
}

/* 有左侧图标时的内边距调整 */
.input-wrapper.has-icon .form-input {
  padding-left: 48px !important;
}

.input-wrapper.has-icon .form-input.ant-input,
.input-wrapper.has-icon .form-input.ant-input-affix-wrapper {
  padding-left: 48px !important;
}

/* 有右侧切换按钮时的内边距调整 */
.input-wrapper.has-toggle .form-input {
  padding-right: 48px !important;
}

.input-wrapper.has-toggle .form-input.ant-input,
.input-wrapper.has-toggle .form-input.ant-input-affix-wrapper {
  padding-right: 48px !important;
}

/* 没有图标时的内边距调整 */
.input-wrapper:not(.has-icon) .form-input {
  padding-left: 16px !important;
}

.input-wrapper:not(.has-icon) .form-input.ant-input,
.input-wrapper:not(.has-icon) .form-input.ant-input-affix-wrapper {
  padding-left: 16px !important;
}

/* 没有切换按钮时的内边距调整 */
.input-wrapper:not(.has-toggle) .form-input {
  padding-right: 16px !important;
}

.input-wrapper:not(.has-toggle) .form-input.ant-input,
.input-wrapper:not(.has-toggle) .form-input.ant-input-affix-wrapper {
  padding-right: 16px !important;
}

/* 确保输入框内容完全填充 */
.form-input.ant-input-affix-wrapper .ant-input-suffix {
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  padding: 0 !important;
}

.form-input.ant-input-affix-wrapper .ant-input-prefix {
  position: absolute !important;
  left: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 确保所有输入框完全填充其容器 */
.form-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  box-sizing: border-box;
}

.form-group .input-wrapper {
  width: 100%;
  box-sizing: border-box;
}

/* 防止输入框溢出容器 */
.form-input,
.form-input.ant-input,
.form-input.ant-input-affix-wrapper {
  max-width: 100% !important;
  overflow: hidden !important;
}

/* 确保内部输入元素不会超出边界 */
.form-input.ant-input-affix-wrapper .ant-input {
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* 精细间距控制 */
.login-header + .login-form {
  margin-top: -4px;
}

.login-form .form-group:not(:last-child) {
  margin-bottom: 2px;
}

.login-form .form-group:last-of-type {
  margin-bottom: 6px;
}

.login-button + .signup-link {
  margin-top: 14px;
}

/* 响应式设计 */
@media (max-width: 768px) {
  /* 重置body和html确保一致性 */
  html, body {
    height: 100%;
    height: 100dvh;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    box-sizing: border-box;
  }
  
  .login-container {
    padding: 16px;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    min-height: 100dvh; /* 动态视口高度 */
    /* 强制重置可能影响定位的样式 */
    margin: 0;
    box-sizing: border-box;
    /* 防止内容溢出影响布局 */
    overflow-x: hidden;
    overflow-y: auto;
    /* 确保flexbox在所有移动设备上表现一致 */
    -webkit-box-align: center;
    -webkit-box-pack: center;
    display: flex !important;
    position: relative;
  }
  
  .login-content {
    max-width: 100%;
    padding: 20px;
    /* 确保内容区域稳定 */
    margin: 0 auto;
    box-sizing: border-box;
    /* 防止宽度计算问题 */
    width: calc(100% - 40px);
    max-width: 480px; /* 增加最大宽度 */
    position: relative;
    display: flex;
    justify-content: center;
  }
  
  .login-card {
    padding: 32px 28px; /* 增加内边距 */
    border-radius: 16px;
    /* 确保卡片稳定定位 */
    margin: 0;
    box-sizing: border-box;
    width: 100%;
    max-width: 450px; /* 增加卡片最大宽度 */
    /* 防止backdrop-filter导致的渲染差异 */
    will-change: auto;
    position: relative;
    /* 防止触摸操作影响布局 */
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
  }
  
  .login-title {
    font-size: 24px;
  }
  
  .form-input {
    width: 100% !important;
    height: 44px !important;
    padding: 12px 48px 12px 48px;
    font-size: 16px; /* 防止iOS Safari缩放 */
    box-sizing: border-box !important;
    flex: 1 !important;
    min-width: 0 !important;
  }
  
  .form-input.ant-input,
  .form-input.ant-input-affix-wrapper {
    width: 100% !important;
    height: 44px !important;
    padding: 12px 48px 12px 48px !important;
    font-size: 16px !important;
    box-sizing: border-box !important;
    flex: 1 !important;
    min-width: 0 !important;
  }
  
  .form-input.ant-input-affix-wrapper .ant-input {
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    flex: 1 !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  
  .social-login {
    gap: 10px;
  }
  
  .social-button {
    padding: 12px 16px;
    font-size: 14px;
  }
  
  .form-options {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    min-height: 22px !important;
    margin-top: 8px !important;
    margin-bottom: 16px !important;
  }
  
  .checkbox-wrapper {
    font-size: 13px;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 48% !important;
  }
  
  .forgot-password {
    font-size: 13px;
    margin-left: auto;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 48% !important;
  }
  
  /* Ant Design Checkbox 的特殊处理 */
  .form-options .ant-checkbox-wrapper {
    flex: 0 0 auto !important;
    font-size: 13px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 48% !important;
  }
}

@media (max-width: 480px) {
  .login-container {
    padding: 16px;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    min-height: 100dvh; /* 动态视口高度 */
    /* 强制重置样式 */
    margin: 0;
    box-sizing: border-box;
    position: relative;
    /* 确保垂直居中 */
    display: flex !important;
  }
  
  .login-content {
    /* 更严格的尺寸控制 */
    width: calc(100vw - 32px);
    max-width: 420px; /* 增加最大宽度 */
    padding: 16px;
    margin: 0 auto;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
  }
  
  .login-card {
    padding: 28px 24px; /* 增加内边距 */
    border-radius: 12px;
    /* 确保卡片完全稳定 */
    margin: 0;
    box-sizing: border-box;
    width: 100%;
    position: relative;
    /* 防止变换导致的位置偏移 */
    transform: none !important;
    /* 防止触摸操作影响布局 */
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    /* 防止点击时的高亮效果影响布局 */
    -webkit-tap-highlight-color: transparent;
  }
  
  .login-title {
    font-size: 22px;
  }
  
  .form-input {
    width: 100% !important;
    height: 44px !important;
    padding: 12px 48px 12px 48px;
    font-size: 16px; /* 防止iOS Safari缩放 */
    box-sizing: border-box !important;
    flex: 1 !important;
    min-width: 0 !important;
  }
  
  .form-input.ant-input,
  .form-input.ant-input-affix-wrapper {
    width: 100% !important;
    height: 44px !important;
    padding: 12px 48px 12px 48px !important;
    font-size: 16px !important;
    box-sizing: border-box !important;
    flex: 1 !important;
    min-width: 0 !important;
  }
  
  .form-input.ant-input-affix-wrapper .ant-input {
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    flex: 1 !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  
  .social-login {
    gap: 10px;
  }
  
  .social-button {
    padding: 12px 16px;
    font-size: 14px;
  }
  
  .form-options {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    min-height: 20px !important;
    flex-wrap: nowrap !important;
    margin-top: 8px !important;
    margin-bottom: 16px !important;
  }
  
  .checkbox-wrapper {
    flex: 0 0 auto !important;
    font-size: 12px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 45% !important;
  }
  
  .forgot-password {
    flex: 0 0 auto !important;
    font-size: 12px !important;
    margin-left: auto !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 45% !important;
  }
  
/* 移动端优化 */
  .background-pattern {
    display: none;
  }
  
  /* 禁用可能影响位置的悬停效果 */
  .login-card:hover {
    transform: none !important;
  }
}

/* 超小屏幕优化（320px及以下） */
@media (max-width: 320px) {
  .login-content {
    padding: 16px;
  }
  
  .login-card {
    padding: 24px;
  }
  
  .form-options {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 4px !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    min-height: 18px !important;
    margin-top: 6px !important;
    margin-bottom: 14px !important;
  }
  
  .checkbox-wrapper {
    flex: 0 0 auto !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 42% !important;
    line-height: 1.2 !important;
  }
  
  .forgot-password {
    flex: 0 0 auto !important;
    font-size: 11px !important;
    margin-left: auto !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 42% !important;
    line-height: 1.2 !important;
  }
  
  /* Ant Design Checkbox 的特殊处理 */
  .form-options .ant-checkbox-wrapper {
    flex: 0 0 auto !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 42% !important;
    line-height: 1.2 !important;
  }
}

/* 极小屏幕优化（280px及以下） */
@media (max-width: 280px) {
  .form-options {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 2px !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    min-height: 16px !important;
    margin-top: 6px !important;
    margin-bottom: 14px !important;
  }
  
  .form-options .ant-checkbox-wrapper {
    flex: 0 0 auto !important;
    font-size: 10px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 40% !important;
    line-height: 1.1 !important;
  }
  
  .form-options .forgot-password {
    flex: 0 0 auto !important;
    font-size: 10px !important;
    margin-left: auto !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 40% !important;
    line-height: 1.1 !important;
  }
  
  .form-options .ant-checkbox-wrapper .ant-checkbox {
    margin-right: 2px !important;
    transform: scale(0.8) !important; /* 进一步缩小checkbox */
  }
}

/* 高对比度模式支持 */
@media (prefers-contrast: high) {
  .login-card {
    background: white;
    border: 2px solid #000;
  }
  
  .form-input {
    border-color: #000;
  }
  
  .form-input:focus {
    border-color: #0066cc;
    box-shadow: 0 0 0 2px #0066cc;
  }
}

/* 减少动画模式 */
@media (prefers-reduced-motion: reduce) {
  .background-pattern {
    animation: none;
  }
  
  .login-card,
  .form-input,
  .login-button,
  .social-button {
    transition: none;
  }
}

/* 深色模式支持 */
@media (prefers-color-scheme: dark) {
  .login-background {
    background: linear-gradient(135deg, #1a202c 0%, #2d3748 100%);
  }
  
  .login-card {
    background: rgba(26, 32, 44, 0.95);
    border-color: rgba(255, 255, 255, 0.1);
  }
  
  .login-title {
    color: #f7fafc;
  }
  
  .login-subtitle {
    color: #a0aec0;
  }
  
  .form-label {
    color: #e2e8f0;
  }
  
  .form-input {
    background: #2d3748;
    border-color: #4a5568;
    color: #f7fafc;
  }
  
  .form-input:focus {
    border-color: #ff2442;
  }
  
  .social-button {
    background: #2d3748;
    border-color: #4a5568;
    color: #f7fafc;
  }
  
  .signup-link {
    border-color: #4a5568;
  }
  
  .signup-link p {
    color: #a0aec0;
  }
  
  /* 深色模式下的错误提示样式 */
  .error-message {
    background: rgba(26, 32, 44, 0.95);
    color: #ff6b6b;
  }
  
  /* 深色模式下的错误弹窗样式 */
  .error-modal .ant-modal-header {
    background: #2d3748;
    border-color: #4a5568;
  }
  
  .error-modal .ant-modal-title {
    color: #f7fafc;
  }
  
  .error-modal .ant-modal-body {
    background: #2d3748;
    color: #f7fafc;
  }
  
  .error-modal .ant-modal-footer {
    background: #2d3748;
  }
  
  .error-modal .ant-modal-content {
    background: #2d3748;
  }
}

/* 错误提示样式 - 使用绝对定位避免影响布局 */
.error-message {
  position: absolute;
  top: 95%;
  left: 4px;
  right: 4px;
  font-size: 12px;
  color: #ff4d4f;
  margin-top: 4px;
  display: flex;
  align-items: center;
  min-height: 16px;
  animation: fadeInDown 0.3s ease-out;
  font-weight: 400;
  line-height: 1.2;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(4px);
  padding: 2px 4px;
  border-radius: 4px;
  z-index: 10;
  pointer-events: none; /* 避免干扰用户交互 */
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 输入框错误状态样式 */
.form-input.input-error,
.form-input.input-error.ant-input,
.form-input.input-error.ant-input-affix-wrapper {
  border-color: #ff4d4f !important;
  box-shadow: 0 0 0 2px rgba(255, 77, 79, 0.1) !important;
  transition: all 0.3s ease !important;
}

.form-input.input-error:focus,
.form-input.input-error.ant-input:focus,
.form-input.input-error.ant-input-affix-wrapper:focus,
.form-input.input-error.ant-input-affix-wrapper-focused {
  border-color: #ff4d4f !important;
  box-shadow: 0 0 0 2px rgba(255, 77, 79, 0.2) !important;
}

/* 错误状态下的图标颜色 */
.form-input.input-error .anticon {
  color: #ff4d4f !important;
}

/* 确保表单组间距一致 */
.form-group {
  margin-bottom: 0px;
}

.form-group:last-of-type {
  margin-bottom: 0px;
}

/* 错误弹窗样式 */
.error-modal .ant-modal-header {
  background: #fff;
  border-bottom: 1px solid #f0f0f0;
  padding: 16px 24px;
}

.error-modal .ant-modal-title {
  color: #333;
  font-weight: 600;
  font-size: 16px;
}

.error-modal .ant-modal-body {
  padding: 16px 24px 24px;
}

.error-modal .ant-modal-footer {
  padding: 12px 24px 24px;
  border-top: none;
  text-align: center;
}

.error-modal .ant-btn-primary {
  background: #ff2442;
  border-color: #ff2442;
  font-weight: 500;
  height: 40px;
  padding: 0 24px;
  border-radius: 6px;
  transition: all 0.2s ease;
}

.error-modal .ant-btn-primary:hover {
  background: #d91e3a;
  border-color: #d91e3a;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(255, 36, 66, 0.3);
}

.error-modal .ant-modal-content {
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

/* 错误弹窗遮罩层 */
.error-modal .ant-modal-mask {
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
}

/* 错误弹窗动画 */
.error-modal .ant-modal {
  animation: errorModalSlideIn 0.3s ease-out;
}

@keyframes errorModalSlideIn {
  from {
    opacity: 0;
    transform: translateY(-20px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
