/* Generated Bootstrap 5 Customizations */
/* Generated on: 2026-08-24 14:52:02 by BjÃ¶rn LjungstrÃ¶m */

:root {
  /* Userspice */
  --bs-us-menu-custom-bg: #2f3a2d;
  --bs-us-menu-custom-text: #f7f3ea;
  --bs-us-menu-custom-hover-bg: #49523a;
  --bs-us-menu-custom-hover-text: #ffffff;
  --bs-us-menu-custom-active-bg: #6f7856;
  --bs-us-menu-custom-active-text: #ffffff;
  --bs-us-menu-custom-divider: #49523a;
  --bs-us-menu-custom-submenu-border: #49523a;

  /* Colors_primary */
  --bs-primary: #6f7856;
  --bs-primary-hover: #49523a;
  --bs-primary-text-emphasis: #2f3a2d;
  --bs-primary-bg-subtle: #e7dcc8;
  --bs-primary-border-subtle: #c8b99f;

  /* Colors_secondary */
  --bs-secondary: #9a6f4c;
  --bs-secondary-hover: #7b583c;
  --bs-secondary-text-emphasis: #473829;
  --bs-secondary-bg-subtle: #eadfce;
  --bs-secondary-border-subtle: #d0b99f;

  /* Colors_success */
  --bs-success: #49523a;
  --bs-success-hover: #2f3a2d;
  --bs-success-text-emphasis: #2f3a2d;
  --bs-success-bg-subtle: #dde4d2;
  --bs-success-border-subtle: #aebc96;

  /* Colors_info */
  --bs-info: #6f7856;
  --bs-info-hover: #49523a;
  --bs-info-text-emphasis: #2f3a2d;
  --bs-info-bg-subtle: #e9eddc;
  --bs-info-border-subtle: #bdc8a5;

  /* Colors_warning */
  --bs-warning: #9a6f4c;
  --bs-warning-hover: #7b583c;
  --bs-warning-text-emphasis: #473829;
  --bs-warning-bg-subtle: #efe2d2;
  --bs-warning-border-subtle: #d6b18c;

  /* Colors_danger */
  --bs-danger: #9f4f3f;
  --bs-danger-hover: #7d382d;
  --bs-danger-text-emphasis: #4f241d;
  --bs-danger-bg-subtle: #efd9d2;
  --bs-danger-border-subtle: #d4a294;

  /* Colors_light_dark */
  --bs-light: #fffaf2;
  --bs-light-hover: #f7f3ea;
  --bs-light-text-emphasis: #473829;
  --bs-light-bg-subtle: #fffaf2;
  --bs-light-border-subtle: #e7dcc8;
  --bs-dark: #2f3a2d;
  --bs-dark-hover: #34402f;
  --bs-dark-text-emphasis: #2f2a23;
  --bs-dark-bg-subtle: #c8b99f;
  --bs-dark-border-subtle: #6f7856;

  /* Colors_general */
  --bs-body-color: #2f2a23;
  --bs-body-bg: #f7f3ea;
  --bs-border-color: #e7dcc8;
  --bs-form-control-bg: #fffaf2;
  --bs-secondary-color: #6f634f;
  --bs-tertiary-color: #9d907d;
  --bs-emphasis-color: #2f2a23;
  --bs-secondary-bg: #e7dcc8;
  --bs-tertiary-bg: #fffaf2;

  /* Typography */
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-font-size-base: 1rem;
  --bs-font-weight-normal: 400;
  --bs-font-weight-bold: 700;
  --bs-line-height-base: 1.5;
  --bs-headings-font-family: var(--bs-font-sans-serif);
  --bs-headings-font-weight: 500;
  --bs-headings-line-height: 1.2;
  --bs-headings-color: var(--bs-dark);
  --bs-h1-font-size: calc(1.375rem + 1.5vw);
  --bs-h2-font-size: calc(1.325rem + 0.9vw);
  --bs-h3-font-size: calc(1.3rem + 0.6vw);
  --bs-h4-font-size: calc(1.275rem + 0.3vw);
  --bs-h5-font-size: 1.25rem;
  --bs-h6-font-size: 1rem;

  /* Components */
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-2xl: 2rem;
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);

  /* Cards */
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-border-color: var(--bs-border-color);
  --bs-card-box-shadow: none;
  --bs-card-cap-bg: rgba(0, 0, 0, 0.03);

  /* Forms */
  --bs-input-bg: var(--bs-body-bg);
  --bs-input-color: var(--bs-body-color);
  --bs-input-border-color: var(--bs-border-color);
  --bs-input-focus-border-color: var(--bs-primary);
  --bs-input-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
  --bs-input-focus-bg: var(--bs-form-control-bg);
  --bs-input-focus-color: var(--bs-body-color);

  /* Navbars */
  --bs-navbar-light-color: rgba(0, 0, 0, 0.55);
  --bs-navbar-light-hover-color: rgba(0, 0, 0, 0.7);
  --bs-navbar-dark-color: rgba(255, 255, 255, 0.55);
  --bs-navbar-dark-hover-color: rgba(255, 255, 255, 0.75);

  --bs-primary-rgb: 111, 120, 86;
  --bs-secondary-rgb: 154, 111, 76;
  --bs-success-rgb: 73, 82, 58;
  --bs-info-rgb: 111, 120, 86;
  --bs-warning-rgb: 154, 111, 76;
  --bs-danger-rgb: 159, 79, 63;
  --bs-light-rgb: 255, 250, 242;
  --bs-dark-rgb: 47, 58, 45;
}

ul.us_menu.custom, ul.us_menu.custom .us_sub-menu li, ul.us_menu.custom ul.us_sub-menu {
  background-color: var(--bs-us-menu-custom-bg, #3a5e8c);
}

ul.us_menu.custom a, ul.us_menu.custom .us_menu_mobile_control {
  color: var(--bs-us-menu-custom-text, rgba(255, 255, 255, 0.85));
}

ul.us_menu.custom li:hover {
  background-color: var(--bs-us-menu-custom-hover-bg, #4a6e9c);
}

ul.us_menu.custom li:hover > a {
  background-color: var(--bs-us-menu-custom-hover-bg, #4a6e9c);
  color: var(--bs-us-menu-custom-hover-text, #ffffff);
}

ul.us_menu.custom li.active-style > a {
  background-color: var(--bs-us-menu-custom-active-bg, #264e7c);
  color: var(--bs-us-menu-custom-active-text, #ffffff);
}

ul.us_menu.custom .dropdown-divider {
  border-color: var(--bs-us-menu-custom-divider, rgba(255, 255, 255, 0.2));
}

ul.us_menu.custom .us_sub-menu {
  border-color: var(--bs-us-menu-custom-submenu-border, #2d5580);
}

.bg-primary {
  background-color: var(--bs-primary) !important;
}

.text-primary {
  color: var(--bs-primary) !important;
}

.border-primary {
  border-color: var(--bs-primary) !important;
}

.bg-secondary {
  background-color: var(--bs-secondary) !important;
}

.text-secondary {
  color: var(--bs-secondary) !important;
}

.border-secondary {
  border-color: var(--bs-secondary) !important;
}

.bg-success {
  background-color: var(--bs-success) !important;
}

.text-success {
  color: var(--bs-success) !important;
}

.border-success {
  border-color: var(--bs-success) !important;
}

.bg-info {
  background-color: var(--bs-info) !important;
}

.text-info {
  color: var(--bs-info) !important;
}

.border-info {
  border-color: var(--bs-info) !important;
}

.bg-warning {
  background-color: var(--bs-warning) !important;
}

.text-warning {
  color: var(--bs-warning) !important;
}

.border-warning {
  border-color: var(--bs-warning) !important;
}

.bg-danger {
  background-color: var(--bs-danger) !important;
}

.text-danger {
  color: var(--bs-danger) !important;
}

.border-danger {
  border-color: var(--bs-danger) !important;
}

.bg-light {
  background-color: var(--bs-light) !important;
}

.text-light {
  color: var(--bs-light) !important;
}

.border-light {
  border-color: var(--bs-light) !important;
}

.bg-dark {
  background-color: var(--bs-dark) !important;
}

.text-dark {
  color: var(--bs-dark) !important;
}

.border-dark {
  border-color: var(--bs-dark) !important;
}

body {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  font-family: var(--bs-font-sans-serif);
  font-size: var(--bs-font-size-base, 1rem);
  font-weight: var(--bs-font-weight-normal, 400);
  line-height: var(--bs-line-height-base, 1.5);
}

.form-control, .form-select, input.form-control, select.form-select, textarea.form-control {
  background-color: var(--bs-form-control-bg, var(--bs-body-bg)) !important;
}

.form-check-input:not(:checked) {
  background-color: var(--bs-input-bg, var(--bs-body-bg)) !important;
}

code, pre, kbd, .font-monospace {
  font-family: var(--bs-font-monospace);
}

strong, b, .fw-bold {
  font-weight: var(--bs-font-weight-bold, 700);
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--bs-headings-font-family, var(--bs-font-sans-serif));
  font-weight: var(--bs-headings-font-weight, 500);
  line-height: var(--bs-headings-line-height, 1.2);
  color: var(--bs-headings-color, var(--bs-body-color));
}

h1, .h1 {
  font-size: var(--bs-h1-font-size, calc(1.375rem + 1.5vw));
}

h2, .h2 {
  font-size: var(--bs-h2-font-size, calc(1.325rem + 0.9vw));
}

h3, .h3 {
  font-size: var(--bs-h3-font-size, calc(1.3rem + 0.6vw));
}

h4, .h4 {
  font-size: var(--bs-h4-font-size, calc(1.275rem + 0.3vw));
}

h5, .h5 {
  font-size: var(--bs-h5-font-size, 1.25rem);
}

h6, .h6 {
  font-size: var(--bs-h6-font-size, 1rem);
}

.card {
  border-radius: var(--bs-card-border-radius);
  border-color: var(--bs-card-border-color);
  box-shadow: var(--bs-card-box-shadow);
}

.card-header {
  background-color: var(--bs-card-cap-bg);
}

.form-control, .form-select {
  background-color: var(--bs-input-bg, var(--bs-body-bg)) !important;
}

.form-control {
  color: var(--bs-input-color, var(--bs-body-color));
}

.form-control, .form-select, .form-check-input {
  border-color: var(--bs-input-border-color, var(--bs-border-color));
}

.form-control:focus, .form-select:focus, .form-check-input:focus {
  border-color: var(--bs-input-focus-border-color);
  box-shadow: var(--bs-input-focus-box-shadow);
}

.form-control:focus, .form-select:focus, .form-check-input:focus:not(:checked) {
  background-color: var(--bs-input-focus-bg, var(--bs-form-control-bg)) !important;
}

.form-check-input:checked:focus {
  background-color: var(--bs-primary) !important;
}

.form-control:focus, .form-select:focus {
  color: var(--bs-input-focus-color, var(--bs-body-color)) !important;
}

.navbar-light .navbar-nav .nav-link {
  color: var(--bs-navbar-light-color);
}

.navbar-light .navbar-nav .nav-link:hover {
  color: var(--bs-navbar-light-hover-color);
}

.navbar-dark .navbar-nav .nav-link {
  color: var(--bs-navbar-dark-color);
}

.navbar-dark .navbar-nav .nav-link:hover {
  color: var(--bs-navbar-dark-hover-color);
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-hover-border-color: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-active-border-color: var(--bs-primary-hover, var(--bs-primary));
}

.btn-secondary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-secondary);
  --bs-btn-border-color: var(--bs-secondary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-hover-border-color: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-active-border-color: var(--bs-secondary-hover, var(--bs-secondary));
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-success);
  --bs-btn-border-color: var(--bs-success);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-success-hover, var(--bs-success));
  --bs-btn-hover-border-color: var(--bs-success-hover, var(--bs-success));
  --bs-btn-focus-shadow-rgb: var(--bs-success-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-success-hover, var(--bs-success));
  --bs-btn-active-border-color: var(--bs-success-hover, var(--bs-success));
}

.btn-info {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-info);
  --bs-btn-border-color: var(--bs-info);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-info-hover, var(--bs-info));
  --bs-btn-hover-border-color: var(--bs-info-hover, var(--bs-info));
  --bs-btn-focus-shadow-rgb: var(--bs-info-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-info-hover, var(--bs-info));
  --bs-btn-active-border-color: var(--bs-info-hover, var(--bs-info));
}

.btn-warning {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-warning);
  --bs-btn-border-color: var(--bs-warning);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-hover-border-color: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-focus-shadow-rgb: var(--bs-warning-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-active-border-color: var(--bs-warning-hover, var(--bs-warning));
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-danger);
  --bs-btn-border-color: var(--bs-danger);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-hover-border-color: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-focus-shadow-rgb: var(--bs-danger-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-active-border-color: var(--bs-danger-hover, var(--bs-danger));
}

.btn-light {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-bg: var(--bs-light);
  --bs-btn-border-color: var(--bs-light);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-light-hover, #d3d4d5);
  --bs-btn-hover-border-color: var(--bs-light-hover, var(--bs-light));
  --bs-btn-focus-shadow-rgb: var(--bs-light-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-light-hover, var(--bs-light));
  --bs-btn-active-border-color: var(--bs-light-hover, var(--bs-light));
}

.btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-dark);
  --bs-btn-border-color: var(--bs-dark);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-hover-border-color: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-focus-shadow-rgb: var(--bs-dark-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-active-border-color: var(--bs-dark-hover, var(--bs-dark));
}

.btn-outline-primary {
  --bs-btn-color: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-hover-border-color: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-active-border-color: var(--bs-primary-hover, var(--bs-primary));
}

.btn-outline-secondary {
  --bs-btn-color: var(--bs-secondary);
  --bs-btn-border-color: var(--bs-secondary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-hover-border-color: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-active-border-color: var(--bs-secondary-hover, var(--bs-secondary));
}

.btn-outline-success {
  --bs-btn-color: var(--bs-success);
  --bs-btn-border-color: var(--bs-success);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-success-hover, var(--bs-success));
  --bs-btn-hover-border-color: var(--bs-success-hover, var(--bs-success));
  --bs-btn-focus-shadow-rgb: var(--bs-success-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-success-hover, var(--bs-success));
  --bs-btn-active-border-color: var(--bs-success-hover, var(--bs-success));
}

.btn-outline-info {
  --bs-btn-color: var(--bs-info);
  --bs-btn-border-color: var(--bs-info);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-info-hover, var(--bs-info));
  --bs-btn-hover-border-color: var(--bs-info-hover, var(--bs-info));
  --bs-btn-focus-shadow-rgb: var(--bs-info-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-info-hover, var(--bs-info));
  --bs-btn-active-border-color: var(--bs-info-hover, var(--bs-info));
}

.btn-outline-warning {
  --bs-btn-color: var(--bs-warning);
  --bs-btn-border-color: var(--bs-warning);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-hover-border-color: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-focus-shadow-rgb: var(--bs-warning-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-active-border-color: var(--bs-warning-hover, var(--bs-warning));
}

.btn-outline-danger {
  --bs-btn-color: var(--bs-danger);
  --bs-btn-border-color: var(--bs-danger);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-hover-border-color: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-focus-shadow-rgb: var(--bs-danger-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-active-border-color: var(--bs-danger-hover, var(--bs-danger));
}

.btn-outline-light {
  --bs-btn-color: var(--bs-light);
  --bs-btn-border-color: var(--bs-light);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-light-hover, var(--bs-light));
  --bs-btn-hover-border-color: var(--bs-light-hover, var(--bs-light));
  --bs-btn-focus-shadow-rgb: var(--bs-light-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-light-hover, var(--bs-light));
  --bs-btn-active-border-color: var(--bs-light-hover, var(--bs-light));
}

.btn-outline-dark {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-border-color: var(--bs-dark);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-hover-border-color: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-focus-shadow-rgb: var(--bs-dark-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-active-border-color: var(--bs-dark-hover, var(--bs-dark));
}

.alert-primary {
  --bs-alert-color: var(--bs-primary-text-emphasis, var(--bs-primary));
  --bs-alert-bg: var(--bs-primary-bg-subtle, rgba(var(--bs-primary-rgb), 0.1));
  --bs-alert-border-color: var(--bs-primary-border-subtle, rgba(var(--bs-primary-rgb), 0.2));
  --bs-alert-link-color: var(--bs-primary-text-emphasis, var(--bs-primary));
}

.alert-secondary {
  --bs-alert-color: var(--bs-secondary-text-emphasis, var(--bs-secondary));
  --bs-alert-bg: var(--bs-secondary-bg-subtle, rgba(var(--bs-secondary-rgb), 0.1));
  --bs-alert-border-color: var(--bs-secondary-border-subtle, rgba(var(--bs-secondary-rgb), 0.2));
  --bs-alert-link-color: var(--bs-secondary-text-emphasis, var(--bs-secondary));
}

.alert-success {
  --bs-alert-color: var(--bs-success-text-emphasis, var(--bs-success));
  --bs-alert-bg: var(--bs-success-bg-subtle, rgba(var(--bs-success-rgb), 0.1));
  --bs-alert-border-color: var(--bs-success-border-subtle, rgba(var(--bs-success-rgb), 0.2));
  --bs-alert-link-color: var(--bs-success-text-emphasis, var(--bs-success));
}

.alert-info {
  --bs-alert-color: var(--bs-info-text-emphasis, var(--bs-info));
  --bs-alert-bg: var(--bs-info-bg-subtle, rgba(var(--bs-info-rgb), 0.1));
  --bs-alert-border-color: var(--bs-info-border-subtle, rgba(var(--bs-info-rgb), 0.2));
  --bs-alert-link-color: var(--bs-info-text-emphasis, var(--bs-info));
}

.alert-warning {
  --bs-alert-color: var(--bs-warning-text-emphasis, var(--bs-warning));
  --bs-alert-bg: var(--bs-warning-bg-subtle, rgba(var(--bs-warning-rgb), 0.1));
  --bs-alert-border-color: var(--bs-warning-border-subtle, rgba(var(--bs-warning-rgb), 0.2));
  --bs-alert-link-color: var(--bs-warning-text-emphasis, var(--bs-warning));
}

.alert-danger {
  --bs-alert-color: var(--bs-danger-text-emphasis, var(--bs-danger));
  --bs-alert-bg: var(--bs-danger-bg-subtle, rgba(var(--bs-danger-rgb), 0.1));
  --bs-alert-border-color: var(--bs-danger-border-subtle, rgba(var(--bs-danger-rgb), 0.2));
  --bs-alert-link-color: var(--bs-danger-text-emphasis, var(--bs-danger));
}

.alert-light {
  --bs-alert-color: var(--bs-light-text-emphasis, var(--bs-light));
  --bs-alert-bg: var(--bs-light-bg-subtle, rgba(var(--bs-light-rgb), 0.1));
  --bs-alert-border-color: var(--bs-light-border-subtle, rgba(var(--bs-light-rgb), 0.2));
  --bs-alert-link-color: var(--bs-light-text-emphasis, var(--bs-light));
}

.alert-dark {
  --bs-alert-color: var(--bs-dark-text-emphasis, var(--bs-dark));
  --bs-alert-bg: var(--bs-dark-bg-subtle, rgba(var(--bs-dark-rgb), 0.1));
  --bs-alert-border-color: var(--bs-dark-border-subtle, rgba(var(--bs-dark-rgb), 0.2));
  --bs-alert-link-color: var(--bs-dark-text-emphasis, var(--bs-dark));
}

.badge.bg-primary {
  background-color: var(--bs-primary) !important;
  color: #fff !important;
}

.badge.bg-secondary {
  background-color: var(--bs-secondary) !important;
  color: #fff !important;
}

.badge.bg-success {
  background-color: var(--bs-success) !important;
  color: #fff !important;
}

.badge.bg-info {
  background-color: var(--bs-info) !important;
  color: #fff !important;
}

.badge.bg-warning {
  background-color: var(--bs-warning) !important;
  color: #fff !important;
}

.badge.bg-danger {
  background-color: var(--bs-danger) !important;
  color: #fff !important;
}

.badge.bg-light {
  background-color: var(--bs-light) !important;
  color: var(--bs-dark) !important;
}

.badge.bg-dark {
  background-color: var(--bs-dark) !important;
  color: #fff !important;
}

.list-group-item-primary {
  color: var(--bs-primary);
  background-color: rgba(var(--bs-primary-rgb), 0.1);
}

.list-group-item-secondary {
  color: var(--bs-secondary);
  background-color: rgba(var(--bs-secondary-rgb), 0.1);
}

.list-group-item-success {
  color: var(--bs-success);
  background-color: rgba(var(--bs-success-rgb), 0.1);
}

.list-group-item-info {
  color: var(--bs-info);
  background-color: rgba(var(--bs-info-rgb), 0.1);
}

.list-group-item-warning {
  color: var(--bs-warning);
  background-color: rgba(var(--bs-warning-rgb), 0.1);
}

.list-group-item-danger {
  color: var(--bs-danger);
  background-color: rgba(var(--bs-danger-rgb), 0.1);
}

.list-group-item-light {
  color: var(--bs-light);
  background-color: rgba(var(--bs-light-rgb), 0.1);
}

.list-group-item-dark {
  color: var(--bs-dark);
  background-color: rgba(var(--bs-dark-rgb), 0.1);
}

.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: var(--bs-primary);
  background-color: rgba(var(--bs-primary-rgb), 0.2);
}

.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: var(--bs-secondary);
  background-color: rgba(var(--bs-secondary-rgb), 0.2);
}

.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: var(--bs-success);
  background-color: rgba(var(--bs-success-rgb), 0.2);
}

.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: var(--bs-info);
  background-color: rgba(var(--bs-info-rgb), 0.2);
}

.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: var(--bs-warning);
  background-color: rgba(var(--bs-warning-rgb), 0.2);
}

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: var(--bs-danger);
  background-color: rgba(var(--bs-danger-rgb), 0.2);
}

.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: var(--bs-light);
  background-color: rgba(var(--bs-light-rgb), 0.2);
}

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: var(--bs-dark);
  background-color: rgba(var(--bs-dark-rgb), 0.2);
}

.bg-primary-subtle {
  background-color: rgba(var(--bs-primary-rgb), 0.1) !important;
}

.bg-secondary-subtle {
  background-color: rgba(var(--bs-secondary-rgb), 0.1) !important;
}

.bg-success-subtle {
  background-color: rgba(var(--bs-success-rgb), 0.1) !important;
}

.bg-info-subtle {
  background-color: rgba(var(--bs-info-rgb), 0.1) !important;
}

.bg-warning-subtle {
  background-color: rgba(var(--bs-warning-rgb), 0.1) !important;
}

.bg-danger-subtle {
  background-color: rgba(var(--bs-danger-rgb), 0.1) !important;
}

.bg-light-subtle {
  background-color: rgba(var(--bs-light-rgb), 0.1) !important;
}

.bg-dark-subtle {
  background-color: rgba(var(--bs-dark-rgb), 0.1) !important;
}

.bg-primary.card, .card.border-primary .card-header {
  background-color: var(--bs-primary) !important;
  color: #fff;
}

.bg-secondary.card, .card.border-secondary .card-header {
  background-color: var(--bs-secondary) !important;
  color: #fff;
}

.bg-success.card, .card.border-success .card-header {
  background-color: var(--bs-success) !important;
  color: #fff;
}

.bg-info.card, .card.border-info .card-header {
  background-color: var(--bs-info) !important;
  color: #fff;
}

.bg-warning.card, .card.border-warning .card-header {
  background-color: var(--bs-warning) !important;
  color: #fff;
}

.bg-danger.card, .card.border-danger .card-header {
  background-color: var(--bs-danger) !important;
  color: #fff;
}

.bg-light.card, .card.border-light .card-header {
  background-color: var(--bs-light) !important;
  color: var(--bs-dark);
}

.bg-dark.card, .card.border-dark .card-header {
  background-color: var(--bs-dark) !important;
  color: #fff;
}

.navbar.bg-primary {
  background-color: var(--bs-primary) !important;
  color: #fff;
}

.navbar.bg-secondary {
  background-color: var(--bs-secondary) !important;
  color: #fff;
}

.navbar.bg-success {
  background-color: var(--bs-success) !important;
  color: #fff;
}

.navbar.bg-info {
  background-color: var(--bs-info) !important;
  color: #fff;
}

.navbar.bg-warning {
  background-color: var(--bs-warning) !important;
  color: #fff;
}

.navbar.bg-danger {
  background-color: var(--bs-danger) !important;
  color: #fff;
}

.navbar.bg-light {
  background-color: var(--bs-light) !important;
  color: var(--bs-dark);
}

.navbar.bg-dark {
  background-color: var(--bs-dark) !important;
  color: #fff;
}


/* Custom CSS */
/* === CHIRON === Alberta Mosse inspired */
.card {
  border: 1px solid #e7dcc8;
  box-shadow: 0 1px 2px rgba(47, 42, 35, 0.04), 0 10px 30px rgba(47, 42, 35, 0.08);
  background-color: #fffaf2;
}
.card-header {
  background-color: #e7dcc8;
  border-bottom: 1px solid #d6c8b0;
  font-weight: 600;
}
.btn-primary { font-weight: 500; }
.form-control:focus, .form-select:focus {
  border-color: #6f7856 !important;
  box-shadow: 0 0 0 3px rgba(111, 120, 86, 0.18) !important;
}
.table {
  --bs-table-border-color: #e7dcc8;
  --bs-table-striped-bg: #fffaf2;
}
.navbar { box-shadow: 0 1px 3px rgba(47, 42, 35, 0.08); }
a:not(.btn):not(.nav-link) { color: #49523a; }
a:not(.btn):not(.nav-link):hover { color: #2f3a2d; }

.chiron-shell {
  background:
    linear-gradient(180deg, rgba(231, 220, 200, 0.72), rgba(247, 243, 234, 0) 360px),
    #f7f3ea;
  min-height: calc(100vh - 72px);
}
.chiron-panel {
  background: #fffaf2;
  border: 1px solid #e7dcc8;
  border-radius: 8px;
  box-shadow: 0 1px 2px rgba(47, 42, 35, 0.04), 0 10px 30px rgba(47, 42, 35, 0.08);
  padding: 1.25rem;
}
.chiron-sidebar {
  position: sticky;
  top: 1rem;
}
.chiron-horse-list .list-group-item {
  background: #fffaf2;
  border-color: #e7dcc8;
  color: #2f2a23;
  padding: 0.85rem 1rem;
}
.chiron-horse-list .list-group-item.active {
  background: #e9eddc;
  border-color: #bdc8a5;
  color: #2f3a2d;
  font-weight: 600;
}
.chiron-sidebar-action,
.chiron-metric {
  background: #f7f3ea;
  border: 1px solid #e7dcc8;
  border-radius: 8px;
  padding: 1rem;
}
.chiron-metric {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-height: 96px;
}
.chiron-metric strong {
  color: #2f3a2d;
  font-size: 1.45rem;
  line-height: 1.2;
}
.chiron-ratio-grid {
  display: grid;
  gap: 0.75rem;
}
.chiron-ratio-item {
  align-items: center;
  background: #f7f3ea;
  border: 1px solid #e7dcc8;
  border-radius: 8px;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  min-height: 4.25rem;
  padding: 0.85rem 1rem;
}
.chiron-ratio-item strong {
  color: #2f3a2d;
  font-size: 1.45rem;
  line-height: 1;
}
.chiron-ratio-label,
.chiron-ratio-target {
  display: block;
}
.chiron-ratio-label {
  color: #2f2a23;
  font-weight: 600;
}
.chiron-ratio-target {
  color: #6f634f;
  font-size: 0.82rem;
  margin-top: 0.2rem;
}
.chiron-table thead th {
  color: #6f634f;
  font-size: 0.78rem;
  letter-spacing: 0;
  text-transform: uppercase;
}
.chiron-nutrition-scroll {
  max-height: 21.5rem;
  overflow-y: auto;
}
.chiron-nutrition-scroll .chiron-table thead th {
  background: #fffaf2;
  position: sticky;
  top: 0;
  z-index: 1;
}
.chiron-spider-wrap {
  display: grid;
  place-items: center;
}
.chiron-spider {
  width: min(100%, 360px);
  height: auto;
  overflow: visible;
}
.chiron-spider text {
  fill: #6f634f;
  font-size: 14px;
  font-weight: 600;
}
.chiron-spider-grid {
  fill: none;
  stroke: #e7dcc8;
  stroke-width: 1;
}
.chiron-spider-axis {
  stroke: #d6c8b0;
  stroke-width: 1;
}
.chiron-spider-need {
  fill: rgba(154, 111, 76, 0.13);
  stroke: #9a6f4c;
  stroke-width: 2;
}
.chiron-spider-assigned {
  fill: rgba(111, 120, 86, 0.28);
  stroke: #6f7856;
  stroke-width: 3;
}
.chiron-dot {
  display: inline-block;
  width: 0.65rem;
  height: 0.65rem;
  border-radius: 50%;
  margin-right: 0.35rem;
}
.chiron-dot-need { background: #9a6f4c; }
.chiron-dot-assigned { background: #6f7856; }
@media (max-width: 1199.98px) {
  .chiron-sidebar { position: static; }
}
@media (max-width: 575.98px) {
  .chiron-panel { padding: 1rem; }
  .chiron-shell .display-6 { font-size: 2rem; }
}


/* ===== Dark mode (preset: chrion_dark) ===== */

[data-bs-theme="dark"] {
  /* Userspice */
  --bs-us-menu-custom-bg: #1f271d;
  --bs-us-menu-custom-text: #f7f3ea;
  --bs-us-menu-custom-hover-bg: #34402f;
  --bs-us-menu-custom-hover-text: #ffffff;
  --bs-us-menu-custom-active-bg: #6f7856;
  --bs-us-menu-custom-active-text: #ffffff;
  --bs-us-menu-custom-divider: #49523a;
  --bs-us-menu-custom-submenu-border: #49523a;

  /* Colors_primary */
  --bs-primary: #8f9a70;
  --bs-primary-hover: #a8b586;
  --bs-primary-text-emphasis: #dfe8c9;
  --bs-primary-bg-subtle: #263122;
  --bs-primary-border-subtle: #6f7856;

  /* Colors_secondary */
  --bs-secondary: #c29368;
  --bs-secondary-hover: #d3aa83;
  --bs-secondary-text-emphasis: #ead6bd;
  --bs-secondary-bg-subtle: #35291f;
  --bs-secondary-border-subtle: #9a6f4c;

  /* Colors_success */
  --bs-success: #8f9a70;
  --bs-success-hover: #a8b586;
  --bs-success-text-emphasis: #dfe8c9;
  --bs-success-bg-subtle: #263122;
  --bs-success-border-subtle: #6f7856;

  /* Colors_info */
  --bs-info: #b8c49a;
  --bs-info-hover: #cbd6ad;
  --bs-info-text-emphasis: #edf2db;
  --bs-info-bg-subtle: #293221;
  --bs-info-border-subtle: #7f8a62;

  /* Colors_warning */
  --bs-warning: #c29368;
  --bs-warning-hover: #d3aa83;
  --bs-warning-text-emphasis: #f2d8b5;
  --bs-warning-bg-subtle: #35291f;
  --bs-warning-border-subtle: #9a6f4c;

  /* Colors_danger */
  --bs-danger: #d08473;
  --bs-danger-hover: #e09c8d;
  --bs-danger-text-emphasis: #f2c5bb;
  --bs-danger-bg-subtle: #3b201b;
  --bs-danger-border-subtle: #a85b4d;

  /* Colors_light_dark */
  --bs-light: #fffaf2;
  --bs-light-hover: #f7f3ea;
  --bs-light-text-emphasis: #fffaf2;
  --bs-light-bg-subtle: #3c3a31;
  --bs-light-border-subtle: #5f594b;
  --bs-dark: #2f3a2d;
  --bs-dark-hover: #34402f;
  --bs-dark-text-emphasis: #f7f3ea;
  --bs-dark-bg-subtle: #1f271d;
  --bs-dark-border-subtle: #49523a;

  /* Colors_general */
  --bs-body-color: #eee6d8;
  --bs-body-bg: #20271f;
  --bs-border-color: #49523a;
  --bs-form-control-bg: #2b3428;
  --bs-secondary-color: #c9bea9;
  --bs-tertiary-color: #998d78;
  --bs-emphasis-color: #fffaf2;
  --bs-secondary-bg: #2b3428;
  --bs-tertiary-bg: #263122;

  /* Typography */
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-font-size-base: 1rem;
  --bs-font-weight-normal: 400;
  --bs-font-weight-bold: 700;
  --bs-line-height-base: 1.5;
  --bs-headings-font-family: var(--bs-font-sans-serif);
  --bs-headings-font-weight: 500;
  --bs-headings-line-height: 1.2;
  --bs-headings-color: #fffaf2;
  --bs-h1-font-size: calc(1.375rem + 1.5vw);
  --bs-h2-font-size: calc(1.325rem + 0.9vw);
  --bs-h3-font-size: calc(1.3rem + 0.6vw);
  --bs-h4-font-size: calc(1.275rem + 0.3vw);
  --bs-h5-font-size: 1.25rem;
  --bs-h6-font-size: 1rem;

  /* Components */
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-2xl: 2rem;
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);

  /* Cards */
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-border-color: var(--bs-border-color);
  --bs-card-box-shadow: none;
  --bs-card-cap-bg: rgba(0, 0, 0, 0.03);

  /* Forms */
  --bs-input-bg: var(--bs-body-bg);
  --bs-input-color: var(--bs-body-color);
  --bs-input-border-color: var(--bs-border-color);
  --bs-input-focus-border-color: var(--bs-primary);
  --bs-input-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
  --bs-input-focus-bg: var(--bs-form-control-bg);
  --bs-input-focus-color: var(--bs-body-color);

  /* Navbars */
  --bs-navbar-light-color: rgba(0, 0, 0, 0.55);
  --bs-navbar-light-hover-color: rgba(0, 0, 0, 0.7);
  --bs-navbar-dark-color: rgba(255, 255, 255, 0.55);
  --bs-navbar-dark-hover-color: rgba(255, 255, 255, 0.75);

  --bs-primary-rgb: 143, 154, 112;
  --bs-secondary-rgb: 194, 147, 104;
  --bs-success-rgb: 143, 154, 112;
  --bs-info-rgb: 184, 196, 154;
  --bs-warning-rgb: 194, 147, 104;
  --bs-danger-rgb: 208, 132, 115;
  --bs-light-rgb: 255, 250, 242;
  --bs-dark-rgb: 47, 58, 45;
}

[data-bs-theme="dark"] ul.us_menu.custom, [data-bs-theme="dark"] ul.us_menu.custom .us_sub-menu li, [data-bs-theme="dark"] ul.us_menu.custom ul.us_sub-menu {
  background-color: var(--bs-us-menu-custom-bg, #3a5e8c);
}

[data-bs-theme="dark"] ul.us_menu.custom a, [data-bs-theme="dark"] ul.us_menu.custom .us_menu_mobile_control {
  color: var(--bs-us-menu-custom-text, rgba(255, 255, 255, 0.85));
}

[data-bs-theme="dark"] ul.us_menu.custom li:hover {
  background-color: var(--bs-us-menu-custom-hover-bg, #4a6e9c);
}

[data-bs-theme="dark"] ul.us_menu.custom li:hover > a {
  background-color: var(--bs-us-menu-custom-hover-bg, #4a6e9c);
  color: var(--bs-us-menu-custom-hover-text, #ffffff);
}

[data-bs-theme="dark"] ul.us_menu.custom li.active-style > a {
  background-color: var(--bs-us-menu-custom-active-bg, #264e7c);
  color: var(--bs-us-menu-custom-active-text, #ffffff);
}

[data-bs-theme="dark"] ul.us_menu.custom .dropdown-divider {
  border-color: var(--bs-us-menu-custom-divider, rgba(255, 255, 255, 0.2));
}

[data-bs-theme="dark"] ul.us_menu.custom .us_sub-menu {
  border-color: var(--bs-us-menu-custom-submenu-border, #2d5580);
}

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

[data-bs-theme="dark"] .text-primary {
  color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .border-primary {
  border-color: var(--bs-primary) !important;
}

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

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

[data-bs-theme="dark"] .border-secondary {
  border-color: var(--bs-secondary) !important;
}

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

[data-bs-theme="dark"] .text-success {
  color: var(--bs-success) !important;
}

[data-bs-theme="dark"] .border-success {
  border-color: var(--bs-success) !important;
}

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

[data-bs-theme="dark"] .text-info {
  color: var(--bs-info) !important;
}

[data-bs-theme="dark"] .border-info {
  border-color: var(--bs-info) !important;
}

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

[data-bs-theme="dark"] .text-warning {
  color: var(--bs-warning) !important;
}

[data-bs-theme="dark"] .border-warning {
  border-color: var(--bs-warning) !important;
}

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

[data-bs-theme="dark"] .text-danger {
  color: var(--bs-danger) !important;
}

[data-bs-theme="dark"] .border-danger {
  border-color: var(--bs-danger) !important;
}

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

[data-bs-theme="dark"] .text-light {
  color: var(--bs-light) !important;
}

[data-bs-theme="dark"] .border-light {
  border-color: var(--bs-light) !important;
}

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

[data-bs-theme="dark"] .text-dark {
  color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] .border-dark {
  border-color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] body {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  font-family: var(--bs-font-sans-serif);
  font-size: var(--bs-font-size-base, 1rem);
  font-weight: var(--bs-font-weight-normal, 400);
  line-height: var(--bs-line-height-base, 1.5);
}

[data-bs-theme="dark"] .form-control, [data-bs-theme="dark"] .form-select, [data-bs-theme="dark"] input.form-control, [data-bs-theme="dark"] select.form-select, [data-bs-theme="dark"] textarea.form-control {
  background-color: var(--bs-form-control-bg, var(--bs-body-bg)) !important;
}

[data-bs-theme="dark"] .form-check-input:not(:checked) {
  background-color: var(--bs-input-bg, var(--bs-body-bg)) !important;
}

[data-bs-theme="dark"] code, [data-bs-theme="dark"] pre, [data-bs-theme="dark"] kbd, [data-bs-theme="dark"] .font-monospace {
  font-family: var(--bs-font-monospace);
}

[data-bs-theme="dark"] strong, [data-bs-theme="dark"] b, [data-bs-theme="dark"] .fw-bold {
  font-weight: var(--bs-font-weight-bold, 700);
}

[data-bs-theme="dark"] h1, [data-bs-theme="dark"] h2, [data-bs-theme="dark"] h3, [data-bs-theme="dark"] h4, [data-bs-theme="dark"] h5, [data-bs-theme="dark"] h6, [data-bs-theme="dark"] .h1, [data-bs-theme="dark"] .h2, [data-bs-theme="dark"] .h3, [data-bs-theme="dark"] .h4, [data-bs-theme="dark"] .h5, [data-bs-theme="dark"] .h6 {
  font-family: var(--bs-headings-font-family, var(--bs-font-sans-serif));
  font-weight: var(--bs-headings-font-weight, 500);
  line-height: var(--bs-headings-line-height, 1.2);
  color: var(--bs-headings-color, var(--bs-body-color));
}

[data-bs-theme="dark"] h1, [data-bs-theme="dark"] .h1 {
  font-size: var(--bs-h1-font-size, calc(1.375rem + 1.5vw));
}

[data-bs-theme="dark"] h2, [data-bs-theme="dark"] .h2 {
  font-size: var(--bs-h2-font-size, calc(1.325rem + 0.9vw));
}

[data-bs-theme="dark"] h3, [data-bs-theme="dark"] .h3 {
  font-size: var(--bs-h3-font-size, calc(1.3rem + 0.6vw));
}

[data-bs-theme="dark"] h4, [data-bs-theme="dark"] .h4 {
  font-size: var(--bs-h4-font-size, calc(1.275rem + 0.3vw));
}

[data-bs-theme="dark"] h5, [data-bs-theme="dark"] .h5 {
  font-size: var(--bs-h5-font-size, 1.25rem);
}

[data-bs-theme="dark"] h6, [data-bs-theme="dark"] .h6 {
  font-size: var(--bs-h6-font-size, 1rem);
}

[data-bs-theme="dark"] .card {
  border-radius: var(--bs-card-border-radius);
  border-color: var(--bs-card-border-color);
  box-shadow: var(--bs-card-box-shadow);
}

[data-bs-theme="dark"] .card-header {
  background-color: var(--bs-card-cap-bg);
}

[data-bs-theme="dark"] .form-control, [data-bs-theme="dark"] .form-select {
  background-color: var(--bs-input-bg, var(--bs-body-bg)) !important;
}

[data-bs-theme="dark"] .form-control {
  color: var(--bs-input-color, var(--bs-body-color));
}

[data-bs-theme="dark"] .form-control, [data-bs-theme="dark"] .form-select, [data-bs-theme="dark"] .form-check-input {
  border-color: var(--bs-input-border-color, var(--bs-border-color));
}

[data-bs-theme="dark"] .form-control:focus, [data-bs-theme="dark"] .form-select:focus, [data-bs-theme="dark"] .form-check-input:focus {
  border-color: var(--bs-input-focus-border-color);
  box-shadow: var(--bs-input-focus-box-shadow);
}

[data-bs-theme="dark"] .form-control:focus, [data-bs-theme="dark"] .form-select:focus, [data-bs-theme="dark"] .form-check-input:focus:not(:checked) {
  background-color: var(--bs-input-focus-bg, var(--bs-form-control-bg)) !important;
}

[data-bs-theme="dark"] .form-check-input:checked:focus {
  background-color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .form-control:focus, [data-bs-theme="dark"] .form-select:focus {
  color: var(--bs-input-focus-color, var(--bs-body-color)) !important;
}

[data-bs-theme="dark"] .navbar-light .navbar-nav .nav-link {
  color: var(--bs-navbar-light-color);
}

[data-bs-theme="dark"] .navbar-light .navbar-nav .nav-link:hover {
  color: var(--bs-navbar-light-hover-color);
}

[data-bs-theme="dark"] .navbar-dark .navbar-nav .nav-link {
  color: var(--bs-navbar-dark-color);
}

[data-bs-theme="dark"] .navbar-dark .navbar-nav .nav-link:hover {
  color: var(--bs-navbar-dark-hover-color);
}

[data-bs-theme="dark"] .btn-primary {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-bg: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-hover-border-color: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-active-border-color: var(--bs-primary-hover, var(--bs-primary));
}

[data-bs-theme="dark"] .btn-secondary {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-bg: var(--bs-secondary);
  --bs-btn-border-color: var(--bs-secondary);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-hover-border-color: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-active-border-color: var(--bs-secondary-hover, var(--bs-secondary));
}

[data-bs-theme="dark"] .btn-success {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-bg: var(--bs-success);
  --bs-btn-border-color: var(--bs-success);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-success-hover, var(--bs-success));
  --bs-btn-hover-border-color: var(--bs-success-hover, var(--bs-success));
  --bs-btn-focus-shadow-rgb: var(--bs-success-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-success-hover, var(--bs-success));
  --bs-btn-active-border-color: var(--bs-success-hover, var(--bs-success));
}

[data-bs-theme="dark"] .btn-info {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-bg: var(--bs-info);
  --bs-btn-border-color: var(--bs-info);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-info-hover, var(--bs-info));
  --bs-btn-hover-border-color: var(--bs-info-hover, var(--bs-info));
  --bs-btn-focus-shadow-rgb: var(--bs-info-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-info-hover, var(--bs-info));
  --bs-btn-active-border-color: var(--bs-info-hover, var(--bs-info));
}

[data-bs-theme="dark"] .btn-warning {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-bg: var(--bs-warning);
  --bs-btn-border-color: var(--bs-warning);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-hover-border-color: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-focus-shadow-rgb: var(--bs-warning-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-active-border-color: var(--bs-warning-hover, var(--bs-warning));
}

[data-bs-theme="dark"] .btn-danger {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-bg: var(--bs-danger);
  --bs-btn-border-color: var(--bs-danger);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-hover-border-color: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-focus-shadow-rgb: var(--bs-danger-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-active-border-color: var(--bs-danger-hover, var(--bs-danger));
}

[data-bs-theme="dark"] .btn-light {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-bg: var(--bs-light);
  --bs-btn-border-color: var(--bs-light);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-light-hover, #d3d4d5);
  --bs-btn-hover-border-color: var(--bs-light-hover, var(--bs-light));
  --bs-btn-focus-shadow-rgb: var(--bs-light-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-light-hover, var(--bs-light));
  --bs-btn-active-border-color: var(--bs-light-hover, var(--bs-light));
}

[data-bs-theme="dark"] .btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-dark);
  --bs-btn-border-color: var(--bs-dark);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-hover-border-color: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-focus-shadow-rgb: var(--bs-dark-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-active-border-color: var(--bs-dark-hover, var(--bs-dark));
}

[data-bs-theme="dark"] .btn-outline-primary {
  --bs-btn-color: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-hover-border-color: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-primary-hover, var(--bs-primary));
  --bs-btn-active-border-color: var(--bs-primary-hover, var(--bs-primary));
}

[data-bs-theme="dark"] .btn-outline-secondary {
  --bs-btn-color: var(--bs-secondary);
  --bs-btn-border-color: var(--bs-secondary);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-hover-border-color: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-secondary-hover, var(--bs-secondary));
  --bs-btn-active-border-color: var(--bs-secondary-hover, var(--bs-secondary));
}

[data-bs-theme="dark"] .btn-outline-success {
  --bs-btn-color: var(--bs-success);
  --bs-btn-border-color: var(--bs-success);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-success-hover, var(--bs-success));
  --bs-btn-hover-border-color: var(--bs-success-hover, var(--bs-success));
  --bs-btn-focus-shadow-rgb: var(--bs-success-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-success-hover, var(--bs-success));
  --bs-btn-active-border-color: var(--bs-success-hover, var(--bs-success));
}

[data-bs-theme="dark"] .btn-outline-info {
  --bs-btn-color: var(--bs-info);
  --bs-btn-border-color: var(--bs-info);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-info-hover, var(--bs-info));
  --bs-btn-hover-border-color: var(--bs-info-hover, var(--bs-info));
  --bs-btn-focus-shadow-rgb: var(--bs-info-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-info-hover, var(--bs-info));
  --bs-btn-active-border-color: var(--bs-info-hover, var(--bs-info));
}

[data-bs-theme="dark"] .btn-outline-warning {
  --bs-btn-color: var(--bs-warning);
  --bs-btn-border-color: var(--bs-warning);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-hover-border-color: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-focus-shadow-rgb: var(--bs-warning-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-warning-hover, var(--bs-warning));
  --bs-btn-active-border-color: var(--bs-warning-hover, var(--bs-warning));
}

[data-bs-theme="dark"] .btn-outline-danger {
  --bs-btn-color: var(--bs-danger);
  --bs-btn-border-color: var(--bs-danger);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-hover-border-color: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-focus-shadow-rgb: var(--bs-danger-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-danger-hover, var(--bs-danger));
  --bs-btn-active-border-color: var(--bs-danger-hover, var(--bs-danger));
}

[data-bs-theme="dark"] .btn-outline-light {
  --bs-btn-color: var(--bs-light);
  --bs-btn-border-color: var(--bs-light);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-hover-bg: var(--bs-light-hover, var(--bs-light));
  --bs-btn-hover-border-color: var(--bs-light-hover, var(--bs-light));
  --bs-btn-focus-shadow-rgb: var(--bs-light-rgb);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-active-bg: var(--bs-light-hover, var(--bs-light));
  --bs-btn-active-border-color: var(--bs-light-hover, var(--bs-light));
}

[data-bs-theme="dark"] .btn-outline-dark {
  --bs-btn-color: var(--bs-dark);
  --bs-btn-border-color: var(--bs-dark);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-hover-border-color: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-focus-shadow-rgb: var(--bs-dark-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--bs-dark-hover, var(--bs-dark));
  --bs-btn-active-border-color: var(--bs-dark-hover, var(--bs-dark));
}

[data-bs-theme="dark"] .alert-primary {
  --bs-alert-color: var(--bs-primary-text-emphasis, var(--bs-primary));
  --bs-alert-bg: var(--bs-primary-bg-subtle, rgba(var(--bs-primary-rgb), 0.1));
  --bs-alert-border-color: var(--bs-primary-border-subtle, rgba(var(--bs-primary-rgb), 0.2));
  --bs-alert-link-color: var(--bs-primary-text-emphasis, var(--bs-primary));
}

[data-bs-theme="dark"] .alert-secondary {
  --bs-alert-color: var(--bs-secondary-text-emphasis, var(--bs-secondary));
  --bs-alert-bg: var(--bs-secondary-bg-subtle, rgba(var(--bs-secondary-rgb), 0.1));
  --bs-alert-border-color: var(--bs-secondary-border-subtle, rgba(var(--bs-secondary-rgb), 0.2));
  --bs-alert-link-color: var(--bs-secondary-text-emphasis, var(--bs-secondary));
}

[data-bs-theme="dark"] .alert-success {
  --bs-alert-color: var(--bs-success-text-emphasis, var(--bs-success));
  --bs-alert-bg: var(--bs-success-bg-subtle, rgba(var(--bs-success-rgb), 0.1));
  --bs-alert-border-color: var(--bs-success-border-subtle, rgba(var(--bs-success-rgb), 0.2));
  --bs-alert-link-color: var(--bs-success-text-emphasis, var(--bs-success));
}

[data-bs-theme="dark"] .alert-info {
  --bs-alert-color: var(--bs-info-text-emphasis, var(--bs-info));
  --bs-alert-bg: var(--bs-info-bg-subtle, rgba(var(--bs-info-rgb), 0.1));
  --bs-alert-border-color: var(--bs-info-border-subtle, rgba(var(--bs-info-rgb), 0.2));
  --bs-alert-link-color: var(--bs-info-text-emphasis, var(--bs-info));
}

[data-bs-theme="dark"] .alert-warning {
  --bs-alert-color: var(--bs-warning-text-emphasis, var(--bs-warning));
  --bs-alert-bg: var(--bs-warning-bg-subtle, rgba(var(--bs-warning-rgb), 0.1));
  --bs-alert-border-color: var(--bs-warning-border-subtle, rgba(var(--bs-warning-rgb), 0.2));
  --bs-alert-link-color: var(--bs-warning-text-emphasis, var(--bs-warning));
}

[data-bs-theme="dark"] .alert-danger {
  --bs-alert-color: var(--bs-danger-text-emphasis, var(--bs-danger));
  --bs-alert-bg: var(--bs-danger-bg-subtle, rgba(var(--bs-danger-rgb), 0.1));
  --bs-alert-border-color: var(--bs-danger-border-subtle, rgba(var(--bs-danger-rgb), 0.2));
  --bs-alert-link-color: var(--bs-danger-text-emphasis, var(--bs-danger));
}

[data-bs-theme="dark"] .alert-light {
  --bs-alert-color: var(--bs-light-text-emphasis, var(--bs-light));
  --bs-alert-bg: var(--bs-light-bg-subtle, rgba(var(--bs-light-rgb), 0.1));
  --bs-alert-border-color: var(--bs-light-border-subtle, rgba(var(--bs-light-rgb), 0.2));
  --bs-alert-link-color: var(--bs-light-text-emphasis, var(--bs-light));
}

[data-bs-theme="dark"] .alert-dark {
  --bs-alert-color: var(--bs-dark-text-emphasis, var(--bs-dark));
  --bs-alert-bg: var(--bs-dark-bg-subtle, rgba(var(--bs-dark-rgb), 0.1));
  --bs-alert-border-color: var(--bs-dark-border-subtle, rgba(var(--bs-dark-rgb), 0.2));
  --bs-alert-link-color: var(--bs-dark-text-emphasis, var(--bs-dark));
}

[data-bs-theme="dark"] .badge.bg-primary {
  background-color: var(--bs-primary) !important;
  color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] .badge.bg-secondary {
  background-color: var(--bs-secondary) !important;
  color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] .badge.bg-success {
  background-color: var(--bs-success) !important;
  color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] .badge.bg-info {
  background-color: var(--bs-info) !important;
  color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] .badge.bg-warning {
  background-color: var(--bs-warning) !important;
  color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] .badge.bg-danger {
  background-color: var(--bs-danger) !important;
  color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] .badge.bg-light {
  background-color: var(--bs-light) !important;
  color: var(--bs-dark) !important;
}

[data-bs-theme="dark"] .badge.bg-dark {
  background-color: var(--bs-dark) !important;
  color: #fff !important;
}

[data-bs-theme="dark"] .list-group-item-primary {
  color: var(--bs-primary);
  background-color: rgba(var(--bs-primary-rgb), 0.1);
}

[data-bs-theme="dark"] .list-group-item-secondary {
  color: var(--bs-secondary);
  background-color: rgba(var(--bs-secondary-rgb), 0.1);
}

[data-bs-theme="dark"] .list-group-item-success {
  color: var(--bs-success);
  background-color: rgba(var(--bs-success-rgb), 0.1);
}

[data-bs-theme="dark"] .list-group-item-info {
  color: var(--bs-info);
  background-color: rgba(var(--bs-info-rgb), 0.1);
}

[data-bs-theme="dark"] .list-group-item-warning {
  color: var(--bs-warning);
  background-color: rgba(var(--bs-warning-rgb), 0.1);
}

[data-bs-theme="dark"] .list-group-item-danger {
  color: var(--bs-danger);
  background-color: rgba(var(--bs-danger-rgb), 0.1);
}

[data-bs-theme="dark"] .list-group-item-light {
  color: var(--bs-light);
  background-color: rgba(var(--bs-light-rgb), 0.1);
}

[data-bs-theme="dark"] .list-group-item-dark {
  color: var(--bs-dark);
  background-color: rgba(var(--bs-dark-rgb), 0.1);
}

[data-bs-theme="dark"] .list-group-item-primary.list-group-item-action:hover, [data-bs-theme="dark"] .list-group-item-primary.list-group-item-action:focus {
  color: var(--bs-primary);
  background-color: rgba(var(--bs-primary-rgb), 0.2);
}

[data-bs-theme="dark"] .list-group-item-secondary.list-group-item-action:hover, [data-bs-theme="dark"] .list-group-item-secondary.list-group-item-action:focus {
  color: var(--bs-secondary);
  background-color: rgba(var(--bs-secondary-rgb), 0.2);
}

[data-bs-theme="dark"] .list-group-item-success.list-group-item-action:hover, [data-bs-theme="dark"] .list-group-item-success.list-group-item-action:focus {
  color: var(--bs-success);
  background-color: rgba(var(--bs-success-rgb), 0.2);
}

[data-bs-theme="dark"] .list-group-item-info.list-group-item-action:hover, [data-bs-theme="dark"] .list-group-item-info.list-group-item-action:focus {
  color: var(--bs-info);
  background-color: rgba(var(--bs-info-rgb), 0.2);
}

[data-bs-theme="dark"] .list-group-item-warning.list-group-item-action:hover, [data-bs-theme="dark"] .list-group-item-warning.list-group-item-action:focus {
  color: var(--bs-warning);
  background-color: rgba(var(--bs-warning-rgb), 0.2);
}

[data-bs-theme="dark"] .list-group-item-danger.list-group-item-action:hover, [data-bs-theme="dark"] .list-group-item-danger.list-group-item-action:focus {
  color: var(--bs-danger);
  background-color: rgba(var(--bs-danger-rgb), 0.2);
}

[data-bs-theme="dark"] .list-group-item-light.list-group-item-action:hover, [data-bs-theme="dark"] .list-group-item-light.list-group-item-action:focus {
  color: var(--bs-light);
  background-color: rgba(var(--bs-light-rgb), 0.2);
}

[data-bs-theme="dark"] .list-group-item-dark.list-group-item-action:hover, [data-bs-theme="dark"] .list-group-item-dark.list-group-item-action:focus {
  color: var(--bs-dark);
  background-color: rgba(var(--bs-dark-rgb), 0.2);
}

[data-bs-theme="dark"] .bg-primary-subtle {
  background-color: rgba(var(--bs-primary-rgb), 0.1) !important;
}

[data-bs-theme="dark"] .bg-secondary-subtle {
  background-color: rgba(var(--bs-secondary-rgb), 0.1) !important;
}

[data-bs-theme="dark"] .bg-success-subtle {
  background-color: rgba(var(--bs-success-rgb), 0.1) !important;
}

[data-bs-theme="dark"] .bg-info-subtle {
  background-color: rgba(var(--bs-info-rgb), 0.1) !important;
}

[data-bs-theme="dark"] .bg-warning-subtle {
  background-color: rgba(var(--bs-warning-rgb), 0.1) !important;
}

[data-bs-theme="dark"] .bg-danger-subtle {
  background-color: rgba(var(--bs-danger-rgb), 0.1) !important;
}

[data-bs-theme="dark"] .bg-light-subtle {
  background-color: rgba(var(--bs-light-rgb), 0.1) !important;
}

[data-bs-theme="dark"] .bg-dark-subtle {
  background-color: rgba(var(--bs-dark-rgb), 0.1) !important;
}

[data-bs-theme="dark"] .bg-primary.card, [data-bs-theme="dark"] .card.border-primary .card-header {
  background-color: var(--bs-primary) !important;
  color: var(--bs-dark);
}

[data-bs-theme="dark"] .bg-secondary.card, [data-bs-theme="dark"] .card.border-secondary .card-header {
  background-color: var(--bs-secondary) !important;
  color: var(--bs-dark);
}

[data-bs-theme="dark"] .bg-success.card, [data-bs-theme="dark"] .card.border-success .card-header {
  background-color: var(--bs-success) !important;
  color: var(--bs-dark);
}

[data-bs-theme="dark"] .bg-info.card, [data-bs-theme="dark"] .card.border-info .card-header {
  background-color: var(--bs-info) !important;
  color: var(--bs-dark);
}

[data-bs-theme="dark"] .bg-warning.card, [data-bs-theme="dark"] .card.border-warning .card-header {
  background-color: var(--bs-warning) !important;
  color: var(--bs-dark);
}

[data-bs-theme="dark"] .bg-danger.card, [data-bs-theme="dark"] .card.border-danger .card-header {
  background-color: var(--bs-danger) !important;
  color: var(--bs-dark);
}

[data-bs-theme="dark"] .bg-light.card, [data-bs-theme="dark"] .card.border-light .card-header {
  background-color: var(--bs-light) !important;
  color: var(--bs-dark);
}

[data-bs-theme="dark"] .bg-dark.card, [data-bs-theme="dark"] .card.border-dark .card-header {
  background-color: var(--bs-dark) !important;
  color: #fff;
}

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

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

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

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

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

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

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

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


/* Custom CSS (dark mode) */
[data-bs-theme="dark"] {
/* === CHIRON DARK === Alberta Mosse inspired */
:root { color-scheme: dark; }
.form-select option, .form-control option { background-color: #2b3428; color: #eee6d8; }

.card { background-color: #2b3428; border: 1px solid #49523a; color: #eee6d8; box-shadow: 0 1px 2px rgba(0,0,0,0.35), 0 10px 30px rgba(0,0,0,0.28); }
.card-header, .card-footer { background-color: #263122; border-color: #49523a; color: #fffaf2; font-weight: 600; }

.btn-primary { font-weight: 500; }

.form-control, .form-select, textarea.form-control {
  background-color: #2b3428 !important;
  border-color: #49523a !important;
  color: #eee6d8 !important;
}
.form-control:focus, .form-select:focus {
  border-color: #8f9a70 !important;
  box-shadow: 0 0 0 3px rgba(143, 154, 112, 0.3) !important;
}
.form-control::placeholder { color: #c9bea9; }

.dropdown-menu { background-color: #2b3428; border-color: #49523a; color: #eee6d8; }
.dropdown-item { color: #eee6d8; }
.dropdown-item:hover, .dropdown-item:focus { background-color: #34402f; color: #fffaf2; }
.dropdown-divider { border-color: #49523a; }

.modal-content { background-color: #2b3428; border: 1px solid #49523a; color: #eee6d8; }
.modal-header, .modal-footer { border-color: #49523a; }

.list-group { background-color: transparent; }
.list-group-item { background-color: #2b3428; border-color: #49523a; color: #eee6d8; }
.list-group-item.active { background-color: #6f7856; border-color: #6f7856; color: #ffffff; }

.popover { background-color: #2b3428; border-color: #49523a; }
.popover-header { background-color: #263122; border-bottom-color: #49523a; color: #fffaf2; }
.popover-body { color: #eee6d8; }

.toast { background-color: #2b3428; border-color: #49523a; color: #eee6d8; }
.toast-header { background-color: #263122; border-bottom-color: #49523a; color: #fffaf2; }

.table {
  --bs-table-color: #eee6d8;
  --bs-table-bg: transparent;
  --bs-table-border-color: #49523a;
  --bs-table-striped-bg: #263122;
  --bs-table-hover-bg: #34402f;
}

.navbar { box-shadow: 0 1px 3px rgba(0,0,0,0.45); }
a:not(.btn):not(.nav-link) { color: #dfe8c9; }
a:not(.btn):not(.nav-link):hover { color: #fffaf2; }

.chiron-shell {
  background:
    linear-gradient(180deg, rgba(111, 120, 86, 0.18), rgba(32, 39, 31, 0) 360px),
    #20271f;
  min-height: calc(100vh - 72px);
}
.chiron-panel {
  background: #2b3428;
  border: 1px solid #49523a;
  border-radius: 8px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35), 0 10px 30px rgba(0, 0, 0, 0.28);
  padding: 1.25rem;
}
.chiron-sidebar {
  position: sticky;
  top: 1rem;
}
.chiron-horse-list .list-group-item {
  background: #2b3428;
  border-color: #49523a;
  padding: 0.85rem 1rem;
}
.chiron-horse-list .list-group-item.active {
  background: #263122;
  border-color: #8f9a70;
  color: #dfe8c9;
  font-weight: 600;
}
.chiron-sidebar-action,
.chiron-metric {
  background: #263122;
  border: 1px solid #49523a;
  border-radius: 8px;
  padding: 1rem;
}
.chiron-metric {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-height: 96px;
}
.chiron-metric strong {
  color: #fffaf2;
  font-size: 1.45rem;
  line-height: 1.2;
}
.chiron-ratio-grid {
  display: grid;
  gap: 0.75rem;
}
.chiron-ratio-item {
  align-items: center;
  background: #263122;
  border: 1px solid #49523a;
  border-radius: 8px;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  min-height: 4.25rem;
  padding: 0.85rem 1rem;
}
.chiron-ratio-item strong {
  color: #fffaf2;
  font-size: 1.45rem;
  line-height: 1;
}
.chiron-ratio-label,
.chiron-ratio-target {
  display: block;
}
.chiron-ratio-label {
  color: #fffaf2;
  font-weight: 600;
}
.chiron-ratio-target {
  color: #c9bea9;
  font-size: 0.82rem;
  margin-top: 0.2rem;
}
.chiron-table thead th {
  color: #c9bea9;
  font-size: 0.78rem;
  letter-spacing: 0;
  text-transform: uppercase;
}
.chiron-nutrition-scroll {
  max-height: 21.5rem;
  overflow-y: auto;
}
.chiron-nutrition-scroll .chiron-table thead th {
  background: #2b3428;
  position: sticky;
  top: 0;
  z-index: 1;
}
.chiron-spider-wrap {
  display: grid;
  place-items: center;
}
.chiron-spider {
  width: min(100%, 360px);
  height: auto;
  overflow: visible;
}
.chiron-spider text {
  fill: #c9bea9;
  font-size: 14px;
  font-weight: 600;
}
.chiron-spider-grid {
  fill: none;
  stroke: #49523a;
  stroke-width: 1;
}
.chiron-spider-axis {
  stroke: #5f6a4c;
  stroke-width: 1;
}
.chiron-spider-need {
  fill: rgba(194, 147, 104, 0.16);
  stroke: #c29368;
  stroke-width: 2;
}
.chiron-spider-assigned {
  fill: rgba(143, 154, 112, 0.26);
  stroke: #8f9a70;
  stroke-width: 3;
}
.chiron-dot {
  display: inline-block;
  width: 0.65rem;
  height: 0.65rem;
  border-radius: 50%;
  margin-right: 0.35rem;
}
.chiron-dot-need { background: #c29368; }
.chiron-dot-assigned { background: #8f9a70; }
@media (max-width: 1199.98px) {
  .chiron-sidebar { position: static; }
}
@media (max-width: 575.98px) {
  .chiron-panel { padding: 1rem; }
  .chiron-shell .display-6 { font-size: 2rem; }
}
}

/* Dark-mode safety overrides — utility classes that don't auto-flip. */
[data-bs-theme="dark"] .bg-light { background-color: var(--bs-secondary-bg) !important; color: var(--bs-body-color); }
[data-bs-theme="dark"] .bg-white { background-color: var(--bs-body-bg) !important; color: var(--bs-body-color); }
[data-bs-theme="dark"] .text-dark { color: var(--bs-body-color) !important; }
[data-bs-theme="dark"] .text-light { color: var(--bs-emphasis-color) !important; }
[data-bs-theme="dark"] .text-muted { color: var(--bs-secondary-color) !important; }
[data-bs-theme="dark"] .text-black { color: var(--bs-body-color) !important; }
[data-bs-theme="dark"] .text-white-50 { color: rgba(255, 255, 255, 0.5) !important; }
