.kkwb-front{
  direction:rtl;
  box-sizing:border-box;
  width:100%;
  min-width:0;
  margin:0;
  background:var(--kkwb-bg);
  padding:var(--kkwb-pt) var(--kkwb-pi) var(--kkwb-pb);
  border-radius:var(--kkwb-section-radius);
  border:0 solid transparent;
  font-family:inherit!important;
  transition:background-color .18s ease,border-color .18s ease;
}
.kkwb-front,.kkwb-front *{box-sizing:border-box;font-family:inherit!important}
.kkwb-inner{width:100%;min-width:0;margin:0;padding:0}
.kkwb-title{
  margin:0 4px 10px;
  padding:0;
  color:var(--kkwb-title-color);
  font-size:var(--kkwb-title-font);
  line-height:1.45;
  font-weight:800;
}

/* تک‌رنگ: زمینه خیلی ملایم متناسب با رنگ اصلی، بدون کادر کلی. */
.kkwb-theme-mono{border-width:0;background:var(--kkwb-bg)}
/* رنگارنگ: زمینه و کادر با دسته فعال هماهنگ می‌شوند. */
.kkwb-theme-colorful{
  background:var(--kkwb-active-soft);
  border-width:var(--kkwb-box-border-width);
  border-color:var(--kkwb-box-border-color);
}

.kkwb-category-strip{
  display:flex;
  align-items:flex-start;
  gap:var(--kkwb-gap);
  width:100%;
  min-width:0;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  overscroll-behavior-inline:contain;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
  padding:var(--kkwb-strip-pt) var(--kkwb-strip-pi) var(--kkwb-strip-pb);
  margin:0;
  background:transparent;
}
.kkwb-category-strip::-webkit-scrollbar,.kkwb-carousel::-webkit-scrollbar{display:none}
.kkwb-cat-btn{
  appearance:none;
  -webkit-appearance:none;
  flex:0 0 calc((100% - (var(--kkwb-desktop-icon-visible) - 1)*var(--kkwb-gap))/var(--kkwb-desktop-icon-visible));
  min-width:76px;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0 2px 2px!important;
  margin:0!important;
  cursor:pointer;
  color:var(--kkwb-icon-text);
  text-align:center;
  scroll-snap-align:start;
  -webkit-tap-highlight-color:transparent;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  font:inherit!important;
}
.kkwb-icon{
  width:var(--kkwb-icon-size);
  height:var(--kkwb-icon-size);
  flex:0 0 var(--kkwb-icon-size);
  display:grid;
  place-items:center;
  margin:0 auto;
  padding:0;
  border-radius:var(--kkwb-icon-radius);
  background:var(--kkwb-icon-bg);
  color:var(--kkwb-primary);
  border:1px solid rgba(20,20,20,.06);
  box-shadow:0 3px 10px rgba(22,22,22,.04);
  overflow:hidden;
  transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease;
}
.kkwb-svg-mask{
  width:max(24%,calc(100% - (2 * var(--kkwb-icon-pad))));
  height:max(24%,calc(100% - (2 * var(--kkwb-icon-pad))));
  background:currentColor;
  -webkit-mask:var(--kkwb-icon-url) center/contain no-repeat;
  mask:var(--kkwb-icon-url) center/contain no-repeat;
}
.kkwb-icon.custom-image{padding:var(--kkwb-icon-pad)}
.kkwb-icon.custom-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  margin:0!important;
  border-radius:max(0px,calc(var(--kkwb-icon-radius) - 6px));
}
.kkwb-cat-name{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  width:100%;
  margin:6px 0 0;
  min-height:2.9em;
  padding:0;
  color:var(--kkwb-icon-text);
  font-size:var(--kkwb-cat-font)!important;
  line-height:1.45!important;
  font-weight:650;
  text-align:center;
  overflow-wrap:anywhere;
  word-break:normal;
}
.kkwb-cat-btn:hover .kkwb-icon{transform:translateY(-1px);box-shadow:0 5px 14px rgba(20,20,20,.065)}
.kkwb-cat-btn:focus-visible{outline:0}
.kkwb-cat-btn:focus-visible .kkwb-icon{box-shadow:0 0 0 3px rgba(0,0,0,.08)}

.kkwb-theme-mono .kkwb-icon{background:var(--kkwb-primary-soft);color:var(--kkwb-primary);border-color:color-mix(in srgb,var(--kkwb-primary) 12%,transparent)}
.kkwb-theme-mono .kkwb-cat-btn.active .kkwb-icon{background:var(--kkwb-primary);color:#fff;border-color:var(--kkwb-primary);box-shadow:0 5px 16px color-mix(in srgb,var(--kkwb-primary) 18%,transparent)}
.kkwb-theme-mono .kkwb-cat-btn.active .kkwb-cat-name{color:var(--kkwb-primary);font-weight:800}
.kkwb-theme-colorful .kkwb-icon{background:var(--kkwb-cat-soft);color:var(--kkwb-cat-color);border-color:color-mix(in srgb,var(--kkwb-cat-color) 16%,transparent)}
.kkwb-theme-colorful .kkwb-cat-btn.active .kkwb-icon{background:var(--kkwb-cat-color);color:#fff;border-color:var(--kkwb-cat-color);box-shadow:0 5px 16px color-mix(in srgb,var(--kkwb-cat-color) 20%,transparent)}
.kkwb-theme-colorful .kkwb-cat-btn.active .kkwb-cat-name{color:var(--kkwb-cat-color);font-weight:800}

.kkwb-dynamic{position:relative;min-width:0;margin:0;padding:0}
.kkwb-carousel-wrap{
  position:relative;
  min-width:0;
  margin:var(--kkwb-carousel-mt) 0 0;
  padding:0;
  border-radius:var(--kkwb-carousel-radius);
  overflow:hidden;
  opacity:0;
  transform:translateY(-2px);
  background:var(--kkwb-carousel-bg);
  border:1px solid transparent;
  transition:opacity .15s ease,transform .15s ease,background-color .18s ease,border-color .18s ease;
}
.kkwb-carousel-wrap[hidden]{display:none!important}
.kkwb-carousel-wrap.open{opacity:1;transform:none}
.kkwb-theme-mono .kkwb-carousel-wrap{background:rgba(255,255,255,.66);border-color:transparent}
.kkwb-theme-colorful .kkwb-carousel-wrap{background:var(--kkwb-panel-soft);border-color:color-mix(in srgb,var(--kkwb-panel-color) 24%,transparent)}
.kkwb-persistent .kkwb-carousel-wrap.open{overflow:visible}
.kkwb-carousel{
  display:flex;
  align-items:stretch;
  gap:var(--kkwb-gap);
  width:100%;
  min-width:0;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  padding:var(--kkwb-carousel-pt) var(--kkwb-carousel-pi) var(--kkwb-carousel-pb);
  margin:0;
}
.kkwb-product-slide{
  flex:0 0 calc((100% - (var(--kkwb-product-desktop-visible) - 1)*var(--kkwb-gap))/var(--kkwb-product-desktop-visible));
  min-width:0;
  scroll-snap-align:start;
  display:flex;
}
.kkwb-product-card{
  width:100%;
  min-width:0;
  height:auto;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  background:var(--kkwb-card-bg);
  border:1px solid var(--kkwb-card-border);
  border-radius:var(--kkwb-card-radius);
  overflow:hidden;
  box-shadow:0 2px 9px rgba(20,20,20,.03);
}
.kkwb-product-media{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  background:#fff;
  overflow:hidden;
  text-decoration:none!important;
  border-radius:0!important;
}
.kkwb-product-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.kkwb-product-body{display:flex;flex-direction:column;flex:1;padding:9px 9px 10px;min-width:0}
.kkwb-product-name{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  min-height:2.9em;
  margin:0!important;
  padding:0!important;
  color:inherit!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-weight:700!important;
  text-decoration:none!important;
}
.kkwb-product-price{
  min-height:2.75em;
  margin:6px 0 0!important;
  padding:0!important;
  display:flex;
  align-items:center;
  align-content:center;
  gap:5px;
  flex-wrap:wrap;
  font-size:12.5px!important;
  line-height:1.35!important;
  font-weight:800!important;
}
.kkwb-product-price del,
.kkwb-product-price del .woocommerce-Price-amount{
  opacity:.55;
  font-size:.9em!important;
  font-weight:500!important;
  text-decoration:line-through!important;
}
.kkwb-product-price ins,
.kkwb-product-price ins .woocommerce-Price-amount{
  text-decoration:none!important;
  font-weight:850!important;
}
.kkwb-product-price>.woocommerce-Price-amount{font-weight:800!important}
.kkwb-product-price .woocommerce-Price-amount{white-space:nowrap}
.kkwb-product-price.is-empty{visibility:hidden}
.kkwb-product-feature{
  min-height:1.65em;
  margin:4px 0 0!important;
  padding:0!important;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  color:#777!important;
  font-size:10.5px!important;
  line-height:1.65!important;
}
.kkwb-product-feature.is-empty{visibility:hidden}
.kkwb-feature-label{font-weight:650;color:#555!important}

.kkwb-seo-details{
  margin:0 var(--kkwb-carousel-pi) var(--kkwb-carousel-pb);
  padding:0;
  border-top:1px solid color-mix(in srgb,var(--kkwb-panel-color,var(--kkwb-primary)) 12%,transparent);
  font-size:12px;
  line-height:1.9;
}
.kkwb-seo-details summary{cursor:pointer;padding:8px 2px 4px;font-weight:700;color:inherit;list-style-position:inside}
.kkwb-seo-copy{padding:2px 2px 8px;color:#555}
.kkwb-seo-copy p{margin:0 0 .7em}.kkwb-seo-copy p:last-child{margin-bottom:0}

@media(max-width:1024px){
  .kkwb-cat-btn{flex-basis:calc((100% - 4*var(--kkwb-gap))/5);min-width:74px}
}
@media(max-width:767px){
  .kkwb-front{padding:var(--kkwb-pt) var(--kkwb-pi) var(--kkwb-pb);border-radius:min(var(--kkwb-section-radius),18px)}
  .kkwb-title{margin:0 3px 8px;font-size:var(--kkwb-title-font)!important;line-height:1.4}
  .kkwb-category-strip{gap:9px}
  /* همیشه ۲.۷ دسته در عرض موبایل؛ باقی با اسکرول افقی. */
  .kkwb-category-strip .kkwb-cat-btn{flex:0 0 calc((100% - 1.7*9px)/2.7);min-width:0;max-width:none}
  .kkwb-icon{width:min(var(--kkwb-icon-size),66px);height:min(var(--kkwb-icon-size),66px);flex-basis:min(var(--kkwb-icon-size),66px)}
  .kkwb-cat-name{font-size:var(--kkwb-cat-font)!important;margin-top:5px;min-height:2.9em;line-height:1.45!important}
  .kkwb-carousel{gap:9px;padding-top:var(--kkwb-carousel-pt);padding-bottom:var(--kkwb-carousel-pb)}
  /* همیشه ۲.۷ کارت محصول، مستقل از طول متن و اندازه آیکون. */
  .kkwb-product-slide{flex:0 0 calc((100% - 1.7*9px)/2.7);min-width:0}
  .kkwb-product-body{padding:7px 7px 8px}
  .kkwb-product-name{font-size:11.5px!important;line-height:1.45!important;min-height:2.9em}
  .kkwb-product-price{font-size:10.5px!important;margin-top:4px!important;min-height:2.7em}
  .kkwb-product-feature{font-size:9.5px!important;margin-top:2px!important}
  .kkwb-seo-details{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.kkwb-front,.kkwb-icon,.kkwb-carousel-wrap{transition:none!important}}

/* 0.6.1 — breathing room inside product cards + centered price */
.kkwb-product-body{padding:11px 11px 12px}
.kkwb-product-name{margin:0 0 2px!important}
.kkwb-product-price{
  width:100%;
  justify-content:center;
  text-align:center;
  margin:8px 0 0!important;
  gap:6px;
}
.kkwb-product-feature{margin:6px 0 0!important}
@media(max-width:767px){
  .kkwb-product-body{padding:9px 8px 10px}
  .kkwb-product-name{margin-bottom:2px!important}
  .kkwb-product-price{margin-top:7px!important;justify-content:center;text-align:center}
  .kkwb-product-feature{margin-top:5px!important}
}

/* 0.6.3 — cleaner cards, WooCommerce/theme price color, one-row color swatches */
.kkwb-product-body{
  padding:12px 11px 13px;
  gap:7px;
}
.kkwb-product-name,
.kkwb-product-price,
.kkwb-product-feature{margin:0!important}
.kkwb-product-name{min-height:2.9em}
.kkwb-product-price{
  width:100%;
  min-height:2.75em;
  justify-content:center;
  text-align:center;
  /* no price color here: WooCommerce / the active theme owns it */
}
.kkwb-product-price del{opacity:.55}
.kkwb-product-feature{
  min-height:24px;
  width:100%;
  overflow:hidden;
  color:inherit!important;
}
.kkwb-product-swatches{
  width:100%;
  min-width:0;
  height:24px;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-start;
  gap:5px;
  overflow-x:auto;
  overflow-y:hidden;
  white-space:nowrap;
  scrollbar-width:none;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  padding:1px 0;
}
.kkwb-product-swatches::-webkit-scrollbar{display:none}
.kkwb-color-swatch{
  flex:0 0 16px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:var(--kkwb-swatch);
  border:1px solid rgba(0,0,0,.14);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);
}
.kkwb-color-chip{
  flex:0 0 auto;
  max-width:78px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  border:1px solid rgba(0,0,0,.1);
  border-radius:999px;
  padding:2px 6px;
  font-size:9.5px!important;
  line-height:1.45!important;
  color:inherit!important;
  background:rgba(255,255,255,.58);
}
@media(max-width:767px){
  .kkwb-carousel{gap:10px}
  .kkwb-product-slide{flex-basis:calc((100% - 1.7*10px)/2.7)}
  .kkwb-product-body{padding:10px 9px 11px;gap:5px}
  .kkwb-product-price{margin:0!important}
  .kkwb-product-feature{margin:0!important;min-height:22px}
  .kkwb-product-swatches{height:22px;gap:4px}
  .kkwb-color-swatch{width:14px;height:14px;flex-basis:14px}
  .kkwb-color-chip{font-size:8.5px!important;padding:2px 5px;max-width:64px}
}

/* 0.6.4 — product card rhythm: image → name → colors → price */
.kkwb-product-body{
  padding:var(--kkwb-card-pt) var(--kkwb-card-pi) var(--kkwb-card-pb);
  gap:0;
}
.kkwb-product-name{
  margin:0!important;
}
.kkwb-product-feature{
  margin:var(--kkwb-name-color-gap) 0 0!important;
}
.kkwb-product-price{
  margin:var(--kkwb-color-price-gap) 0 0!important;
  justify-content:center;
  text-align:center;
}
/* When color display is disabled, keep a clean direct name → price gap. */
.kkwb-product-name + .kkwb-product-price{
  margin-top:var(--kkwb-color-price-gap)!important;
}
/* Colors must stay on exactly one visual row; extra colors scroll horizontally. */
.kkwb-product-feature,
.kkwb-product-swatches{
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
}
.kkwb-product-swatches{
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
@media(max-width:767px){
  .kkwb-product-body{
    padding:var(--kkwb-card-pt) var(--kkwb-card-pi) var(--kkwb-card-pb);
    gap:0;
  }
  .kkwb-product-feature{margin-top:var(--kkwb-name-color-gap)!important}
  .kkwb-product-price{margin-top:var(--kkwb-color-price-gap)!important}
  .kkwb-product-name + .kkwb-product-price{margin-top:var(--kkwb-color-price-gap)!important}
}

/* 0.7.0 — nine selectable layouts + desktop mouse drag */
.kkwb-drag-scroll{cursor:grab;scroll-behavior:auto}
.kkwb-drag-scroll.is-dragging{cursor:grabbing!important;scroll-snap-type:none!important}
.kkwb-drag-scroll.is-dragging,.kkwb-drag-scroll.is-dragging *{user-select:none!important;-webkit-user-select:none!important}
.kkwb-cat-count{display:none;margin:2px 0 0;font-size:9.5px!important;line-height:1.35!important;opacity:.58;color:inherit!important;white-space:nowrap}
.kkwb-panel-head{display:none;align-items:center;gap:8px;min-width:0}
.kkwb-panel-head-icon{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:max(0px,calc(var(--kkwb-icon-radius) * .55));overflow:hidden;color:currentColor}
.kkwb-panel-head-icon .kkwb-svg-mask{width:20px;height:20px;background:currentColor}
.kkwb-panel-head-icon.custom-image img{width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important}
.kkwb-panel-head strong{font-size:13px;line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kkwb-panel-head>span:last-child{margin-inline-start:auto;font-size:10px;opacity:.72;white-space:nowrap}

/* Model 1 — text underline tabs */
.kkwb-layout-1 .kkwb-category-strip{gap:4px;border-bottom:1px solid color-mix(in srgb,var(--kkwb-primary) 12%,#ddd);padding-bottom:0}
.kkwb-layout-1 .kkwb-cat-btn{position:relative;flex:0 0 auto;min-width:120px;padding:8px 14px 10px!important}
.kkwb-layout-1 .kkwb-icon{display:none}
.kkwb-layout-1 .kkwb-cat-name{margin:0;min-height:0;-webkit-line-clamp:1;white-space:nowrap;font-size:max(12px,var(--kkwb-cat-font))!important}
.kkwb-layout-1 .kkwb-cat-btn::after{content:"";position:absolute;right:14px;left:14px;bottom:-1px;height:2px;background:transparent;border-radius:2px}
.kkwb-layout-1 .kkwb-cat-btn.active::after{background:var(--kkwb-cat-color,var(--kkwb-primary))}
.kkwb-layout-1 .kkwb-carousel-wrap{margin-top:10px}

/* Model 2 — classic icon cards: base style intentionally preserved */
.kkwb-layout-2 .kkwb-category-strip{align-items:flex-start}

/* Model 3 — side rail on desktop */
@media(min-width:768px){
  .kkwb-layout-3 .kkwb-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,190px);grid-template-areas:"title title" "dynamic cats";gap:12px 16px;align-items:start}
  .kkwb-layout-3 .kkwb-title{grid-area:title}
  .kkwb-layout-3 .kkwb-category-strip{grid-area:cats;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;max-height:560px;gap:7px;padding:4px}
  .kkwb-layout-3 .kkwb-dynamic{grid-area:dynamic;min-width:0}
  .kkwb-layout-3 .kkwb-cat-btn{width:100%;min-width:0;flex:0 0 auto;display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto;gap:8px;align-items:center;text-align:right;padding:7px!important;border:1px solid color-mix(in srgb,var(--kkwb-primary) 10%,#e7e7e7)!important;border-radius:var(--kkwb-icon-radius)!important;background:rgba(255,255,255,.45)!important}
  .kkwb-layout-3 .kkwb-icon{width:42px;height:42px;flex-basis:42px;margin:0}
  .kkwb-layout-3 .kkwb-cat-name{margin:0;min-height:0;-webkit-line-clamp:2;text-align:right}
  .kkwb-layout-3 .kkwb-cat-btn.active{background:var(--kkwb-active-soft)!important;border-color:color-mix(in srgb,var(--kkwb-active-color) 30%,transparent)!important}
  .kkwb-layout-3 .kkwb-carousel-wrap{margin-top:0}
}

/* Model 4 — compact pills */
.kkwb-layout-4 .kkwb-category-strip{gap:8px;align-items:center}
.kkwb-layout-4 .kkwb-cat-btn{flex:0 0 auto;min-width:max-content;display:flex;flex-direction:row;gap:7px;align-items:center;border:1px solid color-mix(in srgb,var(--kkwb-primary) 12%,#ddd)!important;border-radius:999px!important;padding:5px 11px 5px 7px!important;background:rgba(255,255,255,.62)!important}
.kkwb-layout-4 .kkwb-icon{width:34px;height:34px;flex:0 0 34px;border-radius:50%;margin:0;box-shadow:none}
.kkwb-layout-4 .kkwb-cat-name{width:auto;margin:0;min-height:0;white-space:nowrap;-webkit-line-clamp:1;text-align:right}
.kkwb-layout-4 .kkwb-cat-btn.active{border-color:var(--kkwb-cat-color,var(--kkwb-primary))!important;background:var(--kkwb-cat-soft,var(--kkwb-primary-soft))!important}

/* Model 5 — icon cards with pointer */
.kkwb-layout-5 .kkwb-category-strip{justify-content:center;overflow-x:auto;padding-bottom:10px}
.kkwb-layout-5 .kkwb-cat-btn{position:relative;flex-basis:110px;min-width:96px;border:1px solid color-mix(in srgb,var(--kkwb-primary) 13%,#ddd)!important;border-radius:var(--kkwb-icon-radius)!important;padding:8px 6px 9px!important;background:rgba(255,255,255,.55)!important}
.kkwb-layout-5 .kkwb-icon{width:52px;height:52px;flex-basis:52px;background:transparent!important;border:0;box-shadow:none}
.kkwb-layout-5 .kkwb-cat-name{margin-top:3px;min-height:2.6em}
.kkwb-layout-5 .kkwb-cat-btn.active::after{content:"";position:absolute;left:50%;bottom:-9px;width:14px;height:14px;transform:translateX(-50%) rotate(45deg);background:var(--kkwb-active-soft);border-right:1px solid color-mix(in srgb,var(--kkwb-active-color) 35%,transparent);border-bottom:1px solid color-mix(in srgb,var(--kkwb-active-color) 35%,transparent);z-index:3}
.kkwb-layout-5 .kkwb-carousel-wrap{border-color:color-mix(in srgb,var(--kkwb-panel-color) 26%,transparent);margin-top:0;padding-top:2px}

/* Model 6 — connected tabs */
.kkwb-layout-6 .kkwb-category-strip{gap:0;padding:0;align-items:stretch;overflow-x:auto}
.kkwb-layout-6 .kkwb-cat-btn{flex:1 0 145px;min-width:125px;border:1px solid color-mix(in srgb,var(--kkwb-primary) 14%,#ddd)!important;border-radius:var(--kkwb-icon-radius) var(--kkwb-icon-radius) 0 0!important;padding:10px 12px!important;background:rgba(255,255,255,.46)!important}
.kkwb-layout-6 .kkwb-icon{display:none}
.kkwb-layout-6 .kkwb-cat-name{margin:0;min-height:0;-webkit-line-clamp:1;white-space:nowrap}
.kkwb-layout-6 .kkwb-cat-btn.active{background:var(--kkwb-carousel-bg)!important;border-color:color-mix(in srgb,var(--kkwb-active-color) 32%,transparent)!important;border-bottom-color:var(--kkwb-carousel-bg)!important;z-index:2}
.kkwb-layout-6 .kkwb-carousel-wrap{margin-top:-1px;border:1px solid color-mix(in srgb,var(--kkwb-panel-color) 24%,#ddd);border-radius:0 0 var(--kkwb-carousel-radius) var(--kkwb-carousel-radius)}

/* Model 7 — active group header */
.kkwb-layout-7 .kkwb-category-strip{gap:7px;padding-bottom:7px}
.kkwb-layout-7 .kkwb-cat-btn{flex:0 0 auto;min-width:max-content;display:flex;flex-direction:row;gap:6px;align-items:center;padding:4px 9px!important;border-radius:999px!important;border:1px solid color-mix(in srgb,var(--kkwb-primary) 10%,#ddd)!important;background:rgba(255,255,255,.55)!important}
.kkwb-layout-7 .kkwb-icon{width:28px;height:28px;flex:0 0 28px;border:0;box-shadow:none;background:transparent!important}
.kkwb-layout-7 .kkwb-cat-name{margin:0;min-height:0;width:auto;white-space:nowrap;-webkit-line-clamp:1}
.kkwb-layout-7 .kkwb-panel-head{display:flex;padding:9px 12px;color:#fff;background:var(--kkwb-panel-color);border-radius:var(--kkwb-carousel-radius) var(--kkwb-carousel-radius) 0 0}
.kkwb-layout-7 .kkwb-carousel-wrap{border:1px solid color-mix(in srgb,var(--kkwb-panel-color) 28%,transparent);overflow:hidden}
.kkwb-layout-7 .kkwb-carousel{border-radius:0 0 var(--kkwb-carousel-radius) var(--kkwb-carousel-radius)}

/* Model 8 — information category cards */
.kkwb-layout-8 .kkwb-category-strip{gap:9px;padding-bottom:10px}
.kkwb-layout-8 .kkwb-cat-btn{position:relative;flex:0 0 calc((100% - (var(--kkwb-desktop-icon-visible) - 1)*9px)/var(--kkwb-desktop-icon-visible));min-width:128px;display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-items:center;text-align:right;padding:8px 9px!important;border:1px solid color-mix(in srgb,var(--kkwb-primary) 12%,#ddd)!important;border-radius:var(--kkwb-icon-radius)!important;background:rgba(255,255,255,.62)!important}
.kkwb-layout-8 .kkwb-icon{grid-row:1/3;width:42px;height:42px;flex:0 0 42px;margin:0;box-shadow:none}
.kkwb-layout-8 .kkwb-cat-name{margin:0;min-height:0;text-align:right;-webkit-line-clamp:1;white-space:nowrap}
.kkwb-layout-8 .kkwb-cat-count{display:block;text-align:right}
.kkwb-layout-8 .kkwb-cat-btn.active::after{content:"";position:absolute;bottom:-8px;right:calc(50% - 7px);width:14px;height:14px;transform:rotate(45deg);background:var(--kkwb-active-soft);border-right:1px solid color-mix(in srgb,var(--kkwb-active-color) 25%,transparent);border-bottom:1px solid color-mix(in srgb,var(--kkwb-active-color) 25%,transparent)}
.kkwb-layout-8 .kkwb-panel-head{display:flex;width:max-content;max-width:80%;margin:0 10px -1px 0;padding:6px 11px;border-radius:var(--kkwb-carousel-radius) var(--kkwb-carousel-radius) 0 0;color:#fff;background:var(--kkwb-panel-color)}
.kkwb-layout-8 .kkwb-panel-head-icon{width:24px;height:24px;flex-basis:24px}
.kkwb-layout-8 .kkwb-panel-head-icon .kkwb-svg-mask{width:16px;height:16px}

/* Model 9 — soft floating chips/panel */
.kkwb-layout-9 .kkwb-title{text-align:center;margin-bottom:12px}
.kkwb-layout-9 .kkwb-category-strip{justify-content:center;gap:8px;padding:2px 2px 12px}
.kkwb-layout-9 .kkwb-cat-btn{flex:0 0 auto;min-width:max-content;display:flex;flex-direction:row;gap:7px;align-items:center;padding:6px 12px 6px 7px!important;border:1px solid rgba(0,0,0,.07)!important;border-radius:999px!important;background:rgba(255,255,255,.82)!important;box-shadow:0 4px 13px rgba(0,0,0,.05)!important}
.kkwb-layout-9 .kkwb-icon{width:34px;height:34px;flex:0 0 34px;border-radius:50%;box-shadow:none;margin:0}
.kkwb-layout-9 .kkwb-cat-name{width:auto;margin:0;min-height:0;white-space:nowrap;-webkit-line-clamp:1}
.kkwb-layout-9 .kkwb-cat-btn.active{background:var(--kkwb-cat-soft,var(--kkwb-primary-soft))!important;border-color:color-mix(in srgb,var(--kkwb-cat-color,var(--kkwb-primary)) 28%,transparent)!important}
.kkwb-layout-9 .kkwb-carousel-wrap{box-shadow:0 12px 32px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.055);background:rgba(255,255,255,.88)!important}

@media(max-width:767px){
  .kkwb-drag-scroll{cursor:auto}
  /* product carousel remains exactly 2.7 cards in every layout */
  .kkwb-front[class*="kkwb-layout-"] .kkwb-product-slide{flex:0 0 calc((100% - 1.7*10px)/2.7)!important;min-width:0!important}

  .kkwb-layout-1 .kkwb-cat-btn{flex:0 0 calc((100% - 1.7*9px)/2.7);min-width:0;padding-inline:8px!important}
  .kkwb-layout-1 .kkwb-cat-name{font-size:11px!important}

  .kkwb-layout-3 .kkwb-inner{display:block}
  .kkwb-layout-3 .kkwb-category-strip{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;max-height:none;gap:9px;padding:0 0 5px}
  .kkwb-layout-3 .kkwb-cat-btn{flex:0 0 calc((100% - 1.7*9px)/2.7);min-width:0;display:flex;flex-direction:column;padding:4px!important;border:0!important;background:transparent!important}
  .kkwb-layout-3 .kkwb-icon{width:min(var(--kkwb-icon-size),60px);height:min(var(--kkwb-icon-size),60px);flex-basis:min(var(--kkwb-icon-size),60px);margin:0 auto}
  .kkwb-layout-3 .kkwb-cat-name{text-align:center;margin-top:4px;min-height:2.7em}

  .kkwb-layout-4 .kkwb-category-strip,.kkwb-layout-7 .kkwb-category-strip,.kkwb-layout-9 .kkwb-category-strip{justify-content:flex-start}
  .kkwb-layout-4 .kkwb-cat-btn,.kkwb-layout-7 .kkwb-cat-btn,.kkwb-layout-9 .kkwb-cat-btn{flex:0 0 auto;min-width:max-content;max-width:78vw}

  .kkwb-layout-5 .kkwb-category-strip{justify-content:flex-start}
  .kkwb-layout-5 .kkwb-cat-btn{flex:0 0 calc((100% - 1.7*9px)/2.7);min-width:0;padding-inline:4px!important}
  .kkwb-layout-5 .kkwb-icon{width:48px;height:48px;flex-basis:48px}

  .kkwb-layout-6 .kkwb-cat-btn{flex:0 0 calc((100% - 1.7*9px)/2.7);min-width:0;padding-inline:7px!important}
  .kkwb-layout-6 .kkwb-cat-name{font-size:10.5px!important}

  .kkwb-layout-8 .kkwb-cat-btn{flex:0 0 calc((100% - 1.7*9px)/2.7);min-width:0;grid-template-columns:34px minmax(0,1fr);padding:7px!important}
  .kkwb-layout-8 .kkwb-icon{width:34px;height:34px;flex-basis:34px}
  .kkwb-layout-8 .kkwb-cat-name{font-size:10px!important}
  .kkwb-layout-8 .kkwb-cat-count{font-size:8.5px!important}

  .kkwb-layout-7 .kkwb-panel-head{padding:7px 9px}
  .kkwb-layout-8 .kkwb-panel-head{max-width:92%;margin-right:6px;padding:5px 8px}
  .kkwb-layout-9 .kkwb-carousel-wrap{box-shadow:0 7px 20px rgba(0,0,0,.07)}
}

/* 0.7.1 — desktop click/drag polish + RTL horizontal icon ordering */
/* مدل ۳: مستقل از direction صفحه، ریل دسته‌ها در دسکتاپ قطعاً سمت راست است. */
@media(min-width:768px){
  .kkwb-layout-3 .kkwb-inner{
    direction:ltr;
    grid-template-columns:minmax(0,1fr) minmax(160px,200px);
    grid-template-areas:"title title" "dynamic cats";
  }
  .kkwb-layout-3 .kkwb-title,
  .kkwb-layout-3 .kkwb-category-strip,
  .kkwb-layout-3 .kkwb-dynamic{direction:rtl}
  .kkwb-layout-3 .kkwb-cat-btn{
    direction:rtl;
    grid-template-columns:52px minmax(0,1fr);
    column-gap:9px;
  }
  .kkwb-layout-3 .kkwb-icon{width:52px;height:52px;flex-basis:52px}
}

/* هر جا آیکون و متن افقی‌اند، آیکون باید سمت راست و قبل از متن باشد. */
.kkwb-layout-4 .kkwb-cat-btn,
.kkwb-layout-7 .kkwb-cat-btn,
.kkwb-layout-9 .kkwb-cat-btn,
.kkwb-layout-8 .kkwb-cat-btn,
.kkwb-layout-3 .kkwb-cat-btn,
.kkwb-panel-head{
  direction:rtl;
  text-align:right;
}
.kkwb-layout-4 .kkwb-cat-btn,
.kkwb-layout-7 .kkwb-cat-btn,
.kkwb-layout-9 .kkwb-cat-btn{flex-direction:row}

/* مدل ۸: آیکون اطلاعاتی بزرگ‌تر و با سهم ثابت در سمت راست. */
.kkwb-layout-8 .kkwb-cat-btn{
  grid-template-columns:56px minmax(0,1fr);
  column-gap:10px;
  min-height:72px;
  padding:9px 10px!important;
}
.kkwb-layout-8 .kkwb-icon{
  width:56px;
  height:56px;
  flex-basis:56px;
}
.kkwb-layout-8 .kkwb-cat-name,
.kkwb-layout-8 .kkwb-cat-count{text-align:right}

/* مدل ۹: آیکون شناور نرم بزرگ‌تر؛ همچنان جمع‌وجور اما قابل تشخیص. */
.kkwb-layout-9 .kkwb-cat-btn{
  gap:9px;
  padding:7px 14px 7px 8px!important;
}
.kkwb-layout-9 .kkwb-icon{
  width:44px;
  height:44px;
  flex-basis:44px;
}

@media(max-width:767px){
  /* در موبایل ترتیب RTL حفظ می‌شود ولی اندازه‌ها برای ۲.۷ آیتم کنترل می‌شوند. */
  .kkwb-layout-3 .kkwb-inner{direction:rtl}
  .kkwb-layout-8 .kkwb-cat-btn{
    grid-template-columns:42px minmax(0,1fr);
    min-height:60px;
    column-gap:7px;
  }
  .kkwb-layout-8 .kkwb-icon{width:42px;height:42px;flex-basis:42px}
  .kkwb-layout-9 .kkwb-cat-btn{gap:7px;padding:6px 11px 6px 7px!important}
  .kkwb-layout-9 .kkwb-icon{width:40px;height:40px;flex-basis:40px}
}
