/* ==========================================================
   افزونه صفحه محصول شیک — تابلو شاسی
   ========================================================== */

body.spp-active {
	--spp-bg: #faf8f5;
	--spp-card: #ffffff;
	--spp-ink: #1f2429;
	--spp-ink-2: #5c6670;
	--spp-ink-3: #98a1aa;
	--spp-line: #ece7df;
	--spp-accent: #b98a4e;
	--spp-accent-dark: #a2743a;
	--spp-accent-soft: #f6efe4;
	--spp-green: #1d9d74;
	--spp-green-soft: #e6f6f0;
	--spp-red: #e5484d;
	--spp-radius: 18px;
	--spp-shadow: 0 10px 30px rgba(31, 36, 41, .07);
}

body.spp-active .spp-wrap,
body.spp-active .spp-wrap * {
	font-family: "Vazirmatn", Vazir, Tahoma, "Segoe UI", sans-serif !important;
	box-sizing: border-box;
}

.spp-wrap {
	max-width: 1360px;
	margin: 0 auto;
	padding: 28px 24px 90px;
	direction: rtl;
	color: var(--spp-ink);
	line-height: 1.9;
}

.spp-wrap img { max-width: 100%; height: auto; display: block; }
.spp-wrap button { cursor: pointer; }

/* ---------- حالت تمام‌عرض (دسکتاپ) ---------- */
body.spp-active.spp-full { overflow-x: hidden; }
body.spp-active.spp-full .spp-wrap {
	max-width: none;
	width: 100vw;
	position: relative;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-right: clamp(20px, 4vw, 72px);
	padding-left: clamp(20px, 4vw, 72px);
}
/* در عرض‌های خیلی بزرگ، فاصله دو ستون بیشتر شود تا طرح نفس بکشد */
@media (min-width: 1400px) {
	body.spp-active.spp-full .spp-main { gap: 64px; }
	body.spp-active.spp-full .spp-title { font-size: 1.85rem !important; }
}
@media (min-width: 1700px) {
	body.spp-active.spp-full .spp-main { gap: 80px; }
}

/* در عرض‌های بزرگ حتی در حالت عادی (غیر تمام‌عرض) طرح بازتر شود */
@media (min-width: 1240px) {
	.spp-main { gap: 56px; }
	.spp-title { font-size: 1.8rem !important; }
	.spp-buybox { padding: 26px; }
	.spp-thumbs { gap: 12px; }
}

/* ---------- مسیر صفحه ---------- */
.spp-breadcrumb,
.spp-breadcrumb .woocommerce-breadcrumb {
	font-size: .8rem;
	color: var(--spp-ink-3);
	margin-bottom: 22px;
}
.spp-breadcrumb a { color: var(--spp-ink-2); text-decoration: none; transition: color .2s; }
.spp-breadcrumb a:hover { color: var(--spp-accent); }
.spp-breadcrumb .sep { opacity: .5; margin: 0 6px; }

/* ---------- چیدمان اصلی ---------- */
.spp-main {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 44px;
	align-items: start;
}

/* ---------- گالری ---------- */
.spp-gallery { position: sticky; top: 24px; }
.spp-stage {
	position: relative;
	background: var(--spp-card);
	border: 1px solid var(--spp-line);
	border-radius: var(--spp-radius);
	overflow: hidden;
	box-shadow: var(--spp-shadow);
	cursor: zoom-in;
}
.spp-stage img {
	width: 100%;
	aspect-ratio: 11 / 9;
	object-fit: contain; /* نمایش کامل تصویر بدون کراپ */
	background: var(--spp-card);
	padding: 10px;
	transition: opacity .25s;
}

/* ---------- زوم هاور روی تصویر اصلی ---------- */
.spp-zoom-lens {
	position: absolute;
	inset: 0;
	z-index: 2;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity .18s ease;
	pointer-events: none;
	background-color: var(--spp-card);
	border-radius: var(--spp-radius);
}
.spp-stage.zooming .spp-zoom-lens { opacity: 1; }
.spp-stage.zooming > img { opacity: 1; } /* تصویر زیر لنز می‌ماند تا پرش نداشته باشیم */


.spp-badge {
	position: absolute;
	top: 14px; right: 14px;
	z-index: 2;
	background: var(--spp-red);
	color: #fff;
	font-size: .78rem;
	font-weight: 700;
	padding: 4px 12px;
	border-radius: 99px;
}
.spp-thumbs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-top: 12px;
}
.spp-thumb {
	border: 2px solid transparent;
	border-radius: 12px;
	overflow: hidden;
	padding: 0;
	background: var(--spp-card);
	transition: border-color .2s, transform .2s;
}
.spp-thumb img { aspect-ratio: 1 / 1; object-fit: cover; width: 100%; }
.spp-thumb:hover { transform: translateY(-2px); }
.spp-thumb.active { border-color: var(--spp-accent); }

/* ---------- اطلاعات ---------- */
.spp-cat {
	display: inline-block;
	font-size: .75rem;
	font-weight: 600;
	background: var(--spp-accent-soft);
	padding: 3px 12px;
	border-radius: 99px;
	margin-bottom: 12px;
}
.spp-cat a { color: var(--spp-accent-dark); text-decoration: none; }
.spp-title {
	font-size: 1.65rem !important;
	font-weight: 800;
	line-height: 1.5;
	margin: 0 0 8px;
	color: var(--spp-ink);
}
.spp-sub { font-size: .85rem; color: var(--spp-ink-3); margin-bottom: 14px; }

.spp-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--spp-line);
	margin-bottom: 20px;
	font-size: .83rem;
}
.spp-stars { color: #f5a623; letter-spacing: 2px; font-size: .95rem; }
.spp-meta .dim { color: var(--spp-ink-3); }
.spp-stock {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--spp-green);
	font-weight: 600;
}
.spp-stock::before {
	content: "";
	width: 8px; height: 8px;
	border-radius: 50%;
	background: var(--spp-green);
	box-shadow: 0 0 0 4px var(--spp-green-soft);
}
.spp-stock--out { color: var(--spp-red); }
.spp-stock--out::before { background: var(--spp-red); box-shadow: 0 0 0 4px #fdecec; }

.spp-excerpt { font-size: .9rem; color: var(--spp-ink-2); margin-bottom: 20px; }

/* ---------- جعبه خرید ---------- */
body.spp-active .spp-buybox {
	background: var(--spp-card) !important;
	border: 1px solid var(--spp-line) !important;
	border-radius: var(--spp-radius) !important;
	padding: 22px !important;
	box-shadow: var(--spp-shadow) !important;
	margin: 0 0 20px !important;
	width: 100% !important;
	max-width: 100% !important;
	position: static !important;
	overflow: visible !important;
}
/* ---------- فقط کشویی: مخفی کردن دکمه‌های افزونه‌های Variation Swatches ---------- */
/* این افزونه‌ها لیست دکمه‌ای سایز/رنگ را کنار دراپ‌داون تزریق می‌کنند و باعث نمایش دوتایی می‌شوند */
body.spp-active .spp-buybox ul.variable-items-wrapper,
body.spp-active .spp-buybox .woo-variation-items-wrapper > ul,
body.spp-active .spp-buybox .tawcvs-swatches,
body.spp-active .spp-buybox .cfvsw-swatches-container,
body.spp-active .spp-buybox .sw-attr-items,
body.spp-active .spp-buybox .wd-swatch-list,
body.spp-active .spp-buybox .variations .swatch:not(select),
body.spp-active .spp-buybox .variations ul[class*="swatch"],
body.spp-active .spp-buybox .variations div[class*="swatch"] > ul { display: none !important; }
/* دراپ‌داونی که افزونه‌های Swatch مخفی می‌کنند دوباره نمایان شود
   (شامل کشویی‌هایی که کلاس swatch دارند یا داخل wrapper مخفی هستند) */
body.spp-active .spp-buybox .variations select,
body.spp-active .spp-buybox .variations select.woo-variation-raw-select,
body.spp-active .spp-buybox .variations select[style*="display: none"],
body.spp-active .spp-buybox .variations select[style*="display:none"] {
	display: block !important;
	position: static !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 100% !important;
	height: auto !important;
	clip: auto !important;
	clip-path: none !important;
}
/* wrapper هایی که کشویی داخلشان است نباید مخفی شوند — فقط لیست دکمه‌ای داخلشان */
body.spp-active .spp-buybox .variations div[class*="swatch"],
body.spp-active .spp-buybox .variations .woo-variation-items-wrapper {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: static !important;
	width: 100% !important;
	height: auto !important;
}

/* برچسب‌های مخفی خوانشگر صفحه (مثل «عدد» کنار فیلد تعداد) دوباره مخفی شوند */
body.spp-active .spp-buybox .screen-reader-text,
body.spp-active .spp-buybox form.cart .quantity label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
	display: block !important;
	text-align: initial;
}

/* عناصری که قالب‌ها/افزونه‌ها به فرم خرید تزریق می‌کنند مخفی شود */
body.spp-active .spp-buybox .added_to_cart,
body.spp-active .spp-buybox .clear,
body.spp-active .spp-buybox .woocommerce-variation-description:empty { display: none !important; }

/* دکمه قلب/علاقه‌مندی که افزونه‌های Wishlist داخل فرم خرید تزریق می‌کنند */
body.spp-active .spp-buybox .yith-wcwl-add-to-wishlist,
body.spp-active .spp-buybox .yith-wcwl-wishlistaddedbrowse,
body.spp-active .spp-buybox .yith-wcwl-wishlistexistsbrowse,
body.spp-active .spp-buybox .tinv-wishlist,
body.spp-active .spp-buybox .tinvwl_add_to_wishlist_button,
body.spp-active .spp-buybox .tinv-wraper,
body.spp-active .spp-buybox .woosw-btn,
body.spp-active .spp-buybox .woosw-added,
body.spp-active .spp-buybox .wlfmc-add-button,
body.spp-active .spp-buybox .wlfmc-wishlist-button,
body.spp-active .spp-buybox .add_to_wishlist,
body.spp-active .spp-buybox .wishlist-btn,
body.spp-active .spp-buybox .wishlist_button,
body.spp-active .spp-buybox .woodmart-wishlist-btn,
body.spp-active .spp-buybox .wd-wishlist-btn,
body.spp-active .spp-buybox .xstore-wishlist,
body.spp-active .spp-buybox .et-wishlist-button,
body.spp-active .spp-buybox .jet-wishlist-button__link,
body.spp-active .spp-buybox [class*="wishlist"] { display: none !important; }
/* آیکون قلبی که مستقیم روی خود دکمه خرید می‌نشیند */
body.spp-active .spp-buybox form.cart .single_add_to_cart_button i,
body.spp-active .spp-buybox form.cart .single_add_to_cart_button .fa-heart,
body.spp-active .spp-buybox form.cart .single_add_to_cart_button [class*="heart"] { display: none !important; }
.spp-price-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 18px;
	flex-wrap: wrap;
}
.spp-price { font-size: 1.45rem; font-weight: 800; color: var(--spp-ink); }
.spp-price del { font-size: .85rem; color: var(--spp-ink-3); font-weight: 400; margin-left: 8px; }
.spp-price ins { text-decoration: none; }
/* ریست دفاعی: برخی قالب‌ها عناصر قیمت را مخفی/شفاف می‌کنند */
body.spp-active .spp-price,
body.spp-active .spp-price *,
body.spp-active .spp-mbar .p,
body.spp-active .spp-mbar .p * {
	display: inline !important;
	visibility: visible !important;
	opacity: 1 !important;
	font-size: inherit;
	color: inherit;
	position: static !important;
	clip: auto !important;
	clip-path: none !important;
	width: auto !important;
	height: auto !important;
	overflow: visible !important;
}
body.spp-active .spp-price del,
body.spp-active .spp-mbar .p del { font-size: .85rem; color: var(--spp-ink-3); }
body.spp-active .spp-price .woocommerce-Price-currencySymbol { font-size: .8em; }
.spp-off {
	background: var(--spp-red);
	color: #fff;
	font-size: .78rem;
	font-weight: 700;
	padding: 3px 11px;
	border-radius: 99px;
}

/* --- استایل فرم واقعی ووکامرس داخل جعبه خرید --- */
/* ریست دفاعی: جلوگیری از به‌هم‌ریختگی توسط استایل‌های قالب و افزونه‌های دیگر */
body.spp-active .spp-buybox form.cart,
body.spp-active .spp-buybox form.cart * {
	float: none !important;
	box-sizing: border-box !important;
	text-align: right;
}
body.spp-active .spp-buybox form.cart {
	display: flex !important;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	border: 0 !important;
	background: none !important;
	position: static !important;
}

/* جدول متغیرها: چیدمان عمودی تمیز */
body.spp-active .spp-buybox form.cart .variations {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	border: 0 !important;
	border-collapse: collapse !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	background: none !important;
}
body.spp-active .spp-buybox form.cart .variations tbody,
body.spp-active .spp-buybox form.cart .variations tr,
body.spp-active .spp-buybox form.cart .variations td,
body.spp-active .spp-buybox form.cart .variations th {
	display: block !important;
	width: 100% !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: none !important;
}
body.spp-active .spp-buybox form.cart .variations tr { margin-bottom: 12px !important; }
body.spp-active .spp-buybox form.cart .variations .label,
body.spp-active .spp-buybox form.cart .variations th.label {
	margin-bottom: 7px !important;
}
body.spp-active .spp-buybox form.cart .variations .label label {
	font-size: .86rem !important;
	font-weight: 700 !important;
	color: var(--spp-ink) !important;
	margin: 0 !important;
	display: block !important;
}

/* دراپ‌داون کشویی شیک با فلش اختصاصی */
body.spp-active .spp-buybox form.cart .variations select {
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	padding: 12px 16px !important;
	padding-left: 44px !important; /* جا برای فلش در سمت چپ (RTL) */
	border: 1.5px solid var(--spp-line) !important;
	border-radius: 12px !important;
	background-color: var(--spp-bg) !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a2743a' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: left 14px center !important;
	background-size: 17px !important;
	font-size: .88rem !important;
	font-weight: 600 !important;
	color: var(--spp-ink) !important;
	line-height: 1.7 !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: border-color .2s, box-shadow .2s;
	direction: rtl;
}
body.spp-active .spp-buybox form.cart .variations select:hover {
	border-color: var(--spp-accent) !important;
}
body.spp-active .spp-buybox form.cart .variations select:focus {
	outline: none !important;
	border-color: var(--spp-accent) !important;
	box-shadow: 0 0 0 3px var(--spp-accent-soft) !important;
}
.spp-buybox .reset_variations {
	display: inline-block;
	font-size: .74rem;
	color: var(--spp-ink-3);
	text-decoration: none;
	margin-top: 8px;
	padding: 3px 12px;
	border: 1px solid var(--spp-line);
	border-radius: 99px;
	transition: all .2s;
}
.spp-buybox .reset_variations:hover { color: var(--spp-red); border-color: var(--spp-red); }

/* قیمت متغیر داخل فرم مخفی — قیمت اصلی بالای جعبه به‌روز می‌شود (جلوگیری از قیمت تکراری) */
.spp-buybox .woocommerce-variation-price { display: none; }
.spp-buybox .woocommerce-variation-availability { font-size: .8rem; color: var(--spp-green); font-weight: 600; }
.spp-buybox .woocommerce-variation-availability .out-of-stock { color: var(--spp-red); }
.spp-buybox .single_variation_wrap .woocommerce-variation { margin-bottom: 8px; }

/* بخش انتخاب‌شده متغیر (قیمت/موجودی) */
body.spp-active .spp-buybox .single_variation_wrap {
	width: 100% !important;
	display: flex !important;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
	margin: 0 !important;
}
body.spp-active .spp-buybox .woocommerce-variation.single_variation {
	width: 100% !important;
	margin: 0 !important;
}
body.spp-active .spp-buybox .woocommerce-variation-add-to-cart {
	display: flex !important;
	gap: 12px;
	align-items: stretch;
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
}

body.spp-active .spp-buybox form.cart .quantity {
	display: flex !important;
	align-items: center;
	flex: 0 0 auto !important;
	width: auto !important;
	border: 1.5px solid var(--spp-line) !important;
	border-radius: 14px !important;
	overflow: hidden;
	background: var(--spp-bg) !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}
body.spp-active .spp-buybox form.cart .quantity input.qty {
	width: 54px !important;
	min-width: 0 !important;
	height: auto !important;
	border: 0 !important;
	background: transparent !important;
	text-align: center !important;
	font-weight: 700 !important;
	font-size: 1rem !important;
	padding: 13px 4px !important;
	margin: 0 !important;
	-moz-appearance: textfield;
	appearance: textfield;
	box-shadow: none !important;
	border-radius: 0 !important;
}
body.spp-active .spp-buybox form.cart .quantity input.qty::-webkit-inner-spin-button,
body.spp-active .spp-buybox form.cart .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
body.spp-active .spp-buybox form.cart .quantity input.qty:focus { outline: none !important; }
/* دکمه‌های +/− پیش‌فرض برخی قالب‌ها حذف شود؛ دکمه‌های افزونه جایگزین است */
body.spp-active .spp-buybox form.cart .quantity .plus:not(.spp-qty-btn),
body.spp-active .spp-buybox form.cart .quantity .minus:not(.spp-qty-btn),
body.spp-active .spp-buybox form.cart .quantity input[type="button"] { display: none !important; }
.spp-qty-btn {
	width: 40px !important;
	align-self: stretch;
	border: 0 !important;
	background: transparent !important;
	font-size: 1.15rem !important;
	color: var(--spp-accent-dark) !important;
	cursor: pointer;
	transition: background .15s;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	line-height: 1 !important;
}
.spp-qty-btn:hover { background: var(--spp-accent-soft) !important; }

body.spp-active .spp-buybox form.cart .single_add_to_cart_button {
	flex: 1 1 auto !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: auto !important;
	min-height: 0 !important;
	background: linear-gradient(135deg, var(--spp-accent), var(--spp-accent-dark)) !important;
	color: #fff !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	border: 0 !important;
	border-radius: 14px !important;
	padding: 15px 20px !important;
	margin: 0 !important;
	transition: transform .15s, box-shadow .2s;
	box-shadow: 0 8px 20px rgba(185, 138, 78, .35) !important;
	line-height: 1.4 !important;
	text-align: center !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	text-shadow: none !important;
	float: none !important;
	opacity: 1;
}
body.spp-active .spp-buybox form.cart .single_add_to_cart_button:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 26px rgba(185, 138, 78, .45) !important;
	background: linear-gradient(135deg, var(--spp-accent), var(--spp-accent-dark)) !important;
	color: #fff !important;
}
body.spp-active .spp-buybox form.cart .single_add_to_cart_button.disabled,
body.spp-active .spp-buybox form.cart .single_add_to_cart_button:disabled {
	opacity: .55;
	cursor: not-allowed;
	transform: none;
}
/* آیکون/لودر اضافی که برخی قالب‌ها به دکمه اضافه می‌کنند */
body.spp-active .spp-buybox form.cart .single_add_to_cart_button::before,
body.spp-active .spp-buybox form.cart .single_add_to_cart_button::after { display: none !important; }

/* ---------- نشان‌های اعتماد ---------- */
.spp-trust { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.spp-trust > div {
	background: var(--spp-card);
	border: 1px solid var(--spp-line);
	border-radius: 14px;
	padding: 13px 10px;
	text-align: center;
	font-size: .74rem;
	color: var(--spp-ink-2);
	line-height: 1.7;
}
.spp-trust svg { width: 23px; height: 23px; color: var(--spp-accent); margin: 0 auto 6px; display: block; }
.spp-trust b { display: block; color: var(--spp-ink); font-size: .79rem; }

/* ---------- تب‌ها ---------- */
.spp-tabs { margin-top: 56px; }
.spp-tab-nav {
	display: flex;
	gap: 4px;
	border-bottom: 1.5px solid var(--spp-line);
	overflow-x: auto;
}
.spp-tab-btn {
	padding: 13px 22px;
	font-size: .92rem;
	font-weight: 600;
	color: var(--spp-ink-3);
	background: none;
	border: 0;
	border-bottom: 2.5px solid transparent;
	margin-bottom: -1.5px;
	transition: all .2s;
	white-space: nowrap;
}
.spp-tab-btn:hover { color: var(--spp-ink); }
.spp-tab-btn.active { color: var(--spp-accent-dark); border-color: var(--spp-accent); }
.spp-tab-pane { display: none; padding: 28px 4px; animation: sppFadeUp .35s ease; }
.spp-tab-pane.active { display: block; }
@keyframes sppFadeUp {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: none; }
}
.spp-desc p { color: var(--spp-ink-2); font-size: .92rem; margin-bottom: 14px; max-width: 820px; }
.spp-desc h2, .spp-desc h3, .spp-desc h4 { margin: 20px 0 8px; color: var(--spp-ink); }
.spp-desc ul { max-width: 820px; padding-right: 20px; }
.spp-desc li { color: var(--spp-ink-2); font-size: .92rem; margin-bottom: 8px; }

/* جدول مشخصات ووکامرس (با ریست دفاعی) */
body.spp-active .spp-specs .woocommerce-product-attributes {
	display: table !important;
	max-width: 680px;
	border: 1px solid var(--spp-line) !important;
	border-radius: 14px;
	overflow: hidden;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	width: 100% !important;
	margin: 0 !important;
	background: none !important;
}
body.spp-active .spp-specs .woocommerce-product-attributes tbody { display: table-row-group !important; }
body.spp-active .spp-specs .woocommerce-product-attributes tr { display: table-row !important; background: none; }
body.spp-active .spp-specs .woocommerce-product-attributes th,
body.spp-active .spp-specs .woocommerce-product-attributes td {
	display: table-cell !important;
	padding: 12px 18px !important;
	font-size: .88rem !important;
	border: 0 !important;
	text-align: right !important;
	vertical-align: middle;
	background: none;
	width: auto !important;
}
body.spp-active .spp-specs .woocommerce-product-attributes tr:nth-child(odd) { background: var(--spp-card) !important; }
body.spp-active .spp-specs .woocommerce-product-attributes th {
	color: var(--spp-ink-3) !important;
	font-weight: 600 !important;
	width: 190px !important;
}
body.spp-active .spp-specs .woocommerce-product-attributes td p { margin: 0 !important; padding: 0 !important; }

/* نظرات ووکامرس */
#spp-t-rev .commentlist { list-style: none; padding: 0; margin: 0; max-width: 820px; }
#spp-t-rev .commentlist li {
	background: var(--spp-card);
	border: 1px solid var(--spp-line);
	border-radius: 14px;
	padding: 18px 20px;
	margin-bottom: 12px;
}
#spp-t-rev .comment_container img.avatar {
	border-radius: 50%;
	width: 42px; height: 42px;
	float: right;
	margin-left: 14px;
}
#spp-t-rev .comment-text { overflow: hidden; }
#spp-t-rev .comment-text .meta { font-size: .78rem; color: var(--spp-ink-3); margin: 2px 0 6px; }
#spp-t-rev .comment-text .meta strong { color: var(--spp-ink); font-size: .9rem; }
#spp-t-rev .comment-text p { font-size: .87rem; color: var(--spp-ink-2); margin: 0 0 6px; }
#spp-t-rev .star-rating { color: #f5a623; }
#spp-t-rev .comment-form input[type="text"],
#spp-t-rev .comment-form input[type="email"],
#spp-t-rev .comment-form textarea {
	width: 100%;
	border: 1.5px solid var(--spp-line);
	border-radius: 12px;
	padding: 11px 14px;
	background: var(--spp-card);
	font-size: .86rem;
}
#spp-t-rev .comment-form input:focus,
#spp-t-rev .comment-form textarea:focus {
	outline: none;
	border-color: var(--spp-accent);
	box-shadow: 0 0 0 3px var(--spp-accent-soft);
}
#spp-t-rev .form-submit .submit {
	background: linear-gradient(135deg, var(--spp-accent), var(--spp-accent-dark));
	color: #fff;
	border: 0;
	border-radius: 12px;
	padding: 12px 28px;
	font-weight: 700;
	font-size: .9rem;
	cursor: pointer;
	transition: transform .15s, box-shadow .2s;
}
#spp-t-rev .form-submit .submit:hover { transform: translateY(-1px); }
#spp-t-rev .comment-reply-title {
	font-size: 1rem;
	font-weight: 800;
	display: block;
	margin-bottom: 12px;
	color: var(--spp-ink);
}
#spp-t-rev .comment-form { max-width: 680px; }
#spp-t-rev .comment-form > p { margin: 0 0 14px; }
#spp-t-rev .comment-form label {
	display: block;
	font-size: .82rem;
	font-weight: 700;
	margin-bottom: 6px;
	color: var(--spp-ink);
}
#spp-t-rev .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 8px; }
#spp-t-rev .comment-form-cookies-consent label {
	font-weight: 400;
	font-size: .78rem;
	color: var(--spp-ink-3);
	margin: 0;
}
#spp-t-rev .woocommerce-noreviews,
#spp-t-rev .woocommerce-verification-required {
	background: var(--spp-accent-soft);
	color: var(--spp-accent-dark);
	border-radius: 12px;
	padding: 14px 18px;
	font-size: .86rem;
	max-width: 680px;
}

/* ستاره‌های امتیازدهی فرم دیدگاه */
.spp-rate-stars { display: flex; gap: 4px; flex-direction: row-reverse; justify-content: flex-end; }
.spp-rate-stars button {
	background: none;
	border: 0;
	font-size: 1.7rem;
	line-height: 1;
	color: #d8d3ca;
	cursor: pointer;
	padding: 2px;
	transition: color .15s, transform .15s;
}
.spp-rate-stars button:hover { transform: scale(1.15); }
.spp-rate-stars button.on { color: #f5a623; }
#spp-t-rev .comment-form-rating .stars,
#spp-t-rev .comment-form-rating a { display: none; }

/* ---------- پاک‌سازی عناصر اضافی و تکراری ---------- */
/* بج حراج پیش‌فرض ووکامرس (بج اختصاصی افزونه جایگزین آن است) */
body.spp-active .spp-wrap .onsale,
body.spp-active .spp-wrap span.onsale { display: none !important; }
/* متا و اشتراک‌گذاری پیش‌فرض که برخی قالب‌ها اضافه می‌کنند */
body.spp-active .spp-wrap .product_meta,
body.spp-active .spp-wrap .woocommerce-tabs.wc-tabs-wrapper > ul.wc-tabs { display: none !important; }
/* نوار خرید چسبان تکراری قالب‌ها (نوار اختصاصی افزونه جایگزین است) */
body.spp-active .sticky-add-to-cart,
body.spp-active .sticky-add-to-cart--active,
body.spp-active .storefront-sticky-add-to-cart,
body.spp-active .woodmart-sticky-btn,
body.spp-active .wd-sticky-btn,
body.spp-active .sticky-atc-bar,
body.spp-active .single_add_to_cart_sticky { display: none !important; }
/* عنوان تکراری «دیدگاه‌ها» داخل تب */
#spp-t-rev #reviews > #comments > h2:first-child,
#spp-t-rev .woocommerce-Reviews-title { display: none; }
/* لوگوهای ستاره پیش‌فرض ووکامرس داخل لیست دیدگاه‌ها رنگ بگیرند */
#spp-t-rev .star-rating span::before,
#spp-t-rev .star-rating::before { color: #f5a623; }

/* ---------- محصولات مرتبط ---------- */
.spp-related { margin-top: 56px; }
.spp-related h2 {
	font-size: 1.25rem;
	font-weight: 800;
	margin-bottom: 20px;
	color: var(--spp-ink);
}
.spp-related ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 18px;
	list-style: none;
	padding: 0;
	margin: 0;
	width: 100%;
}
.spp-related ul.products li.product {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	background: var(--spp-card);
	border: 1px solid var(--spp-line);
	border-radius: 14px;
	overflow: hidden;
	padding: 0 0 14px !important;
	text-align: center;
	transition: transform .2s, box-shadow .2s;
}
.spp-related ul.products li.product:hover {
	transform: translateY(-4px);
	box-shadow: var(--spp-shadow);
}
.spp-related ul.products li.product img { width: 100%; margin: 0 0 10px; }
.spp-related ul.products li.product .woocommerce-loop-product__title {
	font-size: .88rem;
	font-weight: 700;
	padding: 0 12px;
	color: var(--spp-ink);
}
.spp-related ul.products li.product .price { color: var(--spp-accent-dark); font-weight: 700; font-size: .85rem; }
.spp-related ul.products li.product .button {
	background: var(--spp-accent-soft);
	color: var(--spp-accent-dark);
	border-radius: 10px;
	font-size: .8rem;
	padding: 8px 18px;
	margin-top: 8px;
	border: 0;
}

/* ---------- نوار موبایل ---------- */
.spp-mbar {
	position: fixed;
	bottom: 0; right: 0; left: 0;
	z-index: 999;
	display: none;
	background: rgba(255, 255, 255, .96);
	backdrop-filter: blur(10px);
	border-top: 1px solid var(--spp-line);
	padding: 11px 16px calc(11px + env(safe-area-inset-bottom));
	align-items: center;
	gap: 14px;
	box-shadow: 0 -8px 24px rgba(31, 36, 41, .08);
	direction: rtl;
}
.spp-mbar .p { font-weight: 800; font-size: 1rem; white-space: nowrap; color: var(--spp-ink); }
.spp-mbar .p del { font-size: .7rem; color: var(--spp-ink-3); font-weight: 400; display: block; }
.spp-mbar .p ins { text-decoration: none; }
.spp-mbar-btn {
	flex: 1;
	background: linear-gradient(135deg, var(--spp-accent), var(--spp-accent-dark));
	color: #fff;
	font-size: .92rem;
	font-weight: 700;
	border: 0;
	border-radius: 14px;
	padding: 13px 16px;
	box-shadow: 0 8px 20px rgba(185, 138, 78, .35);
}

/* ---------- لایت‌باکس (بزرگ‌نمایی تصاویر) ---------- */
.spp-lightbox {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: rgba(18, 20, 23, .93);
	backdrop-filter: blur(8px);
	opacity: 0;
	visibility: hidden;
	transition: opacity .28s ease, visibility .28s;
	direction: rtl;
}
.spp-lightbox.open { opacity: 1; visibility: visible; }

.spp-lb-close {
	position: absolute;
	top: 18px;
	left: 18px;
	z-index: 5;
	width: 46px;
	height: 46px;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .1);
	color: #fff;
	font-size: 1.5rem;
	line-height: 1;
	display: grid;
	place-items: center;
	cursor: pointer;
	transition: background .2s, transform .2s;
}
.spp-lb-close:hover { background: rgba(255, 255, 255, .22); transform: rotate(90deg); }

.spp-lb-counter {
	position: absolute;
	top: 28px;
	right: 26px;
	z-index: 5;
	color: rgba(255, 255, 255, .85);
	font-size: .88rem;
	font-weight: 600;
	letter-spacing: .06em;
	background: rgba(255, 255, 255, .1);
	padding: 5px 16px;
	border-radius: 99px;
}

/* گردونه اسلایدها */
.spp-lb-track-wrap {
	width: 100%;
	flex: 1;
	min-height: 0;
	overflow: hidden;
	touch-action: pan-y;
}
.spp-lb-track {
	display: flex;
	height: 100%;
	transition: transform .38s cubic-bezier(.33, .8, .35, 1);
	will-change: transform;
}
.spp-lb-slide {
	flex: 0 0 100%;
	min-width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 74px 70px 16px;
}
.spp-lb-slide img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	border-radius: 10px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .5);
	user-select: none;
	-webkit-user-drag: none;
}

/* فلش‌های قبلی/بعدی */
.spp-lb-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 52px;
	height: 52px;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .12);
	color: #fff;
	display: grid;
	place-items: center;
	cursor: pointer;
	transition: background .2s, transform .2s;
}
.spp-lb-arrow svg { width: 24px; height: 24px; }
.spp-lb-arrow:hover { background: rgba(255, 255, 255, .26); }
.spp-lb-arrow.prev { right: 18px; }
.spp-lb-arrow.next { left: 18px; }
.spp-lb-arrow.prev:hover { transform: translateY(-50%) translateX(3px); }
.spp-lb-arrow.next:hover { transform: translateY(-50%) translateX(-3px); }

/* تامبنیل‌های پایین لایت‌باکس */
.spp-lb-thumbs {
	display: flex;
	gap: 9px;
	padding: 14px 20px calc(18px + env(safe-area-inset-bottom));
	justify-content: center;
	flex-wrap: wrap;
	z-index: 5;
}
.spp-lb-thumb {
	width: 58px;
	height: 58px;
	padding: 0;
	border: 2px solid transparent;
	border-radius: 10px;
	overflow: hidden;
	cursor: pointer;
	opacity: .55;
	background: none;
	transition: opacity .2s, border-color .2s, transform .2s;
}
.spp-lb-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.spp-lb-thumb:hover { opacity: .85; }
.spp-lb-thumb.active { opacity: 1; border-color: #fff; transform: translateY(-3px); }

body.spp-lb-open { overflow: hidden; }

@media (max-width: 700px) {
	.spp-lb-slide { padding: 66px 12px 8px; }
	.spp-lb-arrow { width: 42px; height: 42px; }
	.spp-lb-arrow.prev { right: 8px; }
	.spp-lb-arrow.next { left: 8px; }
	.spp-lb-thumb { width: 46px; height: 46px; }
	.spp-lb-counter { top: 24px; right: 16px; font-size: .78rem; }
}

/* ---------- واکنش‌گرا ---------- */
@media (max-width: 900px) {
	.spp-main { grid-template-columns: 1fr; gap: 28px; }
	.spp-gallery { position: static; }
	.spp-title { font-size: 1.3rem !important; }
	.spp-mbar { display: flex; }
	.spp-wrap { padding-bottom: 120px; }
	.spp-related ul.products { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
	.spp-specs .woocommerce-product-attributes th { width: 130px; }
	.spp-buybox form.cart { flex-direction: column; align-items: stretch; }
	.spp-buybox form.cart .single_add_to_cart_button { width: 100%; }
}
