/* ============================================================
   ITESP Corporate Design
   Grün (Akzent):      #5a9e3a
   Dunkel (Primär/BG):  #0e1117
   Anthrazit (Text/Strich auf hell): #1c1f26
   Grau-Blau (Tagline hell BG): #5a6472
   Grau hell (Tagline dunkel BG): #9aa3ad
   Schrift: Poppins (700 = Bold für Marke/Überschriften, 500 = Medium für Fließtext/Tagline)
   ============================================================ */

:root {
  --itesp-green: #5a9e3a;
  --itesp-green-rgb: 90, 158, 58;
  --itesp-green-hover: #4d8631;
  --itesp-dark: #0e1117;
  --itesp-dark-rgb: 14, 17, 23;
  --itesp-anthracite: #1c1f26;
  --itesp-grey-blue: #5a6472;
  --itesp-grey-light: #9aa3ad;

  /* Bootstrap-eigene CSS-Variablen auf ITESP-Werte umbiegen, damit alle
     Standard-Utility-Klassen (btn-success, bg-dark, text-success, Links,
     Fokus-Ringe, ...) automatisch mitziehen statt jede Klasse einzeln
     überschreiben zu müssen. */
  --bs-primary: var(--itesp-green);
  --bs-primary-rgb: var(--itesp-green-rgb);
  --bs-success: var(--itesp-green);
  --bs-success-rgb: var(--itesp-green-rgb);
  --bs-dark: var(--itesp-dark);
  --bs-dark-rgb: var(--itesp-dark-rgb);
  --bs-link-color: var(--itesp-green);
  --bs-link-color-rgb: var(--itesp-green-rgb);
  --bs-link-hover-color: var(--itesp-green-hover);
  --bs-body-font-family: 'Poppins', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --bs-body-bg: #f5f6f8;
}

[data-bs-theme="dark"] {
  --bs-body-bg: var(--itesp-dark);
}

body {
  background: var(--bs-body-bg);
  font-family: var(--bs-body-font-family);
  font-weight: 500; /* Poppins Medium als Fließtext-Gewicht */
}

h1, h2, h3, h4, h5, h6, .navbar-brand, .card-header, strong, b {
  font-weight: 700; /* Poppins Bold für Überschriften/hervorgehobenen Text */
}

/* Buttons: alle success/primary-Varianten auf ITESP-Grün, dark auf ITESP-Dunkel */
.btn-success, .btn-primary {
  --bs-btn-bg: var(--itesp-green);
  --bs-btn-border-color: var(--itesp-green);
  --bs-btn-hover-bg: var(--itesp-green-hover);
  --bs-btn-hover-border-color: var(--itesp-green-hover);
  --bs-btn-active-bg: var(--itesp-green-hover);
  --bs-btn-active-border-color: var(--itesp-green-hover);
  --bs-btn-disabled-bg: var(--itesp-green);
  --bs-btn-disabled-border-color: var(--itesp-green);
  --bs-btn-focus-shadow-rgb: var(--itesp-green-rgb);
}
.btn-outline-success, .btn-outline-primary {
  --bs-btn-color: var(--itesp-green);
  --bs-btn-border-color: var(--itesp-green);
  --bs-btn-hover-bg: var(--itesp-green);
  --bs-btn-hover-border-color: var(--itesp-green);
  --bs-btn-active-bg: var(--itesp-green);
  --bs-btn-active-border-color: var(--itesp-green);
  --bs-btn-focus-shadow-rgb: var(--itesp-green-rgb);
}
.btn-dark {
  --bs-btn-bg: var(--itesp-dark);
  --bs-btn-border-color: var(--itesp-dark);
  --bs-btn-hover-bg: var(--itesp-anthracite);
  --bs-btn-hover-border-color: var(--itesp-anthracite);
}

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

.bg-success { background-color: var(--itesp-green) !important; }
.text-success { color: var(--itesp-green) !important; }
.border-success { border-color: var(--itesp-green) !important; }
.badge.bg-success { background-color: var(--itesp-green) !important; }
.badge.bg-primary { background-color: var(--itesp-green) !important; }

a:not(.btn) { color: var(--itesp-green); }
a:not(.btn):hover { color: var(--itesp-green-hover); }

.form-control:focus, .form-select:focus {
  border-color: var(--itesp-green);
  box-shadow: 0 0 0 .25rem rgba(var(--itesp-green-rgb), .25);
}
.form-check-input:checked {
  background-color: var(--itesp-green);
  border-color: var(--itesp-green);
}
.form-switch .form-check-input:checked { background-color: var(--itesp-green); }

.page-item.active .page-link {
  background-color: var(--itesp-green) !important;
  border-color: var(--itesp-green) !important;
}
.page-link { color: var(--itesp-green); }

.text-muted, .form-text { color: var(--itesp-grey-blue) !important; }
[data-bs-theme="dark"] .text-muted,
[data-bs-theme="dark"] .form-text { color: var(--itesp-grey-light) !important; }

/* App-spezifische Klassen (unverändert aus der ursprünglichen App-Basis) */
.navbar .nav-link i.bi {
  font-size: 1.35rem;
  vertical-align: -0.2em;
}
.task-item { transition: background .15s ease; }
.task-item.overdue { border-left: 4px solid #dc3545; }
.task-item.done { opacity: .55; text-decoration: line-through; }
.badge-fixedtime { font-variant-numeric: tabular-nums; }
.action-btn { min-height: 90px; font-size: 1.05rem; }
.action-btn.running { background:#dc3545 !important; border-color:#dc3545 !important; }
@media (max-width: 576px) {
  .navbar-brand { font-size: 1.1rem; }
}
