
/* WLF v69 Professional Contrast Lock
   Purpose: stop dark/navy/blue UI from inheriting black/dim text and make the app look readable and professional. */
:root{
  --wlf-ink:#F8FAFC!important;
  --wlf-text:#F8FAFC!important;
  --wlf-muted:#C9D7E8!important;
  --wlf-soft:#EAF3FF!important;
  --wlf-panel:#07172B!important;
  --wlf-panel-2:#0B1F3A!important;
  --wlf-blue:#2F6DF6!important;
  --wlf-cyan:#38BDF8!important;
  --tx:#F8FAFC!important;
  --wh:#F8FAFC!important;
  --mt:#D9E8FA!important;
  --mt2:#C6D6E8!important;
  --mid:#D9E8FA!important;
  --dim:#C6D6E8!important;
  --text:#F8FAFC!important;
  --body:#C6D6E8!important;
}
html,body{background:radial-gradient(circle at 78% 0%,#163D85 0%,#07172B 34%,#020813 100%)!important;color:#F8FAFC!important;}
body, body *{text-rendering:geometricPrecision;}

/* Universal readable dark surface typography */
main.app,.app,.page,.wrap,.screen,.panel,.card,.module,.tile,.hero,.top,.topbar,
.bpf-card,.bpf-panel,.page-card,.workout-card,.calc-card,.meal-card,.metric-card,
.bpf-today-actions,.bpf-today-action,.bpf-store-card,.bpf-store-btn,.load-option,
.macro-tile,.weekly-adherence,.meal-source-note,.diet-player-card,.exercise-card{
  color:#F8FAFC!important;
}
main.app p,.app p,.page p,.wrap p,.screen p,.panel p,.card p,.module p,.tile p,
main.app span,.app span,.page span,.wrap span,.screen span,.panel span,.card span,.module span,.tile span,
main.app div,.app div,.page div,.wrap div,.screen div,.panel div,.card div,.module div,.tile div{
  color:inherit;
}

/* Dark/blue buttons must always have white text */
button,.btn,a.btn,.bpf-action-btn,.bpf-store-btn,.bpf-today-btn,.btn-or,.btn-secondary,
.bpf-red-cta-readable,.primary,.secondary,.red,.blue,.pill,.chip,.topic-chip,.quick-chip,
.day-tab,.tb-badge,.filter-chip,.nav-chip,.load-option,.check-btn,.cta,.lu-btn,
#ask-submit,#ask-coach-btn,#askBtn,#clear-plan-btn,#tab-plan,#tab-tracker{
  color:#FFFFFF!important;
  text-shadow:0 1px 1px rgba(0,0,0,.32)!important;
  font-weight:900!important;
}
button *, .btn *, a.btn *, .bpf-action-btn *, .bpf-store-btn *, .bpf-today-btn *, .btn-or *, .btn-secondary *,
.bpf-red-cta-readable *, .primary *, .secondary *, .red *, .blue *, .pill *, .chip *, .topic-chip *, .quick-chip *,
.day-tab *, .tb-badge *, .filter-chip *, .nav-chip *, .load-option *, .check-btn *, .cta *, .lu-btn *{
  color:#FFFFFF!important;
  text-shadow:0 1px 1px rgba(0,0,0,.32)!important;
}
button:disabled,button[disabled],.disabled,.is-disabled,[aria-disabled="true"]{
  opacity:.72!important;
  color:#EAF3FF!important;
  -webkit-text-fill-color:#EAF3FF!important;
}

/* Daily success / Ask Coach cards */
.bpf-today-actions{background:linear-gradient(145deg,#0B1F3A 0%,#07172B 58%,#061225 100%)!important;border:1px solid rgba(56,189,248,.40)!important;box-shadow:0 24px 70px rgba(0,0,0,.36)!important;}
.bpf-today-actions-title,.bpf-today-actions-title *,.page-title,.page-title *{color:#FFFFFF!important;}
.bpf-today-actions-sub,.bpf-today-actions-sub *{color:#D9E8FA!important;}
.bpf-today-actions-kicker,.eyebrow,.kicker{color:#38D5FF!important;}
.bpf-today-action{background:linear-gradient(160deg,#2563EB 0%,#1748B7 100%)!important;border:1px solid rgba(147,197,253,.58)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 12px 28px rgba(20,80,220,.18)!important;}
.bpf-today-action strong,.bpf-today-action span,.bpf-today-action div{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;}
.bpf-today-num{background:#0B1220!important;color:#FFFFFF!important;border:1px solid rgba(255,255,255,.3)!important;}

/* Ask coach topics / quick questions */
#topics-row,#chips-row,.topics-row,.chips-row,.ask-topics,.quick-questions{display:flex!important;visibility:visible!important;opacity:1!important;gap:10px!important;flex-wrap:wrap!important;min-height:34px!important;}
#topics-row button,#chips-row button,#topics-row .chip,#chips-row .chip,.ask-topics button,.quick-questions button{
  background:linear-gradient(135deg,#1748B7,#2563EB)!important;border:1px solid rgba(147,197,253,.62)!important;color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;border-radius:999px!important;padding:10px 15px!important;
}
#topics-row button *,#chips-row button *{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;}

/* Forms */
input,select,textarea,.form-input,.field-input{
  background:#071225!important;
  color:#F8FAFC!important;
  -webkit-text-fill-color:#F8FAFC!important;
  border:1px solid rgba(186,214,255,.65)!important;
  caret-color:#38BDF8!important;
}
input::placeholder,textarea::placeholder{color:#D9E8FA!important;opacity:.86!important;-webkit-text-fill-color:#D9E8FA!important;}
select option{background:#071225!important;color:#F8FAFC!important;}
label,.form-label,.field-label{color:#F8FAFC!important;}

/* Bottom tray: dark professional tray, readable labels */
.bottom-nav,.bpf-bottom-nav,.mobile-nav,.tray,.tabbar,nav.fixed,nav[aria-label*="bottom" i]{
  background:rgba(3,10,22,.96)!important;border:1px solid rgba(56,189,248,.62)!important;box-shadow:0 18px 45px rgba(0,0,0,.42)!important;
}
.bottom-nav *,.bpf-bottom-nav *,.mobile-nav *,.tray *,.tabbar *,nav.fixed *,nav[aria-label*="bottom" i] *{
  color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;text-shadow:0 1px 1px rgba(0,0,0,.4)!important;
}
.bottom-nav .active,.bpf-bottom-nav .active,.mobile-nav .active,.tray .active,.tabbar .active,
.bottom-nav [aria-current="page"],.bpf-bottom-nav [aria-current="page"]{
  background:linear-gradient(135deg,#1748B7,#2563EB)!important;border-color:#38BDF8!important;color:#FFFFFF!important;
}

/* Free workout / large white panels: convert to premium dark */
section.hero,.hero,.free-hero,.library-hero,.pricing-card,.feature-card,.demo-card,
[class*="hero"], [class*="card"]{
  color:#F8FAFC!important;
}
section.hero{
  background:linear-gradient(145deg,#0B1F3A 0%,#07172B 55%,#061225 100%)!important;
  border:1px solid rgba(56,189,248,.38)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.36)!important;
}
section.hero h1,section.hero h1 *,section.hero p,section.hero p *,section.hero .btn,section.hero .btn *{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;}
section.hero .btn.secondary{background:rgba(37,99,235,.20)!important;border-color:rgba(147,197,253,.55)!important;}

/* Diet player readability */
#diet-player-body-wrap,#main-content,.load-screen,#player-view{background:#07172B!important;color:#F8FAFC!important;}
.meal-source-note,.weekly-adherence,.macro-tile,.meal-card,.load-option{background:rgba(11,31,58,.92)!important;border-color:rgba(56,189,248,.38)!important;}
.meal-name,.meal-time,.meal-macros,.meal-detail,.meal-detail *,.meal-portions,.meal-note,.macro-val,.macro-lbl,.prog-label{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;}
.meal-source-note strong,.meal-source-note span,.weekly-adherence *{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;}

/* Kill leftover black-on-blue across inline styled elements */
[style*="color:#071"],[style*="color:#061"],[style*="color:#0b"],[style*="color:#0B"],[style*="color:#101"],[style*="color:var(--tx)"],[style*="color:var(--mt)"]{
  color:#F8FAFC!important;-webkit-text-fill-color:#F8FAFC!important;
}

/* Keep brand text visible */
.brand,.brand *,.top .brand,.topbar .brand{color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important;}
.brand small,.brand span,.top .brand small,.topbar .brand small{color:#D9E8FA!important;-webkit-text-fill-color:#D9E8FA!important;}

/* Fit and polish */
.app,main.app{background:rgba(7,23,43,.92)!important;border-color:rgba(56,189,248,.30)!important;}
hr{border-color:rgba(148,163,184,.25)!important;}
