/*
 * Marquee Storefront — styling for WooCommerce's own pages (cart, checkout, account, notices).
 * WooCommerce keeps all behaviour; this file only applies the design tokens.
 * Scoped to .mqs-woo-page (cart/checkout/account) and plugin templates.
 */

:where(.mqs-woo-page, .mqs-template) .woocommerce-message,
:where(.mqs-woo-page, .mqs-template) .woocommerce-info,
:where(.mqs-woo-page, .mqs-template) .woocommerce-error {
	border-top: 0; border-left: 4px solid var(--mqs-primary); border-radius: 12px;
	background: color-mix(in srgb, var(--mqs-primary) 8%, #fff); color: #10343d; font-family: var(--mqs-font-body);
}
:where(.mqs-woo-page, .mqs-template) .woocommerce-error { border-left-color: var(--mqs-accent); background: #fde8ec; color: #6b0f26; }
:where(.mqs-woo-page, .mqs-template) .woocommerce-message::before,
:where(.mqs-woo-page, .mqs-template) .woocommerce-info::before { color: var(--mqs-primary); }

/* Classic shortcode pages */
.mqs-woo-page .woocommerce :is(a.button, button.button, input.button, #respond input#submit),
.mqs-woo-page .woocommerce :is(a.button.alt, button.button.alt, input.button.alt) {
	padding: 12px 26px; border: 0; border-radius: var(--mqs-radius-button, 50px);
	background: var(--mqs-primary); color: var(--mqs-on-primary);
	font-family: var(--mqs-font-body); font-size: 15px; font-weight: 700; line-height: 1.3; transition: background-color .25s;
}
.mqs-woo-page .woocommerce :is(a.button, button.button, input.button):hover { background: var(--mqs-accent); color: #fff; }
.mqs-woo-page .woocommerce :is(a.button, button.button, input.button):disabled { opacity: .5; }
.mqs-woo-page .woocommerce #payment #place_order,
.mqs-woo-page .woocommerce .checkout-button { width: 100%; padding: 18px 24px; font-family: var(--mqs-font-heading); font-size: 26px; font-weight: 400; text-transform: var(--mqs-nav-transform); }

.mqs-woo-page .woocommerce form .form-row :is(input.input-text, textarea, select),
.mqs-woo-page .woocommerce :is(.quantity .qty, #coupon_code),
.mqs-woo-page .woocommerce-account .woocommerce form :is(input.input-text) {
	min-height: 44px; padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--mqs-primary) 45%, #fff); border-radius: 8px;
	background: #fff; font: 15px var(--mqs-font-body); color: #111;
}
.mqs-woo-page .woocommerce form .form-row label { font-weight: 600; font-size: 14px; }

.mqs-woo-page .woocommerce table.shop_table { border: 1px solid #e6e9eb; border-radius: 16px; border-collapse: separate; overflow: hidden; }
.mqs-woo-page .woocommerce table.shop_table th { background: color-mix(in srgb, var(--mqs-primary) 8%, #fff); font-family: var(--mqs-font-heading); font-weight: 400; font-size: 20px; color: var(--mqs-primary); text-transform: var(--mqs-nav-transform); }
.mqs-woo-page .woocommerce table.shop_table td { border-top-color: #eef1f3; }
.mqs-woo-page .woocommerce table.cart img { width: 72px; border-radius: 12px; background: var(--mqs-panel, #fef4fe); }
.mqs-woo-page .woocommerce a.remove { color: var(--mqs-accent) !important; }
.mqs-woo-page .woocommerce a.remove:hover { background: var(--mqs-accent); color: #fff !important; }
.mqs-woo-page .cart_totals h2, .mqs-woo-page .woocommerce-billing-fields h3, .mqs-woo-page #order_review_heading, .mqs-woo-page .woocommerce-additional-fields h3, .mqs-woo-page .woocommerce-MyAccount-content h2, .mqs-woo-page .woocommerce-column__title, .mqs-woo-page .woocommerce-order-details__title {
	font-family: var(--mqs-font-heading); font-weight: 400; font-size: 34px; color: var(--mqs-primary);
}
.mqs-woo-page .woocommerce-checkout #payment { border-radius: 16px; background: var(--mqs-panel, #fef4fe); }
.mqs-woo-page .woocommerce-checkout #payment div.payment_box { border-radius: 10px; }

/* Account navigation */
.mqs-woo-page .woocommerce-MyAccount-navigation ul { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.mqs-woo-page .woocommerce-MyAccount-navigation a {
	display: block; padding: 12px 18px; border-radius: 12px; color: var(--mqs-primary); text-decoration: none;
	font-family: var(--mqs-font-heading); font-size: 22px; text-transform: var(--mqs-nav-transform);
}
.mqs-woo-page .woocommerce-MyAccount-navigation .is-active a,
.mqs-woo-page .woocommerce-MyAccount-navigation a:hover { background: var(--mqs-panel, #fef4fe); color: var(--mqs-accent); }

/* Cart & checkout blocks */
.mqs-woo-page .wc-block-components-button:not(.is-link) {
	border-radius: var(--mqs-radius-button, 50px); background: var(--mqs-primary); color: var(--mqs-on-primary);
	font-family: var(--mqs-font-body); font-weight: 700;
}
.mqs-woo-page .wc-block-components-button:not(.is-link):hover { background: var(--mqs-accent); color: #fff; }
.mqs-woo-page :is(.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button) {
	min-height: 60px; font-family: var(--mqs-font-heading); font-size: 26px; font-weight: 400; text-transform: var(--mqs-nav-transform);
}
.mqs-woo-page .wc-block-components-text-input input,
.mqs-woo-page .wc-block-components-combobox .components-combobox-control input,
.mqs-woo-page .wc-blocks-components-select select { border-radius: 8px; }
.mqs-woo-page .wc-block-components-title, .mqs-woo-page .wc-block-cart__totals-title {
	font-family: var(--mqs-font-heading); font-weight: 400; color: var(--mqs-primary);
}
.mqs-woo-page .wc-block-components-product-name { color: var(--mqs-primary); font-weight: 600; }
.mqs-woo-page .wc-block-cart-item__image img { border-radius: 12px; background: var(--mqs-panel, #fef4fe); }

/* Empty cart / no products */
.mqs-woo-page .cart-empty.woocommerce-info { font-size: 18px; }
.mqs-woo-page .wc-block-cart__empty-cart__title { font-family: var(--mqs-font-heading); font-weight: 400; color: var(--mqs-primary); }

/* Content width for the companion theme's generic page template on WooCommerce pages */
.mqs-woo-page .mqs-entry { max-width: calc(var(--mqs-container, 1340px) + 40px); }
