/* ═══════════════════════════════════════════════════════════════════
   Raspina — Single Product V2 (custom WC template, glass UI)
   اسکوپ به .rsp-product-page (در child template اضافه می‌شود)
   ═══════════════════════════════════════════════════════════════════ */

/* ─── Woodmart Layout Builder (elementor-3057) — حذف کامل اگر هنوز رندر شد ─── */
body.single-product .single-product-page.entry-content:not(:has(.rsp-product-page)),
body.single-product .single-product-page > .elementor,
body.single-product .entry-content.product.type-product.single-product-page > .elementor,
body.single-product .elementor.elementor-3057,
body.single-product [data-elementor-id="3057"] {
	display: none !important;
	height: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* مخفی کردن قطعی هر markup قدیمی Elementor/Woodmart که ممکن است
   خارج از shell ما رندر شود (در صورت کش‌مانده) */
body.single-product .wd-page-content .elementor-location-single,
body.single-product .wd-page-content > .elementor:not(.rsp-product-page),
body.single-product .wd-page-content .elementor-add-section,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-title,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-price,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-content,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-short-description,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-images,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-add-to-cart,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-meta,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-data-tabs,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-related,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-upsell,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-rating,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-stock,
body.single-product .wd-page-content .elementor-widget-woocommerce-product-additional-information,
body.single-product .wd-page-content .elementor-widget-woodmart-product-brand,
body.single-product .wd-page-content .elementor-widget-woodmart-single-product-brand,
body.single-product .wd-page-content .product-image-summary-wrap,
body.single-product .wd-page-content .product-tabs-wrapper,
body.single-product .wd-page-content .related-and-upsells,
body.single-product .wd-page-content .single-breadcrumbs-wrapper,
body.single-product .wd-page-content .wd-products-nav,
body.single-product .wd-page-content .product.type-product:not(.rsp-product-page),
body.single-product .wd-page-title.page-title,
body.single-product .wd-bottom-bar,
body.single-product .wd-sticky-btn-wrapper,
body.single-product .wd-sticky-add-to-cart {
	display: none !important;
}

body.single-product .rsp-product-page-shell,
body.single-product .rsp-product-page,
body.single-product .rsp-product-page * {
	box-sizing: border-box;
}

body.single-product .rsp-product-page-wrap {
	display: block;
	width: 100%;
	max-width: 100%;
	clear: both;
	position: relative;
	z-index: 1;
}
body.single-product .rsp-product-page-shell {
	display: block;
	width: 100%;
	max-width: 100%;
	clear: both;
	position: relative;
	/* بدون overflow:hidden تا position:sticky گالری روی دسکتاپ کار کند */
}

/* اطمینان از باز بودن wrapper استاندارد ووکامرس بعد از shell ما */
body.single-product #main,
body.single-product .site-main,
body.single-product .wd-content-wrapper {
	width: 100%;
	max-width: 100%;
	display: block;
	clear: both;
}

body.single-product {
	--rsp-sp-primary: #c62828;
	--rsp-sp-primary-soft: #e53935;
	--rsp-sp-bg-deep: #7f171c;
	--rsp-sp-gold: #d4af37;
	--rsp-sp-gold-light: #ffe082;
	--rsp-sp-gold-mid: #ffd54f;
	--rsp-sp-cream: #f7f0e6;
	--rsp-sp-cream-warm: #efe6d8;
	--rsp-sp-text: #3f2723;
	--rsp-sp-muted: #7a5e55;
	--rsp-sp-glass: rgba(255, 255, 255, 0.52);
	--rsp-sp-glass-strong: rgba(255, 255, 255, 0.78);
	--rsp-sp-stroke: rgba(201, 161, 59, 0.35);
	--rsp-sp-stroke-soft: rgba(255, 255, 255, 0.55);
	--rsp-sp-shadow: 0 18px 50px rgba(83, 45, 36, 0.12);
	--rsp-sp-shadow-deep: 0 24px 60px rgba(45, 12, 14, 0.16);
	--rsp-sp-radius: clamp(16px, 2vw, 24px);
	--rsp-sp-radius-sm: 12px;
	--rsp-sp-blur: blur(20px) saturate(165%);
	--rsp-safe-bottom: env(safe-area-inset-bottom, 0px);
}

/* پس‌زمینه عمومی صفحه */
body.single-product .wd-page-content {
	position: relative;
	isolation: isolate;
	background:
		radial-gradient(120% 60% at 100% 0%, rgba(198, 40, 40, 0.08) 0%, transparent 55%),
		radial-gradient(80% 45% at 0% 25%, rgba(212, 175, 55, 0.1) 0%, transparent 50%),
		linear-gradient(175deg, #fffcf8 0%, var(--rsp-sp-cream) 45%, var(--rsp-sp-cream-warm) 100%);
	padding-top: 0 !important;
	padding-bottom: calc(96px + var(--rsp-safe-bottom));
	font-family: "Vazirmatn", system-ui, sans-serif;
	color: var(--rsp-sp-text);
}
@media (min-width: 1024px) {
	body.single-product .wd-page-content {
		padding-bottom: clamp(24px, 4vw, 48px);
	}
}

body.single-product #main-content {
	padding-top: clamp(10px, 2vw, 18px) !important;
}

/* مخفی کردن عنوان پیش‌فرض Woodmart */
body.single-product .wd-page-title.page-title { display: none !important; }

/* اطمینان از پاک بودن wrappers قدیمی Woodmart */
body.single-product .product-image-summary-wrap,
body.single-product .product-image-summary,
body.single-product .product-tabs-wrapper,
body.single-product .related-and-upsells > .related.products {
	display: none !important;
}

/* ─── کانتینر اصلی ─── */
.rsp-product-page {
	width: min(1240px, 100% - clamp(12px, 4vw, 40px));
	max-width: 100%;
	margin-inline: auto;
	padding-block: clamp(8px, 1.5vw, 16px);
	font-family: "Vazirmatn", system-ui, sans-serif;
	display: block;
	clear: both;
	position: relative;
	overflow: visible;
	z-index: 2;
}

/* Breadcrumb شیشه‌ای */
.rsp-product-page > .rsp-bc,
.rsp-product-page .rsp-bc.woocommerce-breadcrumb {
	display: inline-flex !important;
	width: -moz-fit-content;
	width: fit-content;
	max-width: 100%;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.55rem;
	padding: 0.55rem 1rem;
	margin: 0 0 clamp(12px, 2vw, 20px);
	background: var(--rsp-sp-glass);
	-webkit-backdrop-filter: var(--rsp-sp-blur);
	backdrop-filter: var(--rsp-sp-blur);
	border: 1px solid var(--rsp-sp-stroke);
	border-radius: 999px;
	box-shadow: 0 8px 28px rgba(83, 45, 36, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.65);
	font-size: clamp(0.78rem, 2vw, 0.88rem);
	color: var(--rsp-sp-muted);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	float: none !important;
	text-align: start;
}
.rsp-product-page .rsp-bc a {
	color: var(--rsp-sp-text);
	text-decoration: none;
	transition: color 0.2s ease;
}
.rsp-product-page .rsp-bc a:hover { color: var(--rsp-sp-primary); }
.rsp-product-page .rsp-bc__sep { color: rgba(122, 94, 85, 0.45); }

/* گرید اصلی */
.rsp-product-page .rsp-product-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(16px, 3vw, 28px);
	align-items: start;
}
@media (min-width: 900px) {
	.rsp-product-page .rsp-product-grid {
		grid-template-columns: minmax(280px, 1fr) minmax(320px, 1.05fr);
		gap: clamp(20px, 3vw, 40px);
	}
}
@media (min-width: 1200px) {
	.rsp-product-page .rsp-product-grid {
		grid-template-columns: 1.1fr 1fr;
	}
}

/* ─── گالری ─── */
.rsp-product-page .rsp-gallery {
	position: sticky;
	top: clamp(60px, 12vw, 88px);
	display: flex;
	flex-direction: column;
	gap: clamp(10px, 2vw, 14px);
}
@media (max-width: 899px) {
	.rsp-product-page .rsp-gallery {
		position: relative;
		top: auto;
	}
}

.rsp-product-page .rsp-gallery__main {
	position: relative;
	aspect-ratio: 4 / 5;
	max-height: min(72vh, 680px);
	margin-inline: auto;
	width: 100%;
	border-radius: var(--rsp-sp-radius);
	overflow: hidden;
	background: linear-gradient(145deg, rgba(255, 255, 255, 0.4), rgba(247, 240, 230, 0.85));
	border: 1px solid var(--rsp-sp-stroke-soft);
	box-shadow: var(--rsp-sp-shadow-deep);
}
.rsp-product-page .rsp-gallery__main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.rsp-product-page .rsp-gallery__main:hover img { transform: scale(1.03); }
.rsp-product-page .rsp-gallery__main video {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	background: #16110e;
}
.rsp-product-page .rsp-gallery__main.is-showing-video .rsp-gallery__zoom-hint { display: none; }

.rsp-product-page .rsp-gallery__sale {
	position: absolute;
	inset-block-start: 14px;
	inset-inline-start: 14px;
	z-index: 2;
	font-size: 0.78rem;
	font-weight: 800;
	padding: 0.35rem 0.7rem;
	color: #fff;
	background: linear-gradient(135deg, var(--rsp-sp-primary), var(--rsp-sp-primary-soft));
	border-radius: 999px;
	box-shadow: 0 8px 22px rgba(198, 40, 40, 0.35);
}

.rsp-product-page .rsp-gallery__zoom-hint {
	position: absolute;
	inset-inline-end: 12px;
	inset-block-end: 12px;
	padding: 0.4rem 0.75rem;
	font-size: 0.72rem;
	font-weight: 600;
	color: var(--rsp-sp-text);
	background: var(--rsp-sp-glass-strong);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	border-radius: 999px;
	border: 1px solid var(--rsp-sp-stroke-soft);
	opacity: 0;
	transform: translateY(6px);
	transition: opacity 0.25s ease, transform 0.25s ease;
	pointer-events: none;
}
.rsp-product-page .rsp-gallery__main:hover .rsp-gallery__zoom-hint {
	opacity: 1;
	transform: translateY(0);
}

.rsp-product-page .rsp-thumbs-carousel {
	--rsp-thumb-size: clamp(64px, 12vw, 88px);
	display: grid;
	grid-template-columns: 0 minmax(0, 1fr) 0;
	align-items: center;
	gap: 8px;
	min-width: 0;
}
.rsp-product-page .rsp-thumbs-carousel.has-overflow {
	grid-template-columns: 44px minmax(0, 1fr) 44px;
}
.rsp-product-page .rsp-thumbs {
	display: flex;
	flex-wrap: nowrap;
	gap: clamp(7px, 1.5vw, 10px);
	min-width: 0;
	overflow-x: auto;
	overflow-y: visible;
	padding: 4px;
	margin: -4px;
	scroll-snap-type: inline mandatory;
	scroll-padding-inline: 4px;
	overscroll-behavior-inline: contain;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: rgba(198, 40, 40, 0.4) transparent;
}
.rsp-product-page .rsp-thumbs::-webkit-scrollbar { height: 5px; }
.rsp-product-page .rsp-thumbs::-webkit-scrollbar-thumb { background: rgba(198, 40, 40, 0.4); border-radius: 4px; }
.rsp-product-page .rsp-thumbs-carousel__control {
	width: 44px;
	height: 44px;
	padding: 0;
	display: grid;
	place-items: center;
	border: 1px solid rgba(137, 97, 49, 0.22);
	border-radius: 14px;
	color: var(--rsp-sp-primary);
	background: rgba(255, 252, 246, 0.78);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	box-shadow: 0 6px 16px rgba(72, 46, 27, 0.1);
	cursor: pointer;
	font: 700 2rem/1 Arial, sans-serif;
	transition: transform .2s ease, opacity .2s ease, border-color .2s ease;
}
.rsp-product-page .rsp-thumbs-carousel__control:hover:not(:disabled) { transform: translateY(-1px); border-color: rgba(198, 40, 40, .5); }
.rsp-product-page .rsp-thumbs-carousel__control:disabled { opacity: .35; cursor: default; }

.rsp-product-page .rsp-thumb {
	position: relative;
	flex: 0 0 var(--rsp-thumb-size);
	aspect-ratio: 1;
	border-radius: var(--rsp-sp-radius-sm);
	overflow: hidden;
	cursor: pointer;
	border: 2px solid transparent;
	background: rgba(255, 255, 255, 0.35);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	padding: 0;
	scroll-snap-align: start;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.rsp-product-page .rsp-thumb:hover {
	border-color: rgba(198, 40, 40, 0.35);
	box-shadow: 0 8px 24px rgba(198, 40, 40, 0.12);
	transform: translateY(-2px);
}
.rsp-product-page .rsp-thumb.is-active {
	border-color: var(--rsp-sp-primary);
	box-shadow: 0 0 0 3px rgba(198, 40, 40, 0.15);
}
.rsp-product-page .rsp-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.rsp-product-page .rsp-thumb__video-tile {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 7px;
	color: #69511e;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, .72), rgba(236, 213, 153, .7)),
		linear-gradient(45deg, #fff8e8, #e5c26f);
	font-size: .67rem;
	font-weight: 800;
	line-height: 1.25;
}
.rsp-product-page .rsp-thumb__play {
	width: 30px;
	height: 30px;
	display: grid;
	place-items: center;
	padding-inline-start: 2px;
	border: 1px solid rgba(105, 81, 30, .35);
	border-radius: 50%;
	background: rgba(255, 255, 255, .6);
	box-shadow: 0 3px 10px rgba(105, 81, 30, .14);
	font-size: .75rem;
}
.rsp-product-page .rsp-thumb--video.is-active { border-color: #b48a2b; box-shadow: 0 0 0 3px rgba(180, 138, 43, .2); }
.rsp-product-page .rsp-thumb:focus-visible,
.rsp-product-page .rsp-thumbs-carousel__control:focus-visible {
	outline: 3px solid rgba(198, 40, 40, .55);
	outline-offset: 3px;
}
@media (max-width: 599px) {
	.rsp-product-page .rsp-thumbs-carousel { --rsp-thumb-size: 68px; gap: 6px; }
	.rsp-product-page .rsp-thumbs-carousel.has-overflow { grid-template-columns: 44px minmax(0, 1fr) 44px; }
}
@media (prefers-reduced-motion: reduce) {
	.rsp-product-page .rsp-thumbs,
	.rsp-product-page .rsp-thumb,
	.rsp-product-page .rsp-thumbs-carousel__control,
	.rsp-product-page .rsp-gallery__main img { scroll-behavior: auto; transition: none; }
}

/* ─── پنل جزئیات ─── */
.rsp-product-page .rsp-panel {
	background: var(--rsp-sp-glass);
	-webkit-backdrop-filter: var(--rsp-sp-blur);
	backdrop-filter: var(--rsp-sp-blur);
	border: 1px solid var(--rsp-sp-stroke);
	border-radius: var(--rsp-sp-radius);
	box-shadow: var(--rsp-sp-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.6);
	padding: clamp(16px, 3vw, 26px);
}

.rsp-product-page .rsp-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}
.rsp-product-page .rsp-badge {
	font-size: 0.72rem;
	font-weight: 700;
	padding: 0.35rem 0.7rem;
	border-radius: 999px;
	letter-spacing: 0.02em;
}
.rsp-product-page .rsp-badge--sale {
	background: linear-gradient(135deg, var(--rsp-sp-primary), var(--rsp-sp-primary-soft));
	color: #fff;
	box-shadow: 0 4px 14px rgba(198, 40, 40, 0.35);
}
.rsp-product-page .rsp-badge--gold {
	background: linear-gradient(135deg, var(--rsp-sp-gold-mid), var(--rsp-sp-gold));
	color: var(--rsp-sp-text);
	border: 1px solid rgba(255, 255, 255, 0.5);
}
.rsp-product-page .rsp-badge--stock-out {
	background: rgba(122, 94, 85, 0.18);
	color: var(--rsp-sp-text);
}

.rsp-product-page .rsp-title {
	font-size: clamp(1.35rem, 4.2vw, 1.85rem);
	font-weight: 800;
	line-height: 1.3;
	margin: 0 0 0.5rem;
	color: var(--rsp-sp-text);
}
.rsp-product-page .rsp-sub {
	font-size: clamp(0.85rem, 2vw, 0.95rem);
	color: var(--rsp-sp-muted);
	margin: 0 0 1rem;
	line-height: 1.7;
}

.rsp-product-page .rsp-rating-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 1rem;
	margin-bottom: 1.1rem;
}
.rsp-product-page .rsp-stars {
	display: inline-flex;
	gap: 3px;
	color: var(--rsp-sp-gold);
	font-size: 1.05rem;
	letter-spacing: 1px;
}
.rsp-product-page .rsp-rating-meta { font-size: 0.82rem; color: var(--rsp-sp-muted); }

.rsp-product-page .rsp-price-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.65rem 1rem;
	margin-bottom: 1.25rem;
	padding: 0.85rem 1rem;
	border-radius: var(--rsp-sp-radius-sm);
	background: rgba(255, 255, 255, 0.45);
	border: 1px solid var(--rsp-sp-stroke-soft);
}
.rsp-product-page .rsp-price-row .price { margin: 0; line-height: 1; }
.rsp-product-page .rsp-price-row .price ins {
	background: none;
	text-decoration: none;
	font-weight: 800;
}
.rsp-product-page .rsp-price-row .price del .woocommerce-Price-amount,
.rsp-product-page .rsp-price-row .price del {
	font-size: 0.95rem;
	color: var(--rsp-sp-muted);
	margin-inline-end: 0.5rem;
	opacity: 0.9;
	text-decoration: line-through;
}
.rsp-product-page .rsp-price-row .price ins .woocommerce-Price-amount,
.rsp-product-page .rsp-price-row .price > .woocommerce-Price-amount {
	font-size: clamp(1.35rem, 4vw, 1.65rem);
	font-weight: 800;
	color: var(--rsp-sp-primary);
}
.rsp-product-page .rsp-price-row .woocommerce-Price-currencySymbol {
	font-size: 0.82em;
	font-weight: 700;
	color: var(--rsp-sp-muted);
	margin-inline-start: 4px;
}
.rsp-product-page .rsp-price-save {
	font-size: 0.78rem;
	font-weight: 700;
	padding: 0.25rem 0.55rem;
	border-radius: 8px;
	background: rgba(212, 175, 55, 0.25);
	color: var(--rsp-sp-text);
}

/* فرم cart ووکامرس */
.rsp-product-page form.cart {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0;
	padding: 0;
	border: none;
	background: none;
}

/* جدول variations */
.rsp-product-page .variations {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 0.5rem;
	background: none;
	border: none;
}
.rsp-product-page .variations tr {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 10px;
}
.rsp-product-page .variations th {
	font-weight: 700;
	font-size: 0.88rem;
	color: var(--rsp-sp-text);
	padding: 0;
	background: none;
	border: none;
	text-align: start;
}
.rsp-product-page .variations td {
	padding: 0;
	background: none;
	border: none;
}
.rsp-product-page .variations td.value {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}
.rsp-product-page .variations select {
	min-height: 44px;
	padding: 0.55rem 0.9rem;
	font-family: inherit;
	font-size: 0.92rem;
	border-radius: 12px;
	border: 1px solid var(--rsp-sp-stroke);
	background: rgba(255, 255, 255, 0.55);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	color: var(--rsp-sp-text);
	cursor: pointer;
	min-width: 140px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.rsp-product-page .variations select:focus {
	outline: none;
	border-color: var(--rsp-sp-primary);
	box-shadow: 0 0 0 4px rgba(198, 40, 40, 0.12);
}
.rsp-product-page .reset_variations {
	font-size: 0.8rem;
	color: var(--rsp-sp-muted);
	text-decoration: underline;
	cursor: pointer;
}
.rsp-product-page .reset_variations:hover { color: var(--rsp-sp-primary); }

/* variant-options (color swatches in variations table) */
.rsp-product-page .variant-options,
.rsp-product-page .rsp-variation-color-options {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 10px;
	align-items: flex-start;
}

.rsp-product-page .variant-option.variant-color {
	position: relative;
	display: block;
	min-width: 72px;
	max-width: 96px;
}

.rsp-product-page .variant-option.variant-color > span:first-child {
	display: none;
}

.rsp-product-page .rsp-wh-color-input {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.rsp-product-page .variant-option.variant-color label {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	margin: 0;
	cursor: pointer;
	transition: transform 0.2s ease;
}

.rsp-product-page .variant-option.variant-color label:hover {
	transform: translateY(-2px);
}

.rsp-product-page .variant-color-preview {
	position: relative;
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background-color: var(--bg-color, #d9d2c8);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	border: 2px solid rgba(255, 255, 255, 0.95);
	box-shadow:
		0 4px 14px rgba(0, 0, 0, 0.12),
		inset 0 0 0 1px rgba(0, 0, 0, 0.06);
	overflow: hidden;
}

.rsp-product-page .variant-color-preview--image {
	background-color: #f0ebe3;
}

.rsp-product-page .variant-color-preview > span {
	display: none;
}

.rsp-product-page .variant-color-body {
	width: 100%;
	text-align: center;
}

.rsp-product-page .variant-color-body > span {
	font-size: 0.72rem;
	font-weight: 700;
	color: #5c5348;
	line-height: 1.35;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.rsp-product-page .variant-option.variant-color.is-selected .variant-color-preview {
	box-shadow:
		0 4px 14px rgba(0, 0, 0, 0.12),
		inset 0 0 0 1px rgba(0, 0, 0, 0.06),
		0 0 0 3px rgba(198, 40, 40, 0.22);
	outline: 2px solid var(--rsp-sp-primary, #c62828);
	outline-offset: 2px;
}

.rsp-product-page .variant-option.variant-color.is-selected .variant-color-body > span {
	color: var(--rsp-sp-primary, #c62828);
}

.rsp-product-page .rsp-variation-select-hidden {
	display: none !important;
}

.rsp-product-page .rsp-wholesale-attr-note {
	margin: 0 0 0.75rem;
	font-size: 0.85rem;
	line-height: 1.65;
	color: #6b6560;
}

/* swatches: کلیک‌پذیر / دایره و مستطیل */
.rsp-product-page .wd-swatch,
.rsp-product-page .wd-swatches-attr .wd-swatch {
	border-radius: 12px !important;
	border: 1px solid var(--rsp-sp-stroke) !important;
	background: rgba(255, 255, 255, 0.45) !important;
	min-width: 44px;
	min-height: 44px;
	transition: all 0.2s ease;
}
.rsp-product-page .wd-swatch.wd-active,
.rsp-product-page .wd-swatch:hover {
	border-color: var(--rsp-sp-primary) !important;
	color: var(--rsp-sp-primary) !important;
	box-shadow: 0 4px 16px rgba(198, 40, 40, 0.12);
}

.rsp-product-page .single_variation_wrap { margin: 0; }
.rsp-product-page .woocommerce-variation-price { margin-bottom: 10px; }
.rsp-product-page .woocommerce-variation-availability { margin-bottom: 8px; font-size: 0.88rem; }

/* ردیف تعداد + دکمه */
.rsp-product-page .rsp-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 12px;
}

.rsp-product-page .quantity,
.rsp-product-page .rsp-qty {
	display: inline-flex;
	align-items: center;
	border-radius: 14px;
	border: 1px solid var(--rsp-sp-stroke);
	background: rgba(255, 255, 255, 0.5);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	overflow: hidden;
	height: 50px;
}
.rsp-product-page .quantity .qty,
.rsp-product-page .rsp-qty input {
	width: 56px;
	height: 100%;
	border: none;
	background: transparent;
	text-align: center;
	font-weight: 700;
	font-size: 1rem;
	font-family: inherit;
	color: var(--rsp-sp-text);
	padding: 0;
	box-shadow: none;
}
.rsp-product-page .quantity .qty::-webkit-outer-spin-button,
.rsp-product-page .quantity .qty::-webkit-inner-spin-button,
.rsp-product-page .rsp-qty input::-webkit-outer-spin-button,
.rsp-product-page .rsp-qty input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.rsp-product-page .quantity .qty { -moz-appearance: textfield; appearance: textfield; }
.rsp-product-page .quantity .plus,
.rsp-product-page .quantity .minus,
.rsp-product-page .rsp-qty button {
	width: 44px;
	height: 100%;
	border: none;
	background: transparent;
	font-size: 1.25rem;
	font-weight: 700;
	cursor: pointer;
	color: var(--rsp-sp-text);
	transition: background 0.2s ease, color 0.2s ease;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.rsp-product-page .quantity .plus:hover,
.rsp-product-page .quantity .minus:hover,
.rsp-product-page .rsp-qty button:hover {
	background: rgba(198, 40, 40, 0.08);
	color: var(--rsp-sp-primary);
}

/* دکمه‌ها */
.rsp-product-page .rsp-btn,
.rsp-product-page button.single_add_to_cart_button,
.rsp-product-page .single_add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: 50px;
	padding: 0 1.35rem;
	font-family: inherit;
	font-weight: 700;
	font-size: 0.95rem;
	border-radius: 14px !important;
	cursor: pointer;
	border: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
	text-align: center;
	line-height: 1.2;
}
.rsp-product-page .rsp-btn:active,
.rsp-product-page .single_add_to_cart_button:active { transform: scale(0.98); }

.rsp-product-page button.single_add_to_cart_button,
.rsp-product-page .single_add_to_cart_button,
.rsp-product-page .rsp-btn--primary {
	flex: 1 1 180px;
	color: #fff !important;
	background: linear-gradient(135deg, rgba(198, 40, 40, 0.95), rgba(229, 57, 53, 0.9)) !important;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	box-shadow: 0 10px 32px rgba(198, 40, 40, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
}
.rsp-product-page button.single_add_to_cart_button:hover,
.rsp-product-page .single_add_to_cart_button:hover,
.rsp-product-page .rsp-btn--primary:hover {
	box-shadow: 0 14px 40px rgba(198, 40, 40, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
	transform: translateY(-1px);
}

.rsp-product-page .rsp-btn--ghost {
	min-width: 50px;
	padding-inline: 14px;
	color: var(--rsp-sp-text);
	background: rgba(255, 255, 255, 0.5);
	border: 1px solid var(--rsp-sp-stroke);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
.rsp-product-page .rsp-btn--ghost:hover {
	border-color: var(--rsp-sp-primary);
	color: var(--rsp-sp-primary);
	background: rgba(198, 40, 40, 0.06);
}
.rsp-product-page .rsp-btn--ghost svg,
.rsp-product-page .rsp-btn--ghost .fa,
.rsp-product-page .rsp-btn--ghost .far,
.rsp-product-page .rsp-btn--ghost .fas {
	font-size: 1.1rem;
}

/* وضعیت موجودی */
.rsp-product-page .rsp-stock,
.rsp-product-page .stock {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.85rem;
	font-weight: 600;
	margin: 0 0 1rem;
	padding: 0;
	background: none;
	color: #2e7d32;
}
.rsp-product-page .rsp-stock::before,
.rsp-product-page .stock::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #43a047;
	box-shadow: 0 0 0 4px rgba(67, 160, 71, 0.2);
}
.rsp-product-page .stock.out-of-stock { color: #c62828; }
.rsp-product-page .stock.out-of-stock::before { background: #c62828; box-shadow: 0 0 0 4px rgba(198, 40, 40, 0.2); }

/* meta (SKU، دسته‌ها، برچسب‌ها) */
.rsp-product-page .rsp-meta {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(201, 161, 59, 0.2);
	font-size: 0.82rem;
	color: var(--rsp-sp-muted);
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}
.rsp-product-page .rsp-meta__row { display: flex; flex-wrap: wrap; gap: 0.35rem; align-items: baseline; }
.rsp-product-page .rsp-meta__label { font-weight: 700; color: var(--rsp-sp-text); }
.rsp-product-page .rsp-meta a { color: var(--rsp-sp-text); text-decoration: none; }
.rsp-product-page .rsp-meta a:hover { color: var(--rsp-sp-primary); }

/* ─── آکاردئون / تب‌ها ─── */
.rsp-product-page .rsp-acc { margin-top: 0.5rem; }
.rsp-product-page .rsp-acc__item {
	border-bottom: 1px solid rgba(201, 161, 59, 0.2);
}
.rsp-product-page .rsp-acc__item:last-child { border-bottom: none; }
.rsp-product-page .rsp-acc__head {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 1rem 0;
	font-family: inherit;
	font-size: 0.95rem;
	font-weight: 700;
	color: var(--rsp-sp-text);
	background: none;
	border: none;
	cursor: pointer;
	text-align: start;
}
.rsp-product-page .rsp-acc__head:hover { color: var(--rsp-sp-primary); }
.rsp-product-page .rsp-acc__icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	display: grid;
	place-items: center;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.5);
	border: 1px solid var(--rsp-sp-stroke-soft);
	transition: transform 0.25s ease;
	font-size: 0.9rem;
}
.rsp-product-page .rsp-acc__item.is-open .rsp-acc__icon { transform: rotate(180deg); }
.rsp-product-page .rsp-acc__body {
	display: none;
	padding-bottom: 1rem;
	font-size: 0.9rem;
	color: var(--rsp-sp-muted);
	line-height: 1.85;
}
.rsp-product-page .rsp-acc__item.is-open .rsp-acc__body { display: block; }
.rsp-product-page .rsp-acc__body p { margin: 0 0 0.75rem; color: var(--rsp-sp-text); }
.rsp-product-page .rsp-acc__body ul,
.rsp-product-page .rsp-acc__body ol { padding-inline-start: 1.5rem; margin: 0 0 0.75rem; color: var(--rsp-sp-text); }

/* جدول مشخصات */
.rsp-product-page .rsp-spec,
.rsp-product-page .shop_attributes {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.85rem;
	margin: 0;
	background: none;
}
.rsp-product-page .rsp-spec th,
.rsp-product-page .rsp-spec td,
.rsp-product-page .shop_attributes th,
.rsp-product-page .shop_attributes td {
	padding: 0.6rem 0.7rem;
	border-bottom: 1px solid rgba(201, 161, 59, 0.18);
	background: none !important;
	text-align: start;
}
.rsp-product-page .rsp-spec th,
.rsp-product-page .shop_attributes th {
	font-weight: 700;
	color: var(--rsp-sp-text);
	width: 38%;
}
.rsp-product-page .rsp-spec td,
.rsp-product-page .shop_attributes td {
	color: var(--rsp-sp-text);
}
.rsp-product-page .shop_attributes p { margin: 0; }

/* ─── محصولات مرتبط ─── */
.rsp-product-page .rsp-section-title {
	font-size: clamp(1.1rem, 3vw, 1.35rem);
	font-weight: 800;
	margin: clamp(28px, 5vw, 48px) 0 clamp(14px, 2vw, 20px);
	color: var(--rsp-sp-text);
}

.rsp-product-page .rsp-related {
	display: flex;
	flex-wrap: nowrap;
	gap: clamp(10px, 2vw, 16px);
	overflow-x: auto;
	overflow-y: hidden;
	padding-bottom: 8px;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	/* جلوگیری از گسترش بیرون از کانتینر */
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	clear: both;
	position: relative;
}
.rsp-product-page .rsp-related::-webkit-scrollbar { height: 6px; }
.rsp-product-page .rsp-related::-webkit-scrollbar-thumb {
	background: rgba(198, 40, 40, 0.25);
	border-radius: 99px;
}

.rsp-product-page .rsp-card {
	scroll-snap-align: start;
	flex: 0 0 auto;
	width: clamp(160px, 44vw, 220px);
	border-radius: var(--rsp-sp-radius-sm);
	overflow: hidden;
	background: var(--rsp-sp-glass);
	-webkit-backdrop-filter: var(--rsp-sp-blur);
	backdrop-filter: var(--rsp-sp-blur);
	border: 1px solid var(--rsp-sp-stroke);
	box-shadow: var(--rsp-sp-shadow);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	text-decoration: none;
	color: inherit;
	display: flex;
	flex-direction: column;
}
.rsp-product-page .rsp-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--rsp-sp-shadow-deep);
}
.rsp-product-page .rsp-card__img {
	aspect-ratio: 1;
	overflow: hidden;
}
.rsp-product-page .rsp-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.45s ease;
	display: block;
}
.rsp-product-page .rsp-card:hover .rsp-card__img img { transform: scale(1.06); }
.rsp-product-page .rsp-card__body { padding: 0.65rem 0.75rem 0.85rem; }
.rsp-product-page .rsp-card__title {
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.4;
	margin: 0 0 0.35rem;
	color: var(--rsp-sp-text);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.rsp-product-page .rsp-card__price {
	font-weight: 800;
	font-size: 0.88rem;
	color: var(--rsp-sp-primary);
}
.rsp-product-page .rsp-card__price del { color: var(--rsp-sp-muted); font-weight: 400; margin-inline-end: 0.4rem; }
.rsp-product-page .rsp-card__price ins { background: none; text-decoration: none; }

/* ─── نوار چسبان موبایل ─── */
.rsp-sticky-bar {
	position: fixed;
	inset-inline: 0;
	inset-block-end: 0;
	z-index: 150;
	padding: 10px clamp(12px, 4vw, 20px) calc(10px + env(safe-area-inset-bottom, 0px));
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--rsp-sp-glass-strong);
	-webkit-backdrop-filter: var(--rsp-sp-blur);
	backdrop-filter: var(--rsp-sp-blur);
	border-top: 1px solid var(--rsp-sp-stroke);
	box-shadow: 0 -12px 40px rgba(45, 12, 14, 0.12);
	transform: translateY(110%);
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
.rsp-sticky-bar.is-visible { transform: translateY(0); }
@media (min-width: 1024px) {
	.rsp-sticky-bar { display: none; }
}
.rsp-sticky-bar__price {
	flex-shrink: 0;
	font-weight: 800;
	font-size: 0.95rem;
	color: var(--rsp-sp-primary);
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.rsp-sticky-bar__price .woocommerce-Price-amount { font-weight: 800; color: var(--rsp-sp-primary); }
.rsp-sticky-bar__price del { display: none; }
.rsp-sticky-bar .rsp-btn {
	flex: 1;
	min-height: 50px;
	color: #fff !important;
	background: linear-gradient(135deg, rgba(198, 40, 40, 0.95), rgba(229, 57, 53, 0.9)) !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	box-shadow: 0 10px 32px rgba(198, 40, 40, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
	font-weight: 700;
	border-radius: 14px;
}

/* ─── بخش نظرات ─── */
.rsp-product-page .rsp-reviews {
	margin-top: clamp(28px, 5vw, 48px);
	padding: clamp(18px, 3vw, 32px);
	background: var(--rsp-sp-glass);
	-webkit-backdrop-filter: var(--rsp-sp-blur);
	backdrop-filter: var(--rsp-sp-blur);
	border: 1px solid var(--rsp-sp-stroke);
	border-radius: var(--rsp-sp-radius);
	box-shadow: var(--rsp-sp-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

.rsp-product-page .rsp-reviews__head {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(14px, 3vw, 24px);
	margin-bottom: clamp(18px, 3vw, 28px);
	padding-bottom: clamp(14px, 2.5vw, 22px);
	border-bottom: 1px solid rgba(201, 161, 59, 0.2);
}
@media (min-width: 720px) {
	.rsp-product-page .rsp-reviews__head {
		grid-template-columns: minmax(180px, 260px) 1fr;
		align-items: center;
	}
}

.rsp-product-page .rsp-reviews__score {
	text-align: center;
	padding: clamp(14px, 2vw, 22px);
	border-radius: var(--rsp-sp-radius-sm);
	background: linear-gradient(145deg, rgba(255, 248, 235, 0.85), rgba(247, 240, 230, 0.65));
	border: 1px solid var(--rsp-sp-stroke-soft);
}
.rsp-product-page .rsp-reviews__score-num {
	display: block;
	font-size: clamp(2.4rem, 6vw, 3.2rem);
	font-weight: 800;
	line-height: 1;
	color: var(--rsp-sp-primary);
	margin-bottom: 0.35rem;
}
.rsp-product-page .rsp-reviews__score-stars {
	display: inline-flex;
	gap: 3px;
	color: var(--rsp-sp-gold);
	font-size: 1.15rem;
	letter-spacing: 2px;
	margin-bottom: 0.4rem;
}
.rsp-product-page .rsp-reviews__score-meta {
	font-size: 0.82rem;
	color: var(--rsp-sp-muted);
	font-weight: 600;
}

.rsp-product-page .rsp-reviews__bars {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.rsp-product-page .rsp-reviews__bar {
	display: grid;
	grid-template-columns: 36px 1fr 42px;
	align-items: center;
	gap: 10px;
	font-size: 0.8rem;
	font-weight: 600;
	color: var(--rsp-sp-muted);
}
.rsp-product-page .rsp-reviews__bar-label {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	color: var(--rsp-sp-text);
}
.rsp-product-page .rsp-reviews__bar-label::after { content: "★"; color: var(--rsp-sp-gold); }
.rsp-product-page .rsp-reviews__bar-track {
	position: relative;
	height: 8px;
	border-radius: 99px;
	background: rgba(122, 94, 85, 0.12);
	overflow: hidden;
}
.rsp-product-page .rsp-reviews__bar-fill {
	position: absolute;
	inset-block: 0;
	inset-inline-end: 0;
	background: linear-gradient(90deg, var(--rsp-sp-gold-light), var(--rsp-sp-gold));
	border-radius: 99px;
}
.rsp-product-page .rsp-reviews__bar-count {
	text-align: end;
	font-variant-numeric: tabular-nums;
	color: var(--rsp-sp-muted);
}

.rsp-product-page .rsp-review-list { display: flex; flex-direction: column; gap: clamp(12px, 2vw, 18px); }
.rsp-product-page .rsp-review {
	padding: clamp(14px, 2.5vw, 20px);
	background: rgba(255, 255, 255, 0.55);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: 1px solid var(--rsp-sp-stroke-soft);
	border-radius: var(--rsp-sp-radius-sm);
}
.rsp-product-page .rsp-review__top {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 0.6rem;
	flex-wrap: wrap;
}
.rsp-product-page .rsp-review__avatar {
	flex-shrink: 0;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	font-weight: 800;
	color: #fff;
	background: linear-gradient(135deg, var(--rsp-sp-primary), var(--rsp-sp-bg-deep));
	box-shadow: 0 6px 18px rgba(198, 40, 40, 0.25);
}
.rsp-product-page .rsp-review__avatar img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
}
.rsp-product-page .rsp-review__who { line-height: 1.3; }
.rsp-product-page .rsp-review__name { font-weight: 700; color: var(--rsp-sp-text); font-size: 0.92rem; }
.rsp-product-page .rsp-review__verified {
	margin-inline-start: 6px;
	font-size: 0.7rem;
	font-weight: 700;
	padding: 0.15rem 0.45rem;
	border-radius: 99px;
	color: #2e7d32;
	background: rgba(67, 160, 71, 0.12);
	border: 1px solid rgba(67, 160, 71, 0.25);
}
.rsp-product-page .rsp-review__date { font-size: 0.75rem; color: var(--rsp-sp-muted); }
.rsp-product-page .rsp-review__stars {
	margin-inline-start: auto;
	color: var(--rsp-sp-gold);
	letter-spacing: 1px;
	font-size: 0.95rem;
}
.rsp-product-page .rsp-review__title { font-weight: 700; font-size: 0.95rem; margin: 0.25rem 0 0.45rem; color: var(--rsp-sp-text); }
.rsp-product-page .rsp-review__body { font-size: 0.9rem; color: var(--rsp-sp-text); line-height: 1.85; margin: 0; }

.rsp-product-page .rsp-no-reviews {
	padding: 1rem;
	text-align: center;
	color: var(--rsp-sp-muted);
	font-size: 0.9rem;
	background: rgba(255, 255, 255, 0.4);
	border: 1px dashed var(--rsp-sp-stroke);
	border-radius: var(--rsp-sp-radius-sm);
	margin-bottom: 1rem;
}

.rsp-product-page .rsp-reviews__form-wrap {
	margin-top: clamp(20px, 4vw, 32px);
	padding-top: clamp(16px, 3vw, 24px);
	border-top: 1px solid rgba(201, 161, 59, 0.2);
}
.rsp-product-page .rsp-reviews__form-title { font-size: clamp(1.05rem, 2.6vw, 1.2rem); font-weight: 800; margin: 0 0 0.35rem; color: var(--rsp-sp-text); }
.rsp-product-page .rsp-reviews__form-note { font-size: 0.82rem; color: var(--rsp-sp-muted); margin: 0 0 1rem; }

/* اسکوپ روی فرم نظرسنجی پیش‌فرض ووکامرس */
.rsp-product-page #review_form,
.rsp-product-page #commentform {
	background: none;
	padding: 0;
	border: none;
}
.rsp-product-page .comment-form-rating,
.rsp-product-page .comment-form-rating .stars {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 12px;
}
.rsp-product-page .comment-form-rating {
	flex-wrap: wrap;
}
.rsp-product-page .comment-form-rating .stars {
	direction: ltr;
	min-height: 34px;
	padding: 5px 8px;
	border: 1px solid rgba(201, 161, 59, 0.2);
	border-radius: 999px;
	background: rgba(255, 252, 246, 0.78);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.72);
}
.rsp-product-page .comment-form-rating .stars span {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	direction: ltr;
}
.rsp-product-page .comment-form-rating > label {
	display: block;
	font-weight: 700;
	font-size: 0.88rem;
	color: var(--rsp-sp-text);
	margin-bottom: 6px;
}
.rsp-product-page .stars a {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	overflow: hidden;
	color: rgba(122, 94, 85, 0.35);
	font-size: 0;
	line-height: 1;
	text-decoration: none;
	margin: 0;
	border-radius: 50%;
	transition: color 0.15s ease, transform 0.15s ease, background 0.15s ease;
}
.rsp-product-page .stars a::before {
	content: "★";
	display: block;
	font-size: 1.45rem;
	font-weight: 900;
	line-height: 1;
	text-shadow: 0 1px 0 rgba(255,255,255,0.8);
}
.rsp-product-page .stars a:hover,
.rsp-product-page .stars a:focus-visible {
	background: rgba(201, 161, 59, 0.12);
	transform: scale(1.08);
	outline: none;
}
.rsp-product-page .stars a.is-filled,
.rsp-product-page .stars a.active,
.rsp-product-page .stars.selected a.active,
.rsp-product-page .stars.selected a:not(.active) {
	color: var(--rsp-sp-gold);
}
.rsp-product-page .stars a.is-empty,
.rsp-product-page .stars.selected a.active ~ a {
	color: rgba(122, 94, 85, 0.35);
}

.rsp-product-page .comment-form-author,
.rsp-product-page .comment-form-email,
.rsp-product-page .comment-form-comment {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-bottom: 12px;
}
.rsp-product-page .comment-form-author label,
.rsp-product-page .comment-form-email label,
.rsp-product-page .comment-form-comment label {
	font-weight: 700;
	font-size: 0.82rem;
	color: var(--rsp-sp-text);
}
.rsp-product-page .comment-form-author input,
.rsp-product-page .comment-form-email input,
.rsp-product-page .comment-form-comment textarea,
.rsp-product-page #respond input[type="text"],
.rsp-product-page #respond input[type="email"],
.rsp-product-page #respond textarea {
	width: 100%;
	padding: 0.7rem 0.9rem;
	font-family: inherit;
	font-size: 0.92rem;
	color: var(--rsp-sp-text);
	border-radius: 12px !important;
	border: 1px solid var(--rsp-sp-stroke) !important;
	background: rgba(255, 255, 255, 0.55) !important;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	outline: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
	box-shadow: none;
}
.rsp-product-page .comment-form-comment textarea,
.rsp-product-page #respond textarea {
	min-height: 110px;
	resize: vertical;
}
.rsp-product-page .comment-form-author input:focus,
.rsp-product-page .comment-form-email input:focus,
.rsp-product-page .comment-form-comment textarea:focus,
.rsp-product-page #respond input:focus,
.rsp-product-page #respond textarea:focus {
	border-color: var(--rsp-sp-primary) !important;
	background: rgba(255, 255, 255, 0.78) !important;
	box-shadow: 0 0 0 4px rgba(198, 40, 40, 0.12);
}

.rsp-product-page .comment-form-cookies-consent {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.8rem;
	color: var(--rsp-sp-muted);
	margin-bottom: 12px;
}
.rsp-product-page .comment-form-cookies-consent input { accent-color: var(--rsp-sp-primary); }

.rsp-product-page .form-submit { margin: 0; }
.rsp-product-page #respond .submit,
.rsp-product-page input[type="submit"].submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 1.6rem;
	font-family: inherit;
	font-weight: 700;
	font-size: 0.95rem;
	border-radius: 14px;
	cursor: pointer;
	color: #fff !important;
	background: linear-gradient(135deg, rgba(198, 40, 40, 0.95), rgba(229, 57, 53, 0.9)) !important;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.22);
	box-shadow: 0 10px 32px rgba(198, 40, 40, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.2);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.rsp-product-page #respond .submit:hover { transform: translateY(-1px); box-shadow: 0 14px 40px rgba(198, 40, 40, 0.45); }

.rsp-product-page .commentlist {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: clamp(12px, 2vw, 18px);
}
.rsp-product-page .commentlist > li {
	padding: clamp(14px, 2.5vw, 20px);
	background: rgba(255, 255, 255, 0.55);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: 1px solid var(--rsp-sp-stroke-soft);
	border-radius: var(--rsp-sp-radius-sm);
	list-style: none;
}
.rsp-product-page .commentlist .comment_container { display: flex; gap: 12px; align-items: flex-start; }
.rsp-product-page .commentlist .avatar {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	flex-shrink: 0;
}
.rsp-product-page .commentlist .comment-text { flex: 1; min-width: 0; }
.rsp-product-page .commentlist .meta strong { font-weight: 700; color: var(--rsp-sp-text); font-size: 0.92rem; }
.rsp-product-page .commentlist .meta time { font-size: 0.75rem; color: var(--rsp-sp-muted); margin-inline-start: 8px; }
.rsp-product-page .commentlist .description p { font-size: 0.9rem; color: var(--rsp-sp-text); line-height: 1.85; margin: 0.45rem 0 0; }
.rsp-product-page .commentlist .star-rating {
	color: var(--rsp-sp-gold);
	font-size: 0.95rem;
	margin-bottom: 0.35rem;
}

/* WC notices شیشه‌ای */
.rsp-product-page .woocommerce-message,
.rsp-product-page .woocommerce-info,
.rsp-product-page .woocommerce-error,
.rsp-product-page .woocommerce-notice {
	padding: 0.85rem 1rem;
	border-radius: var(--rsp-sp-radius-sm);
	background: rgba(255, 255, 255, 0.6);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: 1px solid var(--rsp-sp-stroke);
	box-shadow: var(--rsp-sp-shadow);
	margin-bottom: 1rem;
	color: var(--rsp-sp-text);
	font-size: 0.88rem;
}
.rsp-product-page .woocommerce-error { border-color: rgba(198, 40, 40, 0.45); }
.rsp-product-page .woocommerce-message { border-color: rgba(67, 160, 71, 0.4); }

/* Accessibility: motion reduce */
@media (prefers-reduced-motion: reduce) {
	.rsp-product-page *,
	.rsp-sticky-bar {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

/* تنظیم نهایی موبایل خیلی کوچک */
@media (max-width: 380px) {
	.rsp-product-page .rsp-review__stars { margin-inline-start: 0; width: 100%; }
	.rsp-product-page .quantity .qty,
	.rsp-product-page .rsp-qty input { width: 48px; }
}
