/**
 * FluxVita Design Tokens — 全局设计令牌
 * Jovida Design System 风格：暗色优先 + Lime 主色
 * 支持 dark / light 双主题，通过 [data-theme="light"] 切换
 */

/* ═══════════════════════════════════════
   Dark 主题（默认）
   Jovida 暗色优先：#0a0a0b 近黑底 + lime 强调
   ═══════════════════════════════════════ */
:root {
  /* ── 背景层级 ── */
  --bg: #1c1c1e;
  --surface: #2c2c2e;
  --surface2: #3a3a3c;
  --surface-hover: #48484a;

  /* ── 边框 ── */
  --border: rgba(255, 255, 255, 0.08);
  --border-hover: rgba(255, 255, 255, 0.16);

  /* ── 文字 ── */
  --text: #E8E8E8;
  --text2: rgba(255, 255, 255, 0.45);
  --text-inverse: #0a0a0b;

  /* ── 主色 Lime ── */
  --accent: #9DD84A;
  --accent2: #7ab830;
  --accent-bg: rgba(157, 216, 74, 0.08);
  --accent-border: rgba(157, 216, 74, 0.18);
  --accent-text: #9DD84A;

  /* ── 语义色（含 Jovida 概念色） ── */
  --red: #ff4d6a;
  --orange: #ffa726;
  --green: #66bb6a;
  --blue: #42a5f5;
  --purple: #C4B8E8;
  --yellow: #E8D24A;
  --cyan: #5CC8D8;
  --coral: #E8A898;
  --amber: #D4A847;

  /* ── 语义色背景（8% 透明） ── */
  --red-bg: rgba(255, 77, 106, 0.08);
  --green-bg: rgba(102, 187, 106, 0.08);
  --blue-bg: rgba(66, 165, 245, 0.08);
  --orange-bg: rgba(255, 167, 38, 0.08);
  --purple-bg: rgba(196, 184, 232, 0.08);
  --yellow-bg: rgba(232, 210, 74, 0.08);
  --cyan-bg: rgba(92, 200, 216, 0.08);
  --coral-bg: rgba(232, 168, 152, 0.08);
  --amber-bg: rgba(212, 168, 71, 0.08);

  /* ── 语义色边框（18% 透明） ── */
  --purple-border: rgba(196, 184, 232, 0.18);
  --yellow-border: rgba(232, 210, 74, 0.18);
  --cyan-border: rgba(92, 200, 216, 0.18);
  --coral-border: rgba(232, 168, 152, 0.18);
  --amber-border: rgba(212, 168, 71, 0.18);

  /* ── Jovida 品牌渐变 ── */
  --gradient-brand: linear-gradient(90deg, #9DD84A, #5CC8D8, #C4B8E8, #E8A898);

  /* ── 卡片特殊底色 ── */
  --surface-glass: rgba(255, 255, 255, 0.025);

  /* ── 阴影 ── */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.6);

  /* ── 圆角 ── */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;

  /* ── 字体 ── */
  --font: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', 'SF Mono', 'Fira Code', monospace;

  /* ── 过渡 ── */
  --transition-theme: background 0.35s cubic-bezier(0.16, 1, 0.3, 1),
                      color 0.35s cubic-bezier(0.16, 1, 0.3, 1),
                      border-color 0.35s cubic-bezier(0.16, 1, 0.3, 1),
                      box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1);

  /* ── 色彩模式标记 ── */
  color-scheme: dark;
}

/* ═══════════════════════════════════════
   Light 主题
   柔和暖白底 + 深 lime 强调，保持 Jovida 品牌调性
   ═══════════════════════════════════════ */
[data-theme="light"] {
  /* ── 背景层级 ── */
  --bg: #FAFAF8;
  --surface: #FFFFFF;
  --surface2: #F2F2EF;
  --surface-hover: #E8E8E4;

  /* ── 边框 ── */
  --border: rgba(0, 0, 0, 0.08);
  --border-hover: rgba(0, 0, 0, 0.15);

  /* ── 文字 ── */
  --text: #1a1a1e;
  --text2: rgba(0, 0, 0, 0.45);
  --text-inverse: #FAFAF8;

  /* ── 主色 Lime（加深确保浅底可读） ── */
  --accent: #5a8a1a;
  --accent2: #4a7515;
  --accent-bg: rgba(90, 138, 26, 0.06);
  --accent-border: rgba(90, 138, 26, 0.20);
  --accent-text: #4a7515;

  /* ── 语义色（浅底适配：降低亮度+提升饱和度） ── */
  --red: #dc3545;
  --orange: #e67e22;
  --green: #2e7d32;
  --blue: #1976d2;
  --purple: #6a5a99;
  --yellow: #c49000;
  --cyan: #0097a7;
  --coral: #b56b5a;
  --amber: #bf8f00;

  /* ── 语义色背景 ── */
  --red-bg: rgba(220, 53, 69, 0.06);
  --green-bg: rgba(46, 125, 50, 0.06);
  --blue-bg: rgba(25, 118, 210, 0.06);
  --orange-bg: rgba(230, 126, 34, 0.06);
  --purple-bg: rgba(106, 90, 153, 0.06);
  --yellow-bg: rgba(196, 144, 0, 0.06);
  --cyan-bg: rgba(0, 151, 167, 0.06);
  --coral-bg: rgba(181, 107, 90, 0.06);
  --amber-bg: rgba(191, 143, 0, 0.06);

  /* ── 语义色边框 ── */
  --purple-border: rgba(106, 90, 153, 0.18);
  --yellow-border: rgba(196, 144, 0, 0.18);
  --cyan-border: rgba(0, 151, 167, 0.18);
  --coral-border: rgba(181, 107, 90, 0.18);
  --amber-border: rgba(191, 143, 0, 0.18);

  /* ── 品牌渐变（Light 适配） ── */
  --gradient-brand: linear-gradient(90deg, #5a8a1a, #0097a7, #6a5a99, #b56b5a);

  /* ── 卡片特殊底色 ── */
  --surface-glass: rgba(0, 0, 0, 0.015);

  /* ── 阴影 ── */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.1);

  color-scheme: light;
}

/* ═══════════════════════════════════════
   基础 Reset
   ═══════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

/* 主题过渡动效 — 应用于主要容器 */
body,
.topbar,
.card,
.table-wrap,
.btn,
.badge,
.subtab-bar,
.login-box,
input, textarea, select {
  transition: var(--transition-theme);
}

/* ── 焦点指示器（键盘导航可访问性）── */
:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

/* ═══════════════════════════════════════
   原生 App 体验增强（全局）
   ═══════════════════════════════════════ */

/* ── 细滚动条（所有环境）── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.25); }
[data-theme="light"] ::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.15); }
[data-theme="light"] ::-webkit-scrollbar-thumb:hover { background: rgba(0, 0, 0, 0.25); }

/* ── Tauri 环境专属 ── */

/* 禁止 UI 元素选中文字（原生 App 感）*/
html[data-platform="tauri"] body {
  -webkit-user-select: none;
  user-select: none;
}
/* 内容区允许选中 */
html[data-platform="tauri"] input,
html[data-platform="tauri"] textarea,
html[data-platform="tauri"] [contenteditable],
html[data-platform="tauri"] .selectable,
html[data-platform="tauri"] .message-content,
html[data-platform="tauri"] pre,
html[data-platform="tauri"] code {
  -webkit-user-select: text;
  user-select: text;
}

/* ── 系统字体 —— 已在 --font 中定义，确保 body 使用 ── */
body { font-family: var(--font); }
