/* Menu */
.gb-cat-menu{display:flex;flex-direction:column;gap:10px}
.gb-cat-menu .gb-cat-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;border-radius:12px;padding:10px;border:1px solid rgba(0,0,0,.08);background:#fff;transition:.15s}
.gb-cat-menu .gb-cat-item:hover{transform:translateY(-1px)}
.gb-cat-menu .gb-cat-item.is-active{border-color:#111;box-shadow:0 6px 20px rgba(0,0,0,.08)}
.gb-cat-menu .gb-cat-thumb{width:44px;height:44px;border-radius:999px;object-fit:cover;display:block;margin-bottom:8px;background:#f3f3f3}
.gb-cat-menu .gb-cat-name{font-size:12px;line-height:1.2;text-align:center;color:#111}
.gb-cat-count{font-size:11px;opacity:.6;margin-top:4px}

/* Results */
.gb-cat-results{min-height:120px}
.gb-loading-text{padding:14px;border:1px dashed rgba(0,0,0,.15);border-radius:12px;text-align:center}
.gb-subcats{margin-bottom:12px}
.gb-subcats-grid{display:grid;gap:10px}
.gb-subcats-grid.gb-cols-2{grid-template-columns:repeat(2,1fr)}
.gb-subcats-grid.gb-cols-3{grid-template-columns:repeat(3,1fr)}
.gb-subcats-grid.gb-cols-4{grid-template-columns:repeat(4,1fr)}
.gb-subcats-grid.gb-cols-5{grid-template-columns:repeat(5,1fr)}
.gb-subcats-grid.gb-cols-6{grid-template-columns:repeat(6,1fr)}
.gb-subcat{display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;border:1px solid rgba(0,0,0,.08);background:#fff;border-radius:12px;padding:10px}
.gb-subcat-thumb{width:52px;height:52px;border-radius:14px;object-fit:cover;background:#f3f3f3;margin-bottom:8px;display:block}
.gb-subcat-name{font-size:12px;line-height:1.2;text-align:center;color:#111}

/* Load more fallback */
.gb-load-more{margin:14px auto 0;display:block;border:1px solid rgba(0,0,0,.15);background:#fff;border-radius:12px;padding:10px 14px;cursor:pointer}
.gb-sentinel{height:1px}

/* NEW: subcategories horizontal slider on mobile (enabled via localized JS) */
@media (max-width: 768px){
  html.gb-subcats-slider-on .gb-subcats-grid{
    display:flex !important;
    overflow-x:auto !important;
    gap:10px !important;
    padding:4px 2px !important;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  html.gb-subcats-slider-on .gb-subcats-grid::-webkit-scrollbar{display:none;}
  html.gb-subcats-slider-on .gb-subcat{
    flex:0 0 auto !important;
    width:var(--gb-subcat-card-width, 110px) !important;
    scroll-snap-align:start;
  }
  html.gb-subcats-slider-on .gb-subcat-thumb{
    width:56px !important;
    height:56px !important;
  }
}
