/* ─────────────────────────────────────────────────────────────────────────────
   Turn On — WooCommerce Cart + Checkout styles
   CSS prefix: .to-wc- (Turn On WooCommerce)
   Theme tokens: #0b2545 navy, #3cb371 green, #fbfaf7 bg,
                 #f4f2ec surface, #e8e4da border, #1a1a1a text, #6b6b6b muted
   ───────────────────────────────────────────────────────────────────────────── */

.woocommerce-cart, .woocommerce-checkout {
	font-family: 'Noto Sans', sans-serif;
	background: #fbfaf7;
	color: #1a1a1a;
}

/* ─────────────────────────────────────────────────────────────────────────────
   WC Block (modern Cart/Checkout block) overrides
   ───────────────────────────────────────────────────────────────────────────── */

/* Hide auto page title on cart/checkout pages */
.woocommerce-cart .wp-block-post-title,
.woocommerce-checkout .wp-block-post-title,
.woocommerce-cart h1.entry-title,
.woocommerce-checkout h1.entry-title,
.woocommerce-cart .wc-block-cart__main-title,
.woocommerce-cart > h1 {
	display: none !important;
}

/* WC Cart block — Proceed to checkout button text fix */
.wp-block-woocommerce-cart .wc-block-cart__submit-button,
.wp-block-woocommerce-cart .wc-block-cart-checkout-button,
.wp-block-woocommerce-cart .wc-block-components-checkout-button,
.wp-block-woocommerce-cart a.checkout-button,
.wc-block-cart__submit-container .wc-block-components-button {
	background: #3cb371 !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 999px !important;
	height: 56px !important;
	min-height: 56px !important;
	padding: 0 28px !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	transition: filter 0.15s ease, transform 0.15s ease !important;
}
.wp-block-woocommerce-cart .wc-block-cart__submit-button:hover,
.wp-block-woocommerce-cart .wc-block-cart-checkout-button:hover,
.wp-block-woocommerce-cart .wc-block-components-checkout-button:hover {
	filter: brightness(1.08);
	transform: translateY(-1px);
	color: #ffffff !important;
	text-decoration: none !important;
}

/* Ensure button label text is visible */
.wp-block-woocommerce-cart .wc-block-components-button__text,
.wp-block-woocommerce-checkout .wc-block-components-button__text {
	color: #ffffff !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	opacity: 1 !important;
}

/* WC Checkout block — Place order button */
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout button.wc-block-components-button {
	background: #0b2545 !important;
	color: #ffffff !important;
	border-radius: 999px !important;
	height: 56px !important;
	min-height: 56px !important;
	font-weight: 700 !important;
	font-size: 15px !important;
}

/* "Added to cart" notification — View cart button (fix hover text disappearing) */
.woocommerce-message,
.wc-block-store-notice {
	background: #ffffff !important;
	border: 1px solid #e8e4da !important;
	border-left: 3px solid #3cb371 !important;
	border-radius: 12px !important;
	padding: 14px 20px !important;
	color: #1a1a1a !important;
}
.woocommerce-message a.button,
.woocommerce-message .button.wc-forward,
.wc-block-store-notice a.button {
	background: #3cb371 !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 999px !important;
	padding: 10px 22px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: filter 0.15s ease !important;
}
.woocommerce-message a.button:hover,
.woocommerce-message .button.wc-forward:hover,
.wc-block-store-notice a.button:hover {
	background: #3cb371 !important;
	color: #ffffff !important;
	filter: brightness(1.08) !important;
	text-decoration: none !important;
}
.woocommerce-message a.button *,
.woocommerce-message .button.wc-forward *,
.wc-block-store-notice a.button * {
	color: #ffffff !important;
	opacity: 1 !important;
}

.woocommerce-cart main, .woocommerce-checkout main {
	max-width: 1440px; margin: 0 auto; padding: 30px 100px 60px;
	box-sizing: border-box;
}

@media (max-width: 1280px) {
	.woocommerce-cart main, .woocommerce-checkout main { padding: 30px 60px 60px; }
}
@media (max-width: 1100px) {
	.woocommerce-cart main, .woocommerce-checkout main { padding: 30px 32px 60px; }
}
@media (max-width: 740px) {
	.woocommerce-cart main, .woocommerce-checkout main { padding: 20px 20px 40px; }
}

/* WC notices */
.woocommerce-message, .woocommerce-error, .woocommerce-info {
	background: #ffffff;
	border: 1px solid #e8e4da;
	border-left: 3px solid #3cb371;
	border-radius: 12px;
	padding: 14px 20px;
	margin-bottom: 16px;
	font-size: 14px;
	color: #1a1a1a;
	list-style: none;
	display: flex; align-items: center;
}
.woocommerce-error { border-left-color: #dc2626; }
.woocommerce-info  { border-left-color: #0b2545; }
.woocommerce-message a, .woocommerce-error a, .woocommerce-info a {
	color: #3cb371; text-decoration: none; font-weight: 600; margin-left: 8px;
}

/* ═════════════════════════════════════════════════════════════════════════════
   CART PAGE
   ═════════════════════════════════════════════════════════════════════════════ */

.to-wc-cart-head {
	display: flex; align-items: flex-end; justify-content: space-between;
	margin-bottom: 24px; gap: 16px;
}
.to-wc-cart-head-left { display: flex; align-items: baseline; gap: 12px; }
.to-wc-cart-head h1 { font-size: 36px; font-weight: 800; line-height: 1; margin: 0; }
.to-wc-cart-count   { font-size: 14px; color: #6b6b6b; }
.to-wc-cart-head-right { display: flex; gap: 10px; }
.to-wc-cart-head-pill {
	display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px;
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 999px;
	font-size: 13px; font-weight: 600; color: #1a1a1a; text-decoration: none;
	transition: background 0.15s;
}
.to-wc-cart-head-pill:hover { background: #f4f2ec; }
@media (max-width: 700px) {
	.to-wc-cart-head { flex-direction: column; align-items: stretch; }
	.to-wc-cart-head h1 { font-size: 28px; }
	.to-wc-cart-head-right { flex-wrap: wrap; }
}

.to-wc-cart-layout {
	display: grid; grid-template-columns: 1fr 380px; gap: 24px; align-items: start;
}
@media (max-width: 1100px) { .to-wc-cart-layout { grid-template-columns: 1fr 340px; gap: 16px; } }
@media (max-width: 900px)  { .to-wc-cart-layout { grid-template-columns: 1fr; } }

.to-wc-cart-card {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 2px 6px -2px rgba(20,18,12,0.04), 0 8px 24px -12px rgba(20,18,12,0.06);
}

/* Cart table */
.woocommerce-cart-form table.shop_table {
	width: 100%; border-collapse: collapse; margin: 0; background: transparent;
}
.woocommerce-cart-form table.shop_table thead {
	background: #f4f2ec;
}
.woocommerce-cart-form table.shop_table thead th {
	font-size: 11px; font-weight: 700; text-transform: uppercase;
	color: #6b6b6b; padding: 14px 16px; text-align: left; letter-spacing: 0.05em;
}
.woocommerce-cart-form table.shop_table thead th.product-quantity,
.woocommerce-cart-form table.shop_table thead th.product-price,
.woocommerce-cart-form table.shop_table thead th.product-subtotal { text-align: center; }

.woocommerce-cart-form table.shop_table tbody tr.cart_item {
	border-top: 1px solid #f4f2ec;
}
.woocommerce-cart-form table.shop_table tbody tr.cart_item td {
	padding: 20px 16px; vertical-align: middle;
}

/* Product cell */
.woocommerce-cart-form td.product-thumbnail { width: 90px; }
.woocommerce-cart-form td.product-thumbnail img {
	width: 80px; height: 80px; object-fit: cover; border-radius: 12px;
	background: #f4f2ec;
}
.woocommerce-cart-form td.product-name a {
	color: #1a1a1a; font-size: 15px; font-weight: 700; text-decoration: none;
	line-height: 22px; display: block;
}
.woocommerce-cart-form td.product-name a:hover { color: #3cb371; }
.woocommerce-cart-form .variation { font-size: 12px; color: #6b6b6b; margin-top: 4px; }

/* Quantity stepper */
.woocommerce-cart-form td.product-quantity { text-align: center; }
.woocommerce-cart-form td.product-quantity .quantity {
	display: inline-flex; align-items: center;
	background: #f4f2ec; border-radius: 999px; padding: 4px;
}
.woocommerce-cart-form td.product-quantity .qty {
	width: 36px; height: 28px; padding: 0; border: none; background: transparent;
	font-family: 'Noto Sans', sans-serif; font-size: 14px; font-weight: 700;
	color: #1a1a1a; text-align: center; -moz-appearance: textfield;
}
.woocommerce-cart-form td.product-quantity .qty::-webkit-outer-spin-button,
.woocommerce-cart-form td.product-quantity .qty::-webkit-inner-spin-button {
	-webkit-appearance: none; margin: 0;
}
/* +/- buttons (added by our custom quantity-input template) */
.to-wc-qty-btn {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 50%;
	width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center;
	font-size: 16px; font-weight: 700; color: #1a1a1a; cursor: pointer;
	transition: background 0.15s;
}
.to-wc-qty-btn:hover { background: #f4f2ec; }

/* Price/subtotal columns */
.woocommerce-cart-form td.product-price,
.woocommerce-cart-form td.product-subtotal {
	text-align: center; font-size: 15px; font-weight: 700; color: #1a1a1a;
}
.woocommerce-cart-form td.product-price .price-each {
	display: block; font-size: 11px; font-weight: 400; color: #6b6b6b; margin-top: 2px;
}

/* Remove link */
.woocommerce-cart-form td.product-remove { width: 40px; text-align: center; }
.woocommerce-cart-form td.product-remove a.remove {
	display: inline-flex; align-items: center; justify-content: center;
	width: 28px; height: 28px; border-radius: 50%; background: #f4f2ec;
	color: #6b6b6b; font-size: 16px; text-decoration: none;
	transition: background 0.15s, color 0.15s;
}
.woocommerce-cart-form td.product-remove a.remove:hover { background: #fef2f2; color: #dc2626; }

/* In stock indicator */
.to-wc-stock-indicator {
	display: inline-flex; align-items: center; gap: 6px;
	font-size: 11px; font-weight: 600; color: #3cb371; margin-top: 6px;
}
.to-wc-stock-indicator::before {
	content: '✓'; width: 14px; height: 14px; border-radius: 50%;
	background: rgba(60,179,113,0.17); color: #3cb371;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 9px;
}

/* Update/apply coupon row */
.woocommerce-cart-form table.shop_table tfoot td { padding: 16px; }
.woocommerce-cart-form .actions { padding: 16px 20px; display: flex; gap: 12px; align-items: center; }
.woocommerce-cart-form .actions button {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 999px;
	height: 36px; padding: 0 18px; font-size: 12px; font-weight: 600; color: #1a1a1a;
	cursor: pointer;
}
.woocommerce-cart-form .actions button:hover { background: #f4f2ec; }

/* Cart footer row (Continue shopping · Clear cart · CO2) */
.to-wc-cart-footer {
	display: flex; align-items: center; justify-content: space-between; gap: 16px;
	padding: 18px 20px; background: #f4f2ec;
	font-size: 13px; color: #6b6b6b;
}
.to-wc-cart-footer-left { display: flex; gap: 16px; align-items: center; }
.to-wc-cart-footer a { color: #1a1a1a; font-weight: 600; text-decoration: none; }
.to-wc-cart-footer a:hover { color: #3cb371; }
.to-wc-co2 {
	display: inline-flex; align-items: center; gap: 8px;
	color: #3cb371; font-weight: 600;
}
@media (max-width: 700px) {
	.to-wc-cart-footer { flex-direction: column; align-items: flex-start; padding: 14px 16px; }
}

/* ═════════════════════════════════════════════════════════════════════════════
   ORDER SUMMARY CARD (shared between cart & checkout)
   ═════════════════════════════════════════════════════════════════════════════ */

.to-wc-summary {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 16px;
	padding: 24px; position: sticky; top: 16px;
	box-shadow: 0 2px 6px -2px rgba(20,18,12,0.04), 0 8px 24px -12px rgba(20,18,12,0.06);
}
.to-wc-summary-title {
	font-size: 20px; font-weight: 800; line-height: 1; margin: 0 0 16px;
	display: flex; align-items: center; justify-content: space-between;
}
.to-wc-summary-title-count { font-size: 12px; font-weight: 400; color: #6b6b6b; }

/* Cart totals (WC default markup wrapped in .to-wc-summary) */
.cart_totals table.shop_table {
	width: 100%; border-collapse: collapse; margin: 0 0 16px;
}
.cart_totals table.shop_table th,
.cart_totals table.shop_table td {
	padding: 10px 0; border: none; font-size: 14px;
}
.cart_totals table.shop_table th {
	font-weight: 500; color: #6b6b6b; text-align: left;
}
.cart_totals table.shop_table td { text-align: right; font-weight: 600; color: #1a1a1a; }
.cart_totals tr.to-wc-savings-row td { color: #3cb371; font-weight: 700; }
.cart_totals tr.cart-subtotal th, .cart_totals tr.cart-subtotal td { font-weight: 600; }
.cart_totals tr.shipping td { color: #3cb371; font-weight: 700; }
.cart_totals tr.order-total th, .cart_totals tr.order-total td {
	padding-top: 14px; border-top: 1px solid #e8e4da; font-size: 16px; font-weight: 800;
}
.cart_totals tr.order-total td { font-size: 22px; color: #1a1a1a; }
.cart_totals .includes_tax { display: block; font-size: 11px; color: #9a9a9a; font-weight: 400; }

/* Promo code row (replaces WC's coupon form) */
.to-wc-promo {
	display: flex; gap: 8px; margin: 16px 0;
}
.to-wc-promo input {
	flex: 1; height: 44px; padding: 0 14px;
	border: 1px solid #e8e4da; border-radius: 12px; background: #ffffff;
	font-family: 'Noto Sans', sans-serif; font-size: 13px; color: #1a1a1a;
}
.to-wc-promo input:focus { outline: none; border-color: #3cb371; box-shadow: 0 0 0 3px rgba(60,179,113,0.12); }
.to-wc-promo button {
	background: #162937; color: #ffffff; border: none; border-radius: 12px;
	height: 44px; padding: 0 22px; font-weight: 600; font-size: 13px; cursor: pointer;
	transition: filter 0.15s;
}
.to-wc-promo button:hover { filter: brightness(1.1); }

/* Proceed to checkout / Place order buttons */
.wc-proceed-to-checkout, .to-wc-summary .checkout-button, .place-order .button {
	display: block; width: 100%; background: #3cb371 !important;
	color: #ffffff !important; border: none !important;
	border-radius: 999px !important;
	height: 56px; line-height: 56px !important;
	padding: 0 24px !important; font-weight: 700 !important; font-size: 15px !important;
	text-align: center; text-decoration: none;
	box-shadow: 0 6px 16px -4px rgba(60,179,113,0.4);
	transition: filter 0.15s, transform 0.15s;
	cursor: pointer;
	margin: 0 !important;
}
.wc-proceed-to-checkout a.checkout-button { color: #ffffff !important; }
.wc-proceed-to-checkout:hover, .to-wc-summary .checkout-button:hover, .place-order .button:hover {
	filter: brightness(1.05); transform: translateY(-1px);
}

/* Trust items */
.to-wc-trust-list {
	list-style: none; margin: 20px 0 0; padding: 0;
	display: flex; flex-direction: column; gap: 8px;
}
.to-wc-trust-item {
	display: flex; align-items: center; gap: 8px;
	font-size: 12px; color: #6b6b6b;
}
.to-wc-trust-item::before {
	content: '✓'; color: #3cb371; font-weight: 700; flex-shrink: 0;
}

/* Payment badges row */
.to-wc-payment-badges {
	display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
	margin-top: 16px; padding-top: 16px; border-top: 1px solid #f4f2ec;
}
.to-wc-payment-badges-label { font-size: 11px; color: #9a9a9a; margin-right: 4px; }
.to-wc-payment-badge {
	display: inline-flex; align-items: center; justify-content: center;
	height: 22px; padding: 0 8px; border-radius: 4px;
	background: #f4f2ec; color: #1a1a1a;
	font-size: 9px; font-weight: 700; letter-spacing: 0.05em;
}

/* Empty cart state */
.to-wc-empty {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 16px;
	padding: 80px 24px; text-align: center;
	max-width: 600px; margin: 0 auto;
}
.to-wc-empty-icon { font-size: 64px; margin-bottom: 16px; opacity: 0.4; }
.to-wc-empty h2 { font-size: 24px; font-weight: 800; margin: 0 0 8px; color: #1a1a1a; }
.to-wc-empty p  { font-size: 14px; color: #6b6b6b; margin: 0 0 24px; }
.to-wc-empty .button {
	display: inline-block; background: #3cb371; color: #ffffff;
	height: 48px; line-height: 48px; padding: 0 28px;
	border-radius: 999px; font-weight: 600; text-decoration: none;
	transition: filter 0.15s;
}
.to-wc-empty .button:hover { filter: brightness(1.08); }

/* ═════════════════════════════════════════════════════════════════════════════
   CHECKOUT PAGE
   ═════════════════════════════════════════════════════════════════════════════ */

/* Top row: Continue shopping · Progress bar · Secure pill */
.to-wc-checkout-top {
	display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
	gap: 16px; margin-bottom: 32px;
}
.to-wc-continue-shopping {
	font-size: 13px; font-weight: 600; color: #6b6b6b; text-decoration: none;
}
.to-wc-continue-shopping:hover { color: #3cb371; }
.to-wc-secure-pill {
	justify-self: end;
	display: inline-flex; align-items: center; gap: 8px;
	padding: 8px 16px; border-radius: 999px;
	background: rgba(60,179,113,0.12); color: #3cb371;
	font-size: 12px; font-weight: 700;
}
.to-wc-secure-pill svg { display: block; }
@media (max-width: 900px) {
	.to-wc-checkout-top { grid-template-columns: 1fr; gap: 12px; }
	.to-wc-secure-pill { justify-self: start; }
}

/* Progress bar */
.to-wc-progress {
	display: flex; align-items: center; gap: 4px;
}
.to-wc-step {
	display: flex; align-items: center; gap: 8px;
	font-size: 13px; font-weight: 600; color: #6b6b6b;
}
.to-wc-step-circle {
	width: 24px; height: 24px; border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	background: #e8e4da; color: #6b6b6b; font-size: 12px; font-weight: 700;
	flex-shrink: 0;
}
.to-wc-step--done .to-wc-step-circle  { background: #3cb371; color: #ffffff; }
.to-wc-step--active .to-wc-step-circle { background: #0b2545; color: #ffffff; }
.to-wc-step--done .to-wc-step-label  { color: #1a1a1a; }
.to-wc-step--active .to-wc-step-label { color: #1a1a1a; }
.to-wc-step-line {
	display: inline-block; width: 30px; height: 2px;
	background: #e8e4da; margin: 0 4px;
}
.to-wc-step--done + .to-wc-step .to-wc-step-line,
.to-wc-step--done .to-wc-step-line { background: #3cb371; }
@media (max-width: 700px) {
	.to-wc-step-label { display: none; }
	.to-wc-step-line  { width: 16px; }
}

/* Checkout 2-column layout */
form.checkout {
	display: grid; grid-template-columns: 1fr 400px; gap: 24px; align-items: start;
}
@media (max-width: 1100px) { form.checkout { grid-template-columns: 1fr 360px; gap: 16px; } }
@media (max-width: 900px)  { form.checkout { grid-template-columns: 1fr; } }

#customer_details { display: contents; }

/* Numbered section cards */
.woocommerce-billing-fields, .woocommerce-shipping-fields,
.woocommerce-additional-fields, #order_review_heading + #order_review,
.woocommerce-checkout-payment {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 16px;
	padding: 28px;
	box-shadow: 0 2px 6px -2px rgba(20,18,12,0.04), 0 8px 24px -12px rgba(20,18,12,0.06);
	grid-column: 1;
}
@media (max-width: 700px) {
	.woocommerce-billing-fields, .woocommerce-shipping-fields,
	.woocommerce-additional-fields, .woocommerce-checkout-payment {
		padding: 20px;
	}
}

.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
	font-size: 18px; font-weight: 800; margin: 0 0 16px;
	display: flex; align-items: center; gap: 12px;
}
/* Numbered circle prefix for section titles (added via ::before) */
.woocommerce-billing-fields > h3::before     { content: '1'; }
.woocommerce-shipping-fields > h3::before    { content: '2'; }
.woocommerce-additional-fields > h3::before  { content: '3'; }
.woocommerce-checkout-payment > h3::before   { content: '4'; }
.woocommerce-billing-fields > h3::before,
.woocommerce-shipping-fields > h3::before,
.woocommerce-additional-fields > h3::before,
.woocommerce-checkout-payment > h3::before {
	width: 28px; height: 28px; border-radius: 50%;
	background: #3cb371; color: #ffffff;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 14px; font-weight: 700; flex-shrink: 0;
}

/* Form fields */
.woocommerce form .form-row {
	margin: 0 0 16px;
	display: flex; flex-direction: column;
}
.woocommerce form .form-row-first { float: none; width: calc(50% - 8px); display: inline-flex; vertical-align: top; }
.woocommerce form .form-row-last  { float: none; width: calc(50% - 8px); display: inline-flex; vertical-align: top; margin-left: 12px; }
.woocommerce form .form-row-wide  { width: 100%; }
.woocommerce form .form-row label {
	font-size: 11px; font-weight: 700; color: #6b6b6b;
	text-transform: capitalize; margin-bottom: 6px;
	letter-spacing: 0.02em;
}
.woocommerce form .form-row .required { color: #dc2626; text-decoration: none; }

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container .select2-selection--single {
	height: 48px !important;
	padding: 0 14px !important;
	border: 1px solid #e8e4da !important;
	border-radius: 12px !important;
	background: #ffffff !important;
	font-family: 'Noto Sans', sans-serif !important;
	font-size: 14px !important;
	color: #1a1a1a !important;
	box-shadow: none !important;
	width: 100% !important;
}
.woocommerce form .form-row textarea {
	height: auto !important; min-height: 100px;
	padding: 12px 14px !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	border-color: #3cb371 !important;
	box-shadow: 0 0 0 3px rgba(60,179,113,0.12) !important;
	outline: none !important;
}
.select2-container .select2-selection--single .select2-selection__rendered {
	line-height: 46px !important; padding: 0 !important; color: #1a1a1a;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 46px !important;
}
.select2-dropdown { border-color: #e8e4da; border-radius: 12px; }

/* Checkbox */
.woocommerce-form__label-for-checkbox {
	display: flex !important; align-items: center; gap: 10px;
	cursor: pointer; font-size: 13px; color: #3a3a3a;
}
.woocommerce-form__input-checkbox {
	width: 18px !important; height: 18px; accent-color: #3cb371;
	margin: 0 !important;
}

/* Shipping methods (radio list) */
#shipping_method, ul.woocommerce-shipping-methods {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-direction: column; gap: 10px;
}
#shipping_method li, ul.woocommerce-shipping-methods li {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 12px;
	padding: 14px 18px;
	display: flex; align-items: center; gap: 12px;
	cursor: pointer; transition: border-color 0.15s, background 0.15s;
}
#shipping_method li:has(input:checked),
ul.woocommerce-shipping-methods li:has(input:checked) {
	border-color: #3cb371; background: rgba(60,179,113,0.04);
}
#shipping_method input[type="radio"], ul.woocommerce-shipping-methods input[type="radio"] {
	accent-color: #3cb371; width: 18px; height: 18px;
}
#shipping_method label, ul.woocommerce-shipping-methods label {
	flex: 1; font-size: 14px; font-weight: 600; color: #1a1a1a; cursor: pointer;
}
#shipping_method label .amount, ul.woocommerce-shipping-methods label .amount {
	float: right; color: #3cb371; font-weight: 700;
}

/* Payment methods */
ul.wc_payment_methods {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-wrap: wrap; gap: 10px;
}
ul.wc_payment_methods > li.wc_payment_method {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 12px;
	padding: 14px 18px;
	flex: 1 1 calc(50% - 5px); min-width: 140px;
	transition: border-color 0.15s, background 0.15s;
}
ul.wc_payment_methods > li.wc_payment_method:has(input:checked) {
	border-color: #3cb371; background: rgba(60,179,113,0.04);
}
ul.wc_payment_methods label {
	display: flex; align-items: center; gap: 10px;
	font-size: 13px; font-weight: 600; color: #1a1a1a; cursor: pointer;
}
ul.wc_payment_methods input[type="radio"] {
	accent-color: #3cb371; width: 16px; height: 16px;
}
.payment_box {
	background: #f4f2ec !important; border-radius: 12px;
	padding: 14px 18px !important; margin-top: 10px !important;
	font-size: 13px; color: #3a3a3a;
}
.payment_box::before { display: none !important; }

/* Place order section */
#order_review {
	background: #ffffff; border: 1px solid #e8e4da; border-radius: 16px;
	padding: 24px; grid-column: 2; grid-row: span 4;
	position: sticky; top: 16px; align-self: start;
	box-shadow: 0 2px 6px -2px rgba(20,18,12,0.04), 0 8px 24px -12px rgba(20,18,12,0.06);
}
@media (max-width: 900px) {
	#order_review { grid-column: 1; grid-row: auto; position: static; }
}
#order_review_heading {
	font-size: 20px; font-weight: 800; margin: 0; padding: 0 0 12px;
	grid-column: 2;
}
@media (max-width: 900px) { #order_review_heading { grid-column: 1; } }

#order_review table.shop_table thead { display: none; }
#order_review table.shop_table { width: 100%; border-collapse: collapse; }
#order_review table.shop_table tbody tr.cart_item { border-bottom: 1px solid #f4f2ec; }
#order_review table.shop_table tbody tr.cart_item td { padding: 12px 0; font-size: 13px; }
#order_review table.shop_table tbody td.product-name { color: #1a1a1a; font-weight: 600; }
#order_review table.shop_table tbody td.product-total { text-align: right; font-weight: 700; }
#order_review table.shop_table tfoot th { font-weight: 500; color: #6b6b6b; padding: 10px 0; font-size: 14px; }
#order_review table.shop_table tfoot td { text-align: right; font-weight: 600; color: #1a1a1a; padding: 10px 0; font-size: 14px; }
#order_review tr.order-total th, #order_review tr.order-total td {
	padding-top: 14px; border-top: 1px solid #e8e4da; font-size: 16px; font-weight: 800;
}
#order_review tr.order-total td { font-size: 22px; }

.place-order { padding: 16px 0 0; }

/* Login link top of checkout */
.woocommerce-form-login-toggle {
	margin: 0 0 16px;
	padding: 14px 18px; background: #f4f2ec; border-radius: 12px;
	font-size: 13px; color: #3a3a3a;
}
.woocommerce-form-login-toggle a { color: #3cb371; font-weight: 600; text-decoration: none; }
