/* SoFit — dashboard de composição corporal. Somente apresentação de dados locais. */
.sofit-comp-viz{margin:0 0 18px;color:var(--text,#eef4fb);overflow:hidden;background:linear-gradient(145deg,rgba(13,27,45,.98),rgba(12,22,37,.98));border-color:rgba(91,139,203,.28)!important;box-shadow:0 20px 52px rgba(0,9,22,.22)}
.sofit-comp-viz *{box-sizing:border-box}
.sofit-comp-viz .scv-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:2px 2px 18px;border-bottom:1px solid rgba(131,166,208,.16)}
.sofit-comp-viz .scv-head h3{margin:2px 0 5px;font-size:clamp(22px,3vw,31px);line-height:1.1;letter-spacing:-.025em}
.sofit-comp-viz .scv-head p{margin:0;color:var(--muted,#9eb0c5);font-size:13px;line-height:1.5}
.sofit-comp-viz .scv-eyebrow{display:block;color:#68a3ff;font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.sofit-comp-viz .scv-head-actions{display:flex;align-items:flex-end;flex-direction:column;gap:8px;color:var(--muted,#9eb0c5);font-size:11px;text-align:right;white-space:nowrap}
.sofit-comp-viz .scv-head-actions .btn,.sofit-comp-viz .scv-head>.btn{min-height:34px;padding:7px 12px;font-size:11px}

.sofit-comp-viz .scv-kpis{display:grid;grid-template-columns:repeat(6,minmax(125px,1fr));gap:9px;margin:14px 0}
.sofit-comp-viz .scv-kpi{min-width:0;padding:13px 13px 11px;border:1px solid rgba(113,151,198,.2);border-radius:13px;background:linear-gradient(145deg,rgba(29,48,72,.74),rgba(20,35,55,.72))}
.sofit-comp-viz .scv-kpi-label{display:block;min-height:28px;color:var(--muted,#9eb0c5);font-size:9.5px;font-weight:750;line-height:1.35;letter-spacing:.055em;text-transform:uppercase}
.sofit-comp-viz .scv-kpi strong{display:block;margin:4px 0 6px;color:#f4f8fd;font-size:clamp(20px,2.4vw,27px);font-variant-numeric:tabular-nums;line-height:1}
.sofit-comp-viz .scv-kpi strong small{font-size:10px;color:var(--muted,#9eb0c5);font-weight:700}
.sofit-comp-viz .scv-kpi-foot{display:block;color:#8196ad;font-size:9.5px;line-height:1.35}
.sofit-comp-viz .scv-delta{color:#7fb2ff}

.sofit-comp-viz .scv-main-grid{display:grid;grid-template-columns:minmax(240px,.76fr) minmax(330px,1.05fr) minmax(430px,1.65fr);gap:12px;align-items:stretch}
.sofit-comp-viz .scv-secondary-grid{display:grid;grid-template-columns:minmax(320px,.92fr) minmax(450px,1.4fr);gap:12px;margin-top:12px}
.sofit-comp-viz .scv-panel{min-width:0;padding:16px;border:1px solid rgba(113,151,198,.21);border-radius:15px;background:linear-gradient(145deg,rgba(24,42,64,.9),rgba(15,29,47,.93));box-shadow:0 10px 26px rgba(0,8,20,.13)}
.sofit-comp-viz .scv-panel-title{color:#88b5f8;font-size:10px;font-weight:850;line-height:1.3;letter-spacing:.095em;text-transform:uppercase}
.sofit-comp-viz .scv-panel h4{margin:3px 0 0;font-size:15px;line-height:1.25}
.sofit-comp-viz .scv-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}

.sofit-comp-viz .scv-donut-wrap{display:grid;place-items:center;position:relative;min-height:188px}
.sofit-comp-viz .scv-donut{width:min(178px,66vw);height:auto;transform:rotate(-90deg);filter:drop-shadow(0 0 15px rgba(40,184,199,.14));overflow:visible}
.sofit-comp-viz .scv-donut-bg{fill:none;stroke:#263a54;stroke-width:13}
.sofit-comp-viz .scv-donut-lean{fill:none;stroke:#19bdc3;stroke-width:13;opacity:.9}
.sofit-comp-viz .scv-donut-fat{fill:none;stroke:#f39a44;stroke-width:13;stroke-linecap:round;stroke-dasharray:var(--scv-fat-dash,0) 100}
.sofit-comp-viz .scv-donut-center{position:absolute;max-width:120px;text-align:center;pointer-events:none}
.sofit-comp-viz .scv-donut-center b{display:block;color:#fff;font-size:31px;line-height:1;font-variant-numeric:tabular-nums}
.sofit-comp-viz .scv-donut-center span{display:block;margin-top:6px;color:#91a8c1;font-size:10px;line-height:1.35}
.sofit-comp-viz .scv-legend{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.sofit-comp-viz .scv-legend-item{padding:9px;border:1px solid rgba(112,149,193,.16);border-radius:10px;background:rgba(6,20,36,.42);font-size:10px;color:#a5b6ca}
.sofit-comp-viz .scv-legend-item i{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%}
.sofit-comp-viz .scv-dot-lean{background:#19bdc3}.sofit-comp-viz .scv-dot-fat{background:#f39a44}
.sofit-comp-viz .scv-legend-item b{display:block;margin-top:3px;color:#f2f6fb;font-size:14px;font-variant-numeric:tabular-nums}

.sofit-comp-viz .scv-ref-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:13px 0 18px}
.sofit-comp-viz .scv-ref-head>div strong{display:block;font-size:28px;font-variant-numeric:tabular-nums;line-height:1}
.sofit-comp-viz .scv-ref-head>div span{display:block;margin-top:5px;color:#91a8c1;font-size:10px}
.sofit-comp-viz .scv-state{padding:5px 9px;border-radius:999px;border:1px solid;font-size:10px;font-weight:800}
.sofit-comp-viz .scv-state.within{color:#49d0a2;border-color:rgba(73,208,162,.42);background:rgba(73,208,162,.09)}
.sofit-comp-viz .scv-state.high{color:#ffae69;border-color:rgba(255,174,105,.42);background:rgba(255,174,105,.09)}
.sofit-comp-viz .scv-state.low{color:#79aaff;border-color:rgba(121,170,255,.42);background:rgba(121,170,255,.09)}
.sofit-comp-viz .scv-ref-track{position:relative;height:13px;margin:22px 2px 0;border-radius:999px;background:linear-gradient(90deg,#243958,#304767);box-shadow:inset 0 1px 5px rgba(0,0,0,.3)}
.sofit-comp-viz .scv-ref-band{position:absolute;top:0;height:100%;border-radius:999px;background:linear-gradient(90deg,#1fb9c1,#49d0a2);box-shadow:0 0 14px rgba(31,185,193,.25)}
.sofit-comp-viz .scv-ref-current{position:absolute;top:-7px;width:3px;height:27px;background:#f6a14c;border:1px solid #fff;border-radius:4px;transform:translateX(-50%);box-shadow:0 0 9px rgba(246,161,76,.5)}
.sofit-comp-viz .scv-ref-current b{position:absolute;bottom:29px;left:50%;transform:translateX(-50%);padding:2px 5px;border-radius:5px;color:#ffbd7b;background:#15243a;font-size:8px;white-space:nowrap}
.sofit-comp-viz .scv-ref-scale{position:relative;height:22px;margin:5px 2px 0;color:#7f94aa;font-size:8.5px}
.sofit-comp-viz .scv-ref-scale span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.sofit-comp-viz .scv-ref-scale span:first-child{left:0;transform:none}.sofit-comp-viz .scv-ref-scale span:last-child{right:0;transform:none}
.sofit-comp-viz .scv-reference-copy{margin:4px 0 0;color:#a7b7ca;font-size:11px;line-height:1.5}
.sofit-comp-viz .scv-scenario{display:grid;gap:4px;margin-top:10px;padding:10px 11px;border:1px solid rgba(108,156,222,.18);border-radius:10px;background:rgba(7,22,39,.4);font-size:11px;line-height:1.5}
.sofit-comp-viz .scv-scenario b{color:#dfeafe;font-size:11px}.sofit-comp-viz .scv-scenario span{color:#9fb1c6}.sofit-comp-viz .scv-scenario small{color:#7288a0;font-size:9.5px}

.sofit-comp-viz .scv-metric-switch{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}
.sofit-comp-viz .scv-metric-btn{min-height:29px;padding:5px 8px;border:1px solid rgba(113,151,198,.25);border-radius:7px;background:#14243a;color:#90a5bd;font:inherit;font-size:9.5px;font-weight:750;cursor:pointer}
.sofit-comp-viz .scv-metric-btn.active{border-color:#438ff6;background:rgba(45,126,238,.18);color:#bcd7ff;box-shadow:inset 0 0 0 1px rgba(67,143,246,.18)}
.sofit-comp-viz .scv-metric-btn:focus-visible{outline:2px solid #6da9ff;outline-offset:2px}
.sofit-comp-viz .scv-trend-svg{display:block;width:100%;min-height:200px;overflow:visible}
.sofit-comp-viz .scv-chart-grid line{stroke:rgba(141,169,204,.13);stroke-width:1}.sofit-comp-viz .scv-chart-grid text,.sofit-comp-viz .scv-chart-date,.sofit-comp-viz .scv-chart-unit{fill:#7890aa;font-size:9px;font-family:system-ui,sans-serif}
.sofit-comp-viz .scv-chart-line{fill:none;stroke:#468ff2;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(70,143,242,.3))}
.sofit-comp-viz .scv-chart-point{fill:#5da3ff;stroke:#d8e9ff;stroke-width:1.4}
.sofit-comp-viz .scv-chart-projection{fill:none;stroke:#20bdc1;stroke-width:2.5;stroke-dasharray:7 6;stroke-linecap:round}
.sofit-comp-viz .scv-chart-projected-point{fill:#172a43;stroke:#20bdc1;stroke-width:2}
.sofit-comp-viz .scv-chart-ref{fill:rgba(51,201,161,.11);stroke:rgba(51,201,161,.24);stroke-width:1}
.sofit-comp-viz .scv-chart-legend{display:flex;flex-wrap:wrap;align-items:center;gap:11px;color:#849ab1;font-size:9.5px}
.sofit-comp-viz .scv-chart-legend span{display:flex;align-items:center;gap:5px}.sofit-comp-viz .scv-chart-legend i{display:inline-block;width:15px;height:3px;border-radius:4px;background:#5da3ff}
.sofit-comp-viz .scv-chart-legend .projection{background:repeating-linear-gradient(90deg,#20bdc1 0 6px,transparent 6px 9px)}.sofit-comp-viz .scv-chart-legend .reference{height:8px;background:rgba(51,201,161,.32)}
.sofit-comp-viz .scv-chart-legend .fold-current{height:8px;background:#f39a44}.sofit-comp-viz .scv-chart-legend .fold-previous{height:8px;background:#4c8fe9}

.sofit-comp-viz .scv-body-layout{display:grid;grid-template-columns:minmax(210px,1.25fr) minmax(120px,.75fr);gap:13px;align-items:center;margin-top:8px}
.sofit-comp-viz .scv-body-svg{display:block;width:100%;max-height:330px;border-radius:11px;background:radial-gradient(circle at 50% 44%,rgba(50,94,143,.2),rgba(4,17,31,.2) 65%)}
.sofit-comp-viz .scv-body-gridlines path{fill:none;stroke:rgba(112,153,202,.09);stroke-width:1}
.sofit-comp-viz .scv-body-svg>text{fill:#718ba8;font:700 9px system-ui,sans-serif;letter-spacing:.1em;text-anchor:middle}
.sofit-comp-viz .scv-body-shape{fill:url(#scvBodyFront);stroke:#8fa9c5;stroke-width:1.2;filter:drop-shadow(0 8px 10px rgba(0,5,12,.25))}.sofit-comp-viz .scv-body-shape.back{fill:url(#scvBodyBack)}
.sofit-comp-viz .scv-site-marker circle:first-child{fill:#f3a050;stroke:#fff2e3;stroke-width:1.5}.sofit-comp-viz .scv-site-marker .pulse{fill:none;stroke:rgba(243,160,80,.42);stroke-width:1.5}
.sofit-comp-viz .scv-site-marker:focus{outline:none}.sofit-comp-viz .scv-site-marker:focus .pulse{stroke:#fff;stroke-width:2.5}
.sofit-comp-viz .scv-sites{display:grid;gap:5px;margin:0;padding:0;list-style:none}
.sofit-comp-viz .scv-sites li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;border-bottom:1px solid rgba(112,153,202,.12);color:#9db0c5;font-size:10px}
.sofit-comp-viz .scv-sites li span{display:flex;align-items:center;gap:6px;min-width:0}.sofit-comp-viz .scv-sites li i{width:6px;height:6px;border-radius:50%;background:#f3a050;flex:none}.sofit-comp-viz .scv-sites li b{color:#edf4fb;font-variant-numeric:tabular-nums;white-space:nowrap}

.sofit-comp-viz .scv-fold-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;padding:2px 0 5px;scrollbar-width:thin}
.sofit-comp-viz .scv-fold-chart{display:flex;align-items:flex-end;gap:10px;min-width:max-content;height:232px;padding:18px 8px 0;border-bottom:1px solid rgba(125,157,195,.24);background:repeating-linear-gradient(to top,transparent 0,transparent 44px,rgba(125,157,195,.08) 45px)}
.sofit-comp-viz .scv-fold-col{display:grid;grid-template-rows:20px 150px 34px;align-items:end;width:68px;text-align:center}
.sofit-comp-viz .scv-fold-value{color:#d9e8f7;font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}.sofit-comp-viz .scv-fold-bars{display:flex;align-items:flex-end;justify-content:center;gap:3px;height:150px}
.sofit-comp-viz .scv-fold-bars i{display:block;width:16px;min-height:5px;border-radius:5px 5px 2px 2px}.sofit-comp-viz .scv-fold-bars .current{background:linear-gradient(#ffb76e,#e88432)}.sofit-comp-viz .scv-fold-bars .previous{background:linear-gradient(#68a9ff,#397ccd);opacity:.62}
.sofit-comp-viz .scv-fold-col>b{align-self:start;padding-top:6px;color:#8299b1;font-size:8.5px;line-height:1.2;font-weight:700;overflow-wrap:anywhere}

.sofit-comp-viz details{margin-top:10px;border-top:1px solid rgba(117,153,197,.15);padding-top:9px}.sofit-comp-viz summary{cursor:pointer;color:#b8c8da;font-size:10.5px;font-weight:750}.sofit-comp-viz summary:focus-visible{outline:2px solid #6da9ff;outline-offset:3px;border-radius:4px}
.sofit-comp-viz .scv-note{margin:8px 0 0;color:#8297ae;font-size:9.5px;line-height:1.55}.sofit-comp-viz .scv-note a{color:#78adf6}
.sofit-comp-viz .scv-empty{display:grid;gap:5px;padding:14px;border-left:3px solid #597aa5;border-radius:9px;background:rgba(20,38,61,.65);color:#8ea3ba;font-size:11px;line-height:1.5}.sofit-comp-viz .scv-empty b{color:#cbd9e8;font-size:12px}.sofit-comp-viz .scv-empty span{display:block}
.sofit-comp-viz .scv-method{margin-top:12px;padding:12px 2px 0}.sofit-comp-viz .scv-method>summary{font-size:11px}.sofit-comp-viz .scv-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.sofit-comp-viz .scv-table-wrap{max-width:100%;overflow-x:auto;border:1px solid rgba(117,153,197,.17);border-radius:10px}.sofit-comp-viz table{width:100%;border-collapse:collapse;background:rgba(6,20,36,.34);font-size:10px}.sofit-comp-viz caption{padding:8px;text-align:left;color:#a8bad0;font-weight:800}.sofit-comp-viz th,.sofit-comp-viz td{padding:7px 8px;border-top:1px solid rgba(117,153,197,.12);text-align:left}.sofit-comp-viz th{color:#8ea3ba;font-weight:650}.sofit-comp-viz td{color:#e0e9f3;font-variant-numeric:tabular-nums}
.sofit-comp-viz .scv-footer{margin-top:12px;padding:11px 12px;border-radius:9px;background:rgba(62,107,165,.1);color:#8ca2ba;font-size:10px;line-height:1.5}.sofit-comp-viz .scv-footer b{color:#afc4db}

@media(max-width:1180px){.sofit-comp-viz .scv-kpis{grid-template-columns:repeat(3,1fr)}.sofit-comp-viz .scv-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sofit-comp-viz .scv-trend-panel{grid-column:1/-1}.sofit-comp-viz .scv-secondary-grid{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.sofit-comp-viz{border-radius:14px!important}.sofit-comp-viz .scv-head{display:block}.sofit-comp-viz .scv-head-actions{display:flex;align-items:flex-start;margin-top:10px;text-align:left}.sofit-comp-viz .scv-main-grid,.sofit-comp-viz .scv-secondary-grid{grid-template-columns:1fr}.sofit-comp-viz .scv-trend-panel{grid-column:auto}.sofit-comp-viz .scv-panel-head{display:block}.sofit-comp-viz .scv-metric-switch{justify-content:flex-start;margin-top:9px}.sofit-comp-viz .scv-method-grid{grid-template-columns:1fr}.sofit-comp-viz .scv-body-layout{grid-template-columns:minmax(190px,1.2fr) minmax(125px,.8fr)}}
@media(max-width:520px){.sofit-comp-viz{margin:0 0 12px;padding:12px!important}.sofit-comp-viz .scv-head{padding-bottom:13px}.sofit-comp-viz .scv-head h3{font-size:23px}.sofit-comp-viz .scv-head p{font-size:11px}.sofit-comp-viz .scv-kpis{grid-template-columns:1fr 1fr;gap:7px;margin:10px 0}.sofit-comp-viz .scv-kpi{padding:10px}.sofit-comp-viz .scv-kpi-label{min-height:25px;font-size:8.5px}.sofit-comp-viz .scv-kpi strong{font-size:21px}.sofit-comp-viz .scv-panel{padding:12px;border-radius:12px}.sofit-comp-viz .scv-body-layout{grid-template-columns:1fr}.sofit-comp-viz .scv-body-svg{max-height:300px}.sofit-comp-viz .scv-sites{grid-template-columns:1fr 1fr}.sofit-comp-viz .scv-trend-svg{min-height:170px}.sofit-comp-viz .scv-metric-btn{flex:1;min-width:calc(50% - 4px)}.sofit-comp-viz .scv-legend{grid-template-columns:1fr}.sofit-comp-viz .scv-ref-scale{font-size:7.5px}.sofit-comp-viz .scv-head-actions{white-space:normal}.sofit-comp-viz table{font-size:9.5px}}
@media(max-width:340px){.sofit-comp-viz .scv-kpis{grid-template-columns:1fr}.sofit-comp-viz .scv-sites{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.sofit-comp-viz *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* v56 — painel premium com anatomia central e classificação completa. */
.sofit-comp-viz.scv-premium{position:relative;background:radial-gradient(circle at 52% 28%,rgba(21,74,123,.25),transparent 34%),linear-gradient(145deg,#081626 0%,#0c1a2b 54%,#081522 100%);box-shadow:0 28px 80px rgba(0,5,15,.38)}
.sofit-comp-viz.scv-premium:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(78,143,222,.035),transparent);opacity:.8}
.sofit-comp-viz .scv-premium-grid{display:grid;grid-template-columns:minmax(250px,.78fr) minmax(330px,1.12fr) minmax(430px,1.42fr);gap:12px;align-items:stretch}
.sofit-comp-viz .scv-stack{display:grid;gap:12px;align-content:start;min-width:0}
.sofit-comp-viz .scv-stack>.scv-panel{height:auto}
.sofit-comp-viz .scv-stack-trend>.scv-panel{height:100%}

.sofit-comp-viz .scv-anatomy-panel{position:relative;overflow:hidden;padding-bottom:13px;background:radial-gradient(circle at 50% 37%,rgba(38,111,189,.23),rgba(9,25,43,.94) 61%),linear-gradient(160deg,rgba(22,46,73,.92),rgba(9,24,41,.97))}
.sofit-comp-viz .scv-anatomy-panel:before{content:"";position:absolute;inset:52px 14px 84px;border:1px solid rgba(84,145,214,.11);border-radius:18px;background-image:linear-gradient(rgba(91,151,218,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(91,151,218,.07) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 88%,transparent);pointer-events:none}
.sofit-comp-viz .scv-anatomy-view{position:relative;z-index:2;padding:5px 8px;border:1px solid rgba(103,164,234,.25);border-radius:999px;color:#8eb7e6;background:rgba(8,25,43,.62);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.sofit-comp-viz .scv-anatomy-stage{position:relative;display:grid;place-items:center;height:470px;margin:3px 0 0;isolation:isolate}
.sofit-comp-viz .scv-anatomy-stage:after{content:"";position:absolute;left:20%;right:20%;bottom:4%;height:8%;z-index:-1;border-radius:50%;background:rgba(16,124,225,.22);filter:blur(18px)}
.sofit-comp-viz .scv-anatomy-halo{position:absolute;inset:5% 10% 2%;z-index:-2;border-radius:48% 48% 42% 42%;background:radial-gradient(ellipse,rgba(25,119,220,.19),transparent 67%);box-shadow:inset 0 0 70px rgba(53,143,237,.08)}
.sofit-comp-viz .scv-anatomy-stage img{display:block;width:auto;height:100%;max-width:94%;object-fit:contain;filter:drop-shadow(0 18px 25px rgba(0,3,10,.5)) saturate(.96);user-select:none}
.sofit-comp-viz .scv-anatomy-axis{position:absolute;top:5%;bottom:3%;left:50%;z-index:-1;width:1px;background:linear-gradient(transparent,rgba(104,176,255,.2) 13%,rgba(104,176,255,.2) 87%,transparent)}
.sofit-comp-viz .scv-anatomy-marker{position:absolute;z-index:4;display:grid;place-items:center;width:25px;height:25px;padding:0;border:1px solid #ffe3c4;border-radius:50%;transform:translate(-50%,-50%);background:#f39a44;color:#081523;box-shadow:0 0 0 5px rgba(243,154,68,.16),0 0 16px rgba(243,154,68,.42);font:900 10px/1 system-ui,sans-serif;cursor:default}
.sofit-comp-viz .scv-anatomy-marker:focus-visible{outline:3px solid #fff;outline-offset:3px}
.sofit-comp-viz .scv-anatomy-sites{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0;padding:0;list-style:none}
.sofit-comp-viz .scv-anatomy-sites li{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px 8px;border:1px solid rgba(110,162,221,.14);border-radius:8px;background:rgba(4,18,32,.55);color:#9db1c8;font-size:9.5px}
.sofit-comp-viz .scv-anatomy-sites li span{display:flex;align-items:center;gap:6px;min-width:0}
.sofit-comp-viz .scv-anatomy-sites li i{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#f39a44;color:#102034;font-style:normal;font-size:8px;font-weight:900;flex:none}
.sofit-comp-viz .scv-anatomy-sites li b{color:#edf5ff;font-variant-numeric:tabular-nums;white-space:nowrap}

.sofit-comp-viz .scv-classification-panel{margin-top:12px;padding:18px;background:linear-gradient(145deg,rgba(20,42,66,.96),rgba(10,26,44,.97))}
.sofit-comp-viz .scv-classification-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.sofit-comp-viz .scv-classification-head h4{margin:4px 0 0;font-size:18px}
.sofit-comp-viz .scv-classification-current{display:grid;gap:3px;min-width:300px;padding:10px 13px;border:1px solid rgba(89,151,224,.2);border-radius:11px;background:rgba(8,25,43,.54);text-align:right}
.sofit-comp-viz .scv-classification-current span{color:#8ca4be;font-size:9px;text-transform:uppercase;letter-spacing:.07em}
.sofit-comp-viz .scv-classification-current strong{color:#f2f7fd;font-size:15px}
.sofit-comp-viz .scv-classification-current small{color:#75a8ea;font-size:10px;font-variant-numeric:tabular-nums}
.sofit-comp-viz .scv-class-track{position:relative;margin:38px 3px 22px}
.sofit-comp-viz .scv-class-track>div{display:flex;height:17px;overflow:hidden;border-radius:999px;box-shadow:inset 0 1px 5px rgba(0,0,0,.35)}
.sofit-comp-viz .scv-class-track i{position:relative;display:block;height:100%;border-right:1px solid rgba(3,15,28,.55)}
.sofit-comp-viz .scv-class-track i span{position:absolute;top:23px;left:50%;transform:translateX(-50%);color:#768da6;font-style:normal;font-size:8px;white-space:nowrap}
.sofit-comp-viz .scv-class-track .essential{background:#4576ae}.sofit-comp-viz .scv-class-track .athlete{background:#2f8dcc}.sofit-comp-viz .scv-class-track .fitness{background:#1eb8c1}.sofit-comp-viz .scv-class-track .acceptable{background:#35bf92}.sofit-comp-viz .scv-class-track .preobesity{background:#d9a548}.sofit-comp-viz .scv-class-track .obesity{background:#dc774f}
.sofit-comp-viz .scv-class-track>b{position:absolute;top:-12px;width:3px;height:41px;border-radius:4px;background:#fff;transform:translateX(-50%);box-shadow:0 0 13px rgba(255,255,255,.62)}
.sofit-comp-viz .scv-class-track>b span{position:absolute;bottom:45px;left:50%;transform:translateX(-50%);padding:4px 7px;border:1px solid rgba(255,255,255,.25);border-radius:7px;background:#142a45;color:#fff;font-size:10px;white-space:nowrap}
.sofit-comp-viz .scv-class-ref{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:48px 0 11px;padding:11px 12px;border-left:3px solid #45b99b;border-radius:8px;background:rgba(18,52,70,.6);font-size:10.5px}
.sofit-comp-viz .scv-class-ref span{color:#91a7be;font-weight:750}.sofit-comp-viz .scv-class-ref b{color:#e7f1fb}.sofit-comp-viz .scv-class-ref small{padding:4px 7px;border-radius:999px;background:rgba(69,185,155,.12);color:#7bd8bb;font-weight:800}
.sofit-comp-viz .scv-class-table-wrap{overflow-x:auto;border:1px solid rgba(113,159,211,.18);border-radius:11px}
.sofit-comp-viz .scv-class-table{min-width:700px;font-size:10.5px}
.sofit-comp-viz .scv-class-table caption{padding:10px 11px;color:#b9cde2;background:rgba(9,26,44,.67)}
.sofit-comp-viz .scv-class-table thead th{color:#7895b5;background:rgba(17,39,62,.88);font-size:9px;text-transform:uppercase;letter-spacing:.055em}
.sofit-comp-viz .scv-class-table tbody tr.active{background:linear-gradient(90deg,rgba(53,191,146,.16),rgba(53,191,146,.04))}
.sofit-comp-viz .scv-class-table tbody tr.active th{color:#dff9ef}.sofit-comp-viz .scv-class-table tbody tr.active td:last-child{color:#7ce0bd;font-weight:850}
.sofit-comp-viz .scv-class-warning{margin:11px 0 0;padding:10px 12px;border:1px solid rgba(221,166,73,.18);border-radius:9px;background:rgba(119,76,15,.13);color:#9aabc0;font-size:10px;line-height:1.55}.sofit-comp-viz .scv-class-warning b{color:#e9c27e}
.sofit-comp-viz .scv-detail-grid{display:grid;grid-template-columns:1fr;margin-top:12px}
.sofit-comp-viz .scv-detail-grid:empty{display:none}

@media(max-width:1250px){.sofit-comp-viz .scv-premium-grid{grid-template-columns:minmax(240px,.82fr) minmax(320px,1fr)}.sofit-comp-viz .scv-stack-trend{grid-column:1/-1}.sofit-comp-viz .scv-stack-trend .scv-trend-panel{height:auto}}
@media(max-width:780px){.sofit-comp-viz .scv-premium-grid{grid-template-columns:1fr}.sofit-comp-viz .scv-anatomy-panel{grid-row:1}.sofit-comp-viz .scv-stack{grid-row:auto}.sofit-comp-viz .scv-stack-trend{grid-column:auto}.sofit-comp-viz .scv-classification-head{display:grid}.sofit-comp-viz .scv-classification-current{min-width:0;text-align:left}.sofit-comp-viz .scv-class-ref{grid-template-columns:1fr}.sofit-comp-viz .scv-class-track i span{display:none}}
@media(max-width:520px){.sofit-comp-viz .scv-anatomy-stage{height:420px}.sofit-comp-viz .scv-anatomy-sites{grid-template-columns:1fr}.sofit-comp-viz .scv-classification-panel{padding:12px}.sofit-comp-viz .scv-class-table-wrap{margin-inline:0;overflow:visible;border:0}.sofit-comp-viz .scv-class-table{min-width:0;background:transparent}.sofit-comp-viz .scv-class-table thead{display:none}.sofit-comp-viz .scv-class-table caption{display:block;border:1px solid rgba(113,159,211,.18);border-radius:9px}.sofit-comp-viz .scv-class-table tbody{display:grid;gap:7px;margin-top:8px}.sofit-comp-viz .scv-class-table tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(113,159,211,.18);border-radius:9px;overflow:hidden;background:rgba(7,23,39,.58)}.sofit-comp-viz .scv-class-table th{grid-column:1/-1;color:#c4d5e6!important;background:rgba(20,43,68,.78)}.sofit-comp-viz .scv-class-table th,.sofit-comp-viz .scv-class-table td{display:flex;justify-content:space-between;gap:6px;padding:8px;border-top:1px solid rgba(117,153,197,.1)}.sofit-comp-viz .scv-class-table td:nth-child(2):before{content:"Mulheres"}.sofit-comp-viz .scv-class-table td:nth-child(3):before{content:"Homens"}.sofit-comp-viz .scv-class-table td:nth-child(4){grid-column:1/-1}.sofit-comp-viz .scv-class-table td:nth-child(4):before{content:"Nesta avaliação"}.sofit-comp-viz .scv-class-table td:before{color:#718aa5;font-size:8px;font-weight:800;text-transform:uppercase}.sofit-comp-viz .scv-class-track{margin-top:40px}.sofit-comp-viz .scv-class-ref{margin-top:28px}.sofit-comp-viz .scv-anatomy-marker{width:22px;height:22px}.sofit-comp-viz .scv-class-warning{font-size:9.5px}}

/* v58 — fluxo de medição, anatomia frontal/posterior e guia lateral textual. */
#compProtocolCard{scroll-margin-top:78px}
.sofit-comp-viz{overflow:visible}
.sofit-comp-viz .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}
.sofit-comp-viz .scv-panel-head>*{min-width:0}
.sofit-comp-viz .scv-premium-grid,.sofit-comp-viz .scv-stack,.sofit-comp-viz .scv-trend-panel{min-width:0}
.sofit-comp-viz .scv-premium-grid{grid-template-columns:minmax(0,.78fr) minmax(0,1.12fr) minmax(0,1.42fr)}
.sofit-comp-viz .scv-metric-switch{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:100%;min-width:0;gap:6px}
.sofit-comp-viz .scv-metric-btn{min-width:0;inline-size:100%;white-space:normal;overflow-wrap:anywhere}

.sofit-comp-viz .scv-anatomy-panel{overflow:visible;padding-bottom:14px}
.sofit-comp-viz .scv-anatomy-tabs{position:relative;z-index:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:12px 0 8px;max-width:100%}
.sofit-comp-viz .scv-anatomy-tab{display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;padding:7px 8px;border:1px solid rgba(103,164,234,.22);border-radius:9px;background:rgba(8,25,43,.62);color:#9ab4cf;font:750 9px/1.2 system-ui,sans-serif;text-align:left;cursor:pointer}
.sofit-comp-viz .scv-anatomy-tab span{overflow-wrap:anywhere}.sofit-comp-viz .scv-anatomy-tab b{display:grid;place-items:center;flex:none;min-width:17px;height:17px;border-radius:50%;background:rgba(99,160,228,.14);color:#b9d6f6;font-size:8px}
.sofit-comp-viz .scv-anatomy-tab.active{border-color:#5aa4f6;background:rgba(45,126,238,.2);color:#e2efff;box-shadow:inset 0 0 0 1px rgba(85,163,247,.15)}
.sofit-comp-viz .scv-anatomy-tab:focus-visible{outline:2px solid #7db7ff;outline-offset:2px}
.sofit-comp-viz .scv-anatomy-figure-wrap{position:relative;z-index:2;display:grid;place-items:center;margin:2px 0 10px;min-width:0}
.sofit-comp-viz .scv-anatomy-figure{position:relative;display:grid;place-items:center;width:min(100%,285px);max-width:100%;min-width:0;isolation:isolate}
.sofit-comp-viz .scv-anatomy-figure:after{content:"";position:absolute;left:18%;right:18%;bottom:2%;height:7%;z-index:-1;border-radius:50%;background:rgba(16,124,225,.21);filter:blur(16px)}
.sofit-comp-viz .scv-anatomy-figure img,.sofit-comp-viz .scv-anatomy-figure>svg{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 16px 23px rgba(0,3,10,.46)) saturate(.96);user-select:none}
.sofit-comp-viz .scv-anatomy-figure .scv-anatomy-halo{inset:4% 8% 2%;z-index:-2}
.sofit-comp-viz .scv-anatomy-figure .scv-anatomy-axis{top:4%;bottom:2%;z-index:0}
.sofit-comp-viz .scv-anatomy-figure .scv-anatomy-marker{z-index:4;pointer-events:none}
.sofit-comp-viz .scv-anatomy-marker.is-pending{border-color:#6e99c8;background:#214160;color:#d3e8fb;box-shadow:0 0 0 5px rgba(77,132,189,.13),0 0 13px rgba(77,132,189,.22)}
.sofit-comp-viz .scv-anatomy-sites{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
.sofit-comp-viz .scv-anatomy-sites li{align-items:center;min-width:0}
.sofit-comp-viz .scv-anatomy-sites li span{display:grid;grid-template-columns:17px minmax(0,1fr);column-gap:6px;row-gap:2px;min-width:0}
.sofit-comp-viz .scv-anatomy-sites li i{grid-row:1 / span 2}.sofit-comp-viz .scv-anatomy-sites li strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dceafa;font-size:9.5px}.sofit-comp-viz .scv-anatomy-sites li small{grid-column:2;color:#7792ae;font-size:8px;line-height:1.25}
.sofit-comp-viz .scv-anatomy-sites li b.pending{color:#9eb5cd;font-size:8.5px;font-style:normal}
.sofit-comp-viz .scv-lateral-text-guide{position:relative;z-index:2;display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin:10px 0 0;padding:13px;border:1px solid rgba(110,162,221,.22);border-radius:11px;background:linear-gradient(145deg,rgba(15,39,64,.88),rgba(7,23,39,.9));color:#91a7be}
.sofit-comp-viz .scv-lateral-guide-head{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;min-width:0}.sofit-comp-viz .scv-lateral-guide-head>div{min-width:0}
.sofit-comp-viz .scv-lateral-guide-kicker{display:block;color:#8eb7e6;font-size:8.5px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.sofit-comp-viz .scv-lateral-guide-head h5{margin:3px 0 0;color:#edf5ff;font-size:12px;line-height:1.25;overflow-wrap:anywhere}
.sofit-comp-viz .scv-lateral-guide-badge{flex:none;padding:5px 7px;border:1px solid rgba(103,164,234,.28);border-radius:999px;color:#b4d1ef;background:rgba(8,25,43,.62);font-size:8px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.sofit-comp-viz .scv-lateral-guide-intro,.sofit-comp-viz .scv-lateral-guide-note{display:block;margin:8px 0 0;color:#91a7be;font-size:9px;line-height:1.45}
.sofit-comp-viz .scv-lateral-site-list{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}.sofit-comp-viz .scv-lateral-site-list>li{display:grid;grid-template-columns:20px minmax(0,1fr) max-content;align-items:center;gap:7px;min-width:0;padding:8px;border:1px solid rgba(110,162,221,.13);border-radius:8px;background:rgba(4,18,32,.45)}
.sofit-comp-viz .scv-lateral-site-list i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#f39a44;color:#102034;font-style:normal;font-size:9px;font-weight:900}.sofit-comp-viz .scv-lateral-site-list span{display:block;min-width:0}.sofit-comp-viz .scv-lateral-site-list b{display:block;color:#eaf3fe;font-size:10px}.sofit-comp-viz .scv-lateral-site-list small{display:block;margin-top:2px;color:#8fa5bc;font-size:8.5px;line-height:1.35;overflow-wrap:anywhere}.sofit-comp-viz .scv-lateral-site-list strong{color:#edf5ff;font-size:9.5px;white-space:nowrap}.sofit-comp-viz .scv-lateral-site-list strong.pending{color:#9eb5cd}

@media(max-width:900px){.sofit-comp-viz .scv-panel-head{display:block}.sofit-comp-viz .scv-metric-switch{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}}
@media(max-width:620px){.sofit-comp-viz .scv-anatomy-figure{width:min(100%,250px)}.sofit-comp-viz .scv-anatomy-sites{grid-template-columns:1fr}.sofit-comp-viz .scv-metric-switch{grid-template-columns:repeat(2,minmax(0,1fr))}.sofit-comp-viz .scv-lateral-guide-head{display:block}.sofit-comp-viz .scv-lateral-guide-badge{display:inline-block;margin-top:7px}.sofit-comp-viz .scv-lateral-site-list>li{grid-template-columns:20px minmax(0,1fr)}.sofit-comp-viz .scv-lateral-site-list strong{grid-column:2;justify-self:start}}

/* v60 — dashboard integral com vistas anterior e posterior simultâneas. */
#sofitCompVizHost{position:relative;left:50%;width:calc(100vw - 24px);max-width:1600px;min-width:0;transform:translateX(-50%)}
.sofit-comp-viz.scv-premium{width:100%;max-width:none;box-sizing:border-box}
.sofit-comp-viz .scv-dashboard-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(220px,.78fr) minmax(440px,1.5fr) minmax(320px,1.08fr);gap:14px;align-items:start;min-width:0}
.sofit-comp-viz .scv-dashboard-col{display:grid;gap:14px;align-content:start;min-width:0}
.sofit-comp-viz .scv-dashboard-col>.scv-panel{margin:0;min-width:0}
.sofit-comp-viz .scv-anatomy-dual-panel{position:relative;z-index:2;min-width:0;overflow:visible;margin:0;padding:16px}
.sofit-comp-viz .scv-anatomy-dual-panel:before{inset:60px 14px 190px}
.sofit-comp-viz .scv-anatomy-dual-figures{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end;min-width:0;margin-top:10px}
.sofit-comp-viz .scv-anatomy-view-card{display:grid;grid-template-rows:auto 1fr auto;align-items:end;min-width:0;margin:0;padding:7px;border:1px solid rgba(110,162,221,.15);border-radius:11px;background:rgba(5,21,37,.36)}
.sofit-comp-viz .scv-anatomy-view-card figcaption{grid-row:1;padding:2px 2px 7px;color:#9fb8d2;font-size:9px;font-weight:800;letter-spacing:.06em;text-align:center;text-transform:uppercase}
.sofit-comp-viz .scv-anatomy-view-frame{position:relative;grid-row:2;display:grid;place-items:center;height:auto;width:min(100%,270px);max-width:100%;min-width:0;margin:0 auto;isolation:isolate}
.sofit-comp-viz .scv-anatomy-view-frame:after{content:"";position:absolute;left:18%;right:18%;bottom:2%;height:7%;z-index:-1;border-radius:50%;background:rgba(16,124,225,.21);filter:blur(16px)}
.sofit-comp-viz .scv-anatomy-view-frame img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 16px 23px rgba(0,3,10,.46)) saturate(.96);user-select:none}
.sofit-comp-viz .scv-anatomy-view-frame .scv-anatomy-halo{inset:4% 8% 2%;z-index:-2}
.sofit-comp-viz .scv-anatomy-view-frame .scv-anatomy-axis{top:4%;bottom:2%;z-index:0}
.sofit-comp-viz .scv-anatomy-view-frame .scv-anatomy-marker{z-index:4;pointer-events:none}
.sofit-comp-viz .scv-anatomy-view-empty{grid-row:3;min-height:30px;margin:7px 0 0;padding:6px;border-radius:7px;background:rgba(24,47,72,.46);color:#8299b1;font-size:8.5px;line-height:1.35;text-align:center}
.sofit-comp-viz .scv-marker-key{position:relative;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:9px 0 0;color:#91a7be;font-size:8.5px}
.sofit-comp-viz .scv-marker-key span{display:flex;align-items:center;gap:5px}.sofit-comp-viz .scv-marker-key i{display:block;width:10px;height:10px;border:1px solid #ffe3c4;border-radius:50%;background:#f39a44}.sofit-comp-viz .scv-marker-key i.is-pending{border-color:#6e99c8;background:#214160}
.sofit-comp-viz .scv-anatomy-site-legend{position:relative;z-index:2;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}
.sofit-comp-viz .scv-anatomy-site-legend li{min-width:0}
.sofit-comp-viz .scv-anatomy-site-legend li strong{white-space:normal;overflow:visible;text-overflow:clip}

@media(max-width:1240px){
  .sofit-comp-viz .scv-dashboard-grid{grid-template-columns:minmax(220px,.78fr) minmax(430px,1.42fr)}
  .sofit-comp-viz .scv-dashboard-right{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  #sofitCompVizHost{width:calc(100vw - 16px)}
  .sofit-comp-viz .scv-dashboard-grid{grid-template-columns:1fr}
  .sofit-comp-viz .scv-anatomy-dual-panel{grid-row:1}
  .sofit-comp-viz .scv-dashboard-right{grid-column:auto;grid-template-columns:1fr}
}
@media(max-width:520px){
  .sofit-comp-viz .scv-anatomy-dual-panel{padding:11px}
  .sofit-comp-viz .scv-anatomy-dual-figures{gap:6px}
  .sofit-comp-viz .scv-anatomy-view-card{padding:4px;border-radius:9px}
  .sofit-comp-viz .scv-anatomy-view-card figcaption{font-size:8px}
  .sofit-comp-viz .scv-anatomy-dual-panel .scv-anatomy-marker{width:18px;height:18px;font-size:8px;box-shadow:0 0 0 3px rgba(243,154,68,.14)}
  .sofit-comp-viz .scv-anatomy-site-legend{grid-template-columns:1fr}
}
@media(max-width:360px){
  .sofit-comp-viz .scv-anatomy-view-card{padding:3px}
}
