.bf{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.bf-wide{grid-column:1/-1}@media (width<=820px){.bf{grid-template-columns:minmax(0,1fr)}}.bf-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;display:flex}.bf-segs{flex-wrap:wrap;gap:8px;display:flex}.bf-segs .seg{flex-wrap:nowrap}.bf-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,128px),1fr));align-items:end;gap:14px 18px;display:grid}.bf-fields .field[hidden]{display:none}.bf-fields .field small{color:var(--muted);font-weight:400}.bf-pair{gap:8px;min-width:0;display:flex}.bf-pair[hidden]{display:none}.bf-unit{min-width:0;color:var(--ink-2);flex:1;align-items:center;gap:6px;display:flex}.calc .bf-unit input[type=text]{text-align:right;font-variant-numeric:tabular-nums;flex:1;width:0}.bf-err{color:var(--danger);margin:0}.bf-err:empty{display:none}.bf-big-row{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.bf-num{font-family:var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(2.6rem,2rem + 2vw,3.4rem);font-weight:700;line-height:1}.bf-pill{border-radius:var(--radius-pill);background:var(--bg-soft);border:1px solid var(--line-strong);padding:6px 12px;font-size:.92rem;font-weight:650}.bf-pill:empty{display:none}.bf-pill[data-band=essential],.bf-pill[data-band=low]{color:var(--accent-text);border-color:var(--sky)}.bf-pill[data-band=athletes],.bf-pill[data-band=fitness]{color:var(--success);border-color:var(--success);background:var(--success-soft)}.bf-pill[data-band=average]{color:var(--gold);border-color:var(--gold)}.bf-pill[data-band=obese]{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.bf-line{color:var(--ink-2);margin:0}.bf-note{color:var(--muted);margin:0;font-size:.88rem}.bf-line:empty,.bf-note:empty{display:none}.bf-scale{padding:14px 0 22px;position:relative}.bf-track{border-radius:var(--radius-pill);height:12px;display:flex;overflow:hidden}.bf-track i{height:100%;display:block}.bf-track i+i{box-shadow:inset 2px 0 0 var(--bg)}[data-band=essential]>.bf-sw,.bf-track i[data-band=essential]{background:var(--sky)}[data-band=athletes]>.bf-sw,.bf-track i[data-band=athletes]{background:var(--success)}[data-band=fitness]>.bf-sw,.bf-track i[data-band=fitness]{background:color-mix(in srgb, var(--success) 55%, var(--gold))}[data-band=average]>.bf-sw,.bf-track i[data-band=average]{background:var(--gold)}[data-band=obese]>.bf-sw,.bf-track i[data-band=obese]{background:var(--danger)}.bf-marker{width:0;transition:left var(--med) var(--ease-out);position:absolute;top:6px}.bf-marker[hidden]{display:none}.bf-marker span{background:var(--ink);border:3px solid var(--bg);border-radius:9px;width:18px;height:28px;position:absolute;left:-9px;box-shadow:0 0 12px #7cc4ff99}.bf-ticks{height:16px;font-size:.72rem;font-family:var(--font-mono);color:var(--muted);position:absolute;bottom:0;left:0;right:0}.bf-ticks b{font-weight:400;position:absolute;transform:translate(-50%)}.bf-legend{gap:4px;margin:0;padding:0;list-style:none;display:grid}.bf-legend li{color:var(--ink-2);font-variant-numeric:tabular-nums;border-radius:10px;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 10px;font-size:.92rem;display:grid}.bf-sw{border-radius:4px;width:12px;height:12px}.bf-legend li.bf-you{background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--line-strong);color:var(--ink);font-weight:650}.bf-legend em{font-style:normal;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text);margin-left:6px;font-size:.7rem;font-weight:400}.bf-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.bf-stats div{border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--line);min-width:0;padding:10px 12px}.bf-stats dt{color:var(--muted);font-size:.8rem}.bf-stats dd{font-family:var(--font-display);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:1.25rem;font-weight:650}.bf-stats .bf-sub{font-family:var(--font-body);color:var(--muted);margin:0;font-size:.78rem;font-weight:400}.bf-btns{flex-wrap:wrap;gap:8px;display:flex}.bf-btns .mini-btn{align-items:center;gap:6px;display:inline-flex}.bf:not(.bf-female) .bf-f-only,.bf.bf-female .bf-m-only{display:none}.bf-guide-body{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (width>=640px){.bf-guide-body{grid-template-columns:200px minmax(0,1fr);align-items:center;gap:24px}.bf-fig{height:240px}}.bf-stage{border:1px solid var(--line);border-radius:var(--radius-lg);background:radial-gradient(60% 55% at 50% 42%, color-mix(in srgb, var(--sky) 16%, transparent), transparent 75%), var(--surface-2);place-items:center;padding:12px 10px;display:grid}.bf-fig{width:auto;max-width:100%;height:200px;display:block;overflow:visible}.bf-fig .bf-body{fill:var(--surface);stroke:color-mix(in srgb, var(--sky) 45%, var(--line-strong));stroke-width:1.6px;stroke-linejoin:round}.bf-fig .bf-tape,.bf-fig .bf-tape-back{fill:none;stroke:var(--electric);stroke-linecap:round}.bf-fig .bf-tape{stroke-width:3.2px}.bf-fig .bf-tape-back{stroke-width:1.6px;stroke-dasharray:3 3;opacity:.5}:root:not([data-theme=light]) .bf-fig .bf-tape,:root:not([data-theme=light]) .bf-fig .bf-tape-back{stroke:var(--sky)}.bf-fig .bf-pin{fill:var(--electric);stroke:var(--surface);stroke-width:2px}.bf-fig .bf-pin-n{fill:#fff;font-family:var(--font-mono);text-anchor:middle;dominant-baseline:central;font-size:10px;font-weight:700}.bf-guide-text{gap:12px;min-width:0;display:grid}.bf-steps{counter-reset:bf-step;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.bf-steps li{counter-increment:bf-step;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:28px minmax(0,1fr);align-content:start;gap:2px 12px;padding:12px 14px;font-size:.94rem;line-height:1.45;display:grid}.bf-steps li:before{content:counter(bf-step);background:var(--electric);color:#fff;width:28px;height:28px;font-family:var(--font-mono);border-radius:50%;grid-row:span 2;place-items:center;font-size:.85rem;font-weight:700;display:grid}.bf-steps b{color:var(--ink);font-family:var(--font-display);font-size:1.02rem;font-weight:650}.bf-steps span{color:var(--ink-2)}.bf-guide-tip{color:var(--ink-2);align-items:flex-start;gap:10px;margin:0;font-size:.9rem;line-height:1.45;display:flex}.bf-guide-tip svg{width:18px;height:18px;color:var(--accent-text);flex:none;margin-top:1px}
