/* Readability hardening for the purple/fuchsia visual system.
   Any dark/gradient surface owns its foreground colors explicitly so global
   heading rules can never turn inherited white text dark. */

.sfa-marketing,
.sfa-marketing h1,
.sfa-marketing h2,
.sfa-marketing h3,
.sfa-marketing h4,
.sfa-marketing strong,
.sfa-marketing summary,
.sfa-marketing .sfa-eyebrow,
.sfa-marketing .sfa-price-pill,
.sfa-marketing .sfa-trust-chip,
.sfa-marketing .sfa-value-block h3,
.sfa-marketing .sfa-trust-block h3,
.sfa-marketing .sfa-value strong,
.sfa-marketing .sfa-compare-row strong {
  color:#fff!important;
}

.sfa-marketing .sfa-hero-copy{color:rgba(255,255,255,.88)!important}
.sfa-marketing .sfa-value small{color:rgba(255,255,255,.76)!important}
.sfa-marketing .sfa-trust-block p{color:rgba(255,255,255,.68)!important}
.sfa-marketing .sfa-compare-head{color:rgba(255,255,255,.62)!important}
.sfa-marketing .sfa-compare-row,
.sfa-marketing .sfa-compare-row small{color:rgba(255,255,255,.74)!important}
.sfa-marketing .sfa-disclaimer{color:rgba(255,255,255,.60)!important}
.sfa-marketing .sfa-trust-head a{color:#fff!important}

.sf-home-hero,
.sf-home-hero h1,
.sf-home-hero h2,
.sf-home-hero h3,
.sf-home-hero h4,
.sf-home-hero p,
.sf-home-hero strong,
.sf-home-hero span:not(.sf-hero-btn):not(.sf-icon){color:#fff!important}
.sf-home-hero p{color:rgba(255,255,255,.88)!important}
.sf-home-hero .sf-hero-btn{color:#fff!important}
.sf-home-hero .sf-hero-btn:first-child{color:#5b21b6!important}

.sf-sidebar,
.sf-sidebar h1,
.sf-sidebar h2,
.sf-sidebar h3,
.sf-sidebar h4{color:#fff!important}
.sf-sidebar-item{color:#d8cde0!important}
.sf-sidebar-item.active,.sf-sidebar-item:hover{color:#fff!important}
.sf-sidebar-cta.sf-btn-secondary{color:#fff!important}
.sf-sidebar .sf-sidebar-cta.sf-btn-secondary:hover:not(:disabled),
.sf-sidebar .sf-sidebar-cta.sf-btn-secondary:focus-visible:not(:disabled),
.sf-sidebar .sf-sidebar-cta.sf-btn-secondary:active:not(:disabled){
  background:#563684!important;
  color:#fff!important;
  border-color:rgba(196,181,253,.58)!important;
}
.sf-sidebar .sf-sidebar-cta.sf-btn-secondary:focus-visible:not(:disabled){
  outline:2px solid rgba(216,180,254,.78)!important;
  outline-offset:2px;
}
.sf-sidebar .sf-sidebar-cta.sf-btn-secondary:hover:not(:disabled) .sf-icon,
.sf-sidebar .sf-sidebar-cta.sf-btn-secondary:focus-visible:not(:disabled) .sf-icon,
.sf-sidebar .sf-sidebar-cta.sf-btn-secondary:active:not(:disabled) .sf-icon{
  color:#fff!important;
}

/* White/light surfaces always use dark foregrounds. */
.sfa-auth-panel,
.sfa-auth-panel h1,
.sfa-auth-panel h2,
.sfa-auth-panel h3,
.sfa-auth-panel h4,
.sfa-card,
.sf-panel,
.sf-modal,
.sf-notif-panel,
.sf-ci-kpi,
.sf-ci-plan,
table.sf-table{color:#21152f!important}

.sfa-auth-panel p,.sfa-auth-panel .sfa-sub{color:#70677e!important}
.sf-panel p,.sf-ci-kpi-sub,.sf-ci-unit{color:#756b80!important}

/* Keep links distinct and readable on light backgrounds. */
.sfa-auth-panel .sfa-link,.sf-shell-main .sf-link{color:#6d28d9!important}
.sfa-auth-panel .sfa-link:hover,.sf-shell-main .sf-link:hover{color:#c026d3!important}

/* Explicit contrast for disabled/secondary controls. */
.sf-btn-secondary:disabled{color:#8b8093!important;background:#f3eef6!important}
input::placeholder,textarea::placeholder{color:#9b91a3!important;opacity:1}
