:root {
  --bw-bg: #f7f8fa;
  --bw-panel: #ffffff;
  --bw-sidebar: #f5f6f8;
  --bw-border: #d9dde3;
  --bw-border-soft: #e8ebef;
  --bw-text: #1f2933;
  --bw-muted: #6b7280;
  --bw-blue: #5190ef;
  --bw-blue-dark: #3b78d8;
}

* { box-sizing: border-box; }
body {
  background: var(--bw-bg) !important;
  color: var(--bw-text) !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

/* Auth pages */
body.min-h-screen {
  background: var(--bw-bg) !important;
  align-items: flex-start !important;
  padding-top: 92px !important;
}
body.min-h-screen > div {
  background: var(--bw-panel) !important;
  border: 1px solid var(--bw-border) !important;
  border-radius: 4px !important;
  box-shadow: 0 1px 2px rgba(16,24,40,.06) !important;
  backdrop-filter: none !important;
}
body.min-h-screen h1,
body.min-h-screen .text-white { color: var(--bw-text) !important; }
body.min-h-screen .text-slate-300,
body.min-h-screen .text-slate-400,
body.min-h-screen .text-slate-500,
body.min-h-screen .text-slate-600 { color: var(--bw-muted) !important; }
body.min-h-screen input {
  background: #fff !important;
  color: var(--bw-text) !important;
  border: 1px solid var(--bw-border) !important;
  border-radius: 4px !important;
  box-shadow: inset 0 1px 1px rgba(16,24,40,.04) !important;
}
body.min-h-screen input:focus {
  border-color: var(--bw-blue) !important;
  box-shadow: 0 0 0 2px rgba(81,144,239,.18) !important;
}
body.min-h-screen button[type="submit"] {
  background: var(--bw-blue) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}
body.min-h-screen button[type="submit"]:hover { background: var(--bw-blue-dark) !important; }

/* Dashboard shell */
aside.fixed {
  width: 176px !important;
  background: var(--bw-sidebar) !important;
  border-right: 1px solid var(--bw-border) !important;
  box-shadow: none !important;
}
aside.fixed .border-b,
aside.fixed .border-t { border-color: var(--bw-border-soft) !important; }
aside.fixed .text-white,
aside.fixed .font-bold { color: var(--bw-text) !important; }
aside.fixed .text-slate-400,
aside.fixed .text-slate-500 { color: var(--bw-muted) !important; }
aside.fixed button,
aside.fixed a {
  border-radius: 4px !important;
  color: var(--bw-muted) !important;
}
aside.fixed button:hover,
aside.fixed a:hover {
  background: #eceff3 !important;
  color: var(--bw-text) !important;
}
aside.fixed button.bg-blue-600 {
  background: #e7f0ff !important;
  color: var(--bw-blue-dark) !important;
}

.ml-56 { margin-left: 176px !important; }
header.sticky {
  background: var(--bw-panel) !important;
  border-bottom: 1px solid var(--bw-border) !important;
  box-shadow: none !important;
  min-height: 64px !important;
}
header h1 { color: var(--bw-text) !important; font-size: 20px !important; }
main.p-6 { padding: 24px 28px !important; }

.bg-white,
.bg-slate-50,
.bg-blue-50,
.bg-red-50,
.bg-green-50,
.bg-amber-50 {
  box-shadow: none !important;
}
.rounded-xl,
.rounded-2xl,
.rounded-lg {
  border-radius: 4px !important;
}
.shadow-sm,
.shadow-xl,
.shadow-2xl,
.shadow-lg {
  box-shadow: 0 1px 2px rgba(16,24,40,.06) !important;
}
.border,
.border-slate-100,
.border-slate-200,
.border-blue-100,
.border-red-100,
.border-green-100,
.border-amber-100 {
  border-color: var(--bw-border) !important;
}
.text-slate-800,
.text-slate-900 { color: var(--bw-text) !important; }
.text-slate-400,
.text-slate-500,
.text-slate-600 { color: var(--bw-muted) !important; }
button.bg-blue-600,
a.bg-blue-600 {
  background: var(--bw-blue) !important;
  border-radius: 4px !important;
}
button.bg-blue-600:hover,
a.bg-blue-600:hover { background: var(--bw-blue-dark) !important; }
input, select, textarea {
  border-radius: 4px !important;
  border-color: var(--bw-border) !important;
}
table { border-color: var(--bw-border) !important; }
thead { background: #f3f4f6 !important; }

.ui-icon-svg { width: 18px; height: 18px; display: inline-block; vertical-align: -3px; color: currentColor; }
.ui-icon-lg .ui-icon-svg, .ui-icon-svg.lg { width: 28px; height: 28px; }
.ui-icon-xl .ui-icon-svg, .ui-icon-svg.xl { width: 42px; height: 42px; }
.icon-muted { color: var(--bw-muted); }
.icon-brand { color: var(--bw-blue); }
.icon-success { color: #059669; }
.icon-warning { color: #b45309; }
.icon-danger { color: #dc2626; }
.nav-icon { width: 18px; height: 18px; flex: 0 0 auto; }
.quick-icon { width: 20px; height: 20px; flex: 0 0 auto; color: var(--bw-muted); }
