/* OTODA Category Slider - basic styles (customize as needed) */
.otoda-cat-slider-wrap { margin-bottom: 18px; padding: 0 6px; }
.otoda-cat-slider { display:flex; gap:10px; overflow-x:auto; padding:8px 6px; -webkit-overflow-scrolling:touch; }
.otoda-cat-slider::-webkit-scrollbar { height:6px; }
.otoda-cat-slider::-webkit-scrollbar-thumb { background:rgba(0,0,0,0.12); border-radius:3px; }
.otoda-cat-btn { flex:0 0 auto; padding:8px 14px; border-radius:5px; border:1px solid rgba(0,0,0,0.06); background:#fff; cursor:pointer; white-space:nowrap; font-size:14px; color:#000; font-weight:500; }
.otoda-cat-btn.active { background:#f5f5f5; color:#000; border-color:rgba(0,0,0,0.10); box-shadow:none; }
.otoda-cat-btn:focus { outline: none; box-shadow: 0 0 0 3px rgba(0,0,0,0.04); }

/* loader */
.otoda-cat-loader { color:#666; font-size:14px; }

/* skeleton & loader styles (keeps previous animation) */
.otoda-loader-overlay {
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.85);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 18px;
  z-index: 9999;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}
.otoda-spinner {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 4px solid rgba(0,0,0,0.08);
  border-top-color: #0b6b63;
  animation: otoda-spin 0.9s linear infinite;
  box-shadow: 0 4px 18px rgba(11,107,99,0.12);
  margin-bottom: 12px;
}
@keyframes otoda-spin { to { transform: rotate(360deg); } }

.otoda-skeleton-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  width: 100%;
  max-width: 100%;
  padding: 6px;
  box-sizing: border-box;
}
.otoda-skel-card {
  background: #fff;
  border-radius: 10px;
  padding: 8px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 170px;
  overflow: hidden;
  position: relative;
}
.otoda-skel-thumb {
  width: 100%;
  height: 110px;
  border-radius: 8px;
  background: linear-gradient(90deg, #eee 25%, #f7f7f7 50%, #eee 75%);
  background-size: 200% 100%;
  animation: otoda-shimmer 1.2s linear infinite;
}
.otoda-skel-line { height: 12px; border-radius: 6px; background: #eee; width: 70%; animation: otoda-shimmer 1.2s linear infinite; }
.otoda-skel-line.short { width: 40%; }
.otoda-skel-line.small { height: 10px; width: 30%; }
@keyframes otoda-shimmer {
  0% { background-position: -150% 0; }
  100% { background-position: 150% 0; }
}
@media (min-width: 769px) {
  .otoda-skeleton-grid { grid-template-columns: repeat(4, 1fr); }
}

/* Mobile 2-column product grid enforcement */
@media (max-width: 768px) {
  .woocommerce ul.products, .products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 12px !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
  }
  .woocommerce ul.products > li.product, .products > li.product {
    min-width: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    display: block !important;
  }
  .woocommerce ul.products li.product img, .products li.product img {
    width: 100% !important;
    height: 150px !important;
    object-fit: cover !important;
    display: block !important;
  }
}
