/**
 * LoveMeGifting — JetSmartFilter Bar Styles
 * Version: 1.0.0
 */

/* ============================================
   Filter Bar Container
   ============================================ */

.lmg-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: var(--lmg-space-3);
  align-items: flex-start;
  padding: var(--lmg-space-4) 0;
  border-bottom: 1px solid var(--lmg-line);
  margin-bottom: var(--lmg-space-5);
}

.lmg-filter-bar__item {
  flex: 1 1 160px;
  min-width: 140px;
  max-width: 240px;
}

/* Sort filter stays right-aligned on desktop */
.lmg-filter-bar__item:last-child {
  margin-left: auto;
  flex: 0 0 auto;
}

/* ============================================
   JetSmartFilter Overrides — brand styling
   ============================================ */

/* Filter label */
.lmg-filter-bar .jet-filter-label,
.lmg-filter-bar .jet-checkboxes-list__label,
.lmg-filter-bar .jet-radio-list__label {
  font-family: var(--lmg-font-primary);
  font-size: var(--lmg-text-small);
  color: var(--lmg-text);
}

/* Dropdown trigger button */
.lmg-filter-bar .jet-select__control,
.lmg-filter-bar .jet-checkboxes-list__dropdown-btn,
.lmg-filter-bar .jet-radio-list__dropdown-btn {
  font-family: var(--lmg-font-primary);
  font-size: var(--lmg-text-small);
  background: var(--lmg-white);
  color: var(--lmg-ink);
  border: 1px solid var(--lmg-line);
  border-radius: var(--lmg-radius-md);
  padding: 10px 14px;
  min-height: 44px;
  width: 100%;
  cursor: pointer;
  transition: border-color var(--lmg-transition-base);
}

.lmg-filter-bar .jet-select__control:hover,
.lmg-filter-bar .jet-checkboxes-list__dropdown-btn:hover {
  border-color: var(--lmg-brown);
}

/* Dropdown open state */
.lmg-filter-bar .jet-select__control--is-focused,
.lmg-filter-bar .jet-checkboxes-list__dropdown-btn--active {
  border-color: var(--lmg-burgundy);
  box-shadow: 0 0 0 3px rgba(92, 26, 26, 0.08);
}

/* Dropdown menu */
.lmg-filter-bar .jet-select__menu,
.lmg-filter-bar .jet-checkboxes-list__dropdown,
.lmg-filter-bar .jet-radio-list__dropdown {
  background: var(--lmg-white);
  border: 1px solid var(--lmg-line);
  border-radius: var(--lmg-radius-md);
  box-shadow: var(--lmg-shadow-md);
  z-index: var(--lmg-z-dropdown);
  padding: var(--lmg-space-2) 0;
}

/* Checkbox / Radio items */
.lmg-filter-bar .jet-checkboxes-list__item,
.lmg-filter-bar .jet-radio-list__item {
  padding: var(--lmg-space-2) var(--lmg-space-4);
  font-family: var(--lmg-font-primary);
  font-size: var(--lmg-text-small);
  color: var(--lmg-text);
  cursor: pointer;
  transition: background var(--lmg-transition-fast);
}

.lmg-filter-bar .jet-checkboxes-list__item:hover,
.lmg-filter-bar .jet-radio-list__item:hover {
  background: var(--lmg-cream);
}

/* Checked state */
.lmg-filter-bar .jet-checkboxes-list__item--checked,
.lmg-filter-bar .jet-radio-list__item--checked {
  color: var(--lmg-burgundy);
  font-weight: var(--lmg-fw-medium);
}

/* Custom checkbox mark */
.lmg-filter-bar input[type="checkbox"]:checked + label,
.lmg-filter-bar input[type="radio"]:checked + label {
  color: var(--lmg-burgundy);
}

/* Count badge */
.lmg-filter-bar .jet-checkboxes-list__item-count,
.lmg-filter-bar .jet-radio-list__item-count {
  color: var(--lmg-muted);
  font-size: var(--lmg-text-caption);
  margin-left: var(--lmg-space-1);
}

/* ============================================
   Active Filters Strip
   ============================================ */

.lmg-filter-active {
  display: flex;
  flex-wrap: wrap;
  gap: var(--lmg-space-2);
  margin-bottom: var(--lmg-space-4);
  min-height: 0;
}

.lmg-filter-active:empty {
  display: none;
}

/* Active filter tags */
.lmg-filter-active .jet-active-filters__item,
.lmg-filter-active .jet-active-filter {
  display: inline-flex;
  align-items: center;
  gap: var(--lmg-space-1);
  padding: 4px 12px;
  background: var(--lmg-cream-dark);
  color: var(--lmg-ink);
  border-radius: var(--lmg-radius-full);
  font-size: var(--lmg-text-caption);
  font-weight: var(--lmg-fw-medium);
}

/* Remove (x) button on active filter */
.lmg-filter-active .jet-active-filters__item-remove,
.lmg-filter-active .jet-active-filter__remove {
  color: var(--lmg-muted);
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  transition: color var(--lmg-transition-fast);
}

.lmg-filter-active .jet-active-filters__item-remove:hover {
  color: var(--lmg-burgundy);
}

/* ============================================
   Sort Filter
   ============================================ */

.lmg-filter-bar .jet-sorting select {
  font-family: var(--lmg-font-primary);
  font-size: var(--lmg-text-small);
  background: var(--lmg-white);
  color: var(--lmg-ink);
  border: 1px solid var(--lmg-line);
  border-radius: var(--lmg-radius-md);
  padding: 10px 36px 10px 14px;
  min-height: 44px;
  min-width: 160px;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238A7864' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
}

.lmg-filter-bar .jet-sorting select:focus {
  outline: none;
  border-color: var(--lmg-burgundy);
  box-shadow: 0 0 0 3px rgba(92, 26, 26, 0.08);
}

/* ============================================
   Responsive
   ============================================ */

@media (max-width: 767px) {
  .lmg-filter-bar {
    gap: var(--lmg-space-2);
  }

  .lmg-filter-bar__item {
    flex: 1 1 calc(50% - var(--lmg-space-2));
    max-width: none;
  }

  /* Sort takes full width on mobile */
  .lmg-filter-bar__item:last-child {
    flex: 1 1 100%;
    margin-left: 0;
  }
}

/* LMG JetSmartFilters compact dropdown fix — added by Hermes */
.lmg-filter-bar { align-items:center; gap:12px; overflow:visible; }
.lmg-filter-bar__item { position:relative; flex:0 1 180px; min-width:150px; max-width:210px; }
.lmg-filter-bar__label, .lmg-filter-bar .jet-sorting-label { display:flex; align-items:center; justify-content:space-between; min-height:44px; width:100%; padding:10px 36px 10px 14px; border:1px solid var(--lmg-line); border-radius:var(--lmg-radius-md); background:var(--lmg-white); color:var(--lmg-ink); font-family:var(--lmg-font-primary); font-size:var(--lmg-text-small); font-weight:var(--lmg-fw-medium); line-height:1.3; cursor:pointer; user-select:none; box-sizing:border-box; white-space:nowrap; }
.lmg-filter-bar__label::after, .lmg-filter-bar .jet-sorting-label::after { content:""; position:absolute; right:14px; top:50%; width:8px; height:8px; border-right:1.5px solid var(--lmg-brown); border-bottom:1.5px solid var(--lmg-brown); transform:translateY(-65%) rotate(45deg); transition:transform var(--lmg-transition-fast); }
.lmg-filter-bar__item:hover .lmg-filter-bar__label, .lmg-filter-bar__item:focus-within .lmg-filter-bar__label, .lmg-filter-bar__item:hover .jet-sorting-label, .lmg-filter-bar__item:focus-within .jet-sorting-label { border-color:var(--lmg-burgundy); box-shadow:0 0 0 3px rgba(92,26,26,.08); }
.lmg-filter-bar__item:hover .lmg-filter-bar__label::after, .lmg-filter-bar__item:focus-within .lmg-filter-bar__label::after, .lmg-filter-bar__item:hover .jet-sorting-label::after, .lmg-filter-bar__item:focus-within .jet-sorting-label::after { transform:translateY(-25%) rotate(225deg); }
.lmg-filter-bar .jet-checkboxes-list, .lmg-filter-bar .jet-radio-list { position:absolute; top:calc(100% + 8px); left:0; z-index:9999; width:max-content; min-width:100%; max-width:min(280px, calc(100vw - 40px)); max-height:320px; overflow-y:auto; visibility:hidden; opacity:0; transform:translateY(-4px); pointer-events:none; transition:opacity var(--lmg-transition-fast), transform var(--lmg-transition-fast), visibility var(--lmg-transition-fast); background:var(--lmg-white); border:1px solid var(--lmg-line); border-radius:var(--lmg-radius-md); box-shadow:var(--lmg-shadow-md); padding:8px 0; }
.lmg-filter-bar__item:hover .jet-checkboxes-list, .lmg-filter-bar__item:focus-within .jet-checkboxes-list, .lmg-filter-bar__item:hover .jet-radio-list, .lmg-filter-bar__item:focus-within .jet-radio-list { visibility:visible; opacity:1; transform:translateY(0); pointer-events:auto; }
.lmg-filter-bar .jet-checkboxes-list-wrapper, .lmg-filter-bar .jet-radio-list-wrapper, .lmg-filter-bar .jet-radio-list-wrapper fieldset { margin:0; padding:0; border:0; }
.lmg-filter-bar .jet-checkboxes-list__row, .lmg-filter-bar .jet-radio-list__row { margin:0; padding:0; }
.lmg-filter-bar .jet-checkboxes-list__item, .lmg-filter-bar .jet-radio-list__item { display:flex; align-items:center; gap:9px; width:100%; padding:9px 14px; min-height:40px; box-sizing:border-box; }
.lmg-filter-bar .jet-checkboxes-list__input, .lmg-filter-bar .jet-radio-list__input { position:static !important; opacity:1 !important; width:16px; height:16px; margin:0; flex:0 0 auto; accent-color:var(--lmg-burgundy); }
.lmg-filter-bar .jet-checkboxes-list__button, .lmg-filter-bar .jet-radio-list__button { padding:0; border:0; background:transparent; flex:1 1 auto; }
.lmg-filter-bar .jet-checkboxes-list__label, .lmg-filter-bar .jet-radio-list__label { display:block; white-space:nowrap; line-height:1.35; }
.lmg-filter-bar__item--sort { flex:0 0 220px; max-width:220px; }
.lmg-filter-bar .jet-sorting { position:relative; display:block; }
.lmg-filter-bar .jet-sorting-label { margin:0 0 8px 0; }
.lmg-filter-bar .jet-sorting select { width:100%; min-width:0; }
@media (max-width:767px) { .lmg-filter-bar { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:12px 0; } .lmg-filter-bar__item, .lmg-filter-bar__item:last-child, .lmg-filter-bar__item--sort { flex:none; min-width:0; max-width:none; width:100%; margin-left:0; } .lmg-filter-bar__item--sort { grid-column:1 / -1; } .lmg-filter-bar .jet-checkboxes-list, .lmg-filter-bar .jet-radio-list { width:100%; max-width:100%; max-height:260px; } }

/* LMG JetSmartFilters toolbar refinement — added by Hermes */
.lmg-filter-bar .lmg-filter-bar__item--sort { flex:0 1 180px; min-width:150px; max-width:210px; }
.lmg-filter-bar .jet-sorting-label { display:none; }
.lmg-filter-bar .jet-sorting select { min-height:44px; height:44px; }
.ast-shop-toolbar-container .woocommerce-ordering { display:none; }
@media (max-width:544px) {
  .ast-header-break-point .ast-shop-toolbar-container { position:static !important; left:auto !important; right:auto !important; bottom:auto !important; display:block !important; z-index:auto !important; }
  .ast-header-break-point .ast-shop-toolbar-container .ast-shop-toolbar-aside-wrap { display:block !important; width:100% !important; max-width:100% !important; margin:0 !important; }
  .ast-header-break-point.ast-woocommerce-shop-page-modern-style ul.products { margin-top:1.5em !important; }
  .lmg-filter-bar { width:100% !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .lmg-filter-bar__item, .lmg-filter-bar__item:last-child, .lmg-filter-bar .lmg-filter-bar__item--sort { width:100% !important; min-width:0 !important; max-width:none !important; }
}

/* LMG mobile shop toolbar width fix — added by Hermes */
@media (max-width:544px) {
  .woocommerce .ast-shop-toolbar-container > .ast-shop-toolbar-aside-wrap,
  .ast-header-break-point .ast-shop-toolbar-container > .ast-shop-toolbar-aside-wrap {
    width:100% !important;
    max-width:none !important;
    flex:0 0 100% !important;
    float:none !important;
    clear:both !important;
    margin:0 !important;
  }
  .woocommerce .ast-shop-toolbar-container > .ast-shop-toolbar-aside-wrap + .ast-shop-toolbar-aside-wrap,
  .ast-header-break-point .ast-shop-toolbar-container > .ast-shop-toolbar-aside-wrap + .ast-shop-toolbar-aside-wrap {
    display:none !important;
  }
  .woocommerce .ast-shop-toolbar-container .lmg-filter-bar {
    width:100% !important;
    max-width:none !important;
  }
}
