/*
 * Minach Academy F — Classic Checkout
 * 僅重塑 WooCommerce 傳統結帳外觀；不覆寫 gateway markup 或送單流程。
 */

body.minach-checkout {
	--checkout-bg: #fff8f0;
	--checkout-surface: #fffdf9;
	--checkout-soft: #fcebd8;
	--checkout-accent: #e8674f;
	--checkout-accent-dark: #b74431;
	--checkout-ink: #3e2723;
	--checkout-muted: #75645f;
	--checkout-gold: #d4a76a;
	--checkout-line: rgba(94, 65, 55, .13);
	--checkout-shadow: 0 24px 70px rgba(92, 59, 47, .11);
	color: var(--checkout-ink);
	background:
		radial-gradient(circle at 8% 13%, color-mix(in srgb, var(--checkout-accent) 13%, transparent) 0 9%, transparent 25%),
		radial-gradient(circle at 96% 32%, color-mix(in srgb, var(--checkout-gold) 15%, transparent) 0 8%, transparent 26%),
		var(--checkout-bg);
}

body.minach-checkout--dating {
	--checkout-bg: #fff8f3; --checkout-surface: #fffefd; --checkout-soft: #fbe9e4;
	--checkout-accent: #e9674b; --checkout-accent-dark: #b94531; --checkout-ink: #342725;
	--checkout-muted: #74635f; --checkout-gold: #d6a15d;
}
body.minach-checkout--sales {
	--checkout-bg: #f3f5f7; --checkout-surface: #fff; --checkout-soft: #e7ebf0;
	--checkout-accent: #c69a49; --checkout-accent-dark: #72521d; --checkout-ink: #17202c;
	--checkout-muted: #606b77; --checkout-gold: #c69a49;
}
body.minach-checkout--career {
	--checkout-bg: #f6f2e9; --checkout-surface: #fffefa; --checkout-soft: #e7ece8;
	--checkout-accent: #7f9aad; --checkout-accent-dark: #415b73; --checkout-ink: #2c3e50;
	--checkout-muted: #66716f; --checkout-gold: #d4a853;
}
body.minach-checkout--negotiation {
	--checkout-bg: #f1f5f8; --checkout-surface: #fff; --checkout-soft: #e1eaf0;
	--checkout-accent: #5d91b6; --checkout-accent-dark: #244a69; --checkout-ink: #172a3a;
	--checkout-muted: #60717e; --checkout-gold: #bf8650;
}
body.minach-checkout--neutral {
	--checkout-bg: #fbf8f3; --checkout-surface: #fff; --checkout-soft: #f3ede4;
	--checkout-accent: #bd6f72; --checkout-accent-dark: #875053; --checkout-ink: #27231f;
	--checkout-muted: #6f6861; --checkout-gold: #bd7b16;
}

/* 頁首沿用全站深青品牌列與正式 LOGO（定案第 38 條：結帳頁只換 LOGO，右邊只留「安全結帳」）。 */
body.minach-checkout .minach-header__in { width: min(1280px, calc(100% - 48px)); }
.minach-checkout-secure {
	display: inline-flex; align-items: center; gap: 8px; padding: 9px 15px;
	border: 1px solid rgba(250,245,234,.3); border-radius: 999px;
	color: #faf5ea; background: rgba(250,245,234,.1); font-size: 13px; font-weight: 700;
}
.minach-checkout-secure > span {
	display: grid; width: 22px; height: 22px; place-items: center; border-radius: 50%;
	color: #012b32; background: #e2a93b; font-size: 12px;
}

body.minach-checkout main.minach-empty {
	width: min(1280px, calc(100% - 48px)); padding: 54px 0 96px;
}
body.minach-checkout main.minach-empty > article > .entry-title,
body.minach-checkout main.minach-empty > article > h1:first-child { display: none; }
body.minach-checkout .woocommerce { width: 100%; }

.minach-checkout-intro {
	position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1fr) auto;
	align-items: end; gap: 36px; margin: 0 0 26px; padding: 38px 42px;
	border: 1px solid color-mix(in srgb, var(--checkout-accent) 18%, var(--checkout-line));
	border-radius: 28px; background:
		linear-gradient(125deg, color-mix(in srgb, var(--checkout-surface) 94%, transparent), color-mix(in srgb, var(--checkout-soft) 78%, white));
	box-shadow: var(--checkout-shadow);
}
.minach-checkout-intro::after {
	content: ""; position: absolute; top: -95px; right: 12%; width: 250px; height: 250px;
	border: 46px solid color-mix(in srgb, var(--checkout-accent) 8%, transparent);
	border-radius: 50%; pointer-events: none;
}
.minach-checkout-intro__copy { position: relative; z-index: 1; max-width: 720px; }
.minach-checkout-intro__eyebrow {
	margin: 0 0 10px !important; color: var(--checkout-accent-dark); font-size: 11px !important;
	font-weight: 800; letter-spacing: .16em;
}
.minach-checkout-intro h1 {
	margin: 0 0 12px; color: var(--checkout-ink); font-size: clamp(30px, 3.25vw, 46px);
	font-weight: 800; line-height: 1.28; letter-spacing: -.025em;
}
.minach-checkout-intro__copy > p:last-of-type {
	max-width: 650px; margin: 0; color: var(--checkout-muted); font-size: 16px; line-height: 1.8;
}
.minach-checkout-intro__trust {
	position: relative; z-index: 1; display: grid; gap: 8px; min-width: 210px;
	color: var(--checkout-muted); font-size: 12px; font-weight: 700;
}
.minach-checkout-intro__trust span::before {
	content: "✓"; display: inline-grid; width: 20px; height: 20px; margin-right: 8px; place-items: center;
	border-radius: 50%; color: #fff; background: var(--checkout-accent-dark); font-size: 10px;
}

body.minach-checkout .woocommerce-notices-wrapper,
body.minach-checkout .woocommerce-form-login-toggle,
body.minach-checkout .woocommerce-form-coupon-toggle,
body.minach-checkout form.woocommerce-form-login,
body.minach-checkout form.checkout_coupon { margin: 0 0 14px; }
body.minach-checkout .woocommerce-message,
body.minach-checkout .woocommerce-info,
body.minach-checkout .woocommerce-error {
	margin: 0 0 14px !important; padding: 15px 18px 15px 52px !important;
	border: 1px solid var(--checkout-line) !important; border-radius: 15px;
	color: var(--checkout-muted); background: rgba(255,255,255,.76); box-shadow: none;
}
body.minach-checkout .woocommerce-info { border-top: 1px solid var(--checkout-line) !important; }
body.minach-checkout .woocommerce-info::before,
body.minach-checkout .woocommerce-message::before { color: var(--checkout-accent-dark); }
body.minach-checkout .woocommerce-info a,
body.minach-checkout .woocommerce-message a { color: var(--checkout-accent-dark); font-weight: 800; }

body.minach-checkout form.woocommerce-checkout {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(390px, 430px);
	gap: 34px; align-items: start; margin-top: 30px;
}
body.minach-checkout form.woocommerce-checkout > .woocommerce-NoticeGroup-checkout { grid-column: 1 / -1; }
body.minach-checkout #customer_details {
	grid-column: 1; grid-row: 1; padding: 34px; border: 1px solid var(--checkout-line); border-radius: 24px;
	background: color-mix(in srgb, var(--checkout-surface) 94%, transparent); box-shadow: 0 18px 50px rgba(75,51,42,.07);
}
body.minach-checkout #customer_details .col-1,
body.minach-checkout #customer_details .col-2 { float: none; width: 100%; }
body.minach-checkout #customer_details .col-2:empty { display: none; }
body.minach-checkout #customer_details h3,
body.minach-checkout #order_review_heading,
.minach-checkout-payment-stage > h3 {
	display: flex; align-items: center; gap: 12px; margin: 0 0 25px;
	color: var(--checkout-ink); font-size: 24px; line-height: 1.4;
}
.minach-checkout-step {
	display: inline-grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center;
	border-radius: 12px; color: #fff; background: var(--checkout-accent-dark); font-size: 12px; letter-spacing: .06em;
}
body.minach-checkout .woocommerce-billing-fields__field-wrapper {
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px;
}
body.minach-checkout .form-row { float: none; width: 100%; margin: 0; padding: 0; }
body.minach-checkout .form-row-wide { grid-column: 1 / -1; }
body.minach-checkout .form-row label {
	display: block; margin: 0 0 7px; color: var(--checkout-ink); font-size: 13px; font-weight: 800;
}
body.minach-checkout .form-row .required { color: var(--checkout-accent-dark); }
body.minach-checkout .input-text,
body.minach-checkout select,
body.minach-checkout .select2-selection {
	min-height: 52px; padding: 0 15px !important; border: 1px solid var(--checkout-line) !important;
	border-radius: 13px !important; outline: 0; color: var(--checkout-ink); background: #fff !important;
	font-size: 15px;
}
body.minach-checkout .input-text:focus,
body.minach-checkout select:focus {
	border-color: var(--checkout-accent) !important;
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--checkout-accent) 13%, transparent);
}

.minach-checkout-summary {
	position: sticky; top: 100px; grid-column: 2; grid-row: 1 / span 2; overflow: hidden;
	border: 1px solid var(--checkout-line); border-radius: 24px; background: var(--checkout-surface);
	box-shadow: var(--checkout-shadow);
}
.minach-checkout-summary::before {
	content: ""; display: block; height: 6px;
	background: linear-gradient(90deg, var(--checkout-accent-dark), var(--checkout-accent), var(--checkout-gold));
}
body.minach-checkout .minach-checkout-summary #order_review_heading { padding: 25px 28px 0; }
body.minach-checkout .minach-checkout-summary #order_review { width: 100%; }
body.minach-checkout table.shop_table {
	margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent;
}
body.minach-checkout table.shop_table th,
body.minach-checkout table.shop_table td {
	padding: 15px 28px !important; border-color: var(--checkout-line) !important; color: var(--checkout-muted);
	font-size: 13px; line-height: 1.6;
}
body.minach-checkout table.shop_table thead { display: none; }
body.minach-checkout table.shop_table.minach-checkout-table--products-extracted tbody { display: none; }
body.minach-checkout .minach-checkout-summary-products + table.shop_table tbody { display: none; }
body.minach-checkout table.shop_table td.product-name { padding-top: 0 !important; }
body.minach-checkout table.shop_table tbody { display: block; width: 100%; }
body.minach-checkout table.shop_table tbody tr.cart_item { display: block; width: 100%; }
body.minach-checkout table.shop_table tbody tr.cart_item td.product-name { display: block; width: 100%; }
body.minach-checkout table.shop_table tbody tr.cart_item td.product-total { display: none; }
body.minach-checkout table.shop_table .product-quantity { display: none; }
body.minach-checkout table.shop_table tfoot th { color: var(--checkout-ink); font-weight: 800; }
body.minach-checkout table.shop_table .order-total th,
body.minach-checkout table.shop_table .order-total td { padding-top: 19px !important; padding-bottom: 19px !important; }
body.minach-checkout table.shop_table .order-total strong,
body.minach-checkout table.shop_table .order-total .amount {
	color: var(--checkout-ink); font-size: 26px; font-weight: 900;
}

.minach-checkout-payment-stage {
	grid-column: 1; grid-row: 2; padding: 34px; border: 1px solid var(--checkout-line);
	border-radius: 24px; background: color-mix(in srgb, var(--checkout-surface) 94%, transparent);
	box-shadow: 0 18px 50px rgba(75,51,42,.07);
}
.minach-checkout-product { display: grid; grid-template-columns: 92px minmax(0,1fr); gap: 14px; align-items: center; }
.minach-checkout-summary-products { display: grid; gap: 14px; padding: 0 28px 20px; border-bottom: 1px solid var(--checkout-line); }
.minach-checkout-product__image {
	width: 92px !important; height: 72px !important; object-fit: cover; border-radius: 13px;
	box-shadow: 0 8px 22px rgba(62,39,35,.12);
}
.minach-checkout-product__copy { display: grid; gap: 4px; }
.minach-checkout-product__copy small {
	color: var(--checkout-accent-dark); font-size: 10px; font-weight: 800; letter-spacing: .08em;
}
.minach-checkout-product__copy strong { color: var(--checkout-ink); font-size: 14px; line-height: 1.55; }
.minach-checkout-product__copy span { color: var(--checkout-muted); font-size: 10px; }

body.minach-checkout #payment {
	border-radius: 18px !important; background: color-mix(in srgb, var(--checkout-soft) 44%, white) !important;
}
body.minach-checkout #payment ul.payment_methods {
	padding: 22px 28px 12px !important; border-color: var(--checkout-line) !important;
}
body.minach-checkout #payment ul.payment_methods > li {
	margin: 0 0 9px; padding: 12px 13px; border: 1px solid var(--checkout-line);
	border-radius: 13px; background: rgba(255,255,255,.78);
}
body.minach-checkout #payment ul.payment_methods > li:has(input:checked) {
	border-color: color-mix(in srgb, var(--checkout-accent) 58%, var(--checkout-line));
	background: #fff; box-shadow: 0 0 0 3px color-mix(in srgb, var(--checkout-accent) 9%, transparent);
}
body.minach-checkout #payment ul.payment_methods label {
	color: var(--checkout-ink); font-size: 13px; font-weight: 800;
}
body.minach-checkout #payment ul.payment_methods img { max-height: 22px; width: auto; margin-left: 7px; }
body.minach-checkout #payment div.payment_box {
	margin: 11px 0 0 !important; padding: 12px 14px !important; border-radius: 10px;
	color: var(--checkout-muted); background: var(--checkout-soft) !important; font-size: 12px;
}
body.minach-checkout #payment div.payment_box::before { display: none; }
body.minach-checkout #payment .place-order { padding: 15px 28px 28px !important; }
body.minach-checkout #payment .woocommerce-privacy-policy-text {
	margin-bottom: 14px; color: var(--checkout-muted); font-size: 11px; line-height: 1.65;
}
body.minach-checkout #place_order {
	float: none; width: 100%; min-height: 58px; margin: 0; border: 0; border-radius: 999px;
	color: #fff !important; background: linear-gradient(135deg, var(--checkout-accent), var(--checkout-accent-dark)) !important;
	font-size: 16px !important; font-weight: 900 !important; letter-spacing: .02em;
	box-shadow: 0 14px 30px color-mix(in srgb, var(--checkout-accent) 30%, transparent);
}
body.minach-checkout #place_order:hover { transform: translateY(-1px); filter: brightness(.96); }

.minach-checkout-assurance {
	margin-top: 16px; padding: 16px; border: 1px solid var(--checkout-line); border-radius: 14px;
	color: var(--checkout-muted); background: rgba(255,255,255,.68); font-size: 11px;
}
.minach-checkout-assurance strong { display: block; margin-bottom: 8px; color: var(--checkout-ink); font-size: 13px; }
.minach-checkout-assurance > div { display: flex; flex-wrap: wrap; gap: 6px; }
.minach-checkout-assurance span {
	padding: 5px 8px; border-radius: 999px; color: var(--checkout-accent-dark); background: var(--checkout-soft); font-weight: 800;
}
.minach-checkout-assurance small { display: block; margin-top: 9px; }

body.minach-checkout .minach-footer { margin-top: 0; }

@media (max-width: 900px) {
	body.minach-checkout .minach-header__in,
	body.minach-checkout main.minach-empty { width: min(100% - 28px, 720px); }
	body.minach-checkout main.minach-empty { padding: 28px 0 64px; }
	.minach-checkout-intro { grid-template-columns: 1fr; gap: 22px; padding: 30px; }
	.minach-checkout-intro__trust { grid-template-columns: repeat(3, 1fr); }
	body.minach-checkout form.woocommerce-checkout { grid-template-columns: 1fr; gap: 22px; }
	body.minach-checkout #customer_details,
	.minach-checkout-summary,
	.minach-checkout-payment-stage { grid-column: 1; grid-row: auto; }
	body.minach-checkout #customer_details { order: 1; }
	.minach-checkout-summary { position: static; order: 2; }
	.minach-checkout-payment-stage { order: 3; }
}

@media (max-width: 600px) {
	.minach-checkout-secure { padding: 7px 10px; font-size: 11px; }
	.minach-checkout-secure > span { width: 18px; height: 18px; }
	.minach-checkout-intro { margin-bottom: 18px; padding: 24px 21px; border-radius: 21px; }
	.minach-checkout-intro h1 { font-size: 28px; }
	.minach-checkout-intro__copy > p:last-of-type { font-size: 14px; }
	.minach-checkout-intro__trust { grid-template-columns: 1fr; gap: 6px; }
	body.minach-checkout .woocommerce-message,
	body.minach-checkout .woocommerce-info,
	body.minach-checkout .woocommerce-error { padding: 13px 14px 13px 43px !important; font-size: 12px; }
	body.minach-checkout form.woocommerce-checkout { margin-top: 20px; }
	body.minach-checkout #customer_details { padding: 24px 20px; border-radius: 20px; }
	body.minach-checkout #customer_details h3,
	body.minach-checkout #order_review_heading,
	.minach-checkout-payment-stage > h3 { font-size: 21px; }
	body.minach-checkout .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; gap: 15px; }
	body.minach-checkout .form-row-wide { grid-column: auto; }
	.minach-checkout-summary { border-radius: 20px; }
	.minach-checkout-payment-stage { padding: 24px 20px; border-radius: 20px; }
	body.minach-checkout .minach-checkout-summary #order_review_heading { padding: 23px 20px 0; }
	body.minach-checkout table.shop_table th,
	body.minach-checkout table.shop_table td { padding-left: 20px !important; padding-right: 20px !important; }
	.minach-checkout-product { grid-template-columns: 80px minmax(0,1fr); }
	.minach-checkout-summary-products { padding: 0 20px 18px; }
	.minach-checkout-product__image { width: 80px !important; height: 64px !important; }
	body.minach-checkout #payment ul.payment_methods { padding: 19px 20px 10px !important; }
	body.minach-checkout #payment .place-order { padding: 13px 20px 23px !important; }
}

/* 0.9.0 — 女性魅力視覺升級與桌機獨立字級 */
body.minach-checkout--feminine-charm {
	background:
		radial-gradient(circle at 4% 12%, rgba(255,111,97,.22) 0 7%, transparent 23%),
		radial-gradient(circle at 96% 28%, rgba(212,167,106,.24) 0 8%, transparent 25%),
		linear-gradient(135deg, #fff4ec 0%, #fffaf5 44%, #fce8dd 100%);
}
body.minach-checkout--feminine-charm .woocommerce-message,
body.minach-checkout--feminine-charm .woocommerce-info,
body.minach-checkout--feminine-charm form.woocommerce-form-login,
body.minach-checkout--feminine-charm form.checkout_coupon {
	background: linear-gradient(110deg, rgba(255,250,246,.96), rgba(252,235,216,.83));
}
body.minach-checkout--feminine-charm #customer_details {
	position: relative; overflow: hidden;
	border-color: rgba(232,103,79,.19);
	background: linear-gradient(145deg, #fffdfa 0%, #fff5ed 64%, #fce9dc 100%);
}
body.minach-checkout--feminine-charm #customer_details::before,
body.minach-checkout--feminine-charm .minach-checkout-payment-stage::before {
	content: ""; position: absolute; inset: 0 0 auto; height: 7px;
	background: linear-gradient(90deg, var(--checkout-accent-dark), var(--checkout-accent), var(--checkout-gold));
}
body.minach-checkout--feminine-charm .minach-checkout-payment-stage {
	position: relative; overflow: hidden;
	border-color: rgba(232,103,79,.2);
	background: linear-gradient(145deg, #fff9f4 0%, #fce9dc 100%);
}
body.minach-checkout--feminine-charm .minach-checkout-summary {
	border-color: rgba(232,103,79,.22);
	background: linear-gradient(180deg, #fffdfa 0%, #fff5ed 100%);
}
body.minach-checkout--feminine-charm #payment {
	border: 1px solid rgba(232,103,79,.12);
	background: linear-gradient(145deg, rgba(255,255,255,.72), rgba(252,235,216,.83)) !important;
}
body.minach-checkout--feminine-charm #payment ul.payment_methods > li {
	border-color: rgba(183,68,49,.16);
	background: rgba(255,253,249,.9);
}

.minach-checkout-intro__visual { display: none; }

@media (min-width: 901px) {
	body.minach-checkout main.minach-empty { padding-top: 48px; }
	.minach-checkout-intro {
		grid-template-columns: minmax(0, 1fr) minmax(360px, 420px); align-items: stretch;
		gap: 0; min-height: 320px; padding: 0;
		background: linear-gradient(125deg, rgba(255,253,249,.98), rgba(252,235,216,.94));
	}
	.minach-checkout-intro__copy {
		display: flex; justify-content: center; flex-direction: column; max-width: none; padding: 46px 48px;
	}
	.minach-checkout-intro__copy > p:last-of-type { max-width: 690px; font-size: 17px; line-height: 1.85; }
	.minach-checkout-intro__trust {
		display: flex; flex-wrap: wrap; gap: 9px 18px; min-width: 0; margin-top: 23px;
		font-size: 13px;
	}
	.minach-checkout-intro__visual {
		position: relative; display: block; min-height: 320px; overflow: hidden;
		border-left: 1px solid rgba(232,103,79,.15); background: var(--checkout-soft);
	}
	.minach-checkout-intro__visual::after {
		content: ""; position: absolute; inset: 0;
		background: linear-gradient(180deg, transparent 40%, rgba(62,39,35,.74) 100%);
	}
	.minach-checkout-intro__visual img { width: 100%; height: 100%; object-fit: cover; }
	.minach-checkout-intro__visual > div {
		position: absolute; z-index: 2; right: 25px; bottom: 23px; left: 25px; display: grid; gap: 4px; color: #fff;
	}
	.minach-checkout-intro__visual small { font-size: 12px; font-weight: 800; letter-spacing: .1em; }
	.minach-checkout-intro__visual strong { font-size: 19px; line-height: 1.5; text-shadow: 0 2px 14px rgba(0,0,0,.34); }

	body.minach-checkout #customer_details,
	.minach-checkout-payment-stage { padding: 40px; }
	body.minach-checkout #customer_details h3,
	body.minach-checkout #order_review_heading,
	.minach-checkout-payment-stage > h3 { font-size: 27px; }
	.minach-checkout-step { width: 42px; height: 42px; flex-basis: 42px; font-size: 14px; }
	body.minach-checkout .form-row label { margin-bottom: 9px; font-size: 15px; }
	body.minach-checkout .input-text,
	body.minach-checkout select,
	body.minach-checkout .select2-selection { min-height: 58px; padding-inline: 18px !important; font-size: 16px; }

	.minach-checkout-summary-products { padding: 0; }
	.minach-checkout-summary-products .minach-checkout-product { display: block; }
	.minach-checkout-summary-products .minach-checkout-product__image {
		width: 100% !important; height: 202px !important; border-radius: 0; object-fit: cover; box-shadow: none;
	}
	.minach-checkout-summary-products .minach-checkout-product__copy { gap: 7px; padding: 18px 27px 19px; }
	.minach-checkout-product__copy small { font-size: 12px; }
	.minach-checkout-product__copy strong { font-size: 17px; line-height: 1.6; }
	.minach-checkout-product__copy span { font-size: 12px; }
	body.minach-checkout table.shop_table th,
	body.minach-checkout table.shop_table td { font-size: 14px; }
	body.minach-checkout table.shop_table .order-total strong,
	body.minach-checkout table.shop_table .order-total .amount { font-size: 30px; }
	body.minach-checkout #payment ul.payment_methods label { font-size: 15px; }
	body.minach-checkout #payment div.payment_box { font-size: 14px; }
	body.minach-checkout #payment .woocommerce-privacy-policy-text { font-size: 12px; }
	body.minach-checkout #place_order { min-height: 64px; font-size: 17px !important; }
	.minach-checkout-assurance { padding: 19px; font-size: 12px; }
	.minach-checkout-assurance strong { font-size: 15px; }
	.minach-checkout-assurance span { font-size: 12px; }
}

@media (min-width: 1440px) {
	body.minach-checkout .minach-header__in,
	body.minach-checkout main.minach-empty { width: min(1360px, calc(100% - 64px)); }
	body.minach-checkout form.woocommerce-checkout { grid-template-columns: minmax(0, 1fr) 450px; gap: 40px; }
	.minach-checkout-intro { grid-template-columns: minmax(0, 1fr) 440px; min-height: 345px; }
	.minach-checkout-intro__copy { padding: 52px 56px; }
	.minach-checkout-intro h1 { font-size: 50px; }
	.minach-checkout-intro__copy > p:last-of-type { font-size: 18px; }
	.minach-checkout-intro__trust { font-size: 14px; }
	.minach-checkout-intro__visual { min-height: 345px; }
	body.minach-checkout #customer_details,
	.minach-checkout-payment-stage { padding: 44px; }
	body.minach-checkout #customer_details h3,
	body.minach-checkout #order_review_heading,
	.minach-checkout-payment-stage > h3 { font-size: 29px; }
	body.minach-checkout .form-row label { font-size: 16px; }
	body.minach-checkout .input-text,
	body.minach-checkout select,
	body.minach-checkout .select2-selection { min-height: 62px; font-size: 17px; }
	.minach-checkout-summary-products .minach-checkout-product__image { height: 218px !important; }
	.minach-checkout-product__copy small { font-size: 13px; }
	.minach-checkout-product__copy strong { font-size: 18px; }
	.minach-checkout-product__copy span { font-size: 13px; }
	body.minach-checkout table.shop_table th,
	body.minach-checkout table.shop_table td { font-size: 15px; }
	body.minach-checkout #payment ul.payment_methods label { font-size: 16px; }
	body.minach-checkout #payment div.payment_box { font-size: 15px; }
	body.minach-checkout #payment .woocommerce-privacy-policy-text { font-size: 13px; }
	body.minach-checkout #place_order { font-size: 18px !important; }
	.minach-checkout-assurance { font-size: 13px; }
}

@media (max-width: 900px) {
	.minach-checkout-intro__visual { display: none; }
}

/* 0.10.0 — 每單元可下載講義的價值證明與成交提醒 */
.minach-checkout-handout {
	position: relative; overflow: hidden; display: grid; gap: 24px; margin: 0 0 22px; padding: 30px;
	border: 1px solid color-mix(in srgb, var(--checkout-accent) 24%, var(--checkout-line)); border-radius: 25px;
	color: #fff; background:
		radial-gradient(circle at 88% 20%, color-mix(in srgb, var(--checkout-gold) 24%, transparent), transparent 32%),
		linear-gradient(135deg, var(--checkout-ink), color-mix(in srgb, var(--checkout-ink) 84%, var(--checkout-accent)));
	box-shadow: 0 20px 54px rgba(70,42,36,.14);
}
.minach-checkout-handout__copy { position: relative; z-index: 1; min-width: 0; }
.minach-checkout-handout__eyebrow {
	margin: 0 0 8px !important; color: color-mix(in srgb, var(--checkout-gold) 80%, white); font-size: 11px !important;
	font-weight: 900; letter-spacing: .16em;
}
.minach-checkout-handout h2 {
	margin: 0 0 10px; color: #fff; font-size: 26px; font-weight: 900; line-height: 1.35; letter-spacing: -.02em;
}
.minach-checkout-handout__copy > p:last-of-type { margin: 0; color: rgba(255,255,255,.76); font-size: 15px; line-height: 1.78; }
.minach-checkout-handout__features { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin-top: 19px; }
.minach-checkout-handout__features span {
	display: grid; gap: 2px; padding: 11px 13px; border: 1px solid rgba(255,255,255,.11); border-radius: 13px;
	background: rgba(255,255,255,.075); backdrop-filter: blur(4px);
}
.minach-checkout-handout__features b { color: #fff; font-size: 13px; }
.minach-checkout-handout__features small { color: rgba(255,255,255,.66); font-size: 11px; }
.minach-checkout-handout__preview {
	position: relative; z-index: 1; align-self: center; margin: 0; padding: 7px; border: 1px solid rgba(255,255,255,.18);
	border-radius: 18px; background: rgba(255,255,255,.1); box-shadow: 0 16px 38px rgba(24,12,10,.23);
}
.minach-checkout-handout__preview img { display: block; width: 100%; height: auto; border-radius: 12px; }
.minach-checkout-handout__preview figcaption {
	position: absolute; right: 15px; bottom: 14px; padding: 5px 9px; border-radius: 999px;
	color: #fff; background: rgba(62,39,35,.82); font-size: 10px; font-weight: 800;
}
.minach-checkout-product__handout {
	display: flex; align-items: center; gap: 7px; margin-top: 3px; padding: 8px 10px; border-radius: 10px;
	color: var(--checkout-accent-dark) !important; background: color-mix(in srgb, var(--checkout-soft) 78%, white); font-weight: 800;
}
.minach-checkout-product__handout b {
	display: inline-grid; min-width: 30px; height: 20px; place-items: center; border-radius: 6px;
	color: #fff; background: var(--checkout-accent-dark); font-size: 9px; letter-spacing: .08em;
}
.minach-checkout-value-prompt {
	display: grid; grid-template-columns: auto 1fr; gap: 3px 12px; margin: 0 0 15px; padding: 14px 16px;
	border: 1px solid color-mix(in srgb, var(--checkout-accent) 20%, var(--checkout-line)); border-radius: 13px;
	background: linear-gradient(115deg, color-mix(in srgb, var(--checkout-soft) 78%, white), rgba(255,255,255,.78));
}
.minach-checkout-value-prompt > span { align-self: center; color: var(--checkout-muted); font-size: 11px; font-weight: 800; }
.minach-checkout-value-prompt strong { justify-self: end; color: var(--checkout-ink); font-size: 16px; }
.minach-checkout-value-prompt small { grid-column: 1 / -1; color: var(--checkout-accent-dark); font-size: 12px; font-weight: 800; line-height: 1.55; }

@media (min-width: 901px) {
	.minach-checkout-handout { grid-template-columns: minmax(0,1fr) minmax(360px,430px); align-items: center; padding: 36px 38px; }
	.minach-checkout-handout--no-preview { grid-template-columns: 1fr; }
	.minach-checkout-handout h2 { font-size: 29px; }
	.minach-checkout-handout__copy > p:last-of-type { font-size: 16px; }
	.minach-checkout-handout__features b { font-size: 14px; }
	.minach-checkout-handout__features small { font-size: 12px; }
}

@media (min-width: 1440px) {
	.minach-checkout-handout { grid-template-columns: minmax(0,1fr) 470px; padding: 40px 46px; }
	.minach-checkout-handout h2 { font-size: 32px; }
	.minach-checkout-handout__copy > p:last-of-type { font-size: 17px; }
}

@media (max-width: 600px) {
	.minach-checkout-handout { gap: 17px; margin-bottom: 18px; padding: 23px 20px; border-radius: 21px; }
	.minach-checkout-handout h2 { font-size: 23px; }
	.minach-checkout-handout__copy > p:last-of-type { font-size: 14px; }
	.minach-checkout-handout__features { gap: 7px; margin-top: 16px; }
	.minach-checkout-handout__features span { padding: 9px 10px; }
	.minach-checkout-handout__features b { font-size: 12px; }
	.minach-checkout-handout__features small { font-size: 10px; }
	.minach-checkout-handout__preview { display: none; }
	.minach-checkout-value-prompt { grid-template-columns: 1fr; gap: 3px; padding: 13px 14px; }
	.minach-checkout-value-prompt strong { justify-self: start; font-size: 15px; }
	.minach-checkout-value-prompt small { grid-column: auto; font-size: 11px; }
}

/* 0.11.0 — 首屏聚焦結帳、講義卡層級與完整訂單封面 */
.minach-checkout-intro--closing { margin: 38px 0 0; }
.minach-checkout-handout__description {
	max-width: 720px; margin: 13px auto 0 !important; padding-inline: 18px;
	text-align: center;
}
.minach-checkout-handout__description span { display: block; }
.minach-checkout-handout__features { grid-auto-rows: 1fr; }
.minach-checkout-handout__features span {
	min-height: 66px; place-content: center; text-align: center;
}
.minach-checkout-handout__features span:nth-child(1) {
	border-color: rgba(244,128,105,.36); background: linear-gradient(135deg, rgba(232,103,79,.28), rgba(232,103,79,.14));
}
.minach-checkout-handout__features span:nth-child(2) {
	border-color: rgba(226,188,126,.38); background: linear-gradient(135deg, rgba(212,167,106,.28), rgba(212,167,106,.13));
}
.minach-checkout-handout__features span:nth-child(3) {
	border-color: rgba(128,180,151,.34); background: linear-gradient(135deg, rgba(91,143,119,.27), rgba(91,143,119,.13));
}
.minach-checkout-handout__features span:nth-child(4) {
	border-color: rgba(174,148,202,.34); background: linear-gradient(135deg, rgba(143,117,170,.28), rgba(143,117,170,.14));
}
.minach-checkout-handout__features b { font-size: 16px; }
.minach-checkout-handout__features small { font-size: 13px; }

.minach-checkout-product__media {
	position: relative; overflow: hidden; width: 92px; height: 72px; border-radius: 13px;
	background-color: var(--checkout-soft); background-position: center; background-size: cover;
	box-shadow: 0 8px 22px rgba(62,39,35,.12); isolation: isolate;
}
.minach-checkout-product__media::before {
	content: ""; position: absolute; z-index: 0; inset: -16px;
	background: inherit; filter: blur(13px); opacity: .48; transform: scale(1.08);
}
.minach-checkout-product__media .minach-checkout-product__image {
	position: relative; z-index: 1; display: block; width: 100% !important; height: 100% !important;
	border-radius: inherit; object-fit: cover; box-shadow: none;
}

@media (min-width: 901px) {
	.minach-checkout-handout {
		grid-template-columns: minmax(0,1fr) minmax(350px,410px); gap: 28px; padding: 29px 34px;
	}
	.minach-checkout-handout h2 { font-size: 31px; }
	.minach-checkout-handout__description { font-size: 17px !important; line-height: 1.72 !important; }
	.minach-checkout-handout__features { gap: 10px; margin-top: 15px; }
	.minach-checkout-handout__features span { min-height: 68px; padding: 10px 14px; }
	.minach-checkout-handout__features b { font-size: 17px; }
	.minach-checkout-handout__features small { font-size: 13px; }
	.minach-checkout-summary-products .minach-checkout-product__media {
		width: 100%; height: 202px; border-radius: 0; box-shadow: none;
	}
	.minach-checkout-summary-products .minach-checkout-product__media .minach-checkout-product__image {
		width: 100% !important; height: 100% !important; padding: 8px; box-sizing: border-box;
		border-radius: 0; object-fit: contain; background: rgba(255,255,255,.08);
	}
}

@media (min-width: 1440px) {
	.minach-checkout-handout { grid-template-columns: minmax(0,1fr) 440px; gap: 32px; padding: 31px 38px; }
	.minach-checkout-handout h2 { font-size: 34px; }
	.minach-checkout-handout__description { font-size: 19px !important; }
	.minach-checkout-handout__features b { font-size: 18px; }
	.minach-checkout-handout__features small { font-size: 14px; }
	.minach-checkout-summary-products .minach-checkout-product__media { height: 218px; }
}

@media (min-width: 1300px) {
	.minach-checkout-handout__features { grid-template-columns: repeat(4,minmax(0,1fr)); }
	.minach-checkout-handout__features span { min-height: 82px; padding-inline: 9px; }
}

@media (max-width: 600px) {
	.minach-checkout-intro--closing { margin-top: 24px; margin-bottom: 0; }
	.minach-checkout-handout__description { margin-top: 10px !important; padding-inline: 0; text-align: left; }
	.minach-checkout-handout__description span { display: inline; }
	.minach-checkout-handout__description span + span::before { content: " "; }
	.minach-checkout-handout__features span { min-height: 62px; }
	.minach-checkout-handout__features b { font-size: 14px; }
	.minach-checkout-handout__features small { font-size: 11px; }
	.minach-checkout-product__media { width: 80px; height: 64px; }
}

/* 0.12.0 — 真實課程摘要、結帳九折禮遇與精簡付款流程 */
body.minach-checkout .woocommerce-form-login-toggle,
body.minach-checkout .woocommerce-form-coupon-toggle { display: none; }

.minach-checkout-billing-tools {
	display: inline-flex; flex-wrap: wrap; gap: 7px; margin-left: auto;
}
.minach-checkout-billing-tools button {
	padding: 7px 11px; border: 1px solid color-mix(in srgb, var(--checkout-accent) 25%, var(--checkout-line));
	border-radius: 999px; color: var(--checkout-accent-dark); background: rgba(255,255,255,.72);
	font-size: 12px; font-weight: 800; line-height: 1.3; cursor: pointer;
}
.minach-checkout-billing-tools button:hover {
	border-color: var(--checkout-accent); background: #fff;
}

.minach-checkout-product__media {
	background: linear-gradient(135deg, color-mix(in srgb, var(--checkout-soft) 82%, white), #fff);
}
.minach-checkout-product__media::before { display: none; }
.minach-checkout-product__media .minach-checkout-product__image {
	object-fit: contain; padding: 5px; box-sizing: border-box; background: transparent;
}
.minach-checkout-product__stats {
	display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 7px;
	overflow: hidden; border: 1px solid color-mix(in srgb, var(--checkout-accent) 13%, var(--checkout-line));
	border-radius: 11px; background: color-mix(in srgb, var(--checkout-soft) 65%, white);
}
.minach-checkout-product__stats span {
	display: grid; gap: 1px; min-width: 0; padding: 8px 3px; place-items: center; text-align: center;
}
.minach-checkout-product__stats span + span { border-left: 1px solid var(--checkout-line); }
.minach-checkout-product__stats b {
	color: var(--checkout-ink); font-size: 15px; font-weight: 900; line-height: 1.2;
}
.minach-checkout-product__stats small {
	color: var(--checkout-muted) !important; font-size: 9px !important; font-weight: 800; white-space: nowrap;
}

body.minach-checkout table.shop_table tfoot .cart-subtotal,
body.minach-checkout table.shop_table tfoot .coupon-minach-checkout-surprise-10 { display: none; }
body.minach-checkout table.shop_table .minach-checkout-pricing td {
	padding-top: 18px !important; padding-bottom: 16px !important;
}
.minach-checkout-pricing__main {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 9px;
}
.minach-checkout-pricing__main > span {
	width: 100%; color: var(--checkout-accent-dark); font-size: 11px; font-weight: 900; letter-spacing: .06em;
}
.minach-checkout-pricing__main strong,
.minach-checkout-pricing__main strong .amount {
	color: var(--checkout-ink); font-size: 28px; font-weight: 900; line-height: 1.15;
}
.minach-checkout-pricing__main del {
	color: #9a8982; font-size: 13px; font-weight: 700; text-decoration-thickness: 1.5px;
}
.minach-checkout-pricing__main em {
	padding: 4px 7px; border-radius: 999px; color: var(--checkout-accent-dark);
	background: color-mix(in srgb, var(--checkout-accent) 13%, white); font-size: 10px; font-style: normal; font-weight: 900;
}
.minach-checkout-pricing__gift {
	display: grid; grid-template-columns: auto 1fr auto; gap: 7px; align-items: center; margin-top: 13px; padding: 10px 11px;
	border: 1px solid color-mix(in srgb, var(--checkout-gold) 42%, var(--checkout-line)); border-radius: 11px;
	color: var(--checkout-accent-dark); background: linear-gradient(110deg, #fff4da, color-mix(in srgb, var(--checkout-soft) 78%, white));
}
.minach-checkout-pricing__gift b { font-size: 11px; line-height: 1.45; }
.minach-checkout-pricing__gift > strong,
.minach-checkout-pricing__gift > strong .amount { color: var(--checkout-accent-dark); font-size: 13px; white-space: nowrap; }
body.minach-checkout table.shop_table .order-total th { color: var(--checkout-accent-dark); }

.minach-checkout-value-prompt {
	display: grid; grid-template-columns: 1fr; gap: 4px; margin-bottom: 16px; padding: 15px 16px;
}
.minach-checkout-value-prompt strong {
	justify-self: start; color: var(--checkout-ink); font-size: 16px; line-height: 1.5;
}
.minach-checkout-value-prompt > span {
	color: var(--checkout-muted); font-size: 12px; font-weight: 600; line-height: 1.65;
}

body.minach-checkout-modal-open { overflow: hidden; }
.minach-checkout-modal[hidden] { display: none; }
.minach-checkout-modal { position: fixed; z-index: 99999; inset: 0; display: grid; padding: 18px; place-items: center; }
.minach-checkout-modal__backdrop { position: absolute; inset: 0; background: rgba(45,30,27,.55); backdrop-filter: blur(5px); }
.minach-checkout-modal__panel {
	position: relative; z-index: 1; width: min(520px,100%); max-height: min(720px,calc(100vh - 36px)); overflow: auto;
	padding: 28px; border: 1px solid var(--checkout-line); border-radius: 22px; color: var(--checkout-ink);
	background: var(--checkout-surface); box-shadow: 0 28px 80px rgba(38,22,18,.25);
}
.minach-checkout-modal__panel > h3 { margin: 0 40px 20px 0; color: var(--checkout-ink); font-size: 22px; }
.minach-checkout-modal__close {
	position: absolute; top: 15px; right: 15px; display: grid; width: 34px; height: 34px; padding: 0; place-items: center;
	border: 1px solid var(--checkout-line); border-radius: 50%; color: var(--checkout-muted); background: #fff;
	font-size: 24px; line-height: 1; cursor: pointer;
}
.minach-checkout-modal form { margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
.minach-checkout-modal .form-row { margin-bottom: 14px !important; }

@media (min-width: 901px) {
	.minach-checkout-summary-products .minach-checkout-product__media .minach-checkout-product__image {
		padding: 10px; object-fit: contain; background: transparent;
	}
	.minach-checkout-product__copy strong { font-size: 16px; }
	.minach-checkout-product__stats b { font-size: 17px; }
	.minach-checkout-product__stats small { font-size: 10px !important; }
	.minach-checkout-pricing__main strong,
	.minach-checkout-pricing__main strong .amount { font-size: 32px; }
}

@media (max-width: 600px) {
	body.minach-checkout #customer_details h3 { flex-wrap: wrap; }
	.minach-checkout-billing-tools { width: 100%; margin: 2px 0 0 48px; }
	.minach-checkout-billing-tools button { padding: 6px 9px; font-size: 11px; }
	.minach-checkout-product__stats { grid-column: 1 / -1; }
	.minach-checkout-product__stats span { padding: 7px 2px; }
	.minach-checkout-product__stats b { font-size: 14px; }
	.minach-checkout-product__stats small { font-size: 8px !important; }
	.minach-checkout-pricing__main strong,
	.minach-checkout-pricing__main strong .amount { font-size: 25px; }
	.minach-checkout-pricing__gift { grid-template-columns: auto 1fr; }
	.minach-checkout-pricing__gift > strong { grid-column: 2; }
	.minach-checkout-modal__panel { padding: 23px 19px; border-radius: 19px; }
}

/* 0.13.0 — 提高結帳資訊密度與桌機可讀性 */
body.minach-checkout table.shop_table tfoot .coupon-minach-checkout-surprise-10 { display: table-row; }
body.minach-checkout table.shop_table tfoot .cart-discount th,
body.minach-checkout table.shop_table tfoot .cart-discount td { color: var(--checkout-accent-dark); font-weight: 800; }
body.minach-checkout table.shop_table tfoot .cart-discount .woocommerce-remove-coupon { font-size: 11px; }
.minach-checkout-product__title { display: grid; gap: 1px; }
.minach-checkout-product__title span { display: block; }
.minach-checkout-product__stats { grid-template-columns: repeat(3,minmax(0,1fr)); }
.minach-checkout-product__stats span { padding: 7px 3px; }
.minach-checkout-product__stats b { font-size: 19px; line-height: 1.08; }
.minach-checkout-product__stats small { margin-top: 3px; font-size: 12px !important; line-height: 1.15; }
.minach-checkout-pricing__main em { padding: 5px 9px; font-size: 13px; }

.minach-checkout-offer-clock {
	grid-template-columns: auto minmax(0,1fr); gap: 14px; margin: 15px 0 0; padding: 11px 12px;
	border: 1px solid color-mix(in srgb, var(--checkout-gold) 34%, var(--checkout-line)); border-radius: 11px;
	background: color-mix(in srgb, var(--checkout-soft) 62%, white);
}
.minach-checkout-offer-clock .minach-offer-clock__head strong { font-size: 12px; }
.minach-checkout-offer-clock .minach-offer-clock__unit b { font-size: 19px; }
.minach-checkout-offer-clock .minach-offer-clock__unit span { font-size: 9px; }

body.minach-checkout #billing_email_field .description {
	display: block; margin-top: 9px; padding: 10px 12px; border-left: 3px solid var(--checkout-accent);
	border-radius: 0 9px 9px 0; color: var(--checkout-accent-dark);
	background: color-mix(in srgb, var(--checkout-soft) 70%, white); font-size: 13px; font-weight: 700; line-height: 1.65;
}

@media (min-width: 901px) {
	.minach-checkout-summary-products .minach-checkout-product__copy { gap: 9px; }
	.minach-checkout-product__copy > small { font-size: 13px; }
	.minach-checkout-product__title { font-size: 20px !important; line-height: 1.42 !important; }
	.minach-checkout-product__stats { margin-top: 5px; }
	.minach-checkout-product__stats span { padding: 8px 4px; }
	.minach-checkout-product__stats b { font-size: 22px; }
	.minach-checkout-product__stats small { font-size: 14px !important; }
	.minach-checkout-pricing__main em { font-size: 15px; }
	.minach-checkout-offer-clock .minach-offer-clock__head strong { font-size: 14px; }
	.minach-checkout-offer-clock .minach-offer-clock__unit b { font-size: 21px; }
	.minach-checkout-offer-clock .minach-offer-clock__unit span { font-size: 10px; }
	body.minach-checkout .form-row label { font-size: 18px; }
	body.minach-checkout .input-text,
	body.minach-checkout select,
	body.minach-checkout .select2-selection { font-size: 18px; }
	body.minach-checkout #billing_email_field .description { font-size: 15px; }
	.minach-checkout-value-prompt strong { font-size: 21px; }
	.minach-checkout-value-prompt > span { font-size: 16px; }
}

@media (min-width: 1440px) {
	.minach-checkout-product__title { font-size: 21px !important; }
	.minach-checkout-product__stats b { font-size: 23px; }
	.minach-checkout-pricing__main em { font-size: 16px; }
	body.minach-checkout .form-row label { font-size: 19px; }
	body.minach-checkout .input-text,
	body.minach-checkout select,
	body.minach-checkout .select2-selection { font-size: 19px; }
	.minach-checkout-value-prompt strong { font-size: 22px; }
	.minach-checkout-value-prompt > span { font-size: 17px; }
}

@media (max-width: 600px) {
	.minach-checkout-product__title { font-size: 16px !important; line-height: 1.45 !important; }
	.minach-checkout-product__stats b { font-size: 17px; }
	.minach-checkout-product__stats small { font-size: 10px !important; }
	.minach-checkout-pricing__main em { font-size: 12px; }
	.minach-checkout-offer-clock { gap: 9px; padding: 9px 10px; }
	.minach-checkout-offer-clock .minach-offer-clock__head strong { font-size: 11px; }
	.minach-checkout-offer-clock .minach-offer-clock__unit b { font-size: 16px; }
	.minach-checkout-offer-clock .minach-offer-clock__unit span { font-size: 8px; }
	body.minach-checkout #billing_email_field .description { font-size: 12px; }
	.minach-checkout-value-prompt strong { font-size: 18px; }
	.minach-checkout-value-prompt > span { font-size: 14px; }
}

/* 0.14.0 — 課程標題層級、手機首屏順序與 Safari 可讀性 */
.minach-checkout-product__title > span {
	color: var(--checkout-ink) !important;
	font-size: inherit !important;
	font-weight: 900;
}
.minach-checkout-product > .minach-checkout-product__stats { width: 100%; }
.minach-checkout-billing-tools button { padding: 9px 14px; font-size: 15px; }

@media (min-width: 901px) {
	.minach-checkout-product__title { font-size: 23px !important; line-height: 1.38 !important; }
	.minach-checkout-summary-products .minach-checkout-product__stats { margin: 0 27px 20px; width: auto; }
	.minach-checkout-product__copy > small { font-size: 14px; }
}

@media (min-width: 1440px) {
	.minach-checkout-product__title { font-size: 24px !important; }
	.minach-checkout-billing-tools button { font-size: 16px; }
}

@media (max-width: 900px) {
	body.minach-checkout #customer_details h3,
	body.minach-checkout #order_review_heading,
	.minach-checkout-payment-stage > h3 { font-size: 22px; line-height: 1.3; }
	.minach-checkout-billing-tools { width: auto; margin: 4px 0 0; }
	.minach-checkout-billing-tools button { padding: 9px 13px; font-size: 15px; }
	body.minach-checkout .form-row label { font-size: 16px; }
	body.minach-checkout .input-text,
	body.minach-checkout select,
	body.minach-checkout .select2-selection { font-size: 16px; }
	body.minach-checkout #billing_email_field .description { font-size: 14px; line-height: 1.6; }
	.minach-checkout-product { align-items: center; }
	.minach-checkout-product__copy { gap: 7px; }
	.minach-checkout-product__copy > small { font-size: 13px; }
	.minach-checkout-product__title { font-size: 18px !important; line-height: 1.42 !important; }
	.minach-checkout-product > .minach-checkout-product__stats { grid-column: 1 / -1; margin-top: 10px; }
	.minach-checkout-product__stats b { font-size: 19px; }
	.minach-checkout-product__stats small { font-size: 11px !important; }
	.minach-checkout-pricing__main strong,
	.minach-checkout-pricing__main strong .amount { font-size: 29px; }
	.minach-checkout-pricing__main em { font-size: 14px; }
	.minach-checkout-offer-clock .minach-offer-clock__head strong { font-size: 13px; }
	.minach-checkout-offer-clock .minach-offer-clock__unit b { font-size: 18px; }
	.minach-checkout-offer-clock .minach-offer-clock__unit span { font-size: 9px; }
	.minach-checkout-value-prompt strong { font-size: 19px; }
	.minach-checkout-value-prompt > span { font-size: 15px; }
	#payment .payment_methods label { font-size: 16px; }

	/* 手機先完成報名與付款；講義賣點由 JS 移至表單之後。 */
	.minach-checkout-handout {
		color: #fff;
		background-color: #4b2b27 !important;
		background-image: linear-gradient(135deg,#3d2926 0%,#61372f 58%,#8b4939 100%) !important;
	}
	.minach-checkout-handout__eyebrow { color: #f2c98f !important; }
	.minach-checkout-handout h2 { color: #fff !important; font-size: 25px; line-height: 1.35; }
	.minach-checkout-handout__description {
		color: rgba(255,255,255,.88) !important; font-size: 16px !important; line-height: 1.7 !important;
	}
	.minach-checkout-handout__features span {
		min-height: 72px; backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
	}
	.minach-checkout-handout__features b { color: #fff !important; font-size: 16px; }
	.minach-checkout-handout__features small { color: rgba(255,255,255,.78) !important; font-size: 13px; }
}

@media (max-width: 600px) {
	.minach-checkout-billing-tools {
		display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
		width: 100%; margin: 10px 0 0; gap: 8px;
	}
	.minach-checkout-billing-tools button {
		width: 100%; min-width: 0; padding: 10px 5px; font-size: 14px; white-space: nowrap;
		border-color: #e9a08b; background: #fde0d5;
	}
	.minach-checkout-billing-tools button:nth-child(2) {
		border-color: #d9aa7b; background: #f4dfca;
	}
	.minach-checkout-summary-products .minach-checkout-product {
		display: grid; grid-template-columns: minmax(0,1fr); gap: 12px;
	}
	.minach-checkout-summary-products .minach-checkout-product__media {
		grid-column: 1 / -1; width: 100%; height: 148px; border-radius: 14px;
	}
	.minach-checkout-summary-products .minach-checkout-product__media .minach-checkout-product__image {
		width: 100% !important; height: 100% !important; padding: 7px; object-fit: contain;
	}
	.minach-checkout-summary-products .minach-checkout-product__copy {
		grid-column: 1 / -1; padding: 0;
	}
}

/* ══ 兩步結帳＋我的帳號登入註冊（Boss 2026-11-12 Q1A；body.minach-co2／minach-acct）══════════
 * 只在 Platform Core 開關 minach_auth_v2 打開時才有這些 class；關掉＝上面原本的三段式結帳。
 * 配色沿用各領域 --checkout-*（D3）；Google 按鈕是 Google 官方白底按鈕，不套顏色。 */
body.minach-checkout--gold {
	--checkout-bg: #f3ede4; --checkout-surface: #fffdf9; --checkout-soft: #fbf3e2;
	--checkout-accent: #e2a93b; --checkout-accent-dark: #8a5a00; --checkout-ink: #1d2a2c;
	--checkout-muted: #5b6668; --checkout-gold: #e2a93b;
}
body.minach-co2 { --co2-ok: #2f8a5b; --co2-todo: #d6c6c0; --co2-radius: 18px; }

/* 版面：手機單欄；電腦左欄流程條與兩步、右欄固定課程小卡 */
body.minach-co2 form.woocommerce-checkout {
	display: flex; flex-direction: column; align-items: stretch; gap: 14px; max-width: 1080px; margin: 18px auto 0;
}
body.minach-co2 form.woocommerce-checkout > * { min-width: 0; }
body.minach-co2 #order_review_heading,
body.minach-co2 #customer_details .woocommerce-billing-fields > h3,
body.minach-co2 table.woocommerce-checkout-review-order-table,
body.minach-co2 .minach-checkout-billing-tools,
body.minach-co2 .woocommerce-form-login-toggle,
body.minach-co2 .woocommerce-form-coupon-toggle { display: none !important; }

.minach-co2-card,
body.minach-co2 .minach-co2-course,
body.minach-co2 .minach-co2-flow,
body.minach-co2 .minach-co2-summary,
body.minach-co2 #customer_details,
body.minach-co2 .minach-co2-pay-title,
body.minach-co2 #order_review {
	margin: 0; border: 1px solid var(--checkout-line); border-radius: var(--co2-radius);
	background: var(--checkout-surface); box-shadow: 0 2px 10px color-mix(in srgb, var(--checkout-accent) 8%, transparent);
}

/* 課程小卡 */
body.minach-co2 .minach-co2-course { display: grid; gap: 10px; padding: 14px; }
.minach-co2-course__top { display: flex; gap: 12px; align-items: flex-start; }
.minach-co2-course__image { width: 96px; height: 64px; flex: 0 0 96px; object-fit: cover; border-radius: 10px; }
.minach-co2-course__name { display: grid; gap: 3px; min-width: 0; }
.minach-co2-course__name small { color: var(--checkout-accent-dark); font-size: 12px; font-weight: 800; }
.minach-co2-course__name strong { color: var(--checkout-ink); font-size: 15px; line-height: 1.45; }
.minach-co2-course__more { color: var(--checkout-muted); font-size: 12px; }
.minach-co2-course__facts { margin: 0; color: var(--checkout-muted); font-size: 13px; }
.minach-co2-course__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; }
.minach-co2-course__price b, .minach-co2-course__price b .amount { color: var(--checkout-ink); font-size: 24px; font-weight: 900; }
.minach-co2-course__price s { color: var(--checkout-muted); font-size: 13px; }
.minach-co2-course__price em {
	padding: 2px 9px; border-radius: 999px; color: var(--checkout-accent-dark);
	background: var(--checkout-soft); font-size: 12px; font-style: normal; font-weight: 800;
}
.minach-co2-course__clock {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px; padding: 7px 11px; border-radius: 10px;
	color: var(--checkout-muted); background: color-mix(in srgb, var(--checkout-soft) 70%, white); font-size: 12px;
}
.minach-co2-course__clock b { margin-left: 4px; color: var(--checkout-accent-dark); font-size: 16px; font-weight: 900; }

/* 流程條 ① 帳號 → ② 付款 → ③ 觀看 */
.minach-co2-flow {
	display: flex; align-items: flex-start; margin: 0; padding: 14px 12px !important; list-style: none;
	border: 1px solid var(--checkout-line); border-radius: var(--co2-radius); background: var(--checkout-surface);
}
.minach-co2-flow__step { position: relative; display: grid; flex: 1 1 0; justify-items: center; gap: 6px; margin: 0; }
.minach-co2-flow__step + .minach-co2-flow__step::before {
	content: ""; position: absolute; top: 14px; right: calc(50% + 22px); left: calc(-50% + 22px);
	height: 3px; border-radius: 2px; background: var(--co2-todo);
}
.minach-co2-flow__step.is-done + .minach-co2-flow__step::before { background: var(--co2-ok); }
.minach-co2-flow__dot {
	display: grid; width: 30px; height: 30px; place-items: center; box-sizing: border-box; border-radius: 50%;
	border: 2px solid var(--co2-todo); color: #b3a6a1; background: #fff; font-size: 14px; font-weight: 800;
}
.minach-co2-flow__label { color: #9a8f8b; font-size: 13px; white-space: nowrap; }
.minach-co2-flow__step.is-current .minach-co2-flow__dot {
	border-color: var(--checkout-accent); color: #fff; background: var(--checkout-accent); font-weight: 900;
	box-shadow: 0 0 0 5px color-mix(in srgb, var(--checkout-accent) 18%, transparent);
}
.minach-co2-flow__step.is-current .minach-co2-flow__label { color: var(--checkout-accent-dark); font-weight: 900; }
.minach-co2-flow__step.is-done .minach-co2-flow__dot { border-color: var(--co2-ok); color: #fff; background: var(--co2-ok); }
.minach-co2-flow__step.is-done .minach-co2-flow__label { color: var(--co2-ok); font-weight: 800; }

/* 帳號摘要（第 2 步） */
body.minach-co2 .minach-co2-summary { display: none; align-items: center; gap: 10px; padding: 14px 16px; }
body.minach-co2.minach-co2-step2 .minach-co2-summary { display: flex; }
.minach-co2-summary__mark {
	display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border-radius: 10px;
	color: #fff; background: var(--co2-ok); font-weight: 900;
}
.minach-co2-summary__who { display: grid; gap: 2px; flex: 1; min-width: 0; }
.minach-co2-summary__who strong { color: var(--checkout-ink); font-size: 15px; }
.minach-co2-summary__who > span { overflow: hidden; color: var(--checkout-muted); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.minach-co2-summary__switch {
	min-height: 44px; padding: 0 6px; border: 0; color: var(--checkout-accent-dark) !important; background: none;
	font-size: 14px; text-decoration: underline; cursor: pointer;
}

/* 第 1 步：帳號 */
body.minach-co2 #customer_details { order: 0; grid-row: auto; padding: 18px 16px; }
body.minach-co2.minach-co2-step2 #customer_details { display: none; }
.minach-co2-step-title,
body.minach-co2 .minach-co2-pay-title {
	display: flex; align-items: center; gap: 10px; margin: 0 0 14px; color: var(--checkout-ink); font-size: 18px; line-height: 1.4;
}
.minach-co2-num {
	display: inline-grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border-radius: 10px;
	color: #fff; background: var(--checkout-accent); font-size: 14px; font-weight: 900;
}
body.minach-co2 .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr; gap: 14px; }
body.minach-co2 #customer_details .form-row label { font-size: 14px; }
body.minach-co2 #customer_details .input-text { min-height: 48px; font-size: 16px; }
body.minach-co2 #billing_email_field .description {
	display: block !important; position: static !important; margin: 6px 0 0; padding: 0 !important;
	color: var(--checkout-accent-dark) !important; background: none !important; font-size: 13px; font-weight: 800;
}
body.minach-co2 #billing_email_field .description::before { display: none; }
body.minach-co2 .woocommerce-account-fields { margin-top: 14px; }
body.minach-co2 .woocommerce-account-fields .create-account { margin: 0; }
.minach-co2-step1-error {
	margin: 12px 0 0; padding: 10px 12px; border-radius: 10px; color: #8d2a1d;
	background: #fdecea; font-size: 14px; font-weight: 700; line-height: 1.5;
}
.minach-co2-step1-error[hidden] { display: none; }
.minach-co2-step1-error button {
	padding: 0 2px; border: 0; color: var(--checkout-accent-dark); background: none;
	font: inherit; text-decoration: underline; cursor: pointer;
}
.minach-co2-next {
	display: block; width: 100%; min-height: 56px; margin: 16px 0 0; border: 0; border-radius: 999px;
	color: #fff; background: var(--checkout-accent); font-size: 18px; font-weight: 800; font-family: inherit;
	box-shadow: 0 6px 14px color-mix(in srgb, var(--checkout-accent) 35%, transparent); cursor: pointer;
}
.minach-co2-next:disabled { opacity: .65; cursor: progress; }
.minach-co2-login { margin: 12px 0 0; color: var(--checkout-muted); font-size: 14px; text-align: center; }
.minach-co2-login button {
	min-height: 44px; padding: 0 4px; border: 0; color: var(--checkout-accent-dark); background: none;
	font: inherit; font-weight: 800; text-decoration: underline; cursor: pointer;
}

/* Google 推薦框（結帳第 1 步與我的帳號頁共用） */
.minach-co2-google {
	display: grid; gap: 12px; margin: 0 0 14px; padding: 14px; border: 2px solid var(--checkout-accent);
	border-radius: 14px; background: color-mix(in srgb, var(--checkout-soft) 55%, white);
}
.minach-co2-google[hidden] { display: none; }
.minach-co2-google__head { display: flex; align-items: center; gap: 8px; }
.minach-co2-google__head strong { color: var(--checkout-ink); font-size: 15px; }
.minach-co2-badge {
	padding: 3px 10px; border-radius: 999px; color: #fff; background: var(--checkout-accent);
	font-size: 12px; font-weight: 800; white-space: nowrap;
}
body.minach-checkout--gold .minach-co2-badge,
body.minach-checkout--gold .minach-co2-num,
body.minach-checkout--gold .minach-co2-next,
body.minach-checkout--gold #place_order { color: #2b1d00 !important; }
.minach-co2-google__slot { display: flex; justify-content: center; min-height: 44px; }
.minach-co2-google__inapp,
.minach-co2-google__error { margin: 0; font-size: 14px; font-weight: 700; line-height: 1.5; }
.minach-co2-google__inapp { display: none; color: var(--checkout-ink); }
.minach-co2-google.is-in-app .minach-co2-google__slot { display: none; }
.minach-co2-google.is-in-app .minach-co2-google__inapp { display: block; }
.minach-co2-google__error { color: #8d2a1d; }
.minach-co2-google__error[hidden] { display: none; }
.minach-co2-or { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; color: var(--checkout-muted); font-size: 13px; }
.minach-co2-or[hidden] { display: none; }
.minach-co2-or::before, .minach-co2-or::after { content: ""; flex: 1; height: 1px; background: var(--checkout-line); }

/* 第 2 步：付款（還沒完成第 1 步＝灰色收合） */
body.minach-co2 .minach-co2-pay-title { margin: 0; padding: 18px 16px 4px; border-bottom: 0; border-radius: var(--co2-radius) var(--co2-radius) 0 0; }
.minach-co2-pay-title small { display: none; margin-left: auto; color: #9a8f8b; font-size: 13px; font-weight: 400; }
body.minach-co2:not(.minach-co2-step2) .minach-co2-pay-title {
	padding-bottom: 18px; border-radius: var(--co2-radius); color: #9a8f8b; background: color-mix(in srgb, var(--checkout-soft) 60%, #efe3df);
	box-shadow: none;
}
body.minach-co2:not(.minach-co2-step2) .minach-co2-pay-title .minach-co2-num { background: var(--co2-todo); }
body.minach-co2:not(.minach-co2-step2) .minach-co2-pay-title small { display: inline; }
body.minach-co2:not(.minach-co2-step2) #order_review { display: none; }
body.minach-co2 #order_review { margin-top: -14px; padding: 8px 16px 18px; border-top: 0; border-radius: 0 0 var(--co2-radius) var(--co2-radius); }
body.minach-co2 #payment { margin: 0; border-radius: 0 !important; background: transparent !important; }
body.minach-co2 #payment ul.payment_methods { padding: 6px 0 4px !important; border: 0 !important; }
body.minach-co2 #payment ul.payment_methods > li { min-height: 48px; margin: 0 0 8px; padding: 12px; border-radius: 12px; }
body.minach-co2 #payment ul.payment_methods > li:has(input:checked) {
	border: 2px solid var(--checkout-accent); background: color-mix(in srgb, var(--checkout-soft) 45%, white);
}
body.minach-co2 #payment ul.payment_methods label { font-size: 15px; }
body.minach-co2 #payment .place-order { display: flex; flex-direction: column; gap: 12px; padding: 4px 0 0 !important; }
body.minach-co2 #payment .place-order > .woocommerce-terms-and-conditions-wrapper { order: 20; }
body.minach-co2 #payment .woocommerce-privacy-policy-text { margin: 0; font-size: 11px; }
.minach-co2-coupon {
	align-self: flex-start; min-height: 44px; padding: 0; border: 0; color: var(--checkout-accent-dark);
	background: none; font-size: 14px; text-decoration: underline; cursor: pointer;
}
.minach-co2-agree { display: flex; gap: 10px; align-items: flex-start; color: var(--checkout-ink); font-size: 14px; line-height: 1.55; cursor: pointer; }
.minach-co2-agree input { width: 20px; height: 20px; flex: 0 0 20px; margin: 1px 0 0; accent-color: var(--checkout-accent); }
.minach-co2-agree a, .minach-co2-refund-pending { color: var(--checkout-accent-dark); text-decoration: underline; }
.minach-co2-total {
	display: flex; align-items: baseline; justify-content: space-between; padding-top: 10px;
	border-top: 1px solid var(--checkout-line); color: var(--checkout-muted); font-size: 14px;
}
.minach-co2-total b, .minach-co2-total b .amount { color: var(--checkout-ink); font-size: 24px; font-weight: 900; }
.minach-co2-total--coupon b, .minach-co2-total--coupon b .amount { color: var(--co2-ok); font-size: 16px; }
.minach-co2-total--coupon + .minach-co2-total { border-top: 0; padding-top: 0; }
body.minach-co2 #place_order { min-height: 56px; font-size: 18px !important; }
.minach-co2-after-pay { margin: 0; color: var(--checkout-muted); font-size: 12px; text-align: center; }
body.minach-co2 .cf-turnstile { margin: 0 auto; }

/* 付款完成頁 */
body.minach-co2-thanks .woocommerce-order { max-width: 560px; margin: 18px auto 0; display: flex; flex-direction: column; gap: 14px; }
body.minach-co2-thanks .woocommerce-thankyou-order-received,
body.minach-co2-thanks .woocommerce-order-overview { display: none !important; }
/* 綠界 ATM／超商繳費資訊（繳費代碼、截止日）：訂單明細已在 PHP 端不輸出，這裡只剩繳費資訊，做成卡片 */
body.minach-co2-thanks .woocommerce-order-details {
	margin: 0; padding: 18px 16px; border: 1px solid var(--checkout-line); border-radius: var(--co2-radius); background: var(--checkout-surface);
}
body.minach-co2-thanks .woocommerce-order-details__title { margin: 0 0 10px; color: var(--checkout-ink); font-size: 18px; text-align: center; }
body.minach-co2-thanks .payment_details { width: 100%; margin: 0; border: 0; font-size: 16px; }
body.minach-co2-thanks .payment_details td { padding: 10px 4px; border: 0; border-top: 1px solid var(--checkout-line); color: var(--checkout-ink); }
body.minach-co2-thanks .payment_details td:last-child { font-weight: 800; text-align: right; word-break: break-all; }
.minach-co2-done {
	display: grid; gap: 14px; justify-items: center; padding: 24px 16px; border: 1px solid var(--checkout-line);
	border-radius: var(--co2-radius); background: var(--checkout-surface); text-align: center;
}
.minach-co2-done h2 { margin: 0; color: var(--checkout-ink); font-size: 22px; }
.minach-co2-done p { margin: 0; color: var(--checkout-muted); font-size: 14px; line-height: 1.7; }
.minach-co2-done__mark {
	display: grid; width: 64px; height: 64px; place-items: center; border-radius: 50%;
	color: #fff; background: var(--co2-ok); font-size: 32px; font-weight: 900;
}
.minach-co2-done--wait .minach-co2-done__mark { background: var(--checkout-soft); }
.minach-co2-done__go {
	display: grid; width: 100%; min-height: 56px; place-items: center; border-radius: 999px; color: #fff !important;
	background: var(--checkout-accent); font-size: 18px; font-weight: 800; text-decoration: none !important;
	box-shadow: 0 6px 14px color-mix(in srgb, var(--checkout-accent) 35%, transparent);
}
.minach-co2-done__all { color: var(--checkout-accent-dark) !important; font-size: 14px; }

/* 我的帳號頁（未登入）：登入／註冊分頁 */
body.minach-acct main .woocommerce { max-width: 480px; margin: 0 auto; }
body.minach-acct article > h1, body.minach-acct .entry-title { display: none; }
.minach-acct-tabs {
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 18px 0 14px; padding: 4px;
	border-radius: 12px; background: color-mix(in srgb, var(--checkout-soft) 70%, white);
}
.minach-acct-tabs button {
	min-height: 44px; border: 0; border-radius: 9px; color: var(--checkout-muted); background: transparent;
	font-size: 16px; font-family: inherit; cursor: pointer;
}
.minach-acct-tabs button[aria-selected="true"] { color: var(--checkout-ink); background: #fff; font-weight: 800; box-shadow: 0 1px 4px rgba(0,0,0,.08); }
.minach-acct-tabs[data-active="login"] ~ #customer_login .u-column2,
.minach-acct-tabs[data-active="register"] ~ #customer_login .u-column1 { display: none; }
body.minach-acct #customer_login { display: block; }
body.minach-acct #customer_login .u-column1,
body.minach-acct #customer_login .u-column2 { float: none; width: 100%; max-width: none; padding: 0; }
body.minach-acct #customer_login h2 { display: none; }
body.minach-acct #customer_login form {
	margin: 0; padding: 20px 16px; border: 1px solid var(--checkout-line); border-radius: var(--co2-radius, 18px);
	background: var(--checkout-surface);
}
body.minach-acct #customer_login .form-row label { font-size: 14px; font-weight: 700; }
body.minach-acct #customer_login .input-text { width: 100%; min-height: 48px; font-size: 16px; }
.minach-acct-warn { display: block; margin-top: 6px; color: var(--checkout-accent-dark); font-size: 13px; font-weight: 800; }
body.minach-acct #customer_login .woocommerce-form-login__submit,
body.minach-acct #customer_login .woocommerce-form-register__submit {
	width: 100%; min-height: 52px; margin: 8px 0 0; border: 0; border-radius: 999px; color: #fff;
	background: var(--checkout-accent); font-size: 17px; font-weight: 800;
	box-shadow: 0 6px 14px color-mix(in srgb, var(--checkout-accent) 35%, transparent);
}
body.minach-checkout--gold.minach-acct #customer_login button[type="submit"] { color: #2b1d00; }
body.minach-acct #customer_login .woocommerce-form-login__rememberme { display: inline-flex; gap: 8px; align-items: center; min-height: 44px; }
body.minach-acct #customer_login .lost_password a { color: var(--checkout-accent-dark); }

/* 顯示密碼眼睛（Woo 沒有附的欄位才加） */
.minach-eye-wrap { position: relative; display: block; }
.minach-eye-wrap input { padding-right: 52px !important; }
.minach-eye {
	position: absolute; top: 50%; right: 4px; display: grid; width: 44px; height: 44px; place-items: center;
	transform: translateY(-50%); border: 0; color: var(--checkout-muted); background: none; cursor: pointer;
}
.minach-eye.is-on { color: var(--checkout-accent-dark); }

@media (min-width: 901px) {
	body.minach-co2 form.woocommerce-checkout {
		display: grid; grid-template-columns: minmax(0, 1fr) 360px; column-gap: 28px; row-gap: 14px; align-items: start;
	}
	body.minach-co2 form.woocommerce-checkout > * { grid-column: 1; }
	body.minach-co2 form.woocommerce-checkout > .woocommerce-NoticeGroup { grid-column: 1 / -1; }
	body.minach-co2 form.woocommerce-checkout > .minach-co2-course { position: sticky; top: 100px; grid-column: 2; grid-row: 1 / span 6; }
	body.minach-co2 #customer_details, body.minach-co2 #order_review { padding-left: 28px; padding-right: 28px; }
	body.minach-co2 .minach-co2-pay-title { padding-left: 28px; padding-right: 28px; }
	.minach-co2-next, body.minach-co2 #place_order { max-width: 420px; }
	.minach-co2-course__image { width: 120px; height: 80px; flex-basis: 120px; }
}
