/* Onic checkout/cart/thankyou/my-account UX - khớp đúng class trong 3 file template Onic
   vừa ghi đè (woocommerce/checkout/form-checkout.php, cart/cart.php, checkout/thankyou.php)
   và class chuẩn của WooCommerce/Flatsome đã xác nhận từ mã nguồn thật. */

/* ---------- Card dùng chung cho checkout/cart/thank-you ---------- */
.onic-checkout-card {
	background: #fff;
	border-radius: 12px;
	padding: 22px;
	border: 1px solid #e5e7eb;
}
.onic-checkout-summary {
	box-shadow: 0 3px 14px rgba(20, 45, 80, .05);
}
.onic-checkout-card-title { font-size: 16px; margin: 0 0 16px; font-weight: 600; }

/* WooCommerce lõi tự dịch heading "Billing details" -> "Thông tin liên hệ" theo locale Việt Nam sẵn -
   style thẳng heading gốc đó thay vì thêm heading riêng, tránh lặp 2 dòng chữ giống nhau. */
.woocommerce-billing-fields > h3:first-child {
	font-size: 16px;
	font-weight: 600;
	margin: 0 0 16px;
	padding: 0;
	border: none;
}

#customer_details .form-row { margin-bottom: 14px; }
#customer_details .form-row input.input-text,
#customer_details .form-row select {
	border: 1px solid #c7ccd4;
	border-radius: 8px;
	height: 44px;
	box-shadow: none;
}
#customer_details .form-row input.input-text:focus,
#customer_details .form-row select:focus {
	border-color: #1677c8;
	outline: none;
}
#customer_details .form-row textarea {
	border: 1px solid #c7ccd4;
	border-radius: 8px;
}

/* ---------- Order review / đơn hàng ---------- */
#order_review_heading { font-size: 16px; margin: 0 0 14px; }
.woocommerce-checkout-review-order-table { border: none; table-layout: fixed; width: 100%; }
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td { border: none; padding: 10px 0; word-wrap: break-word; }
.woocommerce-checkout-review-order-table thead th:first-child,
.woocommerce-checkout-review-order-table .cart_item .product-name,
.woocommerce-checkout-review-order-table .cart-subtotal th:first-child,
.woocommerce-checkout-review-order-table .order-total th:first-child { width: 68%; }
.woocommerce-checkout-review-order-table thead th:last-child,
.woocommerce-checkout-review-order-table .cart_item td,
.woocommerce-checkout-review-order-table .cart-subtotal td,
.woocommerce-checkout-review-order-table .order-total td { width: 32%; text-align: right; }

/* Ô tên sản phẩm (kèm dòng "Loại"/"Chu kỳ" bên dưới) đang dính sát viền khối nền xám - thêm đệm
   trong, và giãn dòng meta cho thoáng. */
.woocommerce-checkout-review-order-table .cart_item .product-name {
	padding: 14px 16px !important;
}
.woocommerce-checkout-review-order-table .cart_item .product-name dl.variation,
.woocommerce-checkout-review-order-table .cart_item .product-name .wc-item-meta {
	margin: 8px 0 0;
	padding: 0;
}
.woocommerce-checkout-review-order-table .cart_item .product-name dl.variation dt,
.woocommerce-checkout-review-order-table .cart_item .product-name dl.variation dd,
.woocommerce-checkout-review-order-table .cart_item .product-name .wc-item-meta li {
	font-size: 13px;
	color: #687386;
	margin: 3px 0;
	line-height: 1.5;
}

/* Payment method - dạng radio card thay vì list gạch đầu dòng mặc định */
ul.wc_payment_methods { list-style: none; margin: 0; padding: 0; }
ul.wc_payment_methods li.wc_payment_method {
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 12px 14px;
	margin-bottom: 8px;
}
ul.wc_payment_methods li.wc_payment_method:has(input:checked) {
	border-color: #1677c8;
	background: #f7fbff;
}
ul.wc_payment_methods li.wc_payment_method label { font-weight: 500; cursor: pointer; }
ul.wc_payment_methods .payment_box { font-size: 13px; color: #687386; margin-top: 8px; }

#place_order { border-radius: 8px; height: 48px; font-weight: 600; }

/* ---------- Giỏ hàng ---------- */
table.shop_table.cart { border: none; }
table.shop_table.cart th { border-bottom: 1px solid #e5e7eb; font-weight: 600; font-size: 13px; color: #687386; }
table.shop_table.cart td { border-bottom: 1px solid #f1f2f4; }
.cart_totals table.shop_table { border: none; }
.cart_totals table.shop_table th,
.cart_totals table.shop_table td { border: none; padding: 8px 0; }

/* ---------- Trang cảm ơn ---------- */
.onic-thankyou-title { font-size: 17px; font-weight: 600; margin: 0 0 16px; }
.woocommerce-order-overview { list-style: none; margin: 0 0 18px; padding: 0; }
.woocommerce-order-overview li {
	display: flex;
	justify-content: space-between;
	padding: 8px 0;
	border-bottom: 1px solid #f1f2f4;
	font-size: 13px;
}

/* ---------- My Account: menu + trang chi tiết đơn hàng (dùng template lõi WooCommerce) ---------- */
.woocommerce-MyAccount-navigation ul { border: 1px solid #e5e7eb; border-radius: 12px; overflow: hidden; padding: 0; }
.woocommerce-MyAccount-navigation li { border-bottom: 1px solid #f1f2f4; }
.woocommerce-MyAccount-navigation li:last-child { border-bottom: none; }
.woocommerce-MyAccount-navigation li a { padding: 12px 16px; display: block; }
.woocommerce-MyAccount-navigation li.is-active a { background: #1677c8; color: #fff; }
.woocommerce-order-details,
.woocommerce-customer-details {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 20px;
}
.woocommerce-order-details table.shop_table,
.woocommerce-customer-details table.shop_table { border: none; }

/* ---------- Bảng "Tải xuống" (my-account/downloads/) ---------- */
table.woocommerce-table--order-downloads {
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	width: 100%;
}
table.woocommerce-table--order-downloads th {
	background: #f7f8fa;
	text-align: left;
	font-size: 13px;
	font-weight: 600;
	color: #687386;
	padding: 12px 16px;
	border-bottom: 1px solid #e5e7eb;
}
table.woocommerce-table--order-downloads td {
	padding: 14px 16px;
	border-bottom: 1px solid #f1f2f4;
	vertical-align: middle;
	font-size: 14px;
}
table.woocommerce-table--order-downloads tr:last-child td { border-bottom: none; }
table.woocommerce-table--order-downloads .download-remaining,
table.woocommerce-table--order-downloads .download-expires { text-align: center; }
a.woocommerce-MyAccount-downloads-file {
	display: inline-block !important;
	padding: 8px 16px !important;
	border-radius: 7px !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
	white-space: normal;
}
