SlotRecipe from the week-plan API carries no tags, so the protein gradient lookup in DesktopDayTile always fell through to --color-surface. Build a recipeById lookup from data.recipes and spread tags onto each slot's recipe when constructing slotMap. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>