/* ========== Standard: Alles wie im Theme ========== */
html {
  font-size: 100%;
}

/* ========== Nur bei Schriftgrößenanpassung aktiv ========== */
body.accessibility-active h1 { font-size: 2.5rem !important; }
body.accessibility-active h2 { font-size: 2rem !important; }
body.accessibility-active h3 { font-size: 1.75rem !important; }
body.accessibility-active h4 { font-size: 1.5rem !important; }
body.accessibility-active h5 { font-size: 1.25rem !important; }
body.accessibility-active h6 { font-size: 1.125rem !important; }

body.accessibility-active p,
body.accessibility-active li,
body.accessibility-active .menu-text,
body.accessibility-active .entry-content,
body.accessibility-active .vc_column-inner {
  font-size: 1rem !important;
  line-height: 1.5;
}

/* Inline-Stile überschreiben */
body.accessibility-active [style*="font-size"] {
  font-size: inherit !important;
}

/* ========== Kontrastmodus ========== */
body.high-contrast {
  background-color: #000 !important;
  color: #000 !important;
}
body.high-contrast a {
  color: #000 !important;
  text-decoration: underline;
}
body.high-contrast h1,
body.high-contrast h2,
body.high-contrast h3,
body.high-contrast h4,
body.high-contrast h5,
body.high-contrast h6 {
  color: #000 !important;
}
body.high-contrast .box-style {
  background-color: #000 !important;
}

/* ========== Graustufen ========== */
body.grayscale {
  filter: grayscale(1);
}

/* ========== Button & Popup ========== */
#accessibility-btn {
  position: fixed;
  bottom: 20px;
  right: 30px;
  background: #000;
  color: #fff;
  padding: 10px 15px;
  z-index: 9999;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

#accessibility-popup {
  display: none;
  position: fixed;
  bottom: 70px;
  right: 30px;
  background: #fff;
  padding: 20px;
  z-index: 9999;
  box-shadow: 0 0 10px rgba(0,0,0,0.5);
  border-radius: 6px;
}
#accessibility-popup button {
  margin: 5px 5px 0 0;
  padding: 6px 10px;
  cursor: pointer;
  border: 1px solid #333;
  background: #f0f0f0;
  border-radius: 3px;
}
