.sajkuthir-shop{width:100%;padding:22px 0}
.sajkuthir-shop *{box-sizing:border-box}
.sajkuthir-shop-inner{width:min(calc(100% - 36px),1280px);margin:0 auto;display:grid;grid-template-columns:260px 1fr;gap:22px;align-items:start}

/* Sidebar */
.sajkuthir-shop-widget{background:var(--sh-card,#fff);border:1px solid rgba(0,0,0,.07);border-radius:10px;padding:14px 16px;margin-bottom:16px}
.sajkuthir-shop-widget h3{margin:0 0 10px;font-size:13px;font-weight:750;color:var(--sh-text,#4A4A4A)}
.sajkuthir-shop-cats{list-style:none;margin:0;padding:0}
.sajkuthir-shop-cats li{margin-bottom:2px}
.sajkuthir-shop-cat-btn{display:flex;width:100%;justify-content:space-between;background:none;border:none;padding:6px 4px;font-size:12.5px;color:var(--sh-text,#4A4A4A);cursor:pointer;border-radius:6px;text-align:left}
.sajkuthir-shop-cat-btn span{color:#999;font-size:11px}
.sajkuthir-shop-cat-btn:hover,.sajkuthir-shop-cat-btn.is-active{background:rgba(138,14,69,.08);color:var(--sh-accent,#8A0E45);font-weight:650}

.sajkuthir-shop-price-slider{position:relative;height:28px}
.sajkuthir-shop-price-slider input[type=range]{position:absolute;width:100%;top:10px;margin:0;pointer-events:none;-webkit-appearance:none;background:none}
.sajkuthir-shop-price-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:15px;height:15px;border-radius:50%;background:var(--sh-accent,#8A0E45);cursor:pointer;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.sajkuthir-shop-price-slider input[type=range]::-moz-range-thumb{pointer-events:auto;width:15px;height:15px;border-radius:50%;background:var(--sh-accent,#8A0E45);cursor:pointer;border:2px solid #fff}
.sajkuthir-shop-price-slider input[type=range]::-webkit-slider-runnable-track{background:transparent}
.sajkuthir-shop-price-track{position:absolute;top:13px;left:0;right:0;height:3px;background:#e7e2df;border-radius:3px}
.sajkuthir-shop-price-track i{position:absolute;top:0;bottom:0;background:var(--sh-accent,#8A0E45);border-radius:3px}
.sajkuthir-shop-price-labels{display:flex;justify-content:space-between;font-size:11.5px;color:var(--sh-text,#4A4A4A);margin-top:2px}
.sajkuthir-shop-apply-price{margin-top:10px;width:100%;padding:9px;border:none;border-radius:8px;background:var(--sh-cta,#8A0E45);color:#fff;font-size:12px;font-weight:700;cursor:pointer}
.sajkuthir-shop-apply-price:hover{opacity:.92}

.sajkuthir-shop-ratings{list-style:none;margin:0;padding:0}
.sajkuthir-shop-rating-btn{display:block;width:100%;text-align:left;background:none;border:none;padding:5px 4px;border-radius:6px;color:#d1a021;font-size:13px;cursor:pointer;letter-spacing:1px}
.sajkuthir-shop-rating-btn:hover,.sajkuthir-shop-rating-btn.is-active{background:rgba(138,14,69,.08)}

.sajkuthir-shop-check{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--sh-text,#4A4A4A);margin-bottom:6px;cursor:pointer}

.sajkuthir-shop-sidebar-head{display:none}
.sajkuthir-shop-backdrop{display:none}
.sajkuthir-shop-promo{background:linear-gradient(160deg,rgba(216,27,96,.10),rgba(138,14,69,.06));border-radius:12px;padding:18px;text-align:center;color:var(--sh-accent,#8A0E45)}
.sajkuthir-shop-promo-logo{max-height:34px;max-width:120px;object-fit:contain;margin:0 auto}
.sajkuthir-shop-promo strong{display:block;margin-top:8px;font-size:14px}
.sajkuthir-shop-promo span{display:block;font-size:11.5px;color:var(--sh-text,#4A4A4A);margin-top:2px}
.sajkuthir-shop-promo a{display:inline-block;margin-top:12px;background:var(--sh-accent,#8A0E45);color:#fff;text-decoration:none!important;font-size:12px;font-weight:700;padding:9px 18px;border-radius:8px}

/* Toolbar */
.sajkuthir-shop-toolbar{display:flex;align-items:center;gap:14px;background:var(--sh-card,#fff);border:1px solid rgba(0,0,0,.07);border-radius:10px;padding:10px 14px;margin-bottom:16px;flex-wrap:wrap}
.sajkuthir-shop-filter-toggle{display:none;align-items:center;gap:6px;background:var(--sh-accent,#8A0E45);color:#fff;border:none;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700;cursor:pointer}
.sajkuthir-shop-view-toggle{display:flex;gap:4px}
.sajkuthir-shop-view-btn{width:30px;height:30px;border-radius:7px;border:1px solid rgba(0,0,0,.1);background:#fff;color:#888;display:flex;align-items:center;justify-content:center;cursor:pointer}
.sajkuthir-shop-view-btn.is-active{background:var(--sh-accent,#8A0E45);border-color:var(--sh-accent,#8A0E45);color:#fff}
.sajkuthir-shop-result-count{font-size:12.5px;color:#8a8a8a;flex:1;min-width:120px}
.sajkuthir-shop-toolbar-right{display:flex;gap:14px;flex-wrap:wrap}
.sajkuthir-shop-toolbar-right label{font-size:12px;color:var(--sh-text,#4A4A4A);display:flex;align-items:center;gap:6px}
.sajkuthir-shop-toolbar-right select{font-size:12px;padding:6px 8px;border-radius:7px;border:1px solid rgba(0,0,0,.12)}

/* Grid / list */
.sajkuthir-shop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sajkuthir-shop-grid[data-view="list"]{grid-template-columns:1fr}

.sajkuthir-shop-card{background:var(--sh-card,#fff);border:1px solid rgba(138,14,69,.08);border-radius:13px;overflow:hidden;box-shadow:0 5px 18px rgba(70,25,40,.045);transition:.2s}
.sajkuthir-shop-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(70,25,40,.085)}
.sajkuthir-shop-image{position:relative;width:100%;padding-top:100%;height:0;background:#faf3ec;overflow:hidden}
.sajkuthir-shop-image>a{position:absolute;top:0;left:0;right:0;bottom:0;display:block}
.sajkuthir-shop-image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease;margin:0;padding:0}
.sajkuthir-shop-card:hover .sajkuthir-shop-image img{transform:scale(1.025)}
.sajkuthir-shop-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--sh-accent,#8A0E45);font-size:30px;font-weight:800}
.sajkuthir-shop-badge{position:absolute;top:9px;left:9px;z-index:2;color:#fff;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:750}
.sajkuthir-shop-badge-sale{background:var(--sh-badge,#D81B60)}
.sajkuthir-shop-badge-new{background:#1f8a4c}
.sajkuthir-shop-badge-best{background:var(--sh-accent,#8A0E45)}

.sajkuthir-shop-wish{position:absolute;top:8px;right:8px;z-index:2;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.92);border:none;display:flex;align-items:center;justify-content:center;color:#8a8a8a;cursor:pointer;padding:0;transition:.2s}
.sajkuthir-shop-wish:hover{color:var(--sh-badge,#D81B60)}

.sajkuthir-shop-info{padding:11px 12px 13px}
.sajkuthir-shop-name{display:block;color:var(--sh-text,#4A4A4A);font-size:12.5px;font-weight:650;text-decoration:none!important;line-height:1.35;height:33.5px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.sajkuthir-shop-rating{margin-top:5px;color:#c99720;font-size:10.5px;min-height:14px}
.sajkuthir-shop-rating small{color:#8b8b8b;margin-left:2px}
.sajkuthir-shop-rating-empty{visibility:hidden}
.sajkuthir-shop-price{margin-top:5px;color:var(--sh-accent,#8A0E45);font-size:13.5px;font-weight:750}
.sajkuthir-shop-price del{font-size:10.5px;opacity:.48;margin-right:4px;font-weight:500}
.sajkuthir-shop-price ins{text-decoration:none}

.sajkuthir-shop-actions{display:flex;gap:6px;margin-top:9px}
.sajkuthir-shop-btn{flex:1;text-align:center;padding:7px 4px;border-radius:7px;font-size:10.5px;font-weight:750;cursor:pointer;text-decoration:none!important;border:1px solid var(--sh-accent,#8A0E45);transition:.2s}
.sajkuthir-shop-cart{background:#fff;color:var(--sh-accent,#8A0E45)}
.sajkuthir-shop-cart:hover{background:var(--sh-accent,#8A0E45);color:#fff}
.sajkuthir-shop-cart.is-added{background:#1f8a4c;border-color:#1f8a4c;color:#fff}
.sajkuthir-shop-buynow{background:var(--sh-accent,#8A0E45);color:#fff}
.sajkuthir-shop-buynow:hover{opacity:.9}
.sajkuthir-shop-btn.is-busy{opacity:.6;pointer-events:none}

/* List view reflow — same markup, flex row */
.sajkuthir-shop-grid[data-view="list"] .sajkuthir-shop-card{display:flex;flex-direction:row}
.sajkuthir-shop-grid[data-view="list"] .sajkuthir-shop-image{flex:0 0 150px;width:150px;padding-top:0;height:150px}
.sajkuthir-shop-grid[data-view="list"] .sajkuthir-shop-info{flex:1;display:flex;flex-direction:column;justify-content:center}
.sajkuthir-shop-grid[data-view="list"] .sajkuthir-shop-name{height:auto;-webkit-line-clamp:1}
.sajkuthir-shop-grid[data-view="list"] .sajkuthir-shop-actions{max-width:260px}

.sajkuthir-shop-empty{grid-column:1/-1;text-align:center;color:#999;padding:30px 0}

.sajkuthir-shop-loader{display:none;justify-content:center;gap:5px;height:36px;align-items:center}
.sajkuthir-shop-loader.show{display:flex}
.sajkuthir-shop-loader i{width:6px;height:6px;border-radius:50%;background:var(--sh-accent,#8A0E45);animation:sspPulse 1s infinite ease-in-out}
.sajkuthir-shop-loader i:nth-child(2){animation-delay:.15s}
.sajkuthir-shop-loader i:nth-child(3){animation-delay:.3s}
@keyframes sspPulse{0%,80%,100%{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}

.sajkuthir-shop-pagination{display:flex;justify-content:center;gap:6px;margin-top:20px;flex-wrap:wrap}
.sajkuthir-shop-page-btn{min-width:32px;height:32px;padding:0 6px;border-radius:7px;border:1px solid rgba(0,0,0,.1);background:#fff;color:var(--sh-text,#4A4A4A);font-size:12.5px;cursor:pointer}
.sajkuthir-shop-page-btn.is-active{background:var(--sh-accent,#8A0E45);border-color:var(--sh-accent,#8A0E45);color:#fff}
.sajkuthir-shop-page-btn:disabled{opacity:.4;cursor:default}
.sajkuthir-shop-page-dots{align-self:center;color:#999;font-size:12px}

/* Trust bar — built defensively with flexbox (not grid) and forced
   icon/text sizing, so a theme's global CSS can't distort the layout. */
.sajkuthir-shop-trustbar{
  width:min(calc(100% - 36px),1280px);margin:26px auto 0;
  border-top:1px solid rgba(0,0,0,.08);padding-top:20px;
  display:flex;flex-wrap:wrap;gap:16px 20px;
}
.sajkuthir-shop-trust-item{
  flex:1 1 240px;min-width:0;
  display:flex;flex-direction:row;align-items:center;gap:10px;
  color:var(--sh-accent,#8A0E45);
}
.sajkuthir-shop-trust-item svg{flex:0 0 22px!important;width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important}
.sajkuthir-shop-trust-logo{flex:0 0 auto;max-height:28px!important;max-width:44px!important;width:auto!important;height:auto!important;object-fit:contain}
.sajkuthir-shop-trust-item div{display:flex;flex-direction:column;min-width:0;gap:1px;text-align:left}
.sajkuthir-shop-trust-item strong{font-size:12.5px;line-height:1.3;color:var(--sh-text,#4A4A4A);font-weight:700;margin:0;padding:0}
.sajkuthir-shop-trust-item span{font-size:10.5px;line-height:1.3;color:#999;margin:0;padding:0;font-weight:400}

/* Suppress default WooCommerce "View Cart" notice/link scoped to this plugin */
body.sajkuthir-shop-adding .woocommerce-message,
body.sajkuthir-shop-adding .woocommerce-notice,
body.sajkuthir-shop-adding .wc-block-components-notice-banner{display:none!important}
.sajkuthir-shop .added_to_cart,.sajkuthir-shop a.wc-forward{display:none!important}

/* Tablet */
@media(max-width:1024px){
  .sajkuthir-shop-inner{grid-template-columns:220px 1fr}
  .sajkuthir-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Mobile: sidebar becomes an off-canvas slide-in panel (overlay),
   never pushing the product grid down — it slides over the content
   and closes via the backdrop or the ✕ button. */
@media(max-width:767px){
  .sajkuthir-shop-inner{grid-template-columns:1fr}
  .sajkuthir-shop-filter-toggle{display:inline-flex}

  .sajkuthir-shop-sidebar{
    position:fixed;top:0;left:0;bottom:0;width:86%;max-width:320px;
    background:#faf7f5;z-index:1001;overflow-y:auto;
    padding:0 14px 20px;
    transform:translateX(-105%);transition:transform .28s ease;
    box-shadow:8px 0 24px rgba(0,0,0,.15);
  }
  .sajkuthir-shop-sidebar.is-open{transform:translateX(0)}
  .sajkuthir-shop-sidebar-head{
    display:flex;align-items:center;justify-content:space-between;
    position:sticky;top:0;background:#faf7f5;z-index:2;
    padding:14px 2px;margin-bottom:6px;border-bottom:1px solid rgba(0,0,0,.08);
  }
  .sajkuthir-shop-sidebar-head strong{font-size:14px;color:var(--sh-text,#4A4A4A)}
  .sajkuthir-shop-sidebar-close{background:none;border:none;font-size:16px;color:#888;cursor:pointer;padding:4px 8px}

  .sajkuthir-shop-backdrop{
    display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1000;
  }
  .sajkuthir-shop-backdrop.show{display:block}

  .sajkuthir-shop-widget{padding:12px 4px;margin-bottom:8px;border:none;border-bottom:1px solid rgba(0,0,0,.07);border-radius:0}
  .sajkuthir-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .sajkuthir-shop-toolbar{gap:10px;padding:9px 12px}
  .sajkuthir-shop-view-toggle{order:2}
  .sajkuthir-shop-result-count{order:3;width:100%;font-size:11.5px}
  .sajkuthir-shop-toolbar-right{order:4;width:100%;justify-content:space-between}
  .sajkuthir-shop-name{font-size:11px;height:29.7px}
  .sajkuthir-shop-price{font-size:12px}
  .sajkuthir-shop-actions{gap:4px}
  .sajkuthir-shop-btn{font-size:9.5px;padding:7px 3px}
  .sajkuthir-shop-badge{font-size:8px;top:6px;left:6px;padding:3px 6px}
  .sajkuthir-shop-wish{width:22px;height:22px;top:6px;right:6px}
  .sajkuthir-shop-trustbar{gap:14px 12px}
  .sajkuthir-shop-trust-item{flex:1 1 42%;min-width:150px}
  .sajkuthir-shop-grid[data-view="list"] .sajkuthir-shop-image{flex:0 0 96px;width:96px;padding-top:0;height:96px}
  .sajkuthir-shop-grid[data-view="list"] .sajkuthir-shop-actions{max-width:100%}
}

@media(max-width:360px){
  .sajkuthir-shop-grid{gap:7px}
  .sajkuthir-shop-info{padding:8px}
  .sajkuthir-shop-actions{flex-direction:column}
}
