/* Cookie-Banner (CookieConsent v3, Gruppenstandard) im Look der MONEA-Fassung: helle Karte, kantige Knöpfe, Manrope.
   Aufbau wie Erstklang/innphone (Karte unten links, zwei gleichwertige Knöpfe, „Anpassen“ als Textlink). */
#cc-main {
  --cc-font-family: 'Manrope', system-ui, sans-serif;
  --cc-bg: #FFFFFF;
  --cc-primary-color: #1E262E;
  --cc-secondary-color: #4A5562;
  --cc-btn-primary-bg: #1E262E;
  --cc-btn-primary-color: #FFFFFF;
  --cc-btn-primary-border-color: #1E262E;
  --cc-btn-primary-hover-bg: #2F3A45;
  --cc-btn-primary-hover-color: #FFFFFF;
  --cc-btn-primary-hover-border-color: #2F3A45;
  --cc-btn-secondary-bg: #1E262E;
  --cc-btn-secondary-color: #FFFFFF;
  --cc-btn-secondary-border-color: #1E262E;
  --cc-btn-secondary-hover-bg: #2F3A45;
  --cc-btn-secondary-hover-color: #FFFFFF;
  --cc-btn-secondary-hover-border-color: #2F3A45;
  --cc-btn-border-radius: 0;
  --cc-modal-border-radius: 0;
  --cc-separator-border-color: #F2F4F6;
  --cc-toggle-on-bg: #1E262E;
  --cc-toggle-off-bg: #9AA3AD;
  --cc-toggle-readonly-bg: #C9CFD6;
  --cc-toggle-on-knob-bg: #F5C400;
  --cc-toggle-off-knob-bg: #FFFFFF;
  --cc-toggle-readonly-knob-bg: #FFFFFF;
  --cc-link-color: #1E262E;
  --cc-footer-bg: #F2F4F6;
  --cc-footer-color: #4A5562;
  --cc-footer-border-color: #F2F4F6;
  --cc-overlay-bg: rgba(37, 47, 56, .55);
  --cc-pm-toggle-border-radius: 999px;
  --cc-cookie-category-block-bg: #F2F4F6;
  --cc-cookie-category-block-border: #F2F4F6;
  --cc-cookie-category-block-hover-bg: #E9ECEF;
  --cc-cookie-category-block-hover-border: #E9ECEF;
  --cc-cookie-category-expanded-block-bg: #F2F4F6;
  --cc-cookie-category-expanded-block-hover-bg: #E9ECEF;
  --cc-modal-margin: 18px;
  color-scheme: light;
}

#cc-main .cm--box { max-width: 380px; border: 1px solid #E3E7EB; box-shadow: 0 24px 60px -24px rgba(37, 47, 56, .45); }
#cc-main .cm__body { padding: 16px 18px 12px; }
#cc-main .cm__texts { padding: 0; }
#cc-main .cm__title { font-weight: 700; font-size: 17px; line-height: 1.2; padding: 0; }
#cc-main .cm__desc { font-size: 14px; line-height: 1.5; color: #4A5562; padding: 6px 0 0; }
#cc-main .cm__desc strong { color: #1E262E; font-weight: 500; }
#cc-main .cm__btns { padding: 12px 0 0; gap: 6px; border-top: 0; }
#cc-main .cm__btn-group { display: flex; flex-direction: row; gap: 8px; }
#cc-main .cm__btn, #cc-main .cm__btn:first-child { flex: 1 1 0; height: 46px; min-height: 46px; padding: 0 10px; font-size: 15px; font-weight: 800; line-height: 1.1; }
#cc-main .cm__btn[data-role="show"] {
  flex: none !important; height: auto !important; min-height: 32px; padding: 4px 0 0; align-self: flex-start;
  background: none; border: 0; color: #1E262E; font-size: 14px; text-decoration: underline; text-underline-offset: 3px;
}
#cc-main .cm__btn[data-role="show"]:hover { background: none; color: #2F3A45; }
#cc-main .cm__btn + .cm__btn { margin: 0 !important; }
#cc-main .cm__btn-group + .cm__btn { margin: 6px 0 0 !important; }
#cc-main .cm__footer { padding: 8px 18px 10px; font-size: 13px; }
#cc-main .cm__footer, #cc-main .cm__links { justify-content: flex-start; text-align: left; }
#cc-main .cm__links { padding-left: 0 !important; padding-right: 0 !important; }
#cc-main .cm__link-group { margin: 0 !important; justify-content: flex-start !important; }
#cc-main .cm__footer a { font-weight: 400; }

#cc-main .pm { max-width: 520px; border: 1px solid #E3E7EB; }
#cc-main .pm__title { font-weight: 500; font-size: 18px; }
#cc-main .pm__section-title { font-size: 15px; font-weight: 500; }
#cc-main .pm__section-desc { font-size: 14px; line-height: 1.45; }
#cc-main .pm__btn { min-height: 44px; font-weight: 400; }

@media (max-width: 640px) {
  #cc-main { --cc-modal-margin: 8px; }
  #cc-main .cm { width: calc(100vw - 16px) !important; max-width: 380px !important; }
  #cc-main .cm__btns { border-top: 0 !important; padding: 10px 16px 0 !important; }
  #cc-main .cm__btn-group { flex-direction: row !important; gap: 8px; }
  #cc-main .cm__btn + .cm__btn { margin: 0 !important; }
  #cc-main .cm__btn-group + .cm__btn { margin: 6px 0 0 !important; }
  #cc-main .cm__btn, #cc-main .cm__btn:first-child { flex: 1 1 0 !important; width: auto; }
  #cc-main .cm__title, #cc-main .cm__desc { padding-left: 16px !important; padding-right: 16px !important; }
  #cc-main .cm__title { padding-top: 4px !important; }
  #cc-main .cm__btn[data-role="show"] { width: 100% !important; text-align: left !important; justify-content: flex-start !important; }
  #cc-main .cm__footer { justify-content: flex-start !important; text-align: left !important; padding-left: 16px !important; }
}

/* ---------- Mobil-Prüfung 11.11.2026 (Gruppenregel 15, Lösung der Meta-Landingpage vom 06.11.2026):
   Tippflächen ≥ 44 px, Querformat kompakt (Text links, Knöpfe rechts), Notch ---------- */
#cc-main .cm__btn[data-role="show"] { min-height: 44px !important; padding: 0 !important; display: inline-flex; align-items: center; }
#cc-main .cm__footer { padding-top: 0; padding-bottom: 0; }
#cc-main .cm__footer a, #cc-main .cm__link-group > a { display: inline-flex; align-items: center; min-height: 44px; }
#cc-main .pm__close-btn { width: 44px !important; height: 44px !important; }
@media (orientation: landscape) and (max-height: 500px) {
  #cc-main .cm { left: max(8px, env(safe-area-inset-left)) !important; width: calc(100vw - 16px - env(safe-area-inset-left) - env(safe-area-inset-right)) !important; max-width: 720px !important; max-height: calc(100dvh - 16px); overflow-y: auto; }
  #cc-main .cm__body { flex-direction: row !important; align-items: flex-end; gap: 12px; }
  #cc-main .cm__texts { flex: 1 1 auto; min-width: 0; }
  #cc-main .cm__btns { flex: 0 0 240px; padding: 0 18px 4px 0 !important; }
  #cc-main .cm__btn-group { flex-direction: column !important; gap: 6px; }
  #cc-main .cm__title { padding-top: 12px !important; }
  #cc-main .cm__desc { font-size: 14px; line-height: 1.45; padding-bottom: 6px !important; }
}
@media (prefers-reduced-motion: reduce) { #cc-main .cm, #cc-main .pm { transition-duration: 1ms !important; } }
/* Feinschliff 11.11.2026: im Querformat breiter und kompakter (auch 7-Zoll-Tablets quer), auf sehr schmalen Handys etwas kleinere Schrift */
@media (orientation: landscape) and (max-height: 640px) {
  #cc-main .cm { left: max(8px, env(safe-area-inset-left)) !important; width: calc(100vw - 16px - env(safe-area-inset-left) - env(safe-area-inset-right)) !important; max-width: 880px !important; max-height: calc(100dvh - 16px); overflow-y: auto; }
  #cc-main .cm__body { flex-direction: row !important; align-items: flex-end; gap: 12px; }
  #cc-main .cm__texts { flex: 1 1 auto; min-width: 0; }
  #cc-main .cm__btns { flex: 0 0 210px; padding: 0 18px 4px 0 !important; }
  #cc-main .cm__btn-group { flex-direction: column !important; gap: 6px; }
  #cc-main .cm__btn, #cc-main .cm__btn:first-child { height: 44px; min-height: 44px; }
  #cc-main .cm__title { font-size: 16px; padding-top: 10px !important; }
  #cc-main .cm__desc { font-size: 13px; line-height: 1.4; padding-bottom: 4px !important; }
}
@media (max-width: 359px) {
  #cc-main .cm__title { font-size: 16px; }
  #cc-main .cm__desc { font-size: 13px; line-height: 1.4; }
  #cc-main .cm__btn, #cc-main .cm__btn:first-child { height: 44px; min-height: 44px; font-size: 14px; }
  #cc-main .cm__title, #cc-main .cm__desc { padding-left: 12px !important; padding-right: 12px !important; }
  #cc-main .cm__btns { padding: 8px 12px 0 !important; }
  #cc-main .cm__footer { padding-left: 12px !important; }
}
@media (orientation: landscape) and (max-height: 640px) and (min-width: 790px) {
  #cc-main .cm__btns { flex: 0 0 316px; }
  #cc-main .cm__btn-group { flex-direction: row !important; gap: 8px; }
}
