/* ============================================================
   wow-v3.css — WOW GLOBAL 统一 Web3 设计系统（深海军蓝 · 科技蓝 · 青绿）
   应用于 presale / rewards / team / team-admin
   覆盖层：加载在页面既有 CSS 之后，强制统一主题与共享组件
   ============================================================ */

/* ---------- 全局设计令牌 ---------- */
:root {
  --wv-bg: #04101f;
  --wv-bg-2: #071a33;
  --wv-bg-glow-a: rgba(29, 99, 242, 0.10);
  --wv-bg-glow-b: rgba(6, 182, 212, 0.08);

  --wv-surface: #ffffff;
  --wv-surface-2: #f4f8fd;
  --wv-surface-3: #eaf3fd;

  --wv-text: #12223f;
  --wv-text-2: #4d6b93;
  --wv-text-3: #7d93b6;

  --wv-blue: #1d63f2;
  --wv-blue-2: #3b82f6;
  --wv-teal: #06b6d4;
  --wv-teal-2: #22d3ee;

  --wv-success: #10b981;
  --wv-success-2: #34d399;
  --wv-warn: #fbbf24;
  --wv-error: #ef4565;
  --wv-info: #38bdf8;

  --wv-border: #dde8f6;
  --wv-border-strong: #c6d7f0;
  --wv-border-soft: rgba(168, 200, 235, 0.22);
  --wv-shadow-sm: 0 4px 14px rgba(4, 16, 31, 0.06);
  --wv-shadow: 0 14px 38px rgba(4, 16, 31, 0.10);
  --wv-shadow-lg: 0 28px 70px rgba(3, 10, 24, 0.24);

  --wv-grad-primary: linear-gradient(135deg, #1d63f2 0%, #06b6d4 100%);
  --wv-grad-page: radial-gradient(1100px 600px at 82% -8%, rgba(29,99,242,0.16), transparent 60%),
                  radial-gradient(900px 520px at 8% 110%, rgba(6,182,212,0.12), transparent 60%),
                  linear-gradient(160deg, #04101f 0%, #051a33 55%, #07244a 100%);
  --wv-grad-text: linear-gradient(115deg, #22d3ee 0%, #3b82f6 70%);

  --wv-radius: 16px;
  --wv-radius-sm: 12px;
  --wv-radius-xs: 9px;
  --wv-gap: 14px;
  --wv-field-h: 46px;
  --wv-btn-h: 46px;
  --wv-maxw: 1320px;

  --wv-font: "Inter", "PingFang SC", "Microsoft YaHei", -apple-system, "Segoe UI", Roboto, sans-serif;
  --wv-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;
}

/* ============================================================
   深海军蓝动态背景（应用到各页面 body）
   ============================================================ */
body.presale-page,
body.rewards-page,
body.team-page,
body.ta-page {
  background: var(--wv-grad-page) !important;
  background-attachment: fixed;
  color: var(--wv-text);
}

/* 顶部导航：深色玻璃感，统一所有页面 */
body.presale-page .topbar,
body.rewards-page .topbar {
  background: rgba(5, 20, 42, 0.72) !important;
  border-color: var(--wv-border-soft) !important;
  box-shadow: 0 8px 30px rgba(3, 10, 24, 0.35) !important;
  backdrop-filter: blur(18px) saturate(1.3);
  -webkit-backdrop-filter: blur(18px) saturate(1.3);
}
body.presale-page .brand-copy strong,
body.rewards-page .brand-copy strong,
body.presale-page .nav-links a,
body.rewards-page .nav-links a,
body.presale-page .portal-wallet-button,
body.rewards-page .portal-wallet-button,
body.presale-page .notification-button,
body.rewards-page .notification-button { color: #eaf2ff; }
body.presale-page .brand-copy small,
body.rewards-page .brand-copy small { color: #8fa8d0; }
body.presale-page .nav-links a.active,
body.rewards-page .nav-links a.active { color: var(--wv-teal-2); }
body.presale-page .nav-links a::after,
body.rewards-page .nav-links a::after { background: var(--wv-grad-primary); }
body.presale-page .menu-toggle span,
body.rewards-page .menu-toggle span { background: #dbe6ff; }
body.presale-page .portal-wallet-button,
body.rewards-page .portal-wallet-button {
  color: #fff !important;
  border-color: var(--wv-border-soft) !important;
  background: linear-gradient(135deg, rgba(29,99,242,0.55), rgba(6,182,212,0.4)) !important;
}

/* ============================================================
   共享组件：按钮
   ============================================================ */
.wv-btn,
.wv-btn-primary,
body.team-page .tm-btn-primary,
body.ta-page .ta-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: var(--wv-btn-h);
  padding: 0 24px;
  border: 0;
  border-radius: 999px;
  background: var(--wv-grad-primary);
  color: #fff;
  font-family: inherit;
  font-size: 14.5px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 12px 26px rgba(29, 99, 242, 0.30);
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.wv-btn:hover:not(:disabled),
.wv-btn-primary:hover:not(:disabled),
body.team-page .tm-btn-primary:hover:not(:disabled),
body.ta-page .ta-btn-primary:hover:not(:disabled) { transform: translateY(-1px); box-shadow: 0 16px 34px rgba(29, 99, 242, 0.42); }
.wv-btn:disabled,
.wv-btn-primary:disabled,
body.team-page .tm-btn-primary:disabled,
body.ta-page .ta-btn-primary:disabled { opacity: 0.55; cursor: not-allowed; box-shadow: none; }

.wv-btn-ghost,
.wv-btn-secondary,
body.team-page .tm-btn-ghost,
body.ta-page .ta-btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 44px;
  padding: 0 20px;
  border: 1px solid var(--wv-border-strong);
  border-radius: 999px;
  background: #fff;
  color: var(--wv-text);
  font-family: inherit;
  font-size: 13.5px;
  font-weight: 700;
  cursor: pointer;
  transition: border-color .18s ease, color .18s ease, background .18s ease;
}
.wv-btn-ghost:hover,
body.ta-page .ta-btn-ghost:hover { border-color: var(--wv-blue-2); color: var(--wv-blue); background: var(--wv-surface-3); }
.wv-btn-ghost:disabled,
body.ta-page .ta-btn-ghost:disabled { opacity: 0.5; cursor: not-allowed; }

/* ============================================================
   共享组件：卡片 / 数据指标卡
   ============================================================ */
.wv-card,
body.team-page .tm-tier,
body.team-page .tm-income-card,
body.ta-page .ta-panel,
body.ta-page .ta-card,
body.ta-page .ta-stats article {
  background: var(--wv-surface) !important;
  border: 1px solid var(--wv-border) !important;
  border-radius: var(--wv-radius) !important;
  box-shadow: var(--wv-shadow-sm) !important;
}

.wv-overview,
.overview-card,
.asset-panel {
  background: var(--wv-surface);
  border: 1px solid var(--wv-border);
  border-radius: var(--wv-radius);
  box-shadow: var(--wv-shadow-sm);
}

/* ============================================================
   共享组件：金额与地址（抗溢出 / 换行 / 省略）
   ============================================================ */
.wv-mono, .wv-address, .wv-hash, .wv-txid, .wv-amount-big,
.ta-wallet-cell, .ta-hash-cell, .ta-wallet-chip,
.wv-ledger-hash, .wv-order-id {
  font-family: var(--wv-mono);
  word-break: break-all;
  overflow-wrap: anywhere;
}
.wv-ellipsis { display: inline-block; max-width: 100%; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; vertical-align: bottom; }

/* ============================================================
   共享组件：状态标签
   ============================================================ */
.wv-chip,
body.ta-page .ta-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 24px;
  padding: 3px 11px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 700;
  white-space: nowrap;
}
.wv-chip::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; opacity: .9; }

.wv-chip-success, .wv-chip-confirmed, .wv-chip-complete,
.ta-chip.open, .ta-chip.paid, .ta-chip.approved { background: rgba(16,185,129,.13); color: #059669; }
.wv-chip-pending, .wv-chip-processing, .wv-chip-review { background: rgba(251,191,36,.16); color: #b45309; }
.wv-chip-rejected, .wv-chip-failed, .wv-chip-refund { background: rgba(239,69,101,.12); color: var(--wv-error); }
.wv-chip-info, .wv-chip-closed, .wv-chip-accrued { background: rgba(56,189,248,.14); color: #0369a1; }
.wv-chip-muted, .ta-chip.closed { background: rgba(125,147,182,.14); color: var(--wv-text-2); }
.wv-chip-debt { background: rgba(244,114,182,.13); color: #be185d; }
.wv-chip-locked { background: rgba(148,163,184,.16); color: #334155; }

/* ============================================================
   共享组件：进度条
   ============================================================ */
.wv-progress,
body.ta-page .ta-progress {
  height: 12px;
  border-radius: 999px;
  background: var(--wv-surface-3);
  border: 1px solid var(--wv-border);
  overflow: hidden;
}
.wv-progress > i,
body.ta-page .ta-progress > i {
  display: block; height: 100%;
  border-radius: 999px;
  max-width: 100%;
  background: var(--wv-grad-primary);
  transition: width .7s cubic-bezier(.22,1,.36,1);
}

/* ============================================================
   共享组件：Toast / Modal
   ============================================================ */
body.team-page .tm-toast,
body.ta-page .ta-toast {
  background: var(--wv-bg-2) !important;
  border: 1px solid var(--wv-border-soft);
  color: #fff !important;
  box-shadow: var(--wv-shadow-lg) !important;
}
body.ta-page .ta-toast.is-error { background: var(--wv-error) !important; }
body.ta-page .ta-modal-mask { background: rgba(3, 10, 24, 0.62); }
body.ta-page .ta-modal-card {
  background: var(--wv-surface);
  border: 1px solid var(--wv-border);
  box-shadow: var(--wv-shadow-lg);
}

/* ============================================================
   共享组件：加载骨架
   ============================================================ */
.wv-skeleton {
  position: relative;
  overflow: hidden;
  background: linear-gradient(90deg, var(--wv-surface-3) 25%, var(--wv-border-soft) 45%, var(--wv-surface-3) 65%);
  background-size: 200% 100%;
  animation: wv-shimmer 1.4s infinite linear;
  border-radius: 10px;
}
@keyframes wv-shimmer { to { background-position: -200% 0; } }

/* ============================================================
   共享组件：空态 / 错误态 / 重试
   ============================================================ */
.wv-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 44px 20px;
  text-align: center;
  color: var(--wv-text-3);
}
.wv-empty .wv-empty-icon { width: 52px; height: 52px; border-radius: 16px; display: flex; align-items: center; justify-content: center; font-size: 24px; background: var(--wv-surface-3); border: 1px solid var(--wv-border); }
.wv-empty b { color: var(--wv-text-2); font-size: 15px; }
.wv-empty p { margin: 0; font-size: 13px; max-width: 380px; line-height: 1.6; }
.wv-empty.is-error b { color: var(--wv-error); }
.wv-retry { display: inline-flex; gap: 8px; }

/* ============================================================
   响应式微调
   ============================================================ */
@media (max-width: 560px) {
  .wv-card, body.team-page .tm-tier, body.ta-page .ta-panel, .asset-panel { border-radius: 16px; }
}

/* ============================================================
   v3 Navy Envelope - 深海军蓝背景透出（去外壳浅色块）
   ============================================================ */
body.rewards-page .site-shell { background: transparent !important; }
body.presale-page .presale-shell { background: transparent !important; }
body.ta-page .ta-main, body.ta-page .ta-body { background: transparent !important; }
body.team-page main { background: transparent !important; }

body.rewards-page .rewards-main .rewards-page-head h1,
body.rewards-page .rewards-main .eyebrow { color: #eaf2ff !important; }
body.rewards-page .rewards-main .rewards-page-head p { color: #a9c2e8 !important; }
body.rewards-page .rewards-back { color: var(--wv-teal-2) !important; }
body.presale-page main, body.presale-page main * { box-sizing: border-box; }

/* v3 team Hero 深蓝上的浅色标题 */
body.team-page .tm-hero h1,
body.team-page .tm-hero h1 > span,
body.team-page .tm-hero h1 em {
  color: #f0f6ff !important;
  -webkit-text-fill-color: currentColor !important;
  text-shadow: 0 2px 18px rgba(2, 8, 22, 0.35);
}
body.team-page .tm-hero .tm-eyebrow,
body.team-page .tm-hero-lead { color: #c7dcf7 !important; }
body.team-page .tm-hero-tags li { color: #d4e4fc; border-color: rgba(168, 200, 235, 0.26); }
body.team-page .tm-hero-tags li::before { background: var(--wv-teal-2, #22d3ee); }
body.team-page .tm-hero h1 em {
  background: linear-gradient(110deg, #67e8f9 0%, #7cc4ff 55%, #a6f36c 100%);
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

