/* ==========================================================================
   WLF PRO GLOW — DEFAULT theme (dark navy + royal-blue/cyan glow), softened.
   Scoped so it only paints the DEFAULT state and STEPS ASIDE when a user picks
   a palette from the theme switcher (data-wlf-theme). Default states covered:
     - no theme chosen yet          html:not([data-wlf-theme])
     - hub / app default            html[data-wlf-theme="apple-dark"]
     - website default / Blue-White html[data-wlf-theme="blue-white"]
   Pick any other palette (green, red, teal, …) and these rules no longer match,
   so the chosen theme shows through. Buyer brand color flows via --wlf-brand.
   ========================================================================== */

:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]){
  color-scheme: dark;
  --wlf-brand:#2563EB; --wlf-brand-2:#1D4ED8; --wlf-cyan:#38BDF8;
  --wlf-bg-0:#020817; --wlf-bg-1:#061226; --wlf-bg-2:#08172D;
  --wlf-panel:#0B1729; --wlf-panel-2:#101D33; --wlf-elevated:#172A45; --wlf-border:#274B73;
  --wlf-text:#F8FAFC; --wlf-muted:#C7D8EA;
  --wlf-glow-1:rgba(37,99,235,.20); --wlf-glow-2:rgba(56,189,248,.12);
  background:#020817 !important; scroll-behavior:smooth;
}
:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) body{
  background:
    radial-gradient(circle at 16% -12%, var(--wlf-glow-1,rgba(37,99,235,.20)), transparent 46%),
    radial-gradient(circle at 88% 6%, var(--wlf-glow-2,rgba(56,189,248,.12)), transparent 44%),
    linear-gradient(135deg,#020817 0%,#061226 46%,#08172D 100%) !important;
  color:var(--wlf-text,#F8FAFC) !important; min-height:100vh;
}

/* everything below is a descendant rule, gated by the same default-state scope */
:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) :is(body,p,li,span,div,label,small,summary,td,th,.sub,.muted,.copy,.desc){
  color:var(--wlf-muted,#C7D8EA) !important;
}
:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) :is(h1,h2,h3,h4,h5,h6,.page-title,.hero-title,.title,.section-title,.card-title,.metric-value,.stat-value,strong,b){
  color:var(--wlf-text,#F8FAFC) !important; -webkit-text-fill-color:var(--wlf-text,#F8FAFC) !important; text-shadow:0 1px 0 rgba(0,0,0,.22);
}
:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) a{ color:var(--wlf-cyan,#38BDF8) !important; }

:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) :is(.card,.panel,.tile,.box,.surface,.bpf-card,.prog-card,.stat,.metric,section.card,.module,.pane){
  background:linear-gradient(160deg,var(--wlf-panel,#0B1729) 0%,var(--wlf-panel-2,#101D33) 100%) !important;
  border:1px solid var(--wlf-border,#274B73) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.22), 0 0 0 1px rgba(56,189,248,.03) inset !important;
  color:var(--wlf-muted,#C7D8EA) !important;
}

:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) :is(.btn,.button,button.primary,.btn-primary,.cta,.bpf-cta,input[type=submit],a.btn,.wlf-btn,.buy,.checkout-btn){
  background:linear-gradient(135deg,var(--wlf-brand,#2563EB) 0%,var(--wlf-brand-2,#1D4ED8) 100%) !important;
  color:#FFFFFF !important; -webkit-text-fill-color:#FFFFFF !important;
  border:1px solid rgba(56,189,248,.30) !important;
  box-shadow:0 8px 18px rgba(37,99,235,.26), 0 0 10px rgba(56,189,248,.18) !important;
  border-radius:12px !important;
}
:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) :is(.btn:hover,.button:hover,.btn-primary:hover,.cta:hover,a.btn:hover,.wlf-btn:hover){
  box-shadow:0 10px 22px rgba(37,99,235,.36), 0 0 15px rgba(56,189,248,.30) !important; filter:brightness(1.04);
}

:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) :is(input,select,textarea){
  background:var(--wlf-bg-2,#08172D) !important; color:var(--wlf-text,#F8FAFC) !important; border:1px solid var(--wlf-border,#274B73) !important;
}
:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) :is(input,textarea)::placeholder{ color:var(--wlf-muted,#C7D8EA) !important; }

:is(html:not([data-wlf-theme]), html[data-wlf-theme="apple-dark"], html[data-wlf-theme="blue-white"]) :is(header,nav,.nav,.navbar,.topbar,.bottom-nav,.tabbar,footer,.footer){
  background:rgba(6,18,38,.72) !important; -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); border-color:var(--wlf-border,#274B73) !important;
}
