/**
 * استایل فروشگاه — فاز ۷ (توکن‌های تم پیوست B + دارک‌مود).
 * فقط صفحات ووکامرس صف می‌شود (functions.php تم)؛ کارت‌های صفحه اصلی
 * از rsd-theme.css (.rsd-product-card) تغذیه می‌شوند — این فایل همان
 * کلاس‌ها را برای حلقه ووکامرس کامل می‌کند + چیدمان حلقه/سربرگ/چیپ‌ها/
 * دکمه‌ها/قیمت/تب مشخصات/فرم‌های سبد و تسویه.
 */

/* ── سربرگ فروشگاه (پورت ShopView) ── */
.rsd-woo-header {
        margin-block: 0.5rem 1.25rem;
}
.rsd-woo-header-row {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        justify-content: space-between;
        gap: 0.75rem;
}
.rsd-woo-title {
        font-size: 1.5rem;
        font-weight: 800;
        letter-spacing: -0.01em;
        margin: 0;
}
@media (min-width: 640px) {
        .rsd-woo-title {
                font-size: 1.875rem;
        }
}
.rsd-woo-count {
        font-size: 12px;
        font-weight: 700;
        color: var(--rsd-muted-fg);
}
.rsd-woo-subtitle {
        max-width: 42rem;
        margin-top: 0.5rem;
        font-size: 14px;
        line-height: 1.75rem;
        color: var(--rsd-muted-fg);
}

/* ── چیپ‌های نوع (هم‌شکل تب‌های بازار/پروتوتایپ) ── */
.rsd-woo-chips {
        display: flex;
        align-items: center;
        gap: 0.375rem;
        overflow-x: auto;
        padding-bottom: 0.25rem;
        margin-bottom: 1.25rem;
        scrollbar-width: none;
}
.rsd-woo-chips::-webkit-scrollbar {
        display: none;
}
.rsd-woo-chips a {
        display: inline-flex;
        flex-shrink: 0;
        align-items: center;
        gap: 0.375rem;
        padding: 0.5rem 0.75rem;
        border: 1px solid var(--rsd-border);
        border-radius: var(--rsd-radius-md);
        background: var(--rsd-card);
        font-size: 13px;
        font-weight: 700;
        color: var(--rsd-muted-fg);
        text-decoration: none;
        transition: all 0.15s;
}
.rsd-woo-chips a:hover {
        border-color: var(--rsd-brand-200);
        color: var(--rsd-fg);
}
.rsd-woo-chips a.active {
        border-color: var(--rsd-brand-300);
        background: var(--rsd-brand-50);
        color: var(--rsd-brand-700);
}
html.dark .rsd-woo-chips a.active {
        border-color: rgb(185 140 51 / 0.4);
        background: rgb(185 140 51 / 0.15);
        color: var(--rsd-brand-300);
}

/* ── چیدمان حلقه محصولات (پروتوتایپ: gap-4 · sm:2 · lg:4) ── */
ul.products {
        display: grid !important;
        gap: 1rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin: 0 !important;
        padding: 0 !important;
        list-style: none;
}
@media (max-width: 639px) {
        ul.products {
                grid-template-columns: minmax(0, 1fr);
        }
}
@media (min-width: 1024px) {
        ul.products {
                grid-template-columns: repeat(4, minmax(0, 1fr));
        }
}
ul.products::before,
ul.products::after {
        display: none !important;
}
ul.products > li.product,
ul.products > li.rsd-woo-item {
        position: relative;
        width: auto !important;
        float: none !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none;
}
ul.products > li.product.first,
ul.products > li.product.last {
        clear: none !important;
}

/* ── کارت حلقه (تکمیل .rsd-product-card تم برای دکمه داخل کارت) ── */
.rsd-shop-card {
        position: relative;
        display: flex;
        flex-direction: column;
        height: 100%;
        transition: transform 0.15s, border-color 0.15s, box-shadow 0.15s;
}
.rsd-shop-card:hover {
        transform: translateY(-2px);
        border-color: var(--rsd-brand-200);
        box-shadow: var(--rsd-shadow-hover, 0 4px 12px -2px rgb(16 24 40 / 0.1));
}
.rsd-product-body {
        display: flex;
        flex-direction: column;
        height: 100%;
        min-width: 0;
}
.rsd-shop-meta {
        margin-bottom: 0.75rem;
        font-size: 10px;
        color: var(--rsd-muted-fg);
}
.rsd-price-col {
        display: flex;
        flex-direction: column;
        min-width: 0;
}
.rsd-price-old {
        font-size: 10px;
        line-height: 1rem;
        color: var(--rsd-muted-fg);
        text-decoration: line-through;
}
.rsd-add-cart {
        position: relative;
        z-index: 2;
        flex-shrink: 0;
        display: inline-flex;
        align-items: center;
        gap: 0.375rem;
        padding: 0.5rem 0.875rem;
        border-radius: var(--rsd-radius-md);
        background: var(--rsd-brand-600);
        color: #fff;
        font-size: 12px;
        font-weight: 700;
        text-decoration: none;
        white-space: nowrap;
        transition: background 0.15s;
}
.rsd-add-cart:hover {
        background: var(--rsd-brand-700);
        color: #fff;
}
.rsd-add-cart.loading {
        opacity: 0.6;
        pointer-events: none;
}
.rsd-add-cart.added {
        /* ووکامرس پس از افزودن دکمه «مشاهده سبد» جایگزین می‌کند — استایل خودش */
        display: none;
}
.rsd-add-cart.added + .woocommerce-message {
        display: none;
}
.rsd-product-title a {
        color: inherit;
        text-decoration: none;
}

/* ── دکمه‌های ووکامرس برند شوند ── */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce a.checkout-button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.375rem;
        padding: 0.625rem 1.125rem;
        border-radius: var(--rsd-radius-md);
        border: 1px solid transparent;
        background: var(--rsd-brand-600);
        color: #fff;
        font-size: 13px;
        font-weight: 700;
        text-decoration: none;
        cursor: pointer;
        transition: background 0.15s;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce a.checkout-button:hover {
        background: var(--rsd-brand-700);
        color: #fff;
}
html.dark .woocommerce a.button,
html.dark .woocommerce button.button,
html.dark .woocommerce input.button {
        background: var(--rsd-brand-400);
        color: #221804;
}

/* ── قیمت ووکامرس (رنگ برند — عین کارت‌های تم) ── */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price {
        color: var(--rsd-brand-700);
        font-weight: 800;
}
html.dark .woocommerce ul.products li.product .price,
html.dark .woocommerce div.product p.price {
        color: var(--rsd-brand-300);
}
.woocommerce div.product p.price del {
        color: var(--rsd-muted-fg);
        opacity: 1;
        font-weight: 600;
}
.rsd-sale-inline {
        margin-inline-start: 0.5rem;
        vertical-align: middle;
}

/* ── محصول تکی: بدون گالری (عین پروتوتایپ — جعبه فرمت جای تصویر) ── */
.woocommerce div.product {
        position: relative;
}
.woocommerce div.product .summary {
        max-width: 34rem;
}
.woocommerce div.product .product_title {
        font-size: 1.375rem;
        font-weight: 800;
        letter-spacing: -0.01em;
}
@media (min-width: 640px) {
        .woocommerce div.product .product_title {
                font-size: 1.5rem;
        }
}
.rsd-trust-items {
        list-style: none;
        margin: 1.25rem 0 0;
        padding: 1.25rem 0 0;
        border-top: 1px solid var(--rsd-border);
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
}
.rsd-trust-items li {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        font-size: 13px;
        font-weight: 600;
}
.rsd-trust-items li svg {
        color: var(--rsd-up);
        flex-shrink: 0;
}
.rsd-payment-note {
        margin-top: 0.75rem;
        text-align: center;
        font-size: 10px;
        line-height: 1.25rem;
        color: var(--rsd-muted-fg);
}

/* ── تب‌های محصول (توضیحات/مشخصات) ── */
.woocommerce div.product .woocommerce-tabs ul.tabs {
        list-style: none;
        margin: 0 0 1.25rem;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        border-bottom: 1px solid var(--rsd-border);
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after {
        display: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
        margin: 0 0 -1px;
        padding: 0;
        background: transparent;
        border: 0;
        border-radius: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
        display: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
        display: inline-block;
        padding: 0.625rem 0.875rem;
        border-radius: var(--rsd-radius-md);
        font-size: 13px;
        font-weight: 700;
        color: var(--rsd-muted-fg);
        text-decoration: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
        color: var(--rsd-brand-700);
        background: var(--rsd-brand-50);
}
html.dark .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
        color: var(--rsd-brand-300);
        background: rgb(185 140 51 / 0.15);
}

/* جدول مشخصات — عین جدول specs پروتوتایپ */
.rsd-specs-table {
        width: 100%;
        border-collapse: collapse;
        overflow: hidden;
        border: 1px solid var(--rsd-border);
        border-radius: var(--rsd-radius-xl);
}
.rsd-specs-table th,
.rsd-specs-table td {
        padding: 0.625rem 1.25rem;
        text-align: start;
        border-bottom: 1px solid var(--rsd-border);
}
.rsd-specs-table tr:last-child th,
.rsd-specs-table tr:last-child td {
        border-bottom: 0;
}
.rsd-specs-table th {
        width: 9rem;
        font-size: 12px;
        font-weight: 400;
        color: var(--rsd-muted-fg);
}
.rsd-specs-table td {
        font-size: 13px;
        font-weight: 700;
}

/* ── فرم‌ها: ورودی‌ها (سبد/تسویه/کوپن) ── */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .quantity input.qty,
.select2-container--default .select2-selection--single {
        padding: 0.5rem 0.75rem;
        border: 1px solid var(--rsd-input);
        border-radius: var(--rsd-radius-md);
        background: var(--rsd-card);
        color: var(--rsd-fg);
        font: inherit;
        font-size: 14px;
        min-height: 2.75rem;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce .quantity input.qty:focus {
        outline: 2px solid var(--rsd-ring);
        outline-offset: 1px;
}
.woocommerce .quantity {
        display: inline-flex;
        align-items: center;
        gap: 0.5rem;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
        color: var(--rsd-fg);
        line-height: 2.75rem;
        padding-inline-start: 0.5rem;
}

/* ── پیام‌ها و اعلان‌های ووکامرس ── */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
        list-style: none;
        margin: 0 0 1.25rem;
        padding: 0.75rem 1.25rem;
        border-radius: var(--rsd-radius-md);
        border: 1px solid var(--rsd-brand-200);
        background: var(--rsd-brand-50);
        color: var(--rsd-brand-800);
        font-size: 13px;
}
.woocommerce-error {
        border-color: rgb(185 28 28 / 0.3);
        background: var(--rsd-down-soft);
        color: var(--rsd-down);
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
        display: none;
}
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
        float: inline-start;
        margin-inline-end: 0.75rem;
        padding: 0.25rem 0.625rem;
        font-size: 11px;
}

/* ── سبد/تسویه: جدول‌ها ── */
.woocommerce table.shop_table,
.woocommerce table.woocommerce-table--order-details {
        border: 1px solid var(--rsd-border);
        border-radius: var(--rsd-radius-xl);
        border-collapse: separate;
        border-spacing: 0;
        overflow: hidden;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
        padding: 0.875rem 1rem;
        text-align: start;
        border-bottom: 1px solid var(--rsd-border);
}
.woocommerce table.shop_table tr:last-child th,
.woocommerce table.shop_table tr:last-child td {
        border-bottom: 0;
}
.woocommerce table.shop_table th {
        font-size: 11px;
        font-weight: 700;
        color: var(--rsd-muted-fg);
        background: rgb(243 242 238 / 0.5);
}
html.dark .woocommerce table.shop_table th {
        background: rgb(255 255 255 / 0.04);
}
.woocommerce table.shop_table img {
        width: 3rem;
        border-radius: var(--rsd-radius-sm);
}
.woocommerce table.shop_table td.product-name a {
        color: var(--rsd-fg);
        font-weight: 700;
        text-decoration: none;
}
.woocommerce table.shop_table td.product-name a:hover {
        color: var(--rsd-brand-700);
}
html.dark .woocommerce table.shop_table td.product-name a,
html.dark .woocommerce table.shop_table td.product-name a:hover {
        color: #f2efe8;
}

/* محصول خارج از دسترس (خارج از پروتوتایپ اما لازم برای صداقت) */
.woocommerce ul.products li.product.outofstock .rsd-format-box {
        opacity: 0.5;
}
.woocommerce ul.products li.product.outofstock::after {
        content: 'ناموجود';
        position: absolute;
        inset-inline-start: 1rem;
        top: 1rem;
        z-index: 3;
        padding: 0.125rem 0.5rem;
        border-radius: 9999px;
        background: var(--rsd-muted-bg);
        color: var(--rsd-muted-fg);
        font-size: 10px;
        font-weight: 700;
}

/* ── مسیر (breadcrumb) ووکامرس ── */
.woocommerce .woocommerce-breadcrumb {
        font-size: 11px;
        color: var(--rsd-muted-fg);
}
.woocommerce .woocommerce-breadcrumb a {
        color: var(--rsd-brand-700);
        font-weight: 700;
        text-decoration: none;
}
html.dark .woocommerce .woocommerce-breadcrumb a {
        color: var(--rsd-brand-300);
}

/* ── صفحه‌بندی فروشگاه ── */
.woocommerce nav.woocommerce-pagination ul {
        border: 0;
        display: flex;
        gap: 0.375rem;
        list-style: none;
        margin: 1.5rem 0 0;
}
.woocommerce nav.woocommerce-pagination ul li {
        border: 0;
        margin: 0;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 2.25rem;
        height: 2.25rem;
        padding: 0 0.5rem;
        border: 1px solid var(--rsd-border);
        border-radius: var(--rsd-radius-md);
        color: var(--rsd-muted-fg);
        font-size: 13px;
        font-weight: 700;
        text-decoration: none;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
        border-color: var(--rsd-brand-300);
        background: var(--rsd-brand-50);
        color: var(--rsd-brand-700);
}

/* ── اسکلتون حالت خالی (عین Empty state پروتوتایپ) ── */
.woocommerce-no-products {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.75rem;
        padding: 4rem 1.5rem;
        border: 1px dashed var(--rsd-border);
        border-radius: var(--rsd-radius-2xl);
        background: rgb(243 242 238 / 0.4);
        text-align: center;
}

/* ══════════ حساب من — پیشخوان (فاز ۸: پورت Profile پروتوتایپ) ══════════ */

/* محتوای My Account — فاصله‌گذاری پایه */
.woocommerce-MyAccount-content {
	margin-top: 0.5rem;
}
.woocommerce-MyAccount-content > p:empty {
	display: none;
}

.rsd-account-dashboard {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

/* کارت پروفایل */
.rsd-account-profile {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.5rem;
	border: 1px solid var(--rsd-border);
	border-radius: var(--rsd-radius-2xl);
	background: var(--rsd-card);
	box-shadow: 0 1px 3px rgb(16 24 40 / 0.04);
}
@media (min-width: 640px) {
	.rsd-account-profile {
		flex-direction: row;
		align-items: center;
	}
}
.rsd-account-id {
	display: flex;
	align-items: center;
	gap: 1rem;
	min-width: 0;
}
.rsd-account-avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	flex-shrink: 0;
	border-radius: var(--rsd-radius-2xl);
	background: var(--rsd-brand-100);
	color: var(--rsd-brand-700);
	font-size: 1.25rem;
	font-weight: 800;
}
html.dark .rsd-account-avatar {
	background: rgb(185 140 51 / 0.2);
	color: var(--rsd-brand-300);
}
.rsd-account-id-text {
	min-width: 0;
}
.rsd-account-name {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	font-size: 1.125rem;
	font-weight: 800;
	color: var(--rsd-fg);
}
html.dark .rsd-account-name {
	color: var(--rsd-fg-dark, #f2efe8);
}
.rsd-account-name svg {
	color: var(--rsd-brand-500);
	flex-shrink: 0;
}
.rsd-account-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.75rem;
	margin-top: 0.25rem;
	font-size: 12px;
	color: var(--rsd-muted-fg);
}
.rsd-account-line {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
}
.rsd-account-line svg {
	flex-shrink: 0;
}
.rsd-account-logout {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	padding: 0.4rem 0.8rem;
	border: 1px solid var(--rsd-border);
	border-radius: var(--rsd-radius-md);
	font-size: 13px;
	font-weight: 700;
	color: var(--rsd-fg);
	text-decoration: none;
	flex-shrink: 0;
	transition: border-color 0.15s, background 0.15s;
}
.rsd-account-logout:hover {
	border-color: var(--rsd-brand-300);
	background: var(--rsd-brand-50);
}
html.dark .rsd-account-logout {
	color: var(--rsd-fg-dark, #f2efe8);
	border-color: rgb(242 239 232 / 0.14);
}
html.dark .rsd-account-logout:hover {
	border-color: rgb(207 169 84 / 0.4);
	background: rgb(185 140 51 / 0.12);
}

/* خلاصه حساب — ۳ کارت */
.rsd-account-stats {
	display: grid;
	gap: 1rem;
}
@media (min-width: 640px) {
	.rsd-account-stats {
		grid-template-columns: repeat(3, 1fr);
	}
}
.rsd-account-stat {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	padding: 1rem;
	border: 1px solid var(--rsd-border);
	border-radius: var(--rsd-radius-xl);
	background: var(--rsd-card);
	text-decoration: none;
}
.rsd-account-stat-label {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	font-size: 11px;
	color: var(--rsd-muted-fg);
}
.rsd-account-stat-label svg {
	color: var(--rsd-brand-500);
	flex-shrink: 0;
}
.rsd-account-stat-value {
	font-size: 1.25rem;
	font-weight: 800;
	color: var(--rsd-fg);
}
html.dark .rsd-account-stat-value {
	color: var(--rsd-fg-dark, #f2efe8);
}
.rsd-account-stat-cta {
	border: 1px dashed var(--rsd-brand-300);
	background: rgb(251 248 239 / 0.6);
	transition: background 0.15s;
}
html.dark .rsd-account-stat-cta {
	border-color: rgb(207 169 84 / 0.4);
	background: rgb(185 140 51 / 0.1);
}
.rsd-account-stat-cta:hover {
	background: var(--rsd-brand-50);
}
.rsd-account-stat-cta-text {
	font-size: 13px;
	font-weight: 700;
	color: var(--rsd-brand-700);
}
html.dark .rsd-account-stat-cta-text {
	color: var(--rsd-brand-300);
}

@media (prefers-reduced-motion: reduce) {
	.rsd-account-logout,
	.rsd-account-stat-cta {
		transition: none;
	}
}
