.soupgod-loop {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1.2rem;
}
.soupgod-loop .soup-item h3 { font-size: 1.1rem; margin: .6rem 0 .3rem; color: #1a7f67; }
.soupgod-loop .soup-item img { width: 100%; height: auto; border-radius: 6px; }
.soupgod-loop.ajax .sg-toolbar { display:flex; gap:.6rem; align-items:center; margin-bottom: .8rem; }
.soupgod-loop.ajax .sg-toolbar input[type="search"] { flex: 1; padding:.5rem .6rem; border:1px solid #ddd; border-radius:6px; }
.soupgod-loop.ajax .sg-toolbar select { padding:.4rem .5rem; border:1px solid #ddd; border-radius:6px; }
.soupgod-loop.ajax .sg-chip-controls { margin:.4rem 0; display:flex; flex-wrap:wrap; gap:.5rem 1rem; align-items:center; }
.soupgod-loop.ajax .sg-rel { display:flex; align-items:center; gap:.4rem; }
.soupgod-loop.ajax .sg-rel label{ font-size:.9rem; color:#333; }
.soupgod-loop.ajax .sg-chips { margin:.4rem 0 .8rem; display:flex; flex-direction:column; gap:.6rem; }
.soupgod-loop.ajax .sg-chip-group { display:flex; flex-wrap:wrap; gap:.4rem .5rem; align-items:center; }
.soupgod-loop.ajax .sg-chip-title { font-weight:600; margin-right:.4rem; min-width:120px; color:#333; cursor:pointer; }
.soupgod-loop.ajax .sg-chip { padding:.28rem .6rem; border:1px solid #ddd; border-radius:999px; cursor:pointer; background:#fff; }
.soupgod-loop.ajax .sg-chip.active { background:#1a7f67; color:#fff; border-color:#1a7f67; }
.soupgod-loop.ajax .sg-chip-count { opacity:.75; margin-left:.25rem; font-size:.9em; }
.soupgod-loop.ajax .sg-group { border-left:3px solid #eee; padding-left:.6rem; }
.soupgod-loop.ajax .sg-group.collapsed .sg-chip-group { display:none; }
.soupgod-loop.ajax .sg-more { background:none; border:none; cursor:pointer; text-decoration:underline; padding:.1rem .2rem; }
.soupgod-loop.ajax .sg-pagination { display:flex; gap:.8rem; align-items:center; margin-top: .8rem; grid-column: 1 / -1;}
.soupgod-loop.ajax.is-loading .sg-results { opacity:.55; pointer-events:none; }
.soupgod-loop.ajax .sg-sentinel { width:100%; height: 1px; grid-column: 1 / -1; }
