.nutrition-statusbar { display:flex; align-items:center; gap:32px; padding:18px 22px; }
.nutrition-statusbar strong { display:block; margin-top:6px; font-size:18px; }
.nutrition-statusbar button { margin-left:auto; }
.nutrition-tabs { display:flex; gap:8px; margin:24px 0 18px; }
.nutrition-tabs button { flex:1; padding:12px; }
.nutrition-tabs button[aria-selected=true] { background:#e6f1e9; border-color:#79a58b; color:#174f39; font-weight:650; }
.nutrition-fieldset { margin:0; padding:0; border:0; min-width:0; }
.nutrition-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.nutrition-panel { padding:22px; margin-bottom:20px; min-width:0; }
.nutrition-panel h2 { font-size:19px; }
.nutrition-panel .hint { line-height:1.65; }
.nutrition-panel-heading { display:flex; gap:12px; justify-content:space-between; align-items:center; }
.nutrition-panel label { display:grid; gap:7px; margin:16px 0 8px; font-size:13px; color:#42574b; }
.nutrition-panel textarea { width:100%; font-family:ui-monospace,Consolas,monospace; line-height:1.6; }
.nutrition-table { margin-top:18px; }
.nutrition-table td,.nutrition-table th { padding:10px 8px; }
.nutrition-table td:first-child { min-width:40px; }
.nutrition-table input { width:100%; min-width:65px; padding:8px; }
.nutrition-table input:invalid { border-color:#ac4934; }
.nutrition-age-table button { padding:7px; white-space:nowrap; color:#8e3b2b; }
.nutrition-summary { display:grid; gap:8px; padding:14px; margin-top:16px; border-radius:8px; background:#f1f6f2; font-size:13px; line-height:1.6; }
.nutrition-summary [data-invalid] { color:#943925; }
.nutrition-empty { padding:22px 0; color:var(--muted); font-size:14px; line-height:1.6; }
.nutrition-mapping summary,.nutrition-sample-muscles summary { cursor:pointer; font-weight:600; line-height:1.6; }
.nutrition-mapping summary .hint,.nutrition-sample-muscles summary .hint { margin-left:8px; font-weight:400; }
.nutrition-mapping-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 14px; }
.nutrition-mapping-grid input,.nutrition-mapping-grid select { width:100%; min-width:0; }
.nutrition-variables { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); font-size:13px; line-height:1.65; margin:16px 0; }
.nutrition-variables dt { padding:8px 8px 8px 0; font-family:ui-monospace,Consolas,monospace; overflow-wrap:anywhere; border-bottom:1px solid var(--line); color:var(--green); }
.nutrition-variables dd { margin:0; padding:8px 0; border-bottom:1px solid var(--line); }
.nutrition-parameter { display:grid; grid-template-columns:1fr 1fr 1fr .65fr auto; gap:10px; align-items:end; border-bottom:1px solid var(--line); padding:0 0 12px; }
.nutrition-parameter label { min-width:0; margin-bottom:0; }
.nutrition-parameter input { width:100%; min-width:0; }
.nutrition-parameter button { color:#8e3b2b; }
.nutrition-sample-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px; }
.nutrition-sample-grid input,.nutrition-sample-grid select { width:100%; min-width:0; }
.nutrition-sample-muscles { margin:18px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:14px 0; }
.nutrition-output { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:18px 0; }
.nutrition-output div { padding:12px; background:#f1f6f2; border-radius:8px; }
.nutrition-output span { display:block; color:var(--muted); font-size:12px; }
.nutrition-output strong { display:block; font-size:22px; padding:6px 0; overflow-wrap:anywhere; }
.nutrition-output div:last-child { background:#194a35; color:#fff; }
.nutrition-output div:last-child span { color:#d2e7d9; }
.nutrition-output-detail { font-size:13px; line-height:1.8; padding-left:20px; color:#42574b; }
.nutrition-version-controls { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:18px; }
.nutrition-version-controls label { margin:0; }
.nutrition-version-controls select { min-width:0; max-width:100%; flex:1; }
.nutrition-savebar { position:sticky; bottom:0; background:#f5f7f5f5; backdrop-filter:blur(8px); border-top:1px solid var(--line); padding:16px 0; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.nutrition-savebar p { font-size:13px; line-height:1.6; color:var(--muted); }
#nutrition-error,#nutrition-feedback { padding:12px 14px; margin-top:14px; border-radius:8px; line-height:1.6; font-size:14px; }
#nutrition-error { color:#843426; background:#fff1eb; }
#nutrition-feedback { color:#245941; background:#e6f5eb; }
#history-rows small { overflow-wrap:anywhere; max-width:600px; }
@media(max-width:1150px) { .nutrition-grid { grid-template-columns:minmax(0,1fr); gap:0; } }
@media(max-width:750px) { .nutrition-parameter { grid-template-columns:repeat(2,minmax(0,1fr)); } .nutrition-parameter button { justify-self:start; } }
@media(max-width:560px) {
  .nutrition-panel { padding:16px; }
  .nutrition-tabs { gap:4px; }
  .nutrition-tabs button { font-size:12px; padding:10px 5px; }
  .nutrition-statusbar { gap:16px; flex-wrap:wrap; padding:16px; }
  .nutrition-statusbar strong { font-size:15px; }
  .nutrition-statusbar button { margin-left:0; }
  .nutrition-mapping-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .nutrition-table { display:table; }
  .nutrition-table thead { position:static; clip-path:none; display:table-header-group; width:auto; height:auto; }
  .nutrition-table tbody { display:table-row-group; padding:0; }
  .nutrition-table tr { display:table-row; }
  .nutrition-table td,.nutrition-table th { display:table-cell; padding:9px 4px; border-bottom:1px solid var(--line); font-size:12px; }
  .nutrition-table input { min-width:0; padding:8px 5px; }
  .nutrition-age-table input { width:65px; max-width:100%; }
  .nutrition-panel-heading { flex-wrap:wrap; }
  .nutrition-output { gap:6px; }
  .nutrition-output div { padding:9px; }
  .nutrition-output strong { font-size:19px; }
}
