/* Cookie-Einwilligung (inc/einwilligung.php, assets/js/einwilligung.js).
   Gestaltung nach dem icotek-Designsystem: eckig, Rot als Akzent. */
.ein { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: flex-end; justify-content: center;
  padding: 1rem; background: rgba(26, 26, 26, .35); }
.ein[hidden], .ein [hidden] { display: none !important; }
.ein__fenster { width: 100%; max-width: 640px; max-height: calc(100vh - 2rem); overflow: auto; background: var(--c-bg);
  border-top: 3px solid var(--c-accent); box-shadow: var(--shadow-md); padding: 1.4rem 1.5rem 1.1rem; color: var(--c-ink-soft); }
.ein__titel { margin: 0 0 .5rem; font-size: 1.15rem; font-weight: 800; color: var(--c-ink); }
.ein__kurz p:not(.ein__titel) { margin: 0; font-size: var(--fs-sm); line-height: 1.55; }
.ein__details { margin-top: 1rem; border-top: 1px solid var(--c-line); }
.ein__kategorie { padding: .9rem 0; border-bottom: 1px solid var(--c-line); }
.ein__schalter { display: flex; gap: .7rem; align-items: flex-start; font-size: var(--fs-sm); line-height: 1.5; cursor: pointer; }
.ein__schalter input { flex: 0 0 auto; width: 1.1rem; height: 1.1rem; margin-top: .15rem; accent-color: var(--c-accent); }
.ein__schalter b { color: var(--c-ink); }
.ein__schalter--widerspruch { margin-top: .5rem; }
.ein__untertitel { margin: 0 0 .4rem; font-size: var(--fs-sm); font-weight: 700; color: var(--c-ink); }
.ein__dienst { margin: .45rem 0 0 1.8rem; font-size: .84rem; line-height: 1.5; color: var(--c-ink-faint); }
.ein__untertitel + .ein__dienst { margin-left: 0; }
.ein__knoepfe { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.1rem; }
.ein__knoepfe .btn { flex: 1 1 160px; justify-content: center; }
.ein__fuss { margin: .9rem 0 0; font-size: .8rem; color: var(--c-ink-faint); }
.ein__fuss a { color: inherit; }
html.ein-offen { overflow: hidden; }
@media (min-width: 900px) {
  .ein { justify-content: flex-start; align-items: flex-end; padding: 1.5rem; }
}
