/**
 * Shop listing UI overrides — loaded after assets/css/style.css on shop.php
 */

.shop-fullwide-page .shop-short-by {
  padding: 0;
}

.shop-fullwide-page .shop-short-by > span {
  color: var(--anahera-body, #3d3d3f);
  font-size: 14px;
  font-weight: 500;
}

.shop-fullwide-page .shop-short-by > span i {
  color: inherit;
}

.shop-fullwide-page .shop-sort-dropdown {
  min-width: 220px;
  margin-top: 0 !important;
  padding: 8px 0 !important;
  border: 1px solid var(--anahera-border, #e4e3e1);
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(47, 47, 49, 0.1) !important;
}

.shop-fullwide-page .shop-short-by:hover .shop-sort-dropdown {
  margin-top: 8px !important;
}

.shop-fullwide-page .shop-sort-dropdown li a {
  padding: 10px 16px;
  border-radius: 0;
  font-size: 14px;
  line-height: 1.35;
  color: var(--anahera-body, #3d3d3f);
  background: transparent !important;
  white-space: normal;
  transition: color 0.2s ease, background 0.2s ease;
}

.shop-fullwide-page .shop-sort-dropdown li a:hover,
.shop-fullwide-page .shop-sort-dropdown li a:focus-visible {
  color: var(--anahera-ink, #2f2f31);
  background: var(--anahera-surface, #f7f6f4) !important;
}

.shop-fullwide-page .shop-sort-dropdown li.active a {
  color: var(--anahera-text-accent, #5E5E5E) !important;
  background: transparent !important;
  font-weight: 600;
}

/* AJAX catalog loading state */
.shop-catalog-root {
  position: relative;
  min-height: 120px;
  transition: opacity 0.2s ease;
}

.shop-catalog-root.is-loading {
  opacity: 0.55;
  pointer-events: none;
}

.shop-catalog-root.is-loading::after {
  content: '';
  position: absolute;
  top: 28%;
  left: 50%;
  width: 34px;
  height: 34px;
  margin: -17px 0 0 -17px;
  border: 2px solid rgba(47, 47, 49, 0.15);
  border-top-color: var(--anahera-accent, #ff4136);
  border-radius: 50%;
  animation: shop-catalog-spin 0.7s linear infinite;
  z-index: 5;
}

@keyframes shop-catalog-spin {
  to {
    transform: rotate(360deg);
  }
}
