img[src^="/assets/food-icon-"] { object-fit:contain !important; background:transparent !important; border-color:transparent !important; }
.category-icon.custom-category:has(img), .category-icon img, img.product-photo {
  background:transparent !important;
  border-color:transparent !important;
}
.food-picker {
  margin: 0 0 14px;
  padding: 10px 12px;
  border: 1px solid var(--line, #decbbf);
  border-radius: 12px;
}
.food-picker summary { cursor: pointer; font-weight: 700; }
.food-picker-controls { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 8px; margin-top: 12px; }
.food-picker-controls .field { min-width: 0; }
.food-picker-controls .food-picker-section { grid-column:1/-1; }
.food-picker-controls .food-picker-section[hidden] { display:none; }
.food-picker-controls :is(input, select) { width: 100%; }
.food-picker [data-food-count] { margin: 6px 0; font-size: 12px; color: var(--muted); }
.food-picker-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(86px, 1fr));
  gap: 6px;
  max-height: min(36vh, 330px);
  padding: 4px;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.food-picker-grid button {
  display: grid;
  justify-items: center;
  align-content: start;
  min-height: 84px;
  padding: 4px;
  border: 1px solid var(--line, #decbbf);
  border-radius: 9px;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: 12px;
  line-height: 1.3;
  cursor: pointer;
}
.food-picker-grid button:is(:hover,[aria-pressed=true]) { border-color: #c36934; background: #c369341a; }
@media (max-width: 400px) { .food-picker-controls { grid-template-columns: minmax(0,1fr); } }
