/**
 * Asbab — WooCommerce refinements (block-based shop, cart & checkout).
 * Uses logical properties for RTL/LTR.
 */

/* Product cards */
.wc-block-product-template .wc-block-product,
.wp-block-woocommerce-product-template > li {
	text-align: start;
}
.wc-block-components-product-image img,
.wp-block-woocommerce-product-image img {
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--base-2);
	transition: transform 500ms cubic-bezier(.2,.7,.3,1);
}
.wc-block-components-product-image,
.wp-block-woocommerce-product-image { overflow: hidden; border-radius: var(--wp--custom--radius--medium); }
.wc-block-product:hover .wc-block-components-product-image img,
.wp-block-woocommerce-product-template li:hover .wp-block-woocommerce-product-image img { transform: scale(1.04); }

.wc-block-components-product-price,
.wp-block-woocommerce-product-price { font-weight: 600; color: var(--wp--preset--color--accent); }
.wc-block-components-product-price del { color: var(--wp--preset--color--contrast-2); font-weight: 400; opacity: .7; }

/* Sale badge */
.wc-block-components-product-sale-badge,
.wp-block-woocommerce-product-sale-badge .wc-block-components-product-sale-badge {
	background: var(--wp--preset--color--accent-3) !important;
	color: var(--wp--preset--color--contrast) !important;
	border: 0 !important;
	border-radius: var(--wp--custom--radius--pill) !important;
	font-size: var(--wp--preset--font-size--x-small) !important;
	font-weight: 600;
	padding: 0.3em 0.8em !important;
	text-transform: none !important;
}

/* Buttons */
.wc-block-components-product-button .wp-block-button__link,
.wp-block-woocommerce-product-button .wp-block-button__link,
.wc-block-components-button:not(.is-link),
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
	border-radius: var(--wp--custom--radius--pill) !important;
	font-weight: 500;
}
.wc-block-components-product-button .wp-block-button__link,
.wp-block-woocommerce-product-button .wp-block-button__link {
	background: var(--wp--preset--color--base-2) !important;
	color: var(--wp--preset--color--contrast) !important;
	font-size: var(--wp--preset--font-size--x-small);
	padding: 0.6rem 1.1rem;
}
.wc-block-components-product-button .wp-block-button__link:hover,
.wp-block-woocommerce-product-button .wp-block-button__link:hover {
	background: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--base) !important;
}
.wc-block-components-button:not(.is-link) {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--base);
}
.wc-block-components-button:not(.is-link):hover { background: var(--wp--preset--color--accent-2); }

/* Single product */
.wp-block-woocommerce-product-image-gallery img,
.woocommerce-product-gallery img { border-radius: var(--wp--custom--radius--medium); }
.wp-block-add-to-cart-form .quantity .qty,
.woocommerce .quantity .qty {
	border-radius: var(--wp--custom--radius--pill);
	min-width: 4.5rem; text-align: center;
}
.wp-block-add-to-cart-form .single_add_to_cart_button {
	background: var(--wp--preset--color--accent); color: var(--wp--preset--color--base);
	border: 0; border-radius: var(--wp--custom--radius--pill); padding: 0.85rem 1.8rem; font: inherit; font-weight: 500;
}
.wp-block-add-to-cart-form .single_add_to_cart_button:hover { background: var(--wp--preset--color--accent-2); }
.wp-block-woocommerce-product-details .wc-tabs { border-bottom: 1px solid var(--wp--preset--color--border); }
.wp-block-woocommerce-product-details .wc-tabs li a { text-decoration: none; }

/* Mini cart */
.wc-block-mini-cart__button { padding: 0.4rem; border-radius: var(--wp--custom--radius--pill); }
.wc-block-mini-cart__button:hover { background: var(--wp--preset--color--base-2); }
.wc-block-mini-cart__badge { background: var(--wp--preset--color--accent) !important; color: var(--wp--preset--color--base) !important; border-color: var(--wp--preset--color--base) !important; }
.wc-block-mini-cart__drawer .components-modal__content { padding-inline: var(--wp--preset--spacing--40); }

/* Cart & checkout */
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-blocks-components-select .wc-blocks-components-select__select {
	border-radius: var(--wp--custom--radius--small) !important;
	border-color: var(--wp--preset--color--border) !important;
}
.wc-block-components-totals-wrapper, .wc-block-components-order-summary { border-color: var(--wp--preset--color--border) !important; }
.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block {
	background: var(--wp--preset--color--base-2);
	border-radius: var(--wp--custom--radius--medium);
	padding: var(--wp--preset--spacing--30);
}

/* Notices */
.wc-block-components-notice-banner { border-radius: var(--wp--custom--radius--small); }

/* Store breadcrumbs / result count */
.wp-block-woocommerce-breadcrumbs, .woocommerce-result-count { color: var(--wp--preset--color--contrast-2); font-size: var(--wp--preset--font-size--small); }
.wp-block-woocommerce-breadcrumbs a { text-decoration: none; }

/* Pagination */
.woocommerce-pagination .page-numbers li .page-numbers { border-radius: 50%; min-width: 2.5rem; height: 2.5rem; display: inline-grid; place-items: center; }
.wc-block-components-product-button, .wp-block-woocommerce-product-button { justify-content: flex-start !important; align-items: flex-start !important; text-align: start !important; }
.single-product .wp-block-post-title { font-size: var(--wp--preset--font-size--xx-large); }
.woocommerce .quantity .qty, .wp-block-add-to-cart-form .qty { font-family: inherit; }

/* Single product */
.asbab-product__media .wc-block-product-gallery img,
.asbab-product__media .wp-block-woocommerce-product-image img { transform: none !important; background: transparent; }
.asbab-product__media .wc-block-product-gallery-large-image,
.asbab-product__media .wc-block-product-gallery-large-image__inner-blocks { border-radius: var(--wp--custom--radius--large); overflow: hidden; background: var(--wp--preset--color--base-2); }
.asbab-product__media .wc-block-product-gallery-thumbnails img { border-radius: var(--wp--custom--radius--small, 8px); border: 2px solid transparent; }
.asbab-product__box { padding-block-start: var(--wp--preset--spacing--20); }
.asbab-product__box .wp-block-post-title { margin: 0; line-height: 1.25; }
.asbab-product__price { font-weight: 800; }
.asbab-product__excerpt { color: var(--wp--preset--color--contrast-2); line-height: 1.9; }
.asbab-product__excerpt p { margin: 0 0 .7em; }
.asbab-product__excerpt a { color: var(--wp--preset--color--accent); font-weight: 600; text-decoration: none; }
.asbab-product__excerpt a:hover { text-decoration: underline; }
.asbab-product__cart table.variations { width: 100%; border: 0; margin: 0 0 var(--wp--preset--spacing--30); }
.asbab-product__cart table.variations,
.asbab-product__cart table.variations tbody,
.asbab-product__cart table.variations tr,
.asbab-product__cart table.variations th,
.asbab-product__cart table.variations td { display: block; width: 100%; padding: 0; border: 0; text-align: start; }
.asbab-product__cart table.variations th label { font-weight: 700; display: block; margin-block-end: .5rem; }
.asbab-product__cart table.variations select {
	width: 100% !important; max-width: none; height: auto !important; min-height: 3.1rem; padding: .55rem 1rem !important; line-height: 1.5 !important; font: inherit; font-size: 1rem;
	border: 1px solid var(--wp--preset--color--border); border-radius: var(--wp--custom--radius--medium);
	background-color: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast);
}
.asbab-product__cart .reset_variations { font-size: .85rem; margin-block-start: .4rem; display: inline-block; }
.asbab-product__cart .woocommerce-variation-price { margin-block-end: var(--wp--preset--spacing--20); }
.asbab-product__cart .woocommerce-variation-price .price { font-size: 1.6rem; font-weight: 800; color: var(--wp--preset--color--accent); }
.asbab-product__cart .woocommerce-variation-description { color: var(--wp--preset--color--contrast-2); font-size: .95rem; }
.asbab-product__cart .woocommerce-variation-add-to-cart,
.asbab-product__cart form.cart:not(.variations_form) { display: flex; gap: .75rem; align-items: stretch; flex-wrap: wrap; }
.asbab-product__cart .single_add_to_cart_button { flex: 1; min-height: 3.1rem; }
.asbab-product__cart .single_add_to_cart_button.disabled { opacity: .55; }
.asbab-product__meta { border-block-start: 1px solid var(--wp--preset--color--border); padding-block-start: var(--wp--preset--spacing--30); color: var(--wp--preset--color--contrast-2); }
.asbab-product__details .woocommerce-Tabs-panel > h2:first-child { display: none; }
.asbab-product__details .woocommerce-Tabs-panel { max-width: 860px; }
.asbab-product__details .woocommerce-Tabs-panel h2 { font-size: var(--wp--preset--font-size--x-large); margin-block: var(--wp--preset--spacing--40) var(--wp--preset--spacing--20); }
.asbab-product__details .woocommerce-Tabs-panel h3 { font-size: var(--wp--preset--font-size--large); }
.asbab-product__details .woocommerce-Tabs-panel ul { line-height: 2; }
@media (max-width: 781px) {
	.asbab-product__box { position: static !important; }
}
