@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#26342d;background:#f5f5ef;font-size:16px;--green:#345b42;--line:#dedfd4}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1260px;margin:auto}header{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}a{color:inherit}header>a:last-child{font-size:14px}.brand{text-decoration:none;font:800 32px Manrope,sans-serif;letter-spacing:-2px}.brand span{color:#799044}header>span,.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700}.intro{display:flex;justify-content:space-between;align-items:end;padding:42px 0 30px}.eyebrow{color:#647548;margin:0 0 12px}h1{font:500 38px Manrope,sans-serif;letter-spacing:-1.5px;margin:0}p{line-height:1.6}h2{font:600 20px Manrope,sans-serif;margin:0}.intro p:not(.eyebrow){margin-bottom:0;color:#677168}.privacy{font-size:13px;color:#5a6c50;margin-bottom:4px}.workspace{display:grid;grid-template-columns:330px 1fr;gap:24px}.panel{background:#fffefa;border:1px solid var(--line);border-radius:18px;padding:25px}.section-title{display:flex;justify-content:space-between;align-items:center}.section-title>span{font-size:13px;color:#93988a}.subtle{color:#748071;font-size:14px;margin:10px 0 22px}label{display:block;font-size:14px;font-weight:500}label>span{float:right;color:#798172}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}input,select{font:inherit;color:inherit;background:#fffefa;border:1px solid #d9ddd1;border-radius:9px;padding:12px;width:100%;margin:8px 0 17px;min-width:0}input:focus,select:focus,button:focus-visible{outline:2px solid #72924d;outline-offset:3px}.units{display:flex;justify-content:space-between;align-items:center}.units select{width:110px;padding:6px;margin:0 0 18px}.hint{font-size:12px;color:#7a8276;line-height:1.5;margin:0 0 20px}.upload{border:1px dashed #aebaa1;padding:19px 12px;border-radius:10px;text-align:center;cursor:pointer;background:#f5f7ee}.upload input{font-size:12px;margin:10px 0 0;padding:0;border:0}.upload small{display:block;font-weight:400;font-size:11px;margin-top:10px;color:#76816b}button{font:600 14px 'DM Sans',sans-serif;cursor:pointer;border:0;border-radius:9px;padding:13px 18px}.primary{background:var(--green);color:white;width:100%;margin-top:20px;display:flex;justify-content:space-between}.primary:hover{background:#254632}.secondary{background:#e9eddf;color:#345b42;border:1px solid #d1dac5}.text-button{background:none;color:#5d694b;padding:8px 0;font-size:12px}.score-panel{background:#e9efdc;border:1px solid #dce4ce;border-radius:18px;padding:32px;display:flex;align-items:center;justify-content:space-between;min-height:246px}.score{font:500 82px Manrope,sans-serif;letter-spacing:-5px;line-height:1.2}.score small{font:400 15px 'DM Sans',sans-serif;letter-spacing:0;margin-left:15px;color:#6a775d}.score-panel p:last-child{font-size:13px;color:#69755f;margin:12px 0 0}.lean-box{border-left:1px solid #ccd7bd;padding-left:30px;width:190px}.lean-box span,.lean-box small{display:block;font-size:12px;color:#69755f;line-height:1.6}.lean-box strong{display:block;font:500 29px Manrope,sans-serif;margin:10px 0}.chart-panel{margin-top:24px}.chart{padding:18px 0 0;min-height:172px}.chart-empty{color:#909786;font-size:14px;text-align:center;padding:25px 0}.chart-row{display:grid;grid-template-columns:94px 1fr 40px;gap:10px;align-items:center;margin:12px 0;font-size:12px}.track{position:relative;height:15px;background:#eff1e9;border-radius:8px}.dot{position:absolute;top:1px;width:13px;height:13px;border-radius:50%;background:#a0af86;transform:translateX(-50%)}.dot.you{background:var(--green)}.axis{display:flex;justify-content:space-between;font-size:11px;color:#848d79;margin:18px 50px 0 104px}.gallery{margin:40px 0}.gallery-heading{display:flex;align-items:center;justify-content:space-between}.cards{display:flex;gap:18px;overflow-x:auto;padding-bottom:12px}.card{background:#fffefa;border:1px solid var(--line);border-radius:15px;overflow:hidden;flex:0 0 240px}.card.you{border:2px solid #547246}.photo{width:100%;height:255px;object-fit:contain;background:#e9ecdf;display:block}.no-photo{height:255px;display:grid;place-items:center;color:#88927b;font-size:14px}.card-body{padding:18px}.card-title{display:flex;justify-content:space-between;font-weight:600;gap:12px}.card-title strong{color:#345b42}.card-body p{font-size:12px;color:#76806d;line-height:1.7;margin:12px 0 0}.empty-gallery{padding:35px;border:1px dashed #ccd3be;width:100%;border-radius:15px;color:#566747;line-height:1.8}.empty-gallery span{font-size:14px;color:#87927b}.method{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:32px 0 45px}.method p{font-size:14px;color:#737d6b;margin:0 0 14px}.method a{font-size:13px}footer{border-top:1px solid var(--line);padding:24px 0 35px;font-weight:700;display:flex;justify-content:space-between}footer span{font-weight:400;font-size:12px;color:#87917d}dialog{max-width:460px;width:calc(100% - 32px);max-height:90vh;border:1px solid var(--line);border-radius:18px;padding:28px;color:inherit;background:#fffefa}dialog::backdrop{background:#17251b80}#close{background:transparent;font-size:22px;padding:0 8px}.consent{display:flex;align-items:start;gap:10px;font-size:12px;line-height:1.5}.consent input{width:16px;margin:3px 0}#error,#reference-error{font-size:13px;color:#a3402d;margin-bottom:0}[hidden]{display:none!important}@media(max-width:1300px){header,main,footer{margin-left:28px;margin-right:28px}}@media(max-width:800px){header{height:75px}header>span{display:none}.intro{display:block;padding-top:28px}h1{font-size:30px}.privacy{display:block;margin-top:18px}.workspace{grid-template-columns:1fr}.score{font-size:64px}.score-panel{padding:24px}.lean-box{width:140px;padding-left:16px}.gallery-heading{gap:20px}.gallery-heading h2{font-size:18px}.method{grid-template-columns:1fr;gap:20px}.cards{margin-right:-12px}header,main,footer{margin-left:18px;margin-right:18px}.score-panel .eyebrow{font-size:10px}.score small{display:block;letter-spacing:0;margin:5px 0 0}.primary{min-height:46px}}
/* Minimal dark theme */
:root{color-scheme:dark;color:#eeeef0;background:#0d0e10;--green:#dddfe4;--line:#282a2f}
body{font-family:'DM Sans',sans-serif}
.brand span{color:#848994}header>span,.eyebrow{color:#8f949f;letter-spacing:1.7px}
h1{font-weight:500}header>a:last-child{color:#a4a7af}
.intro p:not(.eyebrow),.privacy,.subtle,.hint{color:#9398a2}
.panel{background:#141519;border-color:#292b31;border-radius:12px}
.section-title>span{color:#686d77}
input,select{background:#101114;color:#eeeff2;border-color:#33353c;border-radius:7px}
input::placeholder{color:#646975}label>span{color:#8d929b}
input:focus,select:focus,button:focus-visible{outline-color:#a8adb8}
.upload{background:#18191d;border-color:#41444d;border-radius:8px;color:#d5d8de}
.upload small,.text-button{color:#a0a5af}
.primary{background:#e3e5e9;color:#17181b;border-radius:7px}.primary:hover{background:#fff}
.secondary{background:#202227;color:#e1e3e8;border-color:#383b43;border-radius:7px}
.score-panel{background:#181a1f;border-color:#30333b;border-radius:12px}
.score{font-weight:400}.score small,.score-panel p:last-child{color:#969ca7}
.lean-box{border-color:#373a43}.lean-box span,.lean-box small{color:#949aa5}.lean-box strong{color:#e5e7eb}
.chart-empty{color:#747a86}.track{background:#252830}.dot{background:#737b8c}.dot.you{background:#e5e8ee}
.axis{color:#9298a4}.card{background:#15161a;border-color:#2f323a;border-radius:10px}
.card.you{border-color:#838b9b}.photo,.no-photo{background:#202228}.no-photo{color:#868d99}
.card-title strong{color:#e3e7ef}.card-body p{color:#959ba7}
.empty-gallery{border-color:#3a3e48;color:#b0b6c1;border-radius:10px}.empty-gallery span{color:#858d9b}
.method p{color:#979da8}.method a{color:#c9cdd5}footer span{color:#858d9a}
dialog{background:#17191e;color:#e4e7ed;border-color:#3d414b;border-radius:12px}dialog::backdrop{background:#000a}
#error,#reference-error{color:#f0a69c}
.number-scale{position:relative;margin:0 52px;min-width:1500px;border-bottom:1px solid #707783}.chart{overflow-x:auto;padding:12px 0 50px}.scale-tick{position:absolute;bottom:-8px;height:16px;border-left:1px solid #707783}.tick-label{position:absolute;top:24px;transform:translateX(-50%);font-size:14px;color:#bac0ca}.reference-slot{position:absolute;bottom:42px;transform:translateX(-50%);width:84px;height:144px;background:#17191d;border:1px dashed #363b43;color:#707988;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.reference-slot small{font-size:10px}.reference-slot:hover{border-color:#8a96a7;color:#c8d0da}.physique-pin{position:absolute;transform:translateX(-50%);width:88px;background:#242831;border:1px solid #657084;border-radius:7px;padding:4px;z-index:2}.pin-photo,.pin-placeholder{width:78px;height:118px;object-fit:contain;background:#14161b;border-radius:4px}.pin-placeholder{display:grid;place-items:center;font-size:11px;color:#9099a8}.physique-pin strong,.physique-pin small{display:block;font-size:10px;line-height:1.5;overflow-wrap:anywhere}.physique-pin strong{padding-top:5px}.physique-pin small{color:#aeb7c6}.pin-stem{position:absolute;left:50%;top:100%;width:1px;background:#7b889e}.physique-pin.yours{border:2px solid #c4ddff;box-shadow:0 0 0 3px #91bbff18}.yours .pin-stem{background:#c4ddff}.off-scale{font-size:13px;color:#aeb7c6}.bodyfat-note{margin-top:24px;padding:24px;border:1px solid #30343d;border-radius:12px;background:#17191e}.bodyfat-note p{font-size:14px;color:#a8afbb;max-width:850px;margin-bottom:0}.bodyfat-note strong{color:#e4e8ef}.chart-panel{margin-top:24px}.results{display:flex;flex-direction:column;justify-content:center}.score-panel{min-height:100%}
.projection{margin-top:24px}.projection-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.projection-result{padding:20px;background:#1c2028;border:1px solid #343e50;border-radius:9px}.projection-result>span{font-size:13px;color:#a1adbd}.projection-result strong{display:block;font-size:25px;margin:14px 0}.projection-result p{font-size:18px;margin:10px 0}.projection-result small{color:#a7b1c0;line-height:1.5;display:block}.range-labels{display:flex;justify-content:space-between;font-size:12px;color:#8993a3}input[type=range]{padding:0;accent-color:#9abff6}.forecast-legend{display:flex;gap:24px;flex-wrap:wrap;font-size:12px;color:#a7bbd7;margin:24px 0}.forecast-fill,.forecast-range{position:absolute;top:0;bottom:0;pointer-events:none;background:linear-gradient(to top,#719eea33,#719eea08);border-bottom:4px solid #9abff6}.forecast-range{background:repeating-linear-gradient(135deg,#7aacf32b 0px,#7aacf32b 4px,transparent 4px,transparent 10px);border-color:#c0d8fb}.forecast-end{position:absolute;top:0;bottom:0;border-right:1px dashed #a4c6f7;pointer-events:none}.reference-slot{z-index:1}.scale-tick{z-index:3}.projection details{border-top:1px solid #303640;padding-top:18px;font-size:14px;color:#a7b0bc}.projection summary{cursor:pointer;color:#e0e6ef}.projection details p{max-width:900px}.rates{border-collapse:collapse;margin-top:18px;width:100%;max-width:620px;text-align:left}.rates th,.rates td{padding:10px;border-bottom:1px solid #303640}.rates th{font-weight:500;color:#d1d9e6}@media(max-width:700px){.projection-grid{grid-template-columns:1fr;gap:20px}.projection-result strong{font-size:21px}.projection h2{font-size:18px}.projection .section-title>span{display:none}}
/* Put the projection and scale ahead of the supporting measurements. */
header{height:64px}.brand{font-size:27px}.intro{padding:22px 0 18px;align-items:center}.intro .eyebrow{display:none}.intro h1{font-size:21px;letter-spacing:-.6px;color:#c8ccd4}.intro p:not(.eyebrow){font-size:14px;margin-top:7px}.workspace{grid-template-columns:minmax(0,1fr) 210px;gap:16px}.workspace>aside{padding:16px 18px;background:#111216;border-color:#25272d}.workspace h2{font-size:14px;color:#aeb4bf}.workspace .section-title>span,.workspace>aside>.subtle{display:none}#profile{display:grid;grid-template-columns:80px repeat(3,minmax(75px,1fr)) minmax(150px,1.5fr);gap:0 12px;align-items:start;margin-top:12px}#profile .fields{display:contents}#profile .units{display:block}#profile .units select{width:100%;margin:6px 0 0;padding:9px 5px}#profile label,#profile .units label{font-size:12px}#profile input:not([type=file]){padding:9px;margin:6px 0 0;font-size:14px}#profile .hint{grid-column:1/5;grid-row:2;margin:10px 0 0;font-size:11px}#profile .primary{grid-column:5;grid-row:1;padding:10px;margin-top:21px;min-height:38px;font-size:12px;gap:8px;background:#2a2e36;color:#dce1eb}#profile .photo-options{grid-column:5;grid-row:2;font-size:12px;margin-top:10px}#profile .photo-options summary{cursor:pointer;color:#aeb7c7}#profile .upload{margin-top:10px;padding:12px 8px}#profile .upload input{max-width:100%}#error{grid-column:1/-1;margin:5px 0 0}.score-panel{padding:16px 18px;display:block;background:#111216;border-color:#25272d;min-height:0;height:100%}.score-panel .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:8px}.score{font-size:34px;letter-spacing:-1.5px}.score small{display:inline;font-size:12px;margin-left:9px}.score-panel #summary{font-size:11px;margin:7px 0 0}.lean-box{display:none}.projection{margin-top:24px;padding:28px 30px;border-color:#465268;background:#171b23}.projection h2{font-size:28px;letter-spacing:-.7px}.projection-grid{gap:48px}.projection-result{background:#202938;border-color:#43536c}.projection-result strong{font-size:29px}.chart-panel{padding:28px 30px;border-color:#3d485b;background:#12161d}.chart-panel h2{font-size:23px}.chart-panel .section-title>span{display:none}.forecast-legend{margin:18px 0}.projection details{padding-top:12px}.projection .subtle{margin-bottom:20px}.number-scale{margin-top:8px}
@media(max-width:950px){.workspace{grid-template-columns:minmax(0,1fr) 160px}#profile{grid-template-columns:70px repeat(3,minmax(65px,1fr))}#profile .primary{grid-row:3;grid-column:1/3;margin-top:10px}#profile .photo-options{grid-row:3;grid-column:3/5;align-self:center}.projection-grid{gap:24px}}
@media(max-width:650px){.workspace{grid-template-columns:1fr}.score-panel{display:flex;align-items:center;gap:15px;padding:12px 16px}.score-panel>div:first-child{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.score-panel .eyebrow{margin:0;max-width:85px;line-height:1.5}.score-panel #summary{display:none}.score{font-size:27px}.intro{display:block;padding-top:18px}.intro h1{font-size:20px}.privacy{font-size:11px;margin-top:10px}.projection,.chart-panel{padding:22px 18px}.projection h2{font-size:25px;line-height:1.3}.projection-grid{grid-template-columns:1fr;gap:18px}.projection-result strong{font-size:23px}#profile{column-gap:9px;grid-template-columns:60px repeat(3,minmax(0,1fr))}.workspace>aside{padding:14px}.projection .section-title>span{display:none}}
.height-pair{display:grid;grid-template-columns:1fr 1fr;gap:6px}.height-caption{display:none}#profile .height-pair label{font-size:12px}#profile .units select{font-size:12px}.number-scale{min-width:0;width:auto;margin:8px 4.5% 0}.chart{overflow:visible;padding-bottom:50px}.reference-slot{width:8%;max-width:84px;padding:5px 1px}.reference-slot small{font-size:9px}.physique-pin{width:9%;max-width:88px}.pin-photo,.pin-placeholder{width:100%;height:110px}.tick-label{font-size:12px}.projection #future{appearance:none;-webkit-appearance:none;background:transparent;border:none;box-shadow:none;width:100%;height:44px;margin:12px 0 0;cursor:pointer}.projection #future::-webkit-slider-runnable-track{height:14px;background:#3e4c63;border:1px solid #647d9e;border-radius:20px}.projection #future::-moz-range-track{height:14px;background:#3e4c63;border:1px solid #647d9e;border-radius:20px}.projection #future::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:#d8e8ff;border:3px solid #8bb3ee;margin-top:-8px;box-shadow:0 0 0 4px #9bbfff15}.projection #future::-moz-range-thumb{width:23px;height:23px;border-radius:50%;background:#d8e8ff;border:3px solid #8bb3ee}.range-labels{padding:0 8px;font-size:13px;gap:4px}.selected-time{font-size:17px;font-weight:600;color:#c9ddfa;margin:15px 0 0}.projection #future:focus-visible{outline:2px solid #b3d2ff;outline-offset:4px}@media(max-width:650px){.tick-label{font-size:9px}.reference-slot small{display:none}.reference-slot{height:90px}.pin-photo,.pin-placeholder{height:78px}.physique-pin{padding:2px}.physique-pin strong,.physique-pin small{font-size:8px}.physique-pin strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.range-labels{font-size:11px}.chart-panel{padding-left:12px;padding-right:12px}.height-pair{gap:3px}#profile .height-pair input{padding:9px 3px}.number-scale{margin-left:4.5%;margin-right:4.5%}}
.bodyfat-note{padding:28px 30px;background:transparent;border:0;border-top:1px solid #30343d;border-radius:0}.bodyfat-note h2{font-size:23px;letter-spacing:-.5px;margin-bottom:20px}.bodyfat-note p{max-width:780px;font-size:15px;line-height:1.75;margin:0 0 14px}.bodyfat-note details{margin-top:22px;font-size:13px;color:#96a0af}.bodyfat-note summary{cursor:pointer;margin-bottom:12px}.bodyfat-note details p{font-size:13px}.bodyfat-note details a{font-size:13px}header{justify-content:flex-start}
.brand{font-size:23px;letter-spacing:-.8px;line-height:1.2}footer{gap:20px}footer>span{flex-shrink:0}@media(max-width:650px){.brand{font-size:20px}footer{font-size:13px;flex-wrap:wrap;gap:10px}}
main>.bodyfat-note:first-child{margin-top:0;padding:26px 0 22px;border-top:0;border-bottom:1px solid #30343d;margin-bottom:22px}main>.bodyfat-note:first-child h2{font-size:22px;margin-bottom:12px}main>.bodyfat-note:first-child p{max-width:960px;font-size:14px;line-height:1.65}main>.bodyfat-note:first-child details{margin-top:14px}.photo-privacy{display:block;float:none!important;font-size:10px;font-weight:400;color:#8e98a7!important;line-height:1.5;margin-top:5px}
.bf-guide-link{padding:0 3px;margin-left:3px;border:0;border-radius:3px;background:none;color:#b5d0f6;font-size:10px;vertical-align:baseline;text-decoration:underline;text-underline-offset:3px}.bf-guide{width:min(960px,calc(100% - 28px));max-width:960px;padding:24px}.bf-guide-image{display:block;width:100%;height:auto;border-radius:8px;background:#121419}.bf-guide-disclosure{font-size:13px;line-height:1.6;color:#abb4c1}.bf-guide .section-title button{font-size:25px;background:none;color:#dce4ef;padding:2px 9px}.bf-guide>.primary{width:auto;margin-left:auto}#profile label:has(.bf-guide-link){position:relative}@media(max-width:650px){.bf-guide{padding:15px}.bf-guide h2{font-size:20px}.bf-guide-link{display:block;margin:2px 0 0;padding:0}.bf-guide-disclosure{font-size:12px}}
#profile{grid-template-columns:80px 80px repeat(3,minmax(70px,1fr)) minmax(145px,1.5fr)}#profile .sex-field select{margin:6px 0 0;padding:9px 5px;font-size:12px}#profile .primary{grid-column:6}#profile .hint{grid-column:1/6}#profile .photo-options{grid-column:6}@media(max-width:1050px){#profile{grid-template-columns:75px 75px repeat(3,minmax(60px,1fr))}#profile .primary{grid-row:3;grid-column:1/3}#profile .photo-options{grid-row:3;grid-column:3/6}#profile .hint{grid-column:1/6}}@media(max-width:650px){#profile{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}#profile>.sex-field{grid-column:1/4}#profile>.units{grid-column:4/7}#metric-height,#imperial-height{grid-column:1/3}#profile .fields>label:last-child{grid-column:3/5}#profile>label:has(#fat){grid-column:5/7}#profile .hint{grid-row:3;grid-column:1/7}#profile .primary{grid-row:4;grid-column:1/4}#profile .photo-options{grid-row:4;grid-column:4/7}}
.range-labels{position:relative;display:block;height:20px;margin:0 14px;padding:0}.range-labels span{position:absolute;transform:translateX(-50%);white-space:nowrap;font-size:12px}.range-labels span:nth-child(1){left:0%}.range-labels span:nth-child(2){left:10%}.range-labels span:nth-child(3){left:20%}.range-labels span:nth-child(4){left:30%}.range-labels span:nth-child(5){left:40%}.range-labels span:nth-child(6){left:50%}.range-labels span:nth-child(7){left:60%}.range-labels span:nth-child(8){left:70%}.range-labels span:nth-child(9){left:80%}.range-labels span:nth-child(10){left:90%}.range-labels span:nth-child(11){left:100%}@media(max-width:400px){.range-labels span{font-size:10px}}
.projection-grid{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:32px}.range-labels{height:36px}.range-labels span{white-space:normal;text-align:center;width:9%;font-size:11px;line-height:1.4}@media(max-width:900px){.projection-grid{grid-template-columns:1fr}.range-labels span{font-size:11px}}@media(max-width:400px){.range-labels span{font-size:9px}}
.guide-zoom-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px}.guide-zoom-controls button{background:#2a3341;color:#e4edfa;min-width:42px;min-height:42px;padding:8px 12px}.guide-zoom-controls button:disabled{opacity:.35;cursor:default}.guide-zoom-controls output{font-size:14px;min-width:48px;text-align:center;font-variant-numeric:tabular-nums}.guide-zoom-controls>span{font-size:12px;color:#9caabd;margin-left:auto}#guide-zoom-viewport{width:100%;max-height:60vh;overflow:auto;border-radius:8px;background:#121419;overscroll-behavior:contain;border:1px solid #39414e}#guide-zoom-viewport:focus-visible{outline:2px solid #b6d2f9;outline-offset:3px}#guide-zoom-viewport .bf-guide-image{max-width:none;border-radius:0;cursor:zoom-in;display:block}#guide-zoom-viewport.is-zoomed .bf-guide-image{cursor:zoom-out}@media(max-width:650px){.guide-zoom-controls>span{width:100%;margin:0}.guide-zoom-controls{gap:8px}}
.experience-heading{position:relative;display:flex;align-items:center;gap:8px}.training-help-toggle{border:1px solid #8e9eb6;background:transparent;color:#c9dbf5;width:20px;height:20px;min-width:20px;padding:0;border-radius:50%;font-size:12px;line-height:18px}.training-help-toggle[aria-expanded=true]{background:#34455f}.training-help{position:absolute;top:30px;left:0;z-index:10;width:min(380px,100%);padding:17px;background:#252e3c;border:1px solid #52627a;border-radius:10px;box-shadow:0 12px 35px #0007;font-size:13px}.training-help strong{font-size:14px;color:#e1eaf8}.training-help p{font-size:13px;line-height:1.6;color:#bfc9d8;margin:10px 0 0}
.number-scale{margin-bottom:48px}.chart{padding-bottom:12px}.off-scale{margin:12px 0 0;line-height:1.6;overflow-wrap:anywhere}
/* Obsidian interface: neutral black surfaces with a single signal accent. */
:root{--accent:#65d9ff;--line:#242424;color:#f4f4f5;background:#050505;color-scheme:dark}
body{background:#050505;font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}
header,main,footer{max-width:1320px}
header{height:88px;border-bottom:1px solid #222;justify-content:space-between}
header .brand{font:700 19px Manrope,sans-serif;letter-spacing:-.7px;color:#fafafa;display:flex;align-items:center;gap:14px}
.brand::before{content:'M / P';font:600 11px monospace;letter-spacing:-1px;border:1px solid #484848;padding:10px 8px;color:var(--accent);border-radius:4px}
header::after{content:'MUSCLE / PROJECTED';font:10px monospace;letter-spacing:2px;color:#858585}
main>.bodyfat-note:first-child{display:grid;grid-template-columns:1fr 1fr;gap:12px 70px;padding:46px 0 34px;margin-bottom:24px;border-color:#222}
main>.bodyfat-note:first-child h2{grid-row:1/3;font:500 clamp(24px,3vw,38px)/1.15 Manrope,sans-serif;letter-spacing:-1.5px;max-width:340px;margin:0}
main>.bodyfat-note:first-child p{font-size:13px;color:#969696;line-height:1.8;margin:0}
.workspace{grid-template-columns:minmax(0,1fr) 170px;gap:0;border:1px solid #272727;border-radius:8px;background:#0b0b0b}
.workspace>aside{padding:22px 24px;background:transparent;border:0;border-radius:0}
.workspace h2{font:600 10px monospace;letter-spacing:2px;text-transform:uppercase;color:#b0b0b0}
.results{border-left:1px solid #272727}
.score-panel{border:0;border-radius:0;background:transparent;padding:22px 18px;display:flex;align-items:center}
.score-panel .eyebrow{font:10px monospace;letter-spacing:1px;color:#888}
.score{font:500 30px Manrope,sans-serif;letter-spacing:-1px;color:#e2e2e2}
.score small{font:10px monospace;color:#828282;margin-left:6px}
.score-panel #summary{font-size:10px;color:#808080;line-height:1.6}
input,select{background:#111;border:1px solid #303030;border-radius:5px;color:#ededed;transition:border-color .18s,background .18s}
input:hover,select:hover{border-color:#555}input:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
input::placeholder{color:#686868}label,label>span{color:#aaa}
#profile{gap:0 14px;margin-top:18px}#profile input:not([type=file]),#profile select{min-height:40px;padding:10px 8px}
#profile label,#profile .units label{font-size:11px}#profile .hint{color:#858585;line-height:1.6}
.primary,#profile .primary{background:#eaeaea;color:#090909;border-radius:5px;border:1px solid #eee;min-height:40px;transition:background .18s,transform .18s}
.primary:hover,#profile .primary:hover{background:var(--accent);border-color:var(--accent)}button:active{transform:translateY(1px)}
#profile .photo-options summary,.text-button{color:#b9b9b9}.photo-privacy{color:#777!important}.upload{background:#101010;border-color:#444;color:#ddd}.upload small{color:#888}
.bf-guide-link{color:var(--accent);text-decoration:none;border-bottom:1px solid #386372;font-size:10px}
.projection{margin-top:34px;padding:36px;background:#090909;border:1px solid #292929;border-radius:8px;position:relative}
.projection::before{content:'';position:absolute;top:-1px;left:36px;width:72px;height:2px;background:var(--accent)}
.projection .section-title{gap:20px;align-items:flex-start}.projection h2{font:500 clamp(26px,3.2vw,42px)/1.15 Manrope,sans-serif;letter-spacing:-1.6px;max-width:630px}
.projection .section-title>span{font:10px monospace;color:var(--accent);letter-spacing:2px;border:1px solid #26424b;border-radius:3px;padding:7px 9px;white-space:nowrap}
.projection .subtle{color:#888;margin:16px 0 34px;font-size:13px}
.projection-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:44px}
.projection-grid>div:first-child{min-width:0}.projection label{font-size:12px;color:#bbb}.projection #experience{max-width:260px;margin:12px 0 30px;min-height:44px;background:#121212}
.projection-result{background:#0c0c0c;border:0;border-left:1px solid #303030;border-radius:0;padding:4px 0 4px 32px;display:flex;flex-direction:column;justify-content:center}
.projection-result>span{font:10px monospace;letter-spacing:1.6px;text-transform:uppercase;color:#9c9c9c}
.projection-result strong{font:500 clamp(22px,2.4vw,32px)/1.3 Manrope,sans-serif;letter-spacing:-1px;margin:20px 0 12px;color:#f7f7f7}
.projection-result p{font:16px monospace;color:var(--accent);margin:0 0 16px}.projection-result small{font-size:11px;color:#8e8e8e;line-height:1.7}
.projection #future::-webkit-slider-runnable-track{background:#222;border-color:#3c3c3c;height:14px;border-radius:3px}
.projection #future::-moz-range-track{background:#222;border-color:#3c3c3c;height:14px;border-radius:3px}
.projection #future::-webkit-slider-thumb{background:#e5faff;border:3px solid var(--accent);box-shadow:0 0 18px #65d9ff30;border-radius:6px}
.projection #future::-moz-range-thumb{background:#e5faff;border:3px solid var(--accent);box-shadow:0 0 18px #65d9ff30;border-radius:6px}
.range-labels{color:#8a8a8a}.selected-time{font:500 16px Manrope,sans-serif;color:#e6e6e6}
.forecast-legend{font-size:10px;color:#888;gap:22px;margin:28px 0 20px}.projection details{border-color:#252525;font-size:12px;color:#969696;padding-top:18px}.projection summary{color:#bababa;font-size:12px}.rates th,.rates td{border-color:#292929}.rates th{color:#dedede}.projection details a{color:var(--accent)}
.chart-panel{margin:20px 0 44px;background:#090909;border:1px solid #292929;border-radius:8px;padding:32px 36px}
.chart-panel h2{font:500 24px Manrope,sans-serif;letter-spacing:-.8px}.chart-panel .subtle{font:11px/1.7 monospace;color:#818181;margin:12px 0 20px}
.number-scale{border-color:#494949;margin-bottom:48px}.scale-tick{border-color:#555}.tick-label{color:#aaa;font-family:monospace;font-size:12px}
.reference-slot{background:#0c0c0c;border:1px dashed #292929;border-radius:4px;color:#747474;transition:border-color .18s,background .18s}.reference-slot:hover{background:#111;border-color:#65d9ff80;color:var(--accent)}
.physique-pin{background:#161616;border-color:#484848;border-radius:5px}.physique-pin.yours{border-color:var(--accent);box-shadow:0 0 20px #65d9ff10}.pin-photo,.pin-placeholder{background:#0b0b0b;border-radius:3px}.pin-placeholder{color:#999}.physique-pin small{color:#aaa}.pin-stem{background:#555}.yours .pin-stem{background:var(--accent)}
.forecast-fill{background:linear-gradient(0deg,#65d9ff18,transparent);border-bottom:3px solid var(--accent)}.forecast-range{background:repeating-linear-gradient(135deg,#65d9ff18 0,#65d9ff18 3px,transparent 3px,transparent 10px);border-bottom:3px solid #c5f2ff}.forecast-end{border-color:#65d9ff90}
.off-scale{font-size:11px;color:#999}.chart{padding-bottom:12px}
.training-help-toggle{border-color:#555;color:#b8b8b8;background:#111}.training-help-toggle[aria-expanded=true]{border-color:var(--accent);color:var(--accent);background:#132025}.training-help{background:#141414;border-color:#454545;border-radius:6px;box-shadow:0 16px 40px #000c}.training-help strong{color:#eee}.training-help p{color:#aaa}
dialog{background:#0c0c0c;border:1px solid #444;border-radius:8px;color:#eee;box-shadow:0 24px 120px #000c}dialog::backdrop{background:#000c;backdrop-filter:blur(8px)}dialog h2{letter-spacing:-.6px}.subtle,.bf-guide-disclosure{color:#999}.bf-guide-disclosure a{color:var(--accent)}
.guide-zoom-controls button{background:#1b1b1b;color:#eee;border:1px solid #373737;border-radius:4px}.guide-zoom-controls>span{color:#888}#guide-zoom-viewport{background:#080808;border-color:#333;border-radius:4px}.bf-guide .section-title button{color:#ddd}
footer{border-color:#222;font-size:11px;font-weight:500;letter-spacing:.2px;padding:24px 0 36px;color:#777}footer span{color:#aaa;font:11px monospace}
@media(max-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) 145px}.projection-grid{gap:24px}.projection-result{padding-left:24px}}
@media(max-width:900px){.projection-grid{grid-template-columns:1fr}.projection-result{border-left:0;border-top:1px solid #303030;padding:24px 0 0}.projection-result strong{font-size:30px}.projection h2{max-width:540px}.projection .section-title>span{display:none}}
@media(max-width:650px){header,main,footer{margin-left:16px;margin-right:16px}header{height:72px}header::after{display:none}header .brand{font-size:16px;gap:10px}.brand::before{font-size:10px;padding:8px 6px}main>.bodyfat-note:first-child{grid-template-columns:1fr;gap:14px;padding:28px 0 24px}main>.bodyfat-note:first-child h2{grid-row:auto;font-size:28px;max-width:none}main>.bodyfat-note:first-child p{font-size:12px}.workspace{grid-template-columns:1fr}.workspace>aside{padding:18px 14px}.results{border-left:0;border-top:1px solid #272727}.score-panel{padding:14px}.score-panel>div:first-child{display:flex;align-items:center;gap:16px}.score-panel .eyebrow{margin:0}.score-panel #summary{display:none}#profile{gap:10px 8px}#profile .primary{padding:10px 8px;font-size:11px}.projection{margin-top:24px;padding:26px 18px}.projection::before{left:18px}.projection h2{font-size:30px;letter-spacing:-1px}.projection .subtle{margin-bottom:26px}.projection-grid{gap:24px}.projection-result strong{font-size:26px}.chart-panel{padding:24px 12px;margin-bottom:28px}.chart-panel h2{font-size:22px}.tick-label{font-size:10px}.forecast-legend{gap:10px;font-size:9px}.reference-slot small{display:none}.range-labels span{font-size:9px}.bf-guide{padding:16px}footer{gap:12px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
.projection-result #lbm-output{font:16px/1.6 monospace;color:var(--accent);margin:0 0 16px;overflow-wrap:anywhere}.score-panel #summary{display:block}@media(max-width:650px){.score-panel #summary{flex-basis:100%;margin-top:0}}
.score-panel #summary{font-size:15px;color:#c6c6c6;line-height:1.5;margin-top:12px}
button.physique-pin.yours{padding:4px;text-align:left;color:inherit;font:inherit;cursor:pointer}button.physique-pin.yours:hover{background:#202020;box-shadow:0 0 24px #65d9ff30}button.physique-pin.yours:active{transform:translateX(-50%)}button.physique-pin.yours .pin-stem{pointer-events:none}
.brand::before{content:none;display:none}
.ai-preview{background:#090909;border:1px solid #292929;border-radius:8px;padding:36px;margin:0 0 44px}.ai-preview h2{font:500 clamp(28px,3vw,38px) Manrope,sans-serif;letter-spacing:-1.2px}.ai-preview .eyebrow{color:var(--accent);font:10px monospace;letter-spacing:2px;margin:0 0 12px}.ai-label{color:var(--accent)!important;font:10px monospace!important;letter-spacing:2px}.ai-preview>.subtle{max-width:650px;line-height:1.7;font-size:13px}.ai-toolbar{display:grid;grid-template-columns:170px 190px minmax(130px,1fr) auto;gap:20px;align-items:end;padding:22px 0;border-top:1px solid #252525}.ai-toolbar label{font-size:11px}.ai-toolbar select{margin:8px 0 0;min-height:44px}.ai-target{padding-bottom:6px}.ai-target span{display:block;font:10px monospace;letter-spacing:1px;color:#888}.ai-target strong{font:15px monospace;color:var(--accent);display:block;margin-top:10px}.ai-toolbar .secondary{background:#151515;border-color:#393939;min-height:44px;color:#ddd}.ai-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ai-photo-card{min-width:0;background:#0b0b0b;border:1px solid #303030;border-radius:7px;overflow:hidden}.ai-photo-heading{min-height:50px;padding:14px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #262626;font:10px monospace;letter-spacing:1px;color:#999}.ai-photo-heading .text-button{padding:0;font-size:11px}.ai-photo-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:440px;padding:0;border:0;border-radius:0;background:#080808;color:#aaa;overflow:hidden}.ai-photo-stage img{width:100%;height:100%;object-fit:contain}.ai-upload-stage:hover{background:#101010}.ai-upload-stage>span{text-align:center;padding:24px}.ai-upload-stage strong{display:block;font:300 42px Manrope,sans-serif;color:var(--accent);margin-bottom:20px}.ai-upload-stage b{display:block;font:500 19px Manrope,sans-serif;color:#ddd;margin-bottom:12px}.ai-upload-stage small{font:12px/1.8 'DM Sans',sans-serif;color:#888}.ai-output-stage{background:radial-gradient(ellipse at center,#10202744,transparent 70%),#080808}.ai-output-stage>div{text-align:center;padding:24px}.ai-output-stage strong{font:500 25px Manrope,sans-serif;letter-spacing:-.7px;color:#ddd}.ai-output-stage p{font-size:12px;color:#888}.ai-output-stage small{font-size:11px;color:#aaa}.ai-action-row{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:24px}.ai-action-row>div{max-width:650px}.ai-action-row .primary{width:auto;min-width:190px;margin:0;white-space:nowrap}.ai-action-row .primary:disabled{background:#171717;border-color:#303030;color:#777;cursor:not-allowed}.ai-privacy,.ai-footnote{font-size:11px;color:#858585;line-height:1.7;margin:10px 0 0}.ai-footnote{border-top:1px solid #242424;padding-top:18px;margin-top:22px}#ai-status{font-size:12px;color:var(--accent)}@media(max-width:1000px){.ai-toolbar{grid-template-columns:1fr 1fr}.ai-target{align-self:center}}@media(max-width:650px){.ai-preview{padding:24px 16px}.ai-photo-grid{grid-template-columns:1fr}.ai-photo-stage{height:380px}.ai-toolbar{gap:14px}.ai-toolbar .secondary{font-size:12px;padding:10px}.ai-action-row{align-items:stretch;flex-direction:column;gap:16px}.ai-action-row .primary{width:100%}.ai-preview .ai-label{display:none}.ai-photo-heading{font-size:9px}}
main>.bodyfat-note:first-child h2{grid-row:1/4}@media(max-width:650px){main>.bodyfat-note:first-child h2{grid-row:auto}}

/* Mobile measurements and an independently scrollable muscularity scale. */
.scale-viewport{min-width:0}
.scale-controls{display:none}
@media(max-width:650px){
  #profile>label:has(#fat){display:flex;flex-direction:column;position:relative;line-height:normal}
  #profile>label:has(#fat)>span{position:absolute;right:0;top:0;float:none}
  #profile .bf-guide-link{order:2;align-self:flex-start;margin:7px 0 0;padding:4px 0;min-height:28px}
  #profile #fat{order:1}
  .scale-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 0}
  .scale-controls>span{font-size:12px;color:#aaa;max-width:175px;line-height:1.5}
  .scale-controls>div{display:flex;align-items:center;gap:8px}
  .scale-controls button{width:44px;height:44px;padding:0;background:#181818;color:var(--accent);border:1px solid #444;font-size:22px}
  .scale-controls button:disabled{opacity:.35}
  .scale-controls output{font-size:12px;min-width:35px;text-align:center}
  .scale-viewport{width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .scale-viewport .chart{width:var(--scale-width);max-width:none;overflow:visible;padding-top:18px}
  .scale-viewport .number-scale{margin-left:calc(80px * var(--scale-zoom));margin-right:calc(80px * var(--scale-zoom))}
  .scale-viewport .physique-pin{width:calc(108px * var(--scale-zoom));max-width:none;padding:calc(4px * var(--scale-zoom))}
  .scale-viewport .pin-photo,.scale-viewport .pin-placeholder{display:block;width:100%;height:calc(144px * var(--scale-zoom));object-fit:contain}
  .scale-viewport .pin-placeholder{display:grid;place-items:center;font-size:calc(12px * var(--scale-zoom))}
  .scale-viewport .physique-pin strong,.scale-viewport .physique-pin small{font-size:calc(12px * var(--scale-zoom));white-space:normal;overflow-wrap:normal;overflow:visible}
  .scale-viewport .tick-label{font-size:calc(12px * var(--scale-zoom))}
}
