/* Mazmotor Pro — WooCommerce (car catalogue) */

.mz-shop { padding-block: 24px 64px; }
.mz-shop__layout { display: grid; gap: 28px; }
.mz-shop__layout.has-sidebar { grid-template-columns: 290px minmax(0, 1fr); }
.mz-shop__filters .widget { background: var(--mz-surface); border-radius: var(--mz-radius); padding: 20px; box-shadow: var(--mz-shadow); margin-bottom: 16px; }
.mz-shop__filters-toggle, .mz-shop__filters-close { display: none; }

.woocommerce-products-header__title { margin-bottom: 8px; }
.woocommerce-result-count { color: var(--mz-muted); font-size: .9rem; }
.woocommerce-ordering select { min-height: 44px; border-radius: 999px; }
.mz-shop__main > .woocommerce-result-count, .mz-shop__main > .woocommerce-ordering { margin-bottom: 20px; }
.mz-shop__main > .woocommerce-ordering { float: left; }

ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; list-style: none; margin: 0; padding: 0; clear: both; }
ul.products.columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
ul.products::before, ul.products::after { display: none !important; }
ul.products li.product {
	position: relative; display: flex; flex-direction: column;
	width: auto !important; margin: 0 !important; float: none !important;
	background: var(--mz-surface); border-radius: var(--mz-radius); overflow: hidden;
	box-shadow: var(--mz-shadow); transition: transform .3s var(--mz-ease), box-shadow .3s;
}
ul.products li.product:hover { transform: translateY(-4px); box-shadow: var(--mz-shadow-lg); }
ul.products li.product a img { width: 100%; aspect-ratio: 16 / 10; object-fit: contain; background: linear-gradient(180deg, var(--mz-surface-2), #efece4); padding: 12px; margin: 0; transition: transform .6s var(--mz-ease); }
ul.products li.product:hover a img { transform: scale(1.04); }
ul.products li.product .woocommerce-loop-product__title { font-size: 1.05rem; padding: 14px 18px 0; margin: 0; font-weight: 800; }
ul.products li.product .price { display: block; padding: 6px 18px 0; color: var(--mz-ink); font-weight: 800; font-size: 1.1rem; }
ul.products li.product .mz-price-toman { padding: 0 18px; }
ul.products li.product .mz-btn,
ul.products li.product .button { margin: 14px 18px 18px; margin-top: auto; align-self: stretch; }
ul.products li.product .onsale { position: absolute; top: 14px; inset-inline-start: 14px; z-index: 2; background: var(--mz-danger); color: #fff; padding: 4px 12px; border-radius: 999px; font-size: .78rem; min-height: 0; min-width: 0; line-height: 1.6; }

.mz-price-toman { display: block; color: var(--mz-muted); font-size: .85rem; font-weight: 600; }

/* Single product */
.single-product div.product { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 40px; align-items: start; }
.single-product div.product .woocommerce-product-gallery { width: 100% !important; float: none !important; background: var(--mz-surface); border-radius: var(--mz-radius); padding: 16px; box-shadow: var(--mz-shadow); }
.single-product div.product .summary { width: 100% !important; float: none !important; position: sticky; top: calc(var(--mz-header-h) + 20px); background: var(--mz-surface); border-radius: var(--mz-radius); padding: clamp(20px, 3vw, 36px); box-shadow: var(--mz-shadow); }
.single-product .product_title { font-size: clamp(1.5rem, 1.1rem + 1.5vw, 2.3rem); }
.single-product .summary .price { font-size: 1.6rem; font-weight: 900; color: var(--mz-ink); margin-bottom: 4px; }
.single-product .summary .woocommerce-product-details__short-description ul { padding-inline-start: 1.2em; }
.mz-product-cta { display: grid; gap: 10px; margin: 20px 0; }
.single-product .woocommerce-tabs, .single-product .related, .single-product .upsells { grid-column: 1 / -1; }
.woocommerce-tabs ul.tabs { display: flex; gap: 8px; list-style: none; padding: 0; margin: 0 0 16px; overflow-x: auto; }
.woocommerce-tabs ul.tabs li { margin: 0; }
.woocommerce-tabs ul.tabs a { display: block; padding: 10px 18px; border-radius: 999px; background: var(--mz-surface); font-weight: 700; white-space: nowrap; }
.woocommerce-tabs ul.tabs li.active a { background: var(--mz-dark); color: var(--mz-primary-2); }
.woocommerce-tabs .panel { background: var(--mz-surface); border-radius: var(--mz-radius); padding: clamp(20px, 3vw, 36px); box-shadow: var(--mz-shadow); }
.woocommerce-product-attributes { width: 100%; border-collapse: collapse; }
.woocommerce-product-attributes th, .woocommerce-product-attributes td { padding: 12px; border-bottom: 1px solid var(--mz-line); text-align: start; }
.woocommerce-product-attributes th { width: 35%; color: var(--mz-muted); font-weight: 600; }

.woocommerce-message, .woocommerce-info, .woocommerce-error { list-style: none; padding: 14px 18px; border-radius: var(--mz-radius-sm); background: var(--mz-surface); border-inline-start: 4px solid var(--mz-primary); margin-bottom: 20px; }
.woocommerce-error { border-color: var(--mz-danger); }

@media (max-width: 1200px) {
	ul.products.columns-4 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1024px) {
	.mz-shop__layout.has-sidebar { grid-template-columns: 1fr; }
	.mz-shop__filters {
		position: fixed; inset: 0; z-index: 220; overflow-y: auto;
		background: var(--mz-bg); padding: 60px 16px 24px;
		transform: translateY(100%); transition: transform .35s var(--mz-ease);
	}
	.mz-shop__filters.is-open { transform: none; }
	.mz-shop__filters-close { display: grid; position: absolute; top: 12px; inset-inline-end: 12px; width: 44px; height: 44px; place-items: center; border: 0; border-radius: 50%; background: var(--mz-surface); }
	.mz-shop__filters-toggle { display: inline-flex; margin-bottom: 16px; }
	ul.products, ul.products.columns-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
	.single-product div.product { grid-template-columns: 1fr; gap: 20px; }
	.single-product div.product .summary { position: static; }
}
@media (max-width: 480px) {
	ul.products, ul.products.columns-4 { grid-template-columns: 1fr; }
	.mz-shop__main > .woocommerce-ordering { float: none; }
}
