/* IG SAFE: gemeinsame ruhige Farbwelt und lesbare Kontraste. */
@media screen {
html[data-theme="light"] {
  --bg:#f5f1eb; --surface:#f9f5ef; --surface2:#fffaf4;
  --text:#282421; --muted:#655b55; --line:#d9ccc5;
  --red:#b51f26; --red-dark:#8f1022;
  --theme-panel:#f1e3e1; --theme-soft:#eee9e5;
  --theme-action:#b51f26; --theme-action-hover:#8f1022;
}
html[data-theme="dark"] {
  --bg:#191617; --surface:#211d1e; --surface2:#2b2527;
  --text:#f6efeb; --muted:#d0c4bd; --line:#65565d;
  --red:#ffa5ae; --red-dark:#ffc0c6;
  --theme-panel:#342b2f; --theme-soft:#302b2d;
  --theme-action:#ad171d; --theme-action-hover:#8f1022;
}
html[data-theme] {
  --sozial-violett:var(--red); --sozial-violett-dunkel:var(--red);
  --sozial-lavendel:var(--theme-panel); --sozial-linie:var(--line);
  --politik:var(--red); --politik-dunkel:var(--red);
  --politik-hell:var(--theme-panel); --politik-linie:var(--line);
  --igsafe-cream:var(--bg); --igsafe-ink:var(--text);
  --igsafe-deep:var(--red); --igsafe-red:var(--red);
}
html[data-theme] body { background:var(--bg); color:var(--text); }
html[data-theme] body .section-placeholder,
html[data-theme] body .affected-page,
html[data-theme] body .family-page {
  --section-accent:var(--red); --section-soft:var(--theme-panel);
}
html[data-theme] body .sozial-card,
html[data-theme] body .ams-grid>div,
html[data-theme] body .arbeitsfaehigkeit-grid>div,
html[data-theme] body .pflege-topic-card,
html[data-theme] body .pflege-mini-grid>div,
html[data-theme] body .pflege-tools>div,
html[data-theme] body .ange-grid>div,
html[data-theme] body .support-grid>div,
html[data-theme] body .hilfe-grid>div,
html[data-theme] body .state-box,
html[data-theme] body .decision-grid>div,
html[data-theme] body .med-info-card,
html[data-theme] body .med-safety-note,
html[data-theme] body .s1-abgrenzung,
html[data-theme] body .s1-hinweis,
html[data-theme] body .form-section,
html[data-theme] body .payment-panel,
html[data-theme] body .membership-note,
html[data-theme] body .reference-box,
html[data-theme] body .donation-payment,
html[data-theme] body .community-meta li,
html[data-theme] body .igsafe-floating-donation,
html[data-theme] body .anlaufstellen-page .contact-card { background:var(--surface2); border-color:var(--line); color:var(--text); }
html[data-theme] body .sozial-warnung,
html[data-theme] body .sozial-callout,
html[data-theme] body .sozial-sourcebox,
html[data-theme] body .pflege-callout,
html[data-theme] body .pflege-sourcebox,
html[data-theme] body .pflege-hilfsmittel-link,
html[data-theme] body .oesterreich-box,
html[data-theme] body .bundesland-box,
html[data-theme] body .finanzierung-box,
html[data-theme] body .medizin-pflege-bridge,
html[data-theme] body .politik-note,
html[data-theme] body .politik-status,
html[data-theme] body .politik-planned,
html[data-theme] body .quellen-box,
html[data-theme] body .page-intro,
html[data-theme] body .key-line,
html[data-theme] body .join-callout,
html[data-theme] body .anlaufstellen-page .contact-intro,
html[data-theme] body .anlaufstellen-page .state-section-head,
html[data-theme] body .anlaufstellen-page .verification-box { background:var(--theme-panel); border-color:var(--line); border-left-color:var(--red); color:var(--text); }
html[data-theme] body .sozial-bildmarke,
html[data-theme] body .sozial-bridge,
html[data-theme] body .pflege-bildmarke,
html[data-theme] body .pflege-marke,
html[data-theme] body .pflege-symbol,
html[data-theme] body .politik-hero,
html[data-theme] body .anlaufstellen-page .state-group { background:var(--theme-soft); border-color:var(--line); }
html[data-theme] body .sozial-kicker,
html[data-theme] body .pflege-topic-card .eyebrow,
html[data-theme] body .politik-kicker,
html[data-theme] body .arbeitsfaehigkeit-grid h3,
html[data-theme] body .legal-head .eyebrow,
html[data-theme] body .legal-card h2,
html[data-theme] body .chronik-event-preview { color:var(--red)!important; }
html[data-theme] body .anlaufstellen-page,
html[data-theme] body .anlaufstellen-page>.legal-wrap>.legal-card { background:var(--bg); }
html[data-theme] body .anlaufstellen-page .contact-card,
html[data-theme] body .anlaufstellen-page .contact-card.state-card { border-top:3px solid var(--line); }
html[data-theme] body .state-nav a { background:var(--surface2); border-color:var(--line); color:var(--text); }
html[data-theme] body .state-nav a:hover,
html[data-theme] body .state-nav a:focus-visible { background:var(--theme-panel); border-color:var(--red); color:var(--red); }
html[data-theme] body .state-group-head { color:var(--text); border-color:var(--line); }
html[data-theme] body .contact-tag { background:var(--theme-soft); color:var(--text); }
html[data-theme] body .contact-btn,
html[data-theme] body .search-form button,
html[data-theme] body .footer-contact,
html[data-theme] body .primary-cta,
html[data-theme] body .donate-large,
html[data-theme] body .contact-submit,
html[data-theme] body .phone-number,
html[data-theme] body .download-link,
html[data-theme] body .join-callout a,
html[data-theme] body .statutes-actions a:first-child,
html[data-theme] body .related-links a,
html[data-theme] body .support-button,
html[data-theme] body .nav a[aria-current="page"],
html[data-theme] body .community-cta,
html[data-theme] body .community-step::before,
html[data-theme] body .chronik-number,
html[data-theme] body .newsletter-submit,
html[data-theme] body .news-filter[aria-pressed="true"],
html[data-theme] body .news-link,
html[data-theme] body .medizin-topic-button,
html[data-theme] body .medizin-pflege-bridge>a,
html[data-theme] body .pflege-topic-button,
html[data-theme] body .sozial-button,
html[data-theme] body .politik-link,
html[data-theme] body .forderung-num,
html[data-theme] body .data-delete-mail-link,
html[data-theme] body .site-search-input-row button,
html[data-theme] body .featured-badge,
html[data-theme] body .proof-link:not(.secondary),
html[data-theme] body .primary-action,
html[data-theme] body .news-header-btn,
html[data-theme] body .quick-version-button:not(.quick-version-button--secondary),
html[data-theme] body .quick-version-back,
html[data-theme] body .igsafe-consent-btn.primary,
html[data-theme] body .igsafe-floating-donation>a,
html[data-theme] body .app-footer-contact { background:var(--theme-action); border-color:var(--theme-action); color:#fff!important; }
html[data-theme] body .contact-btn:hover,
html[data-theme] body .search-form button:hover,
html[data-theme] body .footer-contact:hover,
html[data-theme] body .primary-cta:hover,
html[data-theme] body .donate-large:hover,
html[data-theme] body .contact-submit:hover,
html[data-theme] body .phone-number:hover,
html[data-theme] body .download-link:hover,
html[data-theme] body .join-callout a:hover,
html[data-theme] body .statutes-actions a:first-child:hover,
html[data-theme] body .related-links a:hover,
html[data-theme] body .support-button:hover,
html[data-theme] body .nav a[aria-current="page"]:hover,
html[data-theme] body .community-cta:hover,
html[data-theme] body .chronik-number:hover,
html[data-theme] body .newsletter-submit:hover,
html[data-theme] body .news-filter[aria-pressed="true"]:hover,
html[data-theme] body .news-link:hover,
html[data-theme] body .medizin-topic-button:hover,
html[data-theme] body .medizin-pflege-bridge>a:hover,
html[data-theme] body .pflege-topic-button:hover,
html[data-theme] body .sozial-button:hover,
html[data-theme] body .politik-link:hover,
html[data-theme] body .forderung-num:hover,
html[data-theme] body .data-delete-mail-link:hover,
html[data-theme] body .site-search-input-row button:hover,
html[data-theme] body .featured-badge:hover,
html[data-theme] body .proof-link:not(.secondary):hover,
html[data-theme] body .primary-action:hover,
html[data-theme] body .news-header-btn:hover,
html[data-theme] body .quick-version-button:not(.quick-version-button--secondary):hover,
html[data-theme] body .quick-version-back:hover,
html[data-theme] body .igsafe-consent-btn.primary:hover,
html[data-theme] body .igsafe-floating-donation>a:hover,
html[data-theme] body .app-footer-contact:hover,
html[data-theme] body .contact-btn:focus-visible,
html[data-theme] body .search-form button:focus-visible,
html[data-theme] body .footer-contact:focus-visible,
html[data-theme] body .primary-cta:focus-visible,
html[data-theme] body .donate-large:focus-visible,
html[data-theme] body .contact-submit:focus-visible,
html[data-theme] body .phone-number:focus-visible,
html[data-theme] body .download-link:focus-visible,
html[data-theme] body .join-callout a:focus-visible,
html[data-theme] body .statutes-actions a:first-child:focus-visible,
html[data-theme] body .related-links a:focus-visible,
html[data-theme] body .support-button:focus-visible,
html[data-theme] body .nav a[aria-current="page"]:focus-visible,
html[data-theme] body .community-cta:focus-visible,
html[data-theme] body .chronik-number:focus-visible,
html[data-theme] body .newsletter-submit:focus-visible,
html[data-theme] body .news-filter[aria-pressed="true"]:focus-visible,
html[data-theme] body .news-link:focus-visible,
html[data-theme] body .medizin-topic-button:focus-visible,
html[data-theme] body .medizin-pflege-bridge>a:focus-visible,
html[data-theme] body .pflege-topic-button:focus-visible,
html[data-theme] body .sozial-button:focus-visible,
html[data-theme] body .politik-link:focus-visible,
html[data-theme] body .forderung-num:focus-visible,
html[data-theme] body .data-delete-mail-link:focus-visible,
html[data-theme] body .site-search-input-row button:focus-visible,
html[data-theme] body .featured-badge:focus-visible,
html[data-theme] body .proof-link:not(.secondary):focus-visible,
html[data-theme] body .primary-action:focus-visible,
html[data-theme] body .news-header-btn:focus-visible,
html[data-theme] body .quick-version-button:not(.quick-version-button--secondary):focus-visible,
html[data-theme] body .quick-version-back:focus-visible,
html[data-theme] body .igsafe-consent-btn.primary:focus-visible,
html[data-theme] body .igsafe-floating-donation>a:focus-visible,
html[data-theme] body .app-footer-contact:focus-visible { background:var(--theme-action-hover); border-color:var(--theme-action-hover); color:#fff!important; }
html[data-theme] body .footer-donate:hover,
html[data-theme] body .footer-donate:focus-visible,
html[data-theme] body .hero-actions .secondary-cta:hover,
html[data-theme] body .hero-actions .secondary-cta:focus-visible,
html[data-theme] body .data-delete-links a:hover,
html[data-theme] body .data-delete-links a:focus-visible,
html[data-theme] body .igsafe-floating-donation-close:hover,
html[data-theme] body .legal-card .sitemap-short-link:hover,
html[data-theme] body .legal-card .sitemap-short-link:focus-visible { background:var(--theme-action); color:#fff; }
html[data-theme] body .quick-version-button--secondary,
html[data-theme] body .quick-version-button--secondary:hover,
html[data-theme] body .quick-version-button--secondary:focus-visible { background:var(--theme-soft); color:var(--red)!important; border-color:var(--line); }
html[data-theme] body .community-hero,
html[data-theme] body .news-feature-side { background:var(--theme-action-hover); color:#fff; }
html[data-theme] body .news-feature-side .news-link { background:var(--surface2); color:var(--red)!important; }
html[data-theme] body .membership-lead,
html[data-theme] body .form-hint,
html[data-theme] body .donation-payment p,
html[data-theme] body .donation-reference,
html[data-theme] body .donation-reference strong,
html[data-theme] body .igsafe-floating-donation-purpose { color:var(--text); }
html[data-theme] body .field input,
html[data-theme] body .field select,
html[data-theme] body .field textarea,
html[data-theme] body .igsafe-floating-donation-close { background:var(--surface2); color:var(--text); border-color:var(--line); }
html[data-theme] body .newsletter-status.ok,
html[data-theme] body .newsletter-status.error,
html[data-theme] body .form-success,
html[data-theme] body .form-error { background:var(--theme-soft); color:var(--text); }
/* App-Übersicht und Sonderseiten verwenden dieselbe Farbwelt. */
html[data-theme] body .app-full-footer,
html[data-theme] body .app-footer-toggle,
html[data-theme] body .tools button,
html[data-theme] body .search,
html[data-theme] body .tile,
html[data-theme] body.igsafe-offline-page main,
html[data-theme] body.igsafe-error-page .card {
  background:var(--surface2); color:var(--text); border-color:var(--line);
}
html[data-theme] body .tile:first-child {
  background:var(--theme-action-hover); border-color:var(--theme-action-hover); color:#fff;
}
html[data-theme] body .tile svg { color:var(--red); }
html[data-theme] body .tile:first-child svg,
html[data-theme] body .tile:first-child small { color:#fff; }
html[data-theme] body .intro p:last-child,
html[data-theme] body .tile small,
html[data-theme] body .tile b,
html[data-theme] body .bottom,
html[data-theme] body .app-footer-links a,
html[data-theme] body .app-footer-links button,
html[data-theme] body .app-footer-bottom-inner,
html[data-theme] body .app-footer-bottom-inner>span:first-child::before,
html[data-theme] body.igsafe-offline-page .hint { color:var(--muted); }
html[data-theme] body .tile:first-child b { color:#fff; }
html[data-theme] body .app-footer-toggle { color:var(--text); }
html[data-theme] body .tile:first-child:hover { background:var(--theme-action); }
html[data-theme] body .tile:not(:first-child):hover { background:var(--theme-panel); }
html[data-theme] body .eyebrow { color:var(--red); }
html[data-theme] body .skip { background:var(--surface2); color:var(--text); }
html[data-theme] body.igsafe-error-page .bridge { opacity:.12; }
html[data-theme="dark"] body .app-full-footer { box-shadow:none; }
html[data-theme] body .community-section--warm,
html[data-theme] body .chronik-event-preview {
  background:var(--theme-panel); color:var(--text);
}
html[data-theme] body .igsafe-section-media,
html[data-theme] body .igsafe-section-media img,
html[data-theme] body .igsafe-section-card--gallery .igsafe-section-media img,
html[data-theme] body .chronik-entry img {
  background:var(--surface2);
}
html[data-theme] body .chronik-event-preview:hover {
  background:var(--theme-soft); color:var(--red);
}

}
