.tile-group { margin:1rem 0; padding:0; border:0; }
.tile-group legend { margin-bottom:.45rem; color:var(--home-muted); font-size:.7rem; font-weight:700; }
.choice-tiles { display:grid; gap:.45rem; }
.choice-tile { display:flex; flex-direction:column; align-items:flex-start; gap:.15rem; padding:.7rem .75rem; border:1px solid var(--home-line); border-radius:.65rem; color:var(--home-ink); background:transparent; text-align:left; cursor:pointer; }
.choice-tile:hover,.choice-tile.selected { border-color:var(--home-green); background:#eef5ec; }
.choice-tile strong { font-size:.75rem; }.choice-tile strong span { color:#c96862; }.choice-tile small { color:var(--home-muted); font-size:.64rem; }
.day-tiles { display:grid; grid-template-columns:repeat(4,1fr); gap:.4rem; }
.day-tile { min-height:2.45rem; border:1px solid var(--home-line); border-radius:.6rem; color:var(--home-muted); background:transparent; font-size:.7rem; font-weight:700; cursor:pointer; }
.day-tile:hover,.day-tile.selected { border-color:var(--home-green); color:var(--home-green); background:#eef5ec; }
@media(min-width:520px) { .choice-tiles { grid-template-columns:repeat(3,1fr); } }
.recipe-picker-tiles { display:flex; flex:1; flex-wrap:wrap; gap:.35rem; }
.recipe-picker-tile { padding:.55rem .65rem; border:1px solid var(--home-line); border-radius:.55rem; color:var(--home-ink); background:var(--home-card); font-size:.68rem; cursor:pointer; }
.recipe-picker-tile:hover,.recipe-picker-tile.selected { border-color:var(--home-green); color:var(--home-green); background:#eef5ec; }
.serving-tiles { display:grid; grid-template-columns:repeat(3,1fr); gap:.4rem; }
.serving-tile { min-height:2.3rem; border:1px solid var(--home-line); border-radius:.6rem; color:var(--home-muted); background:transparent; font-size:.68rem; font-weight:700; cursor:pointer; }
.serving-tile:hover,.serving-tile.selected { border-color:var(--home-green); color:var(--home-green); background:#eef5ec; }
.meal-slot,.lunch-slot { min-height:3.25rem; }
.empty-slot.add-dinner-button { font:inherit; text-align:left; cursor:pointer; background:transparent; }
.empty-slot.add-dinner-button:hover { border-color:var(--home-green); color:var(--home-green); background:#eef5ec; }
.drop-zone,.lunch-slot .drop-zone { min-height:3.25rem; padding-top:.35rem; padding-bottom:.35rem; }
.planned-meal { min-height:2.4rem; padding:.3rem .55rem; }
.meal-card-button strong { font-size:.74rem; }.meal-card-button small { font-size:.6rem; }
@media(max-width:640px) { .meal-slot,.lunch-slot,.drop-zone,.lunch-slot .drop-zone { min-height:3rem; }.planned-meal { min-height:2.25rem; } }
