:root {
  /* Hauptfarben */
  --tblr-primary: #078080;
  --tblr-secondary: #ffa800;
  --tblr-success: #2fb344;
  --tblr-info: #4299e1;
  --tblr-warning: #f76707;
  --tblr-danger: #d63939;
  --tblr-light: #f8fafc;
  --tblr-dark: #1e293b;

  /* Abgeleitete Farben */
  --tblr-primary-dark: #056666;
  --tblr-primary-light: #09a0a0;
  --tblr-secondary-dark: #cc8600;
  --tblr-secondary-light: #ffb733;

  /* Graustufen */
  --tblr-gray-100: #f1f5f9;
  --tblr-gray-200: #e2e8f0;
  --tblr-gray-300: #cbd5e1;
  --tblr-gray-400: #94a3b8;
  --tblr-gray-500: #64748b;
  --tblr-gray-600: #475569;
  --tblr-gray-700: #334155;
  --tblr-gray-800: #1e293b;
  --tblr-gray-900: #0f172a;

  /* Hintergrund und Text */
  --tblr-body-bg: #e6f3f3; /* Angepasste Hintergrundfarbe */
  --tblr-body-color: #1e293b;

  /* Links */
  --tblr-link-color: #078080;
  --tblr-link-hover-color: #056666;

  /* Buttons */
  --tblr-btn-hover-bg: #056666;
  --tblr-btn-hover-border-color: #045252;

  /* Formulare */
  --tblr-input-bg: #ffffff;
  --tblr-input-color: #1e293b;
  --tblr-input-border-color: #cbd5e1;
  --tblr-input-focus-border-color: #078080;
  --tblr-input-focus-box-shadow: 0 0 0 0.25rem rgba(7, 128, 128, 0.25);

  /* Navbar */
  --tblr-navbar-bg: #ffffff;
  --tblr-navbar-color: #1e293b;

  /* Karten */
  --tblr-card-bg: #ffffff;
  --tblr-card-border-color: #e2e8f0;

  /* Tabellen */
  --tblr-table-bg: #ffffff;
  --tblr-table-border-color: #e2e8f0;
}

/* Body Hintergrund */
body {
  background-color: var(--tblr-body-bg);
}

/* Zusätzliche benutzerdefinierte Stile */
.btn-primary {
  background-color: var(--tblr-primary);
  border-color: var(--tblr-primary);
}

.btn-primary:hover {
  background-color: var(--tblr-primary-dark);
  border-color: var(--tblr-primary-dark);
}

.btn-secondary {
  background-color: var(--tblr-secondary);
  border-color: var(--tblr-secondary);
  color: #000; /* Dunkler Text für besseren Kontrast */
}

.btn-secondary:hover {
  background-color: var(--tblr-secondary-dark);
  border-color: var(--tblr-secondary-dark);
  color: #000;
}

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

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

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

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

/* Fokussierte Input-Felder */
.form-control:focus,
.form-select:focus {
  border-color: var(--tblr-input-focus-border-color);
  box-shadow: var(--tblr-input-focus-box-shadow);
}

/* Checkbox und Radio Button Anpassungen */
.form-check-input:checked {
  background-color: var(--tblr-primary);
  border-color: var(--tblr-primary);
}

.form-check-input:focus {
  border-color: var(--tblr-input-focus-border-color);
  box-shadow: var(--tblr-input-focus-box-shadow);
}

/* Range Slider Anpassungen */
.form-range::-webkit-slider-thumb {
  background: var(--tblr-primary);
}

.form-range::-moz-range-thumb {
  background: var(--tblr-primary);
}

.form-range::-ms-thumb {
  background: var(--tblr-primary);
}

/* Anpassungen für andere Formularelemente */
.form-control:focus,
.form-select:focus,
.form-check-input:focus,
.btn-check:focus + .btn,
.btn:focus {
  border-color: var(--tblr-input-focus-border-color);
  box-shadow: var(--tblr-input-focus-box-shadow);
}
