.dining-layout {
  display: grid;
  grid-template-columns: minmax(260px, 310px) minmax(0, 1fr);
  align-items: start;
  gap: 28px;
}
.dining-layout > *, .dining-layout .place-card { min-width: 0; }
.dining-layout .places-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dining-layout [hidden] { display: none !important; }
.dining-filters { grid-row: auto; }
.dining-filters h2 { font-size: 28px; }
.dining-filters .filter-group input { flex-shrink: 0; }
.dining-filters .filter-dropdown summary { gap: 8px; }
.dining-filters .filter-dropdown summary::after { flex-shrink: 0; }
.dining-selected-count { margin-left: auto; color: var(--green); }
.dining-price-note { color: var(--muted); line-height: 1.5; }
.dining-result-count { margin: 0 0 16px; color: var(--muted); font-weight: 700; }
@media (max-width: 900px) {
  .dining-layout { grid-template-columns: minmax(0, 1fr); }
  .dining-filters { position: static; max-height: none; }
}
@media (max-width: 560px) {
  .dining-layout .places-grid { grid-template-columns: minmax(0, 1fr); }
}
