:root {
  --admin-bg: #f6f7f9;
  --admin-surface: #ffffff;
  --admin-surface-2: #f0f2f5;
  --admin-text: #17191e;
  --admin-text-2: #59606b;
  --admin-text-3: #858c97;
  --admin-border: #e1e4e9;
  --admin-border-strong: #cfd4dc;
  --admin-primary: #2563eb;
  --admin-primary-soft: rgba(37, 99, 235, .09);
  --admin-shadow: 0 16px 42px rgba(16, 24, 40, .08);
}

html.dark {
  --admin-bg: #0d0f12;
  --admin-surface: #15171c;
  --admin-surface-2: #1b1f26;
  --admin-text: #f3f5f7;
  --admin-text-2: #b0b5be;
  --admin-text-3: #7d8490;
  --admin-border: rgba(255, 255, 255, .085);
  --admin-border-strong: rgba(255, 255, 255, .14);
  --admin-primary: #6ea8fe;
  --admin-primary-soft: rgba(110, 168, 254, .11);
  --admin-shadow: 0 20px 48px rgba(0, 0, 0, .3);
}

body.corporate-admin {
  background: var(--admin-bg) !important;
  color: var(--admin-text) !important;
  font-family: "Cairo", "Segoe UI", Tahoma, sans-serif;
  transition: none !important;
  text-rendering: optimizeLegibility;
}

body.corporate-admin .glass {
  background: var(--admin-surface) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.corporate-admin .gradient-bg { animation: none !important; background: var(--admin-primary) !important; }

body.corporate-admin #sidebar {
  width: 264px;
  flex: 0 0 264px;
  background: var(--admin-surface) !important;
  border-color: var(--admin-border) !important;
  box-shadow: none;
}

.admin-brand-mark {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgba(16, 24, 40, .08);
}

body.corporate-admin #sidebar > div:first-child {
  padding: 18px !important;
  border-color: var(--admin-border) !important;
}

body.corporate-admin #sidebar h1,
body.corporate-admin .gradient-text {
  background: none !important;
  color: var(--admin-text) !important;
  -webkit-text-fill-color: currentColor !important;
  font-weight: 720;
}

body.corporate-admin #sidebar > .p-4.m-4 {
  margin: 12px !important;
  padding: 11px !important;
  border: 1px solid var(--admin-border) !important;
  border-radius: 11px !important;
  background: var(--admin-bg) !important;
}

body.corporate-admin #sidebar > .p-4.m-4 .w-12.h-12 {
  width: 34px !important;
  height: 34px !important;
  border: 1px solid var(--admin-border);
  border-radius: 9px !important;
  background: var(--admin-surface-2) !important;
  color: var(--admin-text-2) !important;
}

body.corporate-admin #sidebar nav {
  padding: 2px 10px 10px !important;
  scrollbar-gutter: stable;
}

body.corporate-admin .sidebar-item,
body.corporate-admin #sidebar a,
body.corporate-admin #sidebar nav + div button {
  min-height: 40px;
  padding: 0 11px !important;
  border: 1px solid transparent;
  border-radius: 9px !important;
  background: transparent !important;
  color: var(--admin-text-2) !important;
  font-size: 12px;
  transition: color 140ms ease, background 140ms ease, border-color 140ms ease !important;
}

body.corporate-admin .sidebar-item::before { display: none; }

body.corporate-admin .sidebar-item:hover,
body.corporate-admin #sidebar a:hover,
body.corporate-admin #sidebar nav + div button:hover {
  border-color: var(--admin-border);
  background: var(--admin-bg) !important;
  color: var(--admin-text) !important;
}

body.corporate-admin .sidebar-item.active {
  border-color: var(--admin-border) !important;
  background: var(--admin-primary-soft) !important;
  color: var(--admin-primary) !important;
  box-shadow: none;
}

body.corporate-admin #sidebar > div:last-child { border-color: var(--admin-border) !important; }

body.corporate-admin main > header {
  height: 62px;
  padding-inline: 22px !important;
  background: var(--admin-surface) !important;
  border-color: var(--admin-border) !important;
  box-shadow: none;
}

body.corporate-admin #page-title {
  color: var(--admin-text);
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -.02em;
}

body.corporate-admin main > header button {
  width: 34px !important;
  height: 34px !important;
  border: 1px solid var(--admin-border);
  border-radius: 9px !important;
  background: var(--admin-bg) !important;
  color: var(--admin-text-2) !important;
  transition: color 140ms ease, background 140ms ease, border-color 140ms ease;
}

body.corporate-admin main > header button:hover {
  border-color: var(--admin-border-strong);
  background: var(--admin-surface-2) !important;
  color: var(--admin-text) !important;
}

body.corporate-admin #content-area {
  padding: clamp(16px, 2.4vw, 30px) !important;
  background: var(--admin-bg);
  scrollbar-gutter: stable;
}

body.corporate-admin .tab-content {
  width: min(100%, 1480px);
  margin-inline: auto;
}

body.corporate-admin .tab-content.animate-fade-in { animation: none !important; }

body.corporate-admin .hover-card,
body.corporate-admin .tab-content > .bg-white,
body.corporate-admin .tab-content .bg-white,
body.corporate-admin #user-modal .bg-white,
body.corporate-admin #delete-modal .bg-white {
  border: 1px solid var(--admin-border) !important;
  border-radius: 13px !important;
  background: var(--admin-surface) !important;
  box-shadow: none !important;
  transform: none !important;
  transition: border-color 140ms ease, box-shadow 140ms ease !important;
}

body.corporate-admin .hover-card:hover {
  border-color: var(--admin-border-strong) !important;
  box-shadow: 0 8px 24px rgba(16, 24, 40, .06) !important;
  transform: none !important;
}

body.corporate-admin .hover-card { padding: 20px !important; }

body.corporate-admin .hover-card h3 {
  color: var(--admin-text) !important;
  font-size: 27px !important;
  font-weight: 720;
  letter-spacing: -.03em;
}

body.corporate-admin .hover-card .w-12.h-12,
body.corporate-admin .tab-content [class*="w-12"][class*="h-12"] {
  width: 38px !important;
  height: 38px !important;
  border: 1px solid var(--admin-border);
  border-radius: 10px !important;
  background: var(--admin-surface-2) !important;
  color: var(--admin-primary) !important;
}

body.corporate-admin .text-slate-800,
body.corporate-admin .text-slate-700,
body.corporate-admin .text-slate-600 { color: var(--admin-text-2) !important; }

body.corporate-admin .text-slate-500,
body.corporate-admin .text-slate-400 { color: var(--admin-text-3) !important; }

body.corporate-admin .border-slate-200,
body.corporate-admin .border-slate-100,
body.corporate-admin .divide-slate-200 > :not([hidden]) ~ :not([hidden]) {
  border-color: var(--admin-border) !important;
}

body.corporate-admin .bg-slate-50,
body.corporate-admin .bg-slate-100,
body.corporate-admin .bg-slate-800 {
  background: var(--admin-surface-2) !important;
}

body.corporate-admin .btn-primary,
body.corporate-admin button[class*="from-primary"],
body.corporate-admin button[class*="bg-gradient-to"] {
  border: 1px solid #2563eb !important;
  background: #2563eb !important;
  color: #fff !important;
  box-shadow: none !important;
  transform: none !important;
}

body.corporate-admin .btn-primary:hover,
body.corporate-admin button[class*="from-primary"]:hover,
body.corporate-admin button[class*="bg-gradient-to"]:hover {
  background: #1f58cf !important;
  border-color: #1f58cf !important;
  box-shadow: none !important;
  transform: none !important;
}

body.corporate-admin input,
body.corporate-admin textarea,
body.corporate-admin select {
  border: 1px solid var(--admin-border) !important;
  border-radius: 9px !important;
  background: var(--admin-surface-2) !important;
  color: var(--admin-text) !important;
  box-shadow: none !important;
  transition: border-color 140ms ease, box-shadow 140ms ease, background 140ms ease !important;
}

body.corporate-admin input:focus,
body.corporate-admin textarea:focus,
body.corporate-admin select:focus {
  border-color: var(--admin-primary) !important;
  background: var(--admin-surface) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--admin-primary) 18%, transparent) !important;
  outline: none;
}

body.corporate-admin table {
  color: var(--admin-text-2);
}

body.corporate-admin .data-table th,
body.corporate-admin table thead tr {
  background: var(--admin-surface-2) !important;
  color: var(--admin-text-2) !important;
}

body.corporate-admin .data-table td,
body.corporate-admin .data-table th,
body.corporate-admin table td,
body.corporate-admin table th { border-color: var(--admin-border) !important; }

body.corporate-admin .data-table tr:hover td { background: var(--admin-primary-soft) !important; }

body.corporate-admin .toggle-switch {
  width: 42px;
  height: 22px;
  border: 1px solid var(--admin-border);
  background: var(--admin-surface-2);
  transition: background 160ms ease, border-color 160ms ease;
}

body.corporate-admin .toggle-switch::after {
  width: 16px;
  height: 16px;
  top: 2px;
  box-shadow: 0 1px 3px rgba(16, 24, 40, .18);
}

body.corporate-admin .toggle-switch.active {
  border-color: #2563eb;
  background: #2563eb !important;
}

body.corporate-admin .toggle-switch.active::after { transform: translateX(-20px); }

body.corporate-admin canvas { filter: saturate(.82); }

body.corporate-admin #user-modal > div:first-child,
body.corporate-admin #delete-modal > div:first-child {
  background: rgba(8, 10, 14, .58) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.corporate-admin #user-modal .modal-enter,
body.corporate-admin #delete-modal .modal-enter { animation: none !important; }

body.corporate-admin #toast-container > div {
  border: 1px solid var(--admin-border);
  border-radius: 11px;
  background: var(--admin-surface) !important;
  color: var(--admin-text) !important;
  box-shadow: var(--admin-shadow);
}

body.corporate-admin button:focus-visible,
body.corporate-admin a:focus-visible,
body.corporate-admin input:focus-visible,
body.corporate-admin textarea:focus-visible,
body.corporate-admin select:focus-visible {
  outline: 2px solid var(--admin-primary);
  outline-offset: 2px;
}

body.corporate-admin ::-webkit-scrollbar { width: 9px; height: 9px; }
body.corporate-admin ::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 999px;
  background: color-mix(in srgb, var(--admin-text-3) 38%, transparent);
  background-clip: padding-box;
}

@media (max-width: 1024px) {
  body.corporate-admin #sidebar { width: 240px; flex-basis: 240px; }
}

@media (max-width: 768px) {
  body.corporate-admin #sidebar {
    width: min(86vw, 300px) !important;
    box-shadow: -18px 0 50px rgba(0, 0, 0, .24);
  }

  body.corporate-admin #admin-sidebar-overlay.open {
    background: rgba(8, 10, 14, .55);
    backdrop-filter: none;
  }

  body.corporate-admin main > header {
    height: 56px;
    padding-inline: 14px 54px !important;
  }

  body.corporate-admin #page-title { font-size: 15px; }
  body.corporate-admin #content-area { padding: 12px !important; }
  body.corporate-admin .hover-card { padding: 16px !important; }
  body.corporate-admin .tab-content .p-6,
  body.corporate-admin .tab-content .p-8 { padding: 16px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.corporate-admin *,
  body.corporate-admin *::before,
  body.corporate-admin *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
