:root {
  --red-salsa: #f94144;
  --orange-red: #f3722c;
  --yellow-orange: #f8961e;
  --maize-crayola: #f9c74f;
  --pistachio: #90be6d;
  --pistachio-light: #cbdfbf;
  --zomp: #43aa8b;
  --queen-blue: #577590;
  --asphalt: #d0d0d0;

  /* Bootstrap-Variablen überschreiben */
  --bs-primary: var(--queen-blue);
  /*--bs-secondary: var(--zomp);
  --bs-success: var(--pistachio);
  --bs-info: var(--queen-blue);
  --bs-warning: var(--maize-crayola);
  --bs-danger: var(--red-salsa);
  --bs-light: #f8f9fa;
  --bs-dark: #212529; */
}

/* Bootstrap-Komponenten mit neuen Farben */
.btn-primary {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.btn-primary:hover {
  background-color: var(--zomp);
  border-color: var(--zomp);
}

.bg-pistachio {
  background-color: var(--bs-success);
  border-color: var(--bs-success);
}

.bg-pistachio:hover {
  background-color: var(--zomp);
  border-color: var(--zomp);
}

/* Status-Badges */
.badge.bg-primary {
  background-color: var(--bs-primary) !important;
}

.badge.bg-secondary {
  background-color: var(--bs-secondary) !important;
}

.badge.bg-success {
  background-color: var(--bs-success) !important;
}

.badge.bg-warning {
  background-color: var(--bs-warning) !important;
}

.badge.bg-info {
  background-color: var(--bs-info) !important;
}

.badge.bg-danger {
  background-color: var(--bs-danger) !important;
}

/* Links und Icons */
a {
  color: var(--bs-primary);
}

a:hover {
  color: var(--zomp);
}

/* Tabellen */
.table-primary {
  background-color: var(--bs-primary) !important;
}

.table-success {
  background-color: var(--bs-success) !important;
}

/* Outline Buttons */
.btn-outline-primary {
  color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.btn-outline-primary:hover {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  color: white;
}

.btn-outline-success {
  color: var(--bs-success);
  border-color: var(--bs-success);
}

.btn-outline-success:hover {
  background-color: var(--bs-success);
  border-color: var(--bs-success);
  color: white;
}

/* Alerts */
.alert-primary {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  color: white;
}

.alert-success {
  background-color: var(--bs-success);
  border-color: var(--bs-success);
  color: white;
}

.alert-warning {
  background-color: var(--bs-warning);
  border-color: var(--yellow-orange);
  color: #856404;
}

.alert-info {
  background-color: var(--bs-info);
  border-color: var(--bs-info);
  color: white;
}

.alert-danger {
  background-color: var(--bs-danger);
  border-color: var(--orange-red);
  color: white;
}

/* Icons */
.bi-umbrella {
  color: var(--bs-success);
}

.bi-clock-history {
  color: var(--bs-info);
}

.bi-hospital {
  color: var(--bs-danger);
}

/* Text Colors */
.text-primary {
  color: var(--bs-primary) !important;
}

.text-success {
  color: var(--bs-success) !important;
}

.text-warning {
  color: var(--bs-warning) !important;
}

.text-danger {
  color: var(--bs-danger) !important;
}


/* Background Colors */
.bg-primary {
  background-color: var(--bs-primary) !important;
}

.bg-success {
  background-color: var(--bs-success) !important;
}

.bg-warning {
  background-color: var(--bs-warning) !important;
}

.bg-danger {
  background-color: var(--bs-danger) !important;
}

/* Custom Utility Classes */
.text-pistachio {
  color: var(--pistachio) !important;
}

.text-zomp {
  color: var(--zomp) !important;
}

.text-queen-blue {
  color: var(--queen-blue) !important;
}

.text-red-salsa {
  color: var(--red-salsa) !important;
}

.text-pistachio-light {
  color: var(--pistachio-light) !important;
} 

.text-maize-crayola {
  color: var(--maize-crayola) !important;
} 

.text-yellow-orange {
  color: var(--yellow-orange) !important;
} 

.text-pistacchio {
  color: var(--pistachio) !important;
} 

.text-asphalt {
  color: var(--asphalt) !important;
}

.bg-pistachio {
  background-color: var(--pistachio) !important;
  color: white !important;
}

.bg-pistachio-light {
  background-color: var(--pistachio-light) !important;
  color: var(--queen-blue) !important;
}

.bg-zomp {
  background-color: var(--zomp) !important;
  color: white !important;
}

.bg-queen-blue {
  background-color: var(--queen-blue) !important;
  color: white !important;
}

.bg-red-salsa {
  background-color: var(--red-salsa) !important;
  color: white !important;
}

.bg-maize-crayola {
  background-color: var(--maize-crayola) !important;
  color: white !important
}

.bg-yellow-orange {
  background-color: var(--yellow-orange) !important;
  color: white !important;
}

.bg-asphalt {
  background-color: var(--asphalt) !important;
  color: black !important;
} 

.bg-white-outline {
  background-color: none !important;
  border-color: white !important;
  color: white !important;
}

.bg-red-salsa-outline {
  background-color: none !important;
  border-color: var(--red-salsa) !important;
  color: var(--red-salsa) !important;
}

.bg-yellow-orange-outline {
  background-color: none !important;
  border-color: var(--yellow-orange) !important;
  color: var(--yellow-orange) !important;
}

.bg-pistachio-outline {
  background-color: none !important;
  border-color: var(--pistachio) !important;
  color: var(--pistachio) !important;
}

.border-pistachio {
  border-color: var(--pistachio) !important;
}

.border-pistachio-light {
  border-color: var(--pistachio-light) !important;
} 

.border-zomp {
  border-color: var(--zomp) !important;
} 

.border-queen-blue {
  border-color: var(--queen-blue) !important;
} 

.border-red-salsa {
  border-color: var(--red-salsa) !important;
} 

.border-yellow-orange {
  border-color: var(--yellow-orange) !important;
}  

.border-asphalt {
  border-color: var(--asphalt) !important;
}


/* Focus States */
.btn:focus, 
.btn-primary:focus {
  box-shadow: 0 0 0 0.25rem rgba(87, 117, 144, 0.25);
}

.bg-pistachio:focus {
  box-shadow: 0 0 0 0.25rem rgba(144, 190, 109, 0.25);
}

/* Active States */
.btn-primary:active,
.btn-primary.active {
  background-color: var(--zomp);
  border-color: var(--zomp);
}

.bg-pistachio:active,
.bg-pistachio.active {
  background-color: var(--pistachio);
  border-color: var(--pistachio);
}

/* Disabled States */
.btn-primary:disabled {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  opacity: 0.65;
}

.bg-pistachio:disabled {
  background-color: var(--bs-success);
  border-color: var(--bs-success);
  opacity: 0.65;
} 

.table-sum {
  background-color: darkgray !important;
  color: white !important;
}

.fc-event-notes {
    font-size: 0.8em;
    opacity: 0.8;
    margin-top: 2px;
    white-space: pre-wrap;
}

.closure-day-event {
    background-color: #f8d7da !important;
    border-color: #f5c6cb !important;
    color: #721c24 !important;
    cursor: not-allowed !important;
    opacity: 0.8;
}

.fc-day.closure-day {
    background-color: #fff3f3;
}

.table-secondary.closure-day {
    background-color: #f8d7da;
}