/**
 * WC Professional UI
 * Mobile-first, RTL/LTR-safe styles for WooCommerce classic templates and Blocks.
 * Every rule is scoped to the body.wcps-ui class added by the plugin.
 */

/* --------------------------------------------------------------------------
   1. Design tokens and shared foundations
   -------------------------------------------------------------------------- */


body.wcps-ui .woocommerce,
body.wcps-ui .wp-block-woocommerce-cart,
body.wcps-ui .wp-block-woocommerce-checkout {
	box-sizing: border-box;
	width: min(100%, var(--wcps-content-width));
	margin-inline: auto;
	color: var(--wcps-ink);
	font-family: inherit;
	line-height: 1.7;
	margin-top: 120px;
	padding-top: 96px;
}

body.wcps-ui .woocommerce *,
body.wcps-ui .wp-block-woocommerce-cart *,
body.wcps-ui .wp-block-woocommerce-checkout * {
	box-sizing: border-box;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(h1, h2, h3, h4) {
	color: var(--color-primary);
	font-family: inherit;
	font-weight: 750;
	line-height: 1.45;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) h2 {
	font-size: clamp(1.2rem, 1rem + 0.65vw, 1.65rem);
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) h3 {
	font-size: clamp(1.05rem, 0.95rem + 0.35vw, 1.3rem);
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) a {
	color: #fff;
	text-underline-offset: 0.18em;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) a:hover {
	color: var(--wcps-primary-hover);
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(a, button, input, select, textarea, [tabindex]):focus-visible {
	outline: 3px solid var(--wcps-focus);
	outline-offset: 3px;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(p, address) {
	color: var(--wcps-muted);
}

/* --------------------------------------------------------------------------
   2. Notices, validation, forms, controls, and shared buttons
   -------------------------------------------------------------------------- */

body.wcps-ui :where(.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner) {
	position: relative;
	margin: 0 0 20px;
	padding: 15px 18px;
	border: 1px solid var(--wcps-line);
	border-inline-start-width: 4px;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface);
	box-shadow: none;
	color: var(--wcps-ink);
	font-size: 0.94rem;
	line-height: 1.75;
	list-style: none;
}

body.wcps-ui .woocommerce-message,
body.wcps-ui .wc-block-components-notice-banner.is-success {
	border-inline-start-color: var(--wcps-success);
	background: var(--wcps-success-soft);
}

body.wcps-ui .woocommerce-info,
body.wcps-ui .wc-block-components-notice-banner.is-info {
	border-inline-start-color: var(--wcps-primary);
	background: var(--wcps-primary-soft);
}

body.wcps-ui .woocommerce-error,
body.wcps-ui .wc-block-components-notice-banner.is-error {
	border-inline-start-color: var(--wcps-danger);
	background: var(--wcps-danger-soft);
}

body.wcps-ui .woocommerce-error li + li {
	margin-top: 6px;
}

body.wcps-ui :where(.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner) :where(a, .button) {
	float: none;
	margin: 0 6px;
	font-weight: 700;
	text-decoration: underline;
}

body.wcps-ui .woocommerce form .form-row,
body.wcps-ui .woocommerce .wcps-field {
	margin: 0 0 18px;
	padding: 0;
}

body.wcps-ui .woocommerce form .form-row label,
body.wcps-ui .woocommerce .wcps-label,
body.wcps-ui .wc-block-components-address-form__address_2-toggle {
	display: inline-block;
	margin-bottom: 7px;
	color: var(--wcps-ink);
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.5;
}

body.wcps-ui .woocommerce form .form-row .required {
	color: var(--wcps-danger);
	font-weight: 800;
	text-decoration: none;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="password"],
	input[type="search"],
	input[type="number"],
	input[type="url"],
	input[type="date"],
	select,
	textarea
) {
	width: 100%;
	min-height: 50px;
	margin: 0;
	padding: 11px 13px;
	border: 1px solid #b8c4cf;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface);
	box-shadow: none;
	color: var(--wcps-ink);
	font: inherit;
	font-size: 0.95rem;
	line-height: 1.5;
	transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) textarea {
	min-height: 118px;
	resize: vertical;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(input, textarea)::placeholder {
	color: #7c8793;
	opacity: 1;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="password"],
	input[type="search"],
	input[type="number"],
	input[type="url"],
	input[type="date"],
	select,
	textarea
):hover {
	border-color: #8fa0af;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(input, select, textarea)[aria-invalid="true"],
body.wcps-ui .woocommerce .form-row.woocommerce-invalid :where(input, select, textarea) {
	border-color: var(--wcps-danger);
	background: var(--wcps-danger-soft);
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(input[type="checkbox"], input[type="radio"]) {
	width: 18px;
	height: 18px;
	margin: 0;
	margin-inline-end: 7px;
	accent-color: var(--wcps-primary);
	vertical-align: middle;
}

body.wcps-ui .select2-container {
	width: 100% !important;
}

body.wcps-ui .select2-container .select2-selection--single {
	height: 50px;
	border: 1px solid #b8c4cf;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface);
}

body.wcps-ui .select2-container .select2-selection--single .select2-selection__rendered {
	padding-inline: 13px 38px;
	color: var(--wcps-ink);
	line-height: 48px;
}

body.wcps-ui .select2-container .select2-selection--single .select2-selection__arrow {
	inset-block-start: 11px;
	inset-inline-end: 10px;
	inset-inline-start: auto;
}

body.wcps-ui .select2-dropdown {
	border-color: #b8c4cf;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface);
	box-shadow: var(--wcps-shadow);
}

body.wcps-ui .select2-results__option--highlighted[aria-selected],
body.wcps-ui .select2-results__option--highlighted[data-selected] {
	background: var(--wcps-primary);
	color: #fff;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(
	button.button,
	a.button,
	input.button,
	#place_order,
	.wc-block-components-button:not(.wc-block-components-totals-coupon-link)
) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 11px 20px;
	border: 1px solid transparent;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-primary);
	box-shadow: none;
	color: #fff;
	font: inherit;
	font-size: 0.93rem;
	font-weight: 750;
	line-height: 1.35;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 150ms ease, border-color 150ms ease, transform 150ms ease;
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(
	button.button,
	a.button,
	input.button,
	#place_order,
	.wc-block-components-button:not(.wc-block-components-totals-coupon-link)
):hover {
	border-color: var(--wcps-primary-hover);
	background: var(--wcps-primary-hover);
	color: #fff;
	transform: translateY(-1px);
}

body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(button, .button, input[type="submit"]):disabled,
body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(button, .button, input[type="submit"]).disabled {
	opacity: 0.52;
	cursor: not-allowed;
	transform: none;
}

body.wcps-ui .woocommerce a.remove,
body.wcps-ui .wc-block-cart-item__remove-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	min-height: 38px;
	padding: 5px;
	border: 1px solid #efc0bd;
	border-radius: 999px;
	background: var(--wcps-danger-soft);
	color: var(--wcps-danger) !important;
	font-size: 0.82rem;
	font-weight: 750;
	line-height: 1;
	text-decoration: none;
}

body.wcps-ui .woocommerce a.remove:hover,
body.wcps-ui .wc-block-cart-item__remove-link:hover {
	border-color: var(--wcps-danger);
	background: var(--wcps-danger);
	color: #fff !important;
}

body.wcps-ui .woocommerce .quantity .qty,
body.wcps-ui .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	width: 76px;
	min-height: 44px;
	padding: 8px;
	text-align: center;
}

body.wcps-ui .wc-block-components-quantity-selector {
	min-height: 44px;
	border: 1px solid #b8c4cf;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface);
}

/* --------------------------------------------------------------------------
   3. Shared WooCommerce tables and cards
   -------------------------------------------------------------------------- */

body.wcps-ui .woocommerce table.shop_table {
	width: 100%;
	margin: 0;
	border: 1px solid var(--wcps-line);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface);
	box-shadow: none;
	overflow: hidden;
}

body.wcps-ui .woocommerce table.shop_table :where(th, td) {
	padding: 14px 16px;
	border: 0;
	border-bottom: 1px solid var(--wcps-line);
	background: transparent;
	color: var(--wcps-ink);
	vertical-align: middle;
	
}
body.wcps-ui .woocommerce table.shop_table td{
	background: var(--wcps-surface-soft);
}
body.wcps-ui .woocommerce .cupon-actions, body.wcps-ui .woocommerce .coupon {
	display: flex;
    align-items: center;
    justify-content: space-between;
}
body.wcps-ui .woocommerce .cupon-actions {
    justify-content: space-between;
	padding: 16px 24px;
    background-color: var(--color-bg-soft);
}
 body.wcps-ui .woocommerce .coupon {
	justify-content: flex-start;
	gap: 8px;
	width: 50%;
}
 body.wcps-ui .woocommerce .coupon .button{
	width: 203px;
    height: 50px;

}
body.wcps-ui .woocommerce table.shop_table th {
	background: var(--wcps-surface-soft);
	font-size: 0.85rem;
	font-weight: 750;
	letter-spacing: 0;
	text-transform: none;
}
body.wcps-ui .woocommerce table.shop_table th.product-remove{
	width: 44px;
}

body.wcps-ui .woocommerce table.shop_table tr:last-child :where(th, td) {
	border-bottom: 0;
}

body.wcps-ui .woocommerce table.shop_table .amount {
	color: var(--wcps-ink);
	font-weight: 750;
}

body.wcps-ui :where(.woocommerce-cart-form, .cart_totals, #customer_details, #order_review, .woocommerce-order-details, .woocommerce-customer-details, .woocommerce-MyAccount-content, .woocommerce-form-login, .woocommerce-form-register, .woocommerce-form-lost-password) {
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface);
	box-shadow: var(--wcps-shadow);
}

/* --------------------------------------------------------------------------
   4. Classic cart
   -------------------------------------------------------------------------- */

body.wcps-ui-cart .woocommerce-cart-form {
	overflow: hidden;
}

body.wcps-ui-cart .woocommerce-cart-form table.shop_table {
	border: 0;
	border-radius: 0;
}

body.wcps-ui-cart .woocommerce-cart-form .product-thumbnail img {
	display: block;
	width: 120px;
	height: auto;
	margin: 0;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface-soft);
	object-fit: contain;
}

body.wcps-ui-cart .woocommerce-cart-form .product-name a {
	color: var(--wcps-ink);
	font-weight: 750;
	text-decoration: none;
}

body.wcps-ui-cart .woocommerce-cart-form .product-name a:hover {
	color: var(--wcps-primary);
	text-decoration: underline;
}

body.wcps-ui-cart .woocommerce-cart-form .variation,
body.wcps-ui-cart .wc-block-components-product-metadata {
	margin-top: 7px;
	color: var(--wcps-muted);
	font-size: 0.82rem;
}

body.wcps-ui-cart .woocommerce-cart-form .variation :where(dt, dd) {
	display: inline;
	float: none;
	margin: 0 0 0 4px;
	padding: 0;
}

body.wcps-ui-cart .woocommerce-cart-form td.actions {
	padding: 16px;
	background: var(--wcps-surface-soft);
}

body.wcps-ui-cart .woocommerce-cart-form td.actions .coupon {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

body.wcps-ui-cart .woocommerce-cart-form td.actions .coupon #coupon_code {
	width: min(220px, 42vw);
	min-height: 48px;
}

body.wcps-ui-cart .cart-collaterals {
	display: grid;
	gap: 24px;
	width: 100%;
	margin-top: 28px;
}

body.wcps-ui-cart .cart-collaterals::before,
body.wcps-ui-cart .cart-collaterals::after {
	display: none;
}

body.wcps-ui-cart .cart-collaterals :where(.cross-sells, .cart_totals) {
	float: none;
	width: 100%;
	margin: 0;
}
.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals{
	width: 100%;
}

body.wcps-ui-cart .cart_totals {
	overflow: hidden;
	padding: 22px;
}

body.wcps-ui-cart .cart_totals h2,
body.wcps-ui-cart .cross-sells h2 {
	margin: 0 0 18px;
}

body.wcps-ui-cart .cart_totals table.shop_table {
	border-radius: var(--wcps-radius-small);
}

body.wcps-ui-cart .cart_totals .order-total :where(th, td, .amount) {
	color: var(--wcps-primary);
	font-size: 1.08rem;
	font-weight: 800;
}

body.wcps-ui-cart .wc-proceed-to-checkout {
	padding: 18px 0 0;
}

body.wcps-ui-cart .wc-proceed-to-checkout a.checkout-button {
	width: 100%;
	min-height: 54px;
	margin: 0;
	font-size: 1rem;
}

body.wcps-ui-cart .shipping-calculator-button {
	font-weight: 700;
}

body.wcps-ui-cart .shipping-calculator-form {
	margin-top: 14px;
	padding: 15px;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface-soft);
}

body.wcps-ui-cart :where(.cart-empty, .return-to-shop) {
	text-align: center;
}

body.wcps-ui-cart .cart-empty {
	padding: 28px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface-soft);
}

/* --------------------------------------------------------------------------
   5. Cart Block
   -------------------------------------------------------------------------- */

body.wcps-ui-cart .wc-block-cart .wc-block-components-main {
	padding-inline-end: 24px;
}

body.wcps-ui-cart .wc-block-cart-items {
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface);
	box-shadow: var(--wcps-shadow);
	overflow: hidden;
}

body.wcps-ui-cart .wc-block-cart-items th {
	padding: 13px 16px;
	background: var(--wcps-surface-soft);
	color: var(--wcps-muted);
	font-size: 0.82rem;
	font-weight: 750;
}

body.wcps-ui-cart .wc-block-cart-items td {
	padding: 17px 15px;
	border-color: var(--wcps-line);
}

body.wcps-ui-cart .wc-block-cart-item__image img {
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface-soft);
	object-fit: contain;
}

body.wcps-ui-cart .wc-block-components-product-name {
	color: var(--wcps-ink);
	font-size: 0.96rem;
	font-weight: 750;
	line-height: 1.6;
	text-decoration: none;
}

body.wcps-ui-cart .wc-block-cart__sidebar {
	padding: 22px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface);
	box-shadow: var(--wcps-shadow);
}

body.wcps-ui-cart .wc-block-cart__totals-title {
	padding: 0 0 15px;
	font-size: 1.15rem;
	font-weight: 800;
	text-align: start;
}

body.wcps-ui-cart .wc-block-components-totals-wrapper {
	padding-block: 14px;
	border-color: var(--wcps-line);
}

body.wcps-ui-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--wcps-primary);
	font-size: 1.1rem;
	font-weight: 800;
}

body.wcps-ui-cart .wc-block-cart__submit-button {
	width: 100%;
	min-height: 54px;
}

body.wcps-ui-cart .wc-block-components-totals-coupon-link {
	min-height: 44px;
	color: var(--wcps-primary);
	font-weight: 700;
	text-decoration: underline;
}

/* --------------------------------------------------------------------------
   6. Classic checkout and order-pay
   -------------------------------------------------------------------------- */

body.wcps-ui-checkout .woocommerce-form-login,
body.wcps-ui-checkout .woocommerce-form-coupon {
	margin: 0 0 20px;
	padding: 20px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface-soft);
}

body.wcps-ui-checkout .woocommerce-form-coupon {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 10px;
}

body.wcps-ui-checkout .woocommerce-form-coupon p {
	flex: 1 1 220px;
	margin: 0;
}

body.wcps-ui-checkout form.checkout {
	display: grid;
	gap: 18px 28px;
}

body.wcps-ui-checkout #customer_details {
	overflow: hidden;
	padding: 22px;
}

body.wcps-ui-checkout #customer_details :where(.col-1, .col-2) {
	float: none;
	width: 100%;
}

body.wcps-ui-checkout #customer_details .col-2 {
	margin-top: 26px;
	padding-top: 24px;
	border-top: 1px solid var(--wcps-line);
}

body.wcps-ui-checkout #customer_details h3,
body.wcps-ui-checkout #order_review_heading {
	margin: 0 0 20px;
}

body.wcps-ui-checkout #order_review_heading {
	padding: 0;
}

body.wcps-ui-checkout #order_review {
	overflow: hidden;
	padding: 20px;
}

body.wcps-ui-checkout #order_review table.shop_table {
	border-radius: var(--wcps-radius-small);
}

body.wcps-ui-checkout #order_review .product-name {
	font-weight: 650;
}

body.wcps-ui-checkout #order_review .product-quantity {
	color: var(--wcps-muted);
	font-weight: 600;
}

body.wcps-ui-checkout #order_review .order-total :where(th, td, .amount) {
	color: var(--wcps-primary);
	font-size: 1.06rem;
	font-weight: 800;
}

body.wcps-ui-checkout #payment {
	margin-top: 18px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface-soft);
}

body.wcps-ui-checkout #payment ul.payment_methods {
	margin: 0;
	padding: 6px 18px;
	border-bottom-color: var(--wcps-line);
	list-style: none;
}

body.wcps-ui-checkout #payment ul.payment_methods > li {
	margin: 0;
	padding: 14px 0;
	border-bottom: 1px solid var(--wcps-line);
}

body.wcps-ui-checkout #payment ul.payment_methods > li:last-child {
	border-bottom: 0;
}

body.wcps-ui-checkout #payment ul.payment_methods label {
	color: var(--wcps-ink);
	font-weight: 750;
	cursor: pointer;
}

body.wcps-ui-checkout #payment div.payment_box {
	margin: 12px 0 0;
	padding: 13px 15px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface);
	color: var(--wcps-muted);
	font-size: 0.88rem;
	line-height: 1.75;
}

body.wcps-ui-checkout #payment div.payment_box::before {
	display: none;
}

body.wcps-ui-checkout #payment .payment_method_paypal img,
body.wcps-ui-checkout #payment .payment_method_stripe img {
	max-height: 34px;
	margin-inline: 8px;
}

body.wcps-ui-checkout #payment .place-order {
	margin: 0;
	padding: 18px;
}

body.wcps-ui-checkout #payment #place_order {
	float: none;
	width: 100%;
	min-height: 54px;
	font-size: 1rem;
}

body.wcps-ui-checkout .woocommerce-privacy-policy-text,
body.wcps-ui-checkout .woocommerce-terms-and-conditions-wrapper {
	font-size: 0.84rem;
	line-height: 1.8;
}

body.wcps-ui-order-pay .woocommerce > form#order_review {
	max-width: 820px;
	margin-inline: auto;
}

body.wcps-ui-order-pay #payment {
	margin-top: 22px;
}

/* --------------------------------------------------------------------------
   7. Checkout Block
   -------------------------------------------------------------------------- */

body.wcps-ui-checkout .wc-block-checkout .wc-block-components-main {
	padding-inline-end: 28px;
}

body.wcps-ui-checkout :where(
	.wc-block-checkout__contact-fields,
	.wc-block-checkout__shipping-fields,
	.wc-block-checkout__billing-fields,
	.wc-block-checkout__shipping-method,
	.wc-block-checkout__payment-method,
	.wc-block-checkout__additional-information,
	.wc-block-checkout__order-notes
) {
	margin-bottom: 18px;
	padding: 20px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface);
	box-shadow: 0 8px 24px rgba(23, 32, 42, 0.05);
}

body.wcps-ui-checkout .wc-block-components-checkout-step__heading {
	margin: 0 0 17px;
}

body.wcps-ui-checkout .wc-block-components-checkout-step__title {
	color: var(--wcps-ink);
	font-size: 1.1rem;
	font-weight: 800;
}

body.wcps-ui-checkout .wc-block-components-checkout-step__description {
	color: var(--wcps-muted);
	font-size: 0.86rem;
}

body.wcps-ui-checkout .wc-block-components-text-input input,
body.wcps-ui-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input {
	min-height: 54px;
	border-color: #b8c4cf;
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface);
	box-shadow: none;
	color: var(--wcps-ink);
}

body.wcps-ui-checkout .wc-block-components-text-input label,
body.wcps-ui-checkout .wc-block-components-combobox .wc-block-components-combobox-control label.components-base-control__label {
	color: var(--wcps-muted);
}

body.wcps-ui-checkout .wc-block-components-radio-control-accordion-option {
	margin-bottom: 9px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface);
	overflow: hidden;
}

body.wcps-ui-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted {
	border-color: var(--wcps-primary);
	box-shadow: 0 0 0 1px var(--wcps-primary);
}

body.wcps-ui-checkout .wc-block-components-radio-control-accordion-content {
	padding: 0 16px 16px;
	color: var(--wcps-muted);
}

body.wcps-ui-checkout .wc-block-checkout__sidebar {
	padding: 20px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface);
	box-shadow: var(--wcps-shadow);
}

body.wcps-ui-checkout .wc-block-components-order-summary {
	padding: 0;
}

body.wcps-ui-checkout .wc-block-components-order-summary-item {
	padding-block: 13px;
	border-bottom: 1px solid var(--wcps-line);
}

body.wcps-ui-checkout .wc-block-components-order-summary-item__image img {
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface-soft);
	object-fit: contain;
}

body.wcps-ui-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
	color: var(--wcps-ink);
	font-weight: 750;
	text-decoration: none;
}

body.wcps-ui-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--wcps-primary);
	font-size: 1.08rem;
	font-weight: 800;
}

body.wcps-ui-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
	min-height: 56px;
	font-size: 1rem;
}

body.wcps-ui-checkout .wc-block-components-checkout-return-to-cart-button {
	min-height: 44px;
	font-weight: 700;
}

/* --------------------------------------------------------------------------
   8. Gateway return, order received, order details, and customer details
   -------------------------------------------------------------------------- */

body.wcps-ui-order-received .woocommerce-order {
	max-width: 960px;
	margin-inline: auto;
}

body.wcps-ui-order-received .woocommerce-thankyou-order-received,
body.wcps-ui-order-received .woocommerce-notice--success {
	margin: 0 0 22px;
	padding: 22px;
	border: 1px solid #a9dac0;
	border-radius: var(--wcps-radius);
	background: var(--wcps-success-soft);
	color: var(--wcps-success);
	font-size: clamp(1rem, 0.95rem + 0.3vw, 1.2rem);
	font-weight: 800;
	line-height: 1.7;
	text-align: center;
}

body.wcps-ui-order-received .woocommerce-notice--error,
body.wcps-ui-order-received .woocommerce-thankyou-order-failed-actions {
	padding: 18px;
	border: 1px solid #efc0bd;
	border-radius: var(--wcps-radius);
	background: var(--wcps-danger-soft);
	color: var(--wcps-danger);
}

body.wcps-ui-order-received ul.woocommerce-order-overview {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	overflow: hidden;
	margin: 0 0 26px;
	padding: 1px;
	border-radius: var(--wcps-radius);
	background: var(--wcps-line);
	list-style: none;
}

body.wcps-ui-order-received ul.woocommerce-order-overview li {
	float: none;
	min-width: 0;
	margin: 0;
	padding: 16px;
	border: 0;
	background: var(--wcps-surface);
	color: var(--wcps-muted);
	font-size: 0.78rem;
	line-height: 1.6;
	text-transform: none;
}

body.wcps-ui-order-received ul.woocommerce-order-overview li strong {
	display: block;
	margin-top: 5px;
	color: var(--wcps-ink);
	font-size: 0.95rem;
	font-weight: 800;
	overflow-wrap: anywhere;
}

body.wcps-ui :where(.woocommerce-order-details, .woocommerce-customer-details) {
	margin-top: 24px;
	padding: 22px;
	overflow: hidden;
}

body.wcps-ui :where(.woocommerce-order-details, .woocommerce-customer-details) h2 {
	margin: 0 0 18px;
}

body.wcps-ui .woocommerce-customer-details address {
	padding: 17px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface-soft);
	font-style: normal;
	line-height: 1.9;
}

body.wcps-ui .woocommerce-customer-details :where(.woocommerce-customer-details--phone, .woocommerce-customer-details--email) {
	margin: 8px 0 0;
	padding: 0;
}

body.wcps-ui .woocommerce-bacs-bank-details,
body.wcps-ui .wc-bacs-bank-details {
	margin-top: 22px;
	padding: 20px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-warning-soft);
}

body.wcps-ui .wc-bacs-bank-details-account-name {
	margin-top: 0;
}

body.wcps-ui ul.wc-bacs-bank-details.order_details {
	display: grid;
	gap: 10px;
	margin: 14px 0 0;
	padding: 0;
	list-style: none;
}

body.wcps-ui ul.wc-bacs-bank-details.order_details li {
	float: none;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid rgba(138, 90, 0, 0.22);
	border-radius: var(--wcps-radius-small);
	background: rgba(255, 255, 255, 0.68);
}

/* --------------------------------------------------------------------------
   9. My Account dashboard, navigation, forms, addresses, and orders
   -------------------------------------------------------------------------- */

body.wcps-ui-account .woocommerce {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 24px;
}

body.wcps-ui-account .woocommerce > :where(.woocommerce-notices-wrapper, .woocommerce-message, .woocommerce-info, .woocommerce-error) {
	flex: 1 1 100%;
}

body.wcps-ui-account .woocommerce-MyAccount-navigation {
	flex: 0 0 250px;
	width: auto;
	margin: 0;
	padding: 10px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface);
	box-shadow: var(--wcps-shadow);
}

body.wcps-ui-account .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

body.wcps-ui-account .woocommerce-MyAccount-navigation li {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid var(--wcps-line);
}

body.wcps-ui-account .woocommerce-MyAccount-navigation li:last-child {
	border-bottom: 0;
}

body.wcps-ui-account .woocommerce-MyAccount-navigation a {
	display: flex;
	align-items: center;
	min-height: 46px;
	padding: 9px 12px;
	border-radius: 7px;
	color: var(--wcps-ink);
	font-size: 0.91rem;
	font-weight: 700;
	text-decoration: none;
}

body.wcps-ui-account .woocommerce-MyAccount-navigation a:hover {
	background: var(--wcps-surface-soft);
	color: var(--wcps-primary);
}

body.wcps-ui-account .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--wcps-primary);
	color: #fff;
}

body.wcps-ui-account .woocommerce-MyAccount-content {
	flex: 1 1 560px;
	float: none;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 24px;
}

body.wcps-ui-account .woocommerce-MyAccount-content > :first-child {
	margin-top: 0;
}

body.wcps-ui-account .woocommerce-MyAccount-content > :last-child {
	margin-bottom: 0;
}

body.wcps-ui-account .woocommerce-MyAccount-content mark {
	padding: 2px 5px;
	border-radius: 4px;
	background: var(--wcps-primary-soft);
	color: var(--wcps-primary-hover);
}

body.wcps-ui-account .woocommerce-MyAccount-content table.shop_table {
	margin-top: 16px;
}

body.wcps-ui-account .woocommerce-orders-table__cell-order-actions .button {
	min-height: 40px;
	margin: 3px;
	padding: 8px 12px;
	font-size: 0.8rem;
}

body.wcps-ui-account .woocommerce-Addresses {
	display: grid;
	gap: 18px;
	margin-top: 20px;
}

body.wcps-ui-account .woocommerce-Addresses :where(.col-1, .col-2) {
	float: none;
	width: 100%;
	padding: 18px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius);
	background: var(--wcps-surface-soft);
}

body.wcps-ui-account .woocommerce-Address-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

body.wcps-ui-account .woocommerce-Address-title h3 {
	margin: 0;
}

body.wcps-ui-account .woocommerce-Address-title .edit {
	float: none;
	font-size: 0.85rem;
	font-weight: 750;
}

body.wcps-ui-account .woocommerce-Address address {
	margin: 14px 0 0;
	font-style: normal;
	line-height: 1.9;
}

body.wcps-ui-account .woocommerce-EditAccountForm fieldset {
	margin: 24px 0;
	padding: 18px;
	border: 1px solid var(--wcps-line);
	border-radius: var(--wcps-radius-small);
	background: var(--wcps-surface-soft);
}

body.wcps-ui-account .woocommerce-EditAccountForm legend {
	padding-inline: 8px;
	color: var(--wcps-ink);
	font-weight: 800;
}

body.wcps-ui-account .woocommerce .u-columns {
	display: grid;
	flex: 1 1 100%;
	gap: 22px;
	width: 100%;
}

body.wcps-ui-account .woocommerce .u-columns :where(.u-column1, .u-column2) {
	float: none;
	width: 100%;
}

body.wcps-ui-account :where(.woocommerce-form-login, .woocommerce-form-register, .woocommerce-form-lost-password) {
	margin: 0;
	padding: 22px;
}

body.wcps-ui-account .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	margin-inline-end: 12px;
}

body.wcps-ui-account .woocommerce-LostPassword {
	margin-top: 14px;
}

body.wcps-ui-account .woocommerce-MyAccount-paymentMethods .woocommerce-PaymentMethod--actions .button {
	min-height: 40px;
	padding: 8px 12px;
	font-size: 0.8rem;
}



/* ==========================================================
   WooCommerce Notices
   Success, Info, Warning, Error
   ========================================================== */

body.woocommerce-page {
    --wc-notice-primary: #0b5fa5;
    --wc-notice-primary-hover: #084a80;

    --wc-notice-success: #16794a;
    --wc-notice-success-bg: #eaf7f0;

    --wc-notice-info: #0b5fa5;
    --wc-notice-info-bg: #eaf3fb;

    --wc-notice-warning: #8a5a00;
    --wc-notice-warning-bg: #fff7df;

    --wc-notice-danger: #b42318;
    --wc-notice-danger-bg: #fff0ef;

    --wc-notice-text: #17202a;
    --wc-notice-border: #dce3ea;
}

/* Wrapper */
body.woocommerce-page .woocommerce-notices-wrapper {
    width: 100%;
    margin: 0 0 20px;
}

/* پیام‌های کلاسیک ووکامرس و WooCommerce Blocks */
body.woocommerce-page :where(
    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error,
    .woocommerce-warning,
    .wc-block-components-notice-banner
) {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 18px;
    padding: 15px 18px;
    border: 1px solid var(--wc-notice-border);
    border-inline-start-width: 4px;
    border-radius: 8px;
    background: #fff;
    box-shadow: none;
    color: var(--wc-notice-text);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.9;
    list-style: none;
    text-align: start;
}

/* حذف ظاهر پیش‌فرض قالب یا ووکامرس */
body.woocommerce-page :where(
    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error
)::before {
    display: none;
}

/* پیام موفق */
body.woocommerce-page .woocommerce-message,
body.woocommerce-page .woocommerce-notice--success,
body.woocommerce-page .wc-block-components-notice-banner.is-success {
    border-color: #b9dfca;
    border-inline-start-color: var(--wc-notice-success);
    background-color: var(--wc-notice-success-bg);
}

/* پیام اطلاعات */
body.woocommerce-page .woocommerce-info,
body.woocommerce-page .wc-block-components-notice-banner.is-info {
    border-color: #bed9ee;
    border-inline-start-color: var(--wc-notice-info);
    background-color: var(--wc-notice-info-bg);
}

/* پیام هشدار */
body.woocommerce-page .woocommerce-warning,
body.woocommerce-page .wc-block-components-notice-banner.is-warning {
    border-color: #ead597;
    border-inline-start-color: var(--wc-notice-warning);
    background-color: var(--wc-notice-warning-bg);
}

/* پیام خطا */
body.woocommerce-page .woocommerce-error,
body.woocommerce-page .woocommerce-notice--error,
body.woocommerce-page .wc-block-components-notice-banner.is-error {
    border-color: #efc2bd;
    border-inline-start-color: var(--wc-notice-danger);
    background-color: var(--wc-notice-danger-bg);
}

/* لیست خطاها */
body.woocommerce-page .woocommerce-error {
    padding-inline-start: 20px;
}

body.woocommerce-page .woocommerce-error li {
    margin: 0;
    padding: 0;
    color: var(--wc-notice-text);
}

body.woocommerce-page .woocommerce-error li + li {
    margin-top: 7px;
    padding-top: 7px;
    border-top: 1px solid rgb(180 35 24 / 14%);
}

/* متن داخل Noticeهای Block */
body.woocommerce-page .wc-block-components-notice-banner__content {
    color: inherit;
    line-height: inherit;
}

/* آیکون Noticeهای Block */
body.woocommerce-page .wc-block-components-notice-banner > svg {
    flex: 0 0 auto;
    margin-inline: 0 12px;
}

/* لینک‌ها */
body.woocommerce-page :where(
    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error,
    .woocommerce-warning,
    .wc-block-components-notice-banner
) a:not(.button) {
    color: var(--wc-notice-primary);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.woocommerce-page :where(
    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error,
    .woocommerce-warning,
    .wc-block-components-notice-banner
) a:not(.button):hover {
    color: var(--wc-notice-primary-hover);
}

/* دکمه داخل پیام، مانند مشاهده سبد خرید */
body.woocommerce-page :where(
    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error,
    .woocommerce-warning,
    .wc-block-components-notice-banner
) :where(.button, button) {
    float: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    margin: 0;
    margin-inline-end: 12px;
    padding: 8px 16px;
    border: 1px solid var(--wc-notice-primary);
    border-radius: 7px;
    background: var(--wc-notice-primary);
    box-shadow: none;
    color: #fff;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    cursor: pointer;
    transition:
        background-color 160ms ease,
        border-color 160ms ease;
}

body.woocommerce-page :where(
    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error,
    .woocommerce-warning,
    .wc-block-components-notice-banner
) :where(.button, button):hover {
    border-color: var(--wc-notice-primary-hover);
    background: var(--wc-notice-primary-hover);
    color: #fff;
}

/* Focus قابل مشاهده برای کیبورد */
body.woocommerce-page :where(
    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error,
    .woocommerce-warning,
    .wc-block-components-notice-banner
) :where(a, button):focus-visible {
    outline: 3px solid #1d70b8;
    outline-offset: 3px;
}

/* پیام موفقیت ثبت سفارش */
body.woocommerce-order-received .woocommerce-thankyou-order-received {
    margin: 0 0 22px;
    padding: 18px 20px;
    border: 1px solid #b9dfca;
    border-inline-start: 4px solid var(--wc-notice-success);
    border-radius: 8px;
    background: var(--wc-notice-success-bg);
    color: #125f3c;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.9;
}

/* پیام پرداخت ناموفق */
body.woocommerce-order-received .woocommerce-thankyou-order-failed {
    margin: 0 0 22px;
    padding: 18px 20px;
    border: 1px solid #efc2bd;
    border-inline-start: 4px solid var(--wc-notice-danger);
    border-radius: 8px;
    background: var(--wc-notice-danger-bg);
    color: #8f1c14;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.9;
}

/* موبایل */
@media (max-width: 600px) {
    body.woocommerce-page :where(
        .woocommerce-message,
        .woocommerce-info,
        .woocommerce-error,
        .woocommerce-warning,
        .wc-block-components-notice-banner
    ) {
        padding: 13px 14px;
        font-size: 13px;
        line-height: 1.85;
    }

    body.woocommerce-page :where(
        .woocommerce-message,
        .woocommerce-info,
        .woocommerce-error,
        .woocommerce-warning,
        .wc-block-components-notice-banner
    ) :where(.button, button) {
        display: flex;
        width: 100%;
        margin: 0 0 10px;
    }
}

/* کاهش انیمیشن برای دسترس‌پذیری */
@media (prefers-reduced-motion: reduce) {
    body.woocommerce-page :where(
        .woocommerce-message,
        .woocommerce-info,
        .woocommerce-error,
        .woocommerce-warning,
        .wc-block-components-notice-banner
    ) :where(.button, button) {
        transition: none;
    }
}

/* --------------------------------------------------------------------------
   10. Responsive layout
   -------------------------------------------------------------------------- */

@media (min-width: 680px) {
	body.wcps-ui-order-received ul.woocommerce-order-overview {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	body.wcps-ui .woocommerce-customer-details .woocommerce-columns,
	body.wcps-ui-account .woocommerce-Addresses,
	body.wcps-ui-account .woocommerce .u-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 960px) {
	body.wcps-ui-cart .cart-collaterals {
		grid-template-columns: minmax(0, 1fr) minmax(330px, 0.55fr);
		align-items: start;
	}

	body.wcps-ui-cart .cart-collaterals .cross-sells {
		grid-column: 1;
	}

	body.wcps-ui-cart .cart-collaterals .cart_totals {
		position: sticky;
		inset-block-start: 24px;
		grid-column: 2;
	}

	body.wcps-ui-checkout form.checkout {
		grid-template-areas:
			"customer review-title"
			"customer review";
		grid-template-columns: minmax(0, 1.25fr) minmax(340px, 0.75fr);
		grid-template-rows: auto 1fr;
		align-items: start;
	}

	body.wcps-ui-checkout form.checkout #customer_details {
		grid-area: customer;
	}

	body.wcps-ui-checkout form.checkout #order_review_heading {
		grid-area: review-title;
	}

	body.wcps-ui-checkout form.checkout #order_review {
		position: sticky;
		inset-block-start: 24px;
		grid-area: review;
	}
}

@media (max-width: 959px) {
	body.wcps-ui-cart .wc-block-cart .wc-block-components-main,
	body.wcps-ui-checkout .wc-block-checkout .wc-block-components-main {
		padding-inline-end: 0;
	}

	body.wcps-ui-account .woocommerce {
		flex-direction: column;
	}

	body.wcps-ui-account .woocommerce-MyAccount-navigation,
	body.wcps-ui-account .woocommerce-MyAccount-content {
		flex: 1 1 auto;
		width: 100%;
	}

	body.wcps-ui-account .woocommerce-MyAccount-navigation {
		overflow-x: auto;
		padding: 7px;
		scrollbar-width: thin;
	}

	body.wcps-ui-account .woocommerce-MyAccount-navigation ul {
		display: flex;
		gap: 5px;
		width: max-content;
		min-width: 100%;
	}

	body.wcps-ui-account .woocommerce-MyAccount-navigation li {
		flex: 0 0 auto;
		border: 0;
	}

	body.wcps-ui-account .woocommerce-MyAccount-navigation a {
		white-space: nowrap;
	}
}

@media (max-width: 767px) {
	body.wcps-ui .woocommerce,
	body.wcps-ui .wp-block-woocommerce-cart,
	body.wcps-ui .wp-block-woocommerce-checkout {
		width: min(100% - 24px, var(--wcps-content-width));
	}

	body.wcps-ui :where(.woocommerce-cart-form, .cart_totals, #customer_details, #order_review, .woocommerce-order-details, .woocommerce-customer-details, .woocommerce-MyAccount-content) {
		box-shadow: 0 8px 22px rgba(23, 32, 42, 0.06);
	}

	body.wcps-ui-cart .woocommerce-cart-form table.shop_table_responsive tr,
	body.wcps-ui-account table.shop_table_responsive tr {
		display: block;
		padding: 12px;
		border-bottom: 1px solid var(--wcps-line);
	}

	body.wcps-ui-cart .woocommerce-cart-form table.shop_table_responsive tr:last-child,
	body.wcps-ui-account table.shop_table_responsive tr:last-child {
		border-bottom: 0;
	}

	body.wcps-ui .woocommerce table.shop_table_responsive tr td {
		min-height: 48px;
		padding: 10px 6px;
		border-bottom: 1px dashed var(--wcps-line);
		background: transparent;
		text-align: end !important;
	}

	body.wcps-ui .woocommerce table.shop_table_responsive tr td:last-child {
		border-bottom: 0;
	}

	body.wcps-ui .woocommerce table.shop_table_responsive tr td::before {
		color: var(--wcps-muted);
		font-weight: 700;
		text-align: start;
	}

	body.wcps-ui-cart .woocommerce-cart-form .product-thumbnail {
		display: block;
		text-align: center !important;
	}

	body.wcps-ui-cart .woocommerce-cart-form .product-thumbnail::before {
		display: none;
	}

	body.wcps-ui-cart .woocommerce-cart-form .product-thumbnail img {
		width: 112px;
		height: 112px;
		margin-inline: auto;
	}

	body.wcps-ui-cart .woocommerce-cart-form td.actions {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	body.wcps-ui-cart .woocommerce-cart-form td.actions .coupon {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		width: 100%;
	}

	body.wcps-ui-cart .woocommerce-cart-form td.actions .coupon #coupon_code {
		width: 100%;
	}

	body.wcps-ui-cart .woocommerce-cart-form td.actions > .button {
		width: 100%;
	}

	body.wcps-ui-cart .wc-block-cart-items td {
		padding: 13px 9px;
	}

	body.wcps-ui-cart .wc-block-cart-item__image {
		padding-inline-end: 8px;
	}

	body.wcps-ui-checkout #customer_details,
	body.wcps-ui-checkout #order_review,
	body.wcps-ui-cart .cart_totals,
	body.wcps-ui-account .woocommerce-MyAccount-content,
	body.wcps-ui :where(.woocommerce-order-details, .woocommerce-customer-details) {
		padding: 16px;
	}

	body.wcps-ui-checkout :where(
		.wc-block-checkout__contact-fields,
		.wc-block-checkout__shipping-fields,
		.wc-block-checkout__billing-fields,
		.wc-block-checkout__shipping-method,
		.wc-block-checkout__payment-method,
		.wc-block-checkout__additional-information,
		.wc-block-checkout__order-notes,
		.wc-block-checkout__sidebar
	) {
		padding: 15px;
	}

	body.wcps-ui-order-received ul.woocommerce-order-overview li {
		padding: 13px;
	}

	body.wcps-ui-account .woocommerce-orders-table__cell-order-actions .button {
		width: auto;
	}
}

@media (max-width: 480px) {
	body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(
		button.button,
		a.button,
		input.button,
		#place_order,
		.wc-block-components-button:not(.wc-block-components-totals-coupon-link)
	) {
		width: 100%;
	}

	body.wcps-ui-cart .woocommerce-cart-form td.actions .coupon {
		grid-template-columns: 1fr;
	}

	body.wcps-ui-cart .wc-block-components-quantity-selector {
		max-width: 112px;
	}

	body.wcps-ui-order-received ul.woocommerce-order-overview {
		grid-template-columns: 1fr;
	}

	body.wcps-ui-account .woocommerce-form-login__rememberme {
		display: flex;
		margin: 0 0 10px;
	}
}

/* --------------------------------------------------------------------------
   11. Motion, high-contrast, and print preferences
   -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
	body.wcps-ui *,
	body.wcps-ui *::before,
	body.wcps-ui *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

@media (forced-colors: active) {
	body.wcps-ui :where(.woocommerce, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout) :where(button, .button, input, select, textarea, table, .wc-block-components-radio-control-accordion-option) {
		border: 1px solid CanvasText;
	}

	body.wcps-ui .woocommerce-MyAccount-navigation li.is-active a {
		outline: 2px solid CanvasText;
	}
}

@media print {
	body.wcps-ui :where(.woocommerce-MyAccount-navigation, .woocommerce-order-details .button, .woocommerce-thankyou-order-failed-actions, form, .wc-block-cart__submit) {
		display: none !important;
	}

	body.wcps-ui :where(.woocommerce-order-details, .woocommerce-customer-details, .woocommerce-MyAccount-content, table.shop_table) {
		border-color: #777 !important;
		box-shadow: none !important;
	}
}
