:root {
  /* Primary colors */
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;

  /* Grays */
  --bs-white: #fff;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-black: #000;

  /* Gray RGB values */
  --bs-gray-100-rgb: 248, 249, 250;
  --bs-gray-200-rgb: 233, 236, 239;
  --bs-gray-300-rgb: 222, 226, 230;
  --bs-gray-400-rgb: 206, 212, 218;
  --bs-gray-500-rgb: 173, 181, 189;
  --bs-gray-600-rgb: 108, 117, 125;
  --bs-gray-700-rgb: 73, 80, 87;
  --bs-gray-800-rgb: 52, 58, 64;
  --bs-gray-900-rgb: 33, 37, 41;

  /* Theme colors */
  --bs-primary: #209ad2;
  --bs-primary-hover: #0f75a4;
  --bs-primary-rgb: 32, 154, 194;
  --bs-primary-hover-rgb: 15, 117, 164;
  --bs-secondary: var(--bs-gray-600);
  --bs-success: var(--bs-green);
  --bs-info: var(--bs-cyan);
  --bs-warning: var(--bs-yellow);
  --bs-danger: var(--bs-red);
  --bs-light: var(--bs-gray-100);
  --bs-dark: var(--bs-gray-900);

  /* Body colors */
  --bs-body-color: var(--bs-gray-900);
  --bs-body-bg: var(--bs-white);
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg-rgb: 255, 255, 255;

  /* Border colors */
  --bs-border-color: var(--bs-gray-300);

  /* More colors */
  --bs-fff: #fff;

  /* Search specific colors - nur die tatsächlich verwendeten */
  --search-item-selected-bg: #e7f3ff;
  --search-item-selected-border: var(--bs-primary);
  --search-title-color: var(--bs-gray-900);
  --search-snippet-color: var(--bs-gray-600);
  --search-highlight-bg: #fff3cd;
  --search-highlight-color: #856404;
  --search-highlight-border: var(--bs-warning);

  /* Search highlighting colors */
  --search-highlight-phrase-bg: #d4edda;
  --search-highlight-phrase-color: #155724;
  --search-highlight-phrase-border: #28a745;
  --search-highlight-word-bg: #fff3cd;
  --search-highlight-word-color: #856404;
  --search-highlight-word-border: #ffc107;
  --search-highlight-technical-bg: #d1ecf1;
  --search-highlight-technical-color: #0c5460;
  --search-highlight-technical-border: #17a2b8;

  /* Search result colors */
  --search-result-hover-bg: var(--bs-gray-100);
  --search-result-border: var(--bs-border-color);
  --search-result-snippet-mark-bg: #fff3cd;
  --search-result-snippet-mark-color: #856404;
}

[data-bs-theme='dark'] {
  /* Primary colors - slightly adjusted for dark mode */
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;

  /* Grays - inverted for dark mode */
  --bs-white: #212529;
  --bs-gray-100: #343a40;
  --bs-gray-200: #495057;
  --bs-gray-300: #6c757d;
  --bs-gray-400: #adb5bd;
  --bs-gray-500: #ced4da;
  --bs-gray-600: #dee2e6;
  --bs-gray-700: #e9ecef;
  --bs-gray-800: #f8f9fa;
  --bs-gray-900: #fff;
  --bs-black: #fff;

  /* Gray RGB values - Dark Mode */
  --bs-gray-100-rgb: 52, 58, 64;
  --bs-gray-200-rgb: 73, 80, 87;
  --bs-gray-300-rgb: 108, 117, 125;
  --bs-gray-400-rgb: 173, 181, 189;
  --bs-gray-500-rgb: 206, 212, 218;
  --bs-gray-600-rgb: 222, 226, 230;
  --bs-gray-700-rgb: 233, 236, 239;
  --bs-gray-800-rgb: 248, 249, 250;
  --bs-gray-900-rgb: 255, 255, 255;

  /* Theme colors */
  --bs-primary: #209ad2;
  --bs-primary-hover: #0f75a4;
  --bs-primary-rgb: 32, 154, 194;
  --bs-primary-hover-rgb: 15, 117, 164;
  --bs-secondary: var(--bs-gray-600);
  --bs-success: var(--bs-green);
  --bs-info: var(--bs-cyan);
  --bs-warning: var(--bs-yellow);
  --bs-danger: var(--bs-red);
  --bs-light: var(--bs-gray-100);
  --bs-dark: var(--bs-gray-900);

  /* Body colors */
  --bs-body-color: var(--bs-gray-900);
  --bs-body-bg: var(--bs-white);
  --bs-body-color-rgb: 255, 255, 255;
  --bs-body-bg-rgb: 33, 37, 41;

  /* Border colors */
  --bs-border-color: var(--bs-gray-300);

  /* More colors */
  --bs-fff: #fff;

  /* Search specific colors - Dark Mode - nur die tatsächlich verwendeten */
  --search-item-selected-bg: #1e3a5f;
  --search-item-selected-border: var(--bs-primary);
  --search-title-color: var(--bs-gray-900);
  --search-snippet-color: var(--bs-gray-400);
  --search-highlight-bg: #664d03;
  --search-highlight-color: #fff3cd;
  --search-highlight-border: var(--bs-warning);

  /* Search highlighting colors - Dark Mode */
  --search-highlight-phrase-bg: #1e4d2b;
  --search-highlight-phrase-color: #d4edda;
  --search-highlight-phrase-border: #28a745;
  --search-highlight-word-bg: #664d03;
  --search-highlight-word-color: #fff3cd;
  --search-highlight-word-border: #ffc107;
  --search-highlight-technical-bg: #0c5460;
  --search-highlight-technical-color: #d1ecf1;
  --search-highlight-technical-border: #17a2b8;

  /* Search result colors - Dark Mode */
  --search-result-hover-bg: var(--bs-gray-100);
  --search-result-border: var(--bs-border-color);
  --search-result-snippet-mark-bg: #664d03;
  --search-result-snippet-mark-color: #fff3cd;
}
