/* Vitala 1.4 — Nutrition-first dashboard and configurable meals */
.nd-dashboard{max-width:1060px;margin:auto;color:#18191b}
.nd-dashboard .top{margin-bottom:19px}
.nd-eyebrow{font-size:10px;font-weight:850;letter-spacing:.15em;text-transform:uppercase;color:#af1224}
.nd-section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:17px}
.nd-section-head h2{font-size:20px;line-height:1.2;letter-spacing:-.5px;margin:4px 0 0}
.nd-date,.nd-small-label{font-size:11px;color:#63666c}
.nd-energy{padding:24px;margin-bottom:16px;border-radius:22px;background:#fff}
.nd-energy-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}
.nd-energy-main{background:#111;color:#fff;border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:6px;justify-content:center}
.nd-energy-main small{font-size:12px;color:#d0d0d3}.nd-energy-main strong{font-size:clamp(40px,5vw,56px);line-height:1.15;letter-spacing:-2px;font-variant-numeric:tabular-nums}
.nd-energy-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nd-energy-side>div{background:#f7f7f8;border:1px solid #eeeef0;border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:12px}
.nd-energy-side span{color:#62656b;font-size:12px}.nd-energy-side strong{font-size:20px;font-variant-numeric:tabular-nums;white-space:nowrap}.nd-energy-side small{font-size:10px;font-weight:500;color:#69696f}
.nd-meter{height:7px;overflow:hidden;background:#ededee;border-radius:12px;margin-top:11px}
.nd-meter>span{display:block;height:100%;background:#be1628;border-radius:12px}
.nd-data-note{font-size:11px;line-height:1.6;color:#696b72;margin:12px 0 0}
.nd-nutrients-grid{display:grid;grid-template-columns:1fr 1.18fr;gap:15px;margin-bottom:23px}
.nd-nutrient-panel{padding:21px;border-radius:20px}
.nd-macro{padding:8px 0 12px}.nd-macro-top,.nd-micro-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.nd-macro-top strong,.nd-micro-top strong{font-size:13px}.nd-macro-top>span,.nd-micro-top>span{font-size:12px;white-space:nowrap;color:#494b51}
.nd-macro>small{display:block;margin-top:7px;font-size:11px;color:#676971}.nd-incomplete{color:#a03e1b!important}
.nd-micros{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.nd-micro{padding:13px;border:1px solid #eeeef0;border-radius:13px;background:#f8f8f9;min-width:0}
.nd-micro-top{flex-wrap:wrap}.nd-micro-top span{font-size:11px}
.nd-micro>small{display:block;margin-top:9px;line-height:1.45;font-size:10px;color:#62646d}
.nd-customize{background:#fff;border:1px solid #d9d9de;border-radius:11px;padding:10px 12px;font-size:12px;font-weight:750;color:#242429;text-align:center}
.nd-meal-list{display:grid;gap:13px}.nd-meal-card{padding:0!important;border-radius:19px;overflow:hidden}
.nd-meal-heading{display:flex;align-items:center;gap:13px;padding:15px 17px}
.nd-meal-symbol{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:13px;background:#faf0f2;color:#a20d21;font-size:22px}
.nd-meal-name{flex:1;min-width:0}.nd-meal-name h3{font-size:16px;margin:0 0 5px}.nd-meal-name small{font-size:11px;color:#73757a}
.nd-add-meal{border:1px solid #161617;background:#161617;color:#fff;border-radius:12px;padding:10px 14px;font-weight:750;font-size:12px;white-space:nowrap;min-height:44px;display:flex;align-items:center;gap:5px}
.nd-add-meal span{font-size:19px}
.nd-meal-entries{border-top:1px solid #f0f0f1;padding:0 17px}
.nd-food-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #f1f1f2}.nd-food-row:last-child{border-bottom:0}
.nd-food-icon{width:35px;height:35px;display:grid;place-items:center;background:#f7f7f8;border-radius:10px;flex:none;font-size:18px}
.nd-food-description{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.nd-food-description strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nd-food-description small{font-size:10px;color:#75767d}
.nd-food-cal{white-space:nowrap;font-size:13px}.nd-food-cal small{font-size:10px;color:#686a70}
.nd-delete{flex:none;border:0;background:transparent;font-size:20px;color:#777b80;width:34px;height:34px;border-radius:9px}
.nd-meal-empty{padding:13px 0;font-size:12px;color:#7b7c83}
.nd-picker>p{font-size:13px;line-height:1.65;color:#5f6269;margin:0 0 15px}
.nd-search{display:flex;align-items:center;gap:9px;border:1px solid #e1e1e5;border-radius:14px;padding:0 14px;background:#fff}
.nd-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:16px;min-height:52px}
.nd-picker-results{max-height:42vh;overflow:auto;margin:16px 0}
.nd-choice{width:100%;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e9e9eb;border-radius:13px;padding:13px;margin-bottom:7px;text-align:left}
.nd-choice>span:first-child{font-size:22px}.nd-choice>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.nd-choice strong{font-size:13px}.nd-choice small{font-size:11px;color:#70737b}.nd-choice>b{font-size:22px;color:#ac1224}
.nd-picker-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.nd-picker-actions button{white-space:normal;line-height:1.3;min-height:46px}
.nd-pref{display:grid;gap:15px}.nd-pref>p{margin:0;color:#55585c;font-size:13px;line-height:1.6}
.nd-pref-count{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.nd-pref-num{background:#fff;border:1px solid #dfe0e3;border-radius:12px;min-height:55px;font-size:20px;font-weight:800}
.nd-pref-num.active,.nd-pref-choice.active{border:2px solid #be1628;background:#fff4f5;color:#111}
.nd-pref-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nd-pref-choice{display:flex;align-items:center;gap:10px;padding:13px;background:#fff;border:1px solid #e2e2e5;border-radius:14px;min-height:66px;text-align:left}
.nd-pref-choice>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f5f5f6;font-size:18px}
.nd-pref-choice>strong{flex:1;font-size:13px}.nd-pref-choice>small{color:#6b6b70;font-size:10px}
.nd-pref-hint{background:#f6f6f7;border-radius:12px;padding:13px;color:#57575c;line-height:1.55;font-size:12px}
.nd-profile-pref{margin:18px 0 0;padding:22px}.nd-profile-pref h3{margin:7px 0}.nd-profile-pref p{font-size:13px;color:#62636a;line-height:1.6}
.nd-add-meal:focus-visible,.nd-customize:focus-visible,.nd-choice:focus-visible,.nd-pref-choice:focus-visible,.nd-pref-num:focus-visible{outline:3px solid #d12f41;outline-offset:2px}
@media(max-width:780px){
.nd-energy-grid,.nd-nutrients-grid{grid-template-columns:1fr}.nd-energy{padding:17px}.nd-energy-main{padding:20px}.nd-energy-main strong{font-size:48px}
.nd-nutrient-panel{padding:16px}.nd-meal-heading{gap:10px;padding:14px 12px}.nd-meal-entries{padding-inline:12px}
.nd-meal-symbol{width:36px;height:36px;font-size:19px}.nd-add-meal{padding:10px;font-size:12px}
.nd-picker-actions{grid-template-columns:1fr}.nd-pref-list{grid-template-columns:1fr}
}
@media(max-width:370px){.nd-energy-side,.nd-micros{grid-template-columns:1fr}.nd-meal-heading{flex-wrap:wrap}.nd-meal-name{min-width:calc(100% - 50px)}.nd-add-meal{width:100%;justify-content:center}}
