/* WZBudowa Engine 3.7 — late-loaded contrast guard.
 * Narrow selectors only: keep Elementor design, ads and user-defined blocks intact.
 * Strong component contracts prevent CSS-optimiser / theme/Elementor cascade collisions.
 */
:root {
  --wzb-box-paper:#fff8f4;
  --wzb-box-ink:#202b33;
  --wzb-box-rule:#e9d9ce;
  --wzb-box-dark:#1c1c1c;
  --wzb-box-white:#f7f8fa;
}
/* Pillar key facts: this HTML is rendered outside .entry-content, and must not
 * inherit the dark warning-card treatment or global h2/li styles. */
body .wzb-pillar .wzb-pillar-takeaways,
body .wzb-pillar-takeaways {
  background:var(--wzb-box-paper)!important;
  background-image:none!important;
  color:var(--wzb-box-ink)!important;
  border:1px solid var(--wzb-box-rule)!important;
  border-left:5px solid var(--wzb-signal,#ff5a1f)!important;
  box-shadow:none!important;
  border-radius:12px!important;
}
body .wzb-pillar .wzb-pillar-takeaways :is(h2,h3,p,li,span,strong,em),
body .wzb-pillar-takeaways :is(h2,h3,p,li,span,strong,em){
  color:var(--wzb-box-ink)!important;
  background-color:transparent!important;
  text-shadow:none!important;
}
body .wzb-pillar .wzb-pillar-takeaways h2,
body .wzb-pillar-takeaways h2 {
  color:#172129!important;
  margin-top:0!important;
  border:0!important;
  padding:0!important;
}
body .wzb-pillar .wzb-pillar-takeaways li,
body .wzb-pillar-takeaways li { border-bottom-color:#eddfd5!important; }
body .wzb-pillar .wzb-pillar-takeaways li::before,
body .wzb-pillar-takeaways li::before { background:var(--wzb-signal,#ff5a1f)!important; }
/* Dark warning/callout: force a legible white foreground, including direct
 * descendants that appear outside the usual .entry-content wrapper. */
body .wzb-callout:not(.wzb-callout--info):not(.wzb-pillar-takeaways) {
  background:var(--wzb-box-dark)!important;
  color:var(--wzb-box-white)!important;
}
body .wzb-callout:not(.wzb-callout--info):not(.wzb-pillar-takeaways) :is(h2,h3,h4,p,li,span,strong,em){
  color:var(--wzb-box-white)!important;
  text-shadow:none!important;
}
body .wzb-callout:not(.wzb-callout--info):not(.wzb-pillar-takeaways) a {
  color:#ffe0b3!important;
  text-decoration:underline;
}
body .wzb-callout--info:not(.wzb-pillar-takeaways) {
  background:#edf4f9!important;
  color:#193447!important;
  border-left-color:#365f7b!important;
}
body .wzb-callout--info:not(.wzb-pillar-takeaways) :is(h2,h3,h4,p,li,span,strong,em) {
  color:#193447!important;
}
body .wzb-callout--info:not(.wzb-pillar-takeaways) a { color:#14527b!important; }
/* Light notes and checklists have their own legible palette, even if nested in
 * the generic article that carries dark text rules. */
body .entry-content .wzb-note,
body .entry-content .wzb-checklist {
  background:#f5f8fa!important;
  color:#263842!important;
}
body .entry-content .wzb-note :is(h2,h3,h4,p,li,span,strong,em),
body .entry-content .wzb-checklist :is(h2,h3,h4,p,li,span,strong,em) {
  color:#263842!important;
}
/* Don't override intentional Gutenberg foreground/background pairs or Elementor
 * sections: only native WZB components above receive contrast locking. */
