.meal-icon { position:relative; display:inline-grid; place-items:center; width:32px; height:32px; flex-shrink:0; vertical-align:middle; }
.meal-plate { position:absolute; inset:0; width:100%; height:100%; overflow:visible; filter:drop-shadow(0 3px 3px #0003); }
.plate-under { fill:#bac3bf; opacity:.6; }
.plate-edge { fill:#ffffff; stroke:#e2e7e4; stroke-width:.7; }
.plate-groove { fill:#dce2dd; stroke:#ffffff; stroke-width:.6; }
.plate-center { fill:#f7f9f6; stroke:#ecf0eb; stroke-width:.65; }
.plate-shine { fill:none; stroke:#ffffff; stroke-width:1.1; stroke-linecap:round; opacity:.95; }
.meal-food { position:absolute; inset:0; width:100%; height:100%; overflow:visible; filter:drop-shadow(0 1px .65px #795c3426); }
.home-welcome.today-feature { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:18px 5px 25px; border-bottom:1px solid #ffffff0d; }
.today-copy { min-width:0; }
.today-kicker { display:flex; gap:12px; align-items:center; color:#d1d5dd; font-size:12px; font-weight:550; margin:0 0 11px; }
.today-kicker > span { color:#939ba8; font-size:10px; font-weight:400; }
.home-welcome.today-feature h1 { font-size:32px; line-height:1.16; margin:0; letter-spacing:-1px; overflow-wrap:anywhere; }
.today-special-prefix { display:block; font-size:13px; line-height:1.5; letter-spacing:0; font-weight:400; color:#b4bdc8; margin-bottom:5px; }
.today-note { margin:9px 0 0; color:#a7afbb; font-size:12px; line-height:1.6; }
.today-action { margin-top:14px; }
.today-food { padding:6px 13px 0; flex-shrink:0; }
.today-food .meal-icon { width:100px; height:100px; }
.today-food .meal-icon-empty { filter:drop-shadow(0 4px 12px #0003); }
.week-date { min-height:112px; gap:8px; padding-top:12px; padding-bottom:10px; }
.week-date > .week-food { display:grid; place-items:center; width:100%; line-height:1; margin-top:2px; }
.week-food .meal-icon { width:34px; height:34px; }
.selected-food { flex-shrink:0; }
.selected-food .meal-icon { width:72px; height:72px; }
.item-name-label { display:flex; align-items:center; gap:10px; min-width:0; }
.item-name-copy { min-width:0; overflow-wrap:anywhere; }
.item-name-label > .meal-icon { width:34px; height:34px; }
.grocery-row .item-name-label { align-items:flex-start; }
.grocery-row .item-name-label > .meal-icon { margin-top:1px; }
@media(max-width:759px) {
  .item-name-label { gap:8px; }
  .item-name-label > .meal-icon { width:30px; height:30px; }
  .home-welcome.today-feature { gap:15px; padding:10px 2px 19px; }
  .home-welcome.today-feature h1 { font-size:25px; letter-spacing:-.7px; }
  .today-kicker { font-size:11px; margin-bottom:9px; gap:8px; }
  .today-kicker > span { font-size:9px; }
  .today-special-prefix { font-size:11px; }
  .today-note { font-size:11px; margin-top:7px; }
  .today-food { padding:0; }
  .today-food .meal-icon { width:66px; height:66px; }
  .today-action { margin-top:10px; min-height:36px; padding:7px 10px; font-size:10px; }
  .week-date { min-height:86px; gap:5px; padding-top:8px; padding-bottom:7px; }
  .week-date > .week-food { margin-top:2px; }
  .week-food .meal-icon { width:29px; height:29px; }
  .selected-food .meal-icon { width:55px; height:55px; }
}
@media(max-width:359px) {
  .home-welcome.today-feature h1 { font-size:23px; }
  .today-food .meal-icon { width:55px; height:55px; }
}
