
/* ========================================================================== 
   WLF v66 Professional Dark Navy System
   Purpose: one high-contrast dark navy / royal blue / white design language
   across Website, Client App, Coaching Hub, and Seller Sales Site.
   Contrast targets: WCAG AA+ practical pairings. No dark text on dark buttons.
   ========================================================================== */
:root{
  color-scheme: dark;
  --wlf-bg-0:#020817;
  --wlf-bg-1:#061226;
  --wlf-bg-2:#08172D;
  --wlf-panel:#0B1729;
  --wlf-panel-2:#101D33;
  --wlf-panel-3:#14243A;
  --wlf-elevated:#172A45;
  --wlf-border:#274B73;
  --wlf-border-strong:#38BDF8;
  --wlf-blue:#2563EB;
  --wlf-blue-2:#1D4ED8;
  --wlf-cyan:#38BDF8;
  --wlf-cyan-soft:#7DD3FC;
  --wlf-white:#FFFFFF;
  --wlf-text:#F8FAFC;
  --wlf-text-2:#E5F0FF;
  --wlf-muted:#C7D8EA;
  --wlf-muted-2:#AFC3D8;
  --wlf-dim:#89A3BC;
  --wlf-success:#22C55E;
  --wlf-warn:#F59E0B;
  --wh:#F8FAFC!important;
  --mt:#C7D8EA!important;
  --mt2:#AFC3D8!important;
  --dim:#89A3BC!important;
  --or:#2563EB!important;
  --red:#2563EB!important;
  --s1:#061226!important;
  --s2:#0B1729!important;
  --s3:#101D33!important;
  --wlf-brand:#2563EB!important;
  --wlf-accent:#38BDF8!important;
}
html{background:#020817!important;scroll-behavior:smooth;}
body{
  background:
    radial-gradient(circle at 18% -8%,rgba(37,99,235,.34),transparent 34%),
    radial-gradient(circle at 86% 8%,rgba(56,189,248,.20),transparent 32%),
    linear-gradient(135deg,#020817 0%,#061226 42%,#08172D 100%)!important;
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:initial!important;
  text-rendering:optimizeLegibility;
}
body, p, li, span, div, label, small, summary, td, th{
  color:var(--wlf-muted)!important;
}
h1,h2,h3,h4,h5,h6,.page-title,.hero-title,.title,.section-title,.card-title,.prog-card-title,.bpf-ai-title,.bpf-today-actions-title,.bpf-store-title,.bpf-player-title,.metric-value,.stat-value,strong,b{
  color:var(--wlf-text)!important;
  -webkit-text-fill-color:var(--wlf-text)!important;
  text-shadow:0 1px 0 rgba(0,0,0,.22);
}
.hl, h1 span, h2 span, .accent, .kicker, .eyebrow, .sec-label,.tag,.pbadge,.bpf-ai-kicker,.bpf-today-actions-kicker,.form-label,.prog-label,.section-kicker{
  color:var(--wlf-cyan)!important;
  -webkit-text-fill-color:var(--wlf-cyan)!important;
}
a{color:var(--wlf-cyan-soft)!important;}
a:hover{color:#FFFFFF!important;}

/* Real dark surfaces, not pale washed-out cards. */
.shell,.app-shell,.app,.main,.page,.wrap,.container,.site-shell,.dashboard,.coach-shell,
section,.section,.hero,.card,.panel,.tile,.box,.module,.modal-card,.drawer,.topbar,.navbar,.nav,.top,.header,.footer,
[class*="card"],[class*="panel"],[class*="tile"],[class*="box"],[class*="module"],[class*="shell"],[class*="hero"],[class*="section"]{
  background-color:var(--wlf-panel)!important;
  color:var(--wlf-muted)!important;
  border-color:rgba(56,189,248,.20)!important;
}
.card,.panel,.tile,.box,.module,[class*="card"],[class*="panel"],[class*="tile"],[class*="box"],[class*="module"]{
  background:
    linear-gradient(145deg,rgba(16,29,51,.96),rgba(8,23,45,.98))!important;
  border:1px solid rgba(56,189,248,.22)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.28)!important;
}
.hero,[class*="hero"]{
  background:
    radial-gradient(circle at 88% 8%,rgba(56,189,248,.18),transparent 34%),
    linear-gradient(145deg,#101D33 0%,#08172D 58%,#061226 100%)!important;
  border:1px solid rgba(56,189,248,.24)!important;
  box-shadow:0 22px 70px rgba(0,0,0,.32)!important;
}

/* Critical: any blue/dark button or CTA gets white readable type. */
button,.button,.btn,.cta,.pill,.chip,.tag-btn,.save-btn,.lead-btn,.ask-btn,.act-btn,.nav-btn,.bnav-item,.bot-nav button,.bottom-nav button,
a.btn,a.cta,a.button,a[class*="btn"],a[class*="cta"],button[class*="btn"],button[class*="cta"],button[class*="primary"],button[class*="secondary"],button[class*="ghost"],button[class*="tab"],button[class*="chip"],button[class*="pill"]{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  text-shadow:none!important;
  opacity:1!important;
  filter:none!important;
}
button *, .button *, .btn *, .cta *, .pill *, .chip *, .tag-btn *, .save-btn *, .lead-btn *, .ask-btn *, .act-btn *, .nav-btn *, .bnav-item *, .bot-nav button *, .bottom-nav button *,
a.btn *,a.cta *,a.button *,a[class*="btn"] *,a[class*="cta"] *,button[class*="btn"] *,button[class*="cta"] *,button[class*="primary"] *,button[class*="secondary"] *,button[class*="ghost"] *,button[class*="tab"] *,button[class*="chip"] *,button[class*="pill"] *{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  opacity:1!important;
}
button:not(.plain),.button,.btn,.cta,.ask-btn,.lead-btn,.save-btn,.act-btn,a.btn,a.cta,a[class*="btn"],button[class*="btn"],button[class*="primary"],.primary{
  background:linear-gradient(180deg,#2F75FF 0%,#2563EB 100%)!important;
  border:1px solid rgba(125,211,252,.55)!important;
  box-shadow:0 12px 28px rgba(37,99,235,.28), inset 0 1px 0 rgba(16,29,51,.18)!important;
}
button[class*="secondary"],.secondary,.ghost,button.ghost,a.secondary,a.ghost,.act-btn,.chip,.pill,.tag-btn,.tpill,.quick-question,.topic-chip{
  background:linear-gradient(180deg,#172A45 0%,#101D33 100%)!important;
  border:1px solid rgba(125,211,252,.34)!important;
  box-shadow:inset 0 1px 0 rgba(16,29,51,.08)!important;
}
button:disabled,button[disabled],.disabled,[aria-disabled="true"]{
  background:#243147!important;
  border-color:rgba(199,216,234,.22)!important;
  color:rgba(16,29,51,.72)!important;
  -webkit-text-fill-color:rgba(16,29,51,.72)!important;
  opacity:.72!important;
  cursor:not-allowed!important;
}

input,textarea,select,.form-input,.modal-input{
  background:#071426!important;
  color:#F8FAFC!important;
  -webkit-text-fill-color:#F8FAFC!important;
  border:1px solid rgba(199,216,234,.42)!important;
  box-shadow:inset 0 1px 0 rgba(16,29,51,.05)!important;
}
input::placeholder,textarea::placeholder{color:#AFC3D8!important;-webkit-text-fill-color:#AFC3D8!important;opacity:1!important;}
select option{background:#071426!important;color:#F8FAFC!important;}

/* Ask Coach: topics and quick questions must be visible and premium. */
#page-ask .sec-label,.sec-label{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;margin:16px 0 8px!important;}
#topics-row,#chips-row,.topics-row,.chips{
  display:flex!important;visibility:visible!important;opacity:1!important;height:auto!important;min-height:42px!important;max-height:none!important;overflow:visible!important;flex-wrap:wrap!important;gap:10px!important;margin:8px 0 18px!important;padding:0!important;
}
#topics-row[style],#chips-row[style],.topics-row[style],.chips[style]{display:flex!important;visibility:visible!important;opacity:1!important;}
#topics-row button,#chips-row button,.topics-row button,.chips button,.topic-chip,.quick-question,.tpill{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:42px!important;padding:10px 14px!important;border-radius:999px!important;
  font-family:'Barlow Condensed',Impact,sans-serif!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase!important;font-size:13px!important;
  color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;white-space:normal!important;
}
#result-area,.answer-card,.ans-body,.ans-actions{color:var(--wlf-muted)!important;}
.answer-card{background:linear-gradient(145deg,#101D33,#071426)!important;border:1px solid rgba(56,189,248,.28)!important;border-radius:22px!important;}
.ans-body,.ans-body p,.ans-body li{color:var(--wlf-text-2)!important;-webkit-text-fill-color:var(--wlf-text-2)!important;line-height:1.75!important;}

/* App daily system cards need readable text. */
.bpf-today-action,.bpf-direct-flow a,.bpf-store-mini a,.bpf-store-mini button{
  background:linear-gradient(180deg,#173A80 0%,#10284F 100%)!important;
  border:1px solid rgba(125,211,252,.40)!important;
}
.bpf-today-action strong,.bpf-today-action span,.bpf-today-num,.bpf-direct-flow a span,.bpf-store-mini span{
  color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;opacity:1!important;
}
.bpf-today-num{background:#2563EB!important;border:1px solid rgba(16,29,51,.24)!important;}

/* Bottom tray: dark, premium, readable. */
.bot-nav,.bottom-nav,.bnav,.bpf-global-bottom-nav,[class*="bottom-nav"]{
  background:rgba(2,8,23,.94)!important;
  border:1px solid rgba(56,189,248,.42)!important;
  box-shadow:0 -10px 38px rgba(0,0,0,.38), inset 0 1px 0 rgba(16,29,51,.06)!important;
  backdrop-filter:blur(16px)!important;
}
.bnav-item,.bot-nav button,.bottom-nav button,[class*="bottom-nav"] button{
  color:#F8FAFC!important;-webkit-text-fill-color:#F8FAFC!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important;
}
.bnav-item.active,.bot-nav button.active,.bottom-nav button.active,.bnav-item[aria-current="page"]{
  background:linear-gradient(180deg,rgba(56,189,248,.18),rgba(37,99,235,.18))!important;
  border:1px solid rgba(56,189,248,.68)!important;
  color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;
}

/* Diet player and nutrition panels */
#nut-panel-player iframe,#nut-tracker-frame,#tracker-frame{background:#071426!important;border:1px solid rgba(56,189,248,.22)!important;border-radius:16px!important;}
#load-screen,#player-view,.diet-shell,.diet-player,.nutrition-panel,.macro-panel{background:#0B1729!important;color:#F8FAFC!important;}
#prog-label,.prog-label,.metric-label,.metric-card span,.adherence-label{color:#E5F0FF!important;-webkit-text-fill-color:#E5F0FF!important;}

/* Free training library / light hero washout fix */
.free-hero,.free-workouts-hero,.library-hero,.bpf-store-card,.bpf-free-hero,.free-card,.free-workout-card,
[class*="free"] [class*="hero"],[class*="library"] [class*="hero"]{
  background:linear-gradient(145deg,#101D33,#071426)!important;
  border-color:rgba(56,189,248,.24)!important;
  color:#F8FAFC!important;
}
.free-hero *,.free-workouts-hero *,.library-hero *,.bpf-store-card *,.bpf-free-hero *,.free-card *,.free-workout-card *,[class*="library"] [class*="hero"] *{
  color:#F8FAFC!important;-webkit-text-fill-color:#F8FAFC!important;opacity:1!important;
}

/* Tables, details, lists */
table,thead,tbody,tr,td,th,details,summary{background-color:transparent!important;color:var(--wlf-muted)!important;border-color:rgba(56,189,248,.18)!important;}
hr{border-color:rgba(56,189,248,.22)!important;}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#061226}::-webkit-scrollbar-thumb{background:#274B73;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#38BDF8}

@media(max-width:760px){
  body{background:#020817!important;}
  .shell,.wrap,.container,.site-shell{width:calc(100vw - 18px)!important;max-width:calc(100vw - 18px)!important;}
  .bpf-today-action-grid,.grid,.cards,.feature-grid{grid-template-columns:1fr!important;}
}


/* v67 final contrast lock: overrides legacy inline dark-text selectors after HTML cleanup. */
html body .wlf-v67-force, html body button, html body button *, html body a.btn, html body a.btn *, html body .btn, html body .btn *, html body .cta, html body .cta *, html body .bnav-item, html body .bnav-item *, html body .ask-btn, html body .ask-btn *, html body .quick-question, html body .topic-chip { color:#FFFFFF!important; -webkit-text-fill-color:#FFFFFF!important; opacity:1!important; }
html body .bpf-today-action, html body .bpf-today-action *, html body .bpf-ai-primary, html body .bpf-ai-secondary, html body .bpf-ai-primary *, html body .bpf-ai-secondary * { color:#FFFFFF!important; -webkit-text-fill-color:#FFFFFF!important; opacity:1!important; }
html body [style*="color:#F8FAFC"], html body [style*="color: #F8FAFC"] { color:#F8FAFC!important; -webkit-text-fill-color:#F8FAFC!important; }
html body [style*="background:#071426"], html body [style*="background: #071426"] { background:#071426!important; }
html body .free-hero, html body .free-workouts-hero, html body .library-hero, html body .bpf-free-hero, html body .hero-panel { background:linear-gradient(145deg,#101D33,#071426)!important; }
html body .free-hero *, html body .free-workouts-hero *, html body .library-hero *, html body .bpf-free-hero *, html body .hero-panel * { color:#F8FAFC!important; -webkit-text-fill-color:#F8FAFC!important; opacity:1!important; }
html body .bnav, html body .bot-nav, html body .bottom-nav { background:rgba(2,8,23,.96)!important; }
html body .bnav-item span, html body .bnav-item small, html body .bnav-item div { color:#FFFFFF!important; -webkit-text-fill-color:#FFFFFF!important; }
html body #topics-row, html body #chips-row { display:flex!important; visibility:visible!important; opacity:1!important; min-height:42px!important; }
html body input, html body textarea, html body select { background:#071426!important; color:#F8FAFC!important; -webkit-text-fill-color:#F8FAFC!important; }
html body input::placeholder, html body textarea::placeholder { color:#AFC3D8!important; -webkit-text-fill-color:#AFC3D8!important; }
