/* WooCommerce styling — Poke Bowl theme */

.woocommerce,
.woocommerce-page {
	font-family: var(--wp--preset--font-family--body);
	color: var(--pb-text, #2a2a2a);
}

.woocommerce .woocommerce-breadcrumb,
.woocommerce-page .woocommerce-breadcrumb {
	font-size: 0.875rem;
	color: var(--pb-text-muted, #6b6b6b);
	margin-bottom: 24px;
}

.woocommerce table.shop_table {
	border: 1px solid var(--pb-border, #e8e4df);
	border-radius: 16px;
	overflow: hidden;
	border-collapse: separate;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	padding: 16px;
	border-color: var(--pb-border, #e8e4df);
}

.woocommerce table.shop_table thead th {
	background: var(--pb-bg, #faf8f5);
	font-weight: 600;
}

.woocommerce .cart-collaterals,
.woocommerce-page .cart-collaterals {
	margin-top: 32px;
}

.woocommerce .cart_totals {
	background: var(--pb-surface, #fff);
	border: 1px solid var(--pb-border, #e8e4df);
	border-radius: 16px;
	padding: 24px;
}

.woocommerce .cart_totals h2 {
	font-family: 'Playfair Display', Georgia, serif;
	font-size: 1.25rem;
	margin-bottom: 16px;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order,
.woocommerce-page .woocommerce-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	background: var(--pb-accent, #e8734a) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 12px !important;
	padding: 14px 24px !important;
	font-weight: 600 !important;
	font-size: 1rem !important;
	min-height: 44px;
	transition: background 280ms ease;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #payment #place_order:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover {
	background: var(--pb-accent-dark, #d05a32) !important;
	color: #fff !important;
}

.woocommerce .quantity .qty {
	min-height: 44px;
	border: 1px solid var(--pb-border, #e8e4df);
	border-radius: 8px;
	padding: 8px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	border: 1px solid var(--pb-border, #e8e4df);
	border-radius: 8px;
	padding: 12px 16px;
	min-height: 44px;
	font-size: 1rem;
	background: var(--pb-surface, #fff);
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	border-color: var(--pb-accent, #e8734a);
	outline: none;
	box-shadow: 0 0 0 2px rgba(232, 115, 74, 0.2);
}

.woocommerce-checkout #payment {
	background: var(--pb-bg, #faf8f5);
	border-radius: 16px;
	border: 1px solid var(--pb-border, #e8e4df);
}

.woocommerce-checkout #payment ul.payment_methods {
	border-bottom: 1px solid var(--pb-border, #e8e4df);
	padding: 16px;
}

.woocommerce-checkout #payment div.payment_box {
	background: var(--pb-surface, #fff);
	border-radius: 8px;
}

.woocommerce-message,
.woocommerce-info {
	border-top-color: var(--pb-accent, #e8734a);
	border-radius: 8px;
	background: var(--pb-bg, #faf8f5);
}

.woocommerce-error {
	border-radius: 8px;
}

.woocommerce .woocommerce-order-details,
.woocommerce .woocommerce-customer-details {
	background: var(--pb-surface, #fff);
	border: 1px solid var(--pb-border, #e8e4df);
	border-radius: 16px;
	padding: 24px;
	margin-bottom: 24px;
}

.woocommerce dl.variation dt,
.woocommerce dl.variation dd {
	font-size: 0.875rem;
}

.woocommerce dl.variation dt {
	font-weight: 600;
	color: var(--pb-text-muted, #6b6b6b);
}

@media screen and (max-width: 767px) {
	.woocommerce table.shop_table {
		font-size: 0.875rem;
	}

	.woocommerce table.shop_table th,
	.woocommerce table.shop_table td {
		padding: 12px 8px;
	}

	.woocommerce .cart_totals {
		padding: 16px;
	}
}

@media screen and (min-width: 768px) {
	.woocommerce-cart .woocommerce {
		display: grid;
		grid-template-columns: 1fr 360px;
		gap: 32px;
		align-items: start;
	}

	.woocommerce-cart .woocommerce-notices-wrapper,
	.woocommerce-cart form.woocommerce-cart-form {
		grid-column: 1;
	}

	.woocommerce-cart .cart-collaterals {
		grid-column: 2;
		grid-row: 1 / span 2;
		margin-top: 0;
	}
}
