/**
 * Sneat dark-theme overrides for free template.
 * Free core.css only ships Bootstrap's basic [data-bs-theme=dark] tokens.
 * Cards/menu/navbar use --bs-paper-bg / --bs-menu-bg which stay light unless overridden.
 * Values aligned with Sneat Pro dark defaults.
 */
[data-bs-theme='dark'] {
  color-scheme: dark;

  /* Body / text */
  --bs-body-color: #b2b2c4;
  --bs-body-color-rgb: 178, 178, 196;
  --bs-body-bg: #232333;
  --bs-body-bg-rgb: 35, 35, 51;
  --bs-emphasis-color: #fff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: #7e7f96;
  --bs-secondary-color-rgb: 126, 127, 150;
  --bs-secondary-bg: #4e4f6c;
  --bs-secondary-bg-rgb: 78, 79, 108;
  --bs-tertiary-color: rgba(178, 178, 196, 0.5);
  --bs-tertiary-color-rgb: 178, 178, 196;
  --bs-tertiary-bg: #464764;
  --bs-tertiary-bg-rgb: 70, 71, 100;
  --bs-heading-color: #d5d5e2;
  --bs-link-color: #a5a7ff;
  --bs-link-hover-color: #aeb0ff;
  --bs-link-color-rgb: 165, 167, 255;
  --bs-link-hover-color-rgb: 174, 176, 255;
  --bs-border-color: #4e4f6c;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-code-color: #f18bba;
  --bs-highlight-color: #b2b2c4;
  --bs-highlight-bg: #664400;
  --bs-form-valid-color: #71dd37;
  --bs-form-valid-border-color: #71dd37;
  --bs-form-invalid-color: #ff3e1d;
  --bs-form-invalid-border-color: #ff3e1d;

  /* Subtle / emphasis */
  --bs-primary-text-emphasis: #a5a7ff;
  --bs-secondary-text-emphasis: #b6bec8;
  --bs-success-text-emphasis: #aaeb87;
  --bs-info-text-emphasis: #68dbf4;
  --bs-warning-text-emphasis: #ffcd66;
  --bs-danger-text-emphasis: #ff8b77;
  --bs-light-text-emphasis: #b2b2c4;
  --bs-dark-text-emphasis: #e6e6f1;
  --bs-primary-bg-subtle: #35365f;
  --bs-secondary-bg-subtle: #393c50;
  --bs-success-bg-subtle: #36483f;
  --bs-info-bg-subtle: #25445c;
  --bs-warning-bg-subtle: #4d4036;
  --bs-danger-bg-subtle: #4d2f3a;
  --bs-light-bg-subtle: #303145;
  --bs-dark-bg-subtle: #35364f;
  --bs-primary-border-subtle: #454682;
  --bs-secondary-border-subtle: #4b4f6c;
  --bs-success-border-subtle: #466152;
  --bs-info-border-subtle: #2c5b7d;
  --bs-warning-border-subtle: #695544;
  --bs-danger-border-subtle: #693b4b;
  --bs-light-border-subtle: #3d3e5b;
  --bs-dark-border-subtle: #45466a;

  /* Grays */
  --bs-gray-25: #38394c;
  --bs-gray-60: #434463;
  --bs-gray-80: #474866;
  --bs-gray-100: #4a4b69;
  --bs-gray-200: #4e4f6c;
  --bs-gray-300: #6d6e87;
  --bs-gray-400: #7e7f96;
  --bs-gray-500: #8f90a5;
  --bs-gray-600: #a1a1b5;
  --bs-gray-700: #b2b2c4;
  --bs-gray-800: #c3c4d3;
  --bs-gray-900: #d5d5e2;
  --bs-light: #494a5d;
  --bs-dark: #6b6c9d;
  --bs-gray: #8f90a5;
  --bs-light-rgb: 73, 74, 93;
  --bs-dark-rgb: 107, 108, 157;
  --bs-gray-rgb: 143, 144, 165;

  /* Sneat custom tokens (critical for cards/menu/navbar) */
  --bs-bg-label-tint-amount: 84%;
  --bs-border-subtle-amount: 76%;
  --bs-base-color: #e6e6f1;
  --bs-base-color-rgb: 230, 230, 241;
  --bs-paper-bg: #2b2c40;
  --bs-paper-bg-rgb: 43, 44, 64;
  --bs-box-shadow: 0 0.1875rem 0.5rem 0 rgba(20, 20, 29, 0.22);
  --bs-box-shadow-xs: 0 0.0625rem 0.3175rem 0 rgba(20, 20, 29, 0.18);
  --bs-box-shadow-sm: 0 0.125rem 0.375rem 0 rgba(20, 20, 29, 0.2);
  --bs-box-shadow-lg: 0 0.25rem 0.75rem 0 rgba(20, 20, 29, 0.24);
  --bs-box-shadow-xl: 0 0.3125rem 1.375rem 0 rgba(20, 20, 29, 0.26);
  --bs-floating-component-shadow: 0 0.1875rem 0.5rem 0 rgba(20, 20, 29, 0.22);
  --bs-navbar-bg: var(--bs-paper-bg);
  --bs-navbar-box-shadow: 0 0 10px #4e4f6c;
  --bs-navbar-border-color: var(--bs-paper-bg);
  --bs-nav-border-color: var(--bs-paper-bg);
  --bs-menu-header-color: var(--bs-heading-color);

  /* Contrast helpers */
  --bs-primary-contrast: var(--bs-white);
  --bs-secondary-contrast: var(--bs-white);
  --bs-success-contrast: var(--bs-white);
  --bs-info-contrast: var(--bs-white);
  --bs-warning-contrast: var(--bs-white);
  --bs-danger-contrast: var(--bs-white);
  --bs-light-contrast: var(--bs-white);
  --bs-dark-contrast: var(--bs-white);
  --bs-gray-contrast: var(--bs-white);

  /* Menu */
  --bs-menu-bg: #2b2c40;
  --bs-menu-bg-rgb: var(--bs-paper-bg-rgb);
  --bs-menu-color: #b2b2c4;
  --bs-menu-color-rgb: 178, 178, 196;
  --bs-menu-hover-bg: rgba(230, 230, 241, 0.06);
  --bs-menu-hover-color: #b2b2c4;
  --bs-menu-active-bg: var(--bs-primary);
  --bs-menu-active-color: #fff;
  --bs-menu-active-toggle-bg: rgba(230, 230, 241, 0.08);
  --bs-menu-sub-active-bg: var(--bs-primary);
  --bs-menu-sub-active-color: #fff;
  --bs-menu-box-shadow: 0 0.125rem 0.375rem 0 rgba(20, 20, 29, 0.2);
  --bs-menu-divider-color: transparent;
  --bs-menu-horizontal-active-bg: var(--bs-menu-bg);
}

[data-bs-theme='dark'] .bg-menu-theme,
.layout-menu[data-bs-theme='dark'].bg-menu-theme,
.layout-menu[data-bs-theme='dark'] {
  background-color: var(--bs-menu-bg) !important;
  color: var(--bs-menu-color);
}

[data-bs-theme='dark'] .bg-navbar-theme {
  background-color: var(--bs-navbar-bg) !important;
  color: var(--bs-heading-color);
}

[data-bs-theme='dark'] .bg-footer-theme {
  background-color: var(--bs-paper-bg) !important;
  color: var(--bs-body-color);
}

[data-bs-theme='dark'] .layout-overlay {
  background: rgba(20, 20, 29, 0.5);
}

[data-bs-theme='dark'] .dropdown-menu {
  --bs-dropdown-bg: var(--bs-paper-bg);
  --bs-dropdown-color: var(--bs-body-color);
  --bs-dropdown-border-color: var(--bs-border-color);
  --bs-dropdown-link-color: var(--bs-body-color);
  --bs-dropdown-link-hover-color: var(--bs-heading-color);
  --bs-dropdown-link-hover-bg: rgba(230, 230, 241, 0.06);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: var(--bs-primary);
  --bs-dropdown-divider-bg: var(--bs-border-color);
}

[data-bs-theme='dark'] .table {
  --bs-table-color: var(--bs-body-color);
  --bs-table-bg: transparent;
  --bs-table-border-color: var(--bs-border-color);
  --bs-table-striped-bg: rgba(230, 230, 241, 0.04);
  --bs-table-hover-bg: rgba(230, 230, 241, 0.06);
}

[data-bs-theme='dark'] .form-control,
[data-bs-theme='dark'] .form-select {
  background-color: var(--bs-paper-bg);
  color: var(--bs-heading-color);
  border-color: var(--bs-border-color);
}

[data-bs-theme='dark'] .form-control:focus,
[data-bs-theme='dark'] .form-select:focus {
  background-color: var(--bs-paper-bg);
  color: var(--bs-heading-color);
  border-color: var(--bs-primary);
}

[data-bs-theme='dark'] .text-body-secondary,
[data-bs-theme='dark'] .text-muted {
  color: var(--bs-secondary-color) !important;
}
