/* By XZRO LLC — XZRO Products Division */

.xrsp{ position:relative; display:block; }
.xrsp__form{ margin:0; }
.xrsp__input{
  width:100%;
  box-sizing:border-box;
  padding:10px 12px;
  font-size:14px;
}

.xrsp__dropdown{
  position:absolute;
  left:0;
  right:0;
  top:100%;
  margin-top:var(--xrsp-dd-gap, 4px);
  background:#fff;
  border:1px solid rgba(0,0,0,.14);
  border-radius:var(--xrsp-dd-radius, 16px);
  box-shadow:var(--xrsp-dd-shadow, 0 12px 28px rgba(0,0,0,.14));
  z-index:999999;
  overflow:hidden;
  font-family: var(--xrsp-dd-font-family, inherit);
  letter-spacing: var(--xrsp-dd-letter-spacing, normal);
  line-height: var(--xrsp-dd-line-height, normal);
}

.xrsp__items{ max-height: var(--xrsp-items-max, 520px); overflow:auto; padding:6px 0; }
.xrsp__items{ -webkit-overflow-scrolling: touch; }
.xrsp__status{
  padding:10px 12px;
  font-size:12px;
  opacity:.75;
}

/* Mobile dropdown bar (close button) */
.xrsp__bar{ display:none; align-items:center; justify-content:flex-end; padding:8px 10px; border-bottom:1px solid rgba(0,0,0,.08); background:#fff; position:sticky; top:0; z-index:2; }
.xrsp__close{ width:36px; height:36px; border-radius:10px; border:1px solid rgba(0,0,0,.18); background:#fff; font-size:22px; line-height:34px; cursor:pointer; }
.xrsp__close:hover{ background:#f3f3f3; }

/* No-results panel */
.xrsp-noresults{
  padding:10px 12px;
  border-top:1px solid rgba(0,0,0,.08);
  background:#fff;
}
.xrsp-noresults__title{
  font-size:13px;
  font-weight:700;
}
.xrsp-noresults__tips{
  margin-top:6px;
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:12px;
  opacity:.85;
}
.xrsp-noresults__link{
  font-weight:700;
  text-decoration:none;
}
.xrsp-noresults__link:hover{ text-decoration:underline; }
.xrsp-noresults__clear{
  padding:6px 10px;
  font-size:12px;
  font-weight:700;
  border:1px solid rgba(0,0,0,.18);
  background:#fff;
  border-radius:8px;
  cursor:pointer;
}
.xrsp-noresults__clear:hover{ background:#f3f3f3; }
/* Group headers */
.xrsp-group{
  padding:8px 12px;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.02em;
  background:#fff;
  border-top:1px solid rgba(0,0,0,.08);
  border-bottom:1px solid rgba(0,0,0,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.xrsp-group:first-child{ border-top:none; }

.xrsp-group__count{ opacity:.65; font-weight:700; }

/* View-more row (per group) */
.xrsp-viewmore{
  display:block;
  padding:10px 12px;
  border-top:1px dashed rgba(0,0,0,.12);
  background:#fff;
  text-align:center;
  font-size:13px;
  font-weight:600;
  text-decoration:none;
  color:inherit;
}
.xrsp-viewmore:hover{ background:#f2f2f2; }
.xrsp-viewmore.is-active{ background:#e9e9e9; }

.xrsp-row.is-hidden{ display:none; }


/* Compact rows */
.xrsp-row{
  display:flex;
  align-items:center;
  gap:10px;
  padding:var(--xrsp-row-pad-y,10px) var(--xrsp-row-pad-x,14px);
  text-decoration:none;
  color:inherit;
  border-top:var(--xrsp-divider-w,1px) solid rgba(0,0,0,var(--xrsp-divider-alpha,.08));
}
.xrsp-group + .xrsp-row{ border-top:none; }
.xrsp-row:hover{ background:#f2f2f2; }
.xrsp-row.is-active{ background:#e9e9e9; }
.xrsp-row__img img{
  width:var(--xrsp-thumb, 64px);
  height:var(--xrsp-thumb, 64px);
  object-fit:cover;
  border-radius:var(--xrsp-thumb-radius, 999px);
  border:1px solid rgba(0,0,0,.12);
}

.xrsp-row__title{
  display:block;
  font-weight:var(--xrsp-dd-title-weight, 700);
  font-size:var(--xrsp-dd-title-size, 13px);
  line-height:var(--xrsp-dd-line-height, 1.25);
}

.xrsp-row__main{ flex:1; min-width:0; }
.xrsp-row__sku{
  display:block;
  margin-top:2px;
  font-size:var(--xrsp-dd-meta-size, 12px);
  line-height:var(--xrsp-dd-line-height, 1.25);
  opacity:.85;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.xrsp-row__desc{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:var(--xrsp-dd-desc-lines, 1);
  overflow:hidden;
  margin-top:4px;
  font-size:var(--xrsp-dd-desc-size, 12px);
  line-height:var(--xrsp-dd-line-height, 1.25);
  opacity:.75;
}

.xrsp-row__right{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
  min-width:var(--xrsp-right-min, 92px);
}

.xrsp-row__badges{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  justify-content:flex-end;
}

.xrsp-badge{
  display:inline-block;
  padding:2px 7px;
  font-size:11px;
  font-weight:700;
  line-height:1.3;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.18);
  background:#fff;
  opacity:.92;
}
.xrsp-row__price{
  font-size:var(--xrsp-price-size, 13px);
  font-weight:var(--xrsp-price-weight, 400);
  opacity:.9;
  white-space:nowrap;
}
.xrsp-row__stock{
  font-size:12px;
  opacity:var(--xrsp-stock-opacity, .75);
  white-space:nowrap;
  background:var(--xrsp-stock-bg, transparent);
  border:var(--xrsp-stock-border, 0);
  border-radius:var(--xrsp-stock-radius, 0);
  padding:var(--xrsp-stock-pad, 0);
}

/* View-all row */
.xrsp-viewall{
  display:block;
  padding:10px 12px;
  border-top:1px solid rgba(0,0,0,.08);
  background:#fff;
  text-align:center;
  font-size:13px;
  font-weight:600;
  text-decoration:none;
  color:inherit;
}
.xrsp-viewall{ text-decoration:underline; }
.xrsp-viewall:hover{ background:#f6f6f6; }
.xrsp-viewall.is-active{ background:#e9e9e9; }

/* Floating dropdown (bind to theme/header search inputs) */
.xrsp-floating{
  position:absolute;
  background:#fff;
  border:1px solid rgba(0,0,0,.14);
  border-radius:var(--xrsp-dd-radius, 16px);
  box-shadow:var(--xrsp-dd-shadow, 0 12px 28px rgba(0,0,0,.14));
  z-index:999999;
  overflow:hidden;
  min-width:var(--xrsp-floating-min-width, 420px);
  max-width:var(--xrsp-floating-max-width, 640px);
  font-family:var(--xrsp-dd-font-family, inherit);
  letter-spacing:var(--xrsp-dd-letter-spacing, normal);
  line-height:var(--xrsp-dd-line-height, normal);
}

.xrsp-floating--above{ transform: translateY(-100%); }

/* Mobile UX pass */

/* Results typography (optional). These variables are set by the plugin only when enabled. */
body.search.search-results .xrsp-results-toolbar,
body.search.search-results .xrsp-results-summary,
body.search.search-results .woocommerce ul.products li.product,
body.search.search-results .xrsp-results-meta,
body.search.search-results .xrsp-results-breadcrumb,
body.search.search-results .xrsp-results-short{
  font-family: var(--xrsp-res-font-family, inherit);
  line-height: var(--xrsp-res-line-height, normal);
}

body.search.search-results .woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family: var(--xrsp-res-font-family, inherit);
  font-size: var(--xrsp-res-title-size, inherit);
  font-weight: var(--xrsp-res-title-weight, inherit);
  line-height: var(--xrsp-res-line-height, normal);
}

body.search.search-results .xrsp-results-meta,
body.search.search-results .xrsp-results-breadcrumb{
  font-size: var(--xrsp-res-meta-size, inherit);
}

body.search.search-results .woocommerce ul.products li.product .price{
  font-size: var(--xrsp-res-price-size, inherit);
  font-weight: var(--xrsp-res-price-weight, inherit);
}

body.search.search-results .xrsp-results-short{
  font-size: var(--xrsp-res-short-size, inherit);
}


@media (max-width: 782px){
  .xrsp__input{ padding:12px 14px; font-size:16px; }
  .xrsp__bar{ display:flex; }
  .xrsp__dropdown{ border-radius:var(--xrsp-dd-radius,14px); }
  .xrsp__items{ max-height: 60vh; }
  .xrsp-row{ padding:14px 14px; gap:12px; }
  .xrsp-row__desc{ font-size:var(--xrsp-dd-desc-size, 13px); }
  .xrsp-row__price{ font-size:14px; }
  .xrsp-row__stock{ font-size:var(--xrsp-dd-meta-size, 13px); }
  .xrsp-badge{ font-size:12px; padding:3px 8px; }
  .xrsp-viewall{ padding:14px 14px; }
  .xrsp-viewmore{ padding:14px 14px; }
  .xrsp-noresults{ padding:12px 14px; }
  .xrsp-floating{ min-width:auto; max-width:none; border-radius:var(--xrsp-dd-radius,14px); }
}

/* xrsp-search-results: keep product thumbnails reasonable on search results pages */
body.search.search-results .woocommerce ul.products li.product img { max-width: 220px; height: auto; }

/* Search results layout controls (Grid/List + card fields) */
body.xrsp-results-list .woocommerce ul.products{
  display:block;
}
body.xrsp-results-list .woocommerce ul.products li.product{
  width:100% !important;
  float:none !important;
  clear:both;
  margin-right:0 !important;
}
body.xrsp-results-list .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  display:flex;
  gap:16px;
  align-items:flex-start;
}
body.xrsp-results-list .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img{
  width:140px;
  max-width:140px;
  height:auto;
}
body.xrsp-results-list .woocommerce ul.products li.product .woocommerce-loop-product__title{
  margin-top:0;
}

.xrsp-results-meta{
  margin-top:6px;
  font-size:13px;
  line-height:1.2;
}
.xrsp-stock{
  display:inline-block;
  padding:3px 8px;
  border:1px solid rgba(0,0,0,.12);
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}

.xrsp-sku{
  display:inline-block;
  font-size:12px;
  font-weight:700;
  opacity:.85;
}

.xrsp-results-breadcrumb{
  margin-top:6px;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  opacity:.75;
}

.xrsp-results-short{
  margin-top:8px;
  font-size:13px;
  line-height:1.35;
  opacity:.9;
}

/* Search results toolbar (search page only) */
body.search .xrsp-results-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  margin: 0 0 16px 0;
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:12px;
}
body.search .xrsp-results-summary{
  font-weight:800;
  color:#111;
}
body.search .xrsp-results-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}

body.search .xrsp-sort-wrap{
  display:flex;
  align-items:center;
  gap:6px;
}
body.search .xrsp-sort-label{
  font-weight:800;
  color:#111;
}
body.search .xrsp-sort-select{
  padding:8px 10px;
  border:1px solid rgba(0,0,0,.12);
  border-radius:10px;
  font-weight:800;
  color:#111;
  background:#fff;
}

body.search .xrsp-view-btn,
body.search .xrsp-clear-btn{
  display:inline-block;
  padding:8px 10px;
  border:1px solid rgba(0,0,0,.12);
  border-radius:10px;
  text-decoration:none;
  font-weight:800;
  color:#111;
  background:#fff;
}
body.search .xrsp-view-btn.is-active{
  background:rgba(0,0,0,.06);
}

@media (max-width: 782px){
  body.search .xrsp-results-toolbar{ flex-direction:column; align-items:stretch; }
  body.search .xrsp-results-actions{ justify-content:space-between; }
}

/* Ecommerce dropdown presentation */
.xrsp-dropdown--ecommerce,
.xrsp-floating.xrsp-dropdown--ecommerce{
  width:min(var(--xrsp-ecom-width,1100px),calc(100vw - 24px));
  max-width:none;
  border:1px solid #d8dee8;
  border-radius:var(--xrsp-dd-radius, 16px);
  box-shadow:var(--xrsp-dd-shadow, 0 12px 28px rgba(0,0,0,.14));
  background:#fff;
}
.xrsp-dropdown--ecommerce .xrsp__items{
  max-height:var(--xrsp-ecom-max-height,720px);
  padding:0;
  overflow:auto;
  overscroll-behavior:contain;
  background:#fff;
}
.xrsp-ecom{background:#fff;color:#111827;font-family:inherit;}

/* Popular category rail */
.xrsp-ecom__categories{padding:14px 18px 16px;border-bottom:1px solid #e5e9f0;background:#fff;}
.xrsp-ecom__categories-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;}
.xrsp-ecom__categories-label{margin:0;font-size:15px;line-height:1.2;font-weight:800;color:#111827;}
.xrsp-ecom__categories-all{appearance:none;padding:0;border:0;background:transparent;font-size:12px;font-weight:700;color:#1d4ed8;text-decoration:none;white-space:nowrap;cursor:pointer;}
.xrsp-ecom__categories-all:hover{background:transparent;color:#1e40af;text-decoration:underline;}
.xrsp-ecom__categories-all:focus-visible{outline:2px solid #2563eb;outline-offset:3px;border-radius:3px;}
.xrsp-ecom__categories-rail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;}
.xrsp-ecom-category--extra{display:none;}
.xrsp-ecom__categories.is-expanded .xrsp-ecom-category--extra{display:grid;}
.xrsp-ecom__categories.is-expanded .xrsp-ecom__categories-rail{grid-template-columns:repeat(5,minmax(0,1fr));}
.xrsp-ecom-category{
  appearance:none;display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;
  min-height:66px;padding:6px 10px 6px 6px;border:1px solid #d9dee7;border-radius:7px;background:#fff;
  color:#172033;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.xrsp-ecom-category:hover,.xrsp-ecom-category.is-active{border-color:#2563eb;background:#f8fbff;box-shadow:0 0 0 1px rgba(37,99,235,.10);}
.xrsp-ecom-category__media{display:flex;width:54px;height:52px;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--xrsp-thumb-radius,5px);background:#f4f6f9;}
.xrsp-ecom-category__media img{width:100%;height:100%;display:block;object-fit:cover;}
.xrsp-ecom-category__placeholder{font-size:20px;font-weight:900;color:#94a3b8;}
.xrsp-ecom-category__name{min-width:0;font-size:var(--xrsp-dd-meta-size,12px);line-height:var(--xrsp-dd-line-height,1.25);font-weight:var(--xrsp-dd-title-weight,700);overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;}
.xrsp-ecom-category:focus-visible,.xrsp-ecom__filter-toggle:focus-visible,.xrsp-ecom__reset:focus-visible,.xrsp-ecom__sort:focus-visible,.xrsp-ecom__range:focus-visible{outline:2px solid #2563eb;outline-offset:2px;}

/* Main panel */
.xrsp-ecom__body{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:470px;background:#fff;}
.xrsp-ecom__filters{padding:17px 18px 18px;border-right:1px solid #e5e9f0;background:#fff;}
.xrsp-ecom__filters-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;}
.xrsp-ecom__filters-title{margin:0;font-size:16px;line-height:1.2;font-weight:800;color:#111827;}
.xrsp-ecom__reset{appearance:none;border:0;background:transparent;padding:3px;color:#2563eb;font-size:11px;font-weight:800;cursor:pointer;}
.xrsp-ecom__filter-group{padding:15px 0;border-top:1px solid #edf0f4;}
.xrsp-ecom__filter-group:first-of-type{border-top:0;padding-top:10px;}
.xrsp-ecom__filter-heading{margin-bottom:10px;font-size:13px;font-weight:800;color:#111827;}
.xrsp-ecom__check{display:flex;align-items:flex-start;gap:8px;margin:8px 0;font-size:12px;line-height:1.3;color:#475569;cursor:pointer;}
.xrsp-ecom__check input{width:15px;height:15px;margin:0;flex:0 0 auto;accent-color:#1d4ed8;}
.xrsp-ecom__check span{min-width:0;}
.xrsp-ecom__price-value{display:flex;align-items:center;min-height:32px;margin-top:12px;padding:6px 8px;border:1px solid #d9dee7;border-radius:6px;background:#fff;font-size:11px;font-weight:700;color:#334155;}
.xrsp-ecom__price-controls{position:relative;height:24px;margin:7px 2px 0;}
.xrsp-ecom__range{position:absolute;left:0;top:3px;width:100%;height:18px;margin:0;background:transparent;pointer-events:none;accent-color:#1d4ed8;}
.xrsp-ecom__range::-webkit-slider-thumb{pointer-events:auto;cursor:pointer;}
.xrsp-ecom__range::-moz-range-thumb{pointer-events:auto;cursor:pointer;}

.xrsp-ecom__results{min-width:0;padding:17px 18px 18px;background:#fff;}
.xrsp-ecom__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;}
.xrsp-ecom__toolbar-left{display:flex;align-items:center;gap:9px;min-width:0;}
.xrsp-ecom__filter-toggle{display:none;appearance:none;height:36px;padding:0 12px;border:1px solid #d9dee7;border-radius:6px;background:#fff;color:#111827;font-size:12px;font-weight:800;cursor:pointer;}
.xrsp-ecom__count{font-size:14px;line-height:1.3;font-weight:800;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.xrsp-ecom__sort{min-width:190px;height:38px;border:1px solid #d9dee7;border-radius:6px;background:#fff;padding:0 10px;color:#334155;font-size:12px;font-weight:600;}

/* Product grid/cards */
.xrsp-ecom__grid{display:grid;grid-template-columns:repeat(var(--xrsp-ecom-columns,3),minmax(0,1fr));gap:var(--xrsp-row-pad-y,10px);}
.xrsp-ecom-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:var(--xrsp-divider-w,1px) solid rgba(15,23,42,var(--xrsp-divider-alpha,.08));border-radius:min(var(--xrsp-dd-radius,16px),12px);background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.03);}
.xrsp-ecom-card__media{display:block;aspect-ratio:1.32/1;background:#f6f7f9;overflow:hidden;}
.xrsp-ecom-card__media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .18s ease;}
.xrsp-ecom-card:hover .xrsp-ecom-card__media img{transform:scale(1.02);}
.xrsp-ecom-card__content{display:flex;flex:1;flex-direction:column;padding:var(--xrsp-row-pad-y,10px) var(--xrsp-row-pad-x,14px);}
.xrsp-ecom-card__category{margin-bottom:4px;color:#64748b;font-size:var(--xrsp-dd-meta-size,12px);font-weight:800;text-transform:uppercase;letter-spacing:var(--xrsp-dd-letter-spacing,.04em);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.xrsp-ecom-card__title{min-height:33px;color:#172033;text-decoration:none;font-size:var(--xrsp-dd-title-size,13px);font-weight:var(--xrsp-dd-title-weight,700);line-height:var(--xrsp-dd-line-height,1.27);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.xrsp-ecom-card__title:hover{color:#1d4ed8;}
.xrsp-ecom-card__desc{display:var(--xrsp-dd-desc-display,none);-webkit-box-orient:vertical;-webkit-line-clamp:var(--xrsp-dd-desc-lines,1);overflow:hidden;margin-top:4px;color:#64748b;font-size:var(--xrsp-dd-desc-size,12px);line-height:var(--xrsp-dd-line-height,1.25);}
.xrsp-ecom-card__price{margin-top:8px;color:#111827;font-size:var(--xrsp-ecom-price-size,14px);font-weight:var(--xrsp-ecom-price-weight,800);line-height:var(--xrsp-dd-line-height,1.2);}
.xrsp-ecom-card__price ins{text-decoration:none;}
.xrsp-ecom-card__price del{opacity:.5;font-size:11px;font-weight:600;}
.xrsp-ecom-card__stock{position:relative;margin-top:7px;padding:var(--xrsp-stock-pad,0);padding-left:var(--xrsp-stock-left-pad,13px);color:#15803d;font-size:var(--xrsp-dd-meta-size,11px);font-weight:700;line-height:var(--xrsp-dd-line-height,1.2);background:var(--xrsp-stock-bg,transparent);border:var(--xrsp-stock-border,0);border-radius:var(--xrsp-stock-radius,0);opacity:var(--xrsp-stock-opacity,1);}
.xrsp-ecom-card__stock:before{content:"";display:var(--xrsp-stock-dot-display,block);position:absolute;left:0;top:50%;width:8px;height:8px;border-radius:50%;background:#22c55e;transform:translateY(-50%);}
.xrsp-ecom-card__stock[data-stock="outofstock"]{color:#dc2626;}
.xrsp-ecom-card__stock[data-stock="outofstock"]:before{background:#ef4444;}
.xrsp-ecom-card__stock[data-stock="onbackorder"]{color:#a16207;}
.xrsp-ecom-card__stock[data-stock="onbackorder"]:before{background:#eab308;}
.xrsp-ecom-card__action{display:flex;align-items:center;justify-content:center;min-height:36px;margin-top:10px;padding:7px 10px;border-radius:5px;background:#1f4e9d;color:#fff;font-size:11px;font-weight:800;text-decoration:none;text-align:center;}
.xrsp-ecom-card__action:hover{background:#173e81;color:#fff;text-decoration:none;}
.xrsp-ecom-card__action:focus-visible{outline:2px solid #2563eb;outline-offset:2px;}
.xrsp-ecom-card--no-media .xrsp-ecom-card__content{padding-top:13px;}
.xrsp-ecom__filtered-empty{padding:36px 14px;text-align:center;color:#64748b;font-size:13px;font-weight:700;border:1px dashed #d9dee7;border-radius:8px;background:#fbfcfe;}

/* Footer */
.xrsp-ecom__footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 18px;border-top:1px solid #e5e9f0;background:#fff;}
.xrsp-ecom__footer-count{font-size:11px;font-weight:600;color:#64748b;}
.xrsp-ecom__viewall{appearance:none;display:inline;padding:0;border:0;background:transparent;color:#1d4ed8;font-size:11px;font-weight:800;text-decoration:underline;text-align:right;cursor:pointer;}
.xrsp-ecom__viewall:hover{background:transparent;color:#1e40af;}
.xrsp-ecom__viewall[disabled]{opacity:.6;cursor:wait;}
.xrsp-dropdown--ecommerce.xrsp-dropdown--expanded .xrsp__items{max-height:min(1200px,90dvh)!important;}

@media (max-width:1100px){
  .xrsp-ecom__body{grid-template-columns:210px minmax(0,1fr);}
  .xrsp-ecom__categories-rail{grid-template-columns:repeat(4,minmax(0,1fr));}
  .xrsp-ecom__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:960px){
  .xrsp-dropdown--ecommerce,.xrsp-floating.xrsp-dropdown--ecommerce{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;border-radius:var(--xrsp-dd-radius,9px);}
  .xrsp-dropdown--ecommerce .xrsp__items{max-height:min(var(--xrsp-ecom-max-height,720px),calc(100vh - 110px));}
  .xrsp-ecom__categories{padding:11px 12px 12px;}
  .xrsp-ecom__categories-head{margin-bottom:9px;}
  .xrsp-ecom__categories-label{font-size:14px;}
  .xrsp-ecom__categories-rail{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px;}
  .xrsp-ecom__categories.is-expanded .xrsp-ecom__categories-rail{display:flex;flex-wrap:wrap;overflow-x:hidden;}
  .xrsp-ecom__categories.is-expanded .xrsp-ecom-category{flex:1 1 180px;}
  .xrsp-ecom__categories.is-expanded .xrsp-ecom-category--extra{display:grid;}
  .xrsp-ecom-category{flex:0 0 180px;min-height:58px;grid-template-columns:46px minmax(0,1fr);}
  .xrsp-ecom-category__media{width:46px;height:44px;}
  .xrsp-ecom__body{display:block;min-height:0;}
  .xrsp-ecom__filters{display:none;border-right:0;border-bottom:1px solid #e5e9f0;padding:12px 14px;max-height:43vh;overflow:auto;}
  .xrsp-ecom--filters-open .xrsp-ecom__filters{display:block;}
  .xrsp-ecom__filter-toggle{display:inline-flex;align-items:center;justify-content:center;}
  .xrsp-ecom__results{padding:11px 12px 12px;}
  .xrsp-ecom__toolbar{position:sticky;top:0;z-index:3;margin:-11px -12px 11px;padding:10px 12px;background:#fff;border-bottom:1px solid #edf0f4;}
  .xrsp-ecom__sort{min-width:155px;max-width:48%;}
  .xrsp-ecom__footer{padding:10px 12px;}
}

@media (max-width:560px){
  .xrsp-dropdown--ecommerce,
  .xrsp-floating.xrsp-dropdown--ecommerce{
    box-sizing:border-box;
    width:calc(100vw - 16px)!important;
    max-width:calc(100vw - 16px)!important;
    min-width:0!important;
    overflow:hidden;
  }
  .xrsp-dropdown--ecommerce *,
  .xrsp-floating.xrsp-dropdown--ecommerce *{box-sizing:border-box;min-width:0;}
  .xrsp-dropdown--ecommerce .xrsp__items{
    width:100%;
    max-width:100%;
    max-height:min(var(--xrsp-ecom-max-height,720px),calc(100dvh - 118px));
    overflow-x:hidden;
    overflow-y:auto;
  }
  .xrsp-ecom{width:100%;max-width:100%;overflow-x:hidden;}
  .xrsp-ecom__categories{overflow:hidden;}
  .xrsp-ecom__categories-all{font-size:11px;}
  .xrsp-ecom__categories-rail{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;}
  .xrsp-ecom-category{flex:0 0 148px;}
  .xrsp-ecom__categories.is-expanded .xrsp-ecom__categories-rail{display:flex;flex-wrap:wrap;overflow-x:hidden;}
  .xrsp-ecom__categories.is-expanded .xrsp-ecom-category{flex:1 1 calc(50% - 4px);max-width:calc(50% - 4px);}
  .xrsp-ecom__body,
  .xrsp-ecom__results,
  .xrsp-ecom__grid{width:100%;max-width:100%;overflow-x:hidden;}
  .xrsp-ecom__toolbar{align-items:stretch;flex-direction:column;gap:8px;}
  .xrsp-ecom__toolbar-left{justify-content:space-between;width:100%;}
  .xrsp-ecom__filter-toggle{flex:0 0 auto;}
  .xrsp-ecom__count{font-size:12px;white-space:normal;text-align:right;}
  .xrsp-ecom__sort{width:100%;max-width:none;min-width:0;}
  .xrsp-ecom__grid{grid-template-columns:minmax(0,1fr);gap:10px;}
  .xrsp-ecom-card,
  .xrsp-ecom-card--no-media{display:flex;width:100%;max-width:100%;flex-direction:column;overflow:hidden;}
  .xrsp-ecom-card__media{
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:16/10;
    overflow:hidden;
    background:#f6f7f9;
  }
  .xrsp-ecom-card__media img{
    position:static;
    width:100%;
    height:100%;
    display:block;
    object-fit:contain;
    object-position:center;
    transform:none!important;
  }
  .xrsp-ecom-card__content{position:static;display:flex;width:100%;flex-direction:column;padding:11px 12px 12px;}
  .xrsp-ecom-card__category,
  .xrsp-ecom-card__title,
  .xrsp-ecom-card__price,
  .xrsp-ecom-card__stock,
  .xrsp-ecom-card__action{position:static;max-width:100%;}
  .xrsp-ecom-card__title{min-height:0;}
  .xrsp-ecom-card__action{width:100%;min-height:38px;margin-top:9px;}
  .xrsp-ecom__footer{align-items:flex-start;flex-direction:column;gap:5px;}
  .xrsp-ecom__viewall{text-align:left;}
  .xrsp-dropdown--ecommerce.xrsp-dropdown--expanded .xrsp__items{max-height:calc(100dvh - 24px)!important;}
}



/* Bound search bar + Search By selector
   The control is anchored to the real input bounds by JavaScript. This keeps
   Divi/theme form geometry intact while giving Search By its own reliable menu. */
.xrsp-searchbar-form.xrsp-searchby-form{
  --xrsp-searchby-width:132px;
  position:relative!important;
}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-control{
  position:absolute!important;
  z-index:10001;
  width:var(--xrsp-searchby-width)!important;
  min-width:var(--xrsp-searchby-width)!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-toggle{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:6px!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0 10px!important;
  box-sizing:border-box!important;
  border:1px solid #d7dce2!important;
  border-radius:var(--xrsp-searchbar-radius,4px) 0 0 var(--xrsp-searchbar-radius,4px)!important;
  background:#fff!important;
  color:#1d2327!important;
  font:inherit!important;
  line-height:1.2!important;
  text-align:left!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-label{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-caret{
  flex:0 0 auto!important;
  font-size:11px!important;
  line-height:1!important;
}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-menu{
  display:none;
  position:absolute!important;
  z-index:10002!important;
  left:0!important;
  top:calc(100% + 4px)!important;
  width:max(100%,180px)!important;
  min-width:180px!important;
  max-width:min(280px,calc(100vw - 24px))!important;
  max-height:320px!important;
  overflow:auto!important;
  padding:5px!important;
  box-sizing:border-box!important;
  border:1px solid #d7dce2!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(0,0,0,.16)!important;
}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-control.is-open .xrsp-searchby-menu{display:block!important;}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-option{
  display:block!important;
  width:100%!important;
  min-height:34px!important;
  margin:0!important;
  padding:7px 9px!important;
  box-sizing:border-box!important;
  border:0!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#1d2327!important;
  font:inherit!important;
  line-height:1.25!important;
  text-align:left!important;
  cursor:pointer!important;
}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-option:hover,
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-option:focus{background:#f0f6fc!important;outline:none!important;}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-option.is-active{font-weight:700!important;background:#eaf2ff!important;}
.xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchbar-bound{
  min-width:0!important;
  margin:0!important;
  padding-left:calc(var(--xrsp-searchby-inset,132px) + 10px)!important;
}
@media(max-width:782px){
  .xrsp-searchbar-form.xrsp-searchby-form{--xrsp-searchby-width:108px;}
  .xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchby-toggle{padding-left:8px!important;padding-right:8px!important;}
  .xrsp-searchbar-form.xrsp-searchby-form .xrsp-searchbar-bound{padding-left:calc(var(--xrsp-searchby-inset,108px) + 8px)!important;}
}

