/* ============================================================
   壹佳词元 · 主题皮肤（亮蓝轻快 · 浅色）
   参照 yjx 首页模板配色：白底 + 浅蓝渐变 + 蓝色主调
   仅视觉层：覆盖 CSS 变量 + 少量结构修饰，不改业务逻辑
   ============================================================ */
:root, .dark, html[data-theme-preset] {
  color-scheme: light;

  --background: #f7fbff;
  --foreground: #0f172a;

  --card: #ffffff;
  --card-foreground: #0f172a;
  --popover: #ffffff;
  --popover-foreground: #0f172a;

  --primary: #3b82f6;
  --primary-foreground: #ffffff;

  --secondary: #eff6ff;
  --secondary-foreground: #1e40af;

  --muted: #f1f5f9;
  --muted-foreground: #64748b;

  --accent: #dbeafe;
  --accent-foreground: #1e40af;

  --destructive: #ef4444;
  --destructive-foreground: #ffffff;
  --success: #10b981;
  --warning: #f59e0b;
  --info: #0ea5e9;

  --border: rgba(15,23,42,.08);
  --input: rgba(15,23,42,.14);
  --ring: #3b82f6;

  --sidebar: #f7fbff;
  --sidebar-foreground: #334155;
  --sidebar-primary: #2563eb;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #dbeafe;
  --sidebar-accent-foreground: #1e40af;
  --sidebar-border: rgba(59,130,246,.12);
  --sidebar-ring: #3b82f6;

  --chart-1: #3b82f6;
  --chart-2: #0ea5e9;
  --chart-3: #6366f1;
  --chart-4: #8b5cf6;
  --chart-5: #f59e0b;

  --radius: 0.85rem;
}

/* 页面底色：极浅蓝 + 双层蓝色柔光（对齐模板 --h0/--h1/--tint） */
html, body {
  background:
    radial-gradient(ellipse 70% 50% at 70% -8%, rgba(59,130,246,.10), transparent 62%),
    radial-gradient(ellipse 55% 40% at 5% 8%, rgba(147,197,253,.14), transparent 58%),
    linear-gradient(180deg, #eff6ff 0%, #f7fbff 45%, #ffffff 100%) !important;
  color: var(--foreground);
  -webkit-font-smoothing: antialiased;
}

::selection { background: rgba(59,130,246,.20); color: #0f172a; }
:focus-visible { outline: 2px solid var(--ring); outline-offset: 3px; }

/* 卡片：白面 + 蓝色柔影（模板同款阴影语言） */
[data-slot="card"],
.card {
  background: #ffffff !important;
  border: 1px solid rgba(59,130,246,.12) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 30px rgba(37,99,235,.08), 0 2px 6px rgba(15,23,42,.04) !important;
}
[data-slot="card"]:hover, .card:hover {
  box-shadow: 0 18px 44px rgba(37,99,235,.13), 0 2px 6px rgba(15,23,42,.05) !important;
}

/* 侧边栏：浅蓝面 */
[data-slot="sidebar-inner"] {
  background: linear-gradient(160deg, #ffffff, #f4f9ff) !important;
  border: 1px solid rgba(59,130,246,.14) !important;
  border-radius: 20px !important;
  box-shadow: 0 10px 30px rgba(37,99,235,.07) !important;
}
[data-slot="sidebar-container"] { padding: 10px 6px 10px 10px; }

/* 顶栏：半透明白 + 毛玻璃 */
header, [data-slot="header"] {
  background: rgba(255,255,255,.86) !important;
  backdrop-filter: blur(14px) saturate(1.2);
  border-bottom: 1px solid rgba(59,130,246,.12) !important;
}

/* 主按钮：蓝色渐变（模板 --flc 蓝） */
button[data-variant="default"], .btn-primary, [data-slot="button"][data-variant="default"] {
  background: linear-gradient(135deg, #3b82f6, #2563eb) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 6px 18px rgba(37,99,235,.24) !important;
}
button[data-variant="default"]:hover { filter: brightness(1.06); box-shadow: 0 8px 24px rgba(37,99,235,.30) !important; }

/* 输入框 */
input, textarea, select, [data-slot="input"] {
  background: #ffffff !important;
  border-color: rgba(15,23,42,.12) !important;
  color: #0f172a !important;
}
input:focus, textarea:focus, select:focus {
  border-color: var(--ring) !important;
  box-shadow: 0 0 0 3px rgba(59,130,246,.15) !important;
}

/* 表格 */
thead, [data-slot="table-header"] {
  background: #eff6ff !important;
  color: #1e40af !important;
}
tbody tr:hover { background: rgba(59,130,246,.05) !important; }

/* 滚动条 */
* { scrollbar-color: rgba(59,130,246,.34) transparent; scrollbar-width: thin; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb {
  background: rgba(59,130,246,.28);
  border-radius: 8px;
  border: 2px solid transparent;
  background-clip: content-box;
}
::-webkit-scrollbar-thumb:hover { background: rgba(59,130,246,.46); background-clip: content-box; }

/* 品牌字标：浅底上给一点蓝色光晕 */
[data-slot="sidebar-header"] img, header img {
  filter: drop-shadow(0 2px 6px rgba(37,99,235,.22));
}
