/* BMI calculator - unit toggle, height/weight inputs, BMI value + WHO category band.
   Reuses base .field / .seg; colors come from theme tokens only. */

.bmi-units { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.bmi-units-label { font-size: 14px; color: var(--muted); font-weight: 600; }

.bmi-inputs {
    display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px;
}
@media (max-width: 520px) { .bmi-inputs { grid-template-columns: 1fr; } }

.bmi-field { display: flex; flex-direction: column; gap: 6px; border: 0; padding: 0; min-width: 0; }
.bmi-field-label { font-size: 14px; color: var(--muted); font-weight: 600; }
.bmi-field-split { flex-direction: row; flex-wrap: wrap; gap: 10px; align-items: end; }
.bmi-field-split .bmi-field-label { flex-basis: 100%; }

.bmi-input-unit { display: flex; align-items: center; gap: 8px; min-width: 0; }
.bmi-input-unit .field { width: 100%; min-width: 0; font-variant-numeric: tabular-nums; }
.bmi-field-split .bmi-input-unit { flex: 1; }
.bmi-unit { font-size: 14px; color: var(--muted); white-space: nowrap; }

/* Result card. */
.bmi-result {
    display: flex; flex-wrap: wrap; align-items: center; gap: 16px;
    background: var(--surface); border: 1px solid var(--border);
    border-radius: 14px; padding: 18px 20px; margin-bottom: 20px;
}
.bmi-value-block { display: flex; flex-direction: column; }
.bmi-value-label { font-size: 13px; color: var(--muted); font-weight: 600; }
.bmi-value { font-size: 34px; font-weight: 800; line-height: 1.1; font-variant-numeric: tabular-nums; }

.bmi-cat {
    flex: 1; font-size: 18px; font-weight: 700;
    padding: 6px 14px; border-radius: 999px; text-align: center;
}
.bmi-cat[data-band="under"] { color: var(--accent-strong); background: var(--accent-weak); }
.bmi-cat[data-band="normal"] { color: var(--good); background: color-mix(in srgb, var(--good) 14%, transparent); }
.bmi-cat[data-band="over"] { color: var(--bad); background: color-mix(in srgb, var(--bad) 12%, transparent); }
.bmi-cat[data-band="obese"] { color: var(--bad); background: color-mix(in srgb, var(--bad) 18%, transparent); }

/* Reference scale. */
.bmi-scale { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; text-align: center; }
.bmi-scale-seg {
    font-size: 12px; color: var(--muted); padding: 8px 4px; border-radius: 8px;
    background: var(--surface); border: 1px solid var(--border); line-height: 1.3;
}
/* Color each segment by its band so the scale reads as a legend for the result chip above. */
.bmi-scale-seg[data-band="under"] { color: var(--accent-strong); background: var(--accent-weak); border-color: color-mix(in srgb, var(--accent) 30%, var(--border)); }
.bmi-scale-seg[data-band="normal"] { color: var(--good); background: color-mix(in srgb, var(--good) 12%, transparent); border-color: color-mix(in srgb, var(--good) 30%, var(--border)); }
.bmi-scale-seg[data-band="over"] { color: var(--bad); background: color-mix(in srgb, var(--bad) 10%, transparent); border-color: color-mix(in srgb, var(--bad) 28%, var(--border)); }
.bmi-scale-seg[data-band="obese"] { color: var(--bad); background: color-mix(in srgb, var(--bad) 16%, transparent); border-color: color-mix(in srgb, var(--bad) 36%, var(--border)); }
