/* ==========================================================================
   Modern theme — inspired by TailAdmin CRM (https://demo.tailadmin.com/crm)
   Activated by body.theme-tailadmin (user menu switch, sites on 3.7.3+).
   Dark variant activated by body.theme-tailadmin.theme-dark.
   Every rule is scoped under body.theme-tailadmin so this file is inert
   for users/sites that have not enabled the theme.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Design tokens
   -------------------------------------------------------------------------- */
body.theme-tailadmin {
  /* brand */
  --tt-brand-50: #ecf3ff;
  --tt-brand-100: #dde9ff;
  --tt-brand-200: #c2d6ff;
  --tt-brand-400: #7592ff;
  --tt-brand-500: #465fff;
  --tt-brand-600: #3641f5;
  --tt-brand-700: #2a31d8;

  /* grays */
  --tt-gray-25: #fcfcfd;
  --tt-gray-50: #f9fafb;
  --tt-gray-100: #f2f4f7;
  --tt-gray-200: #e4e7ec;
  --tt-gray-300: #d0d5dd;
  --tt-gray-400: #98a2b3;
  --tt-gray-500: #667085;
  --tt-gray-600: #475467;
  --tt-gray-700: #344054;
  --tt-gray-800: #1d2939;
  --tt-gray-900: #101828;

  /* semantic */
  --tt-success-50: #ecfdf3;
  --tt-success-500: #12b76a;
  --tt-success-600: #039855;
  --tt-warning-50: #fffaeb;
  --tt-warning-500: #f79009;
  --tt-warning-600: #dc6803;
  --tt-error-50: #fef3f2;
  --tt-error-500: #f04438;
  --tt-error-600: #d92d20;
  --tt-info-50: #f0f9ff;
  --tt-info-500: #0ba5ec;
  --tt-info-600: #0086c9;

  /* surfaces */
  --tt-bg: var(--tt-gray-50);
  --tt-bg-subtle: var(--tt-gray-100);
  --tt-card: #ffffff;
  --tt-card-hover: var(--tt-gray-50);
  --tt-border: var(--tt-gray-200);
  --tt-border-strong: var(--tt-gray-300);

  /* text */
  --tt-heading: var(--tt-gray-900);
  --tt-text: var(--tt-gray-600);
  --tt-text-muted: var(--tt-gray-400);

  /* nav */
  --tt-nav-bg: #ffffff;
  --tt-nav-text: var(--tt-gray-700);
  --tt-nav-icon: var(--tt-gray-500);
  --tt-nav-hover-bg: var(--tt-gray-100);
  --tt-nav-active-bg: var(--tt-brand-50);
  --tt-nav-active-text: var(--tt-brand-500);

  /* effects */
  --tt-radius-card: 1rem;
  --tt-radius-input: 0.5rem;
  --tt-radius-menu: 0.75rem;
  --tt-shadow-sm: 0 1px 3px 0 rgba(16, 24, 40, 0.1), 0 1px 2px 0 rgba(16, 24, 40, 0.06);
  --tt-shadow-md: 0 4px 8px -2px rgba(16, 24, 40, 0.1), 0 2px 4px -2px rgba(16, 24, 40, 0.06);
  --tt-shadow-lg: 0 12px 16px -4px rgba(16, 24, 40, 0.08), 0 4px 6px -2px rgba(16, 24, 40, 0.03);
  --tt-focus-ring: 0 0 0 3px rgba(70, 95, 255, 0.15);
}

body.theme-tailadmin.theme-dark {
  --tt-bg: #101828;
  --tt-bg-subtle: rgba(255, 255, 255, 0.04);
  --tt-card: #18202f;
  --tt-card-hover: rgba(255, 255, 255, 0.04);
  --tt-border: #1d2939;
  --tt-border-strong: #344054;

  --tt-heading: #f9fafb;
  --tt-text: #98a2b3;
  --tt-text-muted: #667085;

  --tt-nav-bg: #101828;
  --tt-nav-text: #98a2b3;
  --tt-nav-icon: #667085;
  --tt-nav-hover-bg: rgba(255, 255, 255, 0.05);
  --tt-nav-active-bg: rgba(70, 95, 255, 0.14);
  --tt-nav-active-text: #7592ff;

  --tt-brand-50: rgba(70, 95, 255, 0.14);
  --tt-success-50: rgba(18, 183, 106, 0.14);
  --tt-warning-50: rgba(247, 144, 9, 0.14);
  --tt-error-50: rgba(240, 68, 56, 0.14);
  --tt-info-50: rgba(11, 165, 236, 0.14);

  --tt-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.4);
  --tt-shadow-md: 0 4px 8px -2px rgba(0, 0, 0, 0.5);
  --tt-shadow-lg: 0 12px 16px -4px rgba(0, 0, 0, 0.55);
}

/* --------------------------------------------------------------------------
   2. Base
   -------------------------------------------------------------------------- */
body.theme-tailadmin,
body.theme-tailadmin .page-wrapper,
body.theme-tailadmin .page-inner,
body.theme-tailadmin .page-content {
  background: var(--tt-bg);
  color: var(--tt-text);
}

body.theme-tailadmin,
body.theme-tailadmin .btn,
body.theme-tailadmin .form-control,
body.theme-tailadmin .dropdown-menu,
body.theme-tailadmin .popover,
body.theme-tailadmin .tooltip {
  font-family: 'Outfit', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

body.theme-tailadmin h1, body.theme-tailadmin h2, body.theme-tailadmin h3,
body.theme-tailadmin h4, body.theme-tailadmin h5, body.theme-tailadmin h6 {
  color: var(--tt-heading);
  font-weight: 600;
}

body.theme-tailadmin a:not(.btn):not(.dropdown-item):not(.nav-link):not(.page-link) {
  color: var(--tt-brand-500);
}
body.theme-tailadmin a:not(.btn):not(.dropdown-item):not(.nav-link):not(.page-link):hover {
  color: var(--tt-brand-600);
}

body.theme-tailadmin .text-muted { color: var(--tt-text-muted) !important; }
body.theme-tailadmin.theme-dark .text-dark { color: var(--tt-heading) !important; }
body.theme-tailadmin.theme-dark .bg-white { background-color: var(--tt-card) !important; }
body.theme-tailadmin .bg-faded { background-color: var(--tt-bg-subtle) !important; }
body.theme-tailadmin .border-faded { border-color: var(--tt-border) !important; }

/* scrollbars */
body.theme-tailadmin ::-webkit-scrollbar { width: 8px; height: 8px; }
body.theme-tailadmin ::-webkit-scrollbar-track { background: transparent; }
body.theme-tailadmin ::-webkit-scrollbar-thumb {
  background: var(--tt-border-strong);
  border-radius: 4px;
}
body.theme-tailadmin ::-webkit-scrollbar-thumb:hover { background: var(--tt-gray-400); }

/* --------------------------------------------------------------------------
   3. Logo strip
   -------------------------------------------------------------------------- */
body.theme-tailadmin .page-logo,
body.theme-tailadmin .page-sidebar,
body.theme-tailadmin .nav-footer,
body.theme-tailadmin .bg-brand-gradient {
  background-image: none;
  background-color: var(--tt-nav-bg);
}

body.theme-tailadmin .page-logo {
  border-bottom: 1px solid var(--tt-border);
}
body.theme-tailadmin .page-logo-text {
  color: var(--tt-heading);
  font-weight: 600;
}
/* the stock logo artwork is white — darken it on light backgrounds */
body.theme-tailadmin:not(.theme-dark) .page-logo img,
body.theme-tailadmin:not(.theme-dark) .page-header > .page-logo img {
  filter: brightness(0) opacity(0.85);
}
body.theme-tailadmin .page-logo .fal,
body.theme-tailadmin .page-logo .ni {
  color: var(--tt-text-muted);
}

/* --------------------------------------------------------------------------
   4. Header
   -------------------------------------------------------------------------- */
body.theme-tailadmin .page-header {
  background-color: var(--tt-card);
  box-shadow: none;
  border-bottom: 1px solid var(--tt-border);
}

body.theme-tailadmin .page-header .header-icon:not(.btn),
body.theme-tailadmin .page-header .header-btn {
  color: var(--tt-gray-500);
  border-radius: var(--tt-radius-input);
}
body.theme-tailadmin.theme-dark .page-header .header-icon:not(.btn),
body.theme-tailadmin.theme-dark .page-header .header-btn {
  color: var(--tt-text);
}
body.theme-tailadmin .page-header .header-icon:not(.btn):hover,
body.theme-tailadmin .page-header .header-btn:hover {
  color: var(--tt-heading);
  background-color: var(--tt-nav-hover-bg);
}
body.theme-tailadmin .page-header .header-icon:not(.btn) > [class*='fa-']:first-child,
body.theme-tailadmin .page-header .header-icon:not(.btn) > .ni:first-child {
  color: inherit;
}
body.theme-tailadmin .page-header [data-class="mobile-nav-on"] {
  color: var(--tt-gray-500);
}

/* header search */
body.theme-tailadmin .page-header .typeahead__query input,
body.theme-tailadmin .page-header #searchBox {
  background-color: var(--tt-bg);
  border: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-input);
  color: var(--tt-heading);
}
body.theme-tailadmin .page-header .typeahead__query input::placeholder,
body.theme-tailadmin .page-header #searchBox::placeholder {
  color: var(--tt-text-muted);
}
body.theme-tailadmin .page-header .typeahead__query input:focus,
body.theme-tailadmin .page-header #searchBox:focus {
  border-color: var(--tt-brand-500);
  box-shadow: var(--tt-focus-ring);
  background-color: var(--tt-card);
}

body.theme-tailadmin .page-header .badge.badge-icon {
  background-color: var(--tt-brand-500);
  box-shadow: 0 0 0 2px var(--tt-card);
}

/* --------------------------------------------------------------------------
   5. Sidebar navigation
   -------------------------------------------------------------------------- */
body.theme-tailadmin .page-sidebar {
  border-right: 1px solid var(--tt-border);
}

body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li a {
  color: var(--tt-nav-text);
  border-radius: var(--tt-radius-input);
  margin: 0.125rem 0.75rem;
  padding: 0.625rem 0.75rem;
  font-weight: 500;
}
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li a > [class*='fa-'],
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li a > .ni {
  color: var(--tt-nav-icon);
}
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li a:hover {
  color: var(--tt-heading);
  background-color: var(--tt-nav-hover-bg);
}
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li a:hover > [class*='fa-'],
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li a:hover > .ni {
  color: var(--tt-nav-text);
}

/* active / open states */
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li.active > a,
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li.open > a {
  background-color: var(--tt-nav-active-bg);
  color: var(--tt-nav-active-text);
  box-shadow: none;
}
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li.active > a > [class*='fa-'],
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li.active > a > .ni,
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li.open > a > [class*='fa-'],
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li.open > a > .ni {
  color: var(--tt-nav-active-text);
}
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li.active > a:hover {
  background-color: var(--tt-nav-active-bg);
  color: var(--tt-nav-active-text);
}

/* sub-menus: flat, indented, no dark overlay */
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li > ul {
  background-color: transparent;
}
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li > ul li a {
  padding-left: 2.5rem;
  font-weight: 400;
}
body.theme-tailadmin .page-sidebar .primary-nav .nav-menu li > ul li.active > a {
  background-color: transparent;
  color: var(--tt-nav-active-text);
  font-weight: 500;
}

body.theme-tailadmin .nav-title {
  color: var(--tt-text-muted);
  font-weight: 500;
  letter-spacing: 0.04em;
}

/* menu filter box */
body.theme-tailadmin .nav-filter input {
  background-color: var(--tt-bg);
  border: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-input);
  color: var(--tt-heading);
}
body.theme-tailadmin .nav-filter input::placeholder { color: var(--tt-text-muted); }
body.theme-tailadmin .nav-filter input:focus {
  border-color: var(--tt-brand-500);
  box-shadow: var(--tt-focus-ring);
}

body.theme-tailadmin .nav-footer [class*='fa-'],
body.theme-tailadmin .nav-footer .ni {
  color: var(--tt-nav-icon);
}

/* --------------------------------------------------------------------------
   6. Content chrome
   -------------------------------------------------------------------------- */
body.theme-tailadmin .subheader-title {
  color: var(--tt-heading);
  font-weight: 600;
  text-shadow: none;
}
body.theme-tailadmin .subheader-title small {
  color: var(--tt-text-muted);
}
body.theme-tailadmin .breadcrumb {
  background: transparent;
}
body.theme-tailadmin .breadcrumb-item,
body.theme-tailadmin .breadcrumb-item a {
  color: var(--tt-text-muted);
}
body.theme-tailadmin .breadcrumb-item.active { color: var(--tt-heading); }

body.theme-tailadmin .page-footer {
  background-color: var(--tt-card);
  color: var(--tt-text-muted);
  border-top: 1px solid var(--tt-border);
}

/* --------------------------------------------------------------------------
   7. Panels / cards
   -------------------------------------------------------------------------- */
body.theme-tailadmin .panel {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-card);
  box-shadow: var(--tt-shadow-sm);
}
body.theme-tailadmin .panel-hdr {
  background-color: transparent;
  border-bottom: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-card) var(--tt-radius-card) 0 0;
}
body.theme-tailadmin .panel-hdr h2 {
  color: var(--tt-heading);
  font-weight: 600;
}
body.theme-tailadmin .panel-container {
  background-color: transparent;
  border-radius: 0 0 var(--tt-radius-card) var(--tt-radius-card);
}
body.theme-tailadmin .panel-content {
  color: var(--tt-text);
}
body.theme-tailadmin .panel-tag {
  background-color: var(--tt-brand-50);
  color: var(--tt-text);
  border-radius: var(--tt-radius-input);
}
body.theme-tailadmin .panel-toolbar .btn-panel { opacity: 0.65; }
body.theme-tailadmin .panel-toolbar .btn-panel:hover { opacity: 1; }

body.theme-tailadmin .card {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-card);
}
body.theme-tailadmin .card-header,
body.theme-tailadmin .card-footer {
  background-color: transparent;
  border-color: var(--tt-border);
}

body.theme-tailadmin .frame-wrap { background-color: transparent; }

/* --------------------------------------------------------------------------
   8. Buttons
   -------------------------------------------------------------------------- */
body.theme-tailadmin .btn {
  border-radius: var(--tt-radius-input);
  font-weight: 500;
  box-shadow: none;
}
body.theme-tailadmin .btn:focus {
  box-shadow: var(--tt-focus-ring);
}

body.theme-tailadmin .btn-primary {
  background-color: var(--tt-brand-500);
  border-color: var(--tt-brand-500);
  color: #fff;
}
body.theme-tailadmin .btn-primary:hover,
body.theme-tailadmin .btn-primary:not(:disabled):not(.disabled):active,
body.theme-tailadmin .btn-primary:not(:disabled):not(.disabled).active,
body.theme-tailadmin .show > .btn-primary.dropdown-toggle {
  background-color: var(--tt-brand-600);
  border-color: var(--tt-brand-600);
  color: #fff;
}

body.theme-tailadmin .btn-secondary,
body.theme-tailadmin .btn-default,
body.theme-tailadmin .btn-light {
  background-color: var(--tt-card);
  border-color: var(--tt-border-strong);
  color: var(--tt-gray-700);
}
body.theme-tailadmin.theme-dark .btn-secondary,
body.theme-tailadmin.theme-dark .btn-default,
body.theme-tailadmin.theme-dark .btn-light {
  color: var(--tt-text);
}
body.theme-tailadmin .btn-secondary:hover,
body.theme-tailadmin .btn-default:hover,
body.theme-tailadmin .btn-light:hover {
  background-color: var(--tt-card-hover);
  border-color: var(--tt-border-strong);
  color: var(--tt-heading);
}

body.theme-tailadmin .btn-success {
  background-color: var(--tt-success-500);
  border-color: var(--tt-success-500);
}
body.theme-tailadmin .btn-success:hover {
  background-color: var(--tt-success-600);
  border-color: var(--tt-success-600);
}
body.theme-tailadmin .btn-danger {
  background-color: var(--tt-error-500);
  border-color: var(--tt-error-500);
}
body.theme-tailadmin .btn-danger:hover {
  background-color: var(--tt-error-600);
  border-color: var(--tt-error-600);
}
body.theme-tailadmin .btn-warning {
  background-color: var(--tt-warning-500);
  border-color: var(--tt-warning-500);
  color: #fff;
}
body.theme-tailadmin .btn-warning:hover {
  background-color: var(--tt-warning-600);
  border-color: var(--tt-warning-600);
  color: #fff;
}
body.theme-tailadmin .btn-info {
  background-color: var(--tt-info-500);
  border-color: var(--tt-info-500);
}
body.theme-tailadmin .btn-info:hover {
  background-color: var(--tt-info-600);
  border-color: var(--tt-info-600);
}

body.theme-tailadmin .btn-outline-primary {
  color: var(--tt-brand-500);
  border-color: var(--tt-brand-500);
  background-color: transparent;
}
body.theme-tailadmin .btn-outline-primary:hover,
body.theme-tailadmin .btn-outline-primary:not(:disabled):not(.disabled):active,
body.theme-tailadmin .btn-outline-primary:not(:disabled):not(.disabled).active {
  background-color: var(--tt-brand-500);
  border-color: var(--tt-brand-500);
  color: #fff;
}
body.theme-tailadmin .btn-outline-secondary,
body.theme-tailadmin .btn-outline-default {
  color: var(--tt-gray-700);
  border-color: var(--tt-border-strong);
}
body.theme-tailadmin.theme-dark .btn-outline-secondary,
body.theme-tailadmin.theme-dark .btn-outline-default {
  color: var(--tt-text);
}
body.theme-tailadmin .btn-outline-secondary:hover,
body.theme-tailadmin .btn-outline-default:hover {
  background-color: var(--tt-nav-hover-bg);
  border-color: var(--tt-border-strong);
  color: var(--tt-heading);
}
body.theme-tailadmin .btn-outline-danger { color: var(--tt-error-500); border-color: var(--tt-error-500); }
body.theme-tailadmin .btn-outline-danger:hover { background-color: var(--tt-error-500); color: #fff; }
body.theme-tailadmin .btn-outline-success { color: var(--tt-success-500); border-color: var(--tt-success-500); }
body.theme-tailadmin .btn-outline-success:hover { background-color: var(--tt-success-500); color: #fff; }

body.theme-tailadmin .btn-link { color: var(--tt-brand-500); }

/* --------------------------------------------------------------------------
   9. Forms
   -------------------------------------------------------------------------- */
body.theme-tailadmin .form-control,
body.theme-tailadmin .custom-select,
body.theme-tailadmin select.form-control,
body.theme-tailadmin textarea.form-control {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border-strong);
  border-radius: var(--tt-radius-input);
  color: var(--tt-heading);
}
body.theme-tailadmin .form-control::placeholder { color: var(--tt-text-muted); }
body.theme-tailadmin .form-control:focus,
body.theme-tailadmin .custom-select:focus {
  border-color: var(--tt-brand-500);
  box-shadow: var(--tt-focus-ring);
  background-color: var(--tt-card);
  color: var(--tt-heading);
}
body.theme-tailadmin .form-control:disabled,
body.theme-tailadmin .form-control[readonly] {
  background-color: var(--tt-bg-subtle);
  color: var(--tt-text-muted);
}
body.theme-tailadmin label,
body.theme-tailadmin .form-label,
body.theme-tailadmin legend {
  color: var(--tt-gray-700);
}
body.theme-tailadmin.theme-dark label,
body.theme-tailadmin.theme-dark .form-label,
body.theme-tailadmin.theme-dark legend {
  color: var(--tt-text);
}

body.theme-tailadmin .input-group-text {
  background-color: var(--tt-bg-subtle);
  border: 1px solid var(--tt-border-strong);
  border-radius: var(--tt-radius-input);
  color: var(--tt-text);
}

/* checkboxes / radios / switches */
body.theme-tailadmin .custom-control-input:checked ~ .custom-control-label::before {
  background-color: var(--tt-brand-500);
  border-color: var(--tt-brand-500);
}
body.theme-tailadmin .custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: var(--tt-focus-ring);
}
body.theme-tailadmin .custom-control-label::before {
  background-color: var(--tt-card);
  border-color: var(--tt-border-strong);
}

/* select2 */
body.theme-tailadmin .select2-container--default .select2-selection--single,
body.theme-tailadmin .select2-container--default .select2-selection--multiple {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border-strong);
  border-radius: var(--tt-radius-input);
  color: var(--tt-heading);
}
body.theme-tailadmin .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--tt-heading);
}
body.theme-tailadmin .select2-dropdown {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-menu);
  box-shadow: var(--tt-shadow-lg);
  color: var(--tt-text);
}
body.theme-tailadmin .select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: var(--tt-brand-500);
  color: #fff;
}
body.theme-tailadmin .select2-container--default .select2-search--dropdown .select2-search__field {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border-strong);
  border-radius: var(--tt-radius-input);
  color: var(--tt-heading);
}
body.theme-tailadmin .select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: var(--tt-brand-50);
  border: 1px solid transparent;
  border-radius: 0.375rem;
  color: var(--tt-brand-500);
}

/* --------------------------------------------------------------------------
   10. Dropdown menus
   -------------------------------------------------------------------------- */
body.theme-tailadmin .dropdown-menu {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-menu);
  box-shadow: var(--tt-shadow-lg);
  color: var(--tt-text);
}
body.theme-tailadmin .dropdown-item {
  color: var(--tt-gray-700);
}
body.theme-tailadmin.theme-dark .dropdown-item {
  color: var(--tt-text);
}
body.theme-tailadmin .dropdown-item:hover,
body.theme-tailadmin .dropdown-item:focus {
  background-color: var(--tt-nav-hover-bg);
  color: var(--tt-heading);
}
body.theme-tailadmin .dropdown-item.active,
body.theme-tailadmin .dropdown-item:active {
  background-color: var(--tt-nav-active-bg);
  color: var(--tt-nav-active-text);
}
body.theme-tailadmin .dropdown-divider { border-color: var(--tt-border); }
body.theme-tailadmin .dropdown-header { color: var(--tt-text-muted); }

/* gradient headers inside dropdowns (user card, notifications) */
body.theme-tailadmin .bg-trans-gradient {
  background: linear-gradient(135deg, var(--tt-brand-500), var(--tt-brand-700)) !important;
}

/* --------------------------------------------------------------------------
   11. Tables
   -------------------------------------------------------------------------- */
body.theme-tailadmin .table {
  color: var(--tt-text);
  border-color: var(--tt-border);
}
body.theme-tailadmin .table thead th {
  background-color: var(--tt-bg-subtle);
  color: var(--tt-gray-500);
  border-top: 0;
  border-bottom: 1px solid var(--tt-border);
  font-weight: 500;
}
body.theme-tailadmin.theme-dark .table thead th { color: var(--tt-text); }
body.theme-tailadmin .table td,
body.theme-tailadmin .table th {
  border-color: var(--tt-border);
}
body.theme-tailadmin .table-hover tbody tr:hover {
  background-color: var(--tt-card-hover);
  color: var(--tt-heading);
}
body.theme-tailadmin .table-striped tbody tr:nth-of-type(odd) {
  background-color: var(--tt-bg-subtle);
}
body.theme-tailadmin .table-bordered,
body.theme-tailadmin .table-bordered td,
body.theme-tailadmin .table-bordered th {
  border-color: var(--tt-border);
}

/* DataTables chrome */
body.theme-tailadmin .dataTables_wrapper .dataTables_length select,
body.theme-tailadmin .dataTables_wrapper .dataTables_filter input {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border-strong);
  border-radius: var(--tt-radius-input);
  color: var(--tt-heading);
}
body.theme-tailadmin .dataTables_wrapper .dataTables_info,
body.theme-tailadmin .dataTables_wrapper .dataTables_length,
body.theme-tailadmin .dataTables_wrapper .dataTables_filter {
  color: var(--tt-text);
}
body.theme-tailadmin .dataTables_wrapper .dataTables_paginate .paginate_button {
  border-radius: var(--tt-radius-input);
  color: var(--tt-text) !important;
}
body.theme-tailadmin .dataTables_wrapper .dataTables_paginate .paginate_button.current,
body.theme-tailadmin .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: var(--tt-brand-500);
  border-color: var(--tt-brand-500);
  color: #fff !important;
}
body.theme-tailadmin .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: var(--tt-nav-hover-bg);
  border-color: var(--tt-border);
  color: var(--tt-heading) !important;
}

/* --------------------------------------------------------------------------
   12. Tabs & pills
   -------------------------------------------------------------------------- */
body.theme-tailadmin .nav-tabs {
  border-bottom: 1px solid var(--tt-border);
}
body.theme-tailadmin .nav-tabs .nav-link {
  color: var(--tt-gray-500);
  border: 0;
  border-bottom: 2px solid transparent;
  font-weight: 500;
  background: transparent;
}
body.theme-tailadmin .nav-tabs .nav-link:hover {
  color: var(--tt-heading);
  border-color: transparent transparent var(--tt-border-strong);
}
body.theme-tailadmin .nav-tabs .nav-link.active {
  color: var(--tt-brand-500);
  background: transparent;
  border-color: transparent transparent var(--tt-brand-500);
}
body.theme-tailadmin .nav-pills .nav-link {
  color: var(--tt-gray-700);
  border-radius: var(--tt-radius-input);
}
body.theme-tailadmin.theme-dark .nav-pills .nav-link { color: var(--tt-text); }
body.theme-tailadmin .nav-pills .nav-link.active {
  background-color: var(--tt-brand-500);
  color: #fff;
}

/* --------------------------------------------------------------------------
   13. Badges & alerts
   -------------------------------------------------------------------------- */
body.theme-tailadmin .badge {
  font-weight: 500;
  border-radius: 9999px;
  padding: 0.25em 0.7em;
}
body.theme-tailadmin .badge.badge-icon { padding: 0; border-radius: 50%; }
body.theme-tailadmin .badge-primary:not(.badge-icon) { background-color: var(--tt-brand-50); color: var(--tt-brand-500); }
body.theme-tailadmin .badge-secondary:not(.badge-icon) { background-color: var(--tt-bg-subtle); color: var(--tt-gray-700); }
body.theme-tailadmin.theme-dark .badge-secondary:not(.badge-icon) { color: var(--tt-text); }
body.theme-tailadmin .badge-success:not(.badge-icon) { background-color: var(--tt-success-50); color: var(--tt-success-600); }
body.theme-tailadmin .badge-danger:not(.badge-icon) { background-color: var(--tt-error-50); color: var(--tt-error-600); }
body.theme-tailadmin .badge-warning:not(.badge-icon) { background-color: var(--tt-warning-50); color: var(--tt-warning-600); }
body.theme-tailadmin .badge-info:not(.badge-icon) { background-color: var(--tt-info-50); color: var(--tt-info-600); }
body.theme-tailadmin.theme-dark .badge-success:not(.badge-icon) { color: var(--tt-success-500); }
body.theme-tailadmin.theme-dark .badge-danger:not(.badge-icon) { color: var(--tt-error-500); }
body.theme-tailadmin.theme-dark .badge-warning:not(.badge-icon) { color: var(--tt-warning-500); }
body.theme-tailadmin.theme-dark .badge-info:not(.badge-icon) { color: var(--tt-info-500); }

body.theme-tailadmin .alert {
  border-radius: var(--tt-radius-menu);
  border: 1px solid;
}
body.theme-tailadmin .alert-primary { background-color: var(--tt-brand-50); border-color: var(--tt-brand-200); color: var(--tt-brand-600); }
body.theme-tailadmin .alert-success { background-color: var(--tt-success-50); border-color: var(--tt-success-500); color: var(--tt-success-600); }
body.theme-tailadmin .alert-danger { background-color: var(--tt-error-50); border-color: var(--tt-error-500); color: var(--tt-error-600); }
body.theme-tailadmin .alert-warning { background-color: var(--tt-warning-50); border-color: var(--tt-warning-500); color: var(--tt-warning-600); }
body.theme-tailadmin .alert-info { background-color: var(--tt-info-50); border-color: var(--tt-info-500); color: var(--tt-info-600); }

/* --------------------------------------------------------------------------
   14. Modals & popovers
   -------------------------------------------------------------------------- */
body.theme-tailadmin .modal-content {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-card);
  box-shadow: var(--tt-shadow-lg);
  color: var(--tt-text);
}
body.theme-tailadmin .modal-header,
body.theme-tailadmin .modal-footer {
  border-color: var(--tt-border);
}
body.theme-tailadmin .modal-title { color: var(--tt-heading); }
body.theme-tailadmin.theme-dark .close { color: var(--tt-heading); text-shadow: none; }

body.theme-tailadmin .popover {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border);
  border-radius: var(--tt-radius-menu);
  box-shadow: var(--tt-shadow-md);
}
body.theme-tailadmin .popover-body { color: var(--tt-text); }
body.theme-tailadmin .popover-header {
  background-color: var(--tt-bg-subtle);
  border-color: var(--tt-border);
  color: var(--tt-heading);
}

/* --------------------------------------------------------------------------
   15. Pagination
   -------------------------------------------------------------------------- */
body.theme-tailadmin .page-link {
  background-color: var(--tt-card);
  border: 1px solid var(--tt-border);
  color: var(--tt-gray-700);
}
body.theme-tailadmin.theme-dark .page-link { color: var(--tt-text); }
body.theme-tailadmin .page-link:hover {
  background-color: var(--tt-nav-hover-bg);
  border-color: var(--tt-border);
  color: var(--tt-heading);
}
body.theme-tailadmin .page-item.active .page-link {
  background-color: var(--tt-brand-500);
  border-color: var(--tt-brand-500);
  color: #fff;
}
body.theme-tailadmin .page-item.disabled .page-link {
  background-color: var(--tt-bg-subtle);
  color: var(--tt-text-muted);
  border-color: var(--tt-border);
}

/* --------------------------------------------------------------------------
   16. Misc dark-mode cleanups
   -------------------------------------------------------------------------- */
body.theme-tailadmin.theme-dark .page-content,
body.theme-tailadmin.theme-dark .panel-content,
body.theme-tailadmin.theme-dark p {
  color: var(--tt-text);
}
body.theme-tailadmin.theme-dark hr { border-color: var(--tt-border); }
body.theme-tailadmin.theme-dark .list-group-item {
  background-color: var(--tt-card);
  border-color: var(--tt-border);
  color: var(--tt-text);
}
body.theme-tailadmin .list-group-item {
  border-color: var(--tt-border);
}
body.theme-tailadmin.theme-dark .custom-scroll::-webkit-scrollbar-thumb {
  background: var(--tt-border-strong);
}

/* app list (quick settings dropdown) */
body.theme-tailadmin .app-list-item {
  color: var(--tt-gray-700);
  border-radius: var(--tt-radius-menu);
}
body.theme-tailadmin.theme-dark .app-list-item { color: var(--tt-text); }
body.theme-tailadmin .app-list-item:hover {
  background-color: var(--tt-nav-hover-bg);
  border-color: transparent;
}
