/* CMS-Cookies. Eigenständige CSS-Regeln ohne fremden Quellcode. */
#cms-cookies-root .cms-cookies-panel {
 box-sizing:border-box; position:fixed; z-index:2147483000;
 left:16px; right:16px; bottom:16px; max-width:720px;
 margin:auto; padding:24px; background:#fff; color:inherit;
 box-shadow:0 8px 45px rgba(0,0,0,.23); border:1px solid #d6deea;
 border-radius:14px;
 /* Vererbung aus dem aktiven Theme beziehungsweise WordPress. */
 font-family:inherit; font-size:inherit; font-weight:inherit;
 font-style:inherit; line-height:inherit; letter-spacing:inherit;
 text-transform:inherit;
}
/* Elementor und Elementor Pro nutzen dieselben globalen Designvariablen. */
body[class*="elementor-kit-"] #cms-cookies-root .cms-cookies-panel {
 font-family:var(--e-global-typography-text-font-family,inherit);
 font-size:var(--e-global-typography-text-font-size,inherit);
 font-weight:var(--e-global-typography-text-font-weight,inherit);
 font-style:var(--e-global-typography-text-font-style,inherit);
 line-height:var(--e-global-typography-text-line-height,inherit);
 letter-spacing:var(--e-global-typography-text-letter-spacing,inherit);
 text-transform:var(--e-global-typography-text-text-transform,inherit);
 color:var(--e-global-color-text,inherit);
}
#cms-cookies-root .cms-cookies-panel[data-position="top"] {top:16px;bottom:auto}
#cms-cookies-root .cms-cookies-panel h2 {
 font-family:inherit; font-size:1.4em; font-style:inherit;
 font-weight:700; line-height:inherit; letter-spacing:inherit;
 text-transform:inherit; color:inherit; margin:0 0 8px;
}
body[class*="elementor-kit-"] #cms-cookies-root .cms-cookies-panel h2 {
 font-family:var(--e-global-typography-primary-font-family,inherit);
 font-size:var(--e-global-typography-primary-font-size,1.4em);
 font-weight:var(--e-global-typography-primary-font-weight,700);
 font-style:var(--e-global-typography-primary-font-style,inherit);
 line-height:var(--e-global-typography-primary-line-height,inherit);
 letter-spacing:var(--e-global-typography-primary-letter-spacing,inherit);
 text-transform:var(--e-global-typography-primary-text-transform,inherit);
 color:var(--e-global-color-primary,inherit);
}
#cms-cookies-root .cms-cookies-panel p {margin:0 0 14px;font:inherit;color:inherit}
#cms-cookies-root .cms-cookies-fields {display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
#cms-cookies-root .cms-cookies-essential,
#cms-cookies-root .cms-cookies-option {padding:8px 10px;border-radius:8px;background:#eff3f8;color:#202633;font:inherit}
#cms-cookies-root .cms-cookies-option {cursor:pointer}
#cms-cookies-root .cms-cookies-note {font-size:.85em}
#cms-cookies-root .cms-cookies-actions {display:flex;gap:10px;flex-wrap:wrap}
#cms-cookies-root .cms-cookies-panel button {
 cursor:pointer;border:1px solid var(--cms-accent,#2855a1);
 background:#fff;color:var(--cms-accent,#2855a1);
 border-radius:7px;font:inherit;letter-spacing:inherit;text-transform:inherit;
 padding:9px 12px;
}
#cms-cookies-root .cms-cookies-panel button.cms-cookies-primary {color:#fff;background:var(--cms-accent,#2855a1)}
#cms-cookies-root .cms-cookies-panel a {font:inherit;color:var(--cms-accent,#2855a1)}
#cms-cookies-root button:focus-visible,.cms-cookies-open:focus-visible {outline:3px solid #ffa500;outline-offset:3px}
@media(max-width:500px) {
 #cms-cookies-root .cms-cookies-panel {left:8px;right:8px;bottom:8px;padding:16px;max-height:95vh;overflow:auto}
 #cms-cookies-root .cms-cookies-actions button {width:100%}
}

/* Eigenständige YouTube-Platzhalter, Gestaltung vom Theme bzw. Elementor geerbt. */
.cms-cookies-video { box-sizing:border-box; aspect-ratio:16/9; width:100%; max-width:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:1rem; padding:1rem; border:1px solid currentColor; border-radius:8px; font:inherit; text-align:center; }
.cms-cookies-video p {margin:0;font:inherit;}
.cms-cookies-video button {font:inherit;cursor:pointer;padding:.6em 1em;}
.cms-cookies-video iframe {border:0;width:100%;height:100%;min-height:200px;}

/* Dialog auch bei Zoom und kleinen Viewports vollständig bedienbar halten. */
#cms-cookies-root .cms-cookies-panel { max-height:calc(100dvh - 32px); overflow-y:auto; overscroll-behavior:contain; }
@media (max-width:500px) { #cms-cookies-root .cms-cookies-panel { max-height:calc(100dvh - 16px); } }
