/* Switches (Slider) komplett ausblenden */
.klaro .slider,
.klaro .cm-switch,
.klaro .cm-list-label .slider,
.klaro .cookie-modal .cm-list-label .slider,
.klaro .context-notice .cm-list-label .slider,
.klaro .cookie-notice .cm-list-label .slider {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Checkbox sichtbar und schön */
.klaro .cm-list-label input[type="checkbox"],
.klaro .cookie-modal .cm-list-label input[type="checkbox"],
.klaro .context-notice .cm-list-label input[type="checkbox"],
.klaro .cookie-notice .cm-list-label input[type="checkbox"] {
  display: inline-block !important;
  position: relative !important;
  margin-right: 12px !important;
  width: 22px !important;
  height: 22px !important;
  accent-color: #fc7d29; /* Moderne Browser */
  border-radius: 6px !important;
  background: #fff !important;
  border: 2px solid #fc7d29 !important;
  vertical-align: middle !important;
  cursor: pointer !important;
  box-shadow: none !important;
  z-index: 2 !important;
}

/* Checked-Design (Fallback für ältere Browser) */
.klaro .cm-list-label input[type="checkbox"]:checked {
  background: #fc7d29 !important;
  border-color: #fc7d29 !important;
}

/* Text bleibt weiß */
.klaro,
.klaro * {
  color: #23282f !important;
}

/* Gruppierung: Card-Look */
.klaro .cm-body > ul {
  padding: 0;
  margin: 0 0 24px 0;
  list-style: none;
}

.klaro .cm-body > ul > li.cm-purpose,
.klaro .cm-body > ul > li.cm-service {
  background: #fff;
  border-radius: 12px;
  padding: 16px 20px;
  margin-bottom: 14px;
  border: 1.5px solid #383e49;
  box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.03);
  display: flex;
  flex-direction: column;
  gap: 5px;
}

/* Notwendige Cookies */
.klaro .cm-body > ul > li.cm-purpose.required,
.klaro .cm-body > ul > li.cm-service.required {
  background: #fff;
  border-left: 5px solid #fc7d29;
  position: relative;
}
.klaro .cm-body > ul > li.cm-purpose.required .cm-list-title,
.klaro .cm-body > ul > li.cm-service.required .cm-list-title {
  color: #fc7d29 !important;
}
.klaro .cm-body > ul > li.cm-purpose:not(.required) .cm-list-title,
.klaro .cm-body > ul > li.cm-service:not(.required) .cm-list-title {
  color: #fc7d29 !important;
}

/* Service-Zeile, Text und Checkbox nebeneinander */
.klaro .cm-list-label {
  display: flex !important;
  align-items: center !important;
  font-size: 1em !important;
  cursor: pointer !important;
  gap: 7px;
}

.klaro .cm-list-title {
  font-weight: 700 !important;
  font-size: 1em !important;
}
.klaro .cm-list-description {
  color: #fff !important;
  opacity: 0.86;
  margin-bottom: 4px !important;
  font-size: 0.97em !important;
}

/* Modal-Titel */
.klaro .cookie-modal .cm-header h1,
.klaro .cookie-modal .cm-header h1.title {
  color: #fc7d29 !important;
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  margin-bottom: 10px !important;
}
/* Basis-Button-Style für alle */
.klaro .cm-btn,
.klaro .cookie-notice .cm-btn,
.klaro .cookie-modal .cm-btn {
  border: none !important;
  border-radius: 100px !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  padding: 9px 22px !important;
  margin: 0 8px 0 0 !important;
  min-width: 90px !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
  transition: background 0.2s;
  color: #fff !important;
}

/* Decline (z.B. "I decline") */
.klaro .cm-btn.cm-btn-decline {
  background: #23282f !important;
  color: #fff !important;
}
.klaro .cm-btn.cm-btn-decline:hover {
  background: #383e49 !important;
  color: #fff !important;
}

/* Accept selected (z.B. "Accept selected") */
.klaro .cm-btn.cm-btn-save {
  background: #fc7d29 !important;
  color: #fff !important;
}
.klaro .cm-btn.cm-btn-save:hover {
  background: #d96b23 !important;
}

/* Accept all (z.B. "Accept all") */
.klaro .cm-btn.cm-btn-success {
  background: #fc7d29 !important; /* Beispiel: grün */
  color: #fff !important;
}
.klaro .cm-btn.cm-btn-success:hover {
  background: #d96b23 !important;
}
