/* 叶缘商务 · 主题覆盖层
   参照：暗色鹰头登录页 + 浅色白卡管理后台 + 红主色
   只覆盖视觉，不动任何业务逻辑 */

:root {
  --radius: 0.75rem;

  --background: #f1f2f4;
  --foreground: #1f2430;
  --card: #ffffff;
  --card-foreground: #1f2430;
  --popover: #ffffff;
  --popover-foreground: #1f2430;
  --primary: #dc3545;
  --primary-foreground: #ffffff;
  --secondary: #eef0f4;
  --secondary-foreground: #1f2430;
  --muted: #f4f5f8;
  --muted-foreground: #6b7280;
  --accent: #f0883e;
  --accent-foreground: #ffffff;
  --destructive: #e5484d;
  --border: #e4e7ec;
  --input: #e4e7ec;
  --ring: #dc3545;

  --chart-1: #dc3545;
  --chart-2: #f0883e;
  --chart-3: #16a34a;
  --chart-4: #2563eb;
  --chart-5: #7c3aed;

  --sidebar: #ffffff;
  --sidebar-foreground: #3a4252;
  --sidebar-primary: #dc3545;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: #fdeef0;
  --sidebar-accent-foreground: #dc3545;
  --sidebar-border: #e9ecf1;
  --sidebar-ring: #dc3545;

  --sidebar-background: 0 0% 100%;
  --sidebar-foreground-hsl: 218 15% 27%;
  --sidebar-primary-hsl: 354 70% 54%;
  --sidebar-primary-foreground-hsl: 0 0% 100%;
  --sidebar-accent-hsl: 353 82% 96%;
  --sidebar-accent-foreground-hsl: 354 70% 54%;
  --sidebar-border-hsl: 220 20% 93%;
  --sidebar-ring-hsl: 354 70% 54%;
}

/* ===== 页面底色 / 文字 ===== */
html, body { background: #f1f2f4 !important; color: #1f2430; }
body { -webkit-font-smoothing: antialiased; }

/* 写死颜色的 tailwind 任意值：逐个映射到浅色系 */
[class~="bg-[#0d1117]"] { background-color: #f1f2f4 !important; }
[class~="bg-[#161b22]"] { background-color: #ffffff !important; }
[class~="bg-[#1c2128]"] { background-color: #f4f5f8 !important; }
[class~="bg-[#21262d]"] { background-color: #eef0f4 !important; }
[class~="bg-[#30363d]"] { background-color: #e5e7eb !important; }
[class~="bg-[#010409]"] { background-color: #ffffff !important; }
[class~="hover:bg-[#161b22]:hover"] { background-color: #f7f8fa !important; }
[class~="hover:bg-[#1c2128]:hover"] { background-color: #eef0f5 !important; }
[class~="hover:bg-[#1c2333]:hover"] { background-color: #eef0f5 !important; }

[class~="text-[#e6edf3]"] { color: #1f2430 !important; }
[class~="hover:text-[#e6edf3]:hover"] { color: #111827 !important; }
[class~="text-[#8b949e]"] { color: #6b7280 !important; }
[class~="text-[#30363d]"] { color: #9ca3af !important; }

[class~="border-[#30363d]"] { border-color: #e4e7ec !important; }
[class~="border-[#21262d]"] { border-color: #e9ecf1 !important; }
[class~="hover:border-[#8b949e]/50:hover"] { border-color: #d3d8e0 !important; }
[class~="hover:border-[#484f58]:hover"] { border-color: #c9cfd8 !important; }

/* 侧边栏选中态：暗底红字 -> 白底淡红字 */
[data-active="true"] {
  background-color: rgba(220, 53, 69, .08) !important;
  color: #dc3545 !important;
}
[data-slot="sidebar-menu-button"][data-active="true"] *,
[data-slot="sidebar-menu-sub-button"][data-active="true"] * { color: #dc3545 !important; }
[class*="text-red-400"] { color: #dc3545 !important; }
[class*="bg-red-600/10"] { background-color: rgba(220, 53, 69, .08) !important; }

/* ===== 侧边栏 ===== */
[data-slot="sidebar"] [data-slot="sidebar-container"],
[data-slot="sidebar-inner"] {
  background: #ffffff !important;
  border-right: 1px solid #e9ecf1;
  box-shadow: none !important;
}
[data-slot="sidebar-inner"] { box-shadow: 0 1px 2px rgba(16,24,40,.04) !important; }
[data-slot="sidebar-group-label"] {
  color: #98a2b3 !important;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: none;
}
[data-slot="sidebar-menu-button"] {
  border-radius: 10px;
  color: #4b5565;
  font-weight: 500;
}
[data-slot="sidebar-menu-button"]:hover {
  background: #f4f5f8 !important;
  color: #1f2430 !important;
}
[data-slot="sidebar-footer"] { border-top-color: #eef0f4 !important; }

/* ===== 卡片：白底 + 轻阴影 + 圆角 ===== */
[data-slot="card"] {
  background: #ffffff !important;
  border: 1px solid #eceff4 !important;
  border-radius: 14px !important;
  box-shadow: 0 1px 2px rgba(16,24,40,.04), 0 1px 3px rgba(16,24,40,.05) !important;
  transition: box-shadow .18s ease, transform .18s ease;
}
[data-slot="card"]:hover { box-shadow: 0 4px 12px rgba(16,24,40,.07) !important; }
[data-slot="card-title"] { font-weight: 600; color: #111827; }

/* ===== 顶部栏 ===== */
header, [data-slot="header"] { background: #ffffff !important; border-bottom: 1px solid #eceff4 !important; }
[data-slot="sidebar-inset"] { background: #f1f2f4 !important; }

/* ===== 输入框 / 下拉 / 表格 ===== */
input, textarea, select, [data-slot="select-trigger"], [data-slot="input"] {
  background: #ffffff !important;
  border-color: #e4e7ec !important;
  color: #1f2430 !important;
  border-radius: 10px;
}
input::placeholder, textarea::placeholder { color: #98a2b3 !important; }
input:focus, textarea:focus, select:focus { border-color: #dc3545 !important; box-shadow: 0 0 0 3px rgba(220,53,69,.10) !important; }

table { color: #1f2430; }
thead tr, thead th { background: #f7f8fa !important; color: #6b7280 !important; }
tbody tr { border-color: #eef0f4 !important; }
tbody tr:hover { background: #fafbfc !important; }

/* 下拉/弹窗 */
[data-slot="dialog-content"], [data-slot="popover-content"], [data-slot="select-content"],
[role="dialog"], [role="menu"], [data-radix-popper-content-wrapper] > * {
  background: #ffffff !important;
  color: #1f2430 !important;
  border-color: #eceff4 !important;
  box-shadow: 0 12px 32px rgba(16,24,40,.14) !important;
}

/* 分割线 / 滚动条 */
hr { border-color: #eceff4 !important; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #f4f5f8; }
::-webkit-scrollbar-thumb { background: #d7dce3; border-radius: 6px; border: 2px solid #f4f5f8; }
::-webkit-scrollbar-thumb:hover { background: #c3cad4; }

/* ===== 登录页：参照暗色鹰头版 ===== */
.min-h-screen.flex.bg-\[#0d1117\],
div.min-h-screen.flex { background: #0c0f13 !important; }
.login-split > div:first-child {
  background-image: url("/login-bg.jpg") !important;
  background-size: cover !important;
  background-position: center center !important;
}
.login-split > div:first-child::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(6,8,11,.15) 0%, rgba(6,8,11,.35) 60%, rgba(12,15,19,.85) 100%),
              linear-gradient(0deg, rgba(6,8,11,.75) 0%, rgba(6,8,11,0) 45%);
  pointer-events: none;
  z-index: 1;
}
.login-split > div:first-child > * { position: relative; z-index: 2; }
.login-split > div:last-child { background: #0c0f13 !important; }

/* ===== 登录页修正：容器底色 + 暗色输入框（不被浅色主题带走） ===== */
[class~="bg-[#0d1117]"]:has(.login-split),
.min-h-screen:has(.login-split) { background: #0c0f13 !important; }
.login-split { background: #0c0f13 !important; }
body:has(.login-split) { background: #0c0f13 !important; }
.login-split input,
.login-split textarea {
  background: #14181e !important;
  border-color: #262c34 !important;
  color: #e8edf4 !important;
  border-radius: 10px !important;
}
.login-split input::placeholder { color: #6b7480 !important; }
.login-split input:focus {
  border-color: #dc3545 !important;
  box-shadow: 0 0 0 3px rgba(220,53,69,.16) !important;
}
.login-split label, .login-split p, .login-split span { color: inherit; }
.login-split button[type="submit"], .login-split form button {
  border-radius: 10px !important;
  box-shadow: 0 8px 22px rgba(220,53,69,.28) !important;
}
.login-split h1, .login-split h2 { color: #f5f7fa !important; letter-spacing: .01em; }

/* ===== 补充：其余页面/组件里的硬编码暗色（成对映射，保证对比关系） ===== */
[class~="bg-[#21262d]"] { background-color: #eef0f4 !important; }
[class~="bg-[#30363d]"] { background-color: #e5e7eb !important; }
[class~="bg-[#2d333b]"] { background-color: #e9ecf1 !important; }
[class~="bg-[#1c2128]"] { background-color: #f4f5f8 !important; }
[class~="hover:bg-[#21262d]"]:hover { background-color: #e8ebf0 !important; }
[class~="hover:bg-[#30363d]"]:hover { background-color: #dfe3e9 !important; }
[class~="hover:bg-[#2d333b]"]:hover { background-color: #e3e7ee !important; }
[class~="hover:bg-[#0d1117]"]:hover { background-color: #f4f5f8 !important; }

[class~="text-[#c9d1d9]"] { color: #3a4252 !important; }
[class~="text-[#484f58]"] { color: #8b93a1 !important; }
[class~="text-[#6e7681]"] { color: #8b93a1 !important; }
[class~="text-[#58a6ff]"] { color: #2563eb !important; }
[class~="hover:text-[#c9d1d9]"]:hover { color: #1f2430 !important; }
[class~="hover:text-[#58a6ff]"]:hover { color: #1d4ed8 !important; }

[class~="border-[#8b949e]"] { border-color: #d3d8e0 !important; }
[class~="border-[#484f58]"] { border-color: #c9cfd8 !important; }
[class~="border-[#333]"] { border-color: #d7dce3 !important; }
[class~="border-[#58a6ff]"] { border-color: #93c5fd !important; }
[class~="border-[#161b22]"] { border-color: #eef0f4 !important; }
[class~="fill-[#1c2128]"] { fill: #ffffff !important; }
[class~="bg-[#333]"] { background-color: #e5e7eb !important; }

/* 深底浅字的按钮：底色变浅后文字同步转深，避免白字白底 */
[class~="bg-[#21262d]"][class~="text-white"],
[class~="bg-[#30363d]"][class~="text-white"],
[class~="bg-[#161b22]"][class~="text-white"],
[class~="bg-[#0d1117]"][class~="text-white"],
[class~="bg-[#1c2128]"][class~="text-white"],
[class~="bg-[#2d333b]"][class~="text-white"] { color: #1f2430 !important; }
[class~="bg-[#21262d]"] svg, [class~="bg-[#30363d]"] svg, [class~="bg-[#161b22]"] svg { color: #4b5565; }

/* 状态标签/徽章底色在浅色下统一用淡彩 */
[class~="bg-red-500/10"], [class~="bg-red-500/15"], [class~="bg-red-500/20"] { background-color: rgba(220,53,69,.09) !important; }
[class~="bg-green-500/10"], [class~="bg-green-500/15"], [class~="bg-green-500/20"] { background-color: rgba(22,163,74,.10) !important; }
[class~="bg-blue-500/10"], [class~="bg-blue-500/15"], [class~="bg-blue-500/20"] { background-color: rgba(37,99,235,.09) !important; }
[class~="bg-amber-500/10"], [class~="bg-orange-500/10"], [class~="bg-orange-500/15"] { background-color: rgba(240,136,62,.10) !important; }
[class~="bg-purple-500/10"], [class~="bg-purple-500/20"] { background-color: rgba(124,58,237,.09) !important; }
[class~="bg-cyan-500/10"], [class~="bg-cyan-500/15"] { background-color: rgba(14,165,183,.09) !important; }
[class~="text-gray-400"] { color: #6b7280 !important; }
[class~="bg-black/60"], [class~="bg-black/70"], [class~="bg-black/80"] { background-color: rgba(17,24,39,.45) !important; }

/* 登录页左侧标语：放大到参照那种大标题质感 */
.login-split > div:first-child p.text-lg {
  font-size: 2rem !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  letter-spacing: .01em;
  max-width: 420px;
}
