/* BPF 5.15.2.15 — FINAL SECONDARY-CONTRAST AND NARROW-SCREEN POLISH
   Staging-only. Scoped style changes, no behavior/data changes.
   All newly introduced positive button colors use navy #061427 against #62b2ff -> #2f8bff;
   minimum text contrast of that pair: 5.50:1 at the dark gradient stop.
   CSS specificity bump matches ordinary DOM elements, above legacy !important rules. */
:root{--bpf515-ink:#061427;--bpf515-blue1:#62b2ff;--bpf515-blue2:#2f8bff;--bpf515-paper:#f4faff;--bpf515-dark:#0a2946}
/* Voice guide CTAs: both 'Hear...' buttons are .primary, not the fictional IDs in 5.14. */
body.bpf-eat-today button.primary:not(#bpf515-never),
body.bpf-wave4-progress button.primary:not(#bpf515-never),
body.bpf-eat-today .rt-btn.primary:not(#bpf515-never),
body.bpf-wave4-progress .rt-btn.primary:not(#bpf515-never),
body.bpf-eat-today .bpf-guided-audio button.primary:not(#bpf515-never),
body.bpf-wave4-progress .bpf-guided-audio button.primary:not(#bpf515-never){
 background:linear-gradient(180deg,var(--bpf515-blue1),var(--bpf515-blue2))!important;
 color:var(--bpf515-ink)!important;-webkit-text-fill-color:var(--bpf515-ink)!important;
 opacity:1!important;
}
/* Home: topic filters, NEW badge, fitness-age offer and numeral badges. */
#page-ask .topic-chip.active:not(#bpf515-never),
#page-ask .topics-row button.active:not(#bpf515-never),
#page-ask .chips button.active:not(#bpf515-never),
#page-ask .filter-pill.active:not(#bpf515-never),
#page-more .topic-chip.active:not(#bpf515-never){
 background:linear-gradient(180deg,var(--bpf515-blue1),var(--bpf515-blue2))!important;
 border-color:#75c2ff!important;color:var(--bpf515-ink)!important;
 -webkit-text-fill-color:var(--bpf515-ink)!important;opacity:1!important;
}
#page-ask .topic-chip.active:not(#bpf515-never) *,
#page-ask .topics-row button.active:not(#bpf515-never) *,
#page-ask .chips button.active:not(#bpf515-never) *{
 color:var(--bpf515-ink)!important;-webkit-text-fill-color:var(--bpf515-ink)!important;
}
body.bpf-app-home #new-vid-badge:not(#bpf515-never),
body.bpf-app-home #page-ask .new-badge:not(#bpf515-never),
body.bpf-app-home #page-more .new-badge:not(#bpf515-never),
body.bpf-app-home .bpf-direct-step .step-number:not(#bpf515-never),
body.bpf-app-home .bpf-direct-step .number-badge:not(#bpf515-never){
 background:#0b304f!important;background-image:none!important;
 color:#f4faff!important;-webkit-text-fill-color:#f4faff!important;
 opacity:1!important;border-color:#62b2ff!important;
}
body.bpf-app-home .bpf-age-btn:not(.secondary):not(#bpf515-never),
body.bpf-app-home .bpf-age-btn:not(.secondary):not(#bpf515-never) *{
 background:linear-gradient(180deg,var(--bpf515-blue1),var(--bpf515-blue2))!important;
 color:var(--bpf515-ink)!important;-webkit-text-fill-color:var(--bpf515-ink)!important;
}
/* Calculators: fix guide buttons, history pane (white text on a white surface), low contrast helper type. */
body.bpf-wave2-calculators .bpf-hub-guide__button:not(#bpf515-never),
body.bpf-wave2-calculators .bpf-hub-guide__button:not(#bpf515-never) *{
 background:#0b304f!important;background-image:none!important;
 color:#f4faff!important;-webkit-text-fill-color:#f4faff!important;opacity:1!important;
 border-color:#488abf!important;
}
body.bpf-wave2-calculators #calcHistoryBox:not(#bpf515-never),
body.bpf-wave2-calculators .calc-history:not(#bpf515-never){
 background:#0a2946!important;background-image:none!important;
 color:#f4faff!important;border-color:#3d6484!important;
}
body.bpf-wave2-calculators #calcHistoryBox h3:not(#bpf515-never),
body.bpf-wave2-calculators #calcHistoryBox .muted:not(#bpf515-never),
body.bpf-wave2-calculators #calcHistoryBox p:not(#bpf515-never),
body.bpf-wave2-calculators .calc-history h3:not(#bpf515-never),
body.bpf-wave2-calculators .calc-history .muted:not(#bpf515-never){
 color:#f4faff!important;-webkit-text-fill-color:#f4faff!important;opacity:1!important;
}
body.bpf-wave2-calculators .hero .kicker:not(#bpf515-never),
body.bpf-wave2-calculators .hero .copy:not(#bpf515-never),
body.bpf-wave2-calculators .bpf-calc-index-compact .muted:not(#bpf515-never){
 color:#e5f2ff!important;-webkit-text-fill-color:#e5f2ff!important;opacity:1!important;
}
/* Resistance Band Authority secondary Quick Match action. */
body #rba-open.rba-btn.primary:not(#bpf515-never),
body #rba-open.rba-btn.primary:not(#bpf515-never) *{
 background:linear-gradient(180deg,var(--bpf515-blue1),var(--bpf515-blue2))!important;
 color:var(--bpf515-ink)!important;-webkit-text-fill-color:var(--bpf515-ink)!important;
 opacity:1!important;
}
/* Free Workouts: existing filter/button and badge presentation, no filter logic changes. */
body .filters .chip.active:not(#bpf515-never),
body .chip.library-chip.active:not(#bpf515-never),
body .mia-new-badge:not(#bpf515-never){
 background:linear-gradient(180deg,var(--bpf515-blue1),var(--bpf515-blue2))!important;
 color:var(--bpf515-ink)!important;-webkit-text-fill-color:var(--bpf515-ink)!important;
 border-color:#62b2ff!important;opacity:1!important;
}
body .filters .chip:not(.active):not(#bpf515-never){
 background:#0b304f!important;color:#f4faff!important;
 -webkit-text-fill-color:#f4faff!important;border-color:#35638b!important;
}
/* Workout Player: dynamic Hands-Free Class length radio buttons (Full + Complete). */
body.bpf-workout-player .g6-duration-options input:checked + span:not(#bpf515-never),
body.bpf-workout-player .g6-duration-options input:checked + span:not(#bpf515-never) b,
body.bpf-workout-player .g6-duration-options input:checked + span:not(#bpf515-never) small{
 background:linear-gradient(180deg,var(--bpf515-blue1),var(--bpf515-blue2))!important;
 color:var(--bpf515-ink)!important;-webkit-text-fill-color:var(--bpf515-ink)!important;
 opacity:1!important;
}
body.bpf-workout-player .g6-duration-options input:not(:checked) + span:not(#bpf515-never),
body.bpf-workout-player .g6-duration-options input:not(:checked) + span:not(#bpf515-never) small{
 background:#102e52!important;color:#eff7ff!important;
 -webkit-text-fill-color:#eff7ff!important;
}
/* 'Do: 1 min' workout target: dark ink on lime, including webkit text fill. */
body.bpf-workout-player #active #repInfo:not(#bpf515-never),
body.bpf-workout-player #active #repInfo:not(#bpf515-never) *{
 background:linear-gradient(180deg,#c7ff00,#a2d300)!important;
 color:#061427!important;-webkit-text-fill-color:#061427!important;
 opacity:1!important;
}
/* Macro Tracker: actual generated search-result macro selector and + Add. */
body.bpf-wave2-macrotracker .result-macros:not(#bpf515-never){
 color:#e5f2ff!important;-webkit-text-fill-color:#e5f2ff!important;opacity:1!important;
}
body.bpf-wave2-macrotracker .meal-cat-add:not(#bpf515-never){
 min-height:44px!important;min-width:44px!important;
 background:#0b304f!important;color:#f4faff!important;
 -webkit-text-fill-color:#f4faff!important;border-color:#3f7299!important;
}
/* 320px: move date navigation to its own line rather than clipping the right button. */
@media(max-width:360px){
 body.bpf-wave2-macrotracker .topbar:not(#bpf515-never){
  flex-wrap:wrap!important;gap:8px!important;padding-left:10px!important;padding-right:10px!important;
 }
 body.bpf-wave2-macrotracker .topbar-left:not(#bpf515-never){
  width:100%!important;min-width:0!important;justify-content:space-between!important;
 }
 body.bpf-wave2-macrotracker .date-nav:not(#bpf515-never){
  width:100%!important;justify-content:center!important;flex:0 0 100%!important;
 }
 body.bpf-wave2-macrotracker #date-next:not(#bpf515-never){
  flex-shrink:0!important;min-width:30px!important;
 }
}
/* Perpetual Trainer header: reliable keyboard focus. */
body .pt-header a:focus-visible:not(#bpf515-never),
body .pt-topbar a:focus-visible:not(#bpf515-never),
body .pt-nav a:focus-visible:not(#bpf515-never),
body a[href*="perpetual-trainer"]:focus-visible:not(#bpf515-never){
 outline:3px solid #87cfff!important;outline-offset:3px!important;
 box-shadow:0 0 0 5px #061427!important;
}
/* Recovery checklist numeral badges; Player Help heading. */
body.bpf-post-workout-recovery .step-number:not(#bpf515-never),
body.bpf-post-workout-recovery .checklist .number-badge:not(#bpf515-never){
 background:#0b304f!important;color:#f4faff!important;
 -webkit-text-fill-color:#f4faff!important;
}
body #player-help .module-title:not(#bpf515-never),
body.bpf-player-help .module-title:not(#bpf515-never){
 color:#f4faff!important;-webkit-text-fill-color:#f4faff!important;
}
/* Inline link minimum target where spacing safely allows. */
body.bpf-eat-today a.bpf-food-link:not(#bpf515-never),
body.bpf-wave4-progress .bpf-w4-actions a:not(#bpf515-never){
 min-height:24px!important;display:inline-flex!important;align-items:center!important;
}
@media(max-width:350px){body.bpf-app-home .bpf-store-kicker:not(#bpf515-never){max-width:calc(100vw - 24px)!important;overflow-wrap:anywhere!important}}
