/* =========================================================================
   Star Center — WooCommerce styling (brand-matched, RTL)
   ========================================================================= */

.woo-wrapper { padding-block: 36px 56px; }

/* Shop toolbar */
.woocommerce-breadcrumb { color: var(--muted); font-size: 14px; margin-bottom: 18px; }
.woocommerce-breadcrumb a { color: var(--navy); }
.woocommerce-products-header__title, .woo-wrapper h1.entry-title, .woocommerce .page-title { font-size: clamp(24px, 3vw, 34px); color: var(--navy); margin-bottom: 16px; }
.woocommerce-result-count { color: var(--muted); font-size: 14px; }
.woocommerce-ordering select, .woocommerce select, .woocommerce form .form-row select {
	border: 1px solid var(--line); border-radius: 8px; padding: 9px 12px; font-family: inherit; background: #fff; color: var(--ink);
}

/* ---------------------------------------------------------- Product grid */
.woocommerce ul.products, ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
	margin: 0 0 28px;
	padding: 0;
	list-style: none;
}
.woocommerce ul.products::before, .woocommerce ul.products::after { content: none !important; }
.woocommerce ul.products li.product, ul.products li.product {
	width: auto !important; margin: 0 !important; float: none !important; padding: 0 !important;
	background: #fff; border: 1px solid var(--line); border-radius: var(--radius);
	overflow: hidden; display: flex; flex-direction: column; position: relative;
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.woocommerce ul.products li.product:hover, ul.products li.product:hover {
	transform: translateY(-4px); box-shadow: var(--shadow); border-color: transparent;
}
ul.products li.product a.woocommerce-LoopProduct-link { display: flex; flex-direction: column; flex: 1; padding: 0; }
ul.products li.product img { width: 100%; aspect-ratio: 1/1; object-fit: cover; margin: 0 !important; background: var(--bg-alt); }
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .woocommerce-loop-category__title {
	font-size: 15.5px; font-weight: 700; color: var(--ink); padding: 14px 16px 4px; margin: 0; line-height: 1.4; min-height: 2.6em;
}
ul.products li.product .price {
	display: block; padding: 0 16px; color: var(--navy); font-weight: 800; font-size: 19px; margin-top: auto;
}
ul.products li.product .price del { color: var(--muted); font-weight: 500; font-size: 15px; margin-inline-end: 6px; }
ul.products li.product .price ins { text-decoration: none; color: var(--accent); }
ul.products li.product .star-rating { margin: 8px 16px 0; font-size: 14px; color: var(--star); }
ul.products li.product .button, ul.products li.product .added_to_cart {
	margin: 14px 16px 16px; background: var(--navy); color: #fff; border-radius: 8px; padding: 11px 14px;
	text-align: center; font-weight: 700; font-size: 14.5px; border: 0; transition: background .15s, transform .12s;
}
ul.products li.product .button:hover, ul.products li.product .added_to_cart:hover { background: var(--accent); color: #fff; }
ul.products li.product .added_to_cart { display: block; background: var(--bg-alt); color: var(--navy); }

/* Sale badge */
.woocommerce span.onsale, span.onsale {
	position: absolute; inset-block-start: 12px; inset-inline-start: 12px; z-index: 3; background: var(--accent);
	color: #fff; min-height: 0; min-width: 0; line-height: 1; border-radius: 999px; padding: 7px 12px;
	font-weight: 800; font-size: 12px; margin: 0;
}

/* ----------------------------------------------------- Single product */
.woocommerce div.product { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; }
.woocommerce div.product .woocommerce-product-gallery { margin: 0; }
.woocommerce div.product .woocommerce-product-gallery img { border-radius: var(--radius); }
.woocommerce div.product .product_title { grid-column: auto; font-size: clamp(24px, 3vw, 34px); color: var(--navy); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--navy); font-weight: 800; font-size: 28px; }
.woocommerce div.product p.price ins { color: var(--accent); text-decoration: none; }
.woocommerce div.product .woocommerce-product-rating { margin-bottom: 14px; }
.woocommerce div.product .woocommerce-product-details__short-description { color: #444; font-size: 16px; }
.woocommerce div.product form.cart { margin-top: 20px; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.woocommerce .quantity input.qty {
	width: 72px; height: 50px; border: 1px solid var(--line); border-radius: 8px; text-align: center; font-size: 16px; font-family: inherit;
}
.woocommerce div.product form.cart .button { background: var(--accent); }
.woocommerce-tabs { grid-column: 1 / -1; margin-top: 36px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: var(--bg-alt); border: 1px solid var(--line); border-radius: 8px 8px 0 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: #fff; border-bottom-color: #fff; }
.related.products, .upsells.products { grid-column: 1 / -1; }
.related.products > h2, .upsells.products > h2 { font-size: 24px; color: var(--navy); margin-bottom: 20px; }

/* --------------------------------------------------------- Buttons (global) */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt {
	background: var(--navy); color: #fff; border-radius: 8px; padding: 12px 24px; font-weight: 700;
	font-family: inherit; font-size: 15px; border: 0; transition: background .15s, transform .12s;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce #respond input#submit:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover {
	background: var(--accent); color: #fff; transform: translateY(-1px);
}
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce #place_order { background: var(--accent); }
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce #place_order:hover { background: var(--accent-dark); }

/* ------------------------------------------------------------- Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews, .woocommerce-NoticeGroup {
	border-radius: 10px; border: 1px solid var(--line); border-top: 3px solid var(--navy); background: var(--bg-alt);
	padding: 16px 20px; box-shadow: none;
}
.woocommerce-message { border-top-color: #1f9d55; }
.woocommerce-error { border-top-color: var(--accent); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--navy); }
.woocommerce-error::before { color: var(--accent); }

/* ---------------------------------------------------------------- Cart */
.woocommerce table.shop_table { border-radius: var(--radius); border-color: var(--line); }
.woocommerce table.shop_table th { background: var(--bg-alt); color: var(--navy); }
.woocommerce .cart-collaterals .cart_totals, .woocommerce-cart .cart-collaterals .cart_totals { border-radius: var(--radius); }
.woocommerce .cart_totals h2, .woocommerce-checkout #order_review_heading { color: var(--navy); }
.cart_totals .order-total .amount, .woocommerce-checkout .order-total .amount { color: var(--accent); }

/* -------------------------------------------------------------- Checkout */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce-checkout input[type="text"], .woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"], .woocommerce-checkout textarea, .woocommerce-checkout select {
	border: 1px solid var(--line); border-radius: 8px; padding: 12px 14px; font-family: inherit; font-size: 15px; width: 100%;
}
.woocommerce form .form-row label { font-weight: 600; color: var(--ink); }
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment { background: var(--bg-alt); border-radius: var(--radius); }
.woocommerce-checkout #payment ul.payment_methods { border-color: var(--line); }
.woocommerce-checkout #payment div.payment_box { background: #fff; border-radius: 8px; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff; }

/* My account */
.woocommerce-account .woocommerce-MyAccount-navigation ul { border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--line); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: var(--navy); color: #fff; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 13px 18px; font-weight: 600; }

/* WooCommerce responsive */
@media (max-width: 1024px) {
	.woocommerce ul.products, ul.products { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
	.woocommerce div.product { grid-template-columns: 1fr; gap: 24px; }
	.woocommerce ul.products, ul.products { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}
@media (max-width: 420px) {
	.woocommerce ul.products, ul.products { grid-template-columns: 1fr 1fr; gap: 12px; }
	ul.products li.product .woocommerce-loop-product__title { font-size: 14px; min-height: 0; }
	ul.products li.product .button { margin: 12px; padding: 9px; font-size: 13px; }
}
