.composition-history{margin:30px 0}.composition-history>.toolbar h2{font:700 18px Manrope,sans-serif;margin:0}.composition-group{margin-bottom:22px}.composition-callout{padding:18px;background:#f3f6f0;border:1px solid var(--line);border-radius:10px;margin:8px 0 18px}.composition-callout>p{font-size:12px;line-height:1.8}.composition-values{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:18px}.composition-values small{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.composition-values b{font-size:15px}.classification-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.classification-grid small{display:block;margin-bottom:7px;color:var(--muted)}.classification-grid p{font-size:10px!important;line-height:1.6!important;margin:6px 0 0}.badge.neutral{background:#e9eae6;color:#59615b}.badge.classification-0{background:#e4edf5;color:#45657e}.badge.classification-1{background:#e2eddf;color:#356844}.badge.classification-2{background:#fbeed7;color:#896121}.badge.classification-3{background:#f5e0dc;color:#963f35}.skinfold-input{border:1px solid var(--line);padding:10px 12px;border-radius:9px;margin-bottom:14px}.skinfold-input .field{margin-bottom:5px}.skinfold-input>small{font-size:10px;color:var(--muted)}.skinfold-input.fold-required{border-color:#97b39c;background:#f5f8f2}.skinfold-input.fold-required>small{color:var(--green);font-weight:600}.composition-charts{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px}.composition-chart{border:1px solid var(--line);border-radius:10px;padding:15px 14px;background:white;break-inside:avoid}.composition-chart-heading{display:flex;align-items:start;justify-content:space-between;gap:8px}.composition-chart h4{font-size:12px;margin:0;line-height:1.6}.composition-chart h4 small{font-weight:400;color:var(--muted)}.composition-chart-heading>strong{font-size:17px;white-space:nowrap}.composition-chart-heading>strong small{font-size:10px;font-weight:400}.composition-chart svg{display:block;width:100%;height:auto;max-height:200px;margin:8px 0 0;overflow:visible}.composition-chart svg text{font:9px Arial,sans-serif;fill:#65736b}.chart-axis{stroke:#d7ddd6;stroke-width:1}.chart-line{fill:none;stroke:var(--green);stroke-width:2.5;stroke-linejoin:round}.composition-chart circle{fill:var(--coral);stroke:#fff;stroke-width:1.5}.composition-chart circle:hover,.composition-chart circle:focus{r:6;stroke:var(--green);outline:0}.composition-chart .chart-delta{font-size:10px;color:var(--muted);margin:0;line-height:1.7}.composition-data{padding:0 20px 20px;font-size:12px}.composition-data summary{cursor:pointer;color:var(--green);font-weight:600;padding:6px 0 12px}.composition-source{font-size:9px!important;line-height:1.7!important;color:var(--muted);margin-top:18px}.composition-report-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.composition-report-tabs .btn{font-size:11px;padding:10px 12px}.composition-report .table-wrap{margin:10px 0}.composition-report th,.composition-report td{padding:9px 12px;font-size:11px}.composition-report .report-notes{white-space:pre-wrap}.report-graphs{margin-top:25px}.report-graphs .composition-charts{padding:0}.report-graphs h3{margin:0 0 10px}
@media(max-width:600px){.composition-charts{grid-template-columns:1fr;padding:12px;gap:12px}.composition-values{grid-template-columns:1fr 1fr}.classification-grid{grid-template-columns:1fr}.composition-callout{padding:13px}.composition-source{overflow-wrap:anywhere}.composition-chart-heading>strong{font-size:16px}.composition-report-tabs .btn{flex:1;white-space:normal}}
@media print{.printing-assessment .composition-report-tabs,.printing-assessment .composition-data{display:none!important}.printing-assessment .report-graphs{break-before:page;margin:0}.printing-assessment .composition-charts{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px;padding:0}.printing-assessment .composition-chart{padding:10px}.printing-assessment .composition-chart svg{max-height:135px}.printing-assessment .composition-chart-heading>strong{font-size:14px}.printing-assessment .composition-report td,.printing-assessment .composition-report th{font-size:9px;padding:6px 8px}.printing-assessment .composition-source{font-size:8px!important}.printing-assessment #assessment-report .composition-report h3{margin-top:16px}.printing-assessment .composition-report .report-brand{padding-bottom:12px}.printing-assessment .composition-report h2{font-size:20px}.printing-assessment .composition-report .notice{font-size:10px;padding:10px}}
