/* =========================================================================
   theme-divine.css — Seki AI / 神性审判主题
   Ivory white · hairline gold · 衬线 · 极简对称 · 天顶光
   ========================================================================= */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,400&family=Noto+Serif+SC:wght@300;400;500;600&display=swap');

:root,
html,
body {
  --bg:             #fafaf7 !important;
  --bg-0:           #ffffff !important;
  --bg-1:           #fafaf7 !important;
  --bg-2:           #f3f1ea !important;
  --bg2:            #fafaf7 !important;
  --bg3:            #f3f1ea !important;
  --panel:          rgba(255, 255, 255, 0.78) !important;
  --panel-2:        rgba(250, 250, 247, 0.92) !important;
  --glass:          rgba(10, 10, 10, 0.02) !important;
  --glass2:         rgba(10, 10, 10, 0.04) !important;

  --ink:            #0a0a0a;
  --ink-soft:       #1a1a1a;
  --stone:          #4a4a4a;
  --ash:            #6b6b6b;
  --mist:           #8a8a8a;
  --whisper:        #b8b8b8;

  --gold:           #b8a06a !important;
  --gold-bright:    #d4b87a !important;
  --gold-deep:      #8a7548;
  --ivory:          #f5f0e4;
  --parchment:      #ebe4d1;

  --blood:          #6b0a14;
  --rose:           #8b0000;

  --text:           #0a0a0a !important;
  --text-dim:       #4a4a4a !important;
  --text-mute:      #8a8a8a !important;
  --tx:             #0a0a0a !important;
  --tx2:            #4a4a4a !important;
  --tx3:            #8a8a8a !important;
  --muted:          #8a8a8a !important;

  --accent:         #b8a06a !important;
  --accent-2:       #0a0a0a !important;
  --accent-3:       #8a7548 !important;
  --primary:        #0a0a0a !important;
  --secondary:      #b8a06a !important;
  --p:              #b8a06a !important;
  --p2:             #8a7548 !important;
  --pl:             rgba(184, 160, 106, 0.12) !important;
  --cyan:           #b8a06a !important;
  --purple:         #0a0a0a !important;

  --gr:             #2d6a4f !important;
  --re:             #8b0000 !important;

  --bd:             rgba(10, 10, 10, 0.08) !important;
  --bd2:            rgba(10, 10, 10, 0.14) !important;
  --border:         rgba(10, 10, 10, 0.08) !important;
  --border-strong:  rgba(184, 160, 106, 0.45) !important;
  --divider:        rgba(10, 10, 10, 0.06) !important;

  --chain-accent:   #b8a06a !important;

  --glow-gold:      0 0 0 1px rgba(184, 160, 106, 0.25) !important;
  --glow-cyan:      0 0 0 1px rgba(184, 160, 106, 0.25) !important;
  --shadow-deep:    0 1px 2px rgba(10, 10, 10, 0.04), 0 12px 48px rgba(10, 10, 10, 0.06) !important;

  --radius:         0px !important;
  --radius-lg:      2px !important;

  --font-display:   'Cinzel', 'Noto Serif SC', 'Times New Roman', serif !important;
  --font-serif:     'Cormorant Garamond', 'Noto Serif SC', 'Times New Roman', serif !important;
  --font-mono:      'Cormorant Garamond', 'Georgia', serif !important;
  --font:           'Cormorant Garamond', 'Noto Serif SC', 'Times New Roman', serif !important;
}

/* ---------- 全局：纸白底 + 天顶光 ---------- */
html, body {
  background: #fafaf7 !important;
  color: var(--ink) !important;
  font-family: 'Cormorant Garamond', 'Noto Serif SC', 'Times New Roman', serif !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
  letter-spacing: 0.01em !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body {
  background:
    radial-gradient(ellipse 900px 500px at 50% -100px, rgba(184, 160, 106, 0.10), transparent 70%),
    radial-gradient(ellipse 1400px 700px at 50% 0%, rgba(255, 250, 235, 0.6), transparent 60%),
    #fafaf7 !important;
  background-attachment: fixed !important;
  position: relative;
}

/* 极细的颗粒感（羊皮纸） */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background-image:
    radial-gradient(circle at 25% 35%, rgba(10,10,10,0.015) 1px, transparent 1.5px),
    radial-gradient(circle at 75% 65%, rgba(10,10,10,0.012) 1px, transparent 1.5px);
  background-size: 3px 3px, 5px 5px;
  mix-blend-mode: multiply;
  opacity: 0.6;
}

/* 顶部"神之眼"隐约光晕 */
body::after {
  content: "";
  position: fixed;
  top: -200px;
  left: 50%;
  transform: translateX(-50%);
  width: 600px;
  height: 600px;
  pointer-events: none;
  z-index: 0;
  background: radial-gradient(circle, rgba(184, 160, 106, 0.08) 0%, transparent 60%);
  filter: blur(40px);
}

/* ---------- 标题 ---------- */
h1, h2, h3, h4, h5, h6,
.hero-title, .section-title, .card-title {
  font-family: 'Cinzel', 'Noto Serif SC', serif !important;
  color: var(--ink) !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: none !important;
  text-shadow: none !important;
}

h1 { font-weight: 400 !important; letter-spacing: 0.12em !important; }

/* ---------- 导航（玻璃白 + 金线） ---------- */
.nav,
nav.nav {
  background: rgba(255, 255, 255, 0.72) !important;
  backdrop-filter: blur(24px) saturate(1.2) !important;
  -webkit-backdrop-filter: blur(24px) saturate(1.2) !important;
  border-bottom: 1px solid rgba(184, 160, 106, 0.3) !important;
  box-shadow: 0 1px 0 rgba(10, 10, 10, 0.02) !important;
}

.nav-logo-name {
  font-family: 'Cinzel', serif !important;
  font-weight: 600 !important;
  color: var(--ink) !important;
  letter-spacing: 0.15em !important;
}
.nav-logo-sub {
  color: var(--gold-deep) !important;
  letter-spacing: 0.35em !important;
  font-family: 'Cinzel', serif !important;
}
.nav-logo-avatar {
  border: 1px solid rgba(184, 160, 106, 0.5) !important;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.8), 0 0 0 4px rgba(184, 160, 106, 0.2) !important;
  filter: grayscale(0.3) contrast(1.05);
}

.nl, .nav-links button {
  background: transparent !important;
  border: none !important;
  color: var(--stone) !important;
  font-family: 'Cinzel', 'Noto Serif SC', serif !important;
  font-weight: 400 !important;
  font-size: 13px !important;
  letter-spacing: 0.12em !important;
  padding: 8px 14px !important;
  position: relative;
  transition: color 0.3s ease !important;
  text-transform: none !important;
}
.nl:hover { color: var(--ink) !important; }
.nl.on, .nl.active {
  color: var(--ink) !important;
}
.nl.on::after, .nl.active::after {
  content: "";
  position: absolute;
  bottom: 2px;
  left: 50%;
  transform: translateX(-50%);
  width: 16px;
  height: 1px;
  background: var(--gold) !important;
}

/* ---------- 钱包按钮 ---------- */
.nav-wallet, #wbtn {
  background: var(--ink) !important;
  color: #fafaf7 !important;
  border: 1px solid var(--ink) !important;
  border-radius: 0 !important;
  font-family: 'Cinzel', serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  font-size: 12px !important;
  padding: 10px 22px !important;
  transition: all 0.3s ease !important;
}
.nav-wallet:hover, #wbtn:hover {
  background: #fafaf7 !important;
  color: var(--ink) !important;
  border-color: var(--gold) !important;
}

/* ---------- 通用按钮 ---------- */
button, .btn, .btns, .btnp, .btn-primary, .btn-secondary {
  border-radius: 0 !important;
  font-family: 'Cinzel', 'Noto Serif SC', serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  transition: all 0.25s ease !important;
  text-transform: none !important;
}

.btnp, .btn-primary {
  background: var(--ink) !important;
  color: #fafaf7 !important;
  border: 1px solid var(--ink) !important;
  box-shadow: none !important;
}
.btnp:hover, .btn-primary:hover {
  background: #fafaf7 !important;
  color: var(--ink) !important;
  border-color: var(--ink) !important;
}

.btns, .btn-secondary {
  background: transparent !important;
  color: var(--ink) !important;
  border: 1px solid rgba(10, 10, 10, 0.3) !important;
}
.btns:hover, .btn-secondary:hover {
  border-color: var(--gold) !important;
  color: var(--gold-deep) !important;
}

/* ---------- 卡片 / panel ---------- */
.card, .panel, .glass, .glass-card, [class*="card"] {
  background: rgba(255, 255, 255, 0.6) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(10, 10, 10, 0.08) !important;
  border-radius: 0 !important;
  box-shadow: 0 1px 2px rgba(10,10,10,0.03), 0 8px 32px rgba(10,10,10,0.04) !important;
  position: relative;
}

/* 卡片角上的金色十字（教堂/博物馆签名感） */
.card::before, .panel::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  width: 12px;
  height: 12px;
  border-top: 1px solid var(--gold);
  border-left: 1px solid var(--gold);
  opacity: 0.5;
  pointer-events: none;
}
.card::after, .panel::after {
  content: "";
  position: absolute;
  bottom: 8px;
  right: 8px;
  width: 12px;
  height: 12px;
  border-bottom: 1px solid var(--gold);
  border-right: 1px solid var(--gold);
  opacity: 0.5;
  pointer-events: none;
}

/* ---------- Hero ---------- */
.hero, .hero-section, section:first-of-type {
  background: transparent !important;
}
.hero-title, h1.hero-title {
  font-size: clamp(42px, 6vw, 84px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.05em !important;
  color: var(--ink) !important;
  line-height: 1.15 !important;
  text-align: center;
}
.hero-subtitle, .sub {
  font-family: 'Cormorant Garamond', 'Noto Serif SC', serif !important;
  font-weight: 300 !important;
  font-style: italic;
  color: var(--ash) !important;
  font-size: clamp(16px, 1.5vw, 20px) !important;
  letter-spacing: 0.02em !important;
  text-align: center;
}

/* ---------- 输入框 ---------- */
input, textarea, select {
  background: rgba(255, 255, 255, 0.7) !important;
  border: 1px solid rgba(10, 10, 10, 0.15) !important;
  border-radius: 0 !important;
  color: var(--ink) !important;
  font-family: 'Cormorant Garamond', 'Noto Serif SC', serif !important;
  font-size: 16px !important;
  padding: 10px 14px !important;
  transition: border-color 0.2s ease !important;
}
input:focus, textarea:focus, select:focus {
  outline: none !important;
  border-color: var(--gold) !important;
  box-shadow: 0 0 0 3px rgba(184, 160, 106, 0.1) !important;
}
input::placeholder, textarea::placeholder {
  color: var(--whisper) !important;
  font-style: italic;
}

/* ---------- 链接 ---------- */
a {
  color: var(--ink) !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(184, 160, 106, 0.3);
  transition: border-color 0.2s ease !important;
}
a:hover { border-bottom-color: var(--gold) !important; }
.nav a, nav a, button a, .btn a { border-bottom: none !important; }

/* ---------- 徽章 / tag ---------- */
.badge, .tag, .chip, .pill {
  background: transparent !important;
  color: var(--gold-deep) !important;
  border: 1px solid rgba(184, 160, 106, 0.4) !important;
  border-radius: 0 !important;
  font-family: 'Cinzel', serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  font-size: 11px !important;
  padding: 3px 10px !important;
  text-transform: uppercase;
}

/* ---------- 表格 ---------- */
table { border-collapse: collapse !important; }
th, td {
  border-bottom: 1px solid rgba(10, 10, 10, 0.08) !important;
  padding: 12px 16px !important;
  color: var(--ink) !important;
}
th {
  font-family: 'Cinzel', serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  font-size: 12px !important;
  color: var(--gold-deep) !important;
  text-transform: uppercase;
  border-bottom: 1px solid var(--gold) !important;
}

/* ---------- 分隔线（金色细线 + 菱形中点） ---------- */
hr, .divider {
  border: none !important;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184, 160, 106, 0.5), transparent) !important;
  margin: 40px auto !important;
  max-width: 600px;
  position: relative;
}

/* ---------- 聊天气泡 ---------- */
.chat-bubble, .msg, .message {
  background: rgba(255, 255, 255, 0.7) !important;
  border: 1px solid rgba(10, 10, 10, 0.08) !important;
  border-radius: 0 !important;
  color: var(--ink) !important;
  font-family: 'Cormorant Garamond', 'Noto Serif SC', serif !important;
  box-shadow: 0 1px 3px rgba(10,10,10,0.03) !important;
}
.chat-bubble.user, .msg.user {
  background: var(--ink) !important;
  color: #fafaf7 !important;
  border-color: var(--ink) !important;
}

/* ---------- 代码块（大理石灰） ---------- */
pre, code, .code {
  background: rgba(10, 10, 10, 0.04) !important;
  color: var(--ink-soft) !important;
  border: 1px solid rgba(10, 10, 10, 0.06) !important;
  border-radius: 0 !important;
  font-family: 'Cormorant Garamond', 'Courier New', monospace !important;
}

/* ---------- 状态色 ---------- */
.success, .ok, .green { color: #2d6a4f !important; }
.error, .danger, .red { color: var(--rose) !important; }
.warn, .warning { color: var(--gold-deep) !important; }

/* ---------- 滚动条 ---------- */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: rgba(184, 160, 106, 0.3);
  border-radius: 0;
}
::-webkit-scrollbar-thumb:hover { background: rgba(184, 160, 106, 0.5); }

/* ---------- 选中 ---------- */
::selection { background: rgba(184, 160, 106, 0.35); color: var(--ink); }

/* ---------- 覆盖 gothic 残留 ---------- */
* {
  text-shadow: none !important;
}
button, input, .card {
  animation: none !important;
}

/* 让顶部的 OKX banner 和原 hero 背景图谦卑一点 */
#okx-wallet-banner {
  background: linear-gradient(90deg, rgba(184,160,106,0.08), rgba(184,160,106,0.03)) !important;
  border-bottom: 1px solid rgba(184, 160, 106, 0.25) !important;
  color: var(--ink) !important;
}
#okx-wallet-banner * { color: var(--ink) !important; }

/* Hero 背景图盖一层白纱 */
[style*="ai-hero-bg"], .hero-bg {
  filter: grayscale(1) brightness(1.4) contrast(0.6) opacity(0.15) !important;
}

/* ---------- 神性点缀：拉丁文装饰 ---------- */
.hero::before {
  content: "· IVDICIVM · CATENA · COGNITIO ·";
  display: block;
  text-align: center;
  font-family: 'Cinzel', serif;
  font-size: 11px;
  letter-spacing: 0.5em;
  color: var(--gold-deep);
  margin-bottom: 24px;
  opacity: 0.7;
}

/* ---------- 页脚 ---------- */
footer, .footer {
  background: transparent !important;
  border-top: 1px solid rgba(10, 10, 10, 0.08) !important;
  color: var(--ash) !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-style: italic;
  text-align: center;
  padding: 40px 20px !important;
}
