/* BPF Universal Theme Engine — Classic red/black + Pro navy/blue */
html[data-bpf-theme="classic"],
html[data-theme="bpf-classic"]{
  color-scheme: dark;
  --bpf-theme-name: "BPF Classic";
  --bpf-bg: #08080A;
  --bpf-bg-2: #0D0D11;
  --bpf-panel: #121218;
  --bpf-panel-2: #1A1B22;
  --bpf-panel-3: #23242D;
  --bpf-border: rgba(255,255,255,.12);
  --bpf-border-strong: rgba(255,255,255,.18);
  --bpf-text: #F8F3EF;
  --bpf-muted: #B9B3B5;
  --bpf-muted-2: #8F878A;
  --bpf-primary: #C41E3A;
  --bpf-primary-2: #E02040;
  --bpf-primary-dark: #9C1730;
  --bpf-primary-soft: rgba(196,30,58,.14);
  --bpf-primary-glow: rgba(196,30,58,.28);
  --bpf-success: #38D47A;
  --bpf-danger: #E05050;
  --bpf-lime: var(--bpf-primary);
  --lime: var(--bpf-primary);
  --accent: var(--bpf-primary);
  --focus-ring: var(--bpf-primary-2);
  --bpf-brand: var(--bpf-primary);
  --bpf-brand-2: #B5122E;
  --bpf-brand-dark: var(--bpf-primary-dark);
  --bpf-brand-rose: #E11D48;
  --bpf-brand-hot: var(--bpf-primary-2);
  --bpf-brand-deep: #21050D;
  --bpf-accent: var(--bpf-primary);
  --bpf-accent-soft: #FFE5EA;
  --bg: var(--bpf-bg);
  --s1: var(--bpf-panel);
  --s2: var(--bpf-panel-2);
  --s3: var(--bpf-panel-3);
  --panel: var(--bpf-panel);
  --panel2: var(--bpf-panel-2);
  --card: var(--bpf-panel);
  --card2: var(--bpf-panel-2);
  --bd: var(--bpf-border);
  --bd2: var(--bpf-border-strong);
  --line: var(--bpf-border);
  --wh: var(--bpf-text);
  --white: var(--bpf-text);
  --txt: var(--bpf-text);
  --text: var(--bpf-text);
  --mt: var(--bpf-muted);
  --mt2: var(--bpf-muted-2);
  --muted: var(--bpf-muted);
  --dim: var(--bpf-muted-2);
  --or: var(--bpf-primary);
  --ol: var(--bpf-primary-2);
  --red: var(--bpf-primary);
  --red2: var(--bpf-primary-2);
  --ac: var(--bpf-primary);
  --gld: var(--bpf-primary);
  --og: var(--bpf-primary-glow);
  --od: var(--bpf-primary-soft);
  --gn: var(--bpf-success);
  --re: var(--bpf-danger);
}
:root,
html[data-bpf-theme="pro"],
html[data-theme="bpf-pro"]{
  color-scheme: dark;
  --bpf-theme-name: "BPF Pro";
  --bpf-bg: #061427;
  --bpf-bg-2: #071B34;
  --bpf-panel: #0B1F3A;
  --bpf-panel-2: #102A4D;
  --bpf-panel-3: #153762;
  --bpf-border: rgba(215,227,244,.16);
  --bpf-border-strong: rgba(215,227,244,.24);
  --bpf-text: #F7FBFF;
  --bpf-muted: #D7E3F4;
  --bpf-muted-2: #A9BED8;
  --bpf-primary: #2F8BFF;
  --bpf-primary-2: #62B2FF;
  --bpf-primary-dark: #1766C8;
  --bpf-primary-soft: rgba(47,139,255,.16);
  --bpf-primary-glow: rgba(47,139,255,.30);
  --bpf-success: #38D47A;
  --bpf-danger: #FF6B6B;
  --bpf-lime: var(--bpf-primary);
  --lime: var(--bpf-primary);
  --accent: var(--bpf-primary);
  --focus-ring: var(--bpf-primary-2);
  --bpf-brand: var(--bpf-primary);
  --bpf-brand-2: #2277DF;
  --bpf-brand-dark: var(--bpf-primary-dark);
  --bpf-brand-rose: #62B2FF;
  --bpf-brand-hot: var(--bpf-primary-2);
  --bpf-brand-deep: #03101F;
  --bpf-accent: var(--bpf-primary);
  --bpf-accent-soft: #D8ECFF;
  --bg: var(--bpf-bg);
  --s1: var(--bpf-panel);
  --s2: var(--bpf-panel-2);
  --s3: var(--bpf-panel-3);
  --panel: var(--bpf-panel);
  --panel2: var(--bpf-panel-2);
  --card: var(--bpf-panel);
  --card2: var(--bpf-panel-2);
  --bd: var(--bpf-border);
  --bd2: var(--bpf-border-strong);
  --line: var(--bpf-border);
  --wh: var(--bpf-text);
  --white: var(--bpf-text);
  --txt: var(--bpf-text);
  --text: var(--bpf-text);
  --mt: var(--bpf-muted);
  --mt2: var(--bpf-muted-2);
  --muted: var(--bpf-muted);
  --dim: var(--bpf-muted-2);
  --or: var(--bpf-primary);
  --ol: var(--bpf-primary-2);
  --red: var(--bpf-primary);
  --red2: var(--bpf-primary-2);
  --ac: var(--bpf-primary);
  --gld: var(--bpf-primary);
  --og: var(--bpf-primary-glow);
  --od: var(--bpf-primary-soft);
  --gn: var(--bpf-success);
  --re: var(--bpf-danger);
}
html[data-bpf-theme] body{
  background-color: var(--bpf-bg) !important;
  color: var(--bpf-text) !important;
}
html[data-bpf-theme] body::before{
  background:
    radial-gradient(ellipse 65% 40% at 95% 0%, var(--bpf-primary-soft) 0%, transparent 60%),
    radial-gradient(ellipse 38% 28% at 4% 92%, var(--bpf-primary-soft) 0%, transparent 58%) !important;
}
html[data-bpf-theme] .topbar,
html[data-bpf-theme] header,
html[data-bpf-theme] .site-header,
html[data-bpf-theme] .app-header{
  background-color: color-mix(in srgb, var(--bpf-bg) 92%, transparent) !important;
  border-color: var(--bpf-border) !important;
}
html[data-bpf-theme] .card,
html[data-bpf-theme] .panel,
html[data-bpf-theme] .prog-card,
html[data-bpf-theme] .gen-form-card,
html[data-bpf-theme] .program-result,
html[data-bpf-theme] .macro-result,
html[data-bpf-theme] .meal-plan-result,
html[data-bpf-theme] .ask-box,
html[data-bpf-theme] .setting-row,
html[data-bpf-theme] .app-home-card,
html[data-bpf-theme] .snapshot-summary,
html[data-bpf-theme] .plan-score-card,
html[data-bpf-theme] .photo-card,
html[data-bpf-theme] .chart-wrap,
html[data-bpf-theme] .workout-card,
html[data-bpf-theme] .exercise-card,
html[data-bpf-theme] .section-card{
  background-color: var(--bpf-panel) !important;
  border-color: var(--bpf-border) !important;
  color: var(--bpf-text) !important;
}
html[data-bpf-theme] .eyebrow,
html[data-bpf-theme] .kicker,
html[data-bpf-theme] .page-title .hl,
html[data-bpf-theme] .prog-week-title,
html[data-bpf-theme] .meal-day-title,
html[data-bpf-theme] .form-input:focus,
html[data-bpf-theme] a:not(.btn):not(.btn-or):not(.prog-cta){
  border-color: var(--bpf-primary) !important;
}
html[data-bpf-theme] .eyebrow,
html[data-bpf-theme] .kicker,
html[data-bpf-theme] .page-title .hl,
html[data-bpf-theme] .prog-week-title,
html[data-bpf-theme] .meal-day-title,
html[data-bpf-theme] .empty-cta,
html[data-bpf-theme] .bnav-item.active,
html[data-bpf-theme] .bnav-item[aria-current="page"]{
  color: var(--bpf-primary) !important;
}
html[data-bpf-theme] .btn-or,
html[data-bpf-theme] .lead-btn,
html[data-bpf-theme] .prog-cta,
html[data-bpf-theme] .push-btn,
html[data-bpf-theme] .primary,
html[data-bpf-theme] .red,
html[data-bpf-theme] .cta.primary,
html[data-bpf-theme] .bpf-bottom-primary,
html[data-bpf-theme] .start-btn,
html[data-bpf-theme] .finish-btn,
html[data-bpf-theme] button.primary,
html[data-bpf-theme] input[type="submit"],
html[data-bpf-theme] input[type="button"]{
  background: linear-gradient(180deg, var(--bpf-primary-2), var(--bpf-primary)) !important;
  border-color: var(--bpf-primary) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.22) !important;
  box-shadow: 0 12px 28px var(--bpf-primary-glow) !important;
}
html[data-bpf-theme] .btn-or *,
html[data-bpf-theme] .lead-btn *,
html[data-bpf-theme] .prog-cta *,
html[data-bpf-theme] .primary *,
html[data-bpf-theme] .red *,
html[data-bpf-theme] .bpf-bottom-primary *{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme] .btn-ghost,
html[data-bpf-theme] .secondary,
html[data-bpf-theme] .prog-cta.secondary,
html[data-bpf-theme] button.secondary,
html[data-bpf-theme] .cta.secondary{
  background: transparent !important;
  border-color: var(--bpf-border-strong) !important;
  color: var(--bpf-text) !important;
  box-shadow: none !important;
}
html[data-bpf-theme] input,
html[data-bpf-theme] select,
html[data-bpf-theme] textarea,
html[data-bpf-theme] .form-input{
  background: var(--bpf-panel-2) !important;
  border-color: var(--bpf-border-strong) !important;
  color: var(--bpf-text) !important;
}
html[data-bpf-theme] input::placeholder,
html[data-bpf-theme] textarea::placeholder{
  color: var(--bpf-muted-2) !important;
  opacity: 1 !important;
}
html[data-bpf-theme] .form-label,
html[data-bpf-theme] label,
html[data-bpf-theme] .prog-card-desc,
html[data-bpf-theme] .macro-tip,
html[data-bpf-theme] .muted,
html[data-bpf-theme] .desc,
html[data-bpf-theme] .copy,
html[data-bpf-theme] p{
  color: var(--bpf-muted) !important;
}
html[data-bpf-theme] h1,
html[data-bpf-theme] h2,
html[data-bpf-theme] h3,
html[data-bpf-theme] h4,
html[data-bpf-theme] .page-title,
html[data-bpf-theme] .prog-card-title,
html[data-bpf-theme] .gen-form-title,
html[data-bpf-theme] .app-home-title{
  color: var(--bpf-text) !important;
}
html[data-bpf-theme] .bot-nav{
  min-height: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
  background: color-mix(in srgb, var(--bpf-bg) 94%, transparent) !important;
  border-top: 1px solid var(--bpf-border-strong) !important;
  box-shadow: 0 -12px 34px rgba(0,0,0,.34) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  backdrop-filter: blur(18px) !important;
}
html[data-bpf-theme] .bnav-item{
  color: var(--bpf-muted) !important;
  min-height: 58px !important;
  padding: 9px 4px 8px !important;
  gap: 4px !important;
}
html[data-bpf-theme] .bnav-item.active::before{
  background: var(--bpf-primary) !important;
}
html[data-bpf-theme] .bnav-icon{
  font-size: 23px !important;
  line-height: 1 !important;
}
html[data-bpf-theme] .bnav-label{
  font-size: 11.5px !important;
  line-height: 1.05 !important;
  letter-spacing: .055em !important;
  font-weight: 900 !important;
  color: currentColor !important;
}
.bpf-theme-switch{
  position: fixed;
  right: max(14px, env(safe-area-inset-right, 0px));
  bottom: calc(18px + env(safe-area-inset-bottom, 0px));
  z-index: 2147483000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid var(--bpf-border-strong, rgba(255,255,255,.2));
  background: linear-gradient(180deg, var(--bpf-panel-2, #171923), var(--bpf-panel, #111218));
  color: var(--bpf-text, #fff) !important;
  -webkit-text-fill-color: var(--bpf-text, #fff) !important;
  font: 900 12px/1 Barlow, Inter, Arial, sans-serif;
  letter-spacing: .04em;
  text-transform: uppercase;
  box-shadow: 0 14px 34px rgba(0,0,0,.38);
  cursor: pointer;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.bpf-theme-switch strong{color:#fff;-webkit-text-fill-color:#fff;font-weight:900}
.bpf-theme-switch .bpf-theme-dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--bpf-primary, #C41E3A);
  box-shadow: 0 0 0 4px var(--bpf-primary-soft, rgba(196,30,58,.14));
  flex: 0 0 auto;
}
.bpf-theme-switch:focus-visible{
  outline: 3px solid var(--bpf-primary-2, #E02040);
  outline-offset: 3px;
}
body.bpf-has-bottom-nav .bpf-theme-switch{
  bottom: calc(88px + env(safe-area-inset-bottom, 0px));
}
@media(max-width:700px){
  .bpf-theme-switch{right:12px;bottom:calc(84px + env(safe-area-inset-bottom,0px));min-height:40px;padding:9px 12px;font-size:11px}
  body:not(.bpf-has-bottom-nav) .bpf-theme-switch{bottom:calc(16px + env(safe-area-inset-bottom,0px))}
}
@media(print){.bpf-theme-switch{display:none!important}}

/* BPF Pro Strengthening Pass — forces full navy / blue / white surfaces */
:root,
html[data-bpf-theme="pro"],
html[data-theme="bpf-pro"]{
  --bpf-bg: #061427;
  --bpf-bg-2: #071B34;
  --bpf-panel: #0B1F3A;
  --bpf-panel-2: #102A4D;
  --bpf-panel-3: #153762;
  --bpf-primary: #2F8BFF;
  --bpf-primary-2: #62B2FF;
  --bpf-primary-dark: #1766C8;
  --bpf-primary-soft: rgba(47,139,255,.16);
  --bpf-primary-glow: rgba(47,139,255,.30);
  --bpf-accent: var(--bpf-primary);
  --bpf-brand: var(--bpf-primary);
  --bpf-brand-2: #2277DF;
  --bpf-brand-hot: var(--bpf-primary-2);
  --bpf-brand-dark: var(--bpf-primary-dark);
  --bpf-red: var(--bpf-primary);
  --bpf-red-hot: var(--bpf-primary-2);
  --bpf-red-deep: var(--bpf-primary-dark);
  --bpf-lime: var(--bpf-primary);
  --lime: var(--bpf-primary);
  --green: var(--bpf-success);
  --focus-ring: var(--bpf-primary-2);
}

html[data-bpf-theme="pro"] body,
html[data-theme="bpf-pro"] body{
  background:
    radial-gradient(ellipse 70% 45% at 100% 0%, rgba(47,139,255,.18), transparent 60%),
    radial-gradient(ellipse 42% 32% at 0% 100%, rgba(98,178,255,.12), transparent 62%),
    linear-gradient(180deg, #061427 0%, #030B16 100%) !important;
  color: var(--bpf-text) !important;
}

html[data-bpf-theme="pro"] .shell,
html[data-bpf-theme="pro"] .main,
html[data-bpf-theme="pro"] .page,
html[data-bpf-theme="pro"] .page.active,
html[data-theme="bpf-pro"] .shell,
html[data-theme="bpf-pro"] .main,
html[data-theme="bpf-pro"] .page,
html[data-theme="bpf-pro"] .page.active{
  background-color: transparent !important;
  color: var(--bpf-text) !important;
}

html[data-bpf-theme="pro"] .card,
html[data-bpf-theme="pro"] .panel,
html[data-bpf-theme="pro"] .module,
html[data-bpf-theme="pro"] .tile,
html[data-bpf-theme="pro"] .bpf-card,
html[data-bpf-theme="pro"] .bpf-panel,
html[data-bpf-theme="pro"] .page-card,
html[data-bpf-theme="pro"] .workout-card,
html[data-bpf-theme="pro"] .calc-card,
html[data-bpf-theme="pro"] .meal-card,
html[data-bpf-theme="pro"] [class*="card"],
html[data-bpf-theme="pro"] [class*="panel"],
html[data-theme="bpf-pro"] .card,
html[data-theme="bpf-pro"] .panel,
html[data-theme="bpf-pro"] .module,
html[data-theme="bpf-pro"] .tile,
html[data-theme="bpf-pro"] .bpf-card,
html[data-theme="bpf-pro"] .bpf-panel,
html[data-theme="bpf-pro"] .page-card,
html[data-theme="bpf-pro"] .workout-card,
html[data-theme="bpf-pro"] .calc-card,
html[data-theme="bpf-pro"] .meal-card,
html[data-theme="bpf-pro"] [class*="card"],
html[data-theme="bpf-pro"] [class*="panel"]{
  background: linear-gradient(145deg, rgba(16,42,77,.94), rgba(7,27,52,.88)) !important;
  border-color: rgba(98,178,255,.26) !important;
  color: var(--bpf-text) !important;
  box-shadow: 0 18px 46px rgba(0,0,0,.30) !important;
}

html[data-bpf-theme="pro"] .bpf-today-actions,
html[data-theme="bpf-pro"] .bpf-today-actions{
  background: linear-gradient(135deg, rgba(47,139,255,.18), rgba(16,42,77,.88)) !important;
  border-color: rgba(98,178,255,.36) !important;
  box-shadow: 0 18px 46px rgba(0,0,0,.30), 0 0 0 1px rgba(255,255,255,.035) inset !important;
}
html[data-bpf-theme="pro"] .bpf-today-actions-kicker,
html[data-bpf-theme="pro"] .bpf-card-kicker,
html[data-bpf-theme="pro"] .kicker,
html[data-bpf-theme="pro"] .eyebrow,
html[data-bpf-theme="pro"] .bpf-ai-kicker,
html[data-theme="bpf-pro"] .bpf-today-actions-kicker,
html[data-theme="bpf-pro"] .bpf-card-kicker,
html[data-theme="bpf-pro"] .kicker,
html[data-theme="bpf-pro"] .eyebrow,
html[data-theme="bpf-pro"] .bpf-ai-kicker{
  color: var(--bpf-primary-2) !important;
  -webkit-text-fill-color: var(--bpf-primary-2) !important;
}
html[data-bpf-theme="pro"] .bpf-today-actions-badge,
html[data-bpf-theme="pro"] .badge,
html[data-bpf-theme="pro"] .pill,
html[data-theme="bpf-pro"] .bpf-today-actions-badge,
html[data-theme="bpf-pro"] .badge,
html[data-theme="bpf-pro"] .pill{
  background: rgba(47,139,255,.14) !important;
  border-color: rgba(98,178,255,.42) !important;
  color: #D8ECFF !important;
  -webkit-text-fill-color:#D8ECFF !important;
}
html[data-bpf-theme="pro"] .bpf-today-action,
html[data-theme="bpf-pro"] .bpf-today-action{
  background: linear-gradient(180deg, rgba(21,55,98,.72), rgba(11,31,58,.86)) !important;
  border-color: rgba(98,178,255,.24) !important;
  color: var(--bpf-text) !important;
}
html[data-bpf-theme="pro"] .bpf-today-action:hover,
html[data-theme="bpf-pro"] .bpf-today-action:hover{
  background: linear-gradient(180deg, rgba(47,139,255,.22), rgba(11,31,58,.92)) !important;
  border-color: rgba(98,178,255,.62) !important;
}
html[data-bpf-theme="pro"] .bpf-today-num,
html[data-bpf-theme="pro"] .step-number,
html[data-bpf-theme="pro"] .number-badge,
html[data-theme="bpf-pro"] .bpf-today-num,
html[data-theme="bpf-pro"] .step-number,
html[data-theme="bpf-pro"] .number-badge{
  background: linear-gradient(180deg, var(--bpf-primary-2), var(--bpf-primary)) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}

html[data-bpf-theme="pro"] #page-ask .topic-chip,
html[data-bpf-theme="pro"] #page-ask .quick-question,
html[data-bpf-theme="pro"] #page-ask .chip,
html[data-bpf-theme="pro"] .topics-row button,
html[data-bpf-theme="pro"] .chips button,
html[data-bpf-theme="pro"] .filter-pill,
html[data-bpf-theme="pro"] .tag,
html[data-theme="bpf-pro"] #page-ask .topic-chip,
html[data-theme="bpf-pro"] #page-ask .quick-question,
html[data-theme="bpf-pro"] #page-ask .chip,
html[data-theme="bpf-pro"] .topics-row button,
html[data-theme="bpf-pro"] .chips button,
html[data-theme="bpf-pro"] .filter-pill,
html[data-theme="bpf-pro"] .tag{
  background: rgba(47,139,255,.13) !important;
  border-color: rgba(98,178,255,.44) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  box-shadow: 0 8px 20px rgba(47,139,255,.10) !important;
}
html[data-bpf-theme="pro"] #page-ask .topic-chip.active,
html[data-bpf-theme="pro"] #page-ask .quick-question.active,
html[data-bpf-theme="pro"] .topics-row button.active,
html[data-bpf-theme="pro"] .chips button.active,
html[data-theme="bpf-pro"] #page-ask .topic-chip.active,
html[data-theme="bpf-pro"] #page-ask .quick-question.active,
html[data-theme="bpf-pro"] .topics-row button.active,
html[data-theme="bpf-pro"] .chips button.active{
  background: linear-gradient(180deg, var(--bpf-primary-2), var(--bpf-primary)) !important;
  border-color: var(--bpf-primary-2) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}

html[data-bpf-theme="pro"] .ask-box,
html[data-theme="bpf-pro"] .ask-box{
  background: linear-gradient(180deg, rgba(16,42,77,.96), rgba(11,31,58,.96)) !important;
  border-color: rgba(98,178,255,.34) !important;
  box-shadow: 0 18px 46px rgba(0,0,0,.32) !important;
}
html[data-bpf-theme="pro"] .ask-box textarea,
html[data-theme="bpf-pro"] .ask-box textarea{
  background: #12365F !important;
  border-color: rgba(98,178,255,.28) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] .ask-btn,
html[data-theme="bpf-pro"] .ask-btn{
  background: linear-gradient(180deg, var(--bpf-primary-2), var(--bpf-primary)) !important;
  border-color: var(--bpf-primary-2) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  box-shadow: 0 12px 28px var(--bpf-primary-glow) !important;
}

html[data-bpf-theme="pro"] button[class*="lime"],
html[data-bpf-theme="pro"] a[class*="lime"],
html[data-bpf-theme="pro"] .btn-lime,
html[data-bpf-theme="pro"] .bpf-btn-lime,
html[data-bpf-theme="pro"] button[style*="c9ff00" i],
html[data-bpf-theme="pro"] a[style*="c9ff00" i],
html[data-bpf-theme="pro"] button[style*="b7ff00" i],
html[data-bpf-theme="pro"] a[style*="b7ff00" i],
html[data-bpf-theme="pro"] button[style*="201,255,0" i],
html[data-bpf-theme="pro"] a[style*="201,255,0" i],
html[data-bpf-theme="pro"] button[style*="183,255,0" i],
html[data-bpf-theme="pro"] a[style*="183,255,0" i],
html[data-theme="bpf-pro"] button[class*="lime"],
html[data-theme="bpf-pro"] a[class*="lime"],
html[data-theme="bpf-pro"] .btn-lime,
html[data-theme="bpf-pro"] .bpf-btn-lime,
html[data-theme="bpf-pro"] button[style*="c9ff00" i],
html[data-theme="bpf-pro"] a[style*="c9ff00" i],
html[data-theme="bpf-pro"] button[style*="b7ff00" i],
html[data-theme="bpf-pro"] a[style*="b7ff00" i],
html[data-theme="bpf-pro"] button[style*="201,255,0" i],
html[data-theme="bpf-pro"] a[style*="201,255,0" i],
html[data-theme="bpf-pro"] button[style*="183,255,0" i],
html[data-theme="bpf-pro"] a[style*="183,255,0" i]{
  background: linear-gradient(180deg, var(--bpf-primary-2), var(--bpf-primary)) !important;
  border-color: var(--bpf-primary-2) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}

html[data-bpf-theme="pro"] .bpf-global-bottom-nav,
html[data-theme="bpf-pro"] .bpf-global-bottom-nav{
  background: linear-gradient(180deg, rgba(11,31,58,.98), rgba(6,20,39,.98)) !important;
  border-color: rgba(98,178,255,.28) !important;
}
html[data-bpf-theme="pro"] .bpf-global-bottom-nav a,
html[data-theme="bpf-pro"] .bpf-global-bottom-nav a{
  color: #D7E3F4 !important;
  -webkit-text-fill-color:#D7E3F4 !important;
}
html[data-bpf-theme="pro"] .bpf-global-bottom-nav .ico,
html[data-theme="bpf-pro"] .bpf-global-bottom-nav .ico{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] .bpf-global-bottom-nav a.active,
html[data-theme="bpf-pro"] .bpf-global-bottom-nav a.active{
  background: linear-gradient(180deg, rgba(98,178,255,.30), rgba(47,139,255,.18)) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  box-shadow: inset 0 0 0 2px rgba(98,178,255,.76), 0 8px 22px rgba(47,139,255,.18) !important;
}
html[data-bpf-theme="pro"] .bpf-global-bottom-nav a.active .ico,
html[data-theme="bpf-pro"] .bpf-global-bottom-nav a.active .ico{
  filter: drop-shadow(0 0 8px rgba(98,178,255,.40)) !important;
}


/* BPF Pro Red-Reduction Pass — keeps Classic red, makes Pro fully navy / blue / white */
:root,
html[data-bpf-theme="pro"],
html[data-theme="bpf-pro"]{
  --bpf-accent-label: #BFD9F8;
  --bpf-accent-label-strong: #D8ECFF;
  --bpf-pro-line: rgba(98,178,255,.30);
  --bpf-pro-line-strong: rgba(98,178,255,.50);
  --bpf-pro-soft: rgba(47,139,255,.14);
  --bpf-pro-soft-2: rgba(98,178,255,.10);
}

/* General red/rose surfaces still hard-coded in page CSS or inline styles */
html[data-bpf-theme="pro"] [style*="196,30,58"],
html[data-bpf-theme="pro"] [style*="225,29,72"],
html[data-bpf-theme="pro"] [style*="220,38,38"],
html[data-bpf-theme="pro"] [style*="C41E3A" i],
html[data-bpf-theme="pro"] [style*="E02040" i],
html[data-bpf-theme="pro"] [style*="E11D48" i],
html[data-bpf-theme="pro"] [style*="DC2626" i],
html[data-theme="bpf-pro"] [style*="196,30,58"],
html[data-theme="bpf-pro"] [style*="225,29,72"],
html[data-theme="bpf-pro"] [style*="220,38,38"],
html[data-theme="bpf-pro"] [style*="C41E3A" i],
html[data-theme="bpf-pro"] [style*="E02040" i],
html[data-theme="bpf-pro"] [style*="E11D48" i],
html[data-theme="bpf-pro"] [style*="DC2626" i]{
  border-color: var(--bpf-pro-line) !important;
  background: linear-gradient(145deg, rgba(16,42,77,.86), rgba(7,27,52,.82)) !important;
  box-shadow: none !important;
}

/* Red text hard-coded through inline styles: convert to calm Pro blue. */
html[data-bpf-theme="pro"] [style*="color:#C41E3A" i],
html[data-bpf-theme="pro"] [style*="color:#E02040" i],
html[data-bpf-theme="pro"] [style*="color:#E11D48" i],
html[data-bpf-theme="pro"] [style*="color:#DC2626" i],
html[data-bpf-theme="pro"] [style*="color:#FF3B65" i],
html[data-bpf-theme="pro"] [style*="color:#FF4B4B" i],
html[data-bpf-theme="pro"] [style*="color:#f43" i],
html[data-bpf-theme="pro"] [style*="color:var(--or" i],
html[data-bpf-theme="pro"] [style*="color:var(--red" i],
html[data-bpf-theme="pro"] [style*="color:var(--bpf-brand" i],
html[data-theme="bpf-pro"] [style*="color:#C41E3A" i],
html[data-theme="bpf-pro"] [style*="color:#E02040" i],
html[data-theme="bpf-pro"] [style*="color:#E11D48" i],
html[data-theme="bpf-pro"] [style*="color:#DC2626" i],
html[data-theme="bpf-pro"] [style*="color:#FF3B65" i],
html[data-theme="bpf-pro"] [style*="color:#FF4B4B" i],
html[data-theme="bpf-pro"] [style*="color:#f43" i],
html[data-theme="bpf-pro"] [style*="color:var(--or" i],
html[data-theme="bpf-pro"] [style*="color:var(--red" i],
html[data-theme="bpf-pro"] [style*="color:var(--bpf-brand" i]{
  color: var(--bpf-accent-label-strong) !important;
  -webkit-text-fill-color: var(--bpf-accent-label-strong) !important;
}

/* Accent micro-labels: reduce red text load in Pro mode. */
html[data-bpf-theme="pro"] .sec-label,
html[data-bpf-theme="pro"] .app-home-kicker,
html[data-bpf-theme="pro"] .lead-ey,
html[data-bpf-theme="pro"] .cb-ey,
html[data-bpf-theme="pro"] .cb-urg,
html[data-bpf-theme="pro"] .log-date,
html[data-bpf-theme="pro"] .bpf-age-k,
html[data-bpf-theme="pro"] .bpf-snack-k,
html[data-bpf-theme="pro"] .bpf-longevity-bursts-card .bpf-snack-k,
html[data-bpf-theme="pro"] .bpf-hpa-kicker,
html[data-bpf-theme="pro"] .recovery-kicker,
html[data-bpf-theme="pro"] .bpf-store-title span,
html[data-bpf-theme="pro"] .bpf-ai-kicker,
html[data-bpf-theme="pro"] .empty-cta,
html[data-theme="bpf-pro"] .sec-label,
html[data-theme="bpf-pro"] .app-home-kicker,
html[data-theme="bpf-pro"] .lead-ey,
html[data-theme="bpf-pro"] .cb-ey,
html[data-theme="bpf-pro"] .cb-urg,
html[data-theme="bpf-pro"] .log-date,
html[data-theme="bpf-pro"] .bpf-age-k,
html[data-theme="bpf-pro"] .bpf-snack-k,
html[data-theme="bpf-pro"] .bpf-longevity-bursts-card .bpf-snack-k,
html[data-theme="bpf-pro"] .bpf-hpa-kicker,
html[data-theme="bpf-pro"] .recovery-kicker,
html[data-theme="bpf-pro"] .bpf-store-title span,
html[data-theme="bpf-pro"] .bpf-ai-kicker,
html[data-theme="bpf-pro"] .empty-cta{
  color: var(--bpf-accent-label) !important;
  -webkit-text-fill-color: var(--bpf-accent-label) !important;
  text-shadow: none !important;
}

/* Home dashboard cards from screenshot: remove red glow/red borders in Pro. */
html[data-bpf-theme="pro"] .bpf-store-launch,
html[data-bpf-theme="pro"] .bpf-featured-age-card,
html[data-bpf-theme="pro"] .bpf-exercise-snacks-card,
html[data-bpf-theme="pro"] .latest-vids,
html[data-bpf-theme="pro"] .latest-vid-card,
html[data-bpf-theme="pro"] .safety-note,
html[data-bpf-theme="pro"] .notify-banner,
html[data-bpf-theme="pro"] .bpf-home-access-offer,
html[data-theme="bpf-pro"] .bpf-store-launch,
html[data-theme="bpf-pro"] .bpf-featured-age-card,
html[data-theme="bpf-pro"] .bpf-exercise-snacks-card,
html[data-theme="bpf-pro"] .latest-vids,
html[data-theme="bpf-pro"] .latest-vid-card,
html[data-theme="bpf-pro"] .safety-note,
html[data-theme="bpf-pro"] .notify-banner,
html[data-theme="bpf-pro"] .bpf-home-access-offer{
  background: linear-gradient(145deg, rgba(16,42,77,.92), rgba(7,27,52,.86)) !important;
  border-color: var(--bpf-pro-line) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.28) !important;
}
html[data-bpf-theme="pro"] .bpf-featured-age-card:before,
html[data-theme="bpf-pro"] .bpf-featured-age-card:before{
  background: radial-gradient(circle, rgba(98,178,255,.18), transparent 65%) !important;
}
html[data-bpf-theme="pro"] .bpf-snack-icon,
html[data-bpf-theme="pro"] .bpf-age-icon,
html[data-bpf-theme="pro"] .bpf-longevity-bursts-card .bpf-snack-icon,
html[data-theme="bpf-pro"] .bpf-snack-icon,
html[data-theme="bpf-pro"] .bpf-age-icon,
html[data-theme="bpf-pro"] .bpf-longevity-bursts-card .bpf-snack-icon{
  background: linear-gradient(145deg, #62B2FF, #2F8BFF) !important;
  box-shadow: 0 14px 34px rgba(47,139,255,.22), inset 0 0 0 2px rgba(255,255,255,.18) !important;
}

/* Home small action buttons and feature CTAs: make them blue/white and readable. */
html[data-bpf-theme="pro"] .bpf-store-mini a,
html[data-bpf-theme="pro"] .bpf-store-mini button,
html[data-bpf-theme="pro"] .bpf-store-btn.primary,
html[data-bpf-theme="pro"] .bpf-age-btn,
html[data-bpf-theme="pro"] .bpf-snack-btn,
html[data-bpf-theme="pro"] .new-badge,
html[data-bpf-theme="pro"] .lv-play,
html[data-bpf-theme="pro"] .notify-btn,
html[data-bpf-theme="pro"] .bpf-ai-primary,
html[data-bpf-theme="pro"] .bpf-hpa-actions button,
html[data-bpf-theme="pro"] .cb-pri,
html[data-theme="bpf-pro"] .bpf-store-mini a,
html[data-theme="bpf-pro"] .bpf-store-mini button,
html[data-theme="bpf-pro"] .bpf-store-btn.primary,
html[data-theme="bpf-pro"] .bpf-age-btn,
html[data-theme="bpf-pro"] .bpf-snack-btn,
html[data-theme="bpf-pro"] .new-badge,
html[data-theme="bpf-pro"] .lv-play,
html[data-theme="bpf-pro"] .notify-btn,
html[data-theme="bpf-pro"] .bpf-ai-primary,
html[data-theme="bpf-pro"] .bpf-hpa-actions button,
html[data-theme="bpf-pro"] .cb-pri{
  background: linear-gradient(180deg, var(--bpf-primary-2), var(--bpf-primary)) !important;
  border-color: var(--bpf-primary-2) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.22) !important;
  box-shadow: 0 12px 28px rgba(47,139,255,.22) !important;
}
html[data-bpf-theme="pro"] .bpf-store-mini a *,
html[data-bpf-theme="pro"] .bpf-store-mini button *,
html[data-bpf-theme="pro"] .bpf-age-btn *,
html[data-bpf-theme="pro"] .bpf-snack-btn *,
html[data-theme="bpf-pro"] .bpf-store-mini a *,
html[data-theme="bpf-pro"] .bpf-store-mini button *,
html[data-theme="bpf-pro"] .bpf-age-btn *,
html[data-theme="bpf-pro"] .bpf-snack-btn *{
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] .bpf-age-btn.secondary,
html[data-bpf-theme="pro"] .bpf-store-btn.secondary,
html[data-bpf-theme="pro"] .cb-sec,
html[data-theme="bpf-pro"] .bpf-age-btn.secondary,
html[data-theme="bpf-pro"] .bpf-store-btn.secondary,
html[data-theme="bpf-pro"] .cb-sec{
  background: rgba(16,42,77,.72) !important;
  border-color: var(--bpf-pro-line-strong) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  box-shadow: none !important;
}

/* Broad class-name cleanup for legacy red-named components in Pro only. */
html[data-bpf-theme="pro"] [class*="red"],
html[data-bpf-theme="pro"] [class*="rose"],
html[data-bpf-theme="pro"] [class*="brand"],
html[data-theme="bpf-pro"] [class*="red"],
html[data-theme="bpf-pro"] [class*="rose"],
html[data-theme="bpf-pro"] [class*="brand"]{
  border-color: var(--bpf-pro-line) !important;
}
html[data-bpf-theme="pro"] a[class*="red"],
html[data-bpf-theme="pro"] button[class*="red"],
html[data-theme="bpf-pro"] a[class*="red"],
html[data-theme="bpf-pro"] button[class*="red"]{
  background: linear-gradient(180deg, var(--bpf-primary-2), var(--bpf-primary)) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}

/* Keep danger semantics available, but stop decorative red from dominating Pro. */
html[data-bpf-theme="pro"] .lv-date,
html[data-bpf-theme="pro"] .bpf-age-d,
html[data-bpf-theme="pro"] .bpf-snack-d,
html[data-theme="bpf-pro"] .lv-date,
html[data-theme="bpf-pro"] .bpf-age-d,
html[data-theme="bpf-pro"] .bpf-snack-d{
  color: #A9BED8 !important;
  -webkit-text-fill-color:#A9BED8 !important;
}


/* BPF Pro white-text pass — user requested red fonts become white in Pro mode */
:root,
html[data-bpf-theme="pro"],
html[data-theme="bpf-pro"]{
  --bpf-accent-label:#FFFFFF;
  --bpf-accent-label-strong:#FFFFFF;
}
html[data-bpf-theme="pro"] .bpf-today-actions-kicker,
html[data-bpf-theme="pro"] .bpf-card-kicker,
html[data-bpf-theme="pro"] .kicker,
html[data-bpf-theme="pro"] .eyebrow,
html[data-bpf-theme="pro"] .bpf-ai-kicker,
html[data-bpf-theme="pro"] .sec-label,
html[data-bpf-theme="pro"] .app-home-kicker,
html[data-bpf-theme="pro"] .lead-ey,
html[data-bpf-theme="pro"] .cb-ey,
html[data-bpf-theme="pro"] .cb-urg,
html[data-bpf-theme="pro"] .log-date,
html[data-bpf-theme="pro"] .bpf-age-k,
html[data-bpf-theme="pro"] .bpf-snack-k,
html[data-bpf-theme="pro"] .bpf-longevity-bursts-card .bpf-snack-k,
html[data-bpf-theme="pro"] .bpf-hpa-kicker,
html[data-bpf-theme="pro"] .recovery-kicker,
html[data-bpf-theme="pro"] .bpf-store-title span,
html[data-bpf-theme="pro"] .empty-cta,
html[data-bpf-theme="pro"] .bpf-today-actions-badge,
html[data-bpf-theme="pro"] .badge,
html[data-bpf-theme="pro"] .pill,
html[data-bpf-theme="pro"] .new-badge,
html[data-bpf-theme="pro"] .see-all,
html[data-bpf-theme="pro"] .latest-vids .k,
html[data-theme="bpf-pro"] .bpf-today-actions-kicker,
html[data-theme="bpf-pro"] .bpf-card-kicker,
html[data-theme="bpf-pro"] .kicker,
html[data-theme="bpf-pro"] .eyebrow,
html[data-theme="bpf-pro"] .bpf-ai-kicker,
html[data-theme="bpf-pro"] .sec-label,
html[data-theme="bpf-pro"] .app-home-kicker,
html[data-theme="bpf-pro"] .lead-ey,
html[data-theme="bpf-pro"] .cb-ey,
html[data-theme="bpf-pro"] .cb-urg,
html[data-theme="bpf-pro"] .log-date,
html[data-theme="bpf-pro"] .bpf-age-k,
html[data-theme="bpf-pro"] .bpf-snack-k,
html[data-theme="bpf-pro"] .bpf-longevity-bursts-card .bpf-snack-k,
html[data-theme="bpf-pro"] .bpf-hpa-kicker,
html[data-theme="bpf-pro"] .recovery-kicker,
html[data-theme="bpf-pro"] .bpf-store-title span,
html[data-theme="bpf-pro"] .empty-cta,
html[data-theme="bpf-pro"] .bpf-today-actions-badge,
html[data-theme="bpf-pro"] .badge,
html[data-theme="bpf-pro"] .pill,
html[data-theme="bpf-pro"] .new-badge,
html[data-theme="bpf-pro"] .see-all,
html[data-theme="bpf-pro"] .latest-vids .k{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] .bpf-store-mini a,
html[data-bpf-theme="pro"] .bpf-store-mini button,
html[data-bpf-theme="pro"] .bpf-store-btn.primary,
html[data-bpf-theme="pro"] .bpf-store-btn.secondary,
html[data-bpf-theme="pro"] .bpf-age-btn,
html[data-bpf-theme="pro"] .bpf-age-btn.secondary,
html[data-bpf-theme="pro"] .bpf-snack-btn,
html[data-bpf-theme="pro"] .ask-btn,
html[data-bpf-theme="pro"] .btn-or,
html[data-theme="bpf-pro"] .bpf-store-mini a,
html[data-theme="bpf-pro"] .bpf-store-mini button,
html[data-theme="bpf-pro"] .bpf-store-btn.primary,
html[data-theme="bpf-pro"] .bpf-store-btn.secondary,
html[data-theme="bpf-pro"] .bpf-age-btn,
html[data-theme="bpf-pro"] .bpf-age-btn.secondary,
html[data-theme="bpf-pro"] .bpf-snack-btn,
html[data-theme="bpf-pro"] .ask-btn,
html[data-theme="bpf-pro"] .btn-or{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] .bpf-store-mini a *,
html[data-bpf-theme="pro"] .bpf-store-mini button *,
html[data-bpf-theme="pro"] .bpf-store-btn.primary *,
html[data-bpf-theme="pro"] .bpf-store-btn.secondary *,
html[data-bpf-theme="pro"] .bpf-age-btn *,
html[data-bpf-theme="pro"] .bpf-age-btn.secondary *,
html[data-bpf-theme="pro"] .bpf-snack-btn *,
html[data-theme="bpf-pro"] .bpf-store-mini a *,
html[data-theme="bpf-pro"] .bpf-store-mini button *,
html[data-theme="bpf-pro"] .bpf-store-btn.primary *,
html[data-theme="bpf-pro"] .bpf-store-btn.secondary *,
html[data-theme="bpf-pro"] .bpf-age-btn *,
html[data-theme="bpf-pro"] .bpf-age-btn.secondary *,
html[data-theme="bpf-pro"] .bpf-snack-btn *{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}


/* BPF Pro workout-player override — removes remaining maroon/red player shell */
html[data-bpf-theme="pro"] body.bpf-workout-player,
html[data-theme="bpf-pro"] body.bpf-workout-player{
  --red: var(--bpf-primary) !important;
  --red2: var(--bpf-primary-2) !important;
  --lime: var(--bpf-primary-2) !important;
  --panel: var(--bpf-panel) !important;
  --panel2: var(--bpf-panel-2) !important;
  --card: var(--bpf-panel-2) !important;
  --line: rgba(98,178,255,.30) !important;
  --white: #FFFFFF !important;
  --muted: #D7E3F4 !important;
  background:
    radial-gradient(circle at 78% 2%, rgba(47,139,255,.24), transparent 32%),
    linear-gradient(135deg, #061427, #071B34 55%, #061427) !important;
  color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player::before,
html[data-theme="bpf-pro"] body.bpf-workout-player::before{
  background:
    radial-gradient(ellipse 70% 45% at 92% 0%, rgba(47,139,255,.18), transparent 60%),
    radial-gradient(ellipse 36% 28% at 5% 95%, rgba(98,178,255,.10), transparent 58%) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .hero,
html[data-bpf-theme="pro"] body.bpf-workout-player .panel,
html[data-bpf-theme="pro"] body.bpf-workout-player .current-panel,
html[data-theme="bpf-pro"] body.bpf-workout-player .hero,
html[data-theme="bpf-pro"] body.bpf-workout-player .panel,
html[data-theme="bpf-pro"] body.bpf-workout-player .current-panel{
  background: linear-gradient(145deg, rgba(16,42,77,.96), rgba(7,27,52,.92)) !important;
  border-color: rgba(98,178,255,.34) !important;
  box-shadow: 0 30px 70px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.035) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .exercise-row,
html[data-bpf-theme="pro"] body.bpf-workout-player .card,
html[data-bpf-theme="pro"] body.bpf-workout-player .next-card,
html[data-bpf-theme="pro"] body.bpf-workout-player .empty,
html[data-theme="bpf-pro"] body.bpf-workout-player .exercise-row,
html[data-theme="bpf-pro"] body.bpf-workout-player .card,
html[data-theme="bpf-pro"] body.bpf-workout-player .next-card,
html[data-theme="bpf-pro"] body.bpf-workout-player .empty{
  background: linear-gradient(135deg, rgba(21,55,98,.88), rgba(11,31,58,.94)) !important;
  border-color: rgba(98,178,255,.30) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.04), 0 16px 42px rgba(0,0,0,.22) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .thumb,
html[data-bpf-theme="pro"] body.bpf-workout-player .big-img,
html[data-bpf-theme="pro"] body.bpf-workout-player .next-card img,
html[data-theme="bpf-pro"] body.bpf-workout-player .thumb,
html[data-theme="bpf-pro"] body.bpf-workout-player .big-img,
html[data-theme="bpf-pro"] body.bpf-workout-player .next-card img{
  background: #061427 !important;
  border-color: rgba(215,227,244,.18) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .eyebrow,
html[data-bpf-theme="pro"] body.bpf-workout-player .pill,
html[data-bpf-theme="pro"] body.bpf-workout-player .tag,
html[data-bpf-theme="pro"] body.bpf-workout-player .meta span,
html[data-theme="bpf-pro"] body.bpf-workout-player .eyebrow,
html[data-theme="bpf-pro"] body.bpf-workout-player .pill,
html[data-theme="bpf-pro"] body.bpf-workout-player .tag,
html[data-theme="bpf-pro"] body.bpf-workout-player .meta span{
  background: rgba(47,139,255,.14) !important;
  border-color: rgba(98,178,255,.46) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .num,
html[data-bpf-theme="pro"] body.bpf-workout-player .status,
html[data-bpf-theme="pro"] body.bpf-workout-player .timer,
html[data-theme="bpf-pro"] body.bpf-workout-player .num,
html[data-theme="bpf-pro"] body.bpf-workout-player .status,
html[data-theme="bpf-pro"] body.bpf-workout-player .timer{
  color: var(--bpf-primary-2) !important;
  -webkit-text-fill-color: var(--bpf-primary-2) !important;
  text-shadow: 0 0 22px rgba(47,139,255,.18) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .cue,
html[data-bpf-theme="pro"] body.bpf-workout-player #cue.cue,
html[data-theme="bpf-pro"] body.bpf-workout-player .cue,
html[data-theme="bpf-pro"] body.bpf-workout-player #cue.cue{
  background: rgba(47,139,255,.16) !important;
  border-color: rgba(98,178,255,.46) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  box-shadow: none !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player #repInfo,
html[data-bpf-theme="pro"] body.bpf-workout-player #setInfo,
html[data-bpf-theme="pro"] body.bpf-workout-player #restInfo,
html[data-theme="bpf-pro"] body.bpf-workout-player #repInfo,
html[data-theme="bpf-pro"] body.bpf-workout-player #setInfo,
html[data-theme="bpf-pro"] body.bpf-workout-player #restInfo{
  background: rgba(47,139,255,.16) !important;
  border: 1px solid rgba(98,178,255,.46) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  box-shadow: 0 0 24px rgba(47,139,255,.10) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .btn,
html[data-bpf-theme="pro"] body.bpf-workout-player .btn.ghost,
html[data-theme="bpf-pro"] body.bpf-workout-player .btn,
html[data-theme="bpf-pro"] body.bpf-workout-player .btn.ghost{
  background: linear-gradient(180deg, var(--bpf-primary-2), var(--bpf-primary)) !important;
  border-color: var(--bpf-primary-2) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  box-shadow: 0 12px 28px rgba(47,139,255,.22) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .btn.secondary,
html[data-theme="bpf-pro"] body.bpf-workout-player .btn.secondary{
  background: rgba(16,42,77,.72) !important;
  border-color: rgba(98,178,255,.46) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  box-shadow:none !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .bottom-nav,
html[data-theme="bpf-pro"] body.bpf-workout-player .bottom-nav{
  background: linear-gradient(180deg, rgba(11,31,58,.98), rgba(6,20,39,.98)) !important;
  border-color: rgba(98,178,255,.30) !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.42) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .bottom-nav a,
html[data-bpf-theme="pro"] body.bpf-workout-player .bottom-nav b,
html[data-theme="bpf-pro"] body.bpf-workout-player .bottom-nav a,
html[data-theme="bpf-pro"] body.bpf-workout-player .bottom-nav b{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player .bottom-nav a[href*="workout-player"],
html[data-theme="bpf-pro"] body.bpf-workout-player .bottom-nav a[href*="workout-player"]{
  background: linear-gradient(180deg, rgba(98,178,255,.30), rgba(47,139,255,.18)) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  border-radius:14px !important;
  box-shadow: inset 0 0 0 2px rgba(98,178,255,.76), 0 8px 22px rgba(47,139,255,.18) !important;
}
html[data-bpf-theme="pro"] body.bpf-workout-player p,
html[data-bpf-theme="pro"] body.bpf-workout-player .exercise-row>div:nth-child(3)>div:not(.cue),
html[data-theme="bpf-pro"] body.bpf-workout-player p,
html[data-theme="bpf-pro"] body.bpf-workout-player .exercise-row>div:nth-child(3)>div:not(.cue){
  color:#D7E3F4 !important;
  -webkit-text-fill-color:#D7E3F4 !important;
}


/* BPF Pro Ask Answer Box Fix — convert Ask Ken answer panels from red to navy/blue in Pro */
html[data-bpf-theme="pro"] #result-area .answer-card,
html[data-theme="bpf-pro"] #result-area .answer-card{
  background: linear-gradient(145deg, rgba(16,42,77,.96), rgba(7,27,52,.92)) !important;
  border: 1px solid rgba(98,178,255,.26) !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.30) !important;
}
html[data-bpf-theme="pro"] #result-area .ans-head,
html[data-theme="bpf-pro"] #result-area .ans-head{
  background: linear-gradient(135deg, rgba(47,139,255,.16), rgba(255,255,255,.025)) !important;
  border-bottom: 1px solid rgba(98,178,255,.24) !important;
}
html[data-bpf-theme="pro"] #result-area .ans-role,
html[data-theme="bpf-pro"] #result-area .ans-role{
  color: rgba(215,227,244,.76) !important;
}
html[data-bpf-theme="pro"] #result-area .library-grounding,
html[data-theme="bpf-pro"] #result-area .library-grounding{
  background: rgba(47,139,255,.08) !important;
  border-color: rgba(98,178,255,.28) !important;
  color: rgba(215,227,244,.82) !important;
}
html[data-bpf-theme="pro"] #result-area .library-grounding strong,
html[data-theme="bpf-pro"] #result-area .library-grounding strong{
  color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] #result-area .library-grounding span,
html[data-theme="bpf-pro"] #result-area .library-grounding span,
html[data-bpf-theme="pro"] #result-area .library-lessons,
html[data-theme="bpf-pro"] #result-area .library-lessons,
html[data-bpf-theme="pro"] #result-area .lesson-sep,
html[data-theme="bpf-pro"] #result-area .lesson-sep{
  color: rgba(215,227,244,.68) !important;
}
html[data-bpf-theme="pro"] #result-area .library-lessons a,
html[data-theme="bpf-pro"] #result-area .library-lessons a{
  color: #9ECBFF !important;
  border-bottom-color: rgba(158,203,255,.38) !important;
}
html[data-bpf-theme="pro"] #result-area .library-lessons a:hover,
html[data-theme="bpf-pro"] #result-area .library-lessons a:hover{
  color: #FFFFFF !important;
  border-bottom-color: rgba(255,255,255,.85) !important;
}
html[data-bpf-theme="pro"] #result-area .ans-body,
html[data-bpf-theme="pro"] #result-area .ans-body p,
html[data-theme="bpf-pro"] #result-area .ans-body,
html[data-theme="bpf-pro"] #result-area .ans-body p{
  color: #F7FBFF !important;
}
html[data-bpf-theme="pro"] #result-area .bpf-answer-lead,
html[data-theme="bpf-pro"] #result-area .bpf-answer-lead{
  background: linear-gradient(145deg, rgba(21,55,98,.84), rgba(11,31,58,.92)) !important;
  border-color: rgba(98,178,255,.34) !important;
  color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] #result-area .bpf-answer-point,
html[data-theme="bpf-pro"] #result-area .bpf-answer-point{
  background: rgba(10,24,44,.58) !important;
  border-color: rgba(98,178,255,.22) !important;
  border-left: 4px solid #62B2FF !important;
  color: #F7FBFF !important;
}
html[data-bpf-theme="pro"] #result-area .bpf-answer-action,
html[data-theme="bpf-pro"] #result-area .bpf-answer-action{
  background: linear-gradient(135deg, rgba(47,139,255,.18), rgba(10,24,44,.38)) !important;
  border-color: rgba(98,178,255,.40) !important;
  color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] #result-area .bpf-answer-label,
html[data-theme="bpf-pro"] #result-area .bpf-answer-label{
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] #result-area .vid-sect,
html[data-theme="bpf-pro"] #result-area .vid-sect{
  border-top: 1px solid rgba(98,178,255,.24) !important;
}
html[data-bpf-theme="pro"] #result-area .vid-lbl,
html[data-theme="bpf-pro"] #result-area .vid-lbl{
  color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] #result-area .vid-card,
html[data-theme="bpf-pro"] #result-area .vid-card{
  background: rgba(10,24,44,.56) !important;
  border-color: rgba(98,178,255,.28) !important;
}
html[data-bpf-theme="pro"] #result-area .vid-card:hover,
html[data-theme="bpf-pro"] #result-area .vid-card:hover{
  border-color: #62B2FF !important;
}
html[data-bpf-theme="pro"] #result-area .act-btn,
html[data-theme="bpf-pro"] #result-area .act-btn{
  background: rgba(16,42,77,.72) !important;
  border-color: rgba(98,178,255,.30) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] #result-area .act-btn:hover:not(.hot),
html[data-theme="bpf-pro"] #result-area .act-btn:hover:not(.hot){
  border-color: #62B2FF !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] #result-area .act-btn.hot,
html[data-theme="bpf-pro"] #result-area .act-btn.hot{
  background: linear-gradient(180deg, #62B2FF, #2F8BFF) !important;
  border-color: #62B2FF !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
html[data-bpf-theme="pro"] .answer-card .medical-disclaimer,
html[data-theme="bpf-pro"] .answer-card .medical-disclaimer{
  background: rgba(47,139,255,.08) !important;
  border-color: rgba(98,178,255,.22) !important;
  color: rgba(215,227,244,.78) !important;
}


/* BPF Ask Topic Fit Fix — keep topic buttons in one clean row when possible */
html[data-bpf-theme] #page-ask .topics-row,
html[data-theme] #page-ask .topics-row{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:6px !important;
  overflow:visible !important;
  padding-right:0 !important;
  margin-bottom:14px !important;
}
html[data-bpf-theme] #page-ask .topics-row .tpill,
html[data-theme] #page-ask .topics-row .tpill{
  flex:0 0 auto !important;
  min-height:32px !important;
  padding:7px 10px !important;
  font-size:11px !important;
  line-height:1 !important;
  white-space:nowrap !important;
  max-width:none !important;
}
html[data-bpf-theme="pro"] #page-ask .topics-row .tpill,
html[data-theme="bpf-pro"] #page-ask .topics-row .tpill{
  background:rgba(47,139,255,.13) !important;
  border-color:rgba(98,178,255,.44) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] #page-ask .topics-row .tpill.active,
html[data-theme="bpf-pro"] #page-ask .topics-row .tpill.active{
  background:linear-gradient(180deg,#62B2FF,#2F8BFF) !important;
  border-color:#62B2FF !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
@media(max-width:560px){
  html[data-bpf-theme] #page-ask .topics-row,
  html[data-theme] #page-ask .topics-row{gap:5px !important;}
  html[data-bpf-theme] #page-ask .topics-row .tpill,
  html[data-theme] #page-ask .topics-row .tpill{padding:7px 8px !important;font-size:10.5px !important;}
}


/* BPF Nutrition Fonts + Macro Position Fix v8 — Pro mode */
:root,
html[data-bpf-theme="pro"],
html[data-theme="bpf-pro"]{
  --bpf-nutrition-blue:#3F9AFF;
  --bpf-nutrition-blue-2:#62B2FF;
  --bpf-nutrition-panel:#0B1F3A;
  --bpf-nutrition-panel-2:#102A4D;
}

/* Nutrition page buttons: no blue-on-blue text. */
html[data-bpf-theme="pro"] #page-macros .btn-or,
html[data-bpf-theme="pro"] #page-macros .btn-or *,
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-action-btn,
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-action-btn *,
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-tabs button,
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-tabs button *,
html[data-bpf-theme="pro"] #page-macros .bpf-macro-open-btn,
html[data-bpf-theme="pro"] #page-macros .bpf-macro-open-btn *,
html[data-bpf-theme="pro"] #page-macros .bpf-macro-help-btn,
html[data-bpf-theme="pro"] #page-macros .bpf-action-btn,
html[data-bpf-theme="pro"] #page-macros .btn-secondary,
html[data-theme="bpf-pro"] #page-macros .btn-or,
html[data-theme="bpf-pro"] #page-macros .btn-or *,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-action-btn,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-action-btn *,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-tabs button,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-tabs button *,
html[data-theme="bpf-pro"] #page-macros .bpf-macro-open-btn,
html[data-theme="bpf-pro"] #page-macros .bpf-macro-open-btn *,
html[data-theme="bpf-pro"] #page-macros .bpf-macro-help-btn,
html[data-theme="bpf-pro"] #page-macros .bpf-action-btn,
html[data-theme="bpf-pro"] #page-macros .btn-secondary{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  text-shadow:0 1px 0 rgba(0,0,0,.24)!important;
}
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-action-btn,
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-tabs button,
html[data-bpf-theme="pro"] #page-macros .bpf-food-flow-btn,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-action-btn,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-tabs button,
html[data-theme="bpf-pro"] #page-macros .bpf-food-flow-btn{
  font-family:'Barlow Condensed','DM Sans',Arial,sans-serif!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
}
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-action-btn.diet,
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-action-btn.tracker,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-action-btn.diet,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-action-btn.tracker{
  background:linear-gradient(180deg,var(--bpf-nutrition-blue-2),var(--bpf-nutrition-blue))!important;
  border-color:rgba(158,203,255,.62)!important;
  box-shadow:0 12px 28px rgba(47,139,255,.24)!important;
}
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-action-btn.tracker span:last-child,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-action-btn.tracker span:last-child{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-tabs,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-tabs{
  background:rgba(11,31,58,.92)!important;
  border-color:rgba(98,178,255,.32)!important;
}
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-tabs button,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-tabs button{
  background:linear-gradient(180deg,var(--bpf-nutrition-blue-2),var(--bpf-nutrition-blue))!important;
  border:1px solid rgba(158,203,255,.42)!important;
  box-shadow:none!important;
}
html[data-bpf-theme="pro"] #page-macros #nut-panel-log,
html[data-bpf-theme="pro"] #page-macros #nut-panel-player,
html[data-theme="bpf-pro"] #page-macros #nut-panel-log,
html[data-theme="bpf-pro"] #page-macros #nut-panel-player{
  padding-bottom:calc(146px + env(safe-area-inset-bottom,0px))!important;
}
html[data-bpf-theme="pro"] #page-macros #nut-tracker-frame,
html[data-bpf-theme="pro"] #page-macros #nut-player-frame,
html[data-theme="bpf-pro"] #page-macros #nut-tracker-frame,
html[data-theme="bpf-pro"] #page-macros #nut-player-frame{
  display:block!important;
  width:100%!important;
  min-height:min(760px,calc(100dvh - 170px))!important;
  margin-top:0!important;
  margin-bottom:calc(138px + env(safe-area-inset-bottom,0px))!important;
  border:1px solid rgba(98,178,255,.20)!important;
  border-radius:16px!important;
  background:#061427!important;
}

/* Diet Player typography and tracker-tab alignment. */
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .btn-or,
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .bpf-see-plans-btn,
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .meal-source-note button,
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) #page-tabs button,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .btn-or,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .bpf-see-plans-btn,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .meal-source-note button,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) #page-tabs button{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  text-shadow:0 1px 0 rgba(0,0,0,.24)!important;
}
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) #page-tabs button,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) #page-tabs button{
  background:linear-gradient(180deg,var(--bpf-nutrition-blue-2),var(--bpf-nutrition-blue))!important;
  border-color:rgba(158,203,255,.42)!important;
  font-family:'Barlow Condensed','DM Sans',Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:900!important;
}
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .meal-card,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .meal-card{
  background:linear-gradient(145deg,rgba(16,42,77,.94),rgba(7,27,52,.88))!important;
  border-color:rgba(98,178,255,.30)!important;
}
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .meal-name,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .meal-name{
  font-size:17px!important;
  line-height:1.05!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .meal-portions,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .meal-portions{
  background:rgba(9,31,44,.64)!important;
  border-color:rgba(98,178,255,.30)!important;
  color:#F7FBFF!important;
  font-family:'DM Sans',system-ui,sans-serif!important;
  font-size:13.5px!important;
  font-weight:600!important;
  line-height:1.45!important;
}
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .meal-portion-preview,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .meal-portion-preview{
  background:linear-gradient(180deg,rgba(98,178,255,.16),rgba(16,42,77,.60))!important;
  border-color:rgba(98,178,255,.42)!important;
  color:#F7FBFF!important;
  font-family:'DM Sans',system-ui,sans-serif!important;
  font-size:13.5px!important;
  font-weight:600!important;
  line-height:1.45!important;
}
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .portion-chip,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .portion-chip{
  background:rgba(5,20,33,.66)!important;
  border-color:rgba(215,227,244,.12)!important;
  color:#FFFFFF!important;
  font-family:'DM Sans',system-ui,sans-serif!important;
  font-size:13.5px!important;
  font-weight:650!important;
  letter-spacing:0!important;
}
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .portion-chip b,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .portion-chip b{
  font-family:'DM Sans',system-ui,sans-serif!important;
  font-size:13.5px!important;
  font-weight:800!important;
}
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .meal-portion-preview .eat-label,
html[data-bpf-theme="pro"] body:has(#diet-player-body-wrap) .meal-portions .eat-label,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .meal-portion-preview .eat-label,
html[data-theme="bpf-pro"] body:has(#diet-player-body-wrap) .meal-portions .eat-label{
  background:linear-gradient(180deg,var(--bpf-nutrition-blue-2),var(--bpf-nutrition-blue))!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  font-size:12px!important;
  letter-spacing:.06em!important;
}
html.bpf-tracker-tab-active #main-content,
body.bpf-tracker-tab-active #main-content{
  display:none!important;
  flex:0 0 0!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}
html.bpf-tracker-tab-active #diet-player-body-wrap,
body.bpf-tracker-tab-active #diet-player-body-wrap{
  padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))!important;
  overflow:hidden!important;
}
html.bpf-tracker-tab-active #tracker-frame,
body.bpf-tracker-tab-active #tracker-frame{
  display:block!important;
  flex:1 1 auto!important;
  width:100%!important;
  height:100%!important;
  min-height:520px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
}

/* Macro Tracker when embedded in Diet Player or Food page: remove duplicate top chrome and start high. */
html.bpf-embed-mode .nutrition-access-badge,
body.bpf-embed-mode .nutrition-access-badge,
html.bpf-embed-mode .limited-upgrade,
body.bpf-embed-mode .limited-upgrade,
html.bpf-embed-mode .bpf-food-flow,
body.bpf-embed-mode .bpf-food-flow{
  display:none!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
html.bpf-embed-mode .summary-section,
body.bpf-embed-mode .summary-section{
  margin-top:0!important;
  padding-top:12px!important;
  background:rgba(11,31,58,.76)!important;
  border-color:rgba(98,178,255,.22)!important;
}
html.bpf-embed-mode .main,
body.bpf-embed-mode .main,
html.bpf-embed-mode #main,
body.bpf-embed-mode #main{
  padding-top:0!important;
  margin-top:0!important;
  padding-bottom:calc(122px + env(safe-area-inset-bottom,0px))!important;
  scroll-padding-bottom:calc(122px + env(safe-area-inset-bottom,0px))!important;
}
html.bpf-embed-mode .shell,
body.bpf-embed-mode .shell,
html.bpf-embed-mode #app-shell,
body.bpf-embed-mode #app-shell{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:none!important;
}


/* BPF Pro Accent Unification — navy/blue base with controlled red BPF accents */
:root,
html[data-bpf-theme="pro"],
html[data-theme="bpf-pro"]{
  --bpf-pro-red:#E11D48;
  --bpf-pro-red-2:#FF3B65;
  --bpf-pro-red-line:rgba(225,29,72,.34);
  --bpf-pro-red-line-soft:rgba(225,29,72,.18);
  --bpf-pro-red-glow:rgba(225,29,72,.22);
  --bpf-pro-blue-line:rgba(98,178,255,.34);
}

/* App Pro: red is a premium accent only, never the main panel color. */
html[data-bpf-theme="pro"] .bpf-store-launch,
html[data-bpf-theme="pro"] .bpf-home-access-offer,
html[data-bpf-theme="pro"] .bpf-bridge-card,
html[data-bpf-theme="pro"] .coach-banner,
html[data-bpf-theme="pro"] .funnel-cta,
html[data-bpf-theme="pro"] .notify-banner,
html[data-bpf-theme="pro"] .lead-card,
html[data-bpf-theme="pro"] .bpf-featured-age-card,
html[data-bpf-theme="pro"] .bpf-exercise-snacks-card,
html[data-bpf-theme="pro"] .answer-card,
html[data-bpf-theme="pro"] .program-result,
html[data-bpf-theme="pro"] .meal-plan-result,
html[data-bpf-theme="pro"] .macro-result,
html[data-bpf-theme="pro"] .workout-card,
html[data-bpf-theme="pro"] .exercise-card,
html[data-theme="bpf-pro"] .bpf-store-launch,
html[data-theme="bpf-pro"] .bpf-home-access-offer,
html[data-theme="bpf-pro"] .bpf-bridge-card,
html[data-theme="bpf-pro"] .coach-banner,
html[data-theme="bpf-pro"] .funnel-cta,
html[data-theme="bpf-pro"] .notify-banner,
html[data-theme="bpf-pro"] .lead-card,
html[data-theme="bpf-pro"] .bpf-featured-age-card,
html[data-theme="bpf-pro"] .bpf-exercise-snacks-card,
html[data-theme="bpf-pro"] .answer-card,
html[data-theme="bpf-pro"] .program-result,
html[data-theme="bpf-pro"] .meal-plan-result,
html[data-theme="bpf-pro"] .macro-result,
html[data-theme="bpf-pro"] .workout-card,
html[data-theme="bpf-pro"] .exercise-card{
  border-color: var(--bpf-pro-blue-line) !important;
  box-shadow:
    0 18px 46px rgba(0,0,0,.30),
    0 0 0 1px rgba(98,178,255,.055) inset,
    0 18px 46px rgba(225,29,72,.055) !important;
}

/* Use thin red accent lines on high-value blocks, not red panels. */
html[data-bpf-theme="pro"] .bpf-store-launch,
html[data-bpf-theme="pro"] .bpf-home-access-offer,
html[data-bpf-theme="pro"] .bpf-bridge-card,
html[data-bpf-theme="pro"] .coach-banner,
html[data-bpf-theme="pro"] .funnel-cta,
html[data-bpf-theme="pro"] .lead-card,
html[data-theme="bpf-pro"] .bpf-store-launch,
html[data-theme="bpf-pro"] .bpf-home-access-offer,
html[data-theme="bpf-pro"] .bpf-bridge-card,
html[data-theme="bpf-pro"] .coach-banner,
html[data-theme="bpf-pro"] .funnel-cta,
html[data-theme="bpf-pro"] .lead-card{
  border-left: 2px solid var(--bpf-pro-red-line) !important;
}

/* Premium/coaching CTAs get a red accent glow while keeping blue surface and white text. */
html[data-bpf-theme="pro"] .act-btn.hot,
html[data-bpf-theme="pro"] .bpf-ai-primary,
html[data-bpf-theme="pro"] .bpf-store-btn.primary,
html[data-bpf-theme="pro"] .lead-btn,
html[data-bpf-theme="pro"] .cb-pri,
html[data-bpf-theme="pro"] a[href*="apply"],
html[data-bpf-theme="pro"] a[href*="coaching"].primary,
html[data-theme="bpf-pro"] .act-btn.hot,
html[data-theme="bpf-pro"] .bpf-ai-primary,
html[data-theme="bpf-pro"] .bpf-store-btn.primary,
html[data-theme="bpf-pro"] .lead-btn,
html[data-theme="bpf-pro"] .cb-pri,
html[data-theme="bpf-pro"] a[href*="apply"],
html[data-theme="bpf-pro"] a[href*="coaching"].primary{
  box-shadow: 0 12px 30px rgba(47,139,255,.22), 0 12px 34px rgba(225,29,72,.16) !important;
  border-color: rgba(255,255,255,.24) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}

/* Small selected states can carry the BPF red accent, but text remains white. */
html[data-bpf-theme="pro"] .filter-pill.active,
html[data-bpf-theme="pro"] .topic-chip.active,
html[data-bpf-theme="pro"] .quick-question.active,
html[data-bpf-theme="pro"] .bnav-item.active,
html[data-bpf-theme="pro"] .bpf-global-bottom-nav a.active,
html[data-theme="bpf-pro"] .filter-pill.active,
html[data-theme="bpf-pro"] .topic-chip.active,
html[data-theme="bpf-pro"] .quick-question.active,
html[data-theme="bpf-pro"] .bnav-item.active,
html[data-theme="bpf-pro"] .bpf-global-bottom-nav a.active{
  border-color: rgba(225,29,72,.38) !important;
  box-shadow: inset 0 0 0 2px rgba(98,178,255,.62), 0 8px 22px rgba(47,139,255,.18), 0 0 18px rgba(225,29,72,.12) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}

/* Keep warning/danger semantics red, but make them readable and controlled. */
html[data-bpf-theme="pro"] .danger,
html[data-bpf-theme="pro"] .warning,
html[data-bpf-theme="pro"] .error,
html[data-bpf-theme="pro"] .err-box,
html[data-theme="bpf-pro"] .danger,
html[data-theme="bpf-pro"] .warning,
html[data-theme="bpf-pro"] .error,
html[data-theme="bpf-pro"] .err-box{
  background: rgba(225,29,72,.10) !important;
  border-color: rgba(225,29,72,.32) !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}

/* Headline highlight accents stay readable: white text with blue/red glow instead of red text. */
html[data-bpf-theme="pro"] h1 span,
html[data-bpf-theme="pro"] h2 span,
html[data-bpf-theme="pro"] .page-title .hl,
html[data-theme="bpf-pro"] h1 span,
html[data-theme="bpf-pro"] h2 span,
html[data-theme="bpf-pro"] .page-title .hl{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  text-shadow: 0 0 18px rgba(98,178,255,.22), 0 0 20px rgba(225,29,72,.10) !important;
}


/* BPF App final readability + meal-plan generator fix — 2026-06-29 */
html[data-bpf-theme="pro"] .btn-or,
html[data-bpf-theme="pro"] .btn-or *,
html[data-bpf-theme="pro"] .bpf-nutrition-action-btn,
html[data-bpf-theme="pro"] .bpf-nutrition-action-btn *,
html[data-bpf-theme="pro"] .bpf-nutrition-tabs button,
html[data-bpf-theme="pro"] .bpf-nutrition-tabs button *,
html[data-bpf-theme="pro"] .bpf-action-btn,
html[data-bpf-theme="pro"] .bpf-action-btn *,
html[data-bpf-theme="pro"] .bpf-macro-open-btn,
html[data-bpf-theme="pro"] .bpf-macro-open-btn *,
html[data-bpf-theme="pro"] .bpf-red-cta-readable,
html[data-bpf-theme="pro"] .bpf-red-cta-readable *,
html[data-bpf-theme="pro"] button[style*="2F8BFF"],
html[data-bpf-theme="pro"] button[style*="62B2FF"],
html[data-bpf-theme="pro"] a[style*="2F8BFF"],
html[data-bpf-theme="pro"] a[style*="62B2FF"],
html[data-theme="bpf-pro"] .btn-or,
html[data-theme="bpf-pro"] .btn-or *,
html[data-theme="bpf-pro"] .bpf-nutrition-action-btn,
html[data-theme="bpf-pro"] .bpf-nutrition-action-btn *,
html[data-theme="bpf-pro"] .bpf-nutrition-tabs button,
html[data-theme="bpf-pro"] .bpf-nutrition-tabs button *,
html[data-theme="bpf-pro"] .bpf-action-btn,
html[data-theme="bpf-pro"] .bpf-action-btn *,
html[data-theme="bpf-pro"] .bpf-macro-open-btn,
html[data-theme="bpf-pro"] .bpf-macro-open-btn *,
html[data-theme="bpf-pro"] .bpf-red-cta-readable,
html[data-theme="bpf-pro"] .bpf-red-cta-readable *,
html[data-theme="bpf-pro"] button[style*="2F8BFF"],
html[data-theme="bpf-pro"] button[style*="62B2FF"],
html[data-theme="bpf-pro"] a[style*="2F8BFF"],
html[data-theme="bpf-pro"] a[style*="62B2FF"]{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  text-shadow:0 1px 0 rgba(0,0,0,.24) !important;
}
html[data-bpf-theme="pro"] .btn-or:disabled,
html[data-theme="bpf-pro"] .btn-or:disabled{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  opacity:.72 !important;
}
html[data-bpf-theme="pro"] .bpf-plan-ready-card,
html[data-theme="bpf-pro"] .bpf-plan-ready-card{
  background:linear-gradient(145deg,rgba(16,42,77,.96),rgba(7,27,52,.90)) !important;
  border:1px solid rgba(98,178,255,.34) !important;
  border-radius:16px !important;
  padding:16px !important;
  box-shadow:0 18px 44px rgba(0,0,0,.28),0 18px 44px rgba(225,29,72,.075) !important;
}
html[data-bpf-theme="pro"] .bpf-plan-ready-k,
html[data-theme="bpf-pro"] .bpf-plan-ready-k{
  font-family:'Barlow Condensed',sans-serif !important;
  font-size:12px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  margin-bottom:6px !important;
}
html[data-bpf-theme="pro"] .bpf-plan-ready-title,
html[data-theme="bpf-pro"] .bpf-plan-ready-title{
  font-family:'Barlow Condensed',sans-serif !important;
  font-size:24px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  color:#FFFFFF !important;
  line-height:1 !important;
  margin-bottom:8px !important;
}
html[data-bpf-theme="pro"] .bpf-plan-ready-copy,
html[data-theme="bpf-pro"] .bpf-plan-ready-copy{
  color:#D7E3F4 !important;
  line-height:1.6 !important;
  font-size:13px !important;
}
html[data-bpf-theme="pro"] .bpf-plan-ready-actions,
html[data-theme="bpf-pro"] .bpf-plan-ready-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:8px !important;
  margin-top:12px !important;
}
html[data-bpf-theme="pro"] .bpf-plan-ready-btn,
html[data-theme="bpf-pro"] .bpf-plan-ready-btn{
  border-radius:12px !important;
  padding:13px 10px !important;
  font-family:'Barlow Condensed',sans-serif !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  cursor:pointer !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
}
html[data-bpf-theme="pro"] .bpf-plan-ready-btn.primary,
html[data-theme="bpf-pro"] .bpf-plan-ready-btn.primary{
  background:linear-gradient(180deg,#62B2FF,#2F8BFF) !important;
  border:1px solid rgba(158,203,255,.62) !important;
}
html[data-bpf-theme="pro"] .bpf-plan-ready-btn.secondary,
html[data-theme="bpf-pro"] .bpf-plan-ready-btn.secondary{
  background:rgba(16,42,77,.72) !important;
  border:1px solid rgba(98,178,255,.34) !important;
}
@media(max-width:640px){
  html[data-bpf-theme="pro"] .bpf-plan-ready-actions,
  html[data-theme="bpf-pro"] .bpf-plan-ready-actions{grid-template-columns:1fr !important;}
}


/* BPF final nutrition-flow fix — no duplicate embedded theme button, compact Diet/Tracker embeds, white button text */
html.bpf-embed-mode .bpf-theme-switch,
body.bpf-embed-mode .bpf-theme-switch{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html[data-bpf-theme="pro"] #page-macros #nut-panel-player,
html[data-bpf-theme="pro"] #page-macros #nut-panel-log,
html[data-theme="bpf-pro"] #page-macros #nut-panel-player,
html[data-theme="bpf-pro"] #page-macros #nut-panel-log{
  padding-bottom:12px!important;
  margin-bottom:12px!important;
}
html[data-bpf-theme="pro"] #page-macros #nut-player-frame,
html[data-theme="bpf-pro"] #page-macros #nut-player-frame{
  height:min(430px,calc(100dvh - 260px))!important;
  min-height:340px!important;
  max-height:450px!important;
  margin-bottom:10px!important;
}
html[data-bpf-theme="pro"] #page-macros #nut-tracker-frame,
html[data-theme="bpf-pro"] #page-macros #nut-tracker-frame{
  height:min(460px,calc(100dvh - 240px))!important;
  min-height:360px!important;
  max-height:480px!important;
  margin-bottom:12px!important;
}
html[data-bpf-theme="pro"] #page-macros button,
html[data-bpf-theme="pro"] #page-macros .btn-or,
html[data-bpf-theme="pro"] #page-macros .bpf-nutrition-action-btn,
html[data-bpf-theme="pro"] #page-macros .bpf-plan-ready-btn,
html[data-bpf-theme="pro"] #page-macros .bpf-action-btn,
html[data-theme="bpf-pro"] #page-macros button,
html[data-theme="bpf-pro"] #page-macros .btn-or,
html[data-theme="bpf-pro"] #page-macros .bpf-nutrition-action-btn,
html[data-theme="bpf-pro"] #page-macros .bpf-plan-ready-btn,
html[data-theme="bpf-pro"] #page-macros .bpf-action-btn{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
.bpf-generated-plan-preview{
  background:linear-gradient(145deg,rgba(16,42,77,.94),rgba(7,27,52,.88))!important;
  border:1px solid rgba(98,178,255,.32)!important;
  border-radius:18px!important;
  padding:16px!important;
  box-shadow:0 18px 44px rgba(0,0,0,.25)!important;
}
.bpf-generated-plan-preview .bpf-plan-ready-k{
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
.bpf-generated-plan-preview .bpf-plan-ready-title{
  font-family:'Barlow Condensed',sans-serif!important;
  font-size:26px!important;
  line-height:1!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  color:#FFFFFF!important;
}
.bpf-generated-plan-preview .bpf-plan-ready-copy{
  color:#D7E3F4!important;
  line-height:1.55!important;
}
.bpf-generated-plan-preview .bpf-inline-days{
  display:grid!important;
  gap:10px!important;
  margin:14px 0!important;
}
.bpf-generated-plan-preview .bpf-inline-day{
  border:1px solid rgba(98,178,255,.24)!important;
  border-radius:14px!important;
  background:rgba(6,20,39,.58)!important;
  overflow:hidden!important;
}
.bpf-generated-plan-preview .bpf-inline-day summary{
  cursor:pointer!important;
  padding:11px 13px!important;
  font-family:'Barlow Condensed',sans-serif!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:#FFFFFF!important;
  list-style:none!important;
}
.bpf-generated-plan-preview .bpf-inline-day summary::-webkit-details-marker{display:none!important;}
.bpf-generated-plan-preview .bpf-inline-meal{
  padding:10px 13px!important;
  border-top:1px solid rgba(98,178,255,.16)!important;
  color:#F7FBFF!important;
}
.bpf-generated-plan-preview .bpf-inline-meal b{
  display:block!important;
  font-family:'Barlow Condensed',sans-serif!important;
  font-size:16px!important;
  text-transform:uppercase!important;
  color:#FFFFFF!important;
}
.bpf-generated-plan-preview .bpf-inline-meal span{
  display:block!important;
  margin-top:3px!important;
  font-size:13px!important;
  line-height:1.45!important;
  color:#D7E3F4!important;
}
.bpf-generated-plan-preview .bpf-plan-ready-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin-top:14px!important;
}
.bpf-generated-plan-preview .bpf-plan-ready-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:13px!important;
  padding:13px 12px!important;
  font-family:'Barlow Condensed',sans-serif!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.bpf-generated-plan-preview .bpf-plan-ready-btn.primary{
  background:linear-gradient(180deg,#62B2FF,#2F8BFF)!important;
  border:1px solid #62B2FF!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
.bpf-generated-plan-preview .bpf-plan-ready-btn.secondary{
  background:rgba(16,42,77,.72)!important;
  border:1px solid rgba(98,178,255,.38)!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
@media(max-width:640px){
  html[data-bpf-theme="pro"] #page-macros #nut-player-frame,
  html[data-theme="bpf-pro"] #page-macros #nut-player-frame{height:390px!important;min-height:320px!important;max-height:410px!important;}
  html[data-bpf-theme="pro"] #page-macros #nut-tracker-frame,
  html[data-theme="bpf-pro"] #page-macros #nut-tracker-frame{height:420px!important;min-height:340px!important;max-height:440px!important;}
  .bpf-generated-plan-preview .bpf-plan-ready-actions{grid-template-columns:1fr!important;}
}

/* BPF mobile food/theme final fix — 2026-06-29
   Keeps the Pro palette button visible, prevents horizontal overflow,
   and tightens Food/Meal Plan mobile layout. */
html,body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overscroll-behavior-x:none!important;
}
.shell,.main,.shell .main,.page,.page.active{
  width:100%!important;
  max-width:100vw!important;
  min-width:0!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
}
#page-macros,
#page-macros *{
  max-width:100%!important;
  box-sizing:border-box!important;
}
#page-macros .form-row,
#page-macros .bpf-nutrition-primary-actions,
#page-macros .bpf-macro-cta-strip,
#page-macros .bpf-plan-ready-actions{
  min-width:0!important;
}
#page-macros input,
#page-macros select,
#page-macros textarea,
#page-macros button,
#page-macros .btn-or,
#page-macros .bpf-plan-ready-btn{
  min-width:0!important;
  max-width:100%!important;
}
.bpf-inline-meal .bpf-inline-portions{
  display:block;
  margin-top:8px;
  color:#d9e8ff!important;
  -webkit-text-fill-color:#d9e8ff!important;
  font-size:13px;
  line-height:1.55;
}
.bpf-inline-meal .bpf-inline-portions b{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.bpf-inline-meal .bpf-inline-portions span{
  display:block;
  padding:7px 9px;
  margin-top:6px;
  border-radius:10px;
  background:rgba(3,18,33,.64);
  border:1px solid rgba(99,169,255,.18);
}
@media(max-width:760px){
  body{position:relative!important;}
  .shell{width:100%!important;max-width:100%!important;margin:0 auto!important;padding-left:0!important;padding-right:0!important;}
  .main,.shell .main{width:100%!important;max-width:100%!important;margin:0 auto!important;padding-left:0!important;padding-right:0!important;}
  .page,.page.active{width:100%!important;max-width:100%!important;margin:0 auto!important;padding-left:12px!important;padding-right:12px!important;}
  #page-macros .form-row{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}
  #page-macros #nut-meal-form-wrap > div[style*="padding:18px"]{padding:14px!important;border-radius:14px!important;}
  #page-macros .page-title{font-size:clamp(26px,9vw,36px)!important;line-height:.96!important;overflow-wrap:anywhere!important;}
  #page-macros .bpf-nutrition-tabs{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;}
  #page-macros .bpf-nutrition-tabs button{width:100%!important;}
  #page-macros .bpf-diet-player-access > div[style*="grid-template-columns:repeat(3"]{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;}
  .bpf-theme-switch{
    right:calc(8px + env(safe-area-inset-right,0px))!important;
    bottom:calc(96px + env(safe-area-inset-bottom,0px))!important;
    max-width:122px!important;
    min-height:38px!important;
    padding:8px 10px!important;
    gap:6px!important;
    font-size:10px!important;
    line-height:1!important;
    white-space:nowrap!important;
    transform:none!important;
  }
  .bpf-theme-switch .bpf-theme-dot{width:8px!important;height:8px!important;box-shadow:0 0 0 3px var(--bpf-primary-soft,rgba(47,139,255,.18))!important;}
}
