.nb-ps{--nb-ps-cols:6;--nb-ps-gap:14px;--nb-accent:var(--wc-primary,#720eec);--nb-ok:#22c55e;position:relative}
.nb-ps__viewport{overflow:hidden;border-radius:inherit}
.nb-ps__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--nb-ps-cols) - 1) * var(--nb-ps-gap)) / var(--nb-ps-cols));gap:var(--nb-ps-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:2px}
.nb-ps__track::-webkit-scrollbar{display:none}
/* روی دسکتاپ می‌شود کشید. -webkit-user-drag جلوی این را می‌گیرد که
   کاربر تصویر را از داخل اسلایدر بیرون بکشد و رهایش کند. */
@media (hover:hover){.nb-ps__track{cursor:grab}.nb-ps.is-dragging .nb-ps__track{cursor:grabbing;user-select:none}}
.nb-ps__track img,.nb-ps__track a{-webkit-user-drag:none;user-drag:none}
.nb-ps.is-dragging .nb-ps__item{transform:none}
.nb-ps.is-dragging .nb-ps__item *{pointer-events:none}
.nb-ps[data-free="1"] .nb-ps__track{scroll-snap-type:none}
.nb-ps__item{scroll-snap-align:start;display:flex;flex-direction:column;min-width:0;transition:transform .22s ease,box-shadow .22s ease}

.nb-ps__media{position:relative;display:block;overflow:hidden;aspect-ratio:1/1;background:rgba(127,127,127,.1)}
.nb-ps__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease,opacity .35s ease}
.nb-ps__alt{position:absolute;inset:0;opacity:0}
/* هاور فقط روی دستگاهی که واقعاً اشاره‌گر دارد.
   روی موبایل، اولین لمس فقط :hover را روشن می‌کرد و کاربر مجبور بود
   دوباره بزند تا وارد شود — خیلی‌ها آن را باگ می‌دیدند. */
@media (hover:hover) and (pointer:fine){
.nb-ps__item:hover{transform:translateY(-3px)}
.nb-ps__media--swap:hover .nb-ps__main,.nb-ps__item:hover .nb-ps__media--swap .nb-ps__main{opacity:0}
.nb-ps__media--swap:hover .nb-ps__alt,.nb-ps__item:hover .nb-ps__media--swap .nb-ps__alt{opacity:1}
}
@media (prefers-reduced-motion:reduce){.nb-ps__media img{transition:none}}
.nb-ps__flag{position:absolute;top:8px;inset-inline-start:8px;padding:4px 10px;border-radius:20px;font-size:11.5px;font-weight:500;line-height:1.5;pointer-events:none;letter-spacing:.2px}
.nb-ps__flag--sale{background:#e5484d;color:#fff}
.nb-ps__flag--oos{background:rgba(0,0,0,.72);color:#fff;inset-inline-start:auto;inset-inline-end:8px}
.nb-ps__body{display:flex;flex-direction:column;flex:1;gap:10px;padding-top:12px}
.nb-ps__title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none;line-height:1.7;transition:color .18s ease}
.nb-ps__title:focus-visible,.nb-ps__media:focus-visible{outline:2px solid var(--nb-accent);outline-offset:3px;border-radius:6px}
.nb-ps__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}
.nb-ps__price{min-width:0;line-height:1.6;display:flex;flex-direction:column;gap:1px;white-space:nowrap}
.nb-ps__price del{opacity:.5;font-size:.8em;text-decoration-thickness:1px;order:-1}
.nb-ps__price ins{text-decoration:none;background:transparent}
.nb-ps__cart{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:rgba(127,127,127,.14);color:inherit;text-decoration:none;transition:background .18s ease,color .18s ease,transform .12s ease}
.nb-ps__cart:hover{background:var(--nb-accent);color:#fff}
.nb-ps__cart:active{transform:scale(.9)}
.nb-ps__cart:focus-visible{outline:2px solid var(--nb-accent);outline-offset:2px}
.nb-ps__icon,.nb-ps__check{width:20px;height:20px}
.nb-ps__check{display:none}
.nb-ps__cart.loading{pointer-events:none}
.nb-ps__cart.loading .nb-ps__icon{opacity:0}
.nb-ps__cart.loading::after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:nb-spin .7s linear infinite}
@keyframes nb-spin{to{transform:rotate(360deg)}}
.nb-ps__cart.added{background:var(--nb-ok);color:#fff}
.nb-ps__cart.added .nb-ps__icon{display:none}
.nb-ps__cart.added .nb-ps__check{display:block}
.nb-ps__foot .added_to_cart{display:none}
.nb-ps__item--oos .nb-ps__media img{filter:grayscale(.7);opacity:.65}
.nb-ps__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nb-ps__nav{position:absolute;top:38%;z-index:3;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;cursor:pointer;opacity:0;transition:opacity .2s ease,background .2s ease,transform .12s ease}
.nb-ps:hover .nb-ps__nav,.nb-ps__nav:focus-visible{opacity:1}
.nb-ps__nav:active{transform:scale(.92)}
.nb-ps__nav[disabled]{opacity:0!important;pointer-events:none}
.nb-ps__nav svg{width:18px;height:18px}
.nb-ps__nav--prev{inset-inline-start:6px}
.nb-ps__nav--next{inset-inline-end:6px}
@media (hover:none){.nb-ps__nav{opacity:1}}
.nb-ps__empty{padding:26px;border:1px dashed rgba(127,127,127,.5);border-radius:10px;text-align:center;opacity:.75}
@media (prefers-reduced-motion:reduce){.nb-ps__track{scroll-behavior:auto}}
/* ---------------------------------------------------- اسلاید تبلیغاتی */

.nb-ps__item--promo .nb-ps__promo {
	position: relative;
	display: flex;
	align-items: flex-end;
	block-size: 100%;
	min-block-size: 220px;
	overflow: hidden;
	border-radius: var( --nb-radius, 10px );
	background: var( --nb-surface-2, var( --nb-surface, #131829 ) );
	text-decoration: none;
	color: inherit;
}

.nb-ps__promo-img {
	position: absolute;
	inset: 0;
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
}

/* پوششِ پیش‌فرض از پایین تیره می‌شود تا متن روی هر تصویری خوانا بماند —
   بدون این، یک بنر روشن یعنی نوشته‌ی سفید روی سفید. */
.nb-ps__promo-veil {
	position: absolute;
	inset: 0;
	background: linear-gradient( to top, rgba( 0, 0, 0, 0.78 ) 0%, rgba( 0, 0, 0, 0.25 ) 55%, rgba( 0, 0, 0, 0 ) 100% );
}

.nb-ps__promo-body {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	padding: 16px;
	inline-size: 100%;
}

.nb-ps__promo-title {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.7;
	color: #fff;
}

.nb-ps__promo-text {
	font-size: 12.5px;
	line-height: 1.8;
	color: rgba( 255, 255, 255, 0.82 );
}

.nb-ps__promo-btn {
	margin-top: 4px;
	padding: 7px 16px;
	border-radius: var( --nb-radius-sm, 6px );
	background: var( --nb-primary, #720eec );
	color: var( --nb-on-primary, #fff );
	font-size: 13px;
	font-weight: 600;
	line-height: 1.6;
}

.nb-ps__item--promo .nb-ps__promo:hover .nb-ps__promo-img {
	transform: scale( 1.04 );
}

.nb-ps__promo-img {
	transition: transform 0.35s ease;
}

@media ( prefers-reduced-motion: reduce ) {

	.nb-ps__promo-img {
		transition: none;
	}

	.nb-ps__item--promo .nb-ps__promo:hover .nb-ps__promo-img {
		transform: none;
	}
}
