/* Cookie-Banner (Complianz) in den Netzwerft-Farben. html:root schlägt die :root-Variablen des Plugins. */
html:root {
    /* Höhe des kompakten Tabs, damit Complianz den sichtbaren Streifen richtig berechnet */
    --cmplz-manage-consent-height: 32px;
    --cmplz_banner_border_radius: 16px 16px 16px 16px;
    --cmplz_button_border_radius: 999px 999px 999px 999px;
    --cmplz_button_accept_background_color: #004562;
    --cmplz_button_accept_border_color: #004562;
    --cmplz_button_accept_text_color: #ffffff;
    --cmplz_button_deny_background_color: #ffffff;
    --cmplz_button_deny_border_color: #004562;
    --cmplz_button_deny_text_color: #004562;
    --cmplz_button_settings_background_color: #ffffff;
    --cmplz_button_settings_border_color: #c9d6de;
    --cmplz_button_settings_text_color: #004562;
    --cmplz_hyperlink_color: #004562;
    --cmplz_slider_active_color: #004562;
    --cmplz_slider_inactive_color: #9aa9b2;
    --cmplz_text_color: #1a2b33;
    --cmplz_category_header_always_active_color: #1e88e5;
}

.cmplz-cookiebanner,
#cmplz-manage-consent .cmplz-manage-consent {
    font-family: var(--font-body, "Montserrat", Arial, sans-serif);
}

.cmplz-cookiebanner .cmplz-title {
    color: #004562;
    font-weight: 700;
}

.cmplz-cookiebanner .cmplz-btn {
    font-weight: 650;
}

.cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover,
.cmplz-cookiebanner .cmplz-btn.cmplz-accept:focus-visible {
    background-color: #00273c;
    border-color: #00273c;
}

/* Solange der Banner offen ist, liegt die Seite leicht unscharf dahinter. Complianz setzt
   cmplz-show erst per Skript und nimmt es nach der Auswahl wieder weg, ohne Skript bleibt alles scharf. */
#cmplz-cookiebanner-container:has(.cmplz-cookiebanner.cmplz-show:not(.cmplz-hidden))::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 99990;
    background-color: rgba(0, 39, 60, .18);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    animation: netzwerft-consent-backdrop .3s ease-out;
}

@keyframes netzwerft-consent-backdrop {
    from { opacity: 0; }
    to { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    #cmplz-cookiebanner-container::before { animation: none; }
}

/* „Zustimmung verwalten“ klein links unten, damit der Tab nicht mit „Nach oben“ kollidiert.
   Höhere Spezifität und !important, weil das Complianz-Stylesheet nach dem Theme lädt. */
html body #cmplz-manage-consent .cmplz-manage-consent {
    left: 16px !important;
    right: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: calc(100vw - 32px);
    height: auto !important;
    padding: 8px 14px !important;
    color: #ffffff !important;
    background-color: #004562 !important;
    border-color: #004562 !important;
    border-radius: 10px 10px 0 0 !important;
    font-size: 12px !important;
    font-weight: 600;
    line-height: 1.2 !important;
    box-shadow: 0 4px 14px rgba(0, 39, 60, .18);
}

/* Geschützter Bereich (AGB): Passwortfeld im Seitendesign */
.netzwerft-pass { display: grid; gap: .75rem; max-width: 34rem; margin: 1rem 0 0; }
.netzwerft-pass__hint { margin: 0; color: var(--nw-ink-soft, #33464f); }
.netzwerft-pass__label { font-weight: 700; font-size: .92rem; color: var(--nw-ink, #0d163a); }
.netzwerft-pass__row { display: flex; flex-wrap: wrap; gap: .6rem; }
.netzwerft-pass__input {
    flex: 1 1 14rem;
    min-height: 50px;
    padding: .7rem 1rem;
    border: 1.5px solid #d4dee6;
    border-radius: 12px;
    font: inherit;
    font-size: 16px;
}
.netzwerft-pass__input:focus { border-color: #004562; box-shadow: 0 0 0 4px rgba(0, 69, 98, .12); outline: none; }
.netzwerft-pass__submit { min-height: 50px; }
