.swpssp-lock { overflow: hidden !important; }
.swpssp-trigger {
  width: 100%; min-height: 46px; display: inline-flex; align-items: center; gap: 10px;
  border: 1px solid #e5e7eb; background: #fff; color: #6b7280; border-radius: 999px;
  padding: 0 18px; cursor: pointer; text-align: left; box-shadow: 0 8px 24px rgba(15,23,42,.06);
}
.swpssp-trigger-icon { font-size: 20px; color: var(--swpssp-accent,#ef4444); }
.swpssp-overlay { position: fixed; inset: 0; z-index: 999999; opacity: 0; pointer-events: none; transition: opacity .22s ease; font-family: inherit; }
.swpssp-overlay.is-open { opacity: 1; pointer-events: auto; }
.swpssp-backdrop { position: absolute; inset: 0; background: rgba(15,23,42,.62); backdrop-filter: blur(7px); }
.swpssp-panel {
  position: relative; z-index: 1; width: min(1180px, calc(100% - 32px)); height: min(88vh, 820px);
  margin: 5vh auto; background: var(--swpssp-bg,#fff); color: var(--swpssp-primary,#111827);
  border-radius: 28px; overflow: hidden; box-shadow: 0 34px 120px rgba(0,0,0,.28);
  display: flex; flex-direction: column; transform: translateY(18px) scale(.98); transition: transform .22s ease;
}
.swpssp-overlay.is-open .swpssp-panel { transform: translateY(0) scale(1); }
.swpssp-header { padding: 24px 28px 14px; display:flex; justify-content:space-between; align-items:flex-start; gap:16px; border-bottom: 1px solid #eef2f7; }
.swpssp-branding { display:flex; flex-direction:column; gap:4px; }
.swpssp-branding strong { font-size: clamp(20px, 3vw, 32px); line-height: 1.1; letter-spacing: -.03em; }
.swpssp-branding span { color:#64748b; font-size: 15px; }
.swpssp-close { width:44px; height:44px; border-radius:999px; border:1px solid #e5e7eb; background:#fff; color:#111827; font-size:32px; line-height:1; cursor:pointer; display:grid; place-items:center; }
.swpssp-close:hover { border-color:#cbd5e1; box-shadow:0 10px 30px rgba(15,23,42,.08); }
.swpssp-searchbar { margin: 20px 28px 10px; min-height: 62px; display:flex; align-items:center; gap:12px; border:2px solid #111827; border-radius: 20px; padding:0 16px; background:#fff; box-shadow: 0 16px 40px rgba(15,23,42,.08); }
.swpssp-search-icon { font-size: 28px; color: var(--swpssp-accent,#ef4444); }
.swpssp-searchbar input { flex:1; border:0 !important; outline:0 !important; box-shadow:none !important; font-size:20px; min-height:56px; padding:0 !important; background:transparent !important; color:#111827; }
.swpssp-clear { display:none; width:34px; height:34px; border:0; border-radius:999px; background:#f1f5f9; color:#334155; font-size:24px; cursor:pointer; line-height:1; }
.swpssp-status { min-height: 22px; padding: 0 32px; color:#64748b; font-size:13px; }
.swpssp-content { padding: 10px 28px 30px; overflow:auto; flex:1; }
.swpssp-query-title { font-size:18px; margin:4px 0 18px; color:#334155; }
.swpssp-section { margin: 0 0 28px; }
.swpssp-section-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.swpssp-section h3 { margin:0; font-size:18px; letter-spacing:-.02em; color:#111827; }
.swpssp-chip-row { display:flex; flex-wrap:wrap; gap:10px; }
.swpssp-chip { border:1px solid #e5e7eb; background:#f8fafc; color:#111827; border-radius:999px; padding:10px 14px; cursor:pointer; font-weight:700; }
.swpssp-chip:hover { border-color:var(--swpssp-accent,#ef4444); color:var(--swpssp-accent,#ef4444); background:#fff; }
.swpssp-category-grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:12px; }
.swpssp-category { display:flex; align-items:center; gap:12px; text-decoration:none !important; color:#111827; background:#f8fafc; border:1px solid #eef2f7; border-radius:18px; padding:12px; transition:.18s ease; }
.swpssp-category:hover { transform:translateY(-2px); box-shadow:0 14px 34px rgba(15,23,42,.08); border-color:#dbe2ea; }
.swpssp-category img, .swpssp-category-placeholder { width:54px; height:54px; border-radius:14px; object-fit:cover; background:#fff; display:grid; place-items:center; color:#94a3b8; flex:0 0 auto; }
.swpssp-category span:not(.swpssp-category-placeholder) { display:flex; flex-direction:column; gap:2px; min-width:0; }
.swpssp-category strong { font-size:15px; line-height:1.15; }
.swpssp-category small { color:#64748b; font-size:12px; }
.swpssp-product-grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:16px; }
.swpssp-product { background:#fff; border:1px solid #eef2f7; border-radius:22px; overflow:hidden; box-shadow:0 8px 24px rgba(15,23,42,.05); display:flex; flex-direction:column; min-width:0; transition:.18s ease; }
.swpssp-product:hover { transform:translateY(-3px); box-shadow:0 18px 42px rgba(15,23,42,.1); }
.swpssp-product-img { display:block; aspect-ratio: 1/ .82; background:#f8fafc; padding:14px; text-align:center; }
.swpssp-product-img img { width:100%; height:100%; object-fit:contain; }
.swpssp-product-body { padding:14px; display:flex; flex-direction:column; gap:8px; flex:1; }
.swpssp-badges { min-height:24px; display:flex; gap:6px; flex-wrap:wrap; }
.swpssp-badge { font-size:11px; font-weight:800; border-radius:999px; padding:4px 8px; background:#f1f5f9; color:#334155; }
.swpssp-badge.sale { background:#fee2e2; color:#b91c1c; }
.swpssp-badge.stock { background:#dcfce7; color:#166534; }
.swpssp-product-title { color:#111827 !important; text-decoration:none !important; font-weight:800; font-size:14px; line-height:1.25; min-height:36px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.swpssp-sku { color:#94a3b8; font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.swpssp-price { font-weight:900; font-size:17px; color:#111827; margin-top:auto; }
.swpssp-price del { color:#94a3b8; font-weight:600; margin-right:4px; }
.swpssp-price ins { text-decoration:none; color:var(--swpssp-accent,#ef4444); }
.swpssp-actions { display:flex; gap:8px; align-items:center; margin-top:6px; }
.swpssp-view, .swpssp-cart { flex:1; text-align:center; border-radius:12px; padding:10px 8px; font-weight:800; text-decoration:none !important; font-size:13px; }
.swpssp-view { background:var(--swpssp-primary,#111827); color:#fff !important; }
.swpssp-cart { background:var(--swpssp-accent,#ef4444); color:#fff !important; }
.swpssp-loading, .swpssp-empty { border:1px dashed #cbd5e1; background:#f8fafc; border-radius:20px; padding:28px; color:#64748b; text-align:center; }
.swpssp-empty strong { color:#111827; font-size:18px; display:block; margin-bottom:6px; }
.swpssp-spinner { display:inline-block; width:16px; height:16px; margin-right:8px; vertical-align:-3px; border:2px solid #cbd5e1; border-top-color:var(--swpssp-accent,#ef4444); border-radius:999px; animation: swpsspSpin .7s linear infinite; }
@keyframes swpsspSpin { to { transform: rotate(360deg); } }

@media (max-width: 900px) {
  .swpssp-panel { width:100%; height:100%; margin:0; border-radius:0; }
  .swpssp-header { padding:18px 16px 12px; }
  .swpssp-branding strong { font-size:22px; }
  .swpssp-branding span { font-size:13px; }
  .swpssp-close { width:40px; height:40px; font-size:30px; }
  .swpssp-searchbar { margin:14px 14px 8px; min-height:56px; border-radius:16px; }
  .swpssp-searchbar input { font-size:16px; min-height:50px; }
  .swpssp-status { padding:0 18px; }
  .swpssp-content { padding:10px 14px 22px; }
  .swpssp-category-grid { grid-template-columns: 1fr 1fr; gap:10px; }
  .swpssp-product-grid { grid-template-columns: 1fr 1fr; gap:12px; }
  .swpssp-product-body { padding:11px; }
  .swpssp-product-title { font-size:13px; }
  .swpssp-actions { flex-direction:column; }
  .swpssp-view, .swpssp-cart { width:100%; }
}

@media (max-width: 420px) {
  .swpssp-category-grid { grid-template-columns: 1fr; }
  .swpssp-product-grid { grid-template-columns: 1fr; }
  .swpssp-product { flex-direction:row; align-items:stretch; }
  .swpssp-product-img { width:34%; aspect-ratio:auto; flex:0 0 34%; }
  .swpssp-badges { min-height:0; }
}

/* V3.0 PRO */
.swpssp-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:20px;border-radius:22px;background:linear-gradient(135deg,var(--swpssp-primary),#374151);color:#fff;box-shadow:0 18px 50px rgba(17,24,39,.16)}
.swpssp-banner strong{display:block;font-size:18px;margin-bottom:4px}.swpssp-banner p{margin:0;opacity:.9}.swpssp-banner a{background:#fff;color:var(--swpssp-primary);padding:10px 16px;border-radius:999px;text-decoration:none;font-weight:800;white-space:nowrap}.swpssp-redirect{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;padding:14px 16px;border:1px solid rgba(239,68,68,.22);background:rgba(239,68,68,.06);border-radius:18px}.swpssp-redirect span{font-weight:700;color:var(--swpssp-primary)}.swpssp-redirect a{background:var(--swpssp-accent);color:#fff;text-decoration:none;padding:9px 14px;border-radius:999px;font-weight:800}.swpssp-layout-compact .swpssp-product-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.swpssp-layout-compact .swpssp-product{display:grid;grid-template-columns:84px 1fr;min-height:0}.swpssp-layout-compact .swpssp-product-img{height:100%;min-height:120px}.swpssp-layout-compact .swpssp-product-body{padding:12px}.swpssp-layout-compact .swpssp-product-title{font-size:14px;-webkit-line-clamp:2}@media(max-width:680px){.swpssp-banner,.swpssp-redirect{align-items:flex-start;flex-direction:column}.swpssp-banner a,.swpssp-redirect a{width:100%;text-align:center}.swpssp-layout-compact .swpssp-product{grid-template-columns:96px 1fr}}

/* V4.0 Visual Builder */
.swpssp-panel{background:var(--swpssp-bg,#fff);color:var(--swpssp-text,#111827);border-radius:var(--swpssp-radius,24px)}
.swpssp-branding strong,.swpssp-section h3,.swpssp-product-title,.swpssp-empty strong,.swpssp-query-title strong{color:var(--swpssp-text,#111827)!important}.swpssp-branding span,.swpssp-status,.swpssp-sku,.swpssp-category small,.swpssp-query-title{color:var(--swpssp-muted,#64748b)}
.swpssp-searchbar{border-color:var(--swpssp-primary,#111827);border-radius:calc(var(--swpssp-radius,24px) - 4px)}.swpssp-product,.swpssp-category{background:var(--swpssp-card-bg,#fff);border-radius:var(--swpssp-radius,24px)}
.swpssp-product-grid{grid-template-columns:repeat(var(--swpssp-desktop-cols,4),minmax(0,1fr))}.swpssp-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.swpssp-desktop-modal{width:min(940px,calc(100% - 42px));height:min(80vh,720px);margin:8vh auto}.swpssp-desktop-dropdown{width:100%;height:min(72vh,680px);margin:0;border-radius:0 0 var(--swpssp-radius,24px) var(--swpssp-radius,24px)}.swpssp-desktop-sidebar_right,.swpssp-desktop-sidebar_left{width:min(520px,100%);height:100%;margin:0;border-radius:0}.swpssp-desktop-sidebar_right{margin-left:auto}.swpssp-desktop-sidebar_left{margin-right:auto}.swpssp-desktop-sidebar_right .swpssp-product-grid,.swpssp-desktop-sidebar_left .swpssp-product-grid{grid-template-columns:1fr}.swpssp-desktop-sidebar_right .swpssp-product,.swpssp-desktop-sidebar_left .swpssp-product{display:grid;grid-template-columns:120px 1fr}.swpssp-desktop-sidebar_right .swpssp-product-img,.swpssp-desktop-sidebar_left .swpssp-product-img{height:100%;min-height:130px}
.swpssp-cardstyle-compact .swpssp-product{display:grid;grid-template-columns:110px 1fr}.swpssp-cardstyle-compact .swpssp-product-img{height:100%;min-height:130px}.swpssp-cardstyle-compact .swpssp-actions{flex-direction:row}.swpssp-cardstyle-visual .swpssp-product-img{aspect-ratio:1/.95;padding:0}.swpssp-cardstyle-visual .swpssp-product-img img{object-fit:cover}.swpssp-cardstyle-visual .swpssp-sku{display:none}.swpssp-cardstyle-technical .swpssp-product{display:grid;grid-template-columns:96px 1fr;border-radius:14px}.swpssp-cardstyle-technical .swpssp-product-img{height:100%;min-height:116px}.swpssp-cardstyle-technical .swpssp-product-title{min-height:0}.swpssp-cardstyle-technical .swpssp-sku{display:block;color:var(--swpssp-primary,#111827);font-weight:800}.swpssp-cardstyle-technical .swpssp-badges{min-height:0}
.swpssp-catstyle-chips .swpssp-category-grid{display:flex;flex-wrap:wrap;gap:10px}.swpssp-catstyle-chips .swpssp-category{border-radius:999px;padding:9px 13px}.swpssp-catstyle-chips .swpssp-category img,.swpssp-catstyle-chips .swpssp-category-placeholder{width:34px;height:34px;border-radius:999px}.swpssp-catstyle-chips .swpssp-category small{display:none}.swpssp-catstyle-list .swpssp-category-grid{display:grid;grid-template-columns:1fr;gap:8px}.swpssp-catstyle-list .swpssp-category{border-radius:12px;padding:10px}.swpssp-catstyle-list .swpssp-category img,.swpssp-catstyle-list .swpssp-category-placeholder{width:42px;height:42px;border-radius:10px}
@media (max-width: 1024px) and (min-width: 681px){.swpssp-product-grid{grid-template-columns:repeat(var(--swpssp-tablet-cols,2),minmax(0,1fr))}.swpssp-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.swpssp-tablet-modal{width:min(820px,calc(100% - 28px));height:min(86vh,760px);margin:6vh auto;border-radius:var(--swpssp-radius,24px)}.swpssp-tablet-bottomsheet{width:100%;height:82vh;margin:18vh 0 0;border-radius:28px 28px 0 0}.swpssp-tablet-sidebar_right{width:min(560px,100%);height:100%;margin:0 0 0 auto;border-radius:0}.swpssp-tablet-fullscreen{width:100%;height:100%;margin:0;border-radius:0}}
@media (max-width:680px){.swpssp-product-grid{grid-template-columns:repeat(var(--swpssp-mobile-cols,1),minmax(0,1fr))}.swpssp-mobile-bottomsheet{width:100%;height:86vh;margin:14vh 0 0;border-radius:28px 28px 0 0}.swpssp-mobile-sidebar_right,.swpssp-mobile-sidebar_left{width:min(92vw,430px);height:100%;margin:0;border-radius:0}.swpssp-mobile-sidebar_right{margin-left:auto}.swpssp-mobile-sidebar_left{margin-right:auto}.swpssp-mobile-fullscreen{width:100%;height:100%;margin:0;border-radius:0}.swpssp-mobile-bottomsheet .swpssp-header{padding-top:16px}.swpssp-mobile-bottomsheet:before{content:"";width:46px;height:5px;border-radius:999px;background:#cbd5e1;display:block;margin:10px auto 0}.swpssp-cardstyle-visual.swpssp-mobile-bottomsheet .swpssp-product{display:flex;flex-direction:column}.swpssp-cardstyle-visual.swpssp-mobile-bottomsheet .swpssp-product-img{width:100%;aspect-ratio:1/.78}.swpssp-catstyle-chips .swpssp-category-grid{flex-wrap:nowrap;overflow:auto;padding-bottom:4px}.swpssp-catstyle-chips .swpssp-category{white-space:nowrap;flex:0 0 auto}}


/* V4.0.3 - Corrección UX móvil: búsqueda limpia y categorías en 2 columnas */
@media (max-width: 680px) {
  .swpssp-category-grid,
  .swpssp-catstyle-cards .swpssp-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .swpssp-category {
    min-width: 0 !important;
    gap: 8px !important;
    padding: 8px !important;
    border-radius: 14px !important;
    align-items: center !important;
  }

  .swpssp-category img,
  .swpssp-category-placeholder {
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
  }

  .swpssp-category span:not(.swpssp-category-placeholder) {
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .swpssp-category strong {
    font-size: 12px !important;
    line-height: 1.15 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    word-break: normal !important;
  }

  .swpssp-category small {
    display: none !important;
  }

  /* Cuando hay término de búsqueda en móvil, se elimina ruido visual y se deja solo listado de productos. */
  .swpssp-overlay.swpssp-has-term .swpssp-banner,
  .swpssp-overlay.swpssp-has-term .swpssp-redirect,
  .swpssp-overlay.swpssp-has-term .swpssp-suggestions,
  .swpssp-overlay.swpssp-has-term .swpssp-categories-section,
  .swpssp-overlay.swpssp-has-term .swpssp-query-title {
    display: none !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-content {
    padding-top: 4px !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-products-section {
    margin-top: 0 !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-products-section .swpssp-section-head {
    margin-bottom: 8px !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-product-grid,
  .swpssp-overlay.swpssp-has-term.swpssp-layout-compact .swpssp-product-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-product,
  .swpssp-overlay.swpssp-has-term.swpssp-layout-compact .swpssp-product {
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    align-items: stretch !important;
    border-radius: 16px !important;
    min-height: 118px !important;
    box-shadow: 0 6px 18px rgba(15,23,42,.06) !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-product-img,
  .swpssp-overlay.swpssp-has-term.swpssp-layout-compact .swpssp-product-img {
    width: auto !important;
    height: 100% !important;
    min-height: 118px !important;
    aspect-ratio: auto !important;
    padding: 9px !important;
    flex: initial !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-product-body {
    padding: 10px 10px 10px 6px !important;
    gap: 5px !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-badges {
    min-height: 0 !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-badge {
    font-size: 10px !important;
    padding: 3px 7px !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-product-title {
    min-height: 0 !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    -webkit-line-clamp: 2 !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-sku {
    display: none !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-price {
    font-size: 15px !important;
    margin-top: 0 !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-actions {
    flex-direction: row !important;
    gap: 6px !important;
    margin-top: 3px !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-view,
  .swpssp-overlay.swpssp-has-term .swpssp-cart {
    width: auto !important;
    padding: 8px 7px !important;
    font-size: 11px !important;
    border-radius: 10px !important;
  }
}

@media (max-width: 360px) {
  .swpssp-category-grid,
  .swpssp-catstyle-cards .swpssp-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .swpssp-category {
    padding: 7px !important;
    gap: 6px !important;
  }

  .swpssp-category img,
  .swpssp-category-placeholder {
    width: 32px !important;
    height: 32px !important;
  }

  .swpssp-category strong {
    font-size: 11px !important;
  }

  .swpssp-overlay.swpssp-has-term .swpssp-product,
  .swpssp-overlay.swpssp-has-term.swpssp-layout-compact .swpssp-product {
    grid-template-columns: 82px minmax(0, 1fr) !important;
  }
}


/* V4.0.4 - Botón para ver todos los resultados */
.swpssp-view-all-wrap {
  display: flex;
  justify-content: center;
  margin: 20px 0 4px;
}
.swpssp-view-all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 12px 22px;
  border-radius: var(--swpssp-radius, 24px);
  background: var(--swpssp-primary, #111827);
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
  box-shadow: 0 12px 30px rgba(15,23,42,.16);
  transition: transform .18s ease, opacity .18s ease;
}
.swpssp-view-all:hover { transform: translateY(-1px); opacity: .92; }
@media (max-width: 767px) {
  .swpssp-view-all-wrap { margin: 14px 0 8px; }
  .swpssp-view-all { width: 100%; border-radius: 14px; min-height: 48px; }
}


/* V4.0.5 - Escritorio más ordenado: categorías a la izquierda y productos a la derecha */
@media (min-width: 1025px) {
  .swpssp-desktop-results-layout {
    display: grid;
    grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    margin-top: 4px;
  }

  .swpssp-desktop-results-layout .swpssp-categories-section {
    position: sticky;
    top: 0;
    align-self: start;
    margin: 0;
    padding: 16px;
    border: 1px solid #eef2f7;
    border-radius: calc(var(--swpssp-radius, 24px) - 4px);
    background: rgba(248, 250, 252, .78);
  }

  .swpssp-desktop-results-layout .swpssp-categories-section .swpssp-section-head {
    margin-bottom: 12px;
  }

  .swpssp-desktop-results-layout .swpssp-categories-section .swpssp-section-head h3 {
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--swpssp-muted, #64748b) !important;
  }

  .swpssp-desktop-results-layout .swpssp-category-grid,
  .swpssp-desktop-results-layout .swpssp-catstyle-cards .swpssp-category-grid,
  .swpssp-desktop-results-layout .swpssp-catstyle-list .swpssp-category-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  .swpssp-desktop-results-layout .swpssp-category {
    padding: 10px !important;
    border-radius: 14px !important;
    box-shadow: none !important;
  }

  .swpssp-desktop-results-layout .swpssp-category:hover {
    transform: translateX(3px) !important;
  }

  .swpssp-desktop-results-layout .swpssp-category img,
  .swpssp-desktop-results-layout .swpssp-category-placeholder {
    width: 42px !important;
    height: 42px !important;
    border-radius: 11px !important;
  }

  .swpssp-desktop-results-layout .swpssp-category strong {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  .swpssp-desktop-results-layout .swpssp-products-section {
    min-width: 0;
    margin: 0;
  }

  .swpssp-desktop-results-layout .swpssp-products-section .swpssp-section-head h3 {
    font-size: 20px;
  }

  .swpssp-desktop-results-layout .swpssp-product-grid {
    grid-template-columns: repeat(var(--swpssp-desktop-cols, 4), minmax(0, 1fr));
  }

  .swpssp-desktop-results-layout .swpssp-categories-section:only-child,
  .swpssp-desktop-results-layout .swpssp-products-section:only-child {
    grid-column: 1 / -1;
  }

  .swpssp-desktop-sidebar_right .swpssp-desktop-results-layout,
  .swpssp-desktop-sidebar_left .swpssp-desktop-results-layout,
  .swpssp-desktop-modal .swpssp-desktop-results-layout {
    grid-template-columns: 1fr;
  }

  .swpssp-desktop-sidebar_right .swpssp-desktop-results-layout .swpssp-category-grid,
  .swpssp-desktop-sidebar_left .swpssp-desktop-results-layout .swpssp-category-grid,
  .swpssp-desktop-modal .swpssp-desktop-results-layout .swpssp-category-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (min-width: 1025px) and (max-width: 1180px) {
  .swpssp-desktop-results-layout {
    grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
    gap: 18px;
  }
}
