/* Catalog-only opt-in to the shared SANNI selector. Native GET values stay intact. */
body:not(.admin-body) :is(.catalog-sort-form .sanni-select, .sanni-select-panel) {
  --ss-primary: var(--theme-primary-color, #0f7c59);
  --ss-primary-hover: var(--theme-header-color, #0d6b4d);
  --ss-primary-soft: var(--theme-primary-soft, #e5f2ec);
  --ss-primary-ring: rgba(15, 124, 89, .16);
  --ss-text: var(--theme-text-color, #182b32);
  --ss-muted: #425a50;
  --ss-surface: var(--theme-surface-color, #fff);
  --ss-surface-soft: #f1f7f4;
  --ss-border: var(--theme-border-color, #b8cbc3);
  --ss-border-soft: #d6e3de;
}

body:not(.admin-body) .catalog-sort-form .sanni-select {
  width: 192px;
  min-width: 0;
}

body:not(.admin-body) .catalog-sort-form .sanni-select-native {
  min-height: 0 !important;
  min-width: 0 !important;
}

body:not(.admin-body) .catalog-sort-form .sanni-select-trigger {
  height: 36px;
  min-height: 36px;
  padding: 0 11px;
  border: 1px solid var(--ss-border);
  border-radius: 8px;
  background: var(--ss-surface);
  font-family: var(--theme-font-family, "Manrope", "Segoe UI", sans-serif) !important;
  font-size: 13px;
  line-height: 1.3;
  box-shadow: none;
}

body:not(.admin-body) .sanni-select-panel {
  border-radius: 10px;
  font-family: var(--theme-font-family, "Manrope", "Segoe UI", sans-serif);
  box-shadow: 0 10px 28px rgba(17, 52, 39, .13), 0 2px 6px rgba(17, 52, 39, .06);
}

body:not(.admin-body) .sanni-select-option {
  min-height: 36px;
  font-family: var(--theme-font-family, "Manrope", "Segoe UI", sans-serif);
  font-size: 13px;
}

body:not(.admin-body) .sanni-select-panel[hidden] {
  display: none !important;
}

@media (max-width: 760px) {
  body:not(.admin-body) .catalog-sort-form .sanni-select { width: 100%; }
  body:not(.admin-body) .catalog-sort-form .sanni-select-trigger {
    height: 40px;
    min-height: 40px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.admin-body) :is(.catalog-sort-form .sanni-select-arrow, .sanni-select-panel, .sanni-select-option) {
    transition: none;
  }
}
