:root {
  --primary: #1769f2 !important;
  --primary-foreground: #ffffff !important;
  --ring: #8dc0ff !important;
  --background: #f5f9ff !important;
  --card: #ffffff !important;
  --card-foreground: #0b2149 !important;
  --sidebar: #f8fbff !important;
  --sidebar-foreground: #0b2149 !important;
  --sidebar-accent: #e8f2ff !important;
  --sidebar-accent-foreground: #1769f2 !important;
  --radius: 0.8rem !important;
}

body {
  font-family: "Inter", "PingFang SC", "Microsoft YaHei", "Segoe UI", system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased;
}

.dark {
  --background: #0b1220 !important;
  --card: #111a2b !important;
  --card-foreground: #e6eefc !important;
  --sidebar: #0d1524 !important;
  --sidebar-foreground: #e6eefc !important;
  --sidebar-accent: #16233a !important;
  --sidebar-accent-foreground: #6fe7ff !important;
  --primary: #2f80ff !important;
  --primary-foreground: #ffffff !important;
  --ring: #2f80ff !important;
}

.dark [data-slot="sidebar-container"] {
  background: linear-gradient(180deg, #0d1524 0%, #0b1220 100%) !important;
  border-right-color: rgba(255, 255, 255, .06) !important;
}

.dark [data-slot="sidebar-menu-button"][data-active] {
  background: linear-gradient(90deg, rgba(47, 128, 255, .2), rgba(47, 128, 255, .06)) !important;
  color: #8fd1ff !important;
  box-shadow: inset 0 0 0 1px rgba(111, 231, 255, .1);
}

.dark header {
  background: rgba(11, 18, 32, .82) !important;
  border-bottom-color: rgba(255, 255, 255, .06);
}

.dark main.bg-background {
  background: #0b1220 !important;
}

[data-slot="sidebar-container"] {
  background: linear-gradient(180deg, #fbfdff 0%, #f4f9ff 100%) !important;
  border-right: 1px solid rgba(20, 52, 96, .07) !important;
}

[data-slot="sidebar-menu-button"] {
  border-radius: 10px !important;
  min-height: 36px;
  transition: background .18s ease, color .18s ease, box-shadow .18s ease;
}

[data-slot="sidebar-menu-button"][data-active] {
  background: linear-gradient(90deg, #e7f1ff, #f2f8ff) !important;
  color: #1769f2 !important;
  box-shadow: inset 0 0 0 1px rgba(23, 105, 242, .08);
}

header {
  background: rgba(248, 251, 255, .82) !important;
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(20, 52, 96, .06);
}

main.bg-background {
  background: #f5f9ff !important;
}

::selection {
  background: rgba(47, 128, 255, .18);
  color: #0b2149;
}

.dark ::selection {
  background: rgba(111, 231, 255, .24);
  color: #ffffff;
}
