/**
 * WooCommerce Ajax Filters — Styles
 * Design: Josefin Sans, light theme (#1A1A1A text, #C9A227 gold, #E2E2E2 borders)
 */

/* ============================================================
   Sidebar Container
   ============================================================ */

.woo-filter-sidebar {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 304px;
  box-sizing: border-box;
  overflow: hidden;
}

/* Clear-all: styled as "Скинути все", placed at bottom via order */
.woo-filter-sidebar .filter-header {
  order: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 22px;
  font-size: 12px;
  width: 100%;
  height: 40px;
  background: #F9F8F8;
}

.woo-filter-sidebar .filter-clear-all {
  font-style: normal;
  font-weight: 600;
  font-size: 12px;
  line-height: 21px;
  letter-spacing: 0.56px;
  text-transform: uppercase;
  color: #C9A227;
  background: none;
  border: none;
  cursor: pointer;
  text-decoration: none;
}

.woo-filter-sidebar .filter-clear-all:hover {
  opacity: 0.8;
}

/* Filter body: ordered first */
.woo-filter-sidebar .filter-body {
  order: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
}

/* ============================================================
   Filter Block (Section)
   ============================================================ */

.woo-filter-sidebar .filter-block {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  width: 304px;
  border-bottom: 1px solid #E2E2E2;
  padding-bottom: 1px;
}

.woo-filter-sidebar .filter-block:last-child {
  border-bottom: 1px solid #E2E2E2;
}

/* Section Header */
.woo-filter-sidebar .filter-block-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 21px 0 10px;
  width: 100%;
  cursor: pointer;
  user-select: none;
}

/* Price section: smaller vertical padding */
.woo-filter-sidebar .filter-block:has(.price-range-wrapper) .filter-block-header {
  padding: 8px 0;
}

/* Section title */
.woo-filter-sidebar .filter-block-header h4 {
  font-family: 'Josefin Sans', sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 21px;
  letter-spacing: 0.56px;
  text-transform: uppercase;
  color: #1A1A1A;
  margin: 0;
}

/* Remove old arrow pseudo-element */
.woo-filter-sidebar .filter-block-header h4::after,
.woo-filter-sidebar .filter-block[data-attribute] .filter-block-header h4::after,
.woo-filter-sidebar .filter-block[data-attribute].filter-block--open .filter-block-header h4::after {
  content: none;
}

/* Toggle icon: plus (closed) / minus (open) */
.woo-filter-sidebar .filter-block-header::after {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cline x1='2' y1='10' x2='18' y2='10' stroke='%231A1A1A' stroke-width='1.5'/%3E%3Cline x1='10' y1='2' x2='10' y2='18' stroke='%231A1A1A' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
}

.woo-filter-sidebar .filter-block--open .filter-block-header::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cline x1='2' y1='10' x2='18' y2='10' stroke='%231A1A1A' stroke-width='1.5'/%3E%3C/svg%3E");
}

/* Hide clear section button (not in design) */
.woo-filter-sidebar .filter-clear-section {
  display: none;
}

/* ============================================================
   Filter Block Content
   ============================================================ */

.woo-filter-sidebar .filter-block-content {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  max-height: 250px;
  overflow-y: auto;
  padding-right: 15px;
  padding-bottom: 8px;
  box-sizing: border-box;
  scrollbar-width: thin;
  scrollbar-color: #E2E2E2 transparent;
}

.woo-filter-sidebar .filter-block-content::-webkit-scrollbar {
  width: 4px;
}

.woo-filter-sidebar .filter-block-content::-webkit-scrollbar-track {
  background: transparent;
}

.woo-filter-sidebar .filter-block-content::-webkit-scrollbar-thumb {
  background: #E2E2E2;
  border-radius: 2px;
}

/* Price section: no scroll limit needed */
.woo-filter-sidebar .filter-block:has(.price-range-wrapper) .filter-block-content {
  max-height: none;
  overflow-y: visible;
  padding-right: 0;
}

/* Radio sections (gender, volume): flex row wrap, no scroll */
.woo-filter-sidebar .filter-block-content:has(.filter-radio) {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
  max-height: none;
  overflow-y: visible;
  padding-right: 0;
}

/* ============================================================
   Price Filter
   ============================================================ */

.woo-filter-sidebar .price-range-wrapper {
  display: flex;
  flex-direction: column;
  width: 280px;
  padding-bottom: 28px;
}

/* jQuery UI Slider */
.woo-filter-sidebar .price-slider-ui {
  margin: 0 7px;
}

.woo-filter-sidebar .ui-slider {
  height: 5px;
  border: none;
  background: #E2E2E2;
  border-radius: 8px;
  position: relative;
  overflow: visible;
}

.woo-filter-sidebar .ui-slider .ui-slider-range {
  background: #C9A227;
  border-radius: 8px;
}

.woo-filter-sidebar .ui-slider .ui-slider-handle {
  width: 14px;
  height: 14px;
  top: -5px;
  margin-left: -7px;
  border-radius: 50%;
  border: 2px solid #FFFFFF;
  background: #C9A227;
  cursor: pointer;
  box-sizing: border-box;
  overflow: visible;
}

.woo-filter-sidebar .ui-slider .ui-slider-handle:focus {
  outline: none;
}

.woo-filter-sidebar .ui-slider-handle .handle-label {
  position: absolute;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #C9A227;
  pointer-events: none;
}

/* ============================================================
   Checkbox Items
   ============================================================ */

.woo-filter-sidebar .filter-checkbox {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  min-height: 24px;
  padding: 3px 0;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
}

.woo-filter-sidebar .filter-checkbox input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.woo-filter-sidebar .filter-checkbox-label {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  font-family: 'Josefin Sans', sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.48px;
  text-transform: uppercase;
  color: #1A1A1A;
  padding-left: 20px;
  position: relative;
  cursor: pointer;
}

/* Custom checkbox — unchecked SVG */
.woo-filter-sidebar .filter-checkbox-label::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='m' fill='white'%3E%3Cpath d='M0 3C0 1.34315 1.34315 0 3 0H11C12.6569 0 14 1.34315 14 3V11C14 12.6569 12.6569 14 11 14H3C1.34315 14 0 12.6569 0 11V3Z'/%3E%3C/mask%3E%3Cpath d='M0 3C0 1.34315 1.34315 0 3 0H11C12.6569 0 14 1.34315 14 3V11C14 12.6569 12.6569 14 11 14H3C1.34315 14 0 12.6569 0 11V3Z' fill='%23F9F8F8'/%3E%3Cpath d='M3 0V1H11V0V-1H3V0ZM14 3H13V11H14H15V3H14ZM11 14V13H3V14V15H11V14ZM0 11H1V3H0H-1V11H0ZM3 14V13C1.89543 13 1 12.1046 1 11H0H-1C-1 13.2091 0.790861 15 3 15V14ZM14 11H13C13 12.1046 12.1046 13 11 13V14V15C13.2091 15 15 13.2091 15 11H14ZM11 0V1C12.1046 1 13 1.89543 13 3H14H15C15 0.790861 13.2091 -1 11 -1V0ZM3 0V-1C0.790861 -1 -1 0.790861 -1 3H0H1C1 1.89543 1.89543 1 3 1V0Z' fill='%23E2E2E2' mask='url(%23m)'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 14px 14px;
  flex-shrink: 0;
}

/* Remove old ::after checkmark — icon now lives in ::before via SVG swap */
.woo-filter-sidebar .filter-checkbox-label::after {
  display: none;
}

/* Checked — swap to SVG with checkmark */
.woo-filter-sidebar .filter-checkbox input[type="checkbox"]:checked+.filter-checkbox-label::before {
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='m' fill='white'%3E%3Cpath d='M0 3C0 1.34315 1.34315 0 3 0H11C12.6569 0 14 1.34315 14 3V11C14 12.6569 12.6569 14 11 14H3C1.34315 14 0 12.6569 0 11V3Z'/%3E%3C/mask%3E%3Cpath d='M0 3C0 1.34315 1.34315 0 3 0H11C12.6569 0 14 1.34315 14 3V11C14 12.6569 12.6569 14 11 14H3C1.34315 14 0 12.6569 0 11V3Z' fill='%23F9F8F8'/%3E%3Cpath d='M3 0V1H11V0V-1H3V0ZM14 3H13V11H14H15V3H14ZM11 14V13H3V14V15H11V14ZM0 11H1V3H0H-1V11H0ZM3 14V13C1.89543 13 1 12.1046 1 11H0H-1C-1 13.2091 0.790861 15 3 15V14ZM14 11H13C13 12.1046 12.1046 13 11 13V14V15C13.2091 15 15 13.2091 15 11H14ZM11 0V1C12.1046 1 13 1.89543 13 3H14H15C15 0.790861 13.2091 -1 11 -1V0ZM3 0V-1C0.790861 -1 -1 0.790861 -1 3H0H1C1 1.89543 1.89543 1 3 1V0Z' fill='%23E2E2E2' mask='url(%23m)'/%3E%3Cpath d='M11.5869 3.96098L5.58691 9.96098C5.53465 10.0134 5.47256 10.055 5.40419 10.0834C5.33581 10.1118 5.26251 10.1264 5.18848 10.1264C5.11444 10.1264 5.04114 10.1118 4.97277 10.0834C4.90439 10.055 4.8423 10.0134 4.79004 9.96098L2.16504 7.33598C2.11271 7.28365 2.07121 7.22154 2.04289 7.15317C2.01457 7.08481 2 7.01154 2 6.93754C2 6.86354 2.01457 6.79027 2.04289 6.72191C2.07121 6.65354 2.11271 6.59142 2.16504 6.5391C2.21736 6.48678 2.27948 6.44527 2.34784 6.41695C2.41621 6.38864 2.48948 6.37406 2.56348 6.37406C2.63747 6.37406 2.71074 6.38864 2.77911 6.41695C2.84747 6.44527 2.90959 6.48678 2.96191 6.5391L5.18894 8.76613L10.791 3.16504C10.8966 3.05937 11.04 3 11.1894 3C11.3389 3 11.4822 3.05937 11.5879 3.16504C11.6935 3.27071 11.7529 3.41403 11.7529 3.56348C11.7529 3.71292 11.6935 3.85624 11.5879 3.96191L11.5869 3.96098Z' fill='%231A1A1A'/%3E%3C/svg%3E");
}

/* Count badge */
.woo-filter-sidebar .filter-count {
  font-family: 'Josefin Sans', sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.48px;
  color: #1A1A1A;
}

/* Category family wrapper */
.woo-filter-sidebar .filter-cat-family {
  width: 100%;
}

.woo-filter-sidebar .filter-checkbox-sub {
  font-size: 12px;
}

/* ============================================================
   Radio Items — button-style tags (gender, volume, etc.)
   ============================================================ */

.woo-filter-sidebar .filter-radio {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  position: relative;
}

.woo-filter-sidebar .filter-radio input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.woo-filter-sidebar .filter-radio-label {
  display: inline-flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 6px 12px;
  height: 32px;
  background: #F9F8F8;
  border: 1px solid #E2E2E2;
  font-family: 'Josefin Sans', sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.48px;
  color: #1A1A1A;
  cursor: pointer;
  box-sizing: border-box;
  white-space: nowrap;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.woo-filter-sidebar .filter-block[data-attribute="pa_obyem"] .filter-radio input[type="radio"]:checked+.filter-radio-label {
  border-color: #1A1A1A;
}


/* ============================================================
   Filter Search Field (brands + attributes with > 8 items)
   ============================================================ */

.woo-filter-sidebar .filter-search {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 0 12px;
  height: 36px;
  background: #F9F8F8;
  border: 1px solid #E2E2E2;
  box-sizing: border-box;
  margin-bottom: 8px;
}

.woo-filter-sidebar .filter-search-icon {
  flex-shrink: 0;
}

.woo-filter-sidebar .filter-search-input {
  flex: 1;
  border: none;
  background: transparent;
  outline: none;
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.48px;
  color: #1A1A1A;
}

.woo-filter-sidebar .filter-search-input::placeholder {
  color: #8B8B8B;
}

/* ============================================================
   Attribute Filters — tag-button override for checkbox-rendered attributes
   Higher specificity (.woo-filter-sidebar + .filter-attributes + element)
   wins over the generic .woo-filter-sidebar .filter-checkbox-label rule.
   ============================================================ */

.woo-filter-sidebar .filter-attributes .filter-block-content {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
  max-height: none;
  overflow-y: visible;
  padding-right: 0;
}

.woo-filter-sidebar .filter-attributes .filter-checkbox {
  width: auto;
  padding: 0;
  min-height: 0;
}

.woo-filter-sidebar .filter-attributes .filter-checkbox-label {
  display: inline-flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 6px 12px;
  height: 32px;
  background: #F9F8F8;
  border: 1px solid #E2E2E2;
  font-weight: 500;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.48px;
  color: #1A1A1A;
  box-sizing: border-box;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color 0.15s ease;
}

/* Remove the custom checkbox box and checkmark pseudo-elements */
.woo-filter-sidebar .filter-attributes .filter-checkbox-label::before,
.woo-filter-sidebar .filter-attributes .filter-checkbox-label::after {
  display: none;
}

.woo-filter-sidebar .filter-attributes .filter-count {
  display: none;
}

.woo-filter-sidebar .filter-attributes .filter-checkbox input[type="checkbox"]:checked+.filter-checkbox-label {
  border-color: #1A1A1A;
}

/* List layout override — restores vertical list style for filter-block--list inside .filter-attributes */
.woo-filter-sidebar .filter-attributes .filter-block--list .filter-block-content {
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 0;
  max-height: 250px;
  overflow-y: auto;
  padding-right: 15px;
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-checkbox {
  width: 100%;
  padding: 6px 0;
  min-height: 28px;
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-checkbox-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0 0 0 22px;
  height: auto;
  background: none;
  border: none;
  font-weight: 500;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.48px;
  white-space: normal;
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-checkbox-label::before,
.woo-filter-sidebar .filter-attributes .filter-block--list .filter-checkbox-label::after {
  display: block;
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-count {
  display: inline;
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-checkbox input[type="checkbox"]:checked+.filter-checkbox-label {
  border: none;
}

/* Radio items in list layout — match brand-filter checkbox appearance */
.woo-filter-sidebar .filter-attributes .filter-block--list .filter-radio {
  width: 100%;
  padding: 3px 0;
  min-height: 24px;
  display: flex;
  flex-direction: row;
  align-items: center;
  position: relative;
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-radio-label {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  padding: 3px 0 3px 20px;
  height: auto;
  background: none;
  border: none;
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.48px;
  text-transform: uppercase;
  color: #1A1A1A;
  white-space: normal;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  transition: none;
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-radio-label::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='m' fill='white'%3E%3Cpath d='M0 3C0 1.34315 1.34315 0 3 0H11C12.6569 0 14 1.34315 14 3V11C14 12.6569 12.6569 14 11 14H3C1.34315 14 0 12.6569 0 11V3Z'/%3E%3C/mask%3E%3Cpath d='M0 3C0 1.34315 1.34315 0 3 0H11C12.6569 0 14 1.34315 14 3V11C14 12.6569 12.6569 14 11 14H3C1.34315 14 0 12.6569 0 11V3Z' fill='%23F9F8F8'/%3E%3Cpath d='M3 0V1H11V0V-1H3V0ZM14 3H13V11H14H15V3H14ZM11 14V13H3V14V15H11V14ZM0 11H1V3H0H-1V11H0ZM3 14V13C1.89543 13 1 12.1046 1 11H0H-1C-1 13.2091 0.790861 15 3 15V14ZM14 11H13C13 12.1046 12.1046 13 11 13V14V15C13.2091 15 15 13.2091 15 11H14ZM11 0V1C12.1046 1 13 1.89543 13 3H14H15C15 0.790861 13.2091 -1 11 -1V0ZM3 0V-1C0.790861 -1 -1 0.790861 -1 3H0H1C1 1.89543 1.89543 1 3 1V0Z' fill='%23E2E2E2' mask='url(%23m)'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 14px 14px;
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-radio input[type="radio"]:checked+.filter-radio-label::before {
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='m' fill='white'%3E%3Cpath d='M0 3C0 1.34315 1.34315 0 3 0H11C12.6569 0 14 1.34315 14 3V11C14 12.6569 12.6569 14 11 14H3C1.34315 14 0 12.6569 0 11V3Z'/%3E%3C/mask%3E%3Cpath d='M0 3C0 1.34315 1.34315 0 3 0H11C12.6569 0 14 1.34315 14 3V11C14 12.6569 12.6569 14 11 14H3C1.34315 14 0 12.6569 0 11V3Z' fill='%23F9F8F8'/%3E%3Cpath d='M3 0V1H11V0V-1H3V0ZM14 3H13V11H14H15V3H14ZM11 14V13H3V14V15H11V14ZM0 11H1V3H0H-1V11H0ZM3 14V13C1.89543 13 1 12.1046 1 11H0H-1C-1 13.2091 0.790861 15 3 15V14ZM14 11H13C13 12.1046 12.1046 13 11 13V14V15C13.2091 15 15 13.2091 15 11H14ZM11 0V1C12.1046 1 13 1.89543 13 3H14H15C15 0.790861 13.2091 -1 11 -1V0ZM3 0V-1C0.790861 -1 -1 0.790861 -1 3H0H1C1 1.89543 1.89543 1 3 1V0Z' fill='%23E2E2E2' mask='url(%23m)'/%3E%3Cpath d='M11.5869 3.96098L5.58691 9.96098C5.53465 10.0134 5.47256 10.055 5.40419 10.0834C5.33581 10.1118 5.26251 10.1264 5.18848 10.1264C5.11444 10.1264 5.04114 10.1118 4.97277 10.0834C4.90439 10.055 4.8423 10.0134 4.79004 9.96098L2.16504 7.33598C2.11271 7.28365 2.07121 7.22154 2.04289 7.15317C2.01457 7.08481 2 7.01154 2 6.93754C2 6.86354 2.01457 6.79027 2.04289 6.72191C2.07121 6.65354 2.11271 6.59142 2.16504 6.5391C2.21736 6.48678 2.27948 6.44527 2.34784 6.41695C2.41621 6.38864 2.48948 6.37406 2.56348 6.37406C2.63747 6.37406 2.71074 6.38864 2.77911 6.41695C2.84747 6.44527 2.90959 6.48678 2.96191 6.5391L5.18894 8.76613L10.791 3.16504C10.8966 3.05937 11.04 3 11.1894 3C11.3389 3 11.4822 3.05937 11.5879 3.16504C11.6935 3.27071 11.7529 3.41403 11.7529 3.56348C11.7529 3.71292 11.6935 3.85624 11.5879 3.96191L11.5869 3.96098Z' fill='%231A1A1A'/%3E%3C/svg%3E");
}

.woo-filter-sidebar .filter-attributes .filter-block--list .filter-radio-label .filter-count {
  display: inline;
}

/* ============================================================
   Nav Links (categories without AJAX)
   ============================================================ */

.woo-filter-sidebar .filter-nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.woo-filter-sidebar .filter-nav-list--sub {
  margin-top: 4px;
  padding-left: 16px;
}

.woo-filter-sidebar .filter-nav-list--collapsed {
  display: none;
}

.woo-filter-sidebar .filter-nav-item {
  display: block;
}

.woo-filter-sidebar .filter-nav-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.woo-filter-sidebar .filter-nav-row .filter-nav-link {
  flex: 1;
}

.woo-filter-sidebar .filter-nav-toggle {
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px 0 4px 8px;
  color: #1A1A1A;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.woo-filter-sidebar .filter-nav-toggle[aria-expanded="true"] {
  transform: rotate(180deg);
}

.woo-filter-sidebar .filter-nav-toggle:hover {
  color: #C9A227;
}

.woo-filter-sidebar .filter-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 0;
  font-family: 'Josefin Sans', sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.48px;
  text-transform: uppercase;
  color: #1A1A1A;
  text-decoration: none;
}

.woo-filter-sidebar .filter-nav-link:hover {
  color: #C9A227;
}

.woo-filter-sidebar .filter-nav-link--sub {
  font-size: 11px;
  color: rgba(26, 26, 26, 0.7);
}

.woo-filter-sidebar .filter-nav-link--sub:hover {
  color: #C9A227;
}

/* ============================================================
   Show More
   ============================================================ */

.woo-filter-sidebar .filter-item--over-limit {
  display: none;
}

.woo-filter-sidebar .filter-show-more {
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px 0;
  font-family: 'Josefin Sans', sans-serif;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.48px;
  color: #C9A227;
  text-decoration: underline;
  text-underline-offset: 2px;
  display: block;
}

.woo-filter-sidebar .filter-show-more:hover {
  opacity: 0.8;
}

/* ============================================================
   Unavailable / Loading
   ============================================================ */

.woo-filter-sidebar .filter-unavailable {
  display: none !important;
}

#woo-products-container.filtering {
  opacity: 0.5;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

/* ============================================================
   Mobile Filter Button — [waf_mobile_filter_button]
   ============================================================ */

.waf-mobile-filter-row {
  display: none;
}

@media (max-width: 1070px) {

  .waf-mobile-filter-row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    gap: 24px;
    height: 37px;
  }

  .woo-filter-sidebar {
    display: flex !important;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 360px;
    height: 100dvh;
    max-height: none !important;
    z-index: 99999;
    overflow-y: auto;
    padding: 24px 20px;
    box-sizing: border-box;
    transform: translateX(-110%);
    transition: transform 0.3s ease;
    background: #fff;
  }

  .woo-filter-sidebar.is-mobile-open {
    transform: translateX(0);
  }

}

.waf-sidebar-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 99998;
}

.waf-sidebar-backdrop.is-visible {
  display: block;
}

.waf-mobile-filter-btn {
  display: inline-flex;
  align-items: center;
  width: 177px;
  height: 40px;
  padding: 2px;
  background: transparent;
  border: 0.5px solid #1A1A1A;
  border-radius: 5px;
  cursor: pointer;
  flex-shrink: 0;
  box-sizing: border-box;

}

@media screen and (max-width: 389px) {
  .waf-mobile-filter-btn {
    width: 170px;
  }
}

.waf-mobile-filter-inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #1A1A1A;
  border-radius: 3px;
  gap: 6px;
  padding: 0 8px;
  box-sizing: border-box;
}

.waf-mobile-filter-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
}

.waf-mobile-filter-label {
  font-family: 'Manrope', sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.04em;
  color: #FFFFFF;
  flex: none;
}

.waf-mobile-filter-count {
  display: none;
  width: 18px;
  height: 18px;
  background: #C9A227;
  border-radius: 50%;
  font-family: 'Manrope', sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.04em;
  text-align: center;
  color: #FFFFFF;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.waf-mobile-filter-btn--active .waf-mobile-filter-count {
  display: inline-flex;
}

@media screen and (max-width: 500px) {
  .waf-results-info {
    white-space: nowrap;
  }

  .waf-results-info b {
    display: none;
  }
}

/* ============================================================
   Mobile "Show" button (inside sidebar, mobile only)
   ============================================================ */

.waf-apply-filters-wrap {
  display: none;
}

@media (max-width: 1070px) {
  .waf-apply-filters-wrap {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 16px 0 8px;
    order: 3;
  }

  .waf-apply-filters-btn {
    width: 302px;
    max-width: 100%;
    height: 40px;
    background: #1A1A1A;
    border: none;
    cursor: pointer;
    font-family: 'Josefin Sans', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 16px;
    text-align: center;
    letter-spacing: 0.812957px;
    text-transform: uppercase;
    color: #FFFFFF;
  }
}