/* =========================================================================
   登录页视觉 · 对齐设计参考图（v-ref1 / 2026-10-23）
   纯 CSS 覆盖层，加载于 index-Boc7QxFW.css 之后；不改动表单字段、name/type
   与登录接口逻辑。所有规则限定在 .auth-page 作用域内，不影响后台页面。
   注意：本文件刻意不使用 data:image/svg+xml 背景图（打包产物中曾有内联 SVG
   未转义导致后续规则被截断的问题），图标一律由 login-enhance.js 在 DOM 层注入。
   ========================================================================= */

.auth-page {
  --efp-primary: #0F7BD8;
  --efp-primary-hi: #1490EE;
  --efp-primary-dark: #0A69C2;
  --efp-navy: #082A58;
  --efp-title: #0E2C54;
  --efp-body: #5A7194;
  --efp-muted: #7E93AB;
  --efp-faint: #A3B3C4;
  --efp-line: #E4EAF2;
  --efp-card: #F1F7FF;

  min-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
  background: #FFFFFF !important;
  background-image: none !important;
  color: var(--efp-body) !important;
  overflow-x: hidden !important;
  -webkit-font-smoothing: antialiased;
}

/* ---------- 骨架：左 56.4% / 右 43.6%，通栏铺满 ---------- */
.auth-page .auth-shell {
  display: grid !important;
  grid-template-columns: 56.4% 43.6% !important;
  width: 100% !important;
  max-width: none !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* ---------- 左栏 ---------- */
.auth-page .auth-intro {
  background-color: #E7F2FE !important;
  background-image:
    radial-gradient(64% 42% at 4% 0%, rgba(255, 255, 255, .45) 0%, rgba(255, 255, 255, 0) 72%),
    radial-gradient(56% 34% at 2% 100%, rgba(150, 202, 247, .95) 0%, rgba(150, 202, 247, 0) 72%),
    radial-gradient(70% 40% at 96% 96%, rgba(206, 230, 253, .95) 0%, rgba(206, 230, 253, 0) 72%),
    linear-gradient(180deg, #EAF5FF 0%, #E6F3FF 42%, #E9F4FF 72%, #F6FAFF 100%) !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  padding: 2.55vw 3vw 0 6.63vw !important;
  overflow: hidden !important;
  text-align: left !important;
}

/* 柔和的波浪/光带纹理（用纯渐变实现，避免内联 SVG） */
.auth-page .auth-intro::before {
  content: "" !important;
  position: absolute !important;
  left: -14% !important;
  right: -10% !important;
  bottom: -26% !important;
  height: 62% !important;
  border-radius: 48% 48% 0 0 / 60% 60% 0 0 !important;
  background: radial-gradient(60% 100% at 50% 100%, rgba(255, 255, 255, .92) 0%, rgba(255, 255, 255, 0) 72%) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.auth-page .auth-intro::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(38% 22% at 74% 30%, rgba(255, 255, 255, .55) 0%, rgba(255, 255, 255, 0) 70%),
    radial-gradient(30% 18% at 12% 58%, rgba(255, 255, 255, .45) 0%, rgba(255, 255, 255, 0) 72%) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.auth-page .auth-intro > * {
  position: relative !important;
  z-index: 1 !important;
}

/* ---------- 品牌区 ---------- */
.auth-page .auth-brand {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  grid-template-rows: auto auto !important;
  column-gap: .78vw !important;
  row-gap: .18vw !important;
  align-items: center !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.auth-page .auth-brand .auth-brand-mark {
  grid-row: 1 / span 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 2.65vw !important;
  height: 2.65vw !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 52px !important;
  max-height: 52px !important;
  border-radius: 30% !important;
  background: linear-gradient(146deg, #2196F3 0%, #0B72D0 100%) !important;
  box-shadow: 0 8px 18px rgba(13, 106, 196, .26) !important;
  color: #FFFFFF !important;
}

.auth-page .auth-brand .auth-brand-mark svg {
  width: 58% !important;
  height: 58% !important;
  stroke: currentColor !important;
  stroke-width: 1.9 !important;
}

.auth-page .auth-brand .auth-brand-name {
  align-self: end !important;
  font-size: 1.32vw !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;
  color: var(--efp-navy) !important;
  white-space: nowrap !important;
}

.auth-page .auth-brand .ef-brand-sub {
  display: flex !important;
  align-items: center !important;
  gap: .5vw !important;
  align-self: start !important;
  font-size: .72vw !important;
  line-height: 1.3 !important;
  color: #8FA6BE !important;
  white-space: nowrap !important;
}

.auth-page .auth-brand .ef-brand-en {
  letter-spacing: .1em !important;
  font-size: .64vw !important;
  text-transform: uppercase !important;
  color: #9BB0C8 !important;
}

.auth-page .auth-brand .ef-brand-cn {
  color: #6E87A3 !important;
  letter-spacing: .06em !important;
}

/* ---------- 眉标 ---------- */
.auth-page .auth-intro .ef-eyebrow {
  display: flex !important;
  align-items: center !important;
  gap: .6vw !important;
  margin: 9.4vh 0 0 0 !important;
  font-size: .84vw !important;
  line-height: 1.5 !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  color: #2F7ACB !important;
}

.auth-page .auth-intro .ef-eyebrow::before {
  content: "" !important;
  display: block !important;
  width: 1.35vw !important;
  min-width: 18px !important;
  height: 2px !important;
  border-radius: 2px !important;
  background: #2F7ACB !important;
}

/* ---------- 主标题 ---------- */
.auth-page .auth-intro .auth-headline {
  margin: .92vw 0 0 0 !important;
  padding: 0 !important;
  font-size: 3.6vw !important;
  line-height: 1.21 !important;
  font-weight: 700 !important;
  letter-spacing: .005em !important;
  color: var(--efp-navy) !important;
  text-align: left !important;
}

/* ---------- 描述 ---------- */
.auth-page .auth-intro .auth-lead {
  margin: .28vw 0 0 0 !important;
  max-width: 29vw !important;
  font-size: 1vw !important;
  line-height: 1.72 !important;
  color: #5C7695 !important;
  text-align: left !important;
}

/* ---------- 特性列表 ---------- */
.auth-page .auth-intro .auth-points {
  display: flex !important;
  flex-direction: column !important;
  gap: 1.37vw !important;
  margin: 2.27vw 0 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  width: 100% !important;
}

.auth-page .auth-intro .auth-points li {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  align-items: flex-start !important;
  column-gap: .85vw !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.auth-page .auth-intro .auth-points li .ef-point-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 2.65vw !important;
  height: 2.3vw !important;
  min-width: 34px !important;
  min-height: 34px !important;
  border-radius: 26% !important;
  background: #FFFFFF !important;
  border: 1px solid #E1ECFA !important;
  box-shadow: 0 4px 12px rgba(31, 95, 165, .09) !important;
  color: #2F7ACB !important;
}

.auth-page .auth-intro .auth-points li.ef-point--coral .ef-point-icon {
  color: #2F9BD6 !important;
}

.auth-page .auth-intro .auth-points li.ef-point--green .ef-point-icon {
  color: #2FA37E !important;
}

.auth-page .auth-intro .auth-points li .ef-point-icon svg {
  width: 54% !important;
  height: 54% !important;
  stroke: currentColor !important;
  stroke-width: 1.9 !important;
  fill: none !important;
}

.auth-page .auth-intro .auth-points li > svg {
  display: none !important;
}

.auth-page .auth-intro .auth-point-text {
  display: flex !important;
  flex-direction: column !important;
  gap: .22vw !important;
  min-width: 0 !important;
  padding-top: .1vw !important;
}

.auth-page .auth-intro .auth-point-text strong {
  font-size: .88vw !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  color: #10365F !important;
  letter-spacing: .01em !important;
}

.auth-page .auth-intro .auth-point-text em {
  font-style: normal !important;
  font-size: .76vw !important;
  line-height: 1.65 !important;
  color: #7A8FA8 !important;
}

/* ---------- 左栏底部标语 ---------- */
.auth-page .auth-intro .ef-guardline {
  margin: auto 0 0 0 !important;
  padding: 1.2vw 0 2.72vw 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: .5vw !important;
  font-size: .87vw !important;
  line-height: 1.6 !important;
  color: #93A8BF !important;
  letter-spacing: .02em !important;
  white-space: nowrap !important;
  width: auto !important;
  flex-direction: row !important;
}

.auth-page .auth-intro .ef-guardline .ef-guard-strong {
  display: inline-flex !important;
  align-items: center !important;
  gap: .35vw !important;
  font-weight: 600 !important;
  color: #6F8CAB !important;
}

.auth-page .auth-intro .ef-guardline .ef-guard-strong svg {
  width: .95vw !important;
  height: .95vw !important;
  min-width: 14px !important;
  min-height: 14px !important;
  stroke: currentColor !important;
  fill: none !important;
}

.auth-page .auth-intro .ef-guardline .ef-guard-dot {
  color: #C3D2E1 !important;
}

/* ---------- 右栏 ---------- */
.auth-page .auth-form-panel {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 1.97vw 0 5.2vw 0 !important;
  background: #FFFFFF !important;
  scrollbar-width: thin !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow-y: auto !important;
}

.auth-page .auth-form-panel > * {
  width: 100% !important;
  max-width: 26.2vw !important;
  min-width: 320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Tab：胶囊，左对齐于表单列 */
.auth-page .auth-form-panel .auth-tabs {
  display: flex !important;
  width: 20vw !important;
  max-width: 20vw !important;
  min-width: 178px !important;
  align-self: flex-start !important;
  margin: 0 !important;
  padding: .26vw !important;
  gap: .2vw !important;
  border-radius: 999px !important;
  background: #F2F6FB !important;
  border: 1px solid #E9F0F8 !important;
  box-sizing: border-box !important;
}

.auth-page .auth-form-panel .auth-tab {
  flex: 1 1 0 !important;
  padding: .62vw 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  font-size: .82vw !important;
  font-weight: 600 !important;
  color: #7E93AB !important;
  letter-spacing: .02em !important;
  cursor: pointer !important;
  transition: background .18s ease, color .18s ease, box-shadow .18s ease !important;
}

.auth-page .auth-form-panel .auth-tab.is-active {
  background: linear-gradient(135deg, #1490EE 0%, #0A6FCB 100%) !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 14px rgba(15, 123, 216, .28) !important;
}

/* 欢迎回来 */
.auth-page .auth-form-panel .ef-welcome {
  margin: 3.5vw 0 0 0 !important;
  font-size: .82vw !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
  color: #3F86D6 !important;
}

/* 大标题 */
.auth-page .auth-form-panel .auth-form-title {
  margin: 0.55vw 0 0 0 !important;
  font-size: 2.05vw !important;
  line-height: 1.28 !important;
  font-weight: 700 !important;
  color: var(--efp-title) !important;
  letter-spacing: .01em !important;
  gap: 1.26vw !important;
}

.auth-page .auth-form-panel .auth-form-desc {
  margin: .7vw 0 0 0 !important;
  font-size: .84vw !important;
  line-height: 1.8 !important;
  color: #8195AE !important;
}

/* 表单 */
.auth-page .auth-form-panel .auth-form {
  display: flex !important;
  flex-direction: column !important;
  gap: 1.48vw !important;
  margin: .55vw 0 0 0 !important;
  width: 100% !important;
  max-width: 26.2vw !important;
}

.auth-page .auth-form-panel .auth-field {
  display: flex !important;
  flex-direction: column !important;
  gap: .38vw !important;
  margin: 0 !important;
  position: relative !important;
}

.auth-page .auth-form-panel .auth-label {
  font-size: .76vw !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
  color: #4A6484 !important;
  letter-spacing: .02em !important;
}

.auth-page .auth-form-panel .auth-input {
  width: 100% !important;
  height: 3.4vw !important;
  min-height: 50px !important;
  max-height: 58px !important;
  padding: 0 .95vw 0 2.75vw !important;
  background-color: #FFFFFF !important;
  background-repeat: no-repeat !important;
  background-position: .95vw center !important;
  background-size: 1.05vw 1.05vw !important;
  border: 1px solid var(--efp-line) !important;
  border-radius: 9px !important;
  box-shadow: 0 1px 2px rgba(16, 54, 95, .03) !important;
  font-size: .86vw !important;
  color: #1B3350 !important;
  transition: border-color .16s ease, box-shadow .16s ease !important;
}

.auth-page .auth-form-panel .auth-input::placeholder {
  color: #9FB0C4 !important;
}

.auth-page .auth-form-panel .auth-input:focus {
  border-color: var(--efp-primary) !important;
  box-shadow: 0 0 0 3px rgba(15, 123, 216, .13) !important;
  outline: none !important;
}

/* 密码显隐按钮：加大点击命中区（≥44px），图标视觉尺寸不变 */
.auth-page .auth-form-panel .auth-eye {
  color: #9FB0C4 !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  right: 6px !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 3 !important;
  touch-action: manipulation !important;
}

.auth-page .auth-form-panel .auth-eye:hover {
  background: #F1F6FC !important;
  color: #3F86D6 !important;
}

.auth-page .auth-form-panel .auth-eye:active {
  background: #E4EEFA !important;
}

.auth-page .auth-form-panel .auth-eye:focus-visible {
  outline: 2px solid rgba(15, 123, 216, .45) !important;
  outline-offset: 2px !important;
}

.auth-page .auth-form-panel .auth-eye svg {
  width: 20px !important;
  height: 20px !important;
  pointer-events: none !important;
}

/* 密码框右侧为放大后的按钮预留空间，避免文字被遮挡 */
.auth-page .auth-form-panel .auth-field.has-eye .auth-input {
  padding-right: max(3vw, 58px) !important;
}

/* 记住我 / 忘记密码 */
.auth-page .auth-form-panel .ef-remember {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: .8vw !important;
  margin: .25vw 0 0 0 !important;
  padding: 0 !important;
}

.auth-page .auth-form-panel .ef-remember label {
  display: inline-flex !important;
  align-items: center !important;
  gap: .38vw !important;
  font-size: .76vw !important;
  color: #7E93AB !important;
  cursor: pointer !important;
  user-select: none !important;
}

.auth-page .auth-form-panel .ef-remember input[type="checkbox"] {
  width: .95vw !important;
  height: .95vw !important;
  min-width: 15px !important;
  min-height: 15px !important;
  margin: 0 !important;
  accent-color: var(--efp-primary) !important;
  cursor: pointer !important;
}

.auth-page .auth-form-panel .ef-forgot {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  font-size: .76vw !important;
  color: #3F86D6 !important;
  cursor: pointer !important;
}

.auth-page .auth-form-panel .ef-forgot:hover {
  color: var(--efp-primary-dark) !important;
}

/* 主按钮 */
.auth-page .auth-form-panel .auth-submit {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .5vw !important;
  width: 100% !important;
  height: 3.5vw !important;
  min-height: 50px !important;
  max-height: 56px !important;
  margin: .55vw 0 0 0 !important;
  padding: 0 1vw !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #1490EE 0%, #0A6FCB 100%) !important;
  background-color: #0F7BD8 !important;
  color: #FFFFFF !important;
  font-size: .92vw !important;
  font-weight: 600 !important;
  letter-spacing: .06em !important;
  box-shadow: 0 10px 22px rgba(15, 123, 216, .26) !important;
  cursor: pointer !important;
  transition: transform .14s ease, box-shadow .16s ease, filter .16s ease !important;
}

.auth-page .auth-form-panel .auth-submit:hover {
  filter: brightness(1.04) !important;
  box-shadow: 0 12px 26px rgba(15, 123, 216, .32) !important;
}

.auth-page .auth-form-panel .auth-submit:active {
  transform: translateY(1px) !important;
}

.auth-page .auth-form-panel .auth-submit::after {
  content: "" !important;
  display: block !important;
  width: .72vw !important;
  height: .72vw !important;
  min-width: 12px !important;
  min-height: 12px !important;
  border-top: 1.8px solid #FFFFFF !important;
  border-right: 1.8px solid #FFFFFF !important;
  transform: rotate(45deg) translate(-1px, 1px) !important;
  opacity: .95 !important;
}

.auth-page .auth-form-panel .auth-submit.is-loading::after {
  content: "" !important;
  width: 1vw !important;
  height: 1vw !important;
  border: 2px solid rgba(255, 255, 255, .45) !important;
  border-top-color: #FFFFFF !important;
  border-radius: 50% !important;
  transform: none !important;
  animation: efp-spin .7s linear infinite !important;
}

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

/* 注册入口 */
.auth-page .auth-form-panel .auth-switch {
  margin: .99vw 0 0 0 !important;
  font-size: .82vw !important;
  line-height: 1.6 !important;
  text-align: center !important;
  color: #8195AE !important;
}

.auth-page .auth-form-panel .auth-switch .auth-link {
  padding: 0 0 0 .2vw !important;
  border: 0 !important;
  background: transparent !important;
  font-size: inherit !important;
  color: #3F86D6 !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

/* 安全提示 */
.auth-page .auth-form-panel .ef-secure {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .35vw !important;
  margin: 1.0vw 0 0 0 !important;
  font-size: .72vw !important;
  line-height: 1.6 !important;
  color: #A3B3C4 !important;
}

.auth-page .auth-form-panel .ef-secure svg {
  width: .82vw !important;
  height: .82vw !important;
  min-width: 13px !important;
  min-height: 13px !important;
  stroke: currentColor !important;
  fill: none !important;
}

/* 错误/提示条在本风格下的收敛 */
.auth-page .auth-form-panel .auth-error,
.auth-page .auth-form-panel .auth-notice {
  margin: 0 !important;
  border-radius: 8px !important;
  font-size: .78vw !important;
  line-height: 1.6 !important;
}

/* ---------- 页脚 ---------- */
.auth-page .auth-copyright {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1.1vw !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
  padding: .4vw 2vw .45vw 2vw !important;
  background: #FFFFFF !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: .7vw !important;
  line-height: 1.6 !important;
  color: #B3C1D0 !important;
  text-align: center !important;
}

.auth-page .auth-copyright span {
  color: #AEBDCB !important;
}

.auth-page .auth-copyright .auth-copyright-link {
  color: #AEBDCB !important;
  text-decoration: none !important;
}

.auth-page .auth-copyright .auth-copyright-link:hover {
  color: #8EA3B8 !important;
}

.auth-page .auth-copyright .ef-service-time {
  display: inline-flex !important;
  align-items: center !important;
  gap: .5vw !important;
  color: #AEBDCB !important;
}

.auth-page .auth-copyright .ef-service-time::before {
  content: "" !important;
  display: block !important;
  width: 1px !important;
  height: .78vw !important;
  min-height: 12px !important;
  background: #E1E8F0 !important;
  margin-right: .55vw !important;
}

/* ---------- 中等屏（980–1180）字号回落 ---------- */
@media (max-width: 1180px) and (min-width: 981px) {
  .auth-page .auth-intro { padding: 4.2vw 2.4vw 0 4vw !important; }
  .auth-page .auth-brand .auth-brand-name { font-size: 17px !important; }
  .auth-page .auth-brand .ef-brand-sub { font-size: 10px !important; }
  .auth-page .auth-brand .ef-brand-en { font-size: 9px !important; }
  .auth-page .auth-intro .ef-eyebrow { font-size: 12px !important; margin-top: 10vh !important; }
  .auth-page .auth-intro .auth-headline { font-size: 38px !important; }
  .auth-page .auth-intro .auth-lead { font-size: 14px !important; max-width: 420px !important; }
  .auth-page .auth-intro .auth-point-text strong { font-size: 14px !important; }
  .auth-page .auth-intro .auth-point-text em { font-size: 12.5px !important; }
  .auth-page .auth-intro .ef-guardline { font-size: 12px !important; }
  .auth-page .auth-form-panel { padding: 5vw 0 2vw 0 !important; }
  .auth-page .auth-form-panel > * { max-width: 400px !important; }
  .auth-page .auth-form-panel .auth-tabs { width: 190px !important; max-width: 190px !important; }
  .auth-page .auth-form-panel .auth-tab { font-size: 13px !important; padding: 8px 0 !important; }
  .auth-page .auth-form-panel .ef-welcome { font-size: 13px !important; margin-top: 5vh !important; }
  .auth-page .auth-form-panel .auth-form-title { font-size: 27px !important; }
  .auth-page .auth-form-panel .auth-form-desc { font-size: 13.5px !important; }
  .auth-page .auth-form-panel .auth-form { max-width: 400px !important; gap: 16px !important; }
  .auth-page .auth-form-panel .auth-label { font-size: 12.5px !important; }
  .auth-page .auth-form-panel .auth-input {
    height: 52px !important; font-size: 14px !important; padding-left: 44px !important;
    background-position: 15px center !important; background-size: 17px 17px !important;
  }
  .auth-page .auth-form-panel .ef-remember label,
  .auth-page .auth-form-panel .ef-forgot { font-size: 12.5px !important; }
  .auth-page .auth-form-panel .auth-submit { height: 52px !important; font-size: 15px !important; }
  .auth-page .auth-form-panel .auth-switch { font-size: 13px !important; }
  .auth-page .auth-form-panel .ef-secure { font-size: 11.5px !important; }
  .auth-page .auth-copyright { font-size: 11.5px !important; padding: 12px 20px 14px 20px !important; }
}

/* ---------- 窄屏 / 移动端：单列，先表单后简介 ---------- */
@media (max-width: 980px) {
  .auth-page .auth-shell {
    grid-template-columns: 1fr !important;
    grid-auto-rows: min-content !important;
  }
  .auth-page .auth-form-panel {
    order: 1 !important;
    padding: 34px 24px 12px 24px !important;
    align-items: stretch !important;
  }
  .auth-page .auth-form-panel > * {
    max-width: 420px !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .auth-page .auth-form-panel .auth-tabs {
    width: 186px !important;
    max-width: 186px !important;
    min-width: 0 !important;
    align-self: flex-start !important;
    margin: 0 !important;
  }
  .auth-page .auth-form-panel .auth-tab { font-size: 13px !important; padding: 8px 0 !important; }
  .auth-page .auth-form-panel .ef-welcome { margin-top: 26px !important; font-size: 13px !important; }
  .auth-page .auth-form-panel .auth-form-title { font-size: 25px !important; }
  .auth-page .auth-form-panel .auth-form-desc { font-size: 13px !important; }
  .auth-page .auth-form-panel .auth-form { max-width: 420px !important; gap: 15px !important; margin-top: 20px !important; }
  .auth-page .auth-form-panel .auth-label { font-size: 12.5px !important; }
  .auth-page .auth-form-panel .auth-input {
    height: 50px !important; font-size: 14px !important;
    padding-left: 44px !important; background-position: 15px center !important; background-size: 17px 17px !important;
  }
  .auth-page .auth-form-panel .auth-submit { height: 50px !important; font-size: 15px !important; }
  .auth-page .auth-form-panel .ef-secure { margin-top: 18px !important; font-size: 11.5px !important; }
  .auth-page .auth-form-panel .auth-switch { font-size: 13px !important; }

  .auth-page .auth-intro {
    order: 2 !important;
    padding: 30px 24px 26px 24px !important;
  }
  .auth-page .auth-brand .auth-brand-mark { width: 38px !important; height: 38px !important; }
  .auth-page .auth-brand .auth-brand-name { font-size: 17px !important; }
  .auth-page .auth-brand .ef-brand-sub { font-size: 9.5px !important; }
  .auth-page .auth-brand .ef-brand-en { font-size: 9px !important; }
  .auth-page .auth-intro .ef-eyebrow { margin-top: 22px !important; font-size: 12px !important; }
  .auth-page .auth-intro .auth-headline { font-size: 26px !important; margin-top: 8px !important; }
  .auth-page .auth-intro .auth-lead { font-size: 13px !important; max-width: none !important; margin-top: 10px !important; line-height: 1.9 !important; }
  .auth-page .auth-intro .auth-points { gap: 14px !important; margin-top: 18px !important; }
  .auth-page .auth-intro .auth-points li .ef-point-icon { width: 32px !important; height: 32px !important; }
  .auth-page .auth-intro .auth-points li { column-gap: 10px !important; }
  .auth-page .auth-intro .auth-point-text strong { font-size: 13.5px !important; }
  .auth-page .auth-intro .auth-point-text em { font-size: 12px !important; }
  .auth-page .auth-intro .ef-guardline { margin-top: 18px !important; padding: 0 !important; font-size: 11.5px !important; flex-wrap: wrap !important; }

  .auth-page .auth-copyright { font-size: 11px !important; gap: 8px !important; padding: 12px 16px 16px 16px !important; }
}

@media (max-width: 560px) {
  .auth-page .auth-intro { display: none !important; }
  .auth-page .auth-form-panel { padding: 26px 18px 10px 18px !important; }
  .auth-page .auth-form-panel .auth-form-title { font-size: 23px !important; }
}

/* 减少动效偏好 */
@media (prefers-reduced-motion: reduce) {
  .auth-page .auth-form-panel .auth-submit,
  .auth-page .auth-form-panel .auth-tab,
  .auth-page .auth-form-panel .auth-input { transition: none !important; }
  .auth-page .auth-form-panel .auth-submit.is-loading::after { animation: none !important; }
}


/* ---------- 左栏右下装饰（对齐参考图悬浮平台） ---------- */
.auth-page .auth-intro .ef-art {
  position: absolute !important;
  right: 1.5vw !important;
  bottom: 3.6vw !important;
  width: 25vw !important;
  max-width: 420px !important;
  min-width: 220px !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: .95 !important;
}
.auth-page .auth-intro .ef-art svg { display: block !important; width: 100% !important; height: auto !important; }
.auth-page .auth-intro .auth-brand,
.auth-page .auth-intro .ef-eyebrow,
.auth-page .auth-intro .auth-headline,
.auth-page .auth-intro .auth-lead,
.auth-page .auth-intro .auth-points,
.auth-page .auth-intro .ef-guardline {
  position: relative !important;
  z-index: 1 !important;
}

.auth-page .auth-intro .auth-headline .ef-hl-1 { color: #10305C !important; }
.auth-page .auth-intro .auth-headline .ef-hl-2 { color: #2E86DE !important; }
.auth-page .auth-intro .auth-points li .ef-point-icon { border-radius: 50% !important; }
.auth-page .auth-intro .auth-points li.ef-point--blue .ef-point-icon { background: #EAF2FE !important; border-color: #D7E6FA !important; color: #2E7BD6 !important; }
.auth-page .auth-intro .auth-points li.ef-point--green .ef-point-icon { background: #E9F7F0 !important; border-color: #D5EEE3 !important; color: #24A06A !important; }
.auth-page .auth-intro .auth-points li.ef-point--coral .ef-point-icon { background: #FDEFEC !important; border-color: #F8DDD6 !important; color: #E2714F !important; }
.auth-page .auth-intro .ef-art { bottom: 1.6vw !important; width: 19vw !important; }

.auth-page .auth-intro .auth-points li { margin-left: .9vw !important; }

.auth-page .auth-intro .ef-guardline .ef-guard-line2 { color: #8FA6BE !important; }

/* ---------- 页脚归位到右栏底部（对齐参考图） ---------- */
.auth-page .auth-copyright {
  position: absolute !important;
  left: 56.4% !important;
  right: 0 !important;
  bottom: 6.2vw !important;
  padding: 0 !important;
  background: transparent !important;
  font-size: .62vw !important;
  gap: .6vw !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  z-index: 2 !important;
}
.auth-page .auth-copyright .ef-serve-time,
.auth-page .auth-copyright .ef-service-time { display: none !important; }
.auth-page .auth-copyright {
  bottom: 0 !important;
  padding: 1.35vw 0 .55vw 0 !important;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, #FFFFFF 55%, #FFFFFF 100%) !important;
}

/* 左栏底部留白：吊牌文案不贴屏幕边 */
.auth-page .auth-intro { padding-bottom: 3.6vw !important; }

/* 登录/注册页锁定视口高度，右栏内容超出时内部滚动，绝不压页脚 */
.auth-page { height: 100vh !important; min-height: 0 !important; overflow: hidden !important; }
.auth-page .auth-shell { height: 100% !important; min-height: 0 !important; }
.auth-page .auth-form-panel { max-height: 100% !important; }
.auth-page .auth-form-panel::-webkit-scrollbar { width: 6px !important; }
.auth-page .auth-form-panel::-webkit-scrollbar-thumb { background: #D9E3EE !important; border-radius: 99px !important; }
.auth-page .auth-form-panel::-webkit-scrollbar-track { background: transparent !important; }
.auth-page .auth-form-panel .auth-tabs { align-self: flex-start !important; margin-left: 8.67vw !important; }

/* 参考图右栏无独立注册切换行（注册入口在顶部 Tab） */
.auth-page .auth-form-panel .auth-switch { display: flex !important; margin: 1.85vw 0 0 0 !important; }
.auth-page .auth-form-panel .ef-secure { display: none !important; }

/* 参考图按钮带柔和投影 */
.auth-page .auth-form-panel .auth-submit {
  box-shadow: 0 .55vw 1.35vw rgba(23,101,204,.26) !important;
}

/* 记住我：未选中态灰字（对齐参考图） */
.auth-page .auth-form-panel .ef-remember label { color: #90A4BA !important; }
