/*! cr-datenschutz | Einwilligungsfenster und Platzhalter für Inhalte fremder Anbieter */
@layer components {
/* Fenster beim ersten Besuch – Grundgestaltung kommt vom Dialog „Datenschutz-Einstellungen" (.privacy) */
.privacy--start .privacy__groups { gap: 0.5rem; }
.privacy--start .privacy__group .small { font-size: 0.82rem; color: var(--ink-2); margin-block-start: 0.3rem; }
.privacy__foot--start { flex-wrap: wrap; align-items: center; }
.privacy__actions { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.privacy__actions .btn { flex: 1 1 auto; justify-content: center; }
html.crc-offen { overflow: hidden; }
.privacy--start h2[tabindex="-1"]:focus { outline: none; }
/* auf Datenschutzerklärung und Impressum: nicht blockierend unten rechts */
dialog.privacy--start:not(:modal) {
  position: fixed; inset: auto 1rem 1rem auto; margin: 0; z-index: 900;
  inline-size: min(30rem, calc(100vw - 2rem)); max-block-size: min(72dvh, 40rem);
  box-shadow: var(--shadow-3); border: 1px solid var(--line);
}

/* Platzhalter für gesperrte Inhalte */
cr-embed.cr-embed {
  display: grid; place-items: center; inline-size: 100%; min-block-size: 11rem; box-sizing: border-box;
  padding: var(--space-s); margin-block: 0.5rem; border-radius: var(--r-m); text-align: center;
  background: color-mix(in oklab, var(--accent) 7%, var(--surface));
  border: 1px dashed color-mix(in oklab, var(--accent) 35%, transparent);
}
.cr-embed__box { display: grid; gap: 0.5rem; justify-items: center; max-inline-size: 34rem; }
.cr-embed__title { display: block; font-weight: 800; color: var(--ink); }
.cr-embed__text { display: block; font-size: 0.92rem; color: var(--ink-2); }
.cr-embed__text a { color: var(--accent-ink); }
.cr-embed__actions { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; align-items: center; justify-content: center; }
.cr-embed__remember { display: inline-flex; gap: 0.4rem; align-items: center; font-size: 0.88rem; color: var(--ink-2); cursor: pointer; }
}
