/* AGC Cart & Checkout UX 1.0.1 — cart and checkout only (body.agcux) */
body.agcux {
	--agcux-ink: #0a0a0a;
	--agcux-ink-2: #2b2b2b;
	--agcux-ink-3: #6b6b6b;
	--agcux-line: #e6e6e3;
	--agcux-soft: #f7f7f5;
	--agcux-yellow: #ffce2b;
	--agcux-yellow-deep: #f5b800;
	--agcux-yellow-soft: #fff7d6;
	--agcux-good: #1b8a4a;
	--agcux-r: 8px;
	--agcux-r-lg: 14px;
}

/* ---------- prices: dark and readable (theme paints every .amount yellow) ---------- */
body.agcux .woocommerce .amount,
body.agcux .woocommerce .amount bdi,
body.agcux .woocommerce .amount .woocommerce-Price-currencySymbol { color: var(--agcux-ink) !important; }
body.agcux .woocommerce tr.fee .amount,
body.agcux .woocommerce tr.fee .amount bdi,
body.agcux .woocommerce tr.fee .woocommerce-Price-currencySymbol { color: var(--agcux-good) !important; }
body.agcux .woocommerce .amount { white-space: nowrap; }

/* ---------- notices ---------- */
body.agcux .woocommerce-notices-wrapper .woocommerce-message,
body.agcux .woocommerce-notices-wrapper .woocommerce-info,
body.agcux .woocommerce-notices-wrapper .woocommerce-error {
	font-size: 14px; line-height: 1.45; padding: 12px 16px 12px 44px; margin: 0 0 10px;
	border: 1px solid var(--agcux-line); border-left: 4px solid var(--agcux-good); border-radius: var(--agcux-r);
	background: #fff; color: var(--agcux-ink-2);
}
body.agcux .woocommerce-notices-wrapper .woocommerce-error { border-left-color: #c0392b; }
body.woocommerce-cart.agcux .woocommerce-notices-wrapper .woocommerce-message .wc-forward { display: none !important; }
body.agcux .woocommerce-notices-wrapper .woocommerce-message .button {
	background: transparent !important; color: var(--agcux-ink) !important; border: 0 !important; padding: 0 !important;
	text-decoration: underline; font-weight: 600; text-transform: none; letter-spacing: 0; float: none; margin-left: 6px;
}

/* ---------- buttons ---------- */
body.agcux .woocommerce a.checkout-button,
body.agcux .woocommerce #place_order {
	display: flex !important; align-items: center; justify-content: center; width: 100%;
	min-height: 54px; padding: 14px 20px !important; margin: 0;
	background: var(--agcux-yellow) !important; color: var(--agcux-ink) !important;
	border: 0 !important; border-radius: var(--agcux-r) !important;
	font-size: 16px !important; font-weight: 700 !important; letter-spacing: 0 !important; text-transform: none !important;
	line-height: 1.2; text-align: center; box-shadow: 0 1px 0 rgba(0,0,0,.08);
	transition: background .15s;
}
body.agcux .woocommerce a.checkout-button:hover,
body.agcux .woocommerce #place_order:hover { background: var(--agcux-yellow-deep) !important; }
body.agcux .woocommerce a.checkout-button br { display: none; }
body.agcux .woocommerce a.checkout-button::after { content: "\2192"; margin-left: 10px; font-size: 18px; }

body.agcux .cart-pdf-button {
	background: #fff !important; color: var(--agcux-ink) !important;
	border: 1.5px solid var(--agcux-ink) !important; border-radius: var(--agcux-r) !important;
	font-size: 14px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important;
	padding: 11px 18px !important; line-height: 1.2 !important; gap: 8px; align-items: center;
}
body.agcux .cart-pdf-button br { display: none; }
body.agcux .cart-pdf-button::before { content: "\2193"; font-weight: 700; }
body.agcux .cart-pdf-button:hover { background: var(--agcux-soft) !important; }

/* ======================================================================
 * CART
 * ==================================================================== */
body.woocommerce-cart.agcux .woocommerce-cart-form { margin-bottom: 8px; }
body.woocommerce-cart.agcux .woocommerce-cart-form table.shop_table {
	border: 1px solid var(--agcux-line); border-radius: var(--agcux-r-lg); border-collapse: separate; border-spacing: 0;
	overflow: hidden; margin: 0;
}
body.woocommerce-cart.agcux .woocommerce-cart-form table.shop_table thead th {
	background: var(--agcux-soft); color: var(--agcux-ink-3);
	font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
	padding: 12px 16px; border: 0;
}
body.woocommerce-cart.agcux .woocommerce-cart-form table.shop_table td {
	padding: 16px; border-top: 1px solid var(--agcux-line); border-bottom: 0; vertical-align: middle; background: #fff;
}
body.woocommerce-cart.agcux .woocommerce-cart-form td.product-thumbnail img {
	width: 64px; height: 64px; object-fit: contain; background: var(--agcux-soft);
	border-radius: var(--agcux-r); padding: 4px; max-width: none;
}
body.woocommerce-cart.agcux .woocommerce-cart-form td.product-name a {
	color: var(--agcux-ink) !important; font-size: 15px; font-weight: 600; line-height: 1.4;
}
body.woocommerce-cart.agcux .woocommerce-cart-form td.product-name a:hover { text-decoration: underline; }
body.woocommerce-cart.agcux .woocommerce-cart-form td.product-price,
body.woocommerce-cart.agcux .woocommerce-cart-form td.product-subtotal { font-size: 15px; white-space: nowrap; }
body.woocommerce-cart.agcux .woocommerce-cart-form td.product-subtotal { font-weight: 700; text-align: right; }
body.woocommerce-cart.agcux .woocommerce-cart-form thead th.product-subtotal { text-align: right; }
body.woocommerce-cart.agcux .woocommerce-cart-form td.product-remove { width: 44px; padding-right: 0; }
body.woocommerce-cart.agcux .woocommerce-cart-form a.remove {
	display: inline-flex !important; align-items: center; justify-content: center;
	width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--agcux-line) !important;
	color: var(--agcux-ink-3) !important; background: #fff; font-size: 18px; line-height: 1; text-decoration: none;
}
body.woocommerce-cart.agcux .woocommerce-cart-form a.remove:hover { color: #c0392b !important; border-color: #c0392b !important; background: #fff; }

/* quantity stepper (theme's - / + anchors) */
body.agcux .woocommerce-cart-form .quantity {
	display: inline-flex !important; align-items: stretch; height: 40px;
	border: 1px solid #cfcfca; border-radius: var(--agcux-r); overflow: hidden; background: #fff;
}
body.agcux .woocommerce-cart-form .quantity br { display: none; }
body.agcux .woocommerce-cart-form .quantity .minus,
body.agcux .woocommerce-cart-form .quantity .plus {
	display: inline-flex !important; align-items: center; justify-content: center;
	width: 38px; height: 100% !important; border: 0 !important; margin: 0 !important; padding: 0 !important;
	background: #fff; color: var(--agcux-ink) !important; font-size: 18px; font-weight: 600; line-height: 1; text-decoration: none;
}
body.agcux .woocommerce-cart-form .quantity .minus:hover,
body.agcux .woocommerce-cart-form .quantity .plus:hover { background: var(--agcux-soft); }
body.agcux .woocommerce-cart-form .quantity input.qty {
	width: 48px !important; height: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 0 2px !important;
	border: 0 !important; border-left: 1px solid var(--agcux-line) !important; border-right: 1px solid var(--agcux-line) !important;
	border-radius: 0 !important; text-align: center; font-size: 15px !important; font-weight: 600; color: var(--agcux-ink);
	-moz-appearance: textfield; background: #fff;
}
body.agcux .woocommerce-cart-form .quantity input.qty::-webkit-outer-spin-button,
body.agcux .woocommerce-cart-form .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* the actions row: with JS the cart updates itself, so the button goes */
body.woocommerce-cart.agcux .woocommerce-cart-form td.actions { padding: 12px 16px; text-align: right; }
body.woocommerce-cart.agcux .woocommerce-cart-form td.actions > p { margin: 0; }
body.agcux-js.woocommerce-cart .woocommerce-cart-form td.actions { padding: 0 !important; border-top: 0 !important; height: 0; }
body.agcux-js.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
	position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important;
	overflow: hidden !important; clip: rect(0,0,0,0) !important; border: 0 !important; white-space: nowrap !important;
}
body.agcux-js.woocommerce-cart .woocommerce-cart-form td.actions .coupon { padding: 12px 16px; }

/* collaterals: "Complete your order" + quote download on the left, totals on the right */
body.woocommerce-cart.agcux .cart-collaterals {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, 440px); gap: 20px 40px; align-items: start;
	margin-top: 28px; width: 100%;
}
body.woocommerce-cart.agcux .cart-collaterals::before,
body.woocommerce-cart.agcux .cart-collaterals::after { content: none !important; display: none !important; }
body.woocommerce-cart.agcux .cart-collaterals > * { grid-column: 1; min-width: 0; margin: 0; float: none !important; width: auto !important; }
body.woocommerce-cart.agcux .cart-collaterals > .cart_totals { grid-column: 2; grid-row: 1 / span 6; }
body.woocommerce-cart.agcux .cart-collaterals > p,
body.woocommerce-cart.agcux .cart-collaterals > .cart-pdf-button { justify-self: start; }

/* shipment row label + text case (layout is in the flex-row block below) */
body.agcux .woocommerce tr.woocommerce-shipping-totals > th { padding-bottom: 2px !important; }
body.agcux .woocommerce .cart_totals th,
body.agcux .woocommerce .woocommerce-checkout-review-order-table th,
body.agcux .woocommerce ul#shipping_method label,
body.agcux .woocommerce-cart-form td { text-transform: none !important; letter-spacing: 0 !important; }

body.woocommerce-cart.agcux .cart_totals {
	border: 1px solid var(--agcux-line); border-radius: var(--agcux-r-lg); padding: 20px 22px 22px; background: #fff;
}
body.woocommerce-cart.agcux .cart_totals h2 {
	font-size: 18px !important; font-weight: 700; text-transform: none !important; letter-spacing: 0 !important;
	text-align: left !important; margin: 0 0 6px !important; padding: 0 !important; background: none !important; border: 0 !important;
	color: var(--agcux-ink);
}
body.woocommerce-cart.agcux .cart_totals table.shop_table { border: 0 !important; margin: 0 0 16px; }
body.woocommerce-cart.agcux .cart_totals table.shop_table th { font-weight: 500 !important; color: var(--agcux-ink-2); }
body.woocommerce-cart.agcux .cart_totals small.includes_tax,
body.woocommerce-cart.agcux .cart_totals .tax_label { display: block; font-size: 12px; font-weight: 400; color: var(--agcux-ink-3); }

/* shipping choices as tappable cards */
body.agcux ul#shipping_method { margin: 0; padding: 0; list-style: none; }
body.agcux ul#shipping_method li {
	position: relative; margin: 0 0 6px !important; padding: 9px 10px 9px 34px !important; text-indent: 0 !important;
	border: 1px solid var(--agcux-line); border-radius: var(--agcux-r); font-size: 13.5px; line-height: 1.4; background: #fff;
}
body.agcux ul#shipping_method li:has(input:checked) { border-color: var(--agcux-ink); box-shadow: inset 0 0 0 1px var(--agcux-ink); }
body.agcux ul#shipping_method li input { position: absolute; left: 11px; top: 11px; margin: 0 !important; accent-color: var(--agcux-ink); }
body.agcux ul#shipping_method li label {
	display: block; margin: 0; padding: 0 !important; text-indent: 0 !important; text-align: left !important;
	font-weight: 500; color: var(--agcux-ink); cursor: pointer;
}
body.agcux ul#shipping_method li { text-align: left !important; }
body.agcux .woocommerce tr.woocommerce-shipping-totals .woocommerce-shipping-destination,
body.agcux .woocommerce tr.woocommerce-shipping-totals .woocommerce-shipping-calculator { text-align: left !important; }
body.agcux ul#shipping_method li label .amount { font-weight: 700; }
body.woocommerce-cart.agcux .woocommerce-shipping-destination { font-size: 12.5px; color: var(--agcux-ink-3); margin: 6px 0 2px; }
body.woocommerce-cart.agcux .shipping-calculator-button { font-size: 12.5px; text-transform: none !important; letter-spacing: 0 !important; color: var(--agcux-ink) !important; }
body.woocommerce-cart.agcux .wc-proceed-to-checkout { padding: 0 !important; margin: 0; }
body.woocommerce-cart.agcux .wc-proceed-to-checkout > p { margin: 0; }

/* ---------- totals tables as flex rows (cart totals + checkout summary) ---------- */
body.agcux .woocommerce .cart_totals table.shop_table,
body.agcux .woocommerce .cart_totals table.shop_table tbody,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table thead,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table tbody,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table tfoot { display: block !important; width: 100% !important; }
body.agcux .woocommerce .cart_totals table.shop_table tr,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table tr {
	display: flex !important; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 6px 16px;
	padding: 12px 0; border-top: 1px solid var(--agcux-line); background: none !important;
}
body.agcux .woocommerce .cart_totals table.shop_table tr:first-child,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table thead tr { border-top: 0; }
body.agcux .woocommerce .cart_totals table.shop_table tr > *,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table tr > * {
	display: block !important; border: 0 !important; padding: 0 !important; width: auto !important; background: none !important;
	line-height: 1.45 !important; font-size: 14px;
}
body.agcux .woocommerce .cart_totals table.shop_table tr > th,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table tr > th,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table td.product-name { flex: 1 1 0; min-width: 0; text-align: left !important; }
body.agcux .woocommerce .cart_totals table.shop_table tr > td,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table td.product-total,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table th.product-total,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table tfoot td { flex: 0 1 auto; max-width: 62%; text-align: right !important; }
body.agcux .woocommerce .cart_totals table.shop_table tr > td::before,
body.agcux .woocommerce table.woocommerce-checkout-review-order-table tr > td::before { display: none !important; content: none !important; }
body.agcux .woocommerce tr.woocommerce-shipping-totals > th,
body.agcux .woocommerce tr.woocommerce-shipping-totals > td { flex: 1 1 100% !important; max-width: 100% !important; text-align: left !important; }
body.agcux .woocommerce tr.order-total > th,
body.agcux .woocommerce tr.order-total > td { font-size: 18px !important; font-weight: 700 !important; color: var(--agcux-ink); align-self: center; }
body.agcux .woocommerce tr.order-total .amount { font-size: 20px; }

/* ---------- "Complete your order" — compact (cart side column and checkout prompt) ---------- */
body.agcux .agcux-needs p:empty,
body.agcux .agcux-co-check p:empty,
body.agcux .agcux-needs .agc-fits-row > p,
body.agcux .agcux-co-check .agc-fits-row > p,
body.agcux .agcux-needs .agc-fits br,
body.agcux .agcux-co-check .agc-fits br { display: none !important; }

body.agcux .agcux-needs .agc-cart-check {
	margin: 0; padding: 18px 20px 8px; background: #fff;
	border: 1px solid var(--agcux-yellow-deep); border-radius: var(--agcux-r-lg);
	box-shadow: inset 4px 0 0 var(--agcux-yellow);
}
body.agcux .agcux-needs .agc-fits-head h2 {
	font-family: inherit; font-size: 18px !important; line-height: 1.3; font-weight: 700; margin: 0 0 4px !important;
	text-transform: none !important; letter-spacing: 0 !important; text-align: left !important;
	background: none !important; padding: 0 !important; border: 0 !important; color: var(--agcux-ink);
}
body.agcux .agcux-needs .agc-fits-lead { font-size: 13px; line-height: 1.5; color: var(--agcux-ink-3); margin: 0 0 6px !important; max-width: none; }
body.agcux .agcux-needs .agc-fits-group,
body.agcux .agcux-co-check .agc-fits-group {
	border: 0 !important; box-shadow: none !important; border-radius: 0; background: transparent;
	padding: 12px 0 4px; margin: 0; border-top: 1px solid var(--agcux-line) !important;
}
body.agcux .agcux-needs .agc-fits-head + .agc-fits-group { margin-top: 8px; }
body.agcux .agcux-needs .agc-fits-group-head,
body.agcux .agcux-co-check .agc-fits-group-head { margin-bottom: 2px; }
body.agcux .agcux-needs .agc-fits-group h3,
body.agcux .agcux-co-check .agc-fits-group h3 { font-size: 13.5px !important; line-height: 1.4; font-weight: 600; margin: 0 0 3px !important; gap: 8px; }
body.agcux .agcux-needs .agc-fits-pill,
body.agcux .agcux-co-check .agc-fits-pill { font-size: 10px; padding: 2px 8px; }
body.agcux .agcux-needs .agc-fits-note,
body.agcux .agcux-co-check .agc-fits-note { font-size: 12.5px; line-height: 1.45; color: var(--agcux-ink-3); }

body.agcux .agcux-needs .agc-fits-row.is-cart,
body.agcux .agcux-co-check .agc-fits-row.is-cart {
	display: grid; grid-template-columns: 52px minmax(0, 1fr) auto auto; grid-template-areas: "img main price act";
	gap: 4px 14px; align-items: center; padding: 10px 0; border-top: 0;
}
body.agcux .agcux-needs .agc-fits-row.is-cart + .agc-fits-row.is-cart,
body.agcux .agcux-co-check .agc-fits-row.is-cart + .agc-fits-row.is-cart { border-top: 1px dashed var(--agcux-line); }
body.agcux .agcux-needs .agc-fits-img,
body.agcux .agcux-co-check .agc-fits-img { grid-area: img; width: 52px; height: 52px; padding: 3px; }
body.agcux .agcux-needs .agc-fits-main,
body.agcux .agcux-co-check .agc-fits-main { grid-area: main; min-width: 0; }
body.agcux .agcux-needs .agc-fits-price,
body.agcux .agcux-co-check .agc-fits-price { grid-area: price; font-size: 14px; white-space: nowrap; text-align: right; }
body.agcux .agcux-needs .agc-fits-act,
body.agcux .agcux-co-check .agc-fits-act { grid-area: act; }
body.agcux .agcux-needs .agc-fits-name,
body.agcux .agcux-co-check .agc-fits-name { font-size: 13.5px; line-height: 1.35; }
body.agcux .agcux-needs .agc-fits-sub,
body.agcux .agcux-co-check .agc-fits-sub { margin-top: 3px; gap: 4px 8px; }
body.agcux .agcux-needs .agc-fits-tag,
body.agcux .agcux-co-check .agc-fits-tag { font-size: 11px; font-weight: 500; line-height: 1.4; padding: 1px 6px; }
body.agcux .agcux-needs .agc-cart-add,
body.agcux .agcux-co-check .agc-cart-add { padding: 9px 16px; font-size: 13px; border-radius: var(--agcux-r); }

/* ======================================================================
 * CHECKOUT
 * ==================================================================== */
body.woocommerce-checkout.agcux .agc-quote-fab,
body.woocommerce-checkout.agcux .agc-isearch-fab { display: none !important; }

/* trade login prompt */
body.woocommerce-checkout.agcux .woocommerce-form-login-toggle { margin: 0 0 22px; }
body.woocommerce-checkout.agcux .woocommerce-form-login-toggle .woocommerce-info {
	display: block; margin: 0; padding: 14px 18px 14px 46px !important; position: relative;
	background: var(--agcux-yellow-soft) !important; color: var(--agcux-ink) !important;
	border: 1px solid #f3dc8a !important; border-radius: var(--agcux-r) !important;
	font-size: 15px !important; line-height: 1.45; text-transform: none !important; letter-spacing: 0 !important; text-align: left !important;
}
body.woocommerce-checkout.agcux .woocommerce-form-login-toggle .woocommerce-info::before {
	content: "\2192" !important; position: absolute; left: 18px; top: 50%; transform: translateY(-50%);
	font-family: inherit !important; font-size: 18px; color: var(--agcux-ink) !important; margin: 0 !important;
}
body.woocommerce-checkout.agcux .woocommerce-form-login-toggle .showlogin {
	color: var(--agcux-ink) !important; font-weight: 700; text-decoration: underline; text-transform: none !important;
	font-size: inherit !important; letter-spacing: 0 !important;
}
body.woocommerce-checkout.agcux form.woocommerce-form-login {
	border: 1px solid var(--agcux-line) !important; border-radius: var(--agcux-r-lg); padding: 20px !important; margin: -10px 0 24px !important;
}

/* section headings */
body.woocommerce-checkout.agcux .woocommerce-billing-fields > h3,
body.woocommerce-checkout.agcux #order_review_heading,
body.woocommerce-checkout.agcux #ship-to-different-address {
	font-size: 17px !important; font-weight: 700 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--agcux-ink);
}
body.woocommerce-checkout.agcux #ship-to-different-address label { text-transform: none !important; letter-spacing: 0 !important; }
body.woocommerce-checkout.agcux #ship-to-different-address br { display: none; }

/* order summary */
body.woocommerce-checkout.agcux #order_review {
	border: 1px solid var(--agcux-line); border-radius: var(--agcux-r-lg); padding: 6px 20px 20px; background: #fff;
}
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table { border: 0 !important; margin: 0 0 14px; }
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table thead { background: none !important; }
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table thead tr > * {
	font-size: 12px !important; font-weight: 600; letter-spacing: .06em !important; text-transform: uppercase !important; color: var(--agcux-ink-3);
}
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table td.product-name { color: var(--agcux-ink); }
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table .product-quantity { font-weight: 700; white-space: nowrap; }
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table td.product-total,
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table tfoot td { white-space: nowrap; }
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table tfoot th { font-weight: 500 !important; color: var(--agcux-ink-2); }
body.woocommerce-checkout.agcux table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td { white-space: normal; }

/* factory-order / deposit note (agc-trade-checkout) — sentence case, readable */
body.woocommerce-checkout.agcux .agc-deposit-notice {
	display: block; margin: 0 0 16px !important; padding: 12px 14px !important;
	background: var(--agcux-yellow-soft) !important; color: var(--agcux-ink-2) !important;
	border: 1px solid #f3dc8a !important; border-radius: var(--agcux-r) !important;
	font-size: 13.5px !important; line-height: 1.5 !important; text-transform: none !important; letter-spacing: 0 !important; text-align: left !important;
}
body.woocommerce-checkout.agcux .agc-deposit-notice::before { display: none !important; }
body.woocommerce-checkout.agcux .agc-deposit-notice strong { color: var(--agcux-ink); }
body.woocommerce-checkout.agcux .agc-deposit-notice a { color: var(--agcux-ink) !important; font-weight: 700; text-decoration: underline; text-transform: none !important; letter-spacing: 0 !important; font-size: inherit !important; }

/* payment */
body.woocommerce-checkout.agcux #payment { background: none !important; border-radius: 0; }
body.woocommerce-checkout.agcux #payment ul.payment_methods { border: 0 !important; padding: 0 !important; margin: 0 0 14px !important; }
body.woocommerce-checkout.agcux #payment ul.payment_methods li.wc_payment_method {
	border: 1px solid var(--agcux-line); border-radius: var(--agcux-r); padding: 0 !important; margin: 0 0 8px !important; background: #fff !important;
}
body.woocommerce-checkout.agcux #payment ul.payment_methods li.wc_payment_method > label { padding-top: 13px !important; padding-bottom: 13px !important; }
body.woocommerce-checkout.agcux #payment ul.payment_methods li.wc_payment_method > label img { max-height: 24px; width: auto; }
body.woocommerce-checkout.agcux #payment ul.payment_methods li.wc_payment_method div.payment_box { margin: 0 12px 12px !important; width: auto !important; box-sizing: border-box; }
body.woocommerce-checkout.agcux #payment ul.payment_methods li.wc_payment_method:has(> input:checked) { border-color: var(--agcux-ink); box-shadow: inset 0 0 0 1px var(--agcux-ink); }
body.woocommerce-checkout.agcux #payment ul.payment_methods li > p:empty,
body.woocommerce-checkout.agcux #payment ul.payment_methods li label br { display: none; }
body.woocommerce-checkout.agcux #payment ul.payment_methods li label { font-size: 15px; font-weight: 600; color: var(--agcux-ink); cursor: pointer; }
body.woocommerce-checkout.agcux #payment div.payment_box {
	background: var(--agcux-soft) !important; color: var(--agcux-ink-2) !important; font-size: 13px; border-radius: var(--agcux-r); margin: 10px 0 0 !important; padding: 10px 12px !important;
}
body.woocommerce-checkout.agcux #payment div.payment_box::before { display: none !important; }
body.woocommerce-checkout.agcux #payment .place-order { padding: 0 !important; margin: 0 !important; }
body.woocommerce-checkout.agcux .woocommerce-privacy-policy-text { font-size: 12.5px; line-height: 1.5; color: var(--agcux-ink-3); }
body.woocommerce-checkout.agcux .woocommerce-privacy-policy-text p { margin: 0 0 14px; }

/* "Check before you pay" prompt */
body.agcux details.agcux-co-check {
	margin: 14px 0 4px; border: 1px solid #f3dc8a; border-radius: var(--agcux-r); background: var(--agcux-yellow-soft); overflow: hidden;
}
body.agcux details.agcux-co-check > summary {
	list-style: none; cursor: pointer; display: flex; align-items: center; gap: 10px;
	padding: 12px 14px; font-size: 14px; line-height: 1.4; color: var(--agcux-ink);
}
body.agcux details.agcux-co-check > summary::-webkit-details-marker { display: none; }
body.agcux .agcux-co-icon {
	flex: 0 0 22px; height: 22px; border-radius: 50%; background: var(--agcux-yellow); color: var(--agcux-ink);
	display: inline-grid; place-items: center; font-weight: 800; font-size: 13px;
}
body.agcux .agcux-co-text { flex: 1 1 auto; }
body.agcux .agcux-co-toggle { font-weight: 700; text-decoration: underline; white-space: nowrap; }
body.agcux details.agcux-co-check[open] .agcux-co-toggle { font-size: 0; }
body.agcux details.agcux-co-check[open] .agcux-co-toggle::after { content: "Hide"; font-size: 14px; }
body.agcux details.agcux-co-check .agc-cart-check { margin: 0; padding: 0 14px 6px; background: #fff; border-top: 1px solid #f3dc8a; }
body.agcux details.agcux-co-check .agc-fits-head { display: none; }
body.agcux details.agcux-co-check .agc-fits-head + .agc-fits-group { border-top: 0 !important; }

/* ======================================================================
 * PHONE / TABLET
 * ==================================================================== */
@media (max-width: 960px) {
	body.woocommerce-cart.agcux .cart-collaterals { grid-template-columns: minmax(0, 1fr); }
	body.woocommerce-cart.agcux .cart-collaterals > .cart_totals { grid-column: 1; grid-row: auto; }
}

@media (max-width: 768px) {
	/* cart lines as compact cards */
	body.woocommerce-cart.agcux .woocommerce-cart-form table.shop_table { border: 0; border-radius: 0; overflow: visible; }
	body.woocommerce-cart.agcux .woocommerce-cart-form table.shop_table thead { display: none; }
	body.woocommerce-cart.agcux .woocommerce-cart-form table.shop_table,
	body.woocommerce-cart.agcux .woocommerce-cart-form table.shop_table tbody { display: block; width: 100%; }
	body.woocommerce-cart.agcux .woocommerce-cart-form tr.cart_item {
		display: grid !important; grid-template-columns: 64px minmax(0, 1fr) auto;
		grid-template-areas: "img name rm" "img price price" "img qty sub";
		gap: 4px 12px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--agcux-line);
	}
	body.woocommerce-cart.agcux .woocommerce-cart-form tr.cart_item:first-child { border-top: 1px solid var(--agcux-line); }
	body.woocommerce-cart.agcux .woocommerce-cart-form tr.cart_item td {
		display: block !important; padding: 0 !important; border: 0 !important; background: none !important;
		text-align: left !important; width: auto !important; min-height: 0;
	}
	body.woocommerce-cart.agcux .woocommerce-cart-form tr.cart_item td::before { display: none !important; content: none !important; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-thumbnail { grid-area: img; align-self: start; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-thumbnail img { width: 64px; height: 64px; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-name { grid-area: name; align-self: start; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-name,
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-name a { font-size: 14px; line-height: 1.4 !important; padding-right: 4px !important; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-remove { grid-area: rm; align-self: start; justify-self: end; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-price { grid-area: price; font-size: 13px; color: var(--agcux-ink-3); }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-price .amount,
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-price .amount bdi,
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-price .woocommerce-Price-currencySymbol { color: var(--agcux-ink-3) !important; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-price::after { content: " each"; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-quantity { grid-area: qty; margin-top: 4px; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-subtotal { grid-area: sub; text-align: right !important; font-size: 16px; font-weight: 700; }
	body.woocommerce-cart.agcux .woocommerce-cart-form tr:not(.cart_item) { display: block; }
	body.woocommerce-cart.agcux .woocommerce-cart-form tr:not(.cart_item) td { display: block; border: 0 !important; }
	body.woocommerce-cart.agcux .woocommerce-cart-form td.product-thumbnail { display: block !important; }

	body.woocommerce-cart.agcux .cart_totals { padding: 16px; }
	body.woocommerce-cart.agcux .cart-pdf-button { width: 100%; justify-content: center; }

	/* "Complete your order" rows: picture | text, then price + Add */
	body.agcux .agcux-needs .agc-cart-check { padding: 14px 14px 6px; }
	body.agcux .agcux-needs .agc-fits-row.is-cart,
	body.agcux .agcux-co-check .agc-fits-row.is-cart {
		grid-template-columns: 48px minmax(0, 1fr) auto; grid-template-areas: "img main main" "img price act"; gap: 6px 12px;
	}
	body.agcux .agcux-needs .agc-fits-img,
	body.agcux .agcux-co-check .agc-fits-img { width: 48px; height: 48px; align-self: start; }
	body.agcux .agcux-needs .agc-fits-price,
	body.agcux .agcux-co-check .agc-fits-price { text-align: left; }

	/* keep the floating Quote / Search buttons off the last bit of the cart */
	body.woocommerce-cart.agcux .cart-collaterals { padding-bottom: 84px; }
}
