
/* Hide WP page title */
.entry-header,.entry-title,.page-title,.ast-archive-description{display:none!important;}
/* v2.5.70 alignment pass — defensive global rules so every bsr-scoped element
   uses the same box model, and inline SVGs don't introduce baseline drift
   inside flex-centered containers. */
#bsr-app *,#bsr-app *::before,#bsr-app *::after,
#bsr-lightbox *,#bsr-lightbox *::before,#bsr-lightbox *::after,
#bsr-share-overlay *,#bsr-share-overlay *::before,#bsr-share-overlay *::after,
#bsr-cardio-modal *,#bsr-cardio-modal *::before,#bsr-cardio-modal *::after{box-sizing:border-box;}
#bsr-app button svg,#bsr-lightbox button svg,#bsr-share-overlay button svg,#bsr-cardio-modal button svg{display:block;}
/* v2.6.93: Immediate, in-flow dashboard shell. It keeps first paint useful,
   reserves the results layout, and remains readable when animation is disabled. */
.bsr-loading-shell{
  width:min(100%,1180px);min-height:520px;margin:0 auto;padding:34px 24px 56px;
  color:#2F4237;font-family:'Outfit',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
.bsr-loading-shell[hidden]{display:none!important;}
.bsr-loading-shell__head{margin:0 0 24px;}
.bsr-loading-shell__eyebrow{margin:0 0 7px;color:#B08B4F;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;}
.bsr-loading-shell__title{margin:0;color:#2F4237;font:600 clamp(24px,4vw,34px)/1.15 'Outfit',sans-serif;letter-spacing:-.02em;}
.bsr-loading-shell__copy{max-width:560px;margin:9px 0 0;color:#6B7A5A;font-size:14px;line-height:1.55;}
.bsr-loading-shell__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:24px;align-items:start;}
.bsr-loading-shell__panel{min-width:0;padding:18px;background:#FFFFFF;border:1px solid #E2DED5;border-radius:16px;}
.bsr-loading-shell__scan{width:min(100%,323px);aspect-ratio:3/4;max-height:430px;margin:0 auto;background:#EFECE6;border-radius:12px;}
.bsr-loading-shell__line,.bsr-loading-shell__value,.bsr-loading-shell__scan{
  animation:bsr-shell-pulse 1.4s ease-in-out infinite;
}
.bsr-loading-shell__line{display:block;height:10px;margin-top:14px;background:#EFECE6;border-radius:999px;}
.bsr-loading-shell__line.is-short{width:46%;}
.bsr-loading-shell__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.bsr-loading-shell__metric{min-height:112px;padding:17px 16px;background:#FFFFFF;border:1px solid #E2DED5;border-radius:14px;}
.bsr-loading-shell__metric .bsr-loading-shell__line{width:68%;height:8px;margin-top:0;}
.bsr-loading-shell__value{display:block;width:54%;height:28px;margin-top:17px;background:#D8D2C7;border-radius:7px;}
@keyframes bsr-shell-pulse{0%,100%{opacity:.52}50%{opacity:1}}
@media (max-width:700px){
  .bsr-loading-shell{min-height:460px;padding:26px 18px 44px;}
  .bsr-loading-shell__grid{grid-template-columns:1fr;gap:16px;}
  .bsr-loading-shell__scan-panel{display:none;}
}
@media (max-width:360px){
  .bsr-loading-shell{padding-right:14px;padding-left:14px;}
  .bsr-loading-shell__metrics{gap:9px;}
  .bsr-loading-shell__metric{min-height:100px;padding:14px 12px;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-loading-shell__line,.bsr-loading-shell__value,.bsr-loading-shell__scan{animation:none!important;opacity:.76;}
}
/* Staff view is deliberately read-only. Keep customer profile/questionnaire
   affordances out of reach while retaining every report-reading surface. */
#bsr-staff-banner{position:static;background:#2F4237;color:#fff;border-bottom:2px solid #B08B4F;font-family:'Outfit',system-ui,sans-serif;}
#bsr-staff-banner .bsr-staff-banner__inner{max-width:1180px;margin:0 auto;padding:11px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
#bsr-staff-banner .bsr-staff-banner__label{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#D8D2C7;margin-bottom:2px;}
#bsr-staff-banner .bsr-staff-banner__client{font-size:14px;font-weight:600;line-height:1.35;overflow-wrap:anywhere;}
#bsr-staff-banner .bsr-staff-banner__note{font-size:12px;font-weight:400;color:#EFECE6;margin-left:8px;}
#bsr-staff-banner .bsr-staff-banner__return{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border:1px solid #EFECE6;border-radius:8px;color:#EFECE6;text-decoration:none;font-size:12px;font-weight:700;white-space:nowrap;transition:background-color .18s ease,color .18s ease;}
#bsr-staff-banner .bsr-staff-banner__return:hover,#bsr-staff-banner .bsr-staff-banner__return:focus-visible{background:#EFECE6;color:#2F4237;outline:none;}
.bsr-staff-view #bsr-height-header,.bsr-staff-view #bsr-survey-header,.bsr-staff-view #bsr-nudge,.bsr-staff-view #bsr-survey-nudge,.bsr-staff-view #bsr-dob-nudge,.bsr-staff-view [data-open-survey],.bsr-staff-view [onclick*="bsrToggleHeightEdit"],.bsr-staff-view #bsr-cpg-weight,.bsr-staff-view #bsr-legacy-weight{display:none!important;}
@media(max-width:640px){#bsr-staff-banner .bsr-staff-banner__inner{padding:10px 14px;gap:10px;align-items:flex-start}#bsr-staff-banner .bsr-staff-banner__note{display:block;margin:2px 0 0}#bsr-staff-banner .bsr-staff-banner__return{min-height:36px;padding:7px 10px}}
@media print{#bsr-staff-banner{display:none!important;}}
/* Tabular numerals for any digit-display element — prevents values shifting horizontally as digits change across scans. */
#bsr-metrics,#bsr-cmp-detail,#bsr-progress,#bsr-lb-counter-wrap{font-variant-numeric:tabular-nums;}
@keyframes bsr-spin{to{transform:rotate(360deg)}}
@keyframes bsr-fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes bsr-slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
/* v2.4.4: attention pulse for incomplete Profile / Questionnaire pills in the header */
@keyframes bsr-attnPulse{0%,100%{box-shadow:0 0 0 0 rgba(4,48,51,0.35)}50%{box-shadow:0 0 0 6px rgba(4,48,51,0)}}
.bsr-pulse{animation:bsr-attnPulse 1.8s ease-in-out infinite;border-color:#043033 !important;background-color:rgba(4,48,51,0.08) !important;}
@keyframes bsr-countUp{from{opacity:0}to{opacity:1}}
@keyframes bsr-scaleIn{from{opacity:0;transform:scale(0.92)}to{opacity:1;transform:scale(1)}}
@keyframes bsr-accordionOpen{from{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:1500px;padding-top:16px;padding-bottom:16px}}
@keyframes bsr-accordionClose{from{opacity:1;max-height:1500px}to{opacity:0;max-height:0}}

/* v2.6.76: Customer verification dialog. This intentionally sits outside
   #bsr-app because the existing profile editor appends the dialog to <body>. */
#bsr-profile-modal,#bsr-profile-modal *,#bsr-profile-modal *::before,#bsr-profile-modal *::after{box-sizing:border-box;}
#bsr-profile-modal{
  position:fixed;inset:0;z-index:1000010;
  display:flex;align-items:center;justify-content:center;
  padding:clamp(12px,3vw,28px);
  background:rgba(47,66,55,.74);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  font-family:'Outfit',system-ui,-apple-system,sans-serif;
  animation:bsr-profile-backdrop-in .18s ease-out;
}
@keyframes bsr-profile-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes bsr-profile-card-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
#bsr-profile-card{
  position:relative;width:100%;max-width:520px;
  max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);
  overflow-y:auto;overscroll-behavior:contain;
  padding:clamp(22px,4vw,34px);
  background:#fff;border:1px solid rgba(216,210,199,.9);border-radius:18px;
  box-shadow:0 24px 72px rgba(28,28,26,.3);
  color:#2F4237;scrollbar-gutter:stable;
  animation:bsr-profile-card-in .22s ease-out;
}
#bsr-profile-card:not(.bsr-profile-card--onboarding){max-width:460px;}
.bsr-profile-close{
  position:absolute;top:12px;right:12px;
  display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;padding:0;border:0;border-radius:999px;
  background:transparent;color:#6B6960;font:400 26px/1 'Outfit',sans-serif;
  cursor:pointer;transition:background-color .16s ease,color .16s ease;
}
.bsr-profile-close:hover{background:#EFECE6;color:#2F4237;}
.bsr-profile-eyebrow{margin:0 0 8px;color:#9A6B1F;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;}
.bsr-profile-title{max-width:420px;margin:0;color:#2F4237;font-size:clamp(24px,5vw,30px);font-weight:600;letter-spacing:-.025em;line-height:1.12;}
.bsr-profile-card:not(.bsr-profile-card--onboarding) .bsr-profile-title{font-size:22px;}
.bsr-profile-description{max-width:440px;margin:10px 0 0;color:#5C6359;font-size:14px;line-height:1.55;}
.bsr-profile-assurance{
  display:flex;gap:10px;align-items:flex-start;margin:18px 0 22px;padding:12px 14px;
  background:#FAF7F2;border:1px solid #E5DED2;border-left:3px solid #B08B4F;border-radius:10px;
  color:#4D554D;font-size:12px;line-height:1.5;
}
.bsr-profile-assurance svg{flex:0 0 auto;margin-top:1px;color:#9A6B1F;}
#bsr-profile-form{margin:0;}
.bsr-profile-card--onboarding #bsr-profile-form{margin-top:20px;}
.bsr-profile-section{margin:0 0 18px;padding:18px;background:#FCFAF6;border:1px solid #E5DED2;border-radius:14px;}
.bsr-profile-section__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin:0 0 17px;}
.bsr-profile-section__title{margin:0;color:#2F4237;font-size:14px;font-weight:700;line-height:1.3;}
.bsr-profile-section__meta{display:block;margin-top:3px;color:#6B6960;font-size:11px;font-weight:400;line-height:1.35;}
.bsr-profile-badge{flex:0 0 auto;padding:4px 8px;background:#EFECE6;border-radius:999px;color:#596657;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;}
.bsr-profile-field{min-width:0;margin:0 0 17px;padding:0;border:0;}
.bsr-profile-field:last-child{margin-bottom:0;}
.bsr-profile-label,.bsr-profile-field>legend{display:block;width:100%;margin:0 0 7px;padding:0;color:#2F4237;font-size:12px;font-weight:700;letter-spacing:.025em;line-height:1.35;}
.bsr-profile-required{color:#9A6B1F;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;}
.bsr-profile-hint{display:block;margin-top:6px;color:#6B6960;font-size:11px;font-weight:400;line-height:1.45;}
.bsr-profile-height{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:10px;width:min(100%,234px);}
.bsr-profile-height__control{
  display:flex;align-items:center;min-width:0;min-height:44px;padding:0 11px;
  background:#fff;border:1px solid #CFC8BC;border-radius:9px;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.bsr-profile-height__control:hover{border-color:#6B7A5A;}
.bsr-profile-height__control:focus-within{border-color:#B08B4F;outline:3px solid rgba(176,139,79,.48);outline-offset:2px;box-shadow:0 0 0 1px #B08B4F;}
.bsr-profile-height__control:has(input[aria-invalid="true"]){border-color:#B45309;box-shadow:0 0 0 3px rgba(180,83,9,.13);}
.bsr-profile-height__unit{flex:0 0 auto;color:#6B6960;font-size:13px;font-weight:600;line-height:1;}
/* v2.7.37: ft/in or cm switch, aligned with the Height label. */
.bsr-profile-field--height{position:relative;}
/* The legend line is 16px tall plus a 7px gap; -30px centres the 30px switch on it. */
.bsr-profile-height-unit{position:absolute;top:-30px;right:0;}
#bsr-profile-modal .bsr-profile-height-unit .bsr-unit-toggle-btn{min-width:46px;min-height:28px;padding:4px 12px;}
.bsr-profile-height[hidden]{display:none!important;}
.bsr-profile-height--cm{grid-template-columns:minmax(0,1fr);width:min(100%,112px);}
/* The modal is appended to body, outside #bsr-app. Keep its accessible labels
   available to assistive technology even if Astra applies competing label rules. */
#bsr-profile-modal .bsr-sr-only{
  display:block!important;position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;
  white-space:nowrap!important;border:0!important;
}
#bsr-profile-modal input,#bsr-profile-modal select{
  min-height:44px;border:1px solid #CFC8BC;border-radius:9px;background:#fff;color:#2F4237;
  font:500 15px/1.2 'Outfit',sans-serif;transition:border-color .16s ease,box-shadow .16s ease;
}
#bsr-profile-modal input{padding:10px 11px;}
#bsr-profile-modal select{padding-top:10px!important;padding-bottom:10px!important;border-color:#CFC8BC!important;border-radius:9px!important;color:#2F4237!important;}
.bsr-profile-dob select{min-width:0;}
#bsr-profile-modal .bsr-profile-height input{
  flex:1 1 auto;width:0;min-width:0;min-height:42px;padding:10px 5px!important;
  border:0!important;border-radius:0;background:transparent;text-align:center;
  box-shadow:none!important;outline:0!important;font-variant-numeric:tabular-nums;
}
.bsr-profile-sex{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.bsr-profile-sex__button{
  min-height:44px;padding:10px 14px;border:1px solid #CFC8BC;border-radius:9px;
  background:#fff;color:#2F4237;font:600 14px/1.2 'Outfit',sans-serif;cursor:pointer;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}
.bsr-profile-sex__button:hover{border-color:#6B7A5A;background:#F7F5F0;}
.bsr-profile-sex__button.is-active{border-color:#2F4237;background:#2F4237;color:#fff;}
.bsr-profile-optional{margin:0 0 18px;border:1px solid #E5DED2;border-radius:12px;background:#fff;}
.bsr-profile-optional summary{padding:12px 14px;color:#4D554D;font-size:12px;font-weight:700;cursor:pointer;}
.bsr-profile-optional__body{padding:4px 14px 15px;}
.bsr-profile-field--weight[hidden]{display:none!important;}
.bsr-profile-field--weight{margin:0 0 18px;padding:17px 18px;background:#F4F6F2;border:1px solid #CAD2C5;border-radius:14px;}
.bsr-profile-weight-row{display:flex;align-items:center;gap:8px;}
#bsr-hdr-weight{width:128px;font-variant-numeric:tabular-nums;}
#bsr-hdr-weight-unit{color:#4D554D;font-size:13px;font-weight:700;}
#bsr-profile-weight-context{margin:0 0 10px;color:#596657;font-size:12px;line-height:1.45;}
.bsr-profile-actions{margin-top:4px;}
#bsr-profile-msg{min-height:20px;margin:0 0 8px;color:#9A3412;font-size:12px;font-weight:600;line-height:1.45;}
.bsr-profile-save{
  width:100%;min-height:48px;padding:12px 18px;border:1px solid #2F4237;border-radius:10px;
  background:#2F4237;color:#fff;font:700 14px/1.2 'Outfit',sans-serif;letter-spacing:.01em;
  cursor:pointer;transition:background-color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.bsr-profile-save:hover{background:#243429;border-color:#243429;}
.bsr-profile-save:active{transform:translateY(1px);}
.bsr-profile-privacy{margin:11px auto 0;max-width:390px;color:#6B6960;font-size:10px;line-height:1.45;text-align:center;}
#bsr-profile-modal button:focus-visible,#bsr-profile-modal input:focus-visible,#bsr-profile-modal select:focus-visible,#bsr-profile-modal summary:focus-visible{
  outline:3px solid rgba(176,139,79,.48);outline-offset:2px;box-shadow:0 0 0 1px #B08B4F;
}
#bsr-profile-modal [aria-invalid="true"]{border-color:#B45309!important;box-shadow:0 0 0 3px rgba(180,83,9,.13);}
@media(max-width:560px){
  #bsr-profile-modal{
    align-items:center;justify-content:center;width:100%;max-width:100vw;min-width:0;height:100vh;height:100dvh;
    padding:calc(14px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left));
    overflow:hidden;background:rgba(47,66,55,.8);
  }
  #bsr-profile-card{
    width:100%;max-width:520px!important;min-width:0;
    max-height:calc(100vh - 28px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    max-height:calc(100dvh - 28px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    padding:clamp(20px,6vw,26px) clamp(14px,4.5vw,22px);
    overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;
    border:1px solid rgba(216,210,199,.9);border-radius:18px;scrollbar-gutter:auto;
  }
  #bsr-profile-form,.bsr-profile-section,.bsr-profile-optional,.bsr-profile-actions{width:100%;max-width:100%;min-width:0;}
  .bsr-profile-section__head,.bsr-profile-sex,.bsr-profile-dob,.bsr-profile-weight-row{width:100%;max-width:100%;min-width:0;}
  .bsr-profile-height{max-width:234px;min-width:0;}
  .bsr-profile-height__control,.bsr-profile-sex__button,#bsr-profile-modal input,#bsr-profile-modal select{max-width:100%;min-width:0;}
  #bsr-profile-modal input,#bsr-profile-modal select{font-size:16px!important;}
  .bsr-profile-title{padding-right:22px;}
  .bsr-profile-card--onboarding #bsr-profile-form{margin-top:18px;}
  .bsr-profile-section{padding:16px 14px;}
  .bsr-profile-section__head{display:block;}
  .bsr-profile-badge{display:inline-block;margin-top:8px;}
  .bsr-profile-height{gap:10px;}
  .bsr-profile-weight-row{align-items:stretch;}
  #bsr-hdr-weight{width:100%;}
  #bsr-hdr-weight-unit{align-self:center;}
}
@media(prefers-reduced-motion:reduce){
  #bsr-profile-modal,#bsr-profile-card{animation:none!important;}
  #bsr-profile-modal button,#bsr-profile-modal input,#bsr-profile-modal select{transition:none!important;}
  .bsr-profile-save:active{transform:none;}
}
#bsr-metrics div[id^="bsr-card-"]{transition:box-shadow 0.2s,transform 0.2s,border-radius 0.15s;}
#bsr-metrics div[id^="bsr-card-"]:hover{box-shadow:0 4px 16px rgba(0,0,0,0.1);transform:translateY(-2px);}
#bsr-metrics div[id^="bsr-card-"]:active{transform:translateY(0) scale(0.985);}
#bsr-metrics .bsr-card-wrap>[role="button"]:focus-visible{outline:3px solid #B08B4F;outline-offset:3px;}
/* v2.6.85: permanent scan education + concise metric explanations. */
#bsr-app .bsr-scan-guide{
  width:100%;margin:16px 0 0;padding:16px 18px;box-sizing:border-box;
  border:1px solid rgba(47,66,55,.14);border-radius:14px;background:#fff;
  color:#2F4237;font-family:'Outfit',sans-serif;
}
#bsr-app .bsr-scan-guide:empty{display:none;}
#bsr-app .bsr-scan-guide__head{margin-bottom:13px;}
#bsr-app .bsr-scan-guide__title{margin:0;color:#2F4237;font-size:15px;font-weight:700;letter-spacing:-.01em;line-height:1.3;}
#bsr-app .bsr-scan-guide__details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;}
#bsr-app .bsr-scan-guide__detail{min-width:0;padding:9px 10px;border:1px solid rgba(47,66,55,.1);border-radius:9px;background:#FAF7F2;}
#bsr-app .bsr-scan-guide__detail-label{display:block;margin:0 0 3px;color:#6B7A5A;font-size:9px;font-weight:700;letter-spacing:.07em;line-height:1.25;text-transform:uppercase;}
#bsr-app .bsr-scan-guide__detail-value{display:block;margin:0;overflow-wrap:anywhere;color:#2F4237;font-size:11.5px;font-weight:700;line-height:1.35;font-variant-numeric:tabular-nums;}
#bsr-app .bsr-scan-guide__note{margin:10px 0 0;padding-top:9px;border-top:1px solid rgba(47,66,55,.1);color:#6B7A5A;font-size:10.5px;line-height:1.45;}
#bsr-app .bsr-scan-guide__note strong{color:#2F4237;font-weight:700;}
#bsr-app .bsr-scan-guide__legend{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;padding-top:11px;border-top:1px solid rgba(47,66,55,.1);}
#bsr-app .bsr-scan-guide__legend-title{flex:0 0 auto;color:#2F4237;font-size:10.5px;font-weight:700;line-height:1.3;}
#bsr-app .bsr-scan-guide__legend-items{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px 12px;margin:0;padding:0;list-style:none;}
#bsr-app .bsr-scan-guide__legend-item{display:inline-flex;align-items:center;gap:5px;color:#6B7A5A;font-size:10.5px;font-weight:600;line-height:1.3;white-space:nowrap;}
#bsr-app .bsr-scan-guide__swatch{display:inline-block;width:9px;height:9px;box-sizing:border-box;border:1px solid rgba(47,66,55,.18);border-radius:3px;background:#EFECE6;}
#bsr-app .bsr-scan-guide__swatch.is-muscle{background:#FF0000;}
#bsr-app .bsr-scan-guide__swatch.is-fat{background:#DAA520;}
#bsr-app .bsr-scan-guide__swatch.is-bone{background:#0096FF;}
#bsr-app .bsr-explain__eyebrow{margin:0 0 6px;color:#6B7A5A;font-family:'Outfit',sans-serif;font-size:9.5px;font-weight:700;letter-spacing:.1em;line-height:1.2;text-transform:uppercase;}
#bsr-app .bsr-explain__callout{margin:0 0 16px;padding:13px 15px;border:1px solid rgba(176,139,79,.3);border-left:3px solid #B08B4F;border-radius:10px;background:#FAF7F2;color:#4D554D;font-family:'Outfit',sans-serif;}
#bsr-app .bsr-explain__copy{margin:0;color:#4D554D;font-family:'Outfit',sans-serif;font-size:12.5px;line-height:1.55;}
#bsr-app .bsr-explain__copy strong{color:#2F4237;font-weight:700;}
#bsr-app .bsr-explain__copy + .bsr-explain__callout{margin-top:12px;}
#bsr-app .bsr-explain__link{display:inline-block;margin-top:7px;color:#2F4237;font-size:12px;font-weight:700;line-height:1.45;text-decoration:underline;text-decoration-color:#B08B4F;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .18s ease,text-decoration-color .18s ease;}
#bsr-app .bsr-explain__link:hover{color:#6B7A5A;text-decoration-color:#6B7A5A;}
#bsr-app .bsr-explain__link:focus-visible{outline:3px solid rgba(176,139,79,.55);outline-offset:3px;border-radius:2px;}
@media(max-width:440px){
  #bsr-app .bsr-scan-guide{padding:14px;}
  #bsr-app .bsr-scan-guide__details{grid-template-columns:repeat(2,minmax(0,1fr));}
  #bsr-app .bsr-scan-guide__legend{display:block;}
  #bsr-app .bsr-scan-guide__legend-items{justify-content:flex-start;margin-top:7px;}
  #bsr-app .bsr-explain__callout{padding:12px 13px;}
}
@media(max-width:340px){
  #bsr-app .bsr-scan-guide__details{grid-template-columns:1fr;}
}
/* v2.6.86: compact scan history beneath metric trend charts. */
#bsr-app .bsr-history{
  margin:10px 0 2px;overflow:hidden;border:1px solid rgba(47,66,55,.14);
  border-radius:10px;background:#fff;color:#2F4237;font-family:'Outfit',sans-serif;
}
#bsr-app .bsr-history__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-bottom:1px solid rgba(47,66,55,.1);background:#FAF7F2;}
#bsr-app .bsr-history__title{margin:0;color:#2F4237;font-size:10.5px;font-weight:700;letter-spacing:.06em;line-height:1.3;text-transform:uppercase;}
#bsr-app .bsr-history__count{display:inline-flex;align-items:center;justify-content:center;min-width:23px;padding:3px 7px;border:1px solid rgba(176,139,79,.24);border-radius:999px;background:#EFECE6;color:#2F4237;font-size:9.5px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;white-space:nowrap;}
#bsr-app .bsr-history__scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#D8D2C7 transparent;}
#bsr-app .bsr-history__scroll:focus-visible{outline:2px solid #B08B4F;outline-offset:-2px;}
#bsr-app .bsr-history__table{width:100%;min-width:300px;margin:0;border:0;border-collapse:collapse;table-layout:fixed;background:#fff;color:#2F4237;font-family:'Outfit',sans-serif;}
#bsr-app .bsr-history__table th,#bsr-app .bsr-history__table td{padding:8px 10px;border:0;border-bottom:1px solid rgba(47,66,55,.09);vertical-align:middle;font-size:10.5px;line-height:1.35;}
#bsr-app .bsr-history__table thead th{background:#fff;color:#6B7A5A;font-size:8.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;}
#bsr-app .bsr-history__table th:first-child,#bsr-app .bsr-history__table td:first-child{width:42%;text-align:left;}
#bsr-app .bsr-history__table th:nth-child(2),#bsr-app .bsr-history__table td:nth-child(2),#bsr-app .bsr-history__table th:nth-child(3),#bsr-app .bsr-history__table td:nth-child(3){width:29%;text-align:right;}
#bsr-app .bsr-history__table tbody tr:last-child th,#bsr-app .bsr-history__table tbody tr:last-child td{border-bottom:0;}
#bsr-app .bsr-history__date{color:#6B7A5A;font-weight:600;white-space:nowrap;}
#bsr-app .bsr-history__value,#bsr-app .bsr-history__change{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
#bsr-app .bsr-history__value{color:#2F4237;font-weight:700;}
#bsr-app .bsr-history__change{color:#6B7A5A;font-weight:600;}
#bsr-app .bsr-history__table tr.is-current{background:rgba(176,139,79,.09);}
#bsr-app .bsr-history__table tr.is-current > :first-child{box-shadow:inset 2px 0 0 #B08B4F;}
#bsr-app .bsr-history__table tr.is-current .bsr-history__date,#bsr-app .bsr-history__table tr.is-current .bsr-history__value{color:#2F4237;}
#bsr-app .bsr-history__change.is-up{color:#2F4237;}
#bsr-app .bsr-history__change.is-down{color:#6B7A5A;}
#bsr-app .bsr-history__change.is-neutral{color:#77736B;}
#bsr-app .bsr-history__change.is-incomparable{color:#8D8A83;font-weight:500;}
#bsr-app .bsr-history a:focus-visible,#bsr-app .bsr-history button:focus-visible{outline:2px solid #B08B4F;outline-offset:2px;}
@media(max-width:440px){
  #bsr-app .bsr-history__head{padding:8px 9px;}
  #bsr-app .bsr-history__table{min-width:280px;}
  #bsr-app .bsr-history__table th,#bsr-app .bsr-history__table td{padding:7px 8px;font-size:10px;}
  #bsr-app .bsr-history__table thead th{font-size:8px;letter-spacing:.055em;}
  #bsr-app .bsr-history__date{white-space:normal;}
}
#bsr-clinical-toggle:hover{box-shadow:0 4px 16px rgba(0,0,0,0.1) !important;transform:translateY(-2px);}
#bsr-clinical-toggle{transition:box-shadow 0.2s,transform 0.2s !important;}
@keyframes bsr-cmpSlideLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}
@keyframes bsr-cmpSlideRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}
@keyframes bsr-cmpFadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes bsr-cmpPulse{0%{transform:scale(0.95);opacity:0}60%{transform:scale(1.02);opacity:1}100%{transform:scale(1);opacity:1}}
/* Dark select styling for compare dropdowns */
#bsr-lb-compare select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:10px;padding-right:28px;}
#bsr-lb-compare select option{background:#1a2a2c;color:white;padding:8px;}
#bsr-header select option{background:#ffffff;color:#043033;padding:8px;}
#bsr-scan-wrap:hover{transform:scale(1.015);box-shadow:0 8px 24px rgba(0,0,0,0.12)!important;}
#bsr-progress div[style*="inline-flex"]{transition:transform 0.2s;}
#bsr-progress div[style*="inline-flex"]:hover{transform:scale(1.05);}
#bsr-header select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23043033' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:10px;padding-right:28px;}
/* v2.4.6: Header name squeeze fix — ensure greeting can truncate cleanly instead of collapsing one letter per line. */
#bsr-greeting{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;}
#bsr-header .bsr-greeting-wrap{min-width:0;overflow:hidden;}
#bsr-header .bsr-greeting-wrap>div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
/* Narrow mobile: drop the greeting + divider entirely so the pill row (Profile / Questionnaire / Logout) gets full width. */
@media (max-width:560px){
  #bsr-header .bsr-greeting-wrap{display:none !important;}
  #bsr-header .bsr-logo-divider{display:none !important;}
  #bsr-header{padding:12px 14px 10px !important;}
  #bsr-header .bsr-row1{gap:8px !important;}
}
/* v2.4.6: Body Composition Map — side-by-side silhouette + stats on every viewport so data never hides under the figure. */
#bsr-silhouette-card .bsr-silh-layout{display:flex;gap:24px;align-items:flex-start;flex-wrap:nowrap;}
#bsr-silhouette-card .bsr-silh-figure{flex:0 0 200px;max-width:220px;}
#bsr-silhouette-card .bsr-silh-detail{flex:1 1 0;min-width:0;}
@media (max-width:640px){
  #bsr-silhouette-card .bsr-silh-layout{gap:12px;}
  #bsr-silhouette-card .bsr-silh-figure{flex:0 0 118px;max-width:118px;}
  #bsr-silhouette-card .bsr-silh-figure svg{max-height:260px !important;}
  #bsr-silhouette-card{padding:16px 14px !important;}
  #bsr-silhouette-card .bsr-silh-legend{gap:6px !important;font-size:9px !important;}
}

/* ═══════════════════════════════════════════════════════════════
   v2.4.8 — percentile badges
   Rendered as a pill in the top-right of each metric card header.
   JS writes the ordinal number (e.g. "72nd") + a tooltip child.
   Color semantics:
     .bsr-pct-good  — on-target direction (green)
     .bsr-pct-mid   — middle third, neutral slate
     .bsr-pct-warn  — off-target direction (soft amber — never red)
   ═══════════════════════════════════════════════════════════════ */
.bsr-pct-badge{
  display:inline-flex;align-items:center;justify-content:center;gap:4px;
  padding:4px 10px;border-radius:999px;
  font-family:'Outfit',sans-serif;font-size:11px;font-weight:600;
  letter-spacing:0.02em;line-height:1;white-space:nowrap;
  background:rgba(107,122,138,0.10);color:#6b7a8a;
  position:relative;cursor:default;
  transition:background-color .15s ease-out,color .15s ease-out;
}
.bsr-pct-good{background:rgba(15,124,80,0.10);color:#0f7c50;}
.bsr-pct-mid {background:rgba(107,122,138,0.10);color:#6b7a8a;}
.bsr-pct-warn{background:rgba(181,107,28,0.10);color:#b56b1c;}
.bsr-pct-tip{
  position:absolute;bottom:calc(100% + 6px);right:0;
  background:#043033;color:#fff;
  font-family:'Outfit',sans-serif;font-size:12px;font-weight:500;
  letter-spacing:0;line-height:1.35;
  white-space:normal;text-align:center;max-width:220px;
  padding:6px 10px;border-radius:8px;
  box-shadow:0 2px 8px rgba(0,0,0,0.18);
  opacity:0;pointer-events:none;transition:opacity .15s ease-out;
  z-index:10;
}
.bsr-pct-tip.bsr-tip-visible{opacity:1;pointer-events:auto;}
@media (max-width:540px){
  .bsr-pct-badge{font-size:10px;padding:3px 8px;}
  .bsr-pct-tip{font-size:11px;padding:5px 8px;max-width:180px;}
}
#bsr-app .bsr-dist{margin:18px 0 4px;padding:18px;border:1px solid rgba(47,66,55,.14);border-radius:14px;background:#fff;color:#2F4237;font-family:'Outfit',sans-serif;box-shadow:0 1px 3px rgba(47,66,55,.04);}
#bsr-app .bsr-dist__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;}
#bsr-app .bsr-dist__eyebrow{margin:0 0 3px;color:#6B7A5A;font-size:10px;font-weight:700;letter-spacing:.11em;line-height:1.2;text-transform:uppercase;}
#bsr-app .bsr-dist__title{margin:0;color:#2F4237;font-size:17px;font-weight:700;letter-spacing:-.01em;line-height:1.25;}
#bsr-app .bsr-dist__hint{max-width:250px;margin:1px 0 0;color:#88867f;font-size:10.5px;line-height:1.4;text-align:right;}
#bsr-app .bsr-dist__plot{position:relative;padding:32px 0 0;}
#bsr-app .bsr-dist__bars{position:relative;z-index:2;display:grid;grid-template-columns:repeat(var(--bsr-dist-columns),minmax(0,1fr));align-items:end;gap:5px;height:124px;border-bottom:1px solid #D8D2C7;}
#bsr-app .bsr-dist__bin{display:flex;align-items:flex-end;width:100%;height:100%;min-width:0;margin:0;padding:0 1px;border:0;border-radius:3px 3px 0 0;background:transparent;box-shadow:none;cursor:pointer;touch-action:manipulation;}
#bsr-app .bsr-dist__bar{display:block;width:100%;height:var(--bsr-dist-height);min-height:4px;border-radius:3px 3px 0 0;background:#D8D2C7;transition:height .18s ease-out,background-color .16s ease-out,opacity .16s ease-out;}
#bsr-app .bsr-dist__bin.is-you .bsr-dist__bar{background:#9BA38F;}
#bsr-app .bsr-dist__bin:hover .bsr-dist__bar,#bsr-app .bsr-dist__bin:focus-visible .bsr-dist__bar,#bsr-app .bsr-dist__bin.is-active .bsr-dist__bar{background:#2F4237;}
#bsr-app .bsr-dist__bin:focus-visible{outline:2px solid #B08B4F;outline-offset:3px;}
#bsr-app .bsr-dist__marker{position:absolute;z-index:4;top:17px;bottom:0;left:var(--bsr-dist-marker);width:1px;background:#B08B4F;pointer-events:none;}
#bsr-app .bsr-dist__marker::after{content:'';position:absolute;top:13px;left:50%;width:7px;height:7px;border:2px solid #fff;border-radius:50%;background:#B08B4F;box-shadow:0 1px 4px rgba(47,66,55,.2);transform:translate(-50%,-50%);}
#bsr-app .bsr-dist__you{position:absolute;top:-17px;left:50%;padding:3px 7px;border-radius:999px;background:#B08B4F;color:#fff;font-size:9px;font-weight:700;letter-spacing:.06em;line-height:1;text-transform:uppercase;white-space:nowrap;transform:translateX(-50%);}
#bsr-app .bsr-dist__marker.is-left .bsr-dist__you{left:0;transform:none;}
#bsr-app .bsr-dist__marker.is-right .bsr-dist__you{left:auto;right:0;transform:none;}
#bsr-app .bsr-dist__reference{position:absolute;z-index:3;top:32px;bottom:18px;left:var(--bsr-dist-reference);width:0;border-left:1px solid transparent;pointer-events:none;}
#bsr-app .bsr-dist__reference.is-average{border-left-color:#2F4237;}
#bsr-app .bsr-dist__reference.is-median{z-index:4;border-left:1px dashed #6B7A5A;}
#bsr-app .bsr-dist__axis{display:flex;justify-content:space-between;gap:12px;margin-top:6px;color:#96938c;font-size:10px;font-variant-numeric:tabular-nums;}
#bsr-app .bsr-dist__summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 0;color:#6B7A5A;font-family:'Outfit',sans-serif;font-variant-numeric:tabular-nums;}
#bsr-app .bsr-dist__stat{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:3px;padding:8px 10px;border:1px solid rgba(47,66,55,.1);border-radius:9px;background:#FAF7F2;font-size:10.5px;line-height:1.35;}
#bsr-app .bsr-dist__stat-key{display:inline-flex;align-items:center;min-width:0;color:#6B7A5A;white-space:nowrap;}
#bsr-app .bsr-dist__stat-key::before{content:'';flex:0 0 13px;width:13px;height:0;margin-right:6px;border-top:1px solid #2F4237;}
#bsr-app .bsr-dist__stat.is-median .bsr-dist__stat-key::before,#bsr-app .bsr-dist__stat-key.is-median::before{border-top:1px dashed #6B7A5A;}
#bsr-app .bsr-dist__stat-value{margin-left:19px;color:#2F4237;font-size:11.5px;font-weight:700;white-space:nowrap;}
#bsr-app .bsr-dist__readout{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-height:39px;margin:14px 0 0;padding:10px 12px;border:1px solid rgba(47,66,55,.1);border-radius:10px;background:#F7F5F1;font-variant-numeric:tabular-nums;}
#bsr-app .bsr-dist__summary + .bsr-dist__readout{margin-top:10px;}
#bsr-app .bsr-dist__read-range{color:#2F4237;font-size:13px;font-weight:700;}
#bsr-app .bsr-dist__read-stats{color:#6B7A5A;font-size:11.5px;font-weight:600;text-align:right;}
#bsr-app .bsr-dist__caption{margin:14px 0 0;color:#8d8a83;font-size:10.5px;line-height:1.5;}
#bsr-app .bsr-dist .bsr-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;}
#bsr-app .bsr-dist-unavailable{margin:12px 0 4px;padding:10px 12px;border:1px solid rgba(107,122,90,.18);border-radius:10px;background:#fff;color:#6B7A5A;font-family:'Outfit',sans-serif;font-size:11.5px;line-height:1.5;}
@media (max-width:540px){
  #bsr-app .bsr-dist{padding:15px 12px;}
  #bsr-app .bsr-dist__head{display:block;margin-bottom:10px;}
  #bsr-app .bsr-dist__hint{max-width:none;margin-top:5px;text-align:left;}
  #bsr-app .bsr-dist__plot{padding-top:30px;}
  #bsr-app .bsr-dist__bars{gap:3px;height:110px;}
  #bsr-app .bsr-dist__reference{top:30px;}
  #bsr-app .bsr-dist__readout{display:block;}
  #bsr-app .bsr-dist__read-stats{display:block;margin-top:2px;text-align:left;}
}
@media (max-width:360px){
  #bsr-app .bsr-dist__bars{gap:2px;}
  #bsr-app .bsr-dist__summary{grid-template-columns:1fr;gap:5px;}
}
@media (prefers-reduced-motion:reduce){#bsr-app .bsr-dist__bar{transition:none;}}
/* v2.5.45 — Chart detail page: tighten card padding + margin on mobile so the
   plot area actually uses the screen width. The default 20px horizontal padding
   + default card margin was eating ~60px of space with a narrow plot inside. */
@media (max-width:768px){
  .bsr-chart-card{padding:12px 10px 8px !important;margin-bottom:12px !important;border-radius:10px !important;}
  #bsr-cpg-body{padding:14px 10px 60px !important;}
  #bsr-cpg-topbar{padding:10px 12px !important;}
  /* v2.5.47 — Training Zones card: the 5-column grid crushes "Endurance",
     "Vigorous", "Maximal" into two-line wraps on narrow screens. Shrink the
     zone-name font and kill the letter-spacing so each name fits on one line. */
  .bsr-zone-head{padding:8px 4px !important;}
  .bsr-zone-name{font-size:9px !important;letter-spacing:0 !important;line-height:1.15 !important;}
}
@media (max-width:480px){
  .bsr-zone-name{font-size:8px !important;}
}

/* v2.6.31 — Comprehensive Body Map + adjacent full-width sections.
   2-col internal layout collapses to 1-col under 920px so tables and
   charts get full mobile width. */
@media (max-width:920px){
  .bsr-bodymap-grid{grid-template-columns:1fr !important;}
  .bsr-fitwhere-grid{grid-template-columns:1fr !important;}
  .bsr-zonebars-grid{grid-template-columns:1fr !important;}
}

/* v2.6.32 — Mobile QA pass for Clinical-Luxe sections.
   Tightens padding, shrinks editorial typography, drops table min-width,
   stacks heading + side-note, makes zone-bar threshold labels readable
   on 360-414px phones. Targets the 4 new sections by ID so existing
   cards keep their current breakpoints. */
@media (max-width:640px){
  /* Outer Clinical-Luxe section wrappers (bone bg, rounded). */
  #bsr-bodymap > div,
  #bsr-trends > div,
  #bsr-fitwhere > div,
  #bsr-zonebars > div{padding:18px 14px !important;border-radius:14px !important;}

  /* Inner white cards inside those sections. */
  #bsr-bodymap .bsr-cl-card,
  #bsr-bodymap > div > div > div[style*="background:white"],
  #bsr-trends > div > div[style*="background:white"],
  #bsr-fitwhere .bsr-fitwhere-grid > div,
  #bsr-zonebars .bsr-zonebars-grid > div{padding:16px 14px !important;}

  /* Editorial h2 lines — shrink for narrow screens. */
  #bsr-bodymap [style*="font-family:Outfit"][style*="font-size:26px"],
  #bsr-fitwhere [style*="font-family:Outfit"][style*="font-size:26px"],
  #bsr-zonebars [style*="font-family:Outfit"][style*="font-size:26px"]{font-size:19px !important;line-height:1.2 !important;}
  #bsr-trends [style*="font-family:Outfit"][style*="font-size:24px"],
  #bsr-bodymap [style*="font-family:Outfit"][style*="font-size:22px"],
  #bsr-fitwhere [style*="font-family:Outfit"][style*="font-size:22px"],
  #bsr-zonebars [style*="font-family:Outfit"][style*="font-size:22px"]{font-size:17px !important;line-height:1.2 !important;}

  /* Heading + side-note row: stack vertically, side-note becomes a
     left-aligned subtitle in sage italic instead of right-aligned. */
  #bsr-bodymap > div > div:first-child,
  #bsr-trends > div > div:first-child,
  #bsr-fitwhere > div > div:first-child,
  #bsr-zonebars > div > div:first-child{flex-direction:column !important;align-items:flex-start !important;gap:8px !important;}
  #bsr-bodymap > div > div:first-child > div:last-child,
  #bsr-trends > div > div:first-child > div:last-child,
  #bsr-fitwhere > div > div:first-child > div:last-child,
  #bsr-zonebars > div > div:first-child > div:last-child{text-align:left !important;max-width:100% !important;font-size:11px !important;}

  /* Regional body-composition table — strip min-width and reduce cell
     padding/font so the 5 columns fit in ~310px without horizontal scroll. */
  #bsr-bodymap table{min-width:0 !important;font-size:11px !important;}
  #bsr-bodymap table th{padding:7px 4px !important;font-size:9px !important;letter-spacing:0.3px !important;}
  #bsr-bodymap table td{padding:7px 4px !important;}
  #bsr-bodymap table td:first-child{padding-left:6px !important;}
  /* Indented L/R rows on mobile use a smaller indent. */
  #bsr-bodymap table tr td:first-child[style*="padding:9px 8px 9px 20px"]{padding-left:14px !important;}

  /* Symmetry / Fat-Mass-Ratios: shrink large numbers slightly. */
  #bsr-bodymap [style*="font-size:32px"]{font-size:26px !important;}
  #bsr-bodymap [style*="font-size:28px"]{font-size:22px !important;}
  #bsr-bodymap [style*="font-size:24px"]{font-size:20px !important;}

  /* Trend chart: shorter on mobile so the labels and 3-series legend
     fit without taking half the screen height. */
  #bsr-trends [style*="height:320px"]{height:240px !important;}

  /* Zone-bar threshold labels — smaller font + tight tracking so the
     three (BMD) / four (BMI) labels don't collide. */
  #bsr-zonebars [style*="font-size:10px"]{font-size:9px !important;}

  /* BMI / BMD legend row — wrap if needed. */
  #bsr-zonebars > div > div:nth-child(2) > div > div > div[style*="display:flex"][style*="gap:"]{gap:4px !important;}

  /* Athletic Comparison row "Football (linemen)" can run long — shrink
     font slightly and tighten padding so it doesn't wrap into 2 lines. */
  #bsr-fitwhere [style*="border-radius:9px"]{padding:7px 10px !important;}
}

/* Extra-narrow phones (≤380px): make the regional table even more compact. */
@media (max-width:380px){
  #bsr-bodymap table{font-size:10px !important;}
  #bsr-bodymap table th{font-size:8px !important;padding:6px 3px !important;}
  #bsr-bodymap table td{padding:6px 3px !important;}
}

/* ═══════════════════════════════════════════════════════════
   v2.5.70 — Print stylesheet (Clinical Luxe premium report)
   Native browser print for main dashboard + cardio detail.
   ═══════════════════════════════════════════════════════════ */
/* Original PDF reports — a calm, dedicated library rather than a buried accordion. */
#bsr-panel-reports{padding:12px 0 44px;}
#bsr-report-archive[hidden]{display:none !important;}
#bsr-report-archive{
  max-width:840px;margin:0;color:#1C1C1A;
  font-family:'Outfit',sans-serif;
}
.bsr-report-archive-header{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  padding:10px 4px 24px;
}
.bsr-report-archive-heading{min-width:0;}
.bsr-report-archive-title{
  margin:0;color:#2F4237;font-size:28px;font-weight:600;
  letter-spacing:-.02em;line-height:1.15;
}
.bsr-report-archive-intro{
  max-width:620px;margin:9px 0 0;color:#6B7A5A;
  font-size:14px;font-weight:400;line-height:1.55;
}
#bsr-report-archive-count{
  flex:0 0 auto;padding-bottom:2px;color:#6B7A5A;
  font-size:11px;font-weight:500;letter-spacing:.02em;white-space:nowrap;
}
.bsr-report-archive-body{border-top:1px solid #D8D2C7;}
#bsr-report-archive-status{
  min-height:0;padding:17px 4px 8px;color:#6B7A5A;
  font-size:12px;font-weight:400;line-height:1.5;
}
#bsr-report-archive-status:empty{display:none;}
.bsr-report-list{margin:0;padding:0;border-bottom:1px solid #D8D2C7;}
.bsr-report-list:empty{display:none;}
.bsr-report-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;gap:8px 24px;padding:18px 4px;
  border-top:1px solid rgba(216,210,199,.78);
}
.bsr-report-row:first-child{border-top:0;}
.bsr-report-row>div{display:contents;}
.bsr-report-kind{
  min-width:0;color:#1C1C1A;font-size:14px;font-weight:500;
  line-height:1.4;overflow-wrap:anywhere;
}
.bsr-report-date{color:#6B7A5A;font-size:12px;font-weight:400;line-height:1.4;white-space:nowrap;}
.bsr-report-link{
  display:inline-flex;align-items:center;justify-content:center;min-height:36px;
  color:#2F4237;text-decoration-line:underline;
  text-decoration-color:rgba(176,139,79,.7);text-decoration-thickness:1px;
  text-underline-offset:4px;font-size:12px;font-weight:600;line-height:1.3;
  white-space:nowrap;transition:color .16s ease-out,text-decoration-color .16s ease-out;
}
.bsr-report-link:hover{color:#B08B4F;text-decoration-color:#B08B4F;}
.bsr-report-link:focus-visible{
  outline:2px solid #B08B4F;outline-offset:4px;border-radius:3px;
}
@media (max-width:480px){
  #bsr-panel-reports{padding-top:4px;padding-bottom:36px;}
  .bsr-report-archive-header{align-items:flex-start;flex-direction:column;gap:12px;padding:8px 2px 20px;}
  .bsr-report-archive-title{font-size:23px;}
  .bsr-report-archive-intro{font-size:13px;}
  #bsr-report-archive-count{padding:0;font-size:10.5px;}
  #bsr-report-archive-status{padding-right:2px;padding-left:2px;}
  .bsr-report-row{
    grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;padding:15px 2px;
  }
  .bsr-report-kind{grid-column:1;grid-row:1;}
  .bsr-report-date{grid-column:1;grid-row:2;}
  .bsr-report-link{grid-column:2;grid-row:1 / span 2;min-height:44px;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-report-link{transition:none !important;}
}

.bsr-print-cover{display:none;}
.bsr-print-only{display:none;}

@page{size:letter;margin:14mm;}

@media print{
  /* Hide theme chrome + every non-dashboard page element */
  .astra-header,#masthead,header.site-header,#ast-fixed-header,
  .ast-mobile-header-wrap,.site-footer,#colophon,footer[role="contentinfo"],
  .ast-header-break-point,.main-header-bar-wrap,.ast-scroll-to-top,
  .menu-toggle,.ast-mobile-menu-buttons{display:none !important;}

  /* Collapse Astra content wrappers so dashboard prints edge-to-edge */
  body,html{background:#ffffff !important;color:#031530 !important;
    font-family:'Outfit','Helvetica Neue',Helvetica,Arial,sans-serif !important;
    -webkit-print-color-adjust:exact !important;print-color-adjust:exact !important;}
  #page,#content,.site-content,.ast-container,.entry-content,.ast-article-single,
  .ast-article-post,main#primary,article.post,.entry-header{padding:0 !important;
    margin:0 !important;max-width:none !important;width:100% !important;background:#fff !important;}

  /* Hide all dashboard chrome (buttons, selectors, banners, modals/overlays) */
  #bsr-loading-shell,#bsr-lightbox,#bsr-share-overlay,#bsr-ai-modal,
  #bsr-scan-select,#bsr-ai-btn,#bsr-human-btn,#bsr-main-compare,
  #bsr-survey-pill,#bsr-nudge,#bsr-survey-nudge,#bsr-dob-nudge,
  .bsr-scan-selector,.bsr-cta-buttons,.bsr-nudge,.bsr-share-btn,.bsr-print-btn,
  #bsr-header a[href*="logout"],#bsr-cpg-share,#bsr-cpg-back,
  .bsr-cardio-detail-btn,#bsr-report-archive{display:none !important;}

  /* Show the print cover */
  .bsr-print-cover{display:block !important;page-break-after:always;break-after:page;}
  .bsr-print-only{display:block !important;}

  /* MAIN-PRINT: hide the cardio modal + cardio subpage */
  body.bsr-printing-main #bsr-cardio-modal{display:none !important;}
  body.bsr-printing-main #bsr-cardio-page{display:none !important;}
  body.bsr-printing-main #bsr-print-cover-cardio{display:none !important;}

  /* CARDIO-PRINT (v2.5.76): hide main dashboard + modal, print the actual
     VO2/RMR subpage content. Previous versions tried to print #bsr-cardio-modal
     which was empty once the UI moved to a full-page subpage — result was a
     blank PDF after the cover. */
  body.bsr-printing-cardio #bsr-header,
  body.bsr-printing-cardio #bsr-main,
  body.bsr-printing-cardio #bsr-cardio-modal,
  body.bsr-printing-cardio #bsr-print-cover-main{display:none !important;}
  body.bsr-printing-cardio #bsr-cardio-page{display:block !important;
    background:#fff !important;min-height:0 !important;padding:0 !important;}
  /* Strip the sticky top bar (Dashboard back button + action buttons) in print */
  body.bsr-printing-cardio #bsr-cpg-topbar{display:none !important;}
  body.bsr-printing-cardio #bsr-cpg-body{max-width:none !important;
    padding:0 !important;margin:0 !important;}

  /* Card/region page-break safety */
  .bsr-metric-card,.bsr-comparison-row,.bsr-chart-wrap,.bsr-card,
  #bsr-main section,#bsr-cardio-detail-body > *{
    break-inside:avoid !important;page-break-inside:avoid !important;}
  canvas{max-width:100% !important;height:auto !important;}

  /* Neutralise sticky positioning (prints blank space otherwise) */
  *{position:static !important;}

  /* Print cover typography (Clinical Luxe) */
  .bsr-print-cover{font-family:'Outfit','Helvetica Neue',Helvetica,Arial,sans-serif;
    color:#2F4237;text-align:center;padding:8mm 0 0;}
  .bsr-print-cover .bsr-pc-logo-band{background:#EFECE6;padding:22px 24px;
    margin-bottom:32px;border-radius:0;}
  .bsr-print-cover .bsr-pc-logo-band img{width:180px;max-width:60%;height:auto;}
  .bsr-print-cover .bsr-pc-eyebrow{font-size:10px;letter-spacing:0.24em;
    text-transform:uppercase;color:#B08B4F;font-weight:600;margin-bottom:10px;}
  .bsr-print-cover .bsr-pc-name{font-size:28px;font-weight:600;color:#2F4237;
    letter-spacing:-0.01em;margin:0 0 8px;}
  .bsr-print-cover .bsr-pc-range{font-family:'Outfit',sans-serif;font-style:italic;
    font-size:14px;color:#6B7A5A;margin:0 0 36px;}
  .bsr-print-cover .bsr-pc-photos{display:flex;gap:3%;justify-content:center;
    align-items:flex-start;margin:0 auto;padding:0 8mm;}
  .bsr-print-cover .bsr-pc-photo{width:48%;break-inside:avoid;}
  .bsr-print-cover .bsr-pc-photo.bsr-pc-single{width:70%;margin:0 auto;}
  .bsr-print-cover .bsr-pc-photo .bsr-pc-photo-label{font-size:9px;letter-spacing:0.22em;
    text-transform:uppercase;color:#B08B4F;font-weight:600;margin-bottom:10px;}
  /* v2.5.76: cap image height so the logo band + name + photos + captions
     fit on a single letter page. Previously the photos had no max-height so
     the cover routinely spanned 3–4 pages with huge white gaps. */
  .bsr-print-cover .bsr-pc-photo img{width:100%;height:auto;max-height:15cm;
    object-fit:contain;border:1px solid #EFECE6;background:#fff;}
  .bsr-print-cover .bsr-pc-photo .bsr-pc-caption{font-family:'Outfit',sans-serif;
    font-style:italic;font-size:13px;color:#2F4237;margin-top:10px;}
  .bsr-print-cover .bsr-pc-footer{margin-top:36px;padding-top:18px;
    border-top:1px solid #EFECE6;font-size:10px;letter-spacing:0.18em;
    text-transform:uppercase;color:#6B7A5A;}
}

/* ═══════════════════════════════════════════════════════════════
   v2.6.56 — “Your stats” section heading and metrics toolbar.
   The existing unit toggle remains shared with the profile modal.
   ═══════════════════════════════════════════════════════════════ */
.bsr-stats-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin:0 0 16px;
  padding:0 0 12px;
  border-bottom:1px solid #D8D2C7;
  overflow-anchor:auto;
}
.bsr-stats-title{
  min-width:0;
  margin:0;
  color:#2F4237;
  font-family:'Outfit',system-ui,-apple-system,sans-serif;
  font-size:clamp(24px,2.1vw,30px);
  font-weight:700;
  line-height:1.1;
  letter-spacing:-0.03em;
}
.bsr-expand-all-btn{
  -webkit-appearance:none;
  appearance:none;
  min-height:44px;
  max-width:100%;
  margin-left:auto;
  padding:9px 14px;
  border:1px solid rgba(47,66,55,.42);
  border-radius:10px;
  background:#fff;
  color:#2F4237;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex:0 0 auto;
  font-family:'Outfit',system-ui,-apple-system,sans-serif;
  font-size:13px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.01em;
  text-align:center;
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease;
}
.bsr-expand-all-btn:hover{
  background:#FAF7F2;
  border-color:#2F4237;
}
.bsr-expand-all-btn:focus-visible{
  outline:3px solid #B08B4F;
  outline-offset:3px;
}
.bsr-expand-all-btn[aria-pressed="true"]{
  background:#EFECE6;
  border-color:#2F4237;
}
.bsr-expand-all-btn:disabled{
  opacity:.48;
  cursor:not-allowed;
}
.bsr-expand-all-icon{
  width:15px;
  height:15px;
  flex:0 0 auto;
  transition:transform .18s ease;
}
.bsr-expand-all-btn[aria-pressed="true"] .bsr-expand-all-icon{
  transform:rotate(180deg);
}
/* Keep browser scroll anchoring away from expanding metric surfaces. The
   section heading remains the stable visual reference as cards change height. */
#bsr-metrics,
#bsr-metrics .bsr-card-wrap,
#bsr-metrics [id^="bsr-acc-"]{
  overflow-anchor:none;
}
.bsr-metrics-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 12px;
}
.bsr-unit-toggle{
  display:inline-flex;
  border-radius:20px;
  border:1px solid #2F4237;
  overflow:hidden;
}
.bsr-unit-toggle-btn{
  padding:4px 12px;
  font-size:12px;
  font-weight:600;
  font-family:'Outfit',sans-serif;
  cursor:pointer;
  transition:background 0.15s ease;
  color:#2F4237;
  background:transparent;
  border:none;
  outline:none;
  line-height:1.4;
}
.bsr-unit-toggle-btn.active{
  background:#2F4237;
  color:#EFECE6;
}
.bsr-unit-toggle-btn:not(.active):hover{
  background:rgba(47,66,55,0.08);
}
@media (max-width:480px){
  .bsr-stats-header{align-items:flex-start;margin-bottom:14px;padding-bottom:10px;}
  .bsr-stats-title{font-size:24px;}
  .bsr-expand-all-btn{padding-inline:12px;font-size:12.5px;}
  .bsr-metrics-toolbar{align-items:flex-start;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-expand-all-btn,.bsr-expand-all-icon{transition:none!important;}
}
@media print{
  .bsr-expand-all-btn{display:none!important;}
}

/* ═══════════════════════════════════════════════════════════════
   v2.5.95 — TABS ROW + PANELS
   Splits the customer dashboard into Data & Reports / Insights /
   Scheduling per the locked INSIGHTS_CONTRACT v1 section 7.
   Brand tokens (Clinical Luxe) defined on #bsr-app so the Insights
   UI agent can reuse them without redefining per component.
   ═══════════════════════════════════════════════════════════════ */
#bsr-app{
  --bsr-forest:#2F4237;
  --bsr-bone:#EFECE6;
  --bsr-gold:#B08B4F;
  --bsr-sage:#6B7A5A;
  --bsr-font-body:'Outfit',system-ui,-apple-system,sans-serif;
  --bsr-font-accent:'Outfit',sans-serif;
}

/* v2.6.63 - Regional bone mineral density.
   The script paints this only when the selected scan contains true regional
   BMD measurements. Raw g/cm2 readings are presented without assigning WHO
   classifications to individual regions. */
#bsr-regional-bmd[hidden]{display:none !important;}
.bsr-regional-bmd{margin:0 0 40px;animation:bsr-slideUp .5s ease-out;}
.bsr-regional-bmd-shell{
  position:relative;overflow:hidden;padding:24px;background:var(--bsr-bone);
  border:1px solid rgba(107,122,90,.28);border-radius:18px;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:var(--bsr-forest);font-family:var(--bsr-font-body);
}
.bsr-regional-bmd-header{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:24px;margin:0 0 20px;
}
.bsr-regional-bmd-heading{min-width:0;max-width:680px;}
.bsr-regional-bmd-eyebrow{
  margin:0 0 5px;color:var(--bsr-gold);font-size:11px;font-weight:700;
  line-height:1.2;letter-spacing:1.2px;text-transform:uppercase;
}
.bsr-regional-bmd-title{
  margin:0;color:var(--bsr-forest);font-size:24px;font-weight:650;
  line-height:1.2;letter-spacing:-.015em;
}
.bsr-regional-bmd-intro{
  margin:7px 0 0;max-width:660px;color:rgba(47,66,55,.78);
  font-size:13px;font-weight:400;line-height:1.55;
}
.bsr-regional-bmd-source{
  flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;
  padding:7px 10px;background:#fff;border:1px solid rgba(107,122,90,.24);
  border-radius:999px;color:var(--bsr-sage);font-size:10px;font-weight:700;
  line-height:1;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;
}
.bsr-regional-bmd-source::before{
  content:'';display:block;width:6px;height:6px;border-radius:50%;
  background:var(--bsr-gold);
}
.bsr-regional-bmd-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;
}
.bsr-regional-bmd-card{
  min-width:0;padding:15px 16px;background:#fff;
  border:1px solid rgba(107,122,90,.18);border-radius:12px;
  box-shadow:0 1px 3px rgba(0,0,0,.045);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.bsr-regional-bmd-card:hover{
  border-color:rgba(176,139,79,.52);
  box-shadow:0 4px 14px rgba(47,66,55,.08);transform:translateY(-1px);
}
.bsr-regional-bmd-region{
  display:block;margin:0 0 7px;color:var(--bsr-sage);font-size:10px;
  font-weight:700;line-height:1.2;letter-spacing:.07em;text-transform:uppercase;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.bsr-regional-bmd-reading{display:flex;align-items:baseline;gap:5px;min-width:0;}
.bsr-regional-bmd-value{
  color:var(--bsr-forest);font-size:24px;font-weight:700;line-height:1;
  font-variant-numeric:tabular-nums;letter-spacing:-.02em;
}
.bsr-regional-bmd-unit{
  color:var(--bsr-sage);font-size:11px;font-weight:500;white-space:nowrap;
}
.bsr-regional-bmd-context{
  margin:8px 0 0;padding-top:8px;border-top:1px solid rgba(107,122,90,.14);
  color:rgba(47,66,55,.68);font-size:10.5px;line-height:1.4;
}
.bsr-regional-bmd-scores{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;}
.bsr-regional-bmd-score{
  display:inline-flex;align-items:baseline;gap:3px;padding:4px 7px;
  background:rgba(239,236,230,.68);border-radius:999px;
  color:var(--bsr-forest);font-size:10px;font-weight:600;line-height:1;
  font-variant-numeric:tabular-nums;
}
.bsr-regional-bmd-note{
  display:flex;align-items:flex-start;gap:9px;margin:16px 0 0;
  padding:12px 14px;background:rgba(255,255,255,.58);
  border-left:2px solid var(--bsr-gold);border-radius:0 8px 8px 0;
  color:rgba(47,66,55,.76);font-size:11.5px;line-height:1.5;
}
.bsr-regional-bmd-note strong{color:var(--bsr-forest);font-weight:650;}
@media (max-width:1024px){
  .bsr-regional-bmd-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:768px){
  .bsr-regional-bmd-shell{padding:20px;}
  .bsr-regional-bmd-header{align-items:flex-start;flex-direction:column;gap:10px;}
  .bsr-regional-bmd-title{font-size:21px;}
  .bsr-regional-bmd-source{align-self:flex-start;}
  .bsr-regional-bmd-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:480px){
  .bsr-regional-bmd{margin-bottom:28px;}
  .bsr-regional-bmd-shell{padding:18px 14px;border-radius:14px;}
  .bsr-regional-bmd-title{font-size:19px;}
  .bsr-regional-bmd-intro{font-size:12px;line-height:1.5;}
  .bsr-regional-bmd-grid{gap:8px;}
  .bsr-regional-bmd-card{padding:13px 12px;}
  .bsr-regional-bmd-value{font-size:21px;}
  .bsr-regional-bmd-unit{font-size:9px;}
  .bsr-regional-bmd-note{padding:10px 11px;font-size:10.5px;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-regional-bmd,.bsr-regional-bmd-card{
    animation:none !important;transition:none !important;transform:none !important;
  }
}
#bsr-tabs.bsr-tabs{
  display:flex;
  gap:8px;
  align-items:stretch;
  border-bottom:1px solid var(--bsr-sage);
  margin:0 0 24px;
  padding:0;
  list-style:none;
  background:transparent;
}
.bsr-tab{
  appearance:none;
  -webkit-appearance:none;
  background:transparent;
  border:none;
  border-bottom:2px solid transparent;
  padding:12px 20px;
  font-family:var(--bsr-font-body);
  font-size:14px;
  font-weight:500;
  letter-spacing:0.01em;
  color:rgba(47,66,55,0.7);
  cursor:pointer;
  transition:color .15s ease,border-color .15s ease,background-color .15s ease;
  white-space:nowrap;
  margin-bottom:-1px; /* overlap row's bottom border so the active underline aligns */
  outline:none;
}
.bsr-tab[hidden]{display:none !important;}
.bsr-tab:hover{ color:var(--bsr-forest); }
.bsr-tab:focus-visible{
  box-shadow:0 0 0 2px rgba(176,139,79,0.5);
  border-radius:4px;
}
.bsr-tab.is-active{
  color:var(--bsr-forest);
  border-bottom-color:var(--bsr-gold);
  font-weight:600;
}
.bsr-panel{
  /* Panels reserve enough vertical room that a fast switch doesn't reflow
     the whole page. The hidden attr handles the actual show/hide. */
  outline:none;
}
.bsr-panel[hidden]{ display:none !important; }

/* v2.7.5 — Results family switcher.
   This secondary control lives inside Results, separating DEXA from Cardio &
   Metabolism without adding more destinations to the primary dashboard nav. */
.bsr-results-view-tabs{
  display:inline-grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px;
  width:min(100%,540px);
  margin:0 0 28px;
  padding:4px;
  background:#EFECE6;
  border:1px solid #D8D2C7;
  border-radius:12px;
  font-family:var(--bsr-font-body);
}
.bsr-results-view-tab{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:44px;
  padding:10px 18px;
  background:transparent;
  border:1px solid transparent;
  border-radius:8px;
  color:#596657;
  font:600 14px/1.2 var(--bsr-font-body);
  letter-spacing:.005em;
  text-align:center;
  cursor:pointer;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}
.bsr-results-view-tab:hover{
  color:var(--bsr-forest);
  background:rgba(255,255,255,.56);
}
.bsr-results-view-tab:focus-visible{
  outline:3px solid rgba(176,139,79,.48);
  outline-offset:2px;
}
.bsr-results-view-tab.is-active,
.bsr-results-view-tab[aria-selected="true"]{
  background:#FFFFFF;
  border-color:rgba(47,66,55,.16);
  color:var(--bsr-forest);
  box-shadow:0 1px 3px rgba(28,28,26,.08);
}
.bsr-results-view{
  width:100%;
  min-width:0;
  scroll-margin-top:96px;
  outline:none;
}
.bsr-results-view[hidden]{display:none !important;}
.bsr-results-view:focus-visible{
  outline:2px solid rgba(176,139,79,.52);
  outline-offset:6px;
  border-radius:12px;
}
.bsr-results-view--cardio{
  padding:clamp(18px,2.6vw,32px);
  background:#FAF7F2;
  border:1px solid rgba(216,210,199,.9);
  border-radius:18px;
}
.bsr-results-view-head{
  max-width:760px;
  margin:0 0 24px;
  padding:0 0 20px;
  border-bottom:1px solid #D8D2C7;
}
.bsr-results-view-eyebrow{
  margin:0 0 6px;
  color:var(--bsr-gold);
  font:700 10px/1.3 var(--bsr-font-body);
  letter-spacing:.15em;
  text-transform:uppercase;
}
.bsr-results-view-title{
  margin:0;
  color:var(--bsr-forest);
  font:700 clamp(25px,3vw,34px)/1.12 var(--bsr-font-body);
  letter-spacing:-.03em;
}
.bsr-results-view-intro{
  max-width:660px;
  margin:9px 0 0;
  color:#5C6359;
  font:400 14px/1.55 var(--bsr-font-body);
}
.bsr-cardio-card{
  width:100%;
  min-width:0;
  margin:0 0 18px;
  padding:clamp(18px,2.4vw,28px);
  background:#FFFFFF;
  border:1px solid #D8D2C7;
  border-radius:16px;
  box-shadow:0 1px 3px rgba(28,28,26,.06);
}
.bsr-cardio-card__header{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin:0 0 20px;
}
.bsr-cardio-card__title{
  margin:0;
  color:var(--bsr-forest);
  font:700 clamp(21px,2.4vw,27px)/1.16 var(--bsr-font-body);
  letter-spacing:-.025em;
}
.bsr-cardio-card__count{color:#6B7A5A;font-size:12px;}
.bsr-cardio-empty{
  padding:32px 18px;
  background:#FAF7F2;
  border:1px solid rgba(216,210,199,.82);
  border-radius:12px;
  color:#5C6359;
  text-align:center;
}
.bsr-cardio-empty__title{margin:0 0 5px;color:var(--bsr-forest);font-size:15px;font-weight:650;}
.bsr-cardio-empty__copy{margin:0;font-size:13px;line-height:1.5;}

/* Shared presentation hooks for the lactate chart controls rendered by JS. */
.bsr-lt-axis-toggle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin:0 0 12px;
}
.bsr-lt-axis-toggle__label{
  color:#5C6359;
  font-size:12px;
  font-weight:600;
}
.bsr-lt-axis-toggle__group{
  display:inline-flex;
  align-items:center;
  gap:3px;
  padding:3px;
  background:#EFECE6;
  border:1px solid #D8D2C7;
  border-radius:9px;
}
.bsr-lt-axis-btn{
  appearance:none;
  -webkit-appearance:none;
  min-height:36px;
  padding:7px 12px;
  background:transparent;
  border:1px solid transparent;
  border-radius:6px;
  color:#596657;
  font:600 12px/1.2 var(--bsr-font-body);
  cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease;
}
.bsr-lt-axis-btn:hover{color:var(--bsr-forest);}
.bsr-lt-axis-btn.is-active,
.bsr-lt-axis-btn[aria-pressed="true"]{
  background:#FFFFFF;
  border-color:rgba(47,66,55,.18);
  color:var(--bsr-forest);
}
.bsr-lt-axis-btn:focus-visible{
  outline:3px solid rgba(176,139,79,.48);
  outline-offset:2px;
}
.bsr-lt-technician-badge,
.bsr-lt-threshold-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:26px;
  padding:4px 9px;
  background:#F4E6C8;
  border:1px solid #E4CFA3;
  border-radius:999px;
  color:#7A551D;
  font:700 10px/1.2 var(--bsr-font-body);
  letter-spacing:.055em;
  text-transform:uppercase;
}
@media (max-width:1024px){
  .bsr-results-view--cardio{border-radius:16px;}
}
@media (max-width:768px){
  .bsr-results-view-tabs{width:100%;margin-bottom:24px;}
  .bsr-results-view--cardio{padding:22px 18px;}
  .bsr-results-view-head{margin-bottom:20px;padding-bottom:18px;}
}
@media (max-width:640px){
  .bsr-results-view--cardio{margin-inline:-4px;width:calc(100% + 8px);padding:18px 14px;}
  .bsr-cardio-card{padding:20px 16px;border-radius:14px;}
  .bsr-cardio-card__header{align-items:flex-start;}
}
@media (max-width:480px){
  #bsr-tabs.bsr-tabs{
    gap:0;overflow-x:auto;overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  #bsr-tabs.bsr-tabs::-webkit-scrollbar{display:none;}
  .bsr-tab{
    flex:0 0 auto;min-height:44px;padding:11px 14px;
    font-size:12px;letter-spacing:0;scroll-snap-align:start;
  }
  .bsr-results-view-tabs{gap:3px;padding:3px;border-radius:10px;}
  .bsr-results-view-tab{min-height:44px;padding:9px 10px;font-size:12px;}
  .bsr-results-view--cardio{margin-inline:-6px;width:calc(100% + 12px);padding:16px 10px;border-radius:14px;}
  .bsr-results-view-head{padding-inline:4px;}
  .bsr-results-view-title{font-size:24px;}
  .bsr-results-view-intro{font-size:13px;}
  .bsr-cardio-card{padding:18px 13px;}
  .bsr-cardio-card__title{font-size:21px;}
  .bsr-lt-axis-toggle{align-items:flex-start;}
  .bsr-lt-axis-toggle__group{width:100%;}
  .bsr-lt-axis-btn{flex:1 1 0;min-width:0;padding-inline:8px;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-results-view-tab,.bsr-lt-axis-btn{transition:none;}
}
@media print{
  .bsr-results-view-tabs{display:none;}
  .bsr-results-view--cardio{padding:0;background:#fff;border:0;}
  .bsr-cardio-card{box-shadow:none;break-inside:avoid;}
}
/* v2.6.93 — Bookings & Account is a true dashboard panel again. Keep the
   established scheduling id so Acuity can mount without a brittle hand-off. */
#bsr-panel-scheduling.bsr-sched-block{
  margin:0;
  padding:4px 0 44px;
  scroll-margin-top:96px;
}
.bsr-sched-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  margin:0 0 28px;padding:10px 4px 24px;border-bottom:1px solid rgba(47,66,55,.16);
}
.bsr-sched-head-copy{max-width:680px;min-width:0;}
.bsr-sched-eyebrow{
  margin:0 0 7px;color:var(--bsr-gold);font-size:10px;font-weight:700;
  letter-spacing:.15em;line-height:1.3;text-transform:uppercase;
}
.bsr-sched-heading{
  font-family:var(--bsr-font-body);
  font-size:28px;font-weight:700;color:var(--bsr-forest);
  letter-spacing:-0.02em;line-height:1.15;margin:0;
}
.bsr-sched-intro{
  max-width:620px;margin:9px 0 0;color:var(--bsr-sage);font-size:14px;line-height:1.55;
}
.bsr-sched-book{
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;
  padding:11px 19px;border:1px solid var(--bsr-forest);border-radius:9px;
  background:var(--bsr-forest);color:var(--bsr-bone);font-family:var(--bsr-font-body);
  font-size:13px;font-weight:650;line-height:1.2;text-decoration:none;white-space:nowrap;
  transition:background-color .16s ease,border-color .16s ease,transform .16s ease;
}
.bsr-sched-book:hover{background:#3B5043;border-color:#3B5043;color:#fff;}
.bsr-sched-book:active{transform:translateY(1px);}
.bsr-sched-book:focus-visible{outline:3px solid rgba(176,139,79,.48);outline-offset:3px;}
@media (max-width:640px){
  #bsr-panel-scheduling.bsr-sched-block{padding-top:0;padding-bottom:36px;}
  .bsr-sched-head{align-items:flex-start;flex-direction:column;gap:16px;padding:6px 2px 20px;}
  .bsr-sched-heading{font-size:24px;}
  .bsr-sched-intro{font-size:13px;}
  .bsr-sched-book{width:100%;}
}
@media (prefers-reduced-motion:reduce){.bsr-sched-book{transition:none;}.bsr-sched-book:active{transform:none;}}

/* Referral Rewards compact disclosure. The summary stays visible
   while the full balance and referral code expand on demand. */
.bsr-referral-card{
  --bsr-ref-forest:#2F4237;
  --bsr-ref-bone:#EFECE6;
  --bsr-ref-gold:#B08B4F;
  --bsr-ref-sage:#6B7A5A;
  --bsr-ref-stone:#D8D2C7;
  position:relative;
  overflow:hidden;
  margin:0 0 16px;
  padding:12px 16px;
  background:#fff;
  border:1px solid var(--bsr-ref-stone);
  border-radius:14px;
  color:#1C1C1A;
  font-family:'Outfit',system-ui,-apple-system,sans-serif;
  scroll-margin-top:96px;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.bsr-referral-card--global{ margin-bottom:20px; }
.bsr-referral-card:focus{ outline:none; }
.bsr-referral-card:focus-visible{ box-shadow:0 0 0 3px rgba(176,139,79,.38); }
.bsr-referral-card.is-expanded{ border-color:rgba(176,139,79,.58);box-shadow:0 4px 18px rgba(47,66,55,.08); }
.bsr-referral-card::before{
  content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--bsr-ref-gold);
}
.bsr-referral-summary{
  display:grid;grid-template-columns:minmax(180px,1fr) minmax(110px,auto) auto;
  align-items:center;gap:18px;min-width:0;
}
.bsr-referral-summary-copy{ min-width:0; }
.bsr-referral-eyebrow{
  margin:0 0 2px;color:var(--bsr-ref-gold);font-size:9px;font-weight:700;
  letter-spacing:.14em;line-height:1.3;text-transform:uppercase;
}
.bsr-referral-title{
  margin:0;color:var(--bsr-ref-forest);font-family:'Outfit',system-ui,-apple-system,sans-serif;
  font-size:18px;font-weight:700;letter-spacing:-.025em;line-height:1.2;
  overflow-wrap:anywhere;
}
.bsr-referral-summary-value{
  min-width:0;margin:0;color:var(--bsr-sage);font-size:13px;font-weight:600;
  line-height:1.3;text-align:right;overflow-wrap:anywhere;
}
.bsr-referral-toggle{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:40px;
  padding:9px 14px;background:var(--bsr-ref-forest);border:1px solid var(--bsr-ref-forest);
  border-radius:9px;color:var(--bsr-ref-bone);cursor:pointer;white-space:nowrap;
  font:600 13px/1.2 'Outfit',system-ui,-apple-system,sans-serif;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease;
}
.bsr-referral-toggle:hover{ background:#3B5043;border-color:#3B5043;color:#fff; }
.bsr-referral-toggle:focus-visible{ outline:3px solid rgba(176,139,79,.48);outline-offset:2px; }
.bsr-referral-chevron{
  width:8px;height:8px;flex:0 0 8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:translateY(-2px) rotate(45deg);transform-origin:center;
  transition:transform .2s ease;
}
.bsr-referral-card.is-expanded .bsr-referral-chevron{ transform:translateY(2px) rotate(225deg); }
.bsr-referral-details{
  margin-top:14px;padding-top:14px;border-top:1px solid var(--bsr-ref-stone);
  opacity:0;transform:translateY(-6px);
  transition:opacity .2s ease,transform .2s ease;
}
.bsr-referral-details[hidden]{ display:none!important; }
.bsr-referral-card.is-expanded .bsr-referral-details{ opacity:1;transform:translateY(0); }
@starting-style{
  .bsr-referral-card.is-expanded .bsr-referral-details{ opacity:0;transform:translateY(-6px); }
}
.bsr-referral-intro{
  max-width:720px;margin:0 0 12px;color:var(--bsr-ref-sage);font-size:13px;line-height:1.45;
}
.bsr-referral-content[aria-busy="true"]{ pointer-events:none; }
.bsr-referral-skeleton{
  display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.28fr);gap:12px;align-items:start;
}
.bsr-referral-skeleton-block{ padding:18px 18px 48px;background:var(--bsr-ref-bone);border-radius:12px; }
.bsr-referral-skeleton-lines{ display:grid;gap:10px; }
.bsr-referral-skeleton-line{
  display:block;height:12px;border-radius:8px;background:#D8D2C7;opacity:.62;
  animation:bsr-referral-pulse 1.4s ease-in-out infinite;
}
.bsr-referral-skeleton-line:nth-child(2){ width:74%;animation-delay:.12s; }
.bsr-referral-skeleton-line:nth-child(3){ width:48%;animation-delay:.24s; }
@keyframes bsr-referral-pulse{ 0%,100%{opacity:.42}50%{opacity:.76} }
.bsr-referral-grid{ display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.28fr);gap:12px;align-items:start; }
.bsr-referral-balance{
  display:flex;flex-direction:column;min-width:0;padding:18px;background:var(--bsr-ref-forest);
  border-radius:12px;color:var(--bsr-ref-bone);
}
.bsr-referral-balance-label{ font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;opacity:.76; }
.bsr-referral-balance-value{
  margin:6px 0 2px;color:#fff;font-size:36px;font-weight:700;letter-spacing:-.045em;line-height:1;
  font-variant-numeric:tabular-nums;
}
.bsr-referral-balance-copy{ margin:6px 0 14px;color:rgba(239,236,230,.82);font-size:12px;line-height:1.42; }
.bsr-referral-book{
  display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:42px;margin-top:auto;
  padding:10px 16px;background:var(--bsr-ref-bone);border:1px solid var(--bsr-ref-bone);border-radius:8px;
  color:var(--bsr-ref-forest);font:600 14px/1.2 'Outfit',system-ui,-apple-system,sans-serif;
  text-align:center;text-decoration:none;transition:background-color .15s ease,color .15s ease;
}
.bsr-referral-book:hover{ background:#fff;color:var(--bsr-ref-forest); }
.bsr-referral-book:focus-visible,.bsr-referral-btn:focus-visible,.bsr-referral-retry:focus-visible{
  outline:3px solid rgba(176,139,79,.48);outline-offset:2px;
}
.bsr-referral-share{ min-width:0;padding:15px 16px 16px;border:1px solid var(--bsr-ref-stone);border-radius:12px;background:#fff; }
.bsr-referral-share-title{ margin:0 0 9px;color:var(--bsr-ref-forest);font-size:14px;font-weight:700; }
.bsr-referral-code-copy{ margin:0 0 12px;color:var(--bsr-ref-sage);font-size:13px;line-height:1.45; }
.bsr-referral-field{ display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;margin-bottom:7px; }
.bsr-referral-value{
  display:block;min-width:0;padding:11px 10px;background:var(--bsr-ref-bone);border:1px solid transparent;
  border-radius:8px;color:var(--bsr-ref-forest);font:600 16px/1.3 'Outfit',system-ui,-apple-system,sans-serif;
  overflow-wrap:anywhere;white-space:normal;user-select:text;-webkit-user-select:text;cursor:text;
}
.bsr-referral-value:focus-visible{ outline:3px solid rgba(176,139,79,.48);outline-offset:2px; }
.bsr-referral-copy-status{ margin:0;color:var(--bsr-ref-forest);font-size:12px;line-height:1.4; }
.bsr-referral-btn,.bsr-referral-retry{
  display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;
  background:#fff;border:1px solid var(--bsr-ref-forest);border-radius:8px;color:var(--bsr-ref-forest);
  cursor:pointer;font:600 12px/1.15 'Outfit',system-ui,-apple-system,sans-serif;text-decoration:none;
  transition:background-color .15s ease,color .15s ease;
}
.bsr-referral-btn:hover,.bsr-referral-retry:hover{ background:var(--bsr-ref-bone);color:var(--bsr-ref-forest); }
.bsr-referral-meta{ display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px; }
.bsr-referral-stat{ display:inline-flex;align-items:baseline;gap:7px;min-width:0;padding:8px 11px;background:#FAF7F2;border-radius:9px; }
.bsr-referral-stat-number{ display:block;flex:0 0 auto;color:var(--bsr-ref-forest);font-size:18px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums; }
.bsr-referral-stat-label{ display:block;min-width:0;margin:0;color:var(--bsr-ref-sage);font-size:11px;line-height:1.25; }
.bsr-referral-activity{ margin-top:11px;padding-top:10px;border-top:1px solid var(--bsr-ref-stone); }
.bsr-referral-activity-title{ margin:0 0 6px;color:var(--bsr-ref-forest);font-size:12px;font-weight:700; }
.bsr-referral-activity-list{ list-style:none;margin:0;padding:0; }
.bsr-referral-activity-item{ display:flex;align-items:center;gap:8px;padding:5px 0;color:#4F5E54;font-size:12px;line-height:1.3; }
.bsr-referral-activity-dot{ width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--bsr-ref-sage); }
.bsr-referral-activity-item.is-earned .bsr-referral-activity-dot{ background:var(--bsr-ref-gold); }
.bsr-referral-activity-date{ margin-left:auto;color:#7B867E;font-variant-numeric:tabular-nums;white-space:nowrap; }
.bsr-referral-error{
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  padding:20px;background:var(--bsr-ref-bone);border:1px solid var(--bsr-ref-stone);border-radius:12px;
}
.bsr-referral-error h4{ margin:0 0 7px;color:var(--bsr-ref-forest);font:700 18px/1.3 'Outfit',system-ui,-apple-system,sans-serif; }
.bsr-referral-error p{ max-width:520px;margin:0 0 16px;color:var(--bsr-ref-sage);font-size:13px;line-height:1.55; }
.bsr-referral-live{ position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important; }
@media (max-width:640px){
  .bsr-referral-card{ padding:10px 12px; }
  .bsr-referral-card--global{ margin-bottom:16px; }
  .bsr-referral-summary{
    grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy toggle" "value toggle";
    column-gap:10px;row-gap:3px;min-height:72px;
  }
  .bsr-referral-summary-copy{ grid-area:copy;align-self:end; }
  .bsr-referral-summary-value{ grid-area:value;align-self:start;text-align:left;font-size:12px; }
  .bsr-referral-toggle{ grid-area:toggle;min-height:44px;padding:9px 12px; }
  .bsr-referral-title{ font-size:17px; }
  .bsr-referral-details{ margin-top:10px;padding-top:12px; }
  .bsr-referral-intro{ margin-bottom:12px; }
  .bsr-referral-skeleton,.bsr-referral-grid{ grid-template-columns:1fr;gap:10px; }
  .bsr-referral-skeleton-block{ padding:16px 16px 38px; }
  .bsr-referral-balance{ padding:16px; }
  .bsr-referral-share{ padding:14px; }
  .bsr-referral-book,.bsr-referral-btn,.bsr-referral-retry{ min-height:44px; }
}
@media (max-width:480px){
  .bsr-referral-card{ margin-left:-6px;margin-right:-6px;padding:10px 12px;border-radius:13px; }
  .bsr-referral-summary{ column-gap:8px; }
  .bsr-referral-toggle{ max-width:124px;padding-left:10px;padding-right:10px;white-space:normal;text-align:center; }
  .bsr-referral-title{ font-size:16px; }
  .bsr-referral-share{ padding:12px; }
  .bsr-referral-field{ gap:6px; }
  .bsr-referral-field .bsr-referral-btn{ padding-left:9px;padding-right:9px; }
  .bsr-referral-balance-value{ font-size:34px; }
  .bsr-referral-stat{ gap:5px;padding:8px; }
}
@media (prefers-reduced-motion:reduce){
  .bsr-referral-skeleton-line{ animation:none;opacity:.62; }
  .bsr-referral-card,.bsr-referral-details,.bsr-referral-chevron,.bsr-referral-toggle,
  .bsr-referral-book,.bsr-referral-btn,.bsr-referral-retry{ transition:none; }
}
@media (max-width:640px){
  #bsr-tabs.bsr-tabs{
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  #bsr-tabs.bsr-tabs::-webkit-scrollbar{ display:none; }
  .bsr-tab{
    flex:0 0 auto;
    min-width:max-content;
    min-height:44px;
    scroll-snap-align:start;
    padding:12px 16px;
    font-size:13px;
  }
}

/* ═══════════════════════════════════════════════════════════════
   v2.5.95 — INSIGHTS PANEL (Clinical Luxe)
   Locked state checklist, unlocked-state header + card grid,
   per-card bars, disclaimer modal. Brand tokens come from #bsr-app.
   ═══════════════════════════════════════════════════════════════ */
.bsr-insights-loading{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:64px 24px;color:rgba(47,66,55,0.7);
  font-family:var(--bsr-font-body);
}
/* v2.5.97: state containers declare explicit display values, so the bare
   [hidden] attribute (UA display:none) gets overridden. Re-assert. */
.bsr-insights-loading[hidden],
.bsr-insights-locked[hidden],
.bsr-insights-unlocked[hidden],
.bsr-insights-error[hidden]{ display:none !important; }
.bsr-insights-spinner{
  width:32px;height:32px;border:3px solid rgba(47,66,55,0.15);
  border-top-color:var(--bsr-forest);border-radius:50%;
  animation:bsr-spin 0.8s linear infinite;margin-bottom:14px;
}
.bsr-insights-loading-text{ margin:0;font-size:14px; }
.bsr-insights-error{
  max-width:520px;margin:48px auto;padding:32px 24px;
  text-align:center;color:rgba(47,66,55,0.85);
  font-family:var(--bsr-font-body);font-size:14px;line-height:1.5;
  background:var(--bsr-bone);border:1px solid rgba(107,122,90,0.3);border-radius:12px;
}

/* ── LOCKED STATE ── */
.bsr-insights-locked{
  max-width:540px;margin:0 auto;padding:48px 24px;
  text-align:center;font-family:var(--bsr-font-body);
}
.bsr-insights-headline{
  font-family:var(--bsr-font-body);font-weight:600;
  font-size:24px;line-height:30px;color:var(--bsr-forest);
  margin:0 0 12px;
}
.bsr-insights-locked .bsr-insights-eyebrow{
  font-family:var(--bsr-font-body);font-style:normal;
  font-size:16px;line-height:24px;color:rgba(47,66,55,0.75);
  margin:0 0 28px;
}
.bsr-insights-checklist{
  list-style:none;padding:0;margin:0 auto 32px;max-width:360px;
  text-align:left;
}
.bsr-insights-checklist li{
  position:relative;padding:10px 0 10px 28px;
  font-size:14px;line-height:20px;color:var(--bsr-forest);
  border-bottom:1px solid rgba(107,122,90,0.18);
}
.bsr-insights-checklist li:last-child{ border-bottom:none; }
.bsr-insights-checklist li::before{
  content:'';position:absolute;left:6px;top:18px;
  width:8px;height:8px;border-radius:50%;
  background:var(--bsr-forest);opacity:0.55;
}
.bsr-cta.bsr-cta--primary{
  display:inline-block;appearance:none;-webkit-appearance:none;
  padding:12px 28px;border:none;border-radius:10px;
  background:var(--bsr-forest);color:var(--bsr-bone);
  font-family:var(--bsr-font-body);font-weight:600;font-size:14px;
  letter-spacing:0.01em;cursor:pointer;
  transition:background 0.2s ease,transform 0.1s ease;
}
.bsr-cta.bsr-cta--primary:hover{ background:#3c5443; }
.bsr-cta.bsr-cta--primary:active{ transform:translateY(1px); }
.bsr-cta.bsr-cta--primary:focus-visible{
  outline:none;box-shadow:0 0 0 3px rgba(176,139,79,0.5);
}

/* ── UNLOCKED STATE ── */
.bsr-insights-header{
  max-width:540px;margin:0 auto 32px;padding:8px 16px 0;
  text-align:center;font-family:var(--bsr-font-body);
}
/* Insights lockup: transparent icon + Outfit wordmark and subtitle. */
.bsr-insights-mark{
  display:flex;flex-direction:column;align-items:center;
  margin:0 auto 24px;
}
.bsr-insights-mark-icon{
  width:160px;height:auto;display:block;margin:0 0 14px;
}
.bsr-insights-mark-wordmark{
  font-family:var(--bsr-font-body);font-weight:700;
  font-size:40px;line-height:1;letter-spacing:0.005em;
  color:#043033; /* matches the icon exactly (deeper than --bsr-forest) */
}
.bsr-insights-mark-subtitle{
  font-family:var(--bsr-font-body);font-style:normal;font-weight:700;
  font-size:22px;line-height:1.1;letter-spacing:0.04em;color:var(--bsr-gold,#B08B4F);
  margin-top:6px;
}
@media (max-width:640px){
  .bsr-insights-mark{ margin-bottom:18px; }
  .bsr-insights-mark-icon{ width:120px;margin-bottom:10px; }
  .bsr-insights-mark-wordmark{ font-size:30px; }
  .bsr-insights-mark-subtitle{ font-size:20px; }
}
.bsr-insights-h1{
  font-family:var(--bsr-font-body);font-weight:600;
  font-size:28px;line-height:34px;color:var(--bsr-forest);
  margin:0 0 8px;
}
.bsr-insights-header .bsr-insights-eyebrow{
  font-family:var(--bsr-font-body);font-style:normal;
  font-size:15px;line-height:23px;color:rgba(28,28,26,0.76);
  margin:0;
}
.bsr-insights-trust-note{
  max-width:620px;margin:20px auto 0;padding:14px 16px;
  text-align:left;background:#FAF7F2;border:1px solid #D8D2C7;border-radius:12px;
  color:#1C1C1A;font-family:var(--bsr-font-body);font-size:13px;line-height:19px;
}
.bsr-insights-trust-legend{
  display:flex;align-items:flex-start;gap:9px;margin:0 0 6px;font-weight:600;
}
.bsr-insights-trust-key{
  width:10px;height:10px;margin-top:4px;flex:0 0 10px;border-radius:50%;
  background:var(--bsr-gold,#B08B4F);
}
.bsr-insights-trust-detail{ margin:0;color:rgba(28,28,26,0.7); }
.bsr-insights-trust-detail strong{ color:var(--bsr-forest);font-weight:600; }
.bsr-insights-warming{
  text-align:center;margin:32px auto;max-width:480px;
  font-family:var(--bsr-font-body);font-style:normal;
  color:rgba(47,66,55,0.65);font-size:14px;
}
.bsr-insights-warming em{ font-style:normal; }

/* v2.6.7 — Cohort toggle above the cards grid. Centered segmented pill;
   inactive chips are bone with forest text + sage border, active chip
   is forest with bone text. Chips share a border so they read as one
   control rather than independent buttons.
   v2.6.13 — generalized for 3 chips (All / Men / Women); middle chip
   squares between the rounded ends. */
.bsr-insights-toggle{
  display:flex;
  justify-content:center;
  margin:0 auto 24px;
}
.bsr-toggle-chip{
  appearance:none;-webkit-appearance:none;
  background:var(--bsr-bone);
  color:var(--bsr-forest);
  border:1px solid rgba(107,122,90,0.4);
  border-radius:0;
  font-family:var(--bsr-font-body);font-weight:600;
  font-size:13px;letter-spacing:0.02em;
  padding:9px 28px;
  cursor:pointer;
  transition:background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.bsr-toggle-chip:first-child{ border-radius:999px 0 0 999px; }
.bsr-toggle-chip:last-child { border-radius:0 999px 999px 0; }
.bsr-toggle-chip:not(:last-child){ margin-right:-1px; }
.bsr-toggle-chip:hover{ background:rgba(107,122,90,0.10); }
.bsr-toggle-chip[aria-selected="true"]{
  background:var(--bsr-forest);
  color:var(--bsr-bone);
  border-color:var(--bsr-forest);
  position:relative;z-index:1;  /* lift over neighbour so the seam is clean */
}
.bsr-toggle-chip[aria-selected="true"]:hover{ background:#3c5443; }
.bsr-toggle-chip:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(176,139,79,0.45);
  z-index:2;position:relative;
}

/* v2.6.9 — sections wrapper. Each section has its own header + grid;
   JS hides a section entirely when it has zero rendered cards (e.g.
   Goal Progress when the customer doesn't have 2+ scans yet). */
.bsr-insights-sections{
  display:flex;flex-direction:column;gap:36px;
}
.bsr-insights-section-head{
  margin:0 0 14px;
  display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;
  border-bottom:1px solid rgba(107,122,90,0.2);
  padding-bottom:10px;
}
.bsr-insights-section-title{
  font-family:var(--bsr-font-body);font-weight:600;
  font-size:18px;line-height:24px;color:var(--bsr-forest);
  margin:0;letter-spacing:0.005em;
}
.bsr-insights-section-sub{
  font-family:var(--bsr-font-body);font-style:normal;
  font-size:13px;line-height:18px;color:rgba(47,66,55,0.55);
  margin:0;
}
.bsr-insights-section-sub::first-letter{ text-transform:uppercase; }
.bsr-insights-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
  gap:20px;
}
@media (max-width:640px){
  .bsr-insights-grid{ grid-template-columns:1fr; }
  .bsr-insights-locked{ padding:32px 16px; }
  .bsr-insights-header{ padding:0 8px; }
  .bsr-insights-h1{ font-size:24px;line-height:30px; }
  .bsr-insights-trust-note{ padding:13px 14px; }
}

/* ── CARDS ── */
.bsr-card{
  background:var(--bsr-bone);
  border:1px solid rgba(107,122,90,0.35);
  border-radius:12px;
  padding:24px;
  font-family:var(--bsr-font-body);
  box-shadow:0 2px 8px rgba(47,66,55,0.06);
}
.bsr-card-head{
  display:flex;align-items:flex-start;justify-content:space-between;
  gap:12px;flex-wrap:wrap;margin-bottom:8px;
}
.bsr-card-title{
  font-family:var(--bsr-font-body);font-weight:600;
  font-size:16px;line-height:22px;color:var(--bsr-forest);
  margin:0;flex:1 1 auto;min-width:0;
}
/* v2.6.6 — default pill is the N-badge (soft sage). The gold variant is
   reserved for future use; the per-card "You: X" pill was retired. */
.bsr-card-pill{
  display:inline-block;padding:3px 10px;border-radius:999px;
  font-family:var(--bsr-font-body);font-weight:600;font-size:11px;
  letter-spacing:0.04em;white-space:nowrap;flex-shrink:0;
  background:rgba(107,122,90,0.18);color:var(--bsr-forest);
}
.bsr-card-pill--gold{ background:var(--bsr-gold);color:var(--bsr-bone); }
/* v2.6.6 — insight summary now sits below the bars, so the top margin
   is the gap from the bars above and there's nothing below it. */
.bsr-card-insight{
  font-family:var(--bsr-font-body);font-weight:400;
  font-size:13px;line-height:19px;
  color:rgba(47,66,55,0.78);
  margin:14px 0 0;
}
.bsr-card-insight strong{ color:var(--bsr-forest);font-weight:600; }
.bsr-card-bars{ display:flex;flex-direction:column;gap:8px; }

/* v2.6.6 — mirrors the Hub bar layout: label | track | value | n.
   The user's own answer is highlighted with gold text, not a different
   bar fill — keeps the visual consistent across rows. */
.bsr-bar{
  display:grid;
  grid-template-columns:minmax(108px,130px) 1fr auto 32px;
  align-items:center;
  gap:10px;
  font-family:var(--bsr-font-body);
  font-size:13px;line-height:20px;
}
.bsr-bar-label{
  color:var(--bsr-forest);font-weight:500;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.bsr-bar-track{
  position:relative;height:14px;
  background:rgba(47,66,55,0.08);
  border-radius:4px;overflow:hidden;
}
.bsr-bar-fill{
  position:absolute;top:0;left:0;height:100%;
  width:var(--pct,0%);
  background:var(--bsr-forest);
  border-radius:4px;
  transition:width 0.4s ease;
}
.bsr-bar-value{
  color:var(--bsr-forest);font-weight:600;
  text-align:right;white-space:nowrap;min-width:72px;
}
.bsr-bar-n{
  color:rgba(47,66,55,0.45);font-size:11px;
  text-align:right;white-space:nowrap;
}

/* User's pick — gold text everywhere, no fill change. */
.bsr-bar.is-user .bsr-bar-label,
.bsr-bar.is-user .bsr-bar-value{
  color:var(--bsr-gold);font-weight:700;
}
.bsr-bar.is-user .bsr-bar-n{ color:var(--bsr-gold); }

/* Suppressed bucket (n < min_n) — dim everything, hide the fill. */
.bsr-bar.is-empty .bsr-bar-fill{ display:none; }
.bsr-bar.is-empty .bsr-bar-label,
.bsr-bar.is-empty .bsr-bar-value,
.bsr-bar.is-empty .bsr-bar-n{
  color:rgba(47,66,55,0.4);
}

/* Signed (center-zero) bars for Goal Progress / change-rate cards.
   Track has a faint center tick; fill anchors at 50% and grows left or
   right depending on sign. Color reflects "is this the desired
   direction?": forest = good, amber = wrong direction. */
.bsr-bar.signed .bsr-bar-track{
  background:rgba(47,66,55,0.06);
}
.bsr-bar.signed .bsr-bar-track::after{
  content:'';position:absolute;top:0;bottom:0;left:50%;width:1px;
  background:rgba(47,66,55,0.28);transform:translateX(-0.5px);
}
.bsr-bar.signed .bsr-bar-fill{
  background:var(--bsr-forest);
  width:var(--width,0%);
  left:var(--left,50%);
}
.bsr-bar.signed .bsr-bar-fill.is-wrong-direction{
  background:#B08B4F;  /* amber/gold */
}

@media (max-width:640px){
  .bsr-bar{ grid-template-columns:minmax(96px,118px) 1fr auto 28px;gap:8px;font-size:12px; }
  .bsr-bar-value{ min-width:64px; }
}

/* Pearson correlation stat block (training-frequency cards). */
.bsr-pearson-stat{
  display:flex;align-items:baseline;gap:10px;
  margin:14px 0 14px;
}
.bsr-pearson-r{
  font-family:var(--bsr-font-body);
  font-size:48px;line-height:1;font-weight:400;
  letter-spacing:-0.02em;
  color:var(--bsr-forest);
}
.bsr-pearson-r.weak{ color:rgba(47,66,55,0.5); }
.bsr-pearson-r.moderate{ color:var(--bsr-gold); }
.bsr-pearson-r.strong{ color:var(--bsr-forest); }
.bsr-pearson-label{
  font-family:var(--bsr-font-body);font-style:normal;
  font-size:13px;color:rgba(47,66,55,0.6);
}
.bsr-pearson-label em{ font-style:normal;font-weight:600;color:var(--bsr-forest); }

/* ── DISCLAIMER MODAL ── */
.bsr-modal{
  position:fixed;inset:0;z-index:999996;
  display:flex;align-items:center;justify-content:center;
  padding:20px;
}
.bsr-modal[hidden]{ display:none; }
.bsr-modal-backdrop{
  position:absolute;inset:0;
  background:rgba(239,236,230,0.55);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
}
.bsr-modal-card{
  position:relative;background:#ffffff;
  border:1px solid rgba(107,122,90,0.3);
  border-radius:14px;padding:32px;
  max-width:480px;width:100%;
  box-shadow:0 24px 60px rgba(47,66,55,0.25);
  font-family:var(--bsr-font-body);
  animation:bsr-slideUp 0.3s ease-out;
}
.bsr-modal-card h2{
  font-family:var(--bsr-font-body);font-weight:600;
  font-size:20px;line-height:26px;color:var(--bsr-forest);
  margin:0 0 12px;
}
.bsr-modal-card p{
  font-size:14px;line-height:21px;color:rgba(47,66,55,0.85);
  margin:0 0 24px;
}

/* Questionnaire action row: keep the longer defer label calm on narrow screens. */
@media (max-width:480px){
  #bsr-survey-card .bsr-survey-footer{
    flex-wrap:wrap;padding-left:16px !important;padding-right:16px !important;
  }
  .bsr-survey-footer-spacer{ display:none; }
  .bsr-survey-defer{ margin-left:auto; }
  .bsr-survey-next{ flex:1 0 100%; }
}

/* ══════════════════════════════════════════════════════════════
   v2.6.44 — LACTATE THRESHOLD (customer-facing)
   Clinical Luxe. forest #2F4237 / gold #B08B4F / dark-gold #9A6B1F /
   sage #6B7A5A / warm #FAF7F2 / stone #D8D2C7 / muted #5C6359.
   ══════════════════════════════════════════════════════════════ */
#bsr-lactate{ font-family:'Outfit',system-ui,-apple-system,sans-serif; color:#1C1C1A; }
.bsr-lt-body{ display:flex; flex-direction:column; gap:18px; }
.bsr-lt-fade{ animation:bsr-lt-fade 0.4s ease-out; }
@keyframes bsr-lt-fade{ from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);} }

/* Threshold cards — two side by side, stack on narrow screens */
.bsr-lt-cards{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.bsr-lt-card{ border-radius:12px; padding:18px 20px; }
.bsr-lt-card--lt1{ background:#FAF7F2; border:1px solid #D8D2C7; }
.bsr-lt-card--lt2{ background:#FBF6EC; border:1px solid #E4CFA3; }
.bsr-lt-eyebrow{ font-size:11px; letter-spacing:0.07em; text-transform:uppercase; font-weight:700; margin:0 0 8px; }
.bsr-lt-eyebrow--lt1{ color:#2F4237; }
.bsr-lt-eyebrow--lt2{ color:#9A6B1F; }
.bsr-lt-value{ font-size:38px; font-weight:700; line-height:1; color:#2F4237; }
.bsr-lt-sub{ font-size:14px; color:#5C6359; margin-top:6px; font-variant-numeric:tabular-nums; }
.bsr-lt-meta{ font-size:13px; color:#5C6359; margin-top:8px; }
.bsr-lt-method{ display:inline-block; margin-top:10px; font-size:11px; font-weight:600; letter-spacing:0.03em;
  color:#9A6B1F; background:#F4E6C8; border:1px solid #E4CFA3; border-radius:999px; padding:3px 10px; }

/* Curve card */
.bsr-lt-curve{ background:#ffffff; border:1px solid #D8D2C7; border-radius:12px; padding:14px; }
.bsr-lt-curve svg{ width:100%; height:auto; display:block; }

/* Zones table */
.bsr-lt-zones-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; border:1px solid #D8D2C7; border-radius:12px; }
.bsr-lt-zones{ width:100%; border-collapse:collapse; min-width:520px; font-size:14px; }
.bsr-lt-zones thead th{ text-align:left; font-size:11px; letter-spacing:0.06em; text-transform:uppercase;
  font-weight:700; color:#5C6359; padding:12px 16px; background:#FAF7F2; border-bottom:1px solid #D8D2C7; }
.bsr-lt-zones tbody td{ padding:12px 16px; border-bottom:1px solid #ECE7DE; color:#1C1C1A;
  vertical-align:middle; font-variant-numeric:tabular-nums; }
.bsr-lt-zones tbody tr:last-child td{ border-bottom:none; }
.bsr-lt-zones tbody tr:nth-child(even) td{ background:#FCFAF6; }
.bsr-lt-zone-cell{ display:flex; align-items:center; gap:10px; white-space:nowrap; }
.bsr-lt-pill{ display:inline-flex; align-items:center; justify-content:center; min-width:30px; height:22px;
  padding:0 8px; border-radius:999px; color:#ffffff; font-size:12px; font-weight:700; letter-spacing:0.02em; }
.bsr-lt-zone-name{ font-weight:600; color:#2F4237; }
.bsr-lt-focus{ color:#5C6359; }

/* Multi-test controls */
.bsr-lt-controls{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.bsr-lt-chips{ display:inline-flex; gap:6px; flex-wrap:wrap; }
.bsr-lt-chip{ padding:6px 12px; border-radius:999px; border:1px solid #D8D2C7; background:#ffffff;
  color:#2F4237; font-family:inherit; font-size:12px; font-weight:600; cursor:pointer;
  transition:background 0.15s ease, border-color 0.15s ease, color 0.15s ease; letter-spacing:0.2px; }
.bsr-lt-chip:hover{ border-color:#2F4237; }
.bsr-lt-chip.is-active{ background:#2F4237; border-color:#2F4237; color:#ffffff; }
.bsr-lt-select{ padding:6px 30px 6px 12px; border-radius:8px; border:1px solid #D8D2C7; background:#ffffff;
  color:#2F4237; font-family:inherit; font-size:13px; font-weight:600; cursor:pointer;
  -webkit-appearance:none; appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%232F4237' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 10px center; }
.bsr-lt-trend{ display:inline-flex; align-items:center; gap:8px; color:#5C6359; font-size:12px; }
.bsr-lt-trend svg{ display:block; }
.bsr-lt-trend-label{ font-weight:600; color:#2F4237; }

@media (max-width:640px){
  .bsr-lt-cards{ grid-template-columns:1fr; }
  .bsr-lt-value{ font-size:32px; }
  .bsr-lt-controls{ width:100%; }
}
@media (prefers-reduced-motion:reduce){
  .bsr-lt-fade{ animation:none; }
  .bsr-lt-chip{ transition:none; }
}

/* ==========================================================================
   v2.6.80 - Manage tests + non-destructive account copy presentation
   JS owns data, state and focus management; this block owns the visual shell.
   ========================================================================== */
.bsr-tests-trigger{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-height:44px;padding:9px 14px;border:1px solid rgba(47,66,55,.34);
  border-radius:8px;background:#fff;color:#2F4237;
  font-family:'Outfit',system-ui,-apple-system,sans-serif;font-size:12px;
  font-weight:600;line-height:1;letter-spacing:.01em;white-space:nowrap;
  cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease;
}
.bsr-tests-trigger:hover{background:#EFECE6;border-color:#2F4237;}
.bsr-tests-trigger svg{width:16px;height:16px;flex:0 0 auto;}
.bsr-tests-acceptance{
  flex:0 1 auto;min-height:36px;display:inline-flex;align-items:center;
  padding:8px 12px;border:1px solid rgba(107,122,90,.35);border-radius:8px;
  background:#FAF7F2;color:#2F4237;font:600 11px/1.35 'Outfit',system-ui,sans-serif;
  opacity:1;transform:none;transition:opacity .2s ease,transform .2s ease;
}
.bsr-tests-acceptance.is-leaving{opacity:0;transform:translateY(-4px);}
.bsr-tests-trigger:focus-visible,
.bsr-tests-modal button:focus-visible,
.bsr-tests-modal input:focus-visible{
  outline:3px solid rgba(176,139,79,.72);outline-offset:3px;
}
body.bsr-tests-modal-open{overflow:hidden;}
.bsr-tests-modal,
.bsr-tests-modal *{box-sizing:border-box;}
.bsr-tests-modal{
  position:fixed;inset:0;z-index:1000002;
  display:flex;align-items:center;justify-content:center;
  padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));
  color:#1C1C1A;font-family:'Outfit',system-ui,-apple-system,sans-serif;
  overflow:hidden;isolation:isolate;
}
.bsr-tests-modal[hidden]{display:none!important;}
.bsr-tests-backdrop{
  position:absolute;inset:0;z-index:0;background:rgba(47,66,55,.72);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  animation:bsr-tests-fade-in .18s ease-out both;
}
.bsr-tests-panel{
  position:relative;z-index:1;width:min(100%,760px);
  max-height:min(820px,calc(100vh - 32px));max-height:min(820px,calc(100dvh - 32px));
  display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;
  background:#fff;border:1px solid rgba(216,210,199,.95);border-radius:16px;
  box-shadow:0 28px 80px rgba(28,28,26,.28);overflow:hidden;
  animation:bsr-tests-panel-in .22s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes bsr-tests-fade-in{from{opacity:0}to{opacity:1}}
@keyframes bsr-tests-panel-in{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
.bsr-tests-header{
  position:relative;padding:26px 76px 22px 28px;border-bottom:1px solid #D8D2C7;
  background:#fff;
}
.bsr-tests-eyebrow{
  margin:0 0 7px;color:#B08B4F;font-size:10px;font-weight:700;
  line-height:1.2;letter-spacing:.14em;text-transform:uppercase;
}
.bsr-tests-title{
  margin:0;color:#2F4237;font-size:clamp(23px,3vw,29px);font-weight:700;
  line-height:1.14;letter-spacing:-.03em;
}
.bsr-tests-description{
  max-width:590px;margin:8px 0 0;color:#6B7A5A;font-size:14px;
  font-weight:400;line-height:1.55;
}
.bsr-tests-close{
  position:absolute;top:18px;right:20px;width:44px;height:44px;
  display:inline-flex;align-items:center;justify-content:center;padding:0;
  border:1px solid transparent;border-radius:50%;background:transparent;color:#2F4237;
  font:400 26px/1 'Outfit',system-ui,sans-serif;cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease;
}
.bsr-tests-close:hover{background:#EFECE6;border-color:#D8D2C7;}
.bsr-tests-body{
  min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
  padding:22px 28px 26px;background:#fff;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;
}
.bsr-tests-status{
  margin:0 0 16px;padding:11px 13px;border:1px solid rgba(176,139,79,.32);
  border-radius:10px;background:#FAF7F2;color:#2F4237;font-size:13px;
  font-weight:500;line-height:1.45;
}
.bsr-tests-status:empty{display:none;}
.bsr-tests-sr-only{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;
  margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
.bsr-tests-loading{display:grid;gap:10px;}
.bsr-tests-loading[hidden],.bsr-tests-list[hidden],.bsr-tests-empty[hidden],
.bsr-tests-error[hidden],.bsr-tests-copy-step[hidden]{display:none!important;}
.bsr-tests-loading-row{
  display:grid;grid-template-columns:44px minmax(0,1fr) 84px;align-items:center;
  gap:14px;min-height:78px;padding:14px 16px;border:1px solid #EFECE6;
  border-radius:12px;background:#fff;
}
.bsr-tests-loading-mark,.bsr-tests-loading-line{
  display:block;background:#EFECE6;animation:bsr-tests-loading 1.35s ease-in-out infinite alternate;
}
.bsr-tests-loading-mark{width:22px;height:22px;margin:auto;border-radius:6px;}
.bsr-tests-loading-copy{display:grid;gap:9px;}
.bsr-tests-loading-line{height:11px;border-radius:999px;}
.bsr-tests-loading-line:first-child{width:min(100%,230px);}
.bsr-tests-loading-line:last-child{width:min(70%,160px);}
.bsr-tests-loading-pill{width:76px;height:24px;border-radius:999px;background:#EFECE6;}
@keyframes bsr-tests-loading{from{opacity:.48}to{opacity:1}}
.bsr-tests-list{display:grid;gap:10px;margin:0;padding:0;list-style:none;}
.bsr-tests-row{
  display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;
  gap:8px 14px;min-width:0;padding:15px 16px;border:1px solid #D8D2C7;
  border-radius:12px;background:#fff;transition:border-color .16s ease,background-color .16s ease;
}
.bsr-tests-row:hover{border-color:rgba(47,66,55,.52);}
.bsr-tests-row.is-hidden{background:#FAF7F2;}
.bsr-tests-check{
  position:relative;width:44px;height:44px;display:flex;align-items:center;
  justify-content:center;margin:0;cursor:pointer;
}
.bsr-tests-check input{margin:0;cursor:pointer;-webkit-appearance:none;appearance:none;}
.bsr-tests-visibility-input{
  width:42px!important;height:24px!important;border:1px solid #BDB5A9;border-radius:999px!important;
  background-color:#D8D2C7;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='8' fill='%23ffffff'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:3px center;box-shadow:0 1px 2px rgba(28,28,26,.12);
  transition:background-color .16s ease,border-color .16s ease,background-position .16s ease;
}
.bsr-tests-visibility-input:checked{
  border-color:#2F4237;background-color:#2F4237;background-position:21px center;
}
.bsr-tests-copy-input{
  width:22px!important;height:22px!important;border:1.5px solid #8F978C;border-radius:6px!important;background:#fff;
  transition:background-color .16s ease,border-color .16s ease;
}
.bsr-tests-copy-input:checked{
  border-color:#2F4237;background-color:#2F4237;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M3 7.2l2.5 2.5L11 4.4' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center;
}
.bsr-tests-copy-select{display:none;}
.bsr-tests-modal.is-copy-mode .bsr-tests-visibility{display:none;}
.bsr-tests-modal.is-copy-mode .bsr-tests-copy-select{display:flex;}
.bsr-tests-info{min-width:0;}
.bsr-tests-label-line{display:flex;align-items:center;gap:7px 8px;flex-wrap:wrap;min-width:0;}
.bsr-tests-label{
  min-width:0;color:#1C1C1A;font-size:15px;font-weight:600;line-height:1.35;
  overflow-wrap:anywhere;
}
.bsr-tests-type-pill,.bsr-tests-ownership-badge{
  display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;
  font-size:10px;font-weight:700;line-height:1;letter-spacing:.07em;text-transform:uppercase;
  white-space:nowrap;
}
.bsr-tests-type-pill{background:#EFECE6;color:#2F4237;}
.bsr-tests-type-pill.is-vo2{background:rgba(107,122,90,.13);color:#536047;}
.bsr-tests-type-pill.is-rmr{background:rgba(176,139,79,.13);color:#8A682F;}
.bsr-tests-ownership-badge{border:1px solid rgba(176,139,79,.38);background:#fff;color:#8A682F;}
.bsr-tests-meta{
  display:flex;align-items:center;gap:5px 9px;flex-wrap:wrap;margin-top:5px;
  color:#6B7A5A;font-size:12px;font-weight:400;line-height:1.4;
}
.bsr-tests-meta span+span::before{content:'\2022';margin-right:9px;color:#B08B4F;}
.bsr-tests-state{
  justify-self:end;color:#6B7A5A;font-size:11px;font-weight:600;line-height:1.3;
  white-space:nowrap;
}
.bsr-tests-state.is-visible{color:#2F4237;}
.bsr-tests-copy-usage{
  justify-self:end;max-width:190px;display:inline-flex;align-items:center;min-height:26px;
  padding:5px 9px;border:1px solid rgba(107,122,90,.32);border-radius:999px;
  background:#FAF7F2;color:#536047;font-size:11px;font-weight:600;line-height:1.35;
  text-align:right;white-space:normal;overflow-wrap:anywhere;
}
.bsr-tests-info .bsr-tests-copy-usage{margin-top:8px;}
.bsr-tests-copy-usage.is-limit{
  border-color:rgba(176,139,79,.48);background:#EFECE6;color:#6D5125;
}
.bsr-tests-row.is-selected{border-color:rgba(47,66,55,.7);background:#FAF7F2;}
.bsr-tests-row.is-copy-limit,.bsr-tests-row.is-limit{
  border-color:#D8D2C7;background:#FAF7F2;
}
.bsr-tests-row.is-copy-limit:hover,.bsr-tests-row.is-limit:hover{border-color:#D8D2C7;}
.bsr-tests-row.is-copy-limit .bsr-tests-check,.bsr-tests-row.is-limit .bsr-tests-check{cursor:not-allowed;}
.bsr-tests-copy-input:disabled{
  border-color:#D8D2C7;background:#EFECE6;cursor:not-allowed;
}
.bsr-tests-copy-limit-note{
  margin:7px 0 0;color:#6D5125;font-size:11px;font-weight:600;line-height:1.45;
}
.bsr-tests-empty,.bsr-tests-error{
  padding:34px 22px;border:1px solid #D8D2C7;border-radius:12px;
  background:#FAF7F2;text-align:center;
}
.bsr-tests-empty-mark{
  width:44px;height:44px;display:flex;align-items:center;justify-content:center;
  margin:0 auto 13px;border-radius:50%;background:#2F4237;color:#EFECE6;
}
.bsr-tests-empty h3,.bsr-tests-error h3,.bsr-tests-copy-step h3{
  margin:0;color:#2F4237;font-size:18px;font-weight:700;line-height:1.25;letter-spacing:-.02em;
}
.bsr-tests-empty p,.bsr-tests-error p,.bsr-tests-copy-step p{
  margin:7px auto 0;color:#6B7A5A;font-size:13px;line-height:1.55;
}
.bsr-tests-copy-step{min-width:0;}
.bsr-tests-copy-back{
  min-height:44px;display:inline-flex;align-items:center;gap:7px;margin:0 0 15px;padding:8px 0;
  border:0;background:transparent;color:#2F4237;font-family:inherit;font-size:13px;font-weight:600;
  cursor:pointer;text-decoration:underline;text-decoration-color:rgba(176,139,79,.65);
  text-underline-offset:4px;
}
.bsr-tests-copy-mount{display:grid;gap:18px;margin-top:20px;min-width:0;}
.bsr-tests-copy-card{
  padding:18px;border:1px solid #D8D2C7;border-radius:12px;background:#FAF7F2;
}
.bsr-tests-field{display:grid;gap:7px;}
.bsr-tests-field label{color:#2F4237;font-size:12px;font-weight:700;letter-spacing:.02em;}
.bsr-tests-field input{
  width:100%;min-height:48px;padding:11px 13px;border:1px solid #BDB5A9;border-radius:8px;
  background:#fff;color:#1C1C1A;font:400 16px/1.4 'Outfit',system-ui,sans-serif;
}
.bsr-tests-field input[aria-invalid="true"]{border-color:#A34A36;}
.bsr-tests-help{margin:6px 0 0;color:#6B7A5A;font-size:12px;line-height:1.45;}
.bsr-tests-intro{display:grid;gap:6px;margin-bottom:4px;}
.bsr-tests-intro-copy,.bsr-tests-step-summary{margin:0;color:#6B7A5A;font-size:13px;line-height:1.55;}
.bsr-tests-step-title{margin:0;color:#2F4237;font-size:18px;font-weight:700;line-height:1.3;letter-spacing:-.02em;}
.bsr-tests-rows{display:grid;gap:10px;}
.bsr-tests-copy-empty{margin:0;padding:18px;border:1px solid #D8D2C7;border-radius:12px;background:#FAF7F2;color:#6B7A5A;font-size:13px;text-align:center;}
.bsr-tests-copy-form{margin:14px 0 0;}
.bsr-tests-email-input{font-size:16px!important;}
.bsr-tests-field-error{margin:7px 0 0!important;color:#8D3D2D!important;font-size:12px!important;line-height:1.4!important;}
.bsr-tests-review{display:grid;gap:15px;}
.bsr-tests-review-summary{display:grid;gap:4px;padding:14px 16px;border:1px solid #D8D2C7;border-radius:12px;background:#FAF7F2;}
.bsr-tests-review-label{color:#6B7A5A;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;}
.bsr-tests-review-email{color:#2F4237;font-size:15px;font-weight:600;line-height:1.35;overflow-wrap:anywhere;}
.bsr-tests-review-list{display:grid;gap:0;margin:0;padding:0;border-top:1px solid #D8D2C7;list-style:none;}
.bsr-tests-review-test{padding:10px 2px;border-bottom:1px solid #D8D2C7;color:#1C1C1A;font-size:13px;line-height:1.4;}
.bsr-tests-copy-notice{padding:15px;border:1px solid rgba(176,139,79,.38);border-radius:12px;background:#FAF7F2;}
.bsr-tests-copy-notice.is-lifetime-limit,.bsr-tests-limit-notice{
  padding:14px 15px;border:1px solid rgba(176,139,79,.48);border-left:3px solid #B08B4F;
  border-radius:10px;background:#FAF7F2;color:#2F4237;
}
.bsr-tests-limit-notice{font-size:12px;line-height:1.5;}
.bsr-tests-limit-notice strong{font-weight:700;}
.bsr-tests-copy-notice-title{display:block;color:#2F4237;font-size:13px;font-weight:700;line-height:1.35;}
.bsr-tests-copy-notice-copy{margin:5px 0 0!important;}
.bsr-tests-copy-success{display:grid;justify-items:center;gap:9px;padding:24px 12px;text-align:center;}
.bsr-tests-copy-success.is-immediate{gap:10px;padding:28px 12px 24px;}
.bsr-tests-success-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#2F4237;color:#EFECE6;font-size:23px;font-weight:700;}
.bsr-tests-copy-success.is-immediate .bsr-tests-success-icon{width:52px;height:52px;}
.bsr-tests-success-copy{max-width:470px!important;}
.bsr-tests-success-email{max-width:100%;color:#2F4237;font-weight:700;overflow-wrap:anywhere;}
.bsr-tests-success-note{color:#2F4237!important;font-weight:600!important;}
.bsr-tests-footer{
  display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:16px 28px max(16px,env(safe-area-inset-bottom));
  border-top:1px solid #D8D2C7;background:#FAF7F2;
}
.bsr-tests-footer[hidden],.bsr-tests-button[hidden]{display:none!important;}
.bsr-tests-actions{display:contents;}
.bsr-tests-button,.bsr-tests-action-btn{
  min-height:44px;display:inline-flex;align-items:center;justify-content:center;
  padding:10px 18px;border:1px solid #2F4237;border-radius:8px;
  font-family:'Outfit',system-ui,-apple-system,sans-serif;font-size:13px;
  font-weight:600;line-height:1.2;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.bsr-tests-button:disabled,.bsr-tests-action-btn:disabled{opacity:.48;cursor:not-allowed;}
.bsr-tests-button--primary{margin-left:0;background:#2F4237;color:#EFECE6;}
.bsr-tests-button--primary:not(:disabled):hover{background:#24352C;border-color:#24352C;}
.bsr-tests-button--secondary{background:#fff;color:#2F4237;}
.bsr-tests-button--secondary:not(:disabled):hover{background:#EFECE6;}
.bsr-tests-button--quiet{margin-left:auto;border-color:transparent;background:transparent;color:#2F4237;}
.bsr-tests-button--quiet:not(:disabled):hover{background:#EFECE6;border-color:#D8D2C7;}
.bsr-tests-action-primary{background:#2F4237;color:#EFECE6;}
.bsr-tests-action-primary:not(:disabled):hover{background:#24352C;border-color:#24352C;}
.bsr-tests-action-secondary{background:#fff;color:#2F4237;}
.bsr-tests-action-secondary:not(:disabled):hover{background:#EFECE6;}

@media (max-width:600px){
  .bsr-tests-trigger{flex:1 1 auto;}
  .bsr-tests-acceptance{flex:1 0 100%;}
  .bsr-tests-modal{
    align-items:stretch;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));
  }
  .bsr-tests-panel{width:100%;height:100%;max-height:none;border-radius:16px;}
  .bsr-tests-header{padding:20px 62px 17px 18px;}
  .bsr-tests-close{top:10px;right:10px;}
  .bsr-tests-description{font-size:13px;line-height:1.48;}
  .bsr-tests-body{padding:16px 14px 20px;scrollbar-gutter:auto;}
  .bsr-tests-loading-row{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:12px 10px;}
  .bsr-tests-loading-pill{display:none;}
  .bsr-tests-row{grid-template-columns:44px minmax(0,1fr);gap:6px 9px;padding:12px 10px;}
  .bsr-tests-check{width:44px;}
  .bsr-tests-state{grid-column:2;justify-self:start;white-space:normal;}
  .bsr-tests-copy-usage{grid-column:2;justify-self:start;max-width:100%;text-align:left;}
  .bsr-tests-meta{gap:3px 7px;}
  .bsr-tests-meta span+span::before{margin-right:7px;}
  .bsr-tests-footer{gap:8px;padding:12px 14px max(12px,env(safe-area-inset-bottom));}
  .bsr-tests-button,.bsr-tests-action-btn{flex:1 1 calc(50% - 4px);padding-right:10px;padding-left:10px;}
  .bsr-tests-button--quiet{margin-left:0;}
  .bsr-tests-button--primary{flex-basis:100%;}
}
@media (max-width:360px){
  .bsr-tests-title{font-size:22px;}
  .bsr-tests-header{padding-left:16px;}
  .bsr-tests-body{padding-right:10px;padding-left:10px;}
  .bsr-tests-label{font-size:14px;}
  .bsr-tests-row{gap:5px 8px;padding:11px 8px;}
  .bsr-tests-copy-usage{font-size:10px;padding-right:8px;padding-left:8px;}
  .bsr-tests-copy-notice.is-lifetime-limit,.bsr-tests-limit-notice{padding:12px;}
  .bsr-tests-copy-success.is-immediate{padding-right:4px;padding-left:4px;}
  .bsr-tests-footer{padding-right:10px;padding-left:10px;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-tests-trigger,.bsr-tests-acceptance,.bsr-tests-close,.bsr-tests-row,.bsr-tests-button,.bsr-tests-action-btn,
  .bsr-tests-visibility-input,.bsr-tests-copy-input,.bsr-tests-copy-usage{transition:none!important;}
  .bsr-tests-backdrop,.bsr-tests-panel,.bsr-tests-loading-mark,.bsr-tests-loading-line{animation:none!important;}
}

/* ==========================================================================
   v2.6.87 - Calm, two-row customer toolbar on narrow screens
   The account menu remains hidden on desktop; JavaScript owns its open state.
   ========================================================================== */
.bsr-sr-only{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;
  margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
#bsr-header .bsr-header-tools,
#bsr-header .bsr-header-scan-row,
#bsr-header .bsr-header-action-row{
  display:flex;align-items:center;gap:8px;
}
#bsr-header .bsr-header-tools{flex-wrap:wrap;}
#bsr-header .bsr-header-scan-row{min-width:0;}
#bsr-header .bsr-header-action-row{flex-wrap:wrap;}
#bsr-header .bsr-scan-select-control{
  min-width:120px;max-width:200px;min-height:44px;flex:1 1 160px;
  padding:9px 32px 9px 12px;border:1px solid rgba(47,66,55,.24);border-radius:10px;
  background-color:#FAF9F6;color:#2F4237;font:600 12px/1.2 'Outfit',system-ui,-apple-system,sans-serif;
  cursor:pointer;
}
#bsr-header .bsr-header-action{
  min-height:44px;padding:9px 14px;border:1px solid rgba(47,66,55,.34);border-radius:10px;
  background:#fff;color:#2F4237;font:600 12px/1 'Outfit',system-ui,-apple-system,sans-serif;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;
  cursor:pointer;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,color .18s ease;
}
#bsr-header .bsr-header-action:hover{background:#EFECE6;border-color:#2F4237;}
#bsr-header .bsr-header-action svg{width:16px;height:16px;flex:0 0 auto;}
#bsr-header .bsr-header-action--human{
  border-color:rgba(176,139,79,.62);box-shadow:inset 3px 0 0 #B08B4F;color:#2F4237;
}
#bsr-header .bsr-header-action--human:hover{border-color:#B08B4F;background:#FAF7F2;}
#bsr-header .bsr-header-action--human svg{color:#B08B4F;}
#bsr-header .bsr-mobile-account{display:none;position:relative;flex:0 0 auto;}
#bsr-header .bsr-mobile-account-btn{
  min-width:96px;min-height:44px;padding:9px 12px;border:1px solid rgba(47,66,55,.34);
  border-radius:10px;background:#fff;color:#2F4237;
  font:650 12px/1 'Outfit',system-ui,-apple-system,sans-serif;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease;
}
#bsr-header .bsr-mobile-account-btn:hover,
#bsr-header .bsr-mobile-account-btn[aria-expanded="true"]{background:#EFECE6;border-color:#2F4237;}
#bsr-header .bsr-mobile-account-btn svg{width:17px;height:17px;flex:0 0 auto;}
#bsr-header .bsr-mobile-account-alert{
  position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:999px;
  background:#B08B4F;box-shadow:0 0 0 2px #fff;
}
#bsr-header .bsr-mobile-account-alert[hidden],
#bsr-header .bsr-mobile-account-menu[hidden]{display:none!important;}
#bsr-header .bsr-mobile-account-menu{
  position:absolute;z-index:80;top:calc(100% + 8px);right:0;width:min(264px,calc(100vw - 32px));
  padding:6px;background:#fff;border:1px solid rgba(47,66,55,.18);border-radius:14px;
  box-shadow:0 14px 36px rgba(31,45,36,.16),0 2px 7px rgba(31,45,36,.08);
}
#bsr-header .bsr-mobile-account-menu::before{
  content:"";position:absolute;right:27px;top:-5px;width:9px;height:9px;background:#fff;
  border-left:1px solid rgba(47,66,55,.18);border-top:1px solid rgba(47,66,55,.18);
  transform:rotate(45deg);
}
#bsr-header .bsr-mobile-menu-action{
  position:relative;z-index:1;width:100%;min-height:48px;margin:0;padding:9px 10px;border:0;
  border-radius:9px;background:#fff;color:#2F4237;text-decoration:none;text-align:left;
  display:flex;align-items:center;gap:10px;font-family:'Outfit',system-ui,-apple-system,sans-serif;
  cursor:pointer;transition:background-color .16s ease;
}
#bsr-header .bsr-mobile-menu-action:hover{background:#F5F2EC;}
#bsr-header .bsr-mobile-menu-action svg{width:18px;height:18px;flex:0 0 auto;color:#6B7A5A;}
#bsr-header .bsr-mobile-menu-copy{display:flex;min-width:0;flex-direction:column;gap:2px;}
#bsr-header .bsr-mobile-menu-label{font-size:13px;font-weight:650;line-height:1.2;}
#bsr-header .bsr-mobile-menu-status{color:#6B7A5A;font-size:10.5px;font-weight:450;line-height:1.25;}
#bsr-header .bsr-mobile-menu-logout{margin-top:4px;border-top:1px solid rgba(47,66,55,.12);border-radius:0 0 9px 9px;}
#bsr-header .bsr-mobile-menu-logout svg{color:#B08B4F;}
#bsr-header .bsr-scan-select-control:focus-visible,
#bsr-header .bsr-header-action:focus-visible,
#bsr-header .bsr-mobile-account-btn:focus-visible,
#bsr-header .bsr-mobile-menu-action:focus-visible{
  outline:3px solid rgba(176,139,79,.66);outline-offset:2px;
}

@media (max-width:560px){
  #bsr-app:not(.bsr-staff-view) #bsr-header{padding:12px 16px 13px!important;border-bottom-width:2px;}
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-header-account-row{display:none!important;}
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-header-tools{
    display:grid;grid-template-columns:minmax(0,1fr);gap:8px;width:100%;
  }
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-header-scan-row{
    display:flex;width:100%;gap:8px;position:relative;justify-content:flex-end;
  }
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-scan-select-control{
    width:auto;min-width:0;max-width:none;min-height:44px;flex:1 1 auto;
    padding:10px 30px 10px 12px;font-size:12px;border-color:rgba(47,66,55,.28);
  }
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-mobile-account{display:block;}
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-header-action-row{
    display:flex;align-items:stretch;flex-wrap:nowrap;gap:8px;width:100%;
  }
  #bsr-app:not(.bsr-staff-view) #bsr-header #bsr-manage-tests-btn{display:none!important;}
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-header-action-row>.bsr-header-action{
    width:auto;min-width:0;min-height:44px;flex:1 1 0;margin:0;padding:9px 8px;border-radius:10px;
    font-size:12px;line-height:1.15;white-space:normal;
  }
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-header-action-row>.bsr-header-action>span{
    min-width:0;text-align:center;overflow-wrap:anywhere;
  }
  /* Complete no-results responses do not run the normal DEXA selector setup. */
  #bsr-app:not(.bsr-staff-view) #bsr-header.bsr-header--no-scan .bsr-scan-select-control{
    display:none!important;
  }
  #bsr-app:not(.bsr-staff-view) #bsr-header.bsr-header--no-scan #bsr-ai-btn{
    display:none!important;
  }
}
@media (max-width:340px){
  #bsr-app:not(.bsr-staff-view) #bsr-header{padding-right:12px!important;padding-left:12px!important;}
  #bsr-header .bsr-mobile-account-btn{min-width:90px;padding-right:10px;padding-left:10px;}
  #bsr-app:not(.bsr-staff-view) #bsr-header .bsr-header-action-row>.bsr-header-action{font-size:11.5px;}
}

/* v2.6.88: calm, customer-only results utilities. Kept below the results
   surfaces so the actions feel useful without competing with the data. */
.bsr-results-actions,
#bsr-email-results-modal,
#bsr-email-results-modal *,
#bsr-email-results-modal *::before,
#bsr-email-results-modal *::after{box-sizing:border-box;}
.bsr-results-actions[hidden],#bsr-email-results-modal[hidden],
.bsr-email-results-state[hidden]{display:none!important;}
.bsr-results-actions{
  margin:0 0 32px;padding:24px;border:1px solid rgba(47,66,55,.16);border-radius:16px;
  background:#fff;color:#2F4237;box-shadow:0 2px 10px rgba(31,45,36,.055);
  font-family:'Outfit',system-ui,-apple-system,sans-serif;
}
.bsr-results-actions__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:24px;align-items:center;}
.bsr-results-actions__copy{min-width:0;}
.bsr-results-actions__eyebrow{
  margin:0 0 8px;color:#6B7A5A;font-size:10.5px;font-weight:700;line-height:1.2;
  letter-spacing:.12em;text-transform:uppercase;
}
.bsr-results-actions__title{margin:0;color:#2F4237;font-size:22px;font-weight:700;line-height:1.2;letter-spacing:-.015em;}
.bsr-results-actions__intro{max-width:520px;margin:8px 0 0;color:#5D6B61;font-size:13.5px;font-weight:400;line-height:1.55;}
.bsr-results-actions__controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.bsr-results-actions__button{
  width:100%;min-width:0;min-height:46px;padding:11px 14px;border:1px solid #2F4237;border-radius:11px;
  background:#fff;color:#2F4237;font:650 13px/1.25 'Outfit',system-ui,-apple-system,sans-serif;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;text-decoration:none;
  cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.bsr-results-actions__button svg{width:17px;height:17px;flex:0 0 auto;}
.bsr-results-actions__button:hover{background:#F5F2EC;box-shadow:0 3px 10px rgba(31,45,36,.08);transform:translateY(-1px);}
.bsr-results-actions__button--primary{background:#2F4237;color:#fff;}
.bsr-results-actions__button--primary:hover{background:#25362D;border-color:#25362D;}
.bsr-results-actions__privacy{
  grid-column:2;margin:0;display:flex;align-items:flex-start;justify-content:center;gap:6px;
  color:#6B7A5A;font-size:10.5px;font-weight:500;line-height:1.4;text-align:center;
}
.bsr-results-actions__privacy svg{width:13px;height:13px;flex:0 0 auto;margin-top:1px;color:#B08B4F;}
.bsr-results-actions__button:focus-visible,
.bsr-email-results-close:focus-visible,.bsr-email-results-button:focus-visible{
  outline:3px solid rgba(176,139,79,.66);outline-offset:3px;
}

#bsr-email-results-modal{
  position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;
  padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px))
          max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));
  font-family:'Outfit',system-ui,-apple-system,sans-serif;
}
.bsr-email-results-backdrop{position:absolute;inset:0;background:rgba(18,29,23,.68);}
.bsr-email-results-dialog{
  position:relative;z-index:1;width:min(100%,560px);max-height:calc(100vh - 32px);
  max-height:calc(100dvh - max(16px,env(safe-area-inset-top,0px)) - max(16px,env(safe-area-inset-bottom,0px)));overflow:auto;
  padding:32px;border:1px solid rgba(47,66,55,.16);border-radius:18px;background:#fff;color:#2F4237;
  box-shadow:0 22px 60px rgba(19,33,24,.24),0 2px 8px rgba(19,33,24,.1);
  overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
}
.bsr-email-results-close{
  position:absolute;top:14px;right:14px;width:44px;height:44px;padding:0;border:0;border-radius:999px;
  background:transparent;color:#6B7A5A;display:flex;align-items:center;justify-content:center;cursor:pointer;
  transition:background-color .18s ease,color .18s ease;
}
.bsr-email-results-close:hover{background:#F5F2EC;color:#2F4237;}
.bsr-email-results-close svg{width:20px;height:20px;}
.bsr-email-results-icon{
  width:42px;height:42px;margin:0 0 18px;border-radius:12px;background:#EFECE6;color:#2F4237;
  display:flex;align-items:center;justify-content:center;
}
.bsr-email-results-icon svg{width:21px;height:21px;}
.bsr-email-results-heading{padding-right:40px;}
.bsr-email-results-heading h2{margin:0;color:#2F4237;font-size:24px;font-weight:700;line-height:1.18;letter-spacing:-.02em;}
.bsr-email-results-heading p{margin:10px 0 0;color:#5D6B61;font-size:14px;line-height:1.55;}
.bsr-email-results-destination{
  min-width:0;margin:22px 0 0;padding:15px 16px;border:1px solid rgba(47,66,55,.16);border-radius:12px;background:#F7F5F1;
}
.bsr-email-results-destination__label{display:block;margin-bottom:4px;color:#6B7A5A;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;}
#bsr-email-results-destination{display:block;max-width:100%;overflow-wrap:anywhere;color:#2F4237;font-size:15px;font-weight:700;line-height:1.35;}
.bsr-email-results-list{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:12px;}
.bsr-email-results-list li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:flex-start;color:#4F5F54;font-size:13px;line-height:1.45;}
.bsr-email-results-list svg{width:18px;height:18px;margin-top:1px;color:#6B7A5A;}
.bsr-email-results-pdf-note{
  margin:18px 0 0;padding-top:16px;border-top:1px solid rgba(47,66,55,.13);color:#6B7A5A;font-size:12px;line-height:1.5;
}
.bsr-email-results-status-visual{text-align:center;padding:20px 0 6px;}
.bsr-email-results-spinner{
  width:36px;height:36px;margin:0 auto 16px;border:3px solid #EFECE6;border-top-color:#2F4237;border-radius:999px;animation:bsr-spin .75s linear infinite;
}
.bsr-email-results-status-visual .bsr-email-results-icon{margin:0 auto 16px;}
.bsr-email-results-status-visual h3{margin:0;color:#2F4237;font-size:20px;font-weight:700;line-height:1.25;}
.bsr-email-results-status-visual p{margin:8px auto 0;max-width:400px;color:#5D6B61;font-size:13.5px;line-height:1.55;}
.bsr-email-results-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px;}
.bsr-email-results-button{
  min-width:0;min-height:46px;padding:11px 16px;border:1px solid #2F4237;border-radius:11px;
  background:#fff;color:#2F4237;font:650 13.5px/1.25 'Outfit',system-ui,-apple-system,sans-serif;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease;
}
.bsr-email-results-button:hover{background:#F5F2EC;}
.bsr-email-results-button--primary{background:#2F4237;color:#fff;}
.bsr-email-results-button--primary:hover{background:#25362D;border-color:#25362D;}
.bsr-email-results-button:disabled{cursor:wait;opacity:.58;}
.bsr-email-results-message{min-height:18px;margin:14px 0 0;color:#8A433B;font-size:12px;font-weight:600;line-height:1.45;text-align:center;}
.bsr-email-results-privacy{margin:14px 0 0;display:flex;align-items:flex-start;justify-content:center;gap:6px;color:#6B7A5A;font-size:10.5px;line-height:1.45;text-align:center;}
.bsr-email-results-privacy svg{width:13px;height:13px;flex:0 0 auto;margin-top:1px;color:#B08B4F;}

@media(max-width:760px){
  .bsr-results-actions__layout{grid-template-columns:1fr;gap:18px;}
  .bsr-results-actions__privacy{grid-column:1;}
}
@media(max-width:480px){
  .bsr-results-actions{padding:20px 16px;border-radius:14px;}
  .bsr-results-actions__title{font-size:20px;}
  .bsr-results-actions__controls{grid-template-columns:1fr;gap:8px;}
  .bsr-results-actions__button{min-height:48px;}
  .bsr-email-results-dialog{padding:28px 20px 22px;border-radius:16px;}
  .bsr-email-results-close{top:8px;right:8px;}
  .bsr-email-results-heading h2{font-size:22px;}
  .bsr-email-results-actions{grid-template-columns:1fr;gap:8px;}
  .bsr-email-results-button{min-height:48px;}
  #bsr-email-results-send{order:-1;}
}
@media (prefers-reduced-motion:reduce){
  #bsr-header .bsr-header-action,#bsr-header .bsr-mobile-account-btn,#bsr-header .bsr-mobile-menu-action,
  .bsr-results-actions__button,.bsr-email-results-close,.bsr-email-results-button{transition:none!important;}
  .bsr-results-actions__button:hover{transform:none;}
  .bsr-email-results-spinner{animation-duration:1.5s;}
}
@media print{
  #bsr-manage-tests-btn,#bsr-tests-modal,#bsr-mobile-account-btn,#bsr-mobile-account-menu,
  #bsr-results-actions,#bsr-email-results-modal{display:none!important;}
}
/* v2.7.12: desktop alignment. Scoped typography beats Astra's entry-content
   paragraph/heading margins; screen breakpoints preserve mobile and print. */
@media screen and (min-width:641px){
  #bsr-app .bsr-referral-eyebrow{margin:0 0 4px;}
  #bsr-app .bsr-referral-title{margin:0;}
  #bsr-app .bsr-referral-summary-value{margin:0;align-self:center;}
  #bsr-app .bsr-referral-toggle{margin:0;min-height:44px;}
  #bsr-app .bsr-referral-intro{margin:0 0 16px;}
  #bsr-app .bsr-referral-balance-copy{margin:6px 0 14px;}
  #bsr-app .bsr-referral-share-title{margin:0 0 9px;line-height:1.3;}
  #bsr-app .bsr-referral-code-copy{margin:0 0 12px;}
  #bsr-app .bsr-referral-copy-status{margin:0;}
  #bsr-app .bsr-referral-activity-title{margin:0 0 6px;line-height:1.3;}
}
@media screen and (min-width:761px){
  #bsr-app .bsr-results-actions__layout{
    grid-template-areas:"copy controls" "copy privacy";
    column-gap:24px;row-gap:8px;
  }
  #bsr-app .bsr-results-actions__copy{grid-area:copy;}
  #bsr-app .bsr-results-actions__controls{grid-area:controls;align-self:end;}
  #bsr-app .bsr-results-actions__privacy{grid-area:privacy;align-self:start;margin:0;}
  #bsr-app .bsr-results-actions__eyebrow{margin:0 0 8px;}
  #bsr-app .bsr-results-actions__title{margin:0;}
  #bsr-app .bsr-results-actions__intro{margin:8px 0 0;}
}
@media screen and (min-width:1024px){
  #bsr-app .bsr-referral-card{padding:16px 24px;}
  #bsr-app .bsr-referral-summary{gap:24px;}
  #bsr-app .bsr-referral-details{margin-top:16px;padding-top:16px;}
  #bsr-app .bsr-referral-balance,
  #bsr-app .bsr-referral-share{padding:24px;}
  /* onResize writes the legacy columns inline. Keep cardio-only accounts
     full width while giving DEXA metrics the larger share of the row. */
  #bsr-app #bsr-summary:not([data-bsr-no-dexa="1"]){
    grid-template-columns:minmax(320px,.36fr) minmax(0,.64fr)!important;
    align-items:start;
  }
  #bsr-app #bsr-scan-col,#bsr-app #bsr-metrics-column{min-width:0;}
  #bsr-app #bsr-scan-wrap{max-width:100%;max-height:none!important;}
  #bsr-app #bsr-scan-img{width:auto!important;max-width:100%;height:auto;max-height:520px!important;}
  #bsr-app .bsr-stats-title{margin:0;}
  #bsr-app #bsr-progress>div,
  #bsr-app .bsr-scan-guide,
  #bsr-app .bsr-composition-card,
  #bsr-app .bsr-metrics-disclaimer,
  #bsr-app #bsr-metrics>.bsr-card-wrap>[id^="bsr-card-"],
  #bsr-app #bsr-clinical-body>.bsr-card-wrap>[id^="bsr-card-"]{padding:24px!important;}
  /* The accordion's 1px border plus 23px padding aligns with its header. */
  #bsr-app #bsr-metrics>.bsr-card-wrap>[id^="bsr-acc-"],
  #bsr-app #bsr-clinical-body>.bsr-card-wrap>[id^="bsr-acc-"]{padding-inline:23px!important;}
  #bsr-app .bsr-scan-guide__details{grid-template-columns:repeat(auto-fit,minmax(115px,1fr));}
  #bsr-app .bsr-scan-guide__legend{flex-wrap:wrap;}
  #bsr-app .bsr-scan-guide__legend-items{justify-content:flex-start;}
  #bsr-app .bsr-composition-content{flex-wrap:wrap;}
  #bsr-app #bsr-comp-legend{min-width:0;}
}
/* BSR_LANGUAGE_STYLE_START */
/* Local CJK font fallbacks avoid network font dependencies and retain Outfit for Latin text. */
[id^="bsr-"][lang="zh-Hans"], [id^="bsr-"][lang="zh-Hans"] *,
#bsa-wiz[lang="zh-Hans"], #bsa-wiz[lang="zh-Hans"] *,
#bsa-attendee-modal[lang="zh-Hans"], #bsa-attendee-modal[lang="zh-Hans"] *,
#bsa-sub-modal[lang="zh-Hans"], #bsa-sub-modal[lang="zh-Hans"] *,
#bsa-credit-modal[lang="zh-Hans"], #bsa-credit-modal[lang="zh-Hans"] * {
  font-family: 'Outfit', 'PingFang SC', 'Microsoft YaHei', 'Noto Sans CJK SC', system-ui, sans-serif !important;
}
[id^="bsr-"][lang="zh-Hans"] .bsr-profile-title,
[id^="bsr-"][lang="zh-Hans"] .bsr-profile-section__title,
[id^="bsr-"][lang="zh-Hans"] .bsr-profile-eyebrow { letter-spacing: normal; }
.bsr-translation-notice{margin:12px 0;padding:12px 16px;border:1px solid #D8D2C7;border-radius:8px;background:#FAF7F2;color:#2F4237;font:13px/1.6 'Outfit',system-ui,sans-serif;overflow-wrap:anywhere;}
.bsr-translation-notice[hidden]{display:none;}
.bsr-translation-notice p{margin:0;}
[data-bsr-language="zh-Hant"],[data-bsr-language="zh-Hant"] *{font-family:'Outfit','PingFang TC','Microsoft JhengHei','Noto Sans CJK TC',system-ui,sans-serif;}
[data-bsr-language="ko"],[data-bsr-language="ko"] *{font-family:'Outfit','Malgun Gothic','Apple SD Gothic Neo','Noto Sans CJK KR',system-ui,sans-serif;}
[data-bsr-language="pa"],[data-bsr-language="pa"] *{font-family:'Outfit','Nirmala UI','Raavi','Noto Sans Gurmukhi',system-ui,sans-serif;line-height:1.6;letter-spacing:normal;}
.bsr-profile-language { margin: 20px 0; padding: 16px; border: 1px solid #D8D2C7; border-radius: 12px; background: #FAF7F2; min-width: 0; }
.bsr-profile-language__label { display: block; margin: 0 0 8px; color: #2F4237; font-size: 13px; font-weight: 600; line-height: 1.5; }
#bsr-profile-language, .bsr-profile-language__select { display: block; width: 100%; max-width: 100%; min-width: 0; min-height: 44px; box-sizing: border-box; padding: 10px 12px; border: 1px solid #D8D2C7; border-radius: 8px; color: #2F4237; background: #fff; font-family: 'Outfit', 'PingFang SC', 'Microsoft YaHei', 'Noto Sans CJK SC', system-ui, sans-serif; font-size: 16px; line-height: 1.5; cursor: pointer; appearance: auto; -webkit-appearance: menulist; }
#bsr-profile-language:focus-visible, .bsr-profile-language__select:focus-visible { outline: 2px solid #B08B4F; outline-offset: 3px; border-color: #2F4237; }
#bsr-profile-language:disabled { opacity: .65; cursor: wait; }
.bsr-profile-language__help, .bsr-profile-language__hint, .bsr-profile-language__notice { display: block; margin: 8px 0 0; color: #5C6359; font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
.bsr-profile-language__notice { color: #6B7A5A; }
.bsr-language-save-status { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; min-height: 24px; margin: 12px 0 0; color: #2F4237; font: 500 13px/1.6 'Outfit',system-ui,sans-serif; overflow-wrap: anywhere; }
.bsr-language-save-status[hidden], .bsr-language-save-retry[hidden] { display: none; }
.bsr-language-save-status[data-state="error"] { color: #8A392B; }
.bsr-language-save-status > span { min-width: 0; }
.bsr-language-save-retry { min-height: 44px; padding: 8px 16px; border: 1px solid #B08B4F; border-radius: 8px; background: #fff; color: #2F4237; font: 600 13px/1.5 'Outfit',system-ui,sans-serif; cursor: pointer; }
.bsr-language-save-retry:hover { background: #EFECE6; }
.bsr-language-save-retry:focus-visible { outline: 2px solid #B08B4F; outline-offset: 3px; }
#bsr-language-save-status { margin: 12px 0; padding: 12px 16px; border: 1px solid #D8D2C7; border-radius: 8px; background: #FAF7F2; }
@media print { .bsr-language-save-status { display: none; } }
[id^="bsr-"][lang="zh-Hans"] .bsr-tab { white-space: nowrap; }
@media (max-width: 480px) {
  .bsr-profile-language { padding: 14px; margin: 16px 0; }
  [id^="bsr-"][lang="zh-Hans"] .bsr-profile-title { line-height: 1.35; }
}
/* BSR_LANGUAGE_STYLE_END */

/* v2.7.22: Suggest a feature / Report a bug. */
/* v2.7.25: the entry point is a card at the top of #bsr-main, sibling to
   Referral Rewards: same shape, sage accent and a warmer ground so the two
   read as a pair without blurring together. */
#bsr-app .bsr-feedback-cta{
  position:relative;overflow:hidden;box-sizing:border-box;
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;
  margin:0 0 12px;padding:12px 16px;
  background:#FAF7F2;border:1px solid #D8D2C7;border-radius:14px;
  color:#2F4237;font-family:'Outfit',system-ui,-apple-system,sans-serif;
}
#bsr-app .bsr-feedback-cta::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#6B7A5A;}
#bsr-app .bsr-feedback-cta-icon{
  width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid rgba(107,122,90,.28);
  color:#6B7A5A;display:flex;align-items:center;justify-content:center;flex:0 0 auto;
}
#bsr-app .bsr-feedback-cta-icon svg{width:19px;height:19px;}
#bsr-app .bsr-feedback-cta-copy{min-width:0;}
#bsr-app .bsr-feedback-cta-title{
  margin:0;padding:0;color:#2F4237;font:700 18px/1.2 'Outfit',system-ui,-apple-system,sans-serif;
  letter-spacing:-.025em;overflow-wrap:anywhere;
}
#bsr-app .bsr-feedback-cta-text{margin:3px 0 0;padding:0;color:#4F5E54;font-size:13px;font-weight:500;line-height:1.4;}
#bsr-app .bsr-feedback-cta-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:9px 18px;
  background:#2F4237;border:1px solid #2F4237;border-radius:9px;color:#EFECE6;cursor:pointer;white-space:nowrap;
  font:600 13px/1.2 'Outfit',system-ui,-apple-system,sans-serif;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease;
}
#bsr-app .bsr-feedback-cta-btn:hover{background:#3B5043;border-color:#3B5043;color:#fff;}
#bsr-app .bsr-feedback-cta-btn:focus-visible{outline:3px solid rgba(176,139,79,.66);outline-offset:2px;}
@media screen and (min-width:1024px){
  #bsr-app .bsr-feedback-cta{gap:20px;padding:16px 24px;}
}
@media (max-width:640px){
  #bsr-app .bsr-feedback-cta{gap:12px;padding:10px 12px;}
  #bsr-app .bsr-feedback-cta-icon{width:34px;height:34px;}
  #bsr-app .bsr-feedback-cta-icon svg{width:17px;height:17px;}
  #bsr-app .bsr-feedback-cta-title{font-size:17px;}
  #bsr-app .bsr-feedback-cta-text{font-size:12px;}
  #bsr-app .bsr-feedback-cta-btn{padding:9px 12px;}
}
@media (max-width:480px){
  #bsr-app .bsr-feedback-cta{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-left:-6px;margin-right:-6px;border-radius:13px;}
  #bsr-app .bsr-feedback-cta-icon{display:none;}
  #bsr-app .bsr-feedback-cta-title{font-size:16px;}
  #bsr-app .bsr-feedback-cta-btn{max-width:124px;padding-left:10px;padding-right:10px;white-space:normal;text-align:center;}
}
@media (prefers-reduced-motion:reduce){#bsr-app .bsr-feedback-cta-btn{transition:none;}}
.bsr-feedback-card{max-width:520px;padding:28px 28px 24px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;box-sizing:border-box;}
.bsr-feedback-card h2{padding-right:32px;}
.bsr-feedback-card p{margin:0 0 16px;}
.bsr-feedback-x{
  position:absolute;top:12px;right:12px;width:36px;height:36px;padding:0;border:0;border-radius:50%;
  background:transparent;color:#6B7A5A;font:400 24px/1 'Outfit',system-ui,sans-serif;cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:background-color .16s ease;
}
.bsr-feedback-x:hover{background:#F5F2EC;color:#2F4237;}
.bsr-feedback-kinds{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 18px;padding:4px;border:0;border-radius:12px;background:#F5F2EC;min-width:0;}
.bsr-feedback-kind{position:relative;display:block;margin:0;cursor:pointer;}
.bsr-feedback-kind input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none;}
.bsr-feedback-kind span{
  display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px 10px;border-radius:9px;
  color:#2F4237;font:600 13px/1.2 'Outfit',system-ui,sans-serif;text-align:center;
  transition:background-color .16s ease,box-shadow .16s ease;
}
.bsr-feedback-kind input:checked + span{background:#fff;box-shadow:0 1px 3px rgba(47,66,55,.18),0 0 0 1px rgba(47,66,55,.12);}
.bsr-feedback-kind input:focus-visible + span{outline:3px solid rgba(176,139,79,.66);outline-offset:1px;}
.bsr-feedback-label{display:block;margin:0 0 3px;color:#2F4237;font:600 14px/1.3 'Outfit',system-ui,sans-serif;}
.bsr-feedback-card .bsr-feedback-hint{margin:0 0 8px;font-size:12.5px;line-height:1.4;color:#6B7A5A;}
.bsr-feedback-message{
  display:block;width:100%;min-height:128px;box-sizing:border-box;padding:12px 14px;resize:vertical;
  border:1px solid rgba(47,66,55,.28);border-radius:10px;background:#FAF9F6;color:#2F4237;
  font:400 16px/1.45 'Outfit',system-ui,sans-serif;
}
.bsr-feedback-message:focus{outline:none;border-color:#2F4237;box-shadow:0 0 0 3px rgba(176,139,79,.35);}
.bsr-feedback-shots{margin:10px 0 0;}
.bsr-feedback-thumbs{display:flex;flex-wrap:wrap;gap:8px;}
.bsr-feedback-thumbs:not(:empty){margin:0 0 10px;}
.bsr-feedback-thumb{position:relative;width:72px;height:72px;border-radius:10px;overflow:hidden;border:1px solid rgba(47,66,55,.2);background:#F5F2EC;}
.bsr-feedback-thumb img{display:block;width:100%;height:100%;object-fit:cover;}
.bsr-feedback-thumb button{
  position:absolute;top:3px;right:3px;width:26px;height:26px;padding:0;border:0;border-radius:50%;
  background:rgba(47,66,55,.82);color:#fff;font:400 17px/1 'Outfit',system-ui,sans-serif;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
}
.bsr-feedback-thumb button:focus-visible{outline:3px solid rgba(176,139,79,.8);outline-offset:1px;}
.bsr-feedback-attach-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.bsr-feedback-attach{
  display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 13px;border-radius:10px;
  border:1px dashed rgba(47,66,55,.4);background:#fff;color:#2F4237;font:600 13px/1 'Outfit',system-ui,sans-serif;
  cursor:pointer;transition:background-color .16s ease,border-color .16s ease;
}
.bsr-feedback-attach:hover{background:#F5F2EC;border-color:#2F4237;}
.bsr-feedback-attach svg{width:17px;height:17px;flex:0 0 auto;color:#6B7A5A;}
.bsr-feedback-attach-row:focus-within .bsr-feedback-attach{outline:3px solid rgba(176,139,79,.66);outline-offset:2px;}
.bsr-feedback-attach[hidden]{display:none!important;}
.bsr-feedback-attach-hint{font-size:11.5px;color:#9BA38F;}
.bsr-feedback-card .bsr-feedback-note{margin:8px 0 0;font-size:11.5px;line-height:1.45;color:#9BA38F;}
.bsr-feedback-card .bsr-feedback-status{margin:10px 0 0;min-height:0;font-size:13px;line-height:1.4;color:#9A4A2E;}
.bsr-feedback-card .bsr-feedback-status:empty{display:none;}
.bsr-feedback-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px;}
.bsr-feedback-actions .bsr-cta[disabled]{opacity:.6;cursor:progress;}
.bsr-feedback-cancel{
  padding:12px 22px;border-radius:10px;border:1px solid rgba(47,66,55,.2);background:transparent;color:#2F4237;
  font:600 14px/1 'Outfit',system-ui,sans-serif;cursor:pointer;transition:background-color .16s ease;
}
.bsr-feedback-cancel:hover{background:rgba(47,66,55,.05);}
.bsr-feedback-done{outline:none;}
.bsr-feedback-done[hidden],.bsr-feedback-form[hidden]{display:none!important;}
@media (max-width:480px){
  .bsr-feedback-modal{padding:12px;align-items:flex-end;}
  .bsr-feedback-card{padding:24px 18px 18px;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);}
  .bsr-feedback-actions{flex-direction:column-reverse;align-items:stretch;}
  .bsr-feedback-actions > *{width:100%;min-height:48px;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-feedback-x,.bsr-feedback-kind span,.bsr-feedback-cancel{transition:none;}
}
@media print{#bsr-feedback-cta,#bsr-feedback-modal{display:none!important;}}

/* v2.7.26: Strength results view (dashboard-9.js).
   The tab is hidden until the customer has a saved strength test; the
   switcher widens to three columns only while it is shown. Cards reuse the
   .bsr-cardio-card surface; everything new is prefixed .bsr-st-. Charts are
   inline SVG drawn at the measured width by dashboard-9.js.
   Sharp style (Eric, October 6, 2026), scoped to this section only: cards and
   panels 4px, controls and badges 2px, no pill or round shapes, square bar
   ends, butt line caps, square chart markers, crisp 1px stone borders.
   v2.7.27: illustrations (exercise figures, picture cards, an annotated force
   curve and metric glyphs) and aligned tables. The theme styles bare lists
   and tables (".entry-content ul" puts the browser's list indent back, and
   "table, td, th" draws a border on every cell with a 1.5em margin under the
   table), so list, table and description-list rules here are scoped under
   .bsr-st to outrank it. */
.bsr-results-view-tab[hidden]{display:none !important;}
.bsr-results-view-tabs.bsr-st-tabs--three{grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,720px);}
.bsr-st-view{
  padding:clamp(18px,2.6vw,32px);
  background:#FAF7F2;
  border:1px solid #D8D2C7;
  border-radius:4px;
}
.bsr-st{min-width:0;color:var(--bsr-forest);font-family:var(--bsr-font-body);}
.bsr-st-num{font-variant-numeric:tabular-nums;}
.bsr-st-unit{margin-left:3px;}
.bsr-st .bsr-st-help{margin:6px 0 0;color:#5C6359;font-size:13px;line-height:1.5;}
.bsr-st-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
.bsr-st-sprite{position:absolute;width:0;height:0;overflow:hidden;}
.bsr-st .bsr-st-slot{min-height:0;}
.bsr-st ul,.bsr-st ol,.bsr-st dl{margin:0;padding:0;list-style:none;}
.bsr-st li,.bsr-st dd{margin:0;}

/* Visit selector */
.bsr-st-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 16px;}
.bsr-st-controls:empty{display:none;}
.bsr-st-visits{display:inline-flex;flex-wrap:wrap;gap:6px;}
.bsr-st-visit{
  min-height:36px;padding:7px 14px;border:1px solid #D8D2C7;border-radius:2px;background:#FFFFFF;
  color:var(--bsr-forest);font:600 13px/1.2 var(--bsr-font-body);letter-spacing:.01em;cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease;
}
.bsr-st-visit:hover{border-color:var(--bsr-forest);}
.bsr-st-visit:focus-visible,.bsr-st-select:focus-visible{outline:3px solid rgba(176,139,79,.48);outline-offset:2px;}
.bsr-st-visit.is-active{background:var(--bsr-forest);border-color:var(--bsr-forest);color:#FFFFFF;}
.bsr-st-select{
  min-height:40px;padding:8px 34px 8px 12px;border:1px solid #D8D2C7;border-radius:2px;background-color:#FFFFFF;
  color:var(--bsr-forest);font:600 14px/1.2 var(--bsr-font-body);cursor:pointer;-webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%232F4237' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;
}

/* Figures (the iPad's exercise drawings) and metric glyphs */
.bsr-st-figtile{display:inline-flex;align-items:center;justify-content:center;flex:none;background:#FFFFFF;border:1px solid #E4DED3;border-radius:2px;}
.bsr-st-figtile.is-card{width:104px;height:104px;padding:6px;background:#FAF7F2;}
.bsr-st-figtile.is-small{width:62px;height:62px;padding:4px;background:#FAF7F2;}
.bsr-st-figtile.is-icon{width:46px;height:46px;padding:1px;border-color:transparent;background:transparent;}
.bsr-st-fig{display:block;width:100%;height:100%;overflow:visible;}
.bsr-st-glyph{display:inline-block;flex:none;width:28px;height:21px;vertical-align:middle;overflow:visible;}

/* Visit summary */
.bsr-st .bsr-st-meta{display:flex;flex-wrap:wrap;align-items:baseline;row-gap:4px;margin:0 0 16px;color:#5C6359;font-size:13px;line-height:1.5;}
.bsr-st-meta__item + .bsr-st-meta__item::before{content:"\00B7";margin:0 9px;color:#B7AE9F;}
.bsr-st-meta .bsr-st-num{color:var(--bsr-forest);font-weight:650;}
.bsr-st-summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;margin:0 0 16px;}
.bsr-st-summary.is-single{grid-template-columns:minmax(0,1fr);}
.bsr-st-highlights{display:grid;gap:16px;align-content:start;}
.bsr-st-panel{min-width:0;padding:18px 20px;background:#FFFFFF;border:1px solid #D8D2C7;border-radius:4px;}
.bsr-st .bsr-st-panel__title{margin:0;color:var(--bsr-forest);font:650 16px/1.3 var(--bsr-font-body);letter-spacing:-.01em;}

/* Strength profile: figure, name, multiple of bodyweight, bar */
.bsr-st .bsr-st-profile__list{display:grid;gap:6px;margin:12px 0 0;}
.bsr-st .bsr-st-profile__row{display:grid;grid-template-columns:46px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:12px;row-gap:5px;font-size:13px;}
.bsr-st-profile__row .bsr-st-figtile{grid-row:1 / 3;}
.bsr-st-profile__name{align-self:end;color:var(--bsr-forest);font-weight:600;}
.bsr-st-profile__value{align-self:end;color:var(--bsr-forest);font-weight:700;white-space:nowrap;}
.bsr-st-profile__bar{grid-column:2 / 4;align-self:start;height:8px;overflow:hidden;border-radius:0;background:var(--bsr-bone);}
.bsr-st-profile__bar > span{display:block;height:100%;border-radius:0;background:var(--bsr-forest);}

/* Hamstrings vs quads: picture equation, then one bar per side against 0.6 */
.bsr-st-hq__layout{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin:14px 0 0;}
.bsr-st-hq__eq{display:flex;align-items:flex-start;gap:8px;flex:none;}
.bsr-st-hq__term{display:grid;justify-items:center;gap:4px;}
.bsr-st-hq__label{color:#5C6359;font-size:12px;font-weight:600;}
.bsr-st-hq__op{align-self:center;margin-top:-18px;color:var(--bsr-gold);font:600 24px/1 var(--bsr-font-body);}
.bsr-st-hq__bars{display:grid;gap:8px;flex:1 1 220px;min-width:0;}
.bsr-st-hqbar{display:grid;grid-template-columns:40px minmax(0,1fr) 42px;align-items:center;gap:10px;}
.bsr-st-hqbar__side{color:#5C6359;font-size:12px;font-weight:600;}
.bsr-st-hqbar__track{position:relative;height:10px;background:var(--bsr-bone);}
.bsr-st-hqbar__fill{position:absolute;inset:0 auto 0 0;background:var(--bsr-forest);}
.bsr-st-hqbar.is-right .bsr-st-hqbar__fill{background:var(--bsr-gold);}
.bsr-st-hqbar__target{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:#AB4943;}
.bsr-st-hqbar__num{color:var(--bsr-forest);font:700 20px/1 var(--bsr-font-body);letter-spacing:-.02em;text-align:right;}
.bsr-st-hqbar.is-scale{margin-top:-4px;}
.bsr-st-hqbar__ticks{position:relative;height:14px;color:#7A8076;font-size:11px;font-variant-numeric:tabular-nums;}
.bsr-st-hqbar__ticks > span{position:absolute;top:0;transform:translateX(-50%);}
.bsr-st-hqbar__ticks > span:first-child{transform:none;}
.bsr-st-hqbar__ticks > span:last-child{transform:translateX(-100%);}
.bsr-st-hqbar__ticks > span:nth-child(2){color:#AB4943;font-weight:700;}

/* Left vs right: centred bars, 10% band shaded */
.bsr-st-balance.is-notable{border-color:var(--bsr-gold);background:#FFFBF3;box-shadow:inset 3px 0 0 var(--bsr-gold);}
.bsr-st-bal__head,.bsr-st .bsr-st-bal__row{display:grid;grid-template-columns:minmax(84px,.9fr) minmax(0,1.6fr) 44px;align-items:center;gap:12px;}
.bsr-st-bal__head{margin:12px 0 4px;}
.bsr-st-bal__ends{display:flex;justify-content:space-between;gap:8px;color:#7A8076;font-size:11px;font-weight:600;white-space:nowrap;}
.bsr-st-bal__end.is-left::before,.bsr-st-bal__end.is-right::after{content:"";display:inline-block;width:8px;height:8px;margin:0 5px 1px 0;vertical-align:middle;background:var(--bsr-forest);}
.bsr-st-bal__end.is-right::after{margin:0 0 1px 5px;background:var(--bsr-gold);}
.bsr-st .bsr-st-bal__list{display:grid;gap:7px;}
.bsr-st-bal__name{color:var(--bsr-forest);font-size:13px;font-weight:600;line-height:1.3;}
.bsr-st-bal__track{position:relative;height:14px;background:#F6F3EE;}
.bsr-st-bal__band{position:absolute;top:0;bottom:0;background:var(--bsr-bone);}
.bsr-st-bal__mid{position:absolute;top:-3px;bottom:-3px;left:50%;width:1px;background:#8A9087;}
.bsr-st-bal__bar{position:absolute;top:3px;bottom:3px;background:var(--bsr-forest);}
.bsr-st-bal__bar.is-right{background:var(--bsr-gold);}
.bsr-st-bal__value{color:var(--bsr-forest);font-size:13px;font-weight:700;text-align:right;}
.bsr-st-bal__row.is-notable .bsr-st-bal__name,.bsr-st-bal__row.is-notable .bsr-st-bal__value{color:#7A551D;}
.bsr-st-bal__scale{margin:4px 0 0;}
.bsr-st-bal__ticks{position:relative;height:14px;color:#7A8076;font-size:11px;font-variant-numeric:tabular-nums;}
.bsr-st-bal__ticks > span{position:absolute;top:0;transform:translateX(-50%);}

/* How to read your force curve */
.bsr-st-explain{margin:0 0 16px;}
.bsr-st-explain__layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:8px 28px;align-items:center;margin-top:8px;}
.bsr-st .bsr-st-explain__list{display:grid;gap:10px;}
.bsr-st-explain__item{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:10px;align-items:start;}
.bsr-st-explain__item .bsr-st-glyph{grid-row:1 / 3;margin-top:1px;}
.bsr-st-explain__item dt{color:var(--bsr-forest);font-size:13px;font-weight:650;line-height:1.35;}
.bsr-st .bsr-st-explain__item dd{color:#5C6359;font-size:13px;line-height:1.45;}

/* Exercise cards. Paired cards share six rows (subgrid) so their sections,
   tables included, start at the same height. */
.bsr-st-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr));gap:16px;align-items:start;}
.bsr-st-ex.bsr-cardio-card{display:flex;flex-direction:column;gap:16px;margin:0;border:1px solid #D8D2C7;border-radius:4px;box-shadow:none;}
@supports (grid-template-rows:subgrid){
  .bsr-st-grid{align-items:stretch;}
  .bsr-st-ex.bsr-cardio-card{display:grid;grid-row:span 6;grid-template-rows:subgrid;align-content:start;}
}
#bsr-strength .bsr-cardio-empty{border:1px solid #D8D2C7;border-radius:4px;}
.bsr-st-ex__head{display:flex;align-items:center;gap:16px;min-width:0;}
.bsr-st-ex__title{min-width:0;}
.bsr-st .bsr-st-ex__name{margin:0 0 4px;color:var(--bsr-forest);font:650 18px/1.25 var(--bsr-font-body);letter-spacing:-.01em;}
.bsr-st-best{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 14px;}
.bsr-st-best__kg .bsr-st-num{color:var(--bsr-forest);font:700 clamp(34px,3.8vw,42px)/1 var(--bsr-font-body);letter-spacing:-.035em;}
.bsr-st-best__kg .bsr-st-unit{margin-left:5px;color:var(--bsr-sage);font-size:17px;font-weight:600;}
.bsr-st-best__alt{color:var(--bsr-sage);font-size:14px;font-weight:500;white-space:nowrap;}
.bsr-st-sep{margin:0 8px;color:#B7AE9F;}
.bsr-st-sides{display:grid;gap:8px;align-content:start;padding:14px 0 0;border-top:1px solid #D8D2C7;}
.bsr-st-side{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:10px;font-size:13px;}
.bsr-st-side__label{color:#5C6359;font-weight:600;white-space:nowrap;}
.bsr-st-side__bar{height:8px;overflow:hidden;border-radius:0;background:var(--bsr-bone);}
.bsr-st-side__bar > span{display:block;height:100%;border-radius:0;background:var(--bsr-sage);}
.bsr-st-side.is-left .bsr-st-side__bar > span{background:var(--bsr-forest);}
.bsr-st-side.is-right .bsr-st-side__bar > span{background:var(--bsr-gold);}
.bsr-st-side.is-rep .bsr-st-side__bar > span{background:#B9C0B2;}
.bsr-st-side.is-rep.is-best .bsr-st-side__bar > span{background:var(--bsr-forest);}
.bsr-st-side.is-rep:not(.is-best) .bsr-st-side__value{color:#5C6359;font-weight:500;}
.bsr-st-side__value{min-width:64px;color:var(--bsr-forest);font-weight:650;text-align:right;white-space:nowrap;}
.bsr-st .bsr-st-diff{margin:0;color:#5C6359;font-size:13px;}
.bsr-st-diff .bsr-st-num{margin-left:4px;color:var(--bsr-forest);font-weight:700;}
.bsr-st-diff.is-notable,.bsr-st-diff.is-notable .bsr-st-num{color:#7A551D;}

/* Number tiles: multiple of bodyweight and lean mass, change since last test */
.bsr-st .bsr-st-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;align-content:start;padding:14px 0 0;border-top:1px solid #D8D2C7;}
.bsr-st-tile{display:flex;flex-direction:column;gap:3px;min-width:0;padding:10px 12px;background:#FAF7F2;border:1px solid #ECE7DE;border-radius:2px;}
.bsr-st-tile__value{color:var(--bsr-forest);font:700 20px/1.1 var(--bsr-font-body);letter-spacing:-.02em;white-space:nowrap;}
.bsr-st-tile__value .bsr-st-unit{font-size:13px;font-weight:600;color:var(--bsr-sage);}
.bsr-st-tile.is-down .bsr-st-tile__value,.bsr-st-tile.is-flat .bsr-st-tile__value{color:#5C6359;}
.bsr-st-tile__label{color:#5C6359;font-size:12px;line-height:1.3;}
.bsr-st-flag{display:inline-flex;align-items:center;gap:3px;margin-top:2px;color:#7A8076;font-size:11px;font-weight:600;line-height:1.3;}
.bsr-st-flag.is-meaningful{color:#7A551D;}
.bsr-st-flag .bsr-st-glyph{width:16px;height:12px;margin-left:-3px;}

/* Charts */
.bsr-st .bsr-st-figure{margin:0;padding:14px 0 0;border-top:1px solid #D8D2C7;}
.bsr-st .bsr-st-figure__title{margin:0 0 6px;color:var(--bsr-forest);font:650 13px/1.3 var(--bsr-font-body);}
.bsr-st-chart{width:100%;min-height:24px;}
.bsr-st-svg{display:block;max-width:100%;height:auto;overflow:visible;}
.bsr-st-svg-text{fill:#7A8076;font-size:11px;}
.bsr-st-svg-text.is-unit{font-size:10px;}
.bsr-st-svg-text.is-small{font-size:10.5px;font-weight:600;fill:#5C6359;}
.bsr-st-svg-text.is-peak,.bsr-st-svg-text.is-value{fill:var(--bsr-forest);font-weight:600;}
.bsr-st-svg-text.is-current{font-weight:700;}
.bsr-st-svg-text.is-label{fill:var(--bsr-forest);font-size:12px;font-weight:650;}
.bsr-st-svg-text.is-rfd{fill:#AB4943;font-size:12px;font-weight:700;}
.bsr-st-svg-text.is-impulse{fill:#7A551D;font-size:11px;font-weight:700;}
.bsr-st-svg-band{fill:var(--bsr-bone);opacity:.75;}
.bsr-st-svg-grid{stroke:#ECE7DE;stroke-width:1;}
.bsr-st-svg-guide{stroke:#CFC7B9;stroke-width:1;stroke-dasharray:3 3;}
.bsr-st-svg-curve{fill:none;stroke-width:1.2;stroke-opacity:.42;stroke-linejoin:round;stroke-linecap:butt;}
.bsr-st-svg-curve.is-best{stroke-width:2.6;stroke-opacity:1;}
.bsr-st-svg-rfd{stroke:#AB4943;stroke-width:1.6;stroke-dasharray:5 3;stroke-linecap:butt;}
.bsr-st-svg-mark{fill:#FFFFFF;stroke-width:1.5;}
.bsr-st-svg-peak{fill:#FFFFFF;stroke-width:2;}
.bsr-st-svg-trend{fill:none;stroke:var(--bsr-gold);stroke-width:2;stroke-linejoin:round;stroke-linecap:butt;}
.bsr-st-svg-point{fill:#FFFFFF;stroke:var(--bsr-gold);stroke-width:1.75;}
.bsr-st-svg-point.is-current{fill:var(--bsr-gold);}
.bsr-st-svg-ring{fill:none;stroke:var(--bsr-gold);stroke-width:1.25;stroke-opacity:.85;}
.bsr-st-svg-grid,.bsr-st-svg-guide{shape-rendering:crispEdges;}
.bsr-st-x-curve{fill:none;stroke:var(--bsr-forest);stroke-width:3;stroke-linejoin:round;stroke-linecap:butt;}
.bsr-st-x-area{fill:var(--bsr-gold);fill-opacity:.45;}
.bsr-st-x-axis{stroke:#B7AE9F;stroke-width:1;shape-rendering:crispEdges;}
.bsr-st-x-bracket,.bsr-st-x-span{fill:none;stroke:var(--bsr-forest);stroke-width:1.5;stroke-linecap:butt;}
.bsr-st-x-leader{stroke:var(--bsr-forest);stroke-width:1;shape-rendering:crispEdges;}
.bsr-st-x-arrow{fill:none;stroke:#AB4943;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;}
.bsr-st-figure__caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px;margin-top:6px;color:#5C6359;font-size:12px;line-height:1.45;}
.bsr-st-legend{display:inline-flex;flex-wrap:wrap;gap:4px 14px;}
.bsr-st-key{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;}
.bsr-st-swatch{display:inline-block;width:10px;height:10px;border-radius:0;}
.bsr-st-swatch.is-left{background:var(--bsr-forest);}
.bsr-st-swatch.is-right{background:var(--bsr-gold);}
.bsr-st-line{display:inline-block;width:18px;height:0;border-top:1.5px solid rgba(47,66,55,.45);}
.bsr-st-line.is-best{border-top:3px solid var(--bsr-forest);}
.bsr-st-line.is-rfd{border-top:2px dashed #AB4943;}
.bsr-st-ring{display:inline-block;width:11px;height:11px;border:1.5px solid var(--bsr-gold);border-radius:0;}
.bsr-st-axis-note{color:#7A8076;}
.bsr-st .bsr-st-chart-note{margin:0;padding:22px 12px;border:1px solid #D8D2C7;border-radius:4px;background:#FAF7F2;color:#5C6359;font-size:13px;text-align:center;}

/* Metrics table: fixed columns, the same grouped rows in every card */
.bsr-st-mwrap{min-width:0;padding-top:6px;border-top:1px solid #D8D2C7;}
.bsr-st .bsr-st-metrics{width:100%;margin:0;border:0;border-collapse:collapse;border-spacing:0;table-layout:fixed;font-size:13px;font-variant-numeric:tabular-nums;}
.bsr-st .bsr-st-metrics col.bsr-st-mcol-label{width:46%;}
.bsr-st .bsr-st-metrics.is-both col.bsr-st-mcol-label{width:64%;}
.bsr-st .bsr-st-metrics th,.bsr-st .bsr-st-metrics td{height:34px;padding:5px 0 5px 8px;border:0;border-bottom:1px solid #ECE7DE;background:none;text-align:right;vertical-align:middle;white-space:nowrap;}
.bsr-st .bsr-st-metrics th:first-child{padding-left:0;text-align:left;white-space:normal;}
.bsr-st .bsr-st-metrics thead th{height:30px;color:#5C6359;font-size:11px;font-weight:700;letter-spacing:.02em;border-bottom-color:#D8D2C7;}
.bsr-st .bsr-st-metrics tr.bsr-st-mgroup th{height:30px;padding-top:12px;padding-bottom:4px;color:var(--bsr-sage);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-bottom-color:#D8D2C7;}
.bsr-st .bsr-st-metrics tbody th{color:var(--bsr-forest);font-weight:600;}
.bsr-st-mlabel{display:flex;align-items:center;gap:8px;min-width:0;}
.bsr-st-mlabel__text{min-width:0;line-height:1.25;}
.bsr-st-mlabel .bsr-st-unit{margin-left:3px;color:#8A9087;font-size:11px;font-weight:500;white-space:nowrap;}
.bsr-st .bsr-st-metrics td{color:var(--bsr-forest);font-weight:600;}
.bsr-st .bsr-st-metrics .bsr-st-mdiff{color:#5C6359;font-weight:500;}
.bsr-st .bsr-st-metrics .bsr-st-mdiff.is-notable{color:#7A551D;font-weight:700;}
.bsr-st .bsr-st-metrics .is-none{color:#B7AE9F;font-weight:500;}
.bsr-st .bsr-st-metrics tr.is-minor th,.bsr-st .bsr-st-metrics tr.is-minor td{color:#7A8076;font-weight:500;}

.bsr-st-fade{animation:bsr-st-fade .28s ease-out both;}
@keyframes bsr-st-fade{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:none;}}

@media (max-width:980px){
  .bsr-st-explain__layout{grid-template-columns:minmax(0,1fr);}
  .bsr-st .bsr-st-explain__list{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:10px 24px;}
}
@media (max-width:860px){
  .bsr-st-summary{grid-template-columns:minmax(0,1fr);}
}
@media (max-width:768px){
  .bsr-st-view{padding:22px 18px;}
}
@media (max-width:640px){
  .bsr-st-view{margin-inline:-4px;width:calc(100% + 8px);padding:18px 14px;}
  .bsr-st-grid{grid-template-columns:minmax(0,1fr);gap:12px;}
  .bsr-st-panel{padding:16px 14px;}
  .bsr-st-figtile.is-card{width:84px;height:84px;padding:4px;}
  .bsr-st-ex__head{gap:12px;}
}
@media (max-width:480px){
  .bsr-st-view{margin-inline:-6px;width:calc(100% + 12px);padding:16px 10px;}
  .bsr-st-ex.bsr-cardio-card{padding:18px 12px;}
  .bsr-st-visits{width:100%;}
  .bsr-st .bsr-st-metrics{font-size:12px;}
  .bsr-st .bsr-st-metrics col.bsr-st-mcol-label{width:40%;}
  .bsr-st .bsr-st-metrics.is-sided col.bsr-st-mcol-diff{width:24%;}
  .bsr-st .bsr-st-metrics th,.bsr-st .bsr-st-metrics td{padding-left:4px;}
  .bsr-st-mlabel{gap:5px;}
  .bsr-st-mlabel .bsr-st-glyph{width:22px;height:17px;}
  .bsr-st-figure__caption{flex-direction:column;align-items:flex-start;}
  .bsr-st-bal__head,.bsr-st .bsr-st-bal__row{grid-template-columns:minmax(72px,.8fr) minmax(0,1.4fr) 36px;gap:8px;}
  .bsr-st-bal__head:not(.bsr-st-bal__scale){display:block;}
  .bsr-st-best__kg .bsr-st-num{font-size:32px;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-st-visit{transition:none;}
  .bsr-st-fade{animation:none;}
}
@media print{
  .bsr-st-view{padding:0;background:#fff;border:0;}
  .bsr-st-controls{display:none;}
  .bsr-st-ex.bsr-cardio-card,.bsr-st-panel{box-shadow:none;break-inside:avoid;}
}

/* v2.7.35: scans from other clinics (dashboard-10.js).
   The card sits under the scan details; the window reuses the feedback
   modal surface. Everything new is prefixed .bsr-import-. */
#bsr-app .bsr-import-cta{
  display:none;width:100%;box-sizing:border-box;margin:12px 0 0;padding:13px 16px;
  grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;
  border:1px dashed rgba(47,66,55,.28);border-radius:14px;background:#fff;
  color:#2F4237;font-family:'Outfit',system-ui,-apple-system,sans-serif;
}
#bsr-app .bsr-import-cta.is-ready{display:grid;}
#bsr-app .bsr-import-cta-title{margin:0;color:#2F4237;font:700 14.5px/1.3 'Outfit',system-ui,sans-serif;letter-spacing:-.01em;}
#bsr-app .bsr-import-cta-text{margin:2px 0 0;color:#4F5E54;font-size:12.5px;line-height:1.45;}
#bsr-app .bsr-import-cta-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin:0;padding:9px 15px;
  border:1px solid #2F4237;border-radius:9px;background:#fff;color:#2F4237;cursor:pointer;white-space:nowrap;
  font:600 13px/1.2 'Outfit',system-ui,sans-serif;transition:background-color .16s ease,color .16s ease;
}
#bsr-app .bsr-import-cta-btn:hover{background:#2F4237;color:#EFECE6;}
#bsr-app .bsr-import-cta-btn:focus-visible{outline:3px solid rgba(176,139,79,.66);outline-offset:2px;}
@media (max-width:420px){
  #bsr-app .bsr-import-cta{grid-template-columns:1fr;gap:10px;}
  #bsr-app .bsr-import-cta-btn{width:100%;}
}

/* Scan details: the other-clinic note and its remove button. */
#bsr-app .bsr-scan-guide__source{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  margin:10px 0 0;padding:10px 12px;border-radius:10px;background:#FAF7F2;border:1px solid rgba(176,139,79,.35);
}
#bsr-app .bsr-scan-guide__source-text{margin:0;flex:1 1 220px;color:#4F5E54;font-size:11.5px;line-height:1.45;}
#bsr-app .bsr-scan-guide__remove{
  flex:0 0 auto;min-height:36px;padding:7px 12px;border:1px solid rgba(154,74,46,.45);border-radius:8px;
  background:#fff;color:#9A4A2E;font:600 12px/1.2 'Outfit',system-ui,sans-serif;cursor:pointer;
}
#bsr-app .bsr-scan-guide__remove:hover{background:#FBF1EC;}
#bsr-app .bsr-scan-guide__remove:focus-visible{outline:3px solid rgba(176,139,79,.66);outline-offset:2px;}

/* Manage tests: link into the import window. */
.bsr-tests-import-link{
  display:inline-flex;align-items:center;gap:6px;margin:10px 0 0;padding:0;border:0;background:none;
  color:#2F4237;font:600 13px/1.4 'Outfit',system-ui,sans-serif;text-decoration:underline;
  text-decoration-color:rgba(176,139,79,.7);text-underline-offset:3px;cursor:pointer;
}
.bsr-tests-import-link::before{content:"+";font-weight:700;color:#B08B4F;}
.bsr-tests-import-link:focus-visible{outline:3px solid rgba(176,139,79,.66);outline-offset:2px;border-radius:4px;}

/* The window. */
.bsr-import-card{max-width:560px;padding:28px 28px 24px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;box-sizing:border-box;}
.bsr-import-card h2{padding-right:32px;outline:none;}
.bsr-import-card p{margin:0 0 14px;}
.bsr-import-step[hidden]{display:none!important;}
.bsr-import-x{
  position:absolute;top:12px;right:12px;width:36px;height:36px;padding:0;border:0;border-radius:50%;
  background:transparent;color:#6B7A5A;font:400 24px/1 'Outfit',system-ui,sans-serif;cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:background-color .16s ease;
}
.bsr-import-x:hover{background:#F5F2EC;color:#2F4237;}
.bsr-import-card .bsr-import-intro{color:#4F5E54;}
.bsr-import-drop{
  display:flex;flex-direction:column;align-items:center;gap:10px;margin:4px 0 12px;padding:22px 16px 16px;
  border:1.5px dashed rgba(47,66,55,.3);border-radius:14px;background:#FAF9F6;text-align:center;
  transition:border-color .16s ease,background-color .16s ease;
}
.bsr-import-drop.is-over{border-color:#B08B4F;background:#FAF7F2;}
.bsr-import-drop-icon{width:30px;height:30px;color:#6B7A5A;}
.bsr-import-drop-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;}
.bsr-import-pick{
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:10px;
  border:1px solid #2F4237;background:#2F4237;color:#EFECE6;font:600 14px/1 'Outfit',system-ui,sans-serif;cursor:pointer;
  transition:background-color .16s ease;
}
.bsr-import-pick:hover{background:#3B5043;}
.bsr-import-pick--secondary{background:#fff;color:#2F4237;}
.bsr-import-pick--secondary:hover{background:#F5F2EC;}
.bsr-import-drop-actions input:focus-visible + .bsr-import-pick{outline:3px solid rgba(176,139,79,.66);outline-offset:2px;}
.bsr-import-card .bsr-import-drop-hint{margin:0;font-size:11.5px;color:#9BA38F;}
.bsr-import-files{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;}
.bsr-import-files[hidden]{display:none;}
.bsr-import-file{display:flex;align-items:center;gap:10px;min-width:0;padding:6px 8px;border:1px solid rgba(47,66,55,.14);border-radius:10px;background:#fff;}
.bsr-import-file img,.bsr-import-file-mark{flex:0 0 auto;width:40px;height:40px;border-radius:7px;object-fit:cover;background:#F5F2EC;}
.bsr-import-file-mark{display:flex;align-items:center;justify-content:center;color:#9A4A2E;font:700 10px/1 'Outfit',system-ui,sans-serif;letter-spacing:.06em;}
.bsr-import-file-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2F4237;font-size:13px;}
.bsr-import-file-remove{
  flex:0 0 auto;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:#6B7A5A;
  font:400 20px/1 'Outfit',system-ui,sans-serif;cursor:pointer;
}
.bsr-import-file-remove:hover{background:#F5F2EC;color:#2F4237;}
.bsr-import-card .bsr-import-status{margin:8px 0 0;font-size:13px;line-height:1.45;color:#9A4A2E;}
.bsr-import-card .bsr-import-status:empty{display:none;}
.bsr-import-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px;}
.bsr-import-actions .bsr-cta[disabled]{opacity:.55;cursor:not-allowed;}
.bsr-import-quiet{
  padding:12px 20px;border-radius:10px;border:1px solid rgba(47,66,55,.2);background:transparent;color:#2F4237;
  font:600 14px/1 'Outfit',system-ui,sans-serif;cursor:pointer;transition:background-color .16s ease;
}
.bsr-import-quiet:hover{background:rgba(47,66,55,.05);}
.bsr-import-quiet[hidden]{display:none;}
.bsr-import-card .bsr-import-alt{margin:16px 0 0;}
.bsr-import-linkbtn{
  padding:0;border:0;background:none;color:#2F4237;font:600 13px/1.4 'Outfit',system-ui,sans-serif;cursor:pointer;
  text-decoration:underline;text-decoration-color:rgba(176,139,79,.7);text-underline-offset:3px;
}
.bsr-import-card .bsr-import-fine{margin:12px 0 0;font-size:11.5px;line-height:1.5;color:#9BA38F;}
.bsr-import-reading{padding:26px 0 10px;text-align:center;}
.bsr-import-reading h2{padding-right:0;}
.bsr-import-spinner{
  width:34px;height:34px;margin:0 auto 16px;border-radius:50%;
  border:3px solid rgba(47,66,55,.14);border-top-color:#B08B4F;animation:bsr-import-spin .9s linear infinite;
}
@keyframes bsr-import-spin{to{transform:rotate(360deg);}}
.bsr-import-notice{margin:0 0 14px;padding:11px 13px;border-radius:10px;background:#FAF7F2;border:1px solid rgba(176,139,79,.4);}
.bsr-import-notice[hidden]{display:none;}
.bsr-import-card .bsr-import-notice-title{margin:0 0 4px;color:#2F4237;font:700 12.5px/1.3 'Outfit',system-ui,sans-serif;}
.bsr-import-notice ul{margin:0 0 4px;padding-left:18px;color:#4F5E54;font-size:12.5px;line-height:1.45;}
.bsr-import-notice ul[hidden]{display:none;}
.bsr-import-card .bsr-import-notice p:not(.bsr-import-notice-title){margin:0;color:#4F5E54;font-size:12.5px;line-height:1.45;}
.bsr-import-card .bsr-import-notice p[hidden]{display:none;}
.bsr-import-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;margin:0 0 12px;}
.bsr-import-field{min-width:0;}
.bsr-import-field--wide{grid-column:1 / -1;}
.bsr-import-field label{display:block;margin:0 0 5px;color:#2F4237;font:600 13px/1.3 'Outfit',system-ui,sans-serif;}
.bsr-import-field input,.bsr-import-field select{
  display:block;width:100%;min-height:44px;box-sizing:border-box;padding:9px 12px;
  border:1px solid rgba(47,66,55,.28);border-radius:10px;background:#fff;color:#2F4237;
  font:400 16px/1.3 'Outfit',system-ui,sans-serif;
}
.bsr-import-input{position:relative;}
.bsr-import-input input{padding-right:44px;font-variant-numeric:tabular-nums;}
.bsr-import-suffix{position:absolute;top:50%;right:12px;transform:translateY(-50%);color:#6B7A5A;font-size:13px;pointer-events:none;}
.bsr-import-field input:focus,.bsr-import-field select:focus{outline:none;border-color:#2F4237;box-shadow:0 0 0 3px rgba(176,139,79,.35);}
.bsr-import-field input[aria-invalid="true"],.bsr-import-field input[aria-invalid="true"]:focus,.bsr-import-field select[aria-invalid="true"]{border-color:#9A4A2E;box-shadow:0 0 0 3px rgba(154,74,46,.22);}
.bsr-import-card .bsr-import-hint{margin:5px 0 0;color:#6B7A5A;font-size:11.5px;line-height:1.35;}
.bsr-import-card .bsr-import-hint[hidden]{display:none;}
.bsr-import-hint-value{color:#2F4237;font-weight:600;font-variant-numeric:tabular-nums;}
.bsr-import-units{display:flex;align-items:center;gap:4px;margin:2px 0 12px;}
.bsr-import-units-label{margin-right:6px;color:#6B7A5A;font-size:12px;font-weight:600;}
.bsr-import-unit-btn{
  min-width:44px;min-height:32px;padding:5px 10px;border:1px solid rgba(47,66,55,.2);border-radius:8px;
  background:#fff;color:#2F4237;font:600 12.5px/1 'Outfit',system-ui,sans-serif;cursor:pointer;
}
.bsr-import-unit-btn[aria-pressed="true"]{background:#2F4237;border-color:#2F4237;color:#EFECE6;}
.bsr-import-unit-btn:focus-visible{outline:3px solid rgba(176,139,79,.66);outline-offset:2px;}
.bsr-import-card .bsr-import-help{margin:0 0 14px;color:#6B7A5A;font-size:12px;line-height:1.5;}
.bsr-import-details{margin:0 0 14px;padding:12px 13px;border:1px solid rgba(47,66,55,.14);border-radius:10px;}
.bsr-import-details[hidden]{display:none;}
.bsr-import-detail-list{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;margin:10px 0 0;}
.bsr-import-detail{display:flex;justify-content:space-between;gap:8px;min-width:0;padding:4px 0;border-bottom:1px solid rgba(47,66,55,.08);font-size:12px;line-height:1.35;}
.bsr-import-detail dt{color:#6B7A5A;}
.bsr-import-detail dd{margin:0;color:#2F4237;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums;}
.bsr-import-mine{margin:0 0 12px;padding:11px 13px;border-radius:10px;background:#FBF1EC;border:1px solid rgba(154,74,46,.3);}
.bsr-import-mine[hidden]{display:none;}
.bsr-import-card .bsr-import-mine p{margin:0 0 8px;color:#2F4237;font-size:13px;}
.bsr-import-check{display:flex;align-items:flex-start;gap:10px;color:#2F4237;font-size:13.5px;line-height:1.4;cursor:pointer;}
.bsr-import-check input{flex:0 0 auto;width:20px;height:20px;margin:0;accent-color:#2F4237;}
.bsr-import-check input[aria-invalid="true"]{outline:2px solid #9A4A2E;outline-offset:2px;}
.bsr-import-check--confirm{margin:4px 0 0;font-weight:600;}
.bsr-import-done{text-align:center;padding-top:12px;}
.bsr-import-done h2{padding-right:0;}
.bsr-import-done .bsr-import-actions{justify-content:center;}
.bsr-import-done-mark{
  width:52px;height:52px;margin:0 auto 14px;border-radius:50%;background:#2F4237;color:#EFECE6;
  display:flex;align-items:center;justify-content:center;
}
.bsr-import-done-mark svg{width:24px;height:24px;}
.bsr-import-card .bsr-import-remove-what{color:#2F4237;font-weight:700;}
.bsr-cta.bsr-cta--primary.bsr-import-danger{background:#9A4A2E;}
.bsr-cta.bsr-cta--primary.bsr-import-danger:hover{background:#7F3C25;}
@media (max-width:480px){
  .bsr-import-modal{padding:12px;align-items:flex-end;}
  .bsr-import-card{padding:24px 18px 18px;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);}
  .bsr-import-grid,.bsr-import-detail-list{grid-template-columns:1fr;}
  .bsr-import-actions{flex-direction:column-reverse;align-items:stretch;}
  .bsr-import-actions > *{width:100%;min-height:48px;}
}
@media (prefers-reduced-motion:reduce){
  .bsr-import-spinner{animation-duration:2.4s;}
  .bsr-import-x,.bsr-import-pick,.bsr-import-quiet,#bsr-app .bsr-import-cta-btn{transition:none;}
}
@media print{#bsr-import-cta,#bsr-import-modal,.bsr-scan-guide__remove{display:none!important;}}

/* v2.7.43: "Is this still you?" The first-visit check: summary lines with Edit
   beside each, a compact language button and one button. */
#bsr-profile-card.bsr-profile-card--check{max-width:460px;background:#FAF7F2;}
.bsr-check-top{display:flex;justify-content:flex-end;margin:-8px -6px 4px 0;}
.bsr-profile-card--check .bsr-check-language{display:flex;flex-direction:column;align-items:flex-end;margin:0;padding:0;border:0;background:none;}
.bsr-check-language__pill{position:relative;display:inline-flex;align-items:center;}
.bsr-check-language__pill svg{position:absolute;left:11px;top:50%;width:14px;height:14px;margin-top:-7px;color:#2F4237;pointer-events:none;}
#bsr-profile-modal .bsr-check-language #bsr-profile-language{
  width:auto;min-height:36px;padding:6px 30px 6px 31px!important;border:1px solid #D8D2C7!important;border-radius:999px!important;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236B7A5A' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 12px center/10px 6px;
  color:#2F4237!important;font-size:13px;font-weight:600;line-height:1.2;-webkit-appearance:none;appearance:none;
}
.bsr-check-language .bsr-language-save-status{min-height:0;margin:6px 0 0;font-size:12px;text-align:right;}
.bsr-profile-card--check .bsr-profile-title{font-size:clamp(24px,6vw,28px);}
.bsr-profile-card--check .bsr-profile-description{margin-top:8px;}
.bsr-check-source{display:inline-flex;align-items:center;gap:6px;margin:12px 0 0;padding:5px 10px 5px 8px;border-radius:999px;background:rgba(107,122,90,.12);color:#596657;font-size:12px;font-weight:600;line-height:1.3;}
.bsr-check-source svg{flex:0 0 auto;width:14px;height:14px;}
.bsr-profile-card--check #bsr-profile-form{margin-top:16px;}
.bsr-check-list{margin:0 0 12px;background:#fff;border:1px solid #E5DED2;border-radius:16px;overflow:hidden;}
.bsr-check-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:4px 12px;min-height:64px;padding:12px 14px;border-top:1px solid #EEE9E1;}
.bsr-check-row:first-child{border-top:0;}
.bsr-check-row.is-open{background:#FCFAF6;box-shadow:inset 3px 0 0 #2F4237;}
.bsr-check-row.is-needed{grid-template-columns:36px minmax(0,1fr);background:#FBF1EE;box-shadow:inset 3px 0 0 #B08B4F;}
.bsr-check-row__icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:rgba(47,66,55,.07);color:#2F4237;}
.bsr-check-row__icon svg{width:18px;height:18px;}
.bsr-check-row__main{min-width:0;}
.bsr-check-row__label{color:#6B7A5A;font-size:11px;font-weight:700;letter-spacing:.07em;line-height:1.35;text-transform:uppercase;}
.bsr-check-row__needed{display:inline-block;margin-left:6px;padding:2px 6px;border:1px solid #E8C7BF;border-radius:6px;background:#fff;color:#8A3A28;font-size:10px;letter-spacing:.06em;vertical-align:1px;}
.bsr-check-row__value{margin-top:1px;color:#2F4237;font-size:17px;font-weight:600;letter-spacing:-.01em;line-height:1.3;overflow-wrap:anywhere;}
.bsr-check-row__missing{margin:3px 0 0;color:#8A3A28;font-size:13px;line-height:1.4;}
.bsr-check-row__value[hidden],.bsr-check-row__editor[hidden]{display:none!important;}
.bsr-check-row__editor{grid-column:1/-1;min-width:0;padding:8px 0 2px;}
.bsr-check-row .bsr-profile-field{margin:0;}
.bsr-check-row .bsr-profile-field--weight{margin:0;padding:0;background:none;border:0;border-radius:0;}
.bsr-profile-card--check .bsr-profile-field--height{position:static;}
.bsr-profile-card--check .bsr-profile-height-unit{position:static;margin:0 0 8px;}
.bsr-check-row__toggle{
  min-width:44px;min-height:44px;padding:8px 2px 8px 8px;border:0;background:none;color:#2F4237;cursor:pointer;
  font:600 14px/1.2 'Outfit',sans-serif;text-decoration:underline;text-decoration-color:rgba(47,66,55,.3);text-underline-offset:3px;
}
.bsr-check-row.is-open .bsr-check-row__toggle{min-height:36px;padding:8px 14px;border-radius:9px;background:#2F4237;color:#fff;text-decoration:none;}
.bsr-profile-card--check .bsr-profile-save{min-height:52px;border-color:#057A3A;border-radius:12px;background:#057A3A;font-size:15px;}
.bsr-profile-card--check .bsr-profile-save:hover{border-color:#04662F;background:#04662F;}
.bsr-profile-card--check .bsr-profile-privacy{font-size:12px;}
@media(max-width:560px){
  .bsr-check-row{gap:4px 10px;padding:12px;}
  .bsr-profile-card--check .bsr-profile-title{padding-right:0;}
}
