/* Theme-level refinements layered on top of WooCommerce's default frontend CSS. */

.wl-shop-main { padding-top: 24px; }

/* Single product */
.single-product div.product { max-width: var(--wl-container); margin: 0 auto; padding: 0 20px 60px; display: grid; grid-template-columns: 1fr; gap: 32px; }
@media (min-width: 900px) { .single-product div.product { grid-template-columns: 1.1fr 1fr; align-items: start; } }

.single-product div.product .woocommerce-product-gallery { position: sticky; top: 90px; }
.single-product .product_title { font-size: 1.8rem; margin-bottom: 8px; }
.single-product p.price { font-size: 1.3rem; margin-bottom: 16px; }
.single-product .variations { margin-bottom: 16px; }
.single-product .variations select { min-height: 44px; padding: 8px; border-radius: var(--wl-radius); border: 1px solid var(--wl-color-border); }
.single-product .single_add_to_cart_button { min-height: 48px; padding: 0 32px; }
.single-product form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.single-product .quantity input { min-height: 48px; width: 64px; text-align: center; border: 1px solid var(--wl-color-border); border-radius: var(--wl-radius); }

/* Reviews / ratings */
#reviews #comments ol.commentlist { list-style: none; margin: 0; padding: 0; }

/* Cart & checkout */
.woocommerce-cart table.cart, .woocommerce-checkout table.shop_table { border-color: var(--wl-color-border); }
.woocommerce-checkout .col2-set { display: grid; grid-template-columns: 1fr; gap: 32px; }
@media (min-width: 900px) { .woocommerce-checkout .col2-set { grid-template-columns: 1.2fr 1fr; } }
.woocommerce-checkout #order_review { position: sticky; top: 90px; background: var(--wl-color-surface); padding: 20px; border-radius: var(--wl-radius); border: 1px solid var(--wl-color-border); }
.woocommerce-checkout input.input-text, .woocommerce-checkout select { min-height: 44px; }

/* My account */
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--wl-color-border); }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: 12px 0; text-decoration: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { font-weight: 700; }

/* WooCommerce notices */
.woocommerce-message, .woocommerce-error, .woocommerce-info {
	list-style: none;
	max-width: var(--wl-container);
	margin: 20px auto;
	padding: 14px 20px;
	border-radius: var(--wl-radius);
	background: var(--wl-color-bg);
	border: 1px solid var(--wl-color-border);
}
