
/* ======================================================================
   WHITE LABEL FITNESS — UNIVERSAL BUYER THEME SYSTEM
   Version: 2026-06-17 universal theme v2
   Purpose: one CSS layer that controls the entire website/app/hub palette.

   CHANGE THE DEFAULT THEME:
   1) Open assets/js/wlf-theme-init.js
   2) Change DEFAULT_THEME = 'calm-blue' to one of the names below.

   LIVE PREVIEW:
   Add ?theme=black-red, ?theme=black-gold, etc. to any page URL.
   Example: /index.html?theme=black-red
   ====================================================================== */

:root,
html[data-wlf-theme="calm-blue"]{
  --wlf-theme-name:'Calm Blue / White';
  --wlf-page:#f6f9ff;
  --wlf-page-2:#edf4ff;
  --wlf-surface:#ffffff;
  --wlf-surface-2:#f8fbff;
  --wlf-surface-3:#eef5ff;
  --wlf-card:#ffffff;
  --wlf-card-soft:#f4f8ff;
  --wlf-text:#071b4a;
  --wlf-text-2:#122b5f;
  --wlf-muted:#52657e;
  --wlf-muted-2:#6b7f99;
  --wlf-border:#bfdbfe;
  --wlf-border-2:#dbeafe;
  --wlf-brand:#2f6fed;
  --wlf-brand-2:#1d4ed8;
  --wlf-brand-soft:#dbeafe;
  --wlf-brand-wash:#eff6ff;
  --wlf-accent:#2f6fed;
  --wlf-on-brand:#ffffff;
  --wlf-good:#2f6fed;
  --wlf-warning:#2f6fed;
  --wlf-shadow:0 18px 50px rgba(30,64,175,.11);
  --wlf-shadow-soft:0 10px 28px rgba(30,64,175,.08);
  --wlf-radius:22px;
  --wlf-radius-sm:14px;
  --wlf-font-body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --wlf-font-heading:"Barlow Condensed", Inter, Arial, sans-serif;

  /* legacy variable bridge */
  --or:var(--wlf-brand); --ol:var(--wlf-brand-2); --og:rgba(47,111,237,.22);
  --wh:var(--wlf-text); --mt:var(--wlf-muted); --mt2:var(--wlf-muted-2);
  --s1:var(--wlf-surface); --s2:var(--wlf-surface-2); --s3:var(--wlf-surface-3);
  --bg:var(--wlf-page); --card:var(--wlf-card); --line:var(--wlf-border);
  --red:var(--wlf-brand); --accent:var(--wlf-brand); --blue:var(--wlf-brand);
  --bpf-bg:var(--wlf-page); --bpf-bg-2:var(--wlf-page-2); --bpf-panel:var(--wlf-card);
  --bpf-panel-2:var(--wlf-card-soft); --bpf-red:var(--wlf-brand); --bpf-red-hot:var(--wlf-brand-2);
  --bpf-red-deep:var(--wlf-brand-wash); --bpf-lime:var(--wlf-brand); --bpf-white:var(--wlf-text);
  --bpf-muted:var(--wlf-muted); --bpf-soft:var(--wlf-muted-2); --bpf-border:var(--wlf-border);
}

html[data-wlf-theme="pro-blue"]{--wlf-page:#f7fbff;--wlf-page-2:#eaf3ff;--wlf-surface:#fff;--wlf-surface-2:#f4f9ff;--wlf-surface-3:#eaf3ff;--wlf-card:#fff;--wlf-card-soft:#f1f7ff;--wlf-text:#071b4a;--wlf-text-2:#102a5c;--wlf-muted:#52657e;--wlf-muted-2:#637793;--wlf-border:#bfdbfe;--wlf-border-2:#dbeafe;--wlf-brand:#2563eb;--wlf-brand-2:#1d4ed8;--wlf-brand-soft:#dbeafe;--wlf-brand-wash:#eff6ff;--wlf-accent:#2563eb;--wlf-on-brand:#fff;--wlf-good:#2563eb;--wlf-warning:#2563eb;--wlf-shadow:0 18px 50px rgba(37,99,235,.12);--wlf-shadow-soft:0 10px 28px rgba(37,99,235,.08)}
html[data-wlf-theme="steel-blue"]{--wlf-page:#f5f8fb;--wlf-page-2:#e7eff6;--wlf-surface:#fff;--wlf-surface-2:#f8fbfd;--wlf-surface-3:#edf4f8;--wlf-card:#fff;--wlf-card-soft:#f3f8fb;--wlf-text:#0a2437;--wlf-text-2:#15384e;--wlf-muted:#536879;--wlf-muted-2:#6b7f8d;--wlf-border:#c7d7e3;--wlf-border-2:#dbe6ee;--wlf-brand:#2f6f8f;--wlf-brand-2:#24566f;--wlf-brand-soft:#dbeaf2;--wlf-brand-wash:#eef6fa;--wlf-accent:#2f6f8f;--wlf-on-brand:#fff;--wlf-good:#2f6f8f;--wlf-warning:#2f6f8f;--wlf-shadow:0 18px 50px rgba(47,111,143,.12);--wlf-shadow-soft:0 10px 28px rgba(47,111,143,.08)}
html[data-wlf-theme="navy-sky"]{--wlf-page:#f5f9ff;--wlf-page-2:#eaf4ff;--wlf-surface:#fff;--wlf-surface-2:#f7fbff;--wlf-surface-3:#eaf4ff;--wlf-card:#fff;--wlf-card-soft:#f1f7ff;--wlf-text:#071426;--wlf-text-2:#0f2746;--wlf-muted:#52677c;--wlf-muted-2:#6c8195;--wlf-border:#bdd7f4;--wlf-border-2:#dcecff;--wlf-brand:#0f3460;--wlf-brand-2:#0b2545;--wlf-brand-soft:#dbeafe;--wlf-brand-wash:#eff6ff;--wlf-accent:#3b82f6;--wlf-on-brand:#fff;--wlf-good:#0f3460;--wlf-warning:#0f3460;--wlf-shadow:0 18px 50px rgba(15,52,96,.13);--wlf-shadow-soft:0 10px 28px rgba(15,52,96,.08)}
html[data-wlf-theme="ocean-blue"]{--wlf-page:#f2fbfd;--wlf-page-2:#e6f7fb;--wlf-surface:#fff;--wlf-surface-2:#f6fcfd;--wlf-surface-3:#e7f8fb;--wlf-card:#fff;--wlf-card-soft:#effafd;--wlf-text:#062334;--wlf-text-2:#0a3a50;--wlf-muted:#536d79;--wlf-muted-2:#6f8792;--wlf-border:#b7e1ea;--wlf-border-2:#d6f1f6;--wlf-brand:#0e7490;--wlf-brand-2:#155e75;--wlf-brand-soft:#cffafe;--wlf-brand-wash:#ecfeff;--wlf-accent:#0891b2;--wlf-on-brand:#fff;--wlf-good:#0e7490;--wlf-warning:#0e7490;--wlf-shadow:0 18px 50px rgba(14,116,144,.12);--wlf-shadow-soft:0 10px 28px rgba(14,116,144,.08)}
html[data-wlf-theme="indigo-blue"]{--wlf-page:#f8f8ff;--wlf-page-2:#eef2ff;--wlf-surface:#fff;--wlf-surface-2:#fafaff;--wlf-surface-3:#eef2ff;--wlf-card:#fff;--wlf-card-soft:#f4f5ff;--wlf-text:#12163c;--wlf-text-2:#1e2661;--wlf-muted:#565b79;--wlf-muted-2:#707596;--wlf-border:#c7d2fe;--wlf-border-2:#e0e7ff;--wlf-brand:#4f46e5;--wlf-brand-2:#4338ca;--wlf-brand-soft:#e0e7ff;--wlf-brand-wash:#eef2ff;--wlf-accent:#4f46e5;--wlf-on-brand:#fff;--wlf-good:#4f46e5;--wlf-warning:#4f46e5;--wlf-shadow:0 18px 50px rgba(79,70,229,.12);--wlf-shadow-soft:0 10px 28px rgba(79,70,229,.08)}

/* High-energy options for buyers who want more aggressive fitness branding. */
html[data-wlf-theme="black-red"]{--wlf-page:#050608;--wlf-page-2:#0b0d11;--wlf-surface:#0e1117;--wlf-surface-2:#151922;--wlf-surface-3:#1c2230;--wlf-card:#0f1218;--wlf-card-soft:#171c26;--wlf-text:#f8fafc;--wlf-text-2:#f1f5f9;--wlf-muted:#a6b0c0;--wlf-muted-2:#8c98aa;--wlf-border:#2a3343;--wlf-border-2:#202838;--wlf-brand:#e11d48;--wlf-brand-2:#be123c;--wlf-brand-soft:#3c111c;--wlf-brand-wash:#16080d;--wlf-accent:#f43f5e;--wlf-on-brand:#fff;--wlf-good:#e11d48;--wlf-warning:#e11d48;--wlf-shadow:0 18px 50px rgba(0,0,0,.38);--wlf-shadow-soft:0 10px 28px rgba(0,0,0,.28)}
html[data-wlf-theme="black-gold"]{--wlf-page:#050505;--wlf-page-2:#0c0c0a;--wlf-surface:#11110f;--wlf-surface-2:#171711;--wlf-surface-3:#202018;--wlf-card:#10100e;--wlf-card-soft:#181812;--wlf-text:#fafaf7;--wlf-text-2:#f4f0dc;--wlf-muted:#b8b09a;--wlf-muted-2:#958d78;--wlf-border:#36311e;--wlf-border-2:#272312;--wlf-brand:#d4af37;--wlf-brand-2:#b98914;--wlf-brand-soft:#30280e;--wlf-brand-wash:#181306;--wlf-accent:#f4d36b;--wlf-on-brand:#090909;--wlf-good:#d4af37;--wlf-warning:#d4af37;--wlf-shadow:0 18px 50px rgba(0,0,0,.42);--wlf-shadow-soft:0 10px 28px rgba(0,0,0,.28)}
html[data-wlf-theme="black-white"]{--wlf-page:#050505;--wlf-page-2:#0a0a0a;--wlf-surface:#111111;--wlf-surface-2:#171717;--wlf-surface-3:#202020;--wlf-card:#101010;--wlf-card-soft:#181818;--wlf-text:#ffffff;--wlf-text-2:#f3f4f6;--wlf-muted:#c4c7cc;--wlf-muted-2:#9ca3af;--wlf-border:#343434;--wlf-border-2:#252525;--wlf-brand:#ffffff;--wlf-brand-2:#e5e7eb;--wlf-brand-soft:#222222;--wlf-brand-wash:#111111;--wlf-accent:#ffffff;--wlf-on-brand:#090909;--wlf-good:#ffffff;--wlf-warning:#ffffff;--wlf-shadow:0 18px 50px rgba(0,0,0,.42);--wlf-shadow-soft:0 10px 28px rgba(0,0,0,.28)}
html[data-wlf-theme="red-white"]{--wlf-page:#fff7f7;--wlf-page-2:#fff0f0;--wlf-surface:#ffffff;--wlf-surface-2:#fffafa;--wlf-surface-3:#fff1f2;--wlf-card:#ffffff;--wlf-card-soft:#fff5f6;--wlf-text:#25080b;--wlf-text-2:#441015;--wlf-muted:#665154;--wlf-muted-2:#7d676a;--wlf-border:#fecdd3;--wlf-border-2:#ffe4e6;--wlf-brand:#dc2626;--wlf-brand-2:#b91c1c;--wlf-brand-soft:#fee2e2;--wlf-brand-wash:#fff1f2;--wlf-accent:#dc2626;--wlf-on-brand:#fff;--wlf-good:#dc2626;--wlf-warning:#dc2626;--wlf-shadow:0 18px 50px rgba(220,38,38,.10);--wlf-shadow-soft:0 10px 28px rgba(220,38,38,.07)}
html[data-wlf-theme="graphite-blue"]{--wlf-page:#f4f6f9;--wlf-page-2:#e9eef5;--wlf-surface:#ffffff;--wlf-surface-2:#f8fafc;--wlf-surface-3:#eef3f8;--wlf-card:#ffffff;--wlf-card-soft:#f4f7fb;--wlf-text:#101827;--wlf-text-2:#1e293b;--wlf-muted:#526173;--wlf-muted-2:#718096;--wlf-border:#cbd5e1;--wlf-border-2:#e2e8f0;--wlf-brand:#1e40af;--wlf-brand-2:#172554;--wlf-brand-soft:#dbeafe;--wlf-brand-wash:#eff6ff;--wlf-accent:#2563eb;--wlf-on-brand:#fff;--wlf-good:#1e40af;--wlf-warning:#1e40af;--wlf-shadow:0 18px 50px rgba(15,23,42,.10);--wlf-shadow-soft:0 10px 28px rgba(15,23,42,.08)}
html[data-wlf-theme="white-black"]{--wlf-page:#fafafa;--wlf-page-2:#f4f4f5;--wlf-surface:#ffffff;--wlf-surface-2:#fbfbfb;--wlf-surface-3:#f4f4f5;--wlf-card:#ffffff;--wlf-card-soft:#f7f7f8;--wlf-text:#09090b;--wlf-text-2:#18181b;--wlf-muted:#52525b;--wlf-muted-2:#71717a;--wlf-border:#d4d4d8;--wlf-border-2:#e4e4e7;--wlf-brand:#111827;--wlf-brand-2:#000000;--wlf-brand-soft:#e5e7eb;--wlf-brand-wash:#f4f4f5;--wlf-accent:#111827;--wlf-on-brand:#ffffff;--wlf-good:#111827;--wlf-warning:#111827;--wlf-shadow:0 18px 50px rgba(24,24,27,.09);--wlf-shadow-soft:0 10px 28px rgba(24,24,27,.06)}

html{background:var(--wlf-page)!important;color:var(--wlf-text)!important;}
body{
  background:linear-gradient(180deg,var(--wlf-page) 0%, var(--wlf-surface-2) 52%, var(--wlf-page) 100%)!important;
  color:var(--wlf-text)!important;
  font-family:var(--wlf-font-body)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body *{text-shadow:none!important;}

/* Tone down oversaturated hero/CTA blocks for the default light themes. */
html:not([data-wlf-theme^="black"]) .hero,
html:not([data-wlf-theme^="black"]) .hero-card,
html:not([data-wlf-theme^="black"]) .cta-section,
html:not([data-wlf-theme^="black"]) .apply-section,
html:not([data-wlf-theme^="black"]) .application-section,
html:not([data-wlf-theme^="black"]) .downloads,
html:not([data-wlf-theme^="black"]) .guide-card,
html:not([data-wlf-theme^="black"]) .program-card,
html:not([data-wlf-theme^="black"]) .workout-card,
html:not([data-wlf-theme^="black"]) .feature-card,
html:not([data-wlf-theme^="black"]) .pricing-card,
html:not([data-wlf-theme^="black"]) .plan-card,
html:not([data-wlf-theme^="black"]) .app-card,
html:not([data-wlf-theme^="black"]) .dashboard-card,
html:not([data-wlf-theme^="black"]) .coach-card,
html:not([data-wlf-theme^="black"]) .bpf-home-access-offer,
html:not([data-wlf-theme^="black"]) .app-home-card,
html:not([data-wlf-theme^="black"]) .save-result-card,
html:not([data-wlf-theme^="black"]) .snapshot-summary,
html:not([data-wlf-theme^="black"]) .plan-score-card,
html:not([data-wlf-theme^="black"]) .portal-command-card,
html:not([data-wlf-theme^="black"]) .today-focus-card,
html:not([data-wlf-theme^="black"]) .guided-prompts{
  background:linear-gradient(180deg,var(--wlf-surface) 0%, var(--wlf-surface-2) 100%)!important;
  color:var(--wlf-text)!important;
  border-color:var(--wlf-border)!important;
  box-shadow:var(--wlf-shadow-soft)!important;
}

/* Generic layout/shell polish */
.container,.wrap,.shell,.page-shell,.app-shell,.phone-shell,.mobile-shell,.portal-shell,.screen,.main,.main-wrap,main,
.content,.content-wrap,.site-shell,.client-shell,.hub-shell{
  max-width:min(100%,1180px);
}
.phone-shell,.mobile-shell,.app-shell,.client-shell,.portal-shell,.hub-shell,.screen{
  margin-left:auto!important;
  margin-right:auto!important;
  background:var(--wlf-surface-2)!important;
  color:var(--wlf-text)!important;
  border-color:var(--wlf-border)!important;
}

.card,.tile,.panel,.module,.box,.section,.feature,.feature-tile,.feature-card,.program-card,.pricing-card,.guide-card,.download-card,
.hub-card,.client-card,.tool-card,.resource-card,.quick-card,.question-card,.coach-panel,.coach-card,.ai-card,.input-card,.metric-card,
[class*="card"],[class*="tile"],[class*="panel"]{
  border-color:var(--wlf-border)!important;
  color:var(--wlf-text)!important;
}

/* Type hierarchy: dark readable text, less condensed button text. */
h1,h2,h3,h4,h5,h6,.headline,.title,.section-title,.hero-title,.app-home-title,.portal-command-title,
.today-focus-title,.native-section-title,.save-result-title,.score-title{
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
  letter-spacing:.005em!important;
}
p,li,span,small,label,em,.copy,.sub,.subcopy,.muted,.description,.subtitle,.body-copy,.app-home-sub,.portal-command-copy,
.today-focus-sub,.save-result-copy,.score-sub{
  color:var(--wlf-muted)!important;
  -webkit-text-fill-color:var(--wlf-muted)!important;
}
strong,b{color:var(--wlf-text)!important;-webkit-text-fill-color:var(--wlf-text)!important;}
.kicker,.eyebrow,.label,.badge,.pill,.tag,.chip,.day,.app-home-kicker{
  color:var(--wlf-brand-2)!important;
  -webkit-text-fill-color:var(--wlf-brand-2)!important;
}

/* Links */
a{color:var(--wlf-brand-2)!important;}
a:hover{color:var(--wlf-brand)!important;}

/* Buttons: clear, readable, less compressed. */
button,.btn,.button,a.btn,a.button,[role="button"],input[type="button"],input[type="submit"],.cta,.cta-button,
.primary,.primary-btn,.lead-btn,.app-primary-action,.app-secondary-action,.app-video-action,.empty-cta,.push-btn,
.bpf-btn,.to-app,.bottom-nav a,.bottom-nav button,.tray a,.tray button,.nav-btn,.nav-pill,.quick-question,.topic-chip{
  min-height:44px!important;
  border-radius:14px!important;
  font-family:var(--wlf-font-body)!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
  text-decoration:none!important;
  line-height:1.15!important;
  border-color:var(--wlf-border)!important;
  box-shadow:none!important;
}
button:not(.ghost):not(.secondary):not(.outline):not(.nav-btn):not(.nav-pill):not(.topic-chip):not(.quick-question),
.btn.primary,.button.primary,a.btn.primary,a.button.primary,.primary-btn,.lead-btn,.cta-button,.app-primary-action,
input[type="submit"]{
  background:var(--wlf-brand)!important;
  color:var(--wlf-on-brand)!important;
  -webkit-text-fill-color:var(--wlf-on-brand)!important;
  border-color:var(--wlf-brand)!important;
}
button:not(.ghost):not(.secondary):not(.outline):not(.nav-btn):not(.nav-pill):not(.topic-chip):not(.quick-question) *,
.btn.primary *,.button.primary *,.primary-btn *,.lead-btn *,.cta-button *,.app-primary-action *{
  color:var(--wlf-on-brand)!important;
  -webkit-text-fill-color:var(--wlf-on-brand)!important;
}
.ghost,.secondary,.outline,.nav-btn,.nav-pill,.topic-chip,.quick-question,.app-secondary-action,.app-video-action,.empty-cta,
.tray a,.tray button,.bottom-nav a,.bottom-nav button{
  background:var(--wlf-brand-wash)!important;
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
  border:1px solid var(--wlf-border)!important;
}
.ghost *,.secondary *,.outline *,.nav-btn *,.nav-pill *,.topic-chip *,.quick-question *,.app-secondary-action *,.app-video-action *,
.tray a *,.tray button *,.bottom-nav a *,.bottom-nav button *{
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
}

/* Header/nav */
header,.header,.topbar,.nav,.navbar,.app-header,.hub-header,.site-header,.page-header{
  background:rgba(255,255,255,.94)!important;
  color:var(--wlf-text)!important;
  border-color:var(--wlf-border-2)!important;
  box-shadow:0 8px 28px rgba(30,64,175,.06)!important;
  backdrop-filter:blur(16px);
}
html[data-wlf-theme^="black"] header,html[data-wlf-theme^="black"] .header,html[data-wlf-theme^="black"] .topbar,
html[data-wlf-theme^="black"] .nav,html[data-wlf-theme^="black"] .navbar,html[data-wlf-theme^="black"] .app-header,
html[data-wlf-theme^="black"] .hub-header,html[data-wlf-theme^="black"] .site-header,html[data-wlf-theme^="black"] .page-header{
  background:rgba(10,10,10,.92)!important;
}

/* Bottom nav: no heavy black tray unless black theme is selected. */
.tray,.bottom-nav,.mobile-nav,.tabbar,.tabs-bottom{
  background:rgba(255,255,255,.96)!important;
  color:var(--wlf-text)!important;
  border:1px solid var(--wlf-border)!important;
  box-shadow:0 14px 40px rgba(30,64,175,.14)!important;
}
html[data-wlf-theme^="black"] .tray,html[data-wlf-theme^="black"] .bottom-nav,html[data-wlf-theme^="black"] .mobile-nav,
html[data-wlf-theme^="black"] .tabbar,html[data-wlf-theme^="black"] .tabs-bottom{
  background:rgba(15,15,15,.96)!important;
}
.tray .active,.bottom-nav .active,.mobile-nav .active,.tabbar .active{
  background:var(--wlf-brand-soft)!important;
  color:var(--wlf-brand-2)!important;
  border-color:var(--wlf-brand)!important;
}

/* Form fields */
input,textarea,select,.input,.textarea,.field{
  background:var(--wlf-surface)!important;
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
  border:1px solid var(--wlf-border)!important;
  border-radius:16px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6)!important;
}
input::placeholder,textarea::placeholder{color:var(--wlf-muted-2)!important;-webkit-text-fill-color:var(--wlf-muted-2)!important;}
input:focus,textarea:focus,select:focus{outline:3px solid color-mix(in srgb,var(--wlf-brand) 24%, transparent)!important;border-color:var(--wlf-brand)!important;}

/* Large saturated blocks become classy and readable on light themes. */
html:not([data-wlf-theme^="black"]) [style*="background:#2563EB" i],
html:not([data-wlf-theme^="black"]) [style*="background: #2563EB" i],
html:not([data-wlf-theme^="black"]) [style*="background:#1D4ED8" i],
html:not([data-wlf-theme^="black"]) [style*="background: #1D4ED8" i],
html:not([data-wlf-theme^="black"]) [style*="background:blue" i],
html:not([data-wlf-theme^="black"]) [style*="background: blue" i],
html:not([data-wlf-theme^="black"]) [style*="background-color:#2563EB" i],
html:not([data-wlf-theme^="black"]) [style*="background-color: #2563EB" i]{
  background:linear-gradient(180deg,var(--wlf-surface) 0%,var(--wlf-brand-wash) 100%)!important;
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
  border-color:var(--wlf-border)!important;
}

/* Kill accidental pink/red/green/yellow remnants on default calm blue. */
html[data-wlf-theme="calm-blue"] [style*="pink" i],
html[data-wlf-theme="calm-blue"] [style*="red" i],
html[data-wlf-theme="calm-blue"] [style*="green" i],
html[data-wlf-theme="calm-blue"] [style*="lime" i],
html[data-wlf-theme="calm-blue"] [style*="yellow" i],
html[data-wlf-theme="calm-blue"] [style*="gold" i],
html[data-wlf-theme="calm-blue"] [class*="pink" i],
html[data-wlf-theme="calm-blue"] [class*="red" i],
html[data-wlf-theme="calm-blue"] [class*="green" i],
html[data-wlf-theme="calm-blue"] [class*="lime" i],
html[data-wlf-theme="calm-blue"] [class*="yellow" i],
html[data-wlf-theme="calm-blue"] [class*="gold" i]{
  border-color:var(--wlf-border)!important;
}
html[data-wlf-theme="calm-blue"] .text-red,
html[data-wlf-theme="calm-blue"] .accent-red,
html[data-wlf-theme="calm-blue"] .red,
html[data-wlf-theme="calm-blue"] .text-lime,
html[data-wlf-theme="calm-blue"] .accent-lime,
html[data-wlf-theme="calm-blue"] .lime,
html[data-wlf-theme="calm-blue"] .text-green,
html[data-wlf-theme="calm-blue"] .green,
html[data-wlf-theme="calm-blue"] .text-yellow,
html[data-wlf-theme="calm-blue"] .yellow,
html[data-wlf-theme="calm-blue"] .gold{
  color:var(--wlf-brand-2)!important;
  -webkit-text-fill-color:var(--wlf-brand-2)!important;
  background:transparent!important;
}

/* Status dots / badges stay within theme. */
.badge,.pill,.chip,.tag,.status,.status-pill,.number-badge,.app-status-pill,.app-status-dot,
[class*="badge"],[class*="pill"],[class*="chip"],[class*="tag"]{
  background:var(--wlf-brand-wash)!important;
  color:var(--wlf-brand-2)!important;
  -webkit-text-fill-color:var(--wlf-brand-2)!important;
  border-color:var(--wlf-border)!important;
}
.number-badge,.step-number,.count-badge{background:var(--wlf-brand)!important;color:var(--wlf-on-brand)!important;-webkit-text-fill-color:var(--wlf-on-brand)!important;}

/* Responsive polish */
@media (max-width: 720px){
  body{font-size:16px!important;}
  h1,.hero-title{font-size:clamp(34px,10vw,56px)!important;line-height:.95!important;}
  h2{font-size:clamp(28px,8vw,44px)!important;line-height:1!important;}
  p,li,.copy,.description{font-size:15px!important;line-height:1.55!important;}
  button,.btn,.button,a.btn,a.button,[role="button"]{min-height:46px!important;padding:12px 16px!important;}
}

/* ======================================================================
   WLF 2026-06-17 usability polish — softer blue, darker text, clean buttons
   ====================================================================== */
html[data-wlf-theme="calm-blue"],
:root{
  --wlf-page:#f7fbff;
  --wlf-page-2:#f0f6ff;
  --wlf-surface:#ffffff;
  --wlf-surface-2:#fbfdff;
  --wlf-surface-3:#edf5ff;
  --wlf-card:#ffffff;
  --wlf-card-soft:#f5f9ff;
  --wlf-text:#09183f;
  --wlf-text-2:#102858;
  --wlf-muted:#334155;
  --wlf-muted-2:#475569;
  --wlf-border:#c7ddff;
  --wlf-border-2:#dceaff;
  --wlf-brand:#2b65c8;
  --wlf-brand-2:#1f4f9f;
  --wlf-brand-soft:#e4efff;
  --wlf-brand-wash:#f0f6ff;
  --wlf-accent:#2b65c8;
  --wlf-on-brand:#ffffff;
  --or:var(--wlf-brand); --ol:var(--wlf-brand-2); --og:rgba(43,101,200,.18);
  --wh:var(--wlf-text); --mt:var(--wlf-muted); --mt2:var(--wlf-muted-2);
  --s1:var(--wlf-surface); --s2:var(--wlf-surface-2); --s3:var(--wlf-surface-3);
  --bg:var(--wlf-page); --card:var(--wlf-card); --line:var(--wlf-border);
  --red:var(--wlf-brand); --accent:var(--wlf-brand); --blue:var(--wlf-brand);
}

/* Global text readability: reduce gray/washed-out body copy. */
p,li,span,small,label,em,.copy,.sub,.subcopy,.muted,.description,.subtitle,.body-copy,
.app-home-sub,.portal-command-copy,.today-focus-sub,.save-result-copy,.score-sub,
[style*="color:#9e9aa0" i],[style*="color:#c9c3c5" i],[style*="color:#b8b2b5" i],[style*="color:#6e6870" i],
[style*="color:#4e494c" i],[style*="color:var(--muted)" i]{
  color:var(--wlf-muted)!important;
  -webkit-text-fill-color:var(--wlf-muted)!important;
}
h1,h2,h3,h4,h5,h6,strong,b,.title,.headline,.section-title,.card-title,.panel-title,
[style*="color:#fff" i],[style*="color: #fff" i],[style*="color:white" i]{
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
}

/* Buttons: readable, less compressed, softer blue. */
button,.btn,.button,a.btn,a.button,[role="button"],input[type="button"],input[type="submit"],.cta,.cta-button,
.primary,.primary-btn,.lead-btn,.app-primary-action,.bpf-btn,.bpf-store-btn,.bpf-today-btn,
.bpf-final-cta-button,.bpf-hpa-actions a,.bpf-hpa-actions button{
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
  border-radius:14px!important;
  box-shadow:0 10px 26px rgba(43,101,200,.12)!important;
}
button:not(.ghost):not(.secondary):not(.outline):not(.nav-btn):not(.nav-pill):not(.topic-chip):not(.quick-question),
.btn.primary,.button.primary,a.btn.primary,a.button.primary,.primary-btn,.lead-btn,.cta-button,.app-primary-action,
.bpf-store-btn.primary,.bpf-today-btn.primary,.bpf-final-cta-button,input[type="submit"]{
  background:linear-gradient(180deg,var(--wlf-brand) 0%,var(--wlf-brand-2) 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:var(--wlf-brand)!important;
}

/* Keep large sections/cards classy instead of solid saturated blue. */
.final-cta-section,
#resources,
#live-whatsapp-training>div,
#marketing-section .card,
#marketing-section .panel,
#marketing-section [style*="linear-gradient(160deg"],
#marketing-section [style*="rgba(22,24,32"],
#client-panel .card,
#client-panel .panel,
.bpf-home-access-offer,
.bpf-storefront,
.bpf-store-card,
.bpf-today-actions,
.app-home-card,
.save-result-card,
.snapshot-summary,
.plan-score-card{
  background:linear-gradient(180deg,#ffffff 0%,#f6faff 100%)!important;
  color:var(--wlf-text)!important;
  border:1px solid var(--wlf-border)!important;
  box-shadow:0 14px 34px rgba(30,64,175,.08)!important;
}
.final-cta-section h2,.final-cta-section h2 span,
#resources h2,#resources h3,#resources strong,#resources b,
#marketing-section h1,#marketing-section h2,#marketing-section h3,#marketing-section h1 span,#marketing-section h2 span,
#client-panel h1,#client-panel h2,#client-panel h3,#client-panel h1 span,#client-panel h2 span{
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
}
.final-cta-section p,#resources p,#resources span,#marketing-section p,#marketing-section span,#client-panel p,#client-panel span{
  color:var(--wlf-muted)!important;
  -webkit-text-fill-color:var(--wlf-muted)!important;
}

/* Free guide/download cards: soft card, not solid blue. */
#resources a[download],
#resources a[href$=".pdf"],
#resources a[href*="downloads/"]{
  background:linear-gradient(180deg,#ffffff 0%,#f2f7ff 100%)!important;
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
  border:1px solid var(--wlf-border)!important;
  box-shadow:0 10px 24px rgba(30,64,175,.07)!important;
}
#resources a[download] *,#resources a[href$=".pdf"] *,#resources a[href*="downloads/"] *{
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
}
#resources a[download] span,#resources a[href$=".pdf"] span,#resources a[href*="downloads/"] span{
  color:var(--wlf-brand-2)!important;
  -webkit-text-fill-color:var(--wlf-brand-2)!important;
}

/* Bottom nav forced clean light look for calm blue. */
.bpf-global-bottom-nav,.tray,.bottom-nav,.mobile-nav,.tabbar,.tabs-bottom{
  background:rgba(255,255,255,.96)!important;
  color:var(--wlf-text)!important;
  border:1px solid var(--wlf-border)!important;
  box-shadow:0 16px 42px rgba(30,64,175,.14)!important;
}
.bpf-global-bottom-nav a,.tray a,.bottom-nav a,.mobile-nav a,.tabbar a{
  color:var(--wlf-muted)!important;
  -webkit-text-fill-color:var(--wlf-muted)!important;
}
.bpf-global-bottom-nav a.active,.tray .active,.bottom-nav .active,.mobile-nav .active,.tabbar .active{
  background:var(--wlf-brand-soft)!important;
  color:var(--wlf-brand-2)!important;
  -webkit-text-fill-color:var(--wlf-brand-2)!important;
  border-color:var(--wlf-brand)!important;
}


/* ======================================================================
   WLF FINAL SMOOTH APP POLISH — 2026-06-17
   Fixes button readability, bottom nav, dark modal, and over-40 friendly text contrast.
   ====================================================================== */
:root,html[data-wlf-theme="calm-blue"]{--wlf-brand:#2b65c8;--wlf-brand-2:#1f4f9f;--wlf-brand-soft:#e4efff;--wlf-brand-wash:#f3f8ff;--wlf-text:#071b4a;--wlf-muted:#4d6078;--wlf-border:#b8d3ff;}
body{font-size:16px!important;line-height:1.55!important;color:var(--wlf-text)!important;background:#f6f9ff!important;}
p,li,small,.sub,.copy,.desc,.meta,.bpf-age-d,.bpf-snack-d,.bpf-card-copy,.bpf-today-sub,.bpf-today-actions-sub{color:var(--wlf-muted)!important;-webkit-text-fill-color:var(--wlf-muted)!important;}
h1,h2,h3,h4,strong,b,.bpf-age-t,.bpf-snack-t,.bpf-card-title,.bpf-today-actions-title,.bpf-store-title{color:var(--wlf-text)!important;-webkit-text-fill-color:var(--wlf-text)!important;}
button,.btn,a.btn,.button,a.button,[role="button"],.bpf-age-btn,.bpf-snack-btn,.bpf-today-btn,.bpf-store-btn,.recovery-chip,.topic-chip,.quick-question{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-weight:800!important;letter-spacing:0!important;text-transform:none!important;line-height:1.15!important;min-height:44px!important;border-radius:16px!important;}
.bpf-age-btn:not(.secondary),.bpf-snack-btn,.bpf-today-btn.primary,.bpf-store-btn.primary,.btn.primary,a.btn.primary,button.primary,.lead-btn,.cta-button,input[type="submit"]{background:linear-gradient(180deg,#2f6fe8 0%,#235bbd 100%)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid #235bbd!important;box-shadow:0 10px 24px rgba(31,79,159,.16)!important;}
.bpf-age-btn.secondary,.bpf-today-btn.ghost,.btn.secondary,.btn.ghost,a.btn.secondary,a.btn.ghost,.quick-question,.topic-chip{background:#eef5ff!important;color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;border:1px solid #9fc2ff!important;box-shadow:none!important;}
.bpf-direct-flow,.bpf-direct-flow-polished{gap:10px!important;}.bpf-direct-step,.bpf-direct-flow .bpf-direct-step,.bpf-auto-progress>*,.bpf-life-pillars>div{background:#e7f0ff!important;color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;border:1px solid #9fc2ff!important;box-shadow:none!important;}.bpf-direct-step *,.bpf-auto-progress *,.bpf-life-pillars *{color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;}.bpf-direct-step strong,.bpf-auto-progress strong,.bpf-life-pillars b{background:#2f6fe8!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
.bpf-featured-age-card,.bpf-exercise-snacks-card,.bpf-today-actions,.bpf-home-access-offer,.bpf-storefront,.bpf-store-card,.app-home-card,.save-result-card{background:linear-gradient(180deg,#ffffff 0%,#f4f8ff 100%)!important;border:1px solid #b8d3ff!important;box-shadow:0 12px 30px rgba(31,79,159,.08)!important;}.bpf-age-actions,.bpf-snack-btn{min-width:190px!important;text-align:center!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;}
.modal.show{background:rgba(15,23,42,.42)!important;backdrop-filter:blur(8px)!important;}.modal .sheet,.sheet,.workout-modal,.modal-content,.dialog,.drawer{background:#ffffff!important;color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;border:1px solid #b8d3ff!important;box-shadow:0 24px 80px rgba(15,23,42,.24)!important;}.modal .sheet h1,.modal .sheet h2,.modal .sheet h3,.modal .sheet strong,.modal .sheet b,.sheet h1,.sheet h2,.sheet h3,.sheet strong,.sheet b{color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;}.modal .sheet p,.modal .sheet span,.modal .sheet small,.modal .sheet li,.sheet p,.sheet span,.sheet small,.sheet li{color:#4d6078!important;-webkit-text-fill-color:#4d6078!important;}.detail-box,.ex-row,.modal .detail-box,.modal .ex-row{background:#f4f8ff!important;border:1px solid #cfe0ff!important;color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;}.ex-name,.num{color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;}.ex-meta{color:#4d6078!important;-webkit-text-fill-color:#4d6078!important;}.sheet-actions{background:linear-gradient(180deg,rgba(255,255,255,0),#fff 30%)!important;}.close{background:#2f6fe8!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#2f6fe8!important;}
.exerciseArt,.cardMedia img,.detailImg img,.ex-thumb,#activeImg,#nextImg{object-fit:contain!important;background:#fff!important;}


/* ======================================================================
   WLF BPF-FUNCTIONALITY REPLICATION POLISH — 2026-06-17
   ====================================================================== */
:root,html[data-wlf-theme="calm-blue"],html[data-theme="calm-blue"]{--wlf-bg:#f6f9ff;--wlf-surface:#ffffff;--wlf-soft:#eef5ff;--wlf-brand:#2f6fe8;--wlf-brand-2:#1f4f9f;--wlf-text:#071b4a;--wlf-muted:#4d6078;--wlf-border:#b8d3ff;}
body{background:#f6f9ff!important;color:var(--wlf-text)!important;-webkit-text-fill-color:initial!important;}body,input,textarea,select,button{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;}
h1,h2,h3,h4,h5,h6,.page-title,.card-title,.section-title,.sheet h2,.hero-title,.bpf-store-title{color:var(--wlf-text)!important;-webkit-text-fill-color:var(--wlf-text)!important;letter-spacing:-.02em;}p,li,.copy,.sub,.muted,.desc,.meta,.ex-meta,.sheet p,.help-text{color:var(--wlf-muted)!important;-webkit-text-fill-color:var(--wlf-muted)!important;}
button,.btn,a.btn,.button,a.button,[role="button"],.bpf-food-flow-btn,.macro-calc-link,.portion-confirm,.meal-cat-add{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-weight:800!important;letter-spacing:0!important;text-transform:none!important;line-height:1.15!important;border-radius:16px!important;min-height:44px!important;}
.btn.primary,a.btn.primary,button.primary,.portion-confirm,.meal-cat-add,.bpf-food-flow-btn.primary,.macro-calc-link,input[type="submit"]{background:linear-gradient(180deg,#2f6fe8 0%,#235bbd 100%)!important;border-color:#235bbd!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:0 10px 24px rgba(31,79,159,.16)!important;}
.btn.secondary,.btn.ghost,a.btn.secondary,a.btn.ghost,.portion-cancel,.bpf-food-flow-btn:not(.primary){background:#eef5ff!important;border:1px solid #9fc2ff!important;color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;box-shadow:none!important;}
.shell,.main,main,.page,.card,.panel,.summary-section,.meal-cat,.targets-box,.search-box,.bpf-food-flow,.coaching-cta,.topbar,.hero,.app-home-card,.bpf-today-actions,.bpf-storefront{background:#ffffff!important;color:var(--wlf-text)!important;border-color:var(--wlf-border)!important;}.main,main{background:transparent!important;}
.qstat,.detail-box,.ex-row,.result-item,.food-item,.search-result{background:#f4f8ff!important;border:1px solid #cfe0ff!important;color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;}.food-name,.result-name,.ex-name,.qstat-val,.meal-cat-name,.targets-box-title{color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;}.food-portion,.food-macros,.result-meta,.result-macros,.qstat-lbl,.meal-cat-cals{color:#4d6078!important;-webkit-text-fill-color:#4d6078!important;}
.modal.show,.modal{background:rgba(15,23,42,.42)!important;backdrop-filter:blur(8px)!important;}.modal .sheet,.sheet,.workout-modal,.modal-content,.dialog,.drawer,.targets-box,.portion-box,.search-box{background:#ffffff!important;color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;border:1px solid #b8d3ff!important;box-shadow:0 24px 80px rgba(15,23,42,.22)!important;}.sheet-actions{background:linear-gradient(180deg,rgba(255,255,255,0),#fff 28%)!important;}.close,.modal .close{background:#2f6fe8!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#2f6fe8!important;}.ex-thumb,.exerciseArt,.cardMedia img,.detailImg img,#activeImg,#nextImg{object-fit:contain!important;background:#fff!important;}#bpf-next-action-card{display:none!important;}html:not(.bpf-embed-mode) body,html:not(.bpf-embed-mode) .shell,html:not(.bpf-embed-mode) .main{height:auto!important;max-height:none!important;overflow:visible!important;}body > div:first-child,.demo-proof,.proof-banner{background:#eef5ff!important;color:#071b4a!important;-webkit-text-fill-color:#071b4a!important;border-color:#b8d3ff!important;}
