/* ══════════════════════════════════════════════════════════════
   Zeros2One iOS — 登录页
   完整对齐 admin.onoffbusiness.com/login
   主色 #2dd08c | 背景 #f6f8f8 | 文字 #273348 | 字体 Inter
   ══════════════════════════════════════════════════════════════ */

:root {
  --z-primary:   #2dd08c;
  --z-primary-d: #25b87a;
  --z-primary-a: #1fa46c;
  --z-bg:        #f6f8f8;
  --z-text:      #273348;
  --z-text-dim:  #6b7688;
  --z-placeholder:#9aa2af;
  --z-border:    #e1e3e6;
  --z-border-2:  #bec1c8;
  --z-white:     #ffffff;
}

/* ══════════════════════════════════════════════════════════════
   全局
   ══════════════════════════════════════════════════════════════ */
body:has(.login-background) {
  background: var(--z-bg) !important;
  color: var(--z-text) !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
               "Helvetica Neue", Arial, "Noto Sans", sans-serif !important;
  -webkit-font-smoothing: antialiased;
}

body:has(.login-background)::before,
body:has(.login-background)::after { display: none !important; }

/* 原模糊层：极淡品牌色晕染（参考站也有轻微渐变）*/
.login-background[data-v-4cf73944] {
  background:
    radial-gradient(900px 600px at 50% 10%, rgba(45, 208, 140, .06), transparent 72%) !important;
  filter: blur(60px) !important;
  opacity: 1 !important;
}

/* 主容器 */
[data-v-4cf73944].flex.min-h-full {
  background: var(--z-bg) !important;
}

/* ── 居中模式的卡片容器 ── */
[data-v-4cf73944] > div:has(> .login-background) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ══════════════════════════════════════════════════════════════
   LOGO 区（左上角）
   ══════════════════════════════════════════════════════════════ */
[data-v-4cf73944] .absolute.top-0.left-0.z-10 p {
  color: var(--z-text) !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
  letter-spacing: -.01em !important;
  text-shadow: none !important;
}
[data-v-4cf73944] .absolute.top-0.left-0 img { filter: none !important; }

/* ══════════════════════════════════════════════════════════════
   登录卡片 —— 对齐参考站 content 600×520
   ══════════════════════════════════════════════════════════════ */
[data-v-4cf73944] .rounded-3xl.pb-20 {
  position: relative;
  width: 100% !important;
  max-width: 600px !important;
  margin: 0 auto !important;
  background: var(--z-white) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1px solid var(--z-border) !important;
  border-radius: 16px !important;
  box-shadow:
    0 1px 2px rgba(39, 51, 72, .04),
    0 6px 24px rgba(39, 51, 72, .06) !important;
}
[data-v-4cf73944] .rounded-3xl.pb-20::before { display: none !important; }

/* 卡片内边距（参考站 header 40px 上下 + form 40px）*/
[data-v-4cf73944] .rounded-3xl.pb-20 > form,
[data-v-4cf73944] .rounded-3xl.pb-20 > div {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

/* ══════════════════════════════════════════════════════════════
   标题区 —— 对齐参考站 h2 32px/600
   ══════════════════════════════════════════════════════════════ */
[data-v-4cf73944] h1, [data-v-4cf73944] h2, [data-v-4cf73944] h3 {
  color: var(--z-text) !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
}

/* 「欢迎回来 👋🏻」*/
[data-v-4cf73944] h1, [data-v-4cf73944] .ant-typography h1 {
  font-size: 32px !important;
  line-height: 1.3 !important;
}

/* 副标题 —— 参考站 14px 灰色两行 */
[data-v-4cf73944] .text-muted-foreground {
  color: var(--z-text-dim) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  margin-top: 8px !important;
}

/* ══════════════════════════════════════════════════════════════
   输入框 —— 对齐参考站 520×44 / radius 10 / border #bec1c8
   ══════════════════════════════════════════════════════════════ */
[data-v-4cf73944] input:not([type="checkbox"]),
[data-v-4cf73944] .ant-input,
[data-v-4cf73944] .ant-input-affix-wrapper {
  height: 44px !important;
  background: var(--z-white) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: 10px !important;
  color: #000 !important;
  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  padding: 12px 15px !important;
  box-shadow: none !important;
  transition: border-color .18s ease, box-shadow .18s ease !important;
}
[data-v-4cf73944] input::placeholder {
  color: var(--z-placeholder) !important;
  font-size: 14px !important;
}
[data-v-4cf73944] input:focus:not([type="checkbox"]),
[data-v-4cf73944] .ant-input-affix-wrapper-focused {
  border-color: var(--z-primary) !important;
  box-shadow: 0 0 0 3px rgba(45, 208, 140, .13) !important;
  outline: none !important;
}

[data-v-4cf73944] .ant-input-prefix svg,
[data-v-4cf73944] .ant-input-suffix svg {
  color: var(--z-placeholder) !important;
  opacity: 1 !important;
}

/* 表单间距 */
[data-v-4cf73944] .ant-form-item {
  margin-bottom: 18px !important;
}

/* 标签 */
[data-v-4cf73944] label,
[data-v-4cf73944] .ant-form-item-label > label {
  color: var(--z-text) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  margin-bottom: 6px !important;
}

/* ══════════════════════════════════════════════════════════════
   登录按钮 —— 对齐参考站 520×44 / radius 999px / #2dd08c
   ══════════════════════════════════════════════════════════════ */
[data-v-4cf73944] button[aria-label="login"] {
  width: 100% !important;
  height: 44px !important;
  background: var(--z-primary) !important;
  border: none !important;
  border-radius: 999px !important;
  color: #fff !important;
  font-family: Inter, sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  padding: 0 22px !important;
  box-shadow: none !important;
  transition: background .18s ease !important;
  position: relative;
  overflow: hidden;
}
[data-v-4cf73944] button[aria-label="login"]::after { display: none !important; }
[data-v-4cf73944] button[aria-label="login"]:hover {
  background: var(--z-primary-d) !important;
  transform: none !important;
  filter: none !important;
  box-shadow: none !important;
}
[data-v-4cf73944] button[aria-label="login"]:active {
  background: var(--z-primary-a) !important;
}
[data-v-4cf73944] button[aria-label="login"]:disabled {
  opacity: .55 !important;
  cursor: not-allowed !important;
}

/* ── 复选框 + 记住账号 ── */
[data-v-4cf73944] .ant-checkbox-wrapper,
[data-v-4cf73944] .ant-checkbox + span {
  color: var(--z-text-dim) !important;
  font-size: 14px !important;
}
[data-v-4cf73944] .ant-checkbox-inner {
  width: 18px !important;
  height: 18px !important;
  background: var(--z-white) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: 4px !important;
}
[data-v-4cf73944] .ant-checkbox-checked .ant-checkbox-inner {
  background: var(--z-primary) !important;
  border-color: var(--z-primary) !important;
  box-shadow: none !important;
}

/* ── 链接 ── */
[data-v-4cf73944] .vben-link {
  color: var(--z-primary) !important;
  text-decoration: none !important;
  text-shadow: none !important;
  font-size: 14px !important;
}
[data-v-4cf73944] .vben-link:hover {
  color: var(--z-primary-d) !important;
  text-decoration: underline !important;
}

/* ── 底部版权 ── */
[data-v-4cf73944] .absolute.bottom-3,
[data-v-4cf73944] .text-muted-foreground.text-xs {
  color: var(--z-placeholder) !important;
  font-size: 12px !important;
  letter-spacing: 0 !important;
}

/* ── 暗色模式 ── */
.dark body:has(.login-background) { background: #0f1419 !important; }
.dark[data-v-4cf73944] .rounded-3xl.pb-20 {
  background: #171c24 !important;
  border-color: #252b35 !important;
}
.dark[data-v-4cf73944] input:not([type="checkbox"]) {
  background: #1a2029 !important;
  border-color: #2a323d !important;
  color: #e8eef8 !important;
}

/* ── 响应式 ── */
@media (max-width: 768px) {
  [data-v-4cf73944] .rounded-3xl.pb-20 {
    max-width: 100% !important;
    margin: 0 16px !important;
    border-radius: 14px !important;
  }
  [data-v-4cf73944] .rounded-3xl.pb-20 > form,
  [data-v-4cf73944] .rounded-3xl.pb-20 > div {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  [data-v-4cf73944] h1 { font-size: 26px !important; }
}
