/* ══════════════════════════════════════════════
   Cart + Checkout — 浅色主题 · 橙色风格
   ══════════════════════════════════════════════ */

/* ── hide Elementor duplicate sections ── */
.custom-cart-page .e-cart-totals.e-cart-section { display: none; }
.custom-cart-page .e-shop-table {padding: 0;border: 0;}
.custom-checkout-page .woocommerce-form-coupon-toggle,
.custom-checkout-page .checkout_coupon.woocommerce-form-coupon { display: none !important; }
.custom-checkout-page .woocommerce-checkout-review-order-table { display: none !important; }
.custom-checkout-page .woocommerce-notices-wrapper:empty { display: none; }
.custom-checkout-page .e-checkout__order_review,
.custom-checkout-page .e-coupon-box { display: none !important; }
.custom-checkout-page .e-checkout__container { grid-column-gap:0; grid-row-gap:0; }

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

.custom-cart-page {
	margin: 0 auto;
	padding: 0 20px;
}
.wc-qty-wrap {
    display: flex;
}
/* left: products table */
.custom-cart-page .cart-left { min-width: 0; }

.custom-cart-page .cart-table {
	width: 100%;
	border: none;
	border-collapse: collapse;
}

.custom-cart-page .cart-table thead th {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: #000000;
	padding: 0 12px 14px;
	border-bottom: 1px solid #e5e5e5 !important;
	text-align: left !important;
	background: transparent;
}

.custom-cart-page .cart-table thead th:nth-child(n+2){
	text-align: center !important;
}
.custom-cart-page .cart-table thead .quantity-col,
.custom-cart-page .cart-table thead .total-col,
.custom-cart-page .cart-table thead .price-col { text-align: center; }

.custom-cart-page .cart-table tbody td {
	padding: 20px 12px;
	border-bottom: 1px solid #f0f0f0 !important;
	vertical-align: middle;
	background: unset;
	text-align: center;
	color: #333;
	font-weight: 600;
	font-size: 15px;
}
.custom-cart-page .cart-table tbody td.product-name { text-align: left; }

/* thumbnail */
.custom-cart-page .cart-table .product-thumbnail { width: 90px; }
.custom-cart-page .cart-table .product-thumbnail img {
	width: 80px;
	height: auto;
	border-radius: 8px;
	display: block;
}

/* product name */
.custom-cart-page .cart-table .product-name a {
	color: #ff6a00 !important;
	font-weight: 600;
	text-decoration: none;
	font-size: 15px;
	display: block;
}
.custom-cart-page .cart-table .product-name a:hover { text-decoration: underline; color: #ff6a00 !important;}

/* metadata */
.custom-cart-page .cart-table .product-name dl.variation,
.custom-cart-page .cart-table .product-name .wc-item-meta { margin: 5px 0 0; }
.custom-cart-page .cart-table .product-name dl.variation dt,
.custom-cart-page .cart-table .product-name dl.variation dd,
.custom-cart-page .cart-table .product-name dl.variation dd p,
.custom-cart-page .cart-table .product-name .wc-item-meta li {
	font-size: 13px;
	color: #777;
	font-weight: 400;
}
.custom-cart-page .coupon.e-cart-section.shop_table {
    display: none;
}
.custom-cart-page .cart-table .product-name dl.variation dd p{
	font-weight: 700 !important;
	color: #ff5000;
}
.custom-cart-page .cart-table .product-name dl.variation dt { margin: 0 5px 0 0; }

/* remove icon */
.custom-cart-page .product-actions { margin-top: 8px; display: flex; gap: 10px; }
.custom-cart-page .product-actions .remove-item svg {width: 18px;height: auto;color: #ff0000;}
.custom-cart-page .product-actions .remove-item {
	text-decoration: none;
	cursor: pointer;
	opacity: .6;
	transition: opacity .2s, color .2s;
}
.custom-cart-page .product-actions .remove-item:hover { color: #ff4444; opacity: 1; }

/* quantity */
.custom-cart-page .cart-table .product-quantity { text-align: center; }
.custom-cart-page .cart-table .quantity {
	display: inline-flex;
	align-items: center;
	border: 1.5px solid #ddd;
	overflow: hidden;
	border-radius: 30px;
}
.custom-cart-page .cart-table .quantity .qty {
	width: 40px;
	height: 34px;
	text-align: center;
	border: none;
	background: transparent;
	color: #333;
	font-size: 14px;
	font-weight: 600;
	-moz-appearance: textfield;
	padding: 0;
	max-height: 100%;
	outline: none;
}
.custom-cart-page .cart-table .quantity .qty::-webkit-outer-spin-button,
.custom-cart-page .cart-table .quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.custom-cart-page .cart-table .wc-qty-btn,
.custom-cart-page .cart-table .qty-btn {
	width: 34px;
	height: 34px;
	border: none;
	background: transparent;
	color: #555;
	font-size: 16px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .2s;
	padding: 0;
}
.custom-cart-page .cart-table .wc-qty-btn--minus,
.custom-cart-page .cart-table .qty-minus { border-right: 1.5px solid #ddd; }
.custom-cart-page .cart-table .wc-qty-btn--plus,
.custom-cart-page .cart-table .qty-plus { border-left: 1.5px solid #ddd; }
.custom-cart-page .cart-table .wc-qty-btn:hover,
.custom-cart-page .cart-table .qty-btn:hover { background: #ff6a00; color: #fff; }

/* hide update_cart row (keep DOM for WooCommerce JS) */
.cart-table .actions-row .actions { padding: 0 !important; border: none !important; height: 0; overflow: hidden; }
.cart-table .actions-row .actions button,
.cart-table .actions-row .actions .button { position: absolute; left: -9999px; visibility: hidden; }

/* order note */
.cart-order-note { margin-top: 0; }
.order-note-label { display: block; font-size: 14px; font-weight: 600; color: #333; margin-bottom: 10px; }
.cart-order-note textarea {
	width: 100%;
	padding: 14px 16px;
	border: 1.5px solid #ddd;
	border-radius: 8px;
	background: #fafafa;
	color: #333;
	font-size: 14px;
	resize: vertical;
	min-height: 90px;
	font-family: inherit;
	transition: border-color .2s;
	box-sizing: border-box;
	outline: none;
}
.cart-order-note textarea::placeholder { color: #aaa; }
.cart-order-note textarea:focus { border-color: #ff6a00; }

/* coupon */
.cart-coupon-section { margin-top: 25px; }
.cart-coupon-section .coupon-label { font-size: 14px; font-weight: 600; color: #333; display: block; margin-bottom: 4px; }
.cart-coupon-section .coupon-note { font-size: 13px; color: #999; margin: 0 0 10px; }
.coupon-input-wrap { display: flex; gap: 10px; }
.coupon-input-wrap #coupon_code {
	flex: 1;
	padding: 10px 14px;
	border: 1.5px solid #ddd;
	border-radius: 6px;
	color: #333;
	font-size: 14px;
	background: #fafafa;
	outline: none;
}
.coupon-input-wrap #coupon_code:focus { border-color: #ff6a00; }
.woocommerce .custom-cart-page .coupon-input-wrap .button {
	padding: 8px 20px;
	border: 1.5px solid #ddd;
	background: #fff;
	color: #333;
	font-size: 14px;
	font-weight: 600;
	border-radius: 50px;
	cursor: pointer;
	transition: all .2s;
	white-space: nowrap;
}
.woocommerce .custom-cart-page .coupon-input-wrap .button:hover { background: #ff6a00; border-color: #ff6a00; color: #fff; }

/* footer-cart-wrap */
.footer-cart-wrap {display: flex;gap: 24px;width: 50%;justify-content: space-between;flex-wrap: wrap;margin: 0 0 0 auto;}
.note-warp { flex: 1; min-width: 280px; }
.cart-right { position: sticky; top: 100px; flex: 1; }
.cart-summary {padding: 0;border-radius: 8px;}

/* summary rows */
.summary-row { padding: 4px 0; }
.summary-label {font-size: 13px;font-weight: 700;text-transform: uppercase;letter-spacing: 1px;color: #000000;}
.summary-value { color: #222; font-weight: 600; }
.summary-row.coupon-row .summary-value { color: #4caf50; }
.summary-row.total-row { margin-top: 4px; padding-top: 12px; border-top: 1.5px solid #e5e5e5; }
.summary-row.total-row .summary-value { font-size: 24px; font-weight: 800; color: #ff6a00; }
.tax-shipping-note { font-size: 13px; color: #999; text-align: right; margin: 4px 0 0; }

/* checkout button */
.checkout-btn-wrap { margin-top: 24px; }
.checkout-btn-wrap .checkout-button {
	display: block;
	width: 100%;
	padding: 14px 16px;
	background: #ff6a00;
	color: #fff !important;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
	text-align: center;
	border-radius: 50px;
	text-decoration: none;
	transition: background .2s;
	border: none;
	cursor: pointer;
	box-sizing: border-box;
}
.checkout-btn-wrap .checkout-button:hover { background: #e65c00; }

/* cart responsive */
@media (max-width: 900px) {
	.footer-cart-wrap { flex-direction: column; }
	.cart-right { position: static; }
	.cart-summary { max-width: none; margin: 0; }
}
@media (max-width: 768px) {
	.cart-table .product-thumbnail { width: 60px; }
	.cart-table .product-thumbnail img { width: 55px; }
	.coupon-input-wrap { flex-direction: column; }
}

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

.custom-checkout-page { margin: 0 auto; padding: 30px 20px 0; }

.checkout-grid {
	display: grid;
	grid-template-columns: 1fr 480px;
	gap: 0;
	align-items: start;
}

.checkout-left { padding-right: 50px; border-right: 1px solid #e5e5e5; }
.checkout-right { position: sticky; top: 30px; padding-left: 50px; }

/* express checkout */
.express-checkout-wrap { text-align: center; margin-bottom: 0; }
.express-checkout-wrap:empty,
.express-checkout-wrap:empty + .checkout-divider { display: none; }

.checkout-divider {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 25px 0;
	color: #bbb;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.checkout-divider::before,
.checkout-divider::after { content: ''; flex: 1; height: 1px; background: #ddd; }

/* section */
.custom-checkout-page .checkout-section { margin-bottom: 10px; }
.custom-checkout-page .checkout-section h3 {
	font-size: 20px;
	font-weight: 700;
	color: #222;
	margin: 10px 0 15px;
	text-align: left;
}
.elementor-widget-woocommerce-checkout-page #ship-to-different-address{
	padding: 0;
}
.custom-checkout-page .checkout-section .section-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 18px;
}
.custom-checkout-page .checkout-section .section-header h3 { margin-bottom: 0; }
.custom-checkout-page .checkout-signin-link { font-size: 14px; color: #ff6a00; text-decoration: underline; }
.custom-checkout-page .checkout-signin-link:hover { color: #e65c00; }

/* form fields */
.custom-checkout-page .woocommerce-billing-fields__field-wrapper,
.custom-checkout-page .woocommerce-shipping-fields__field-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.custom-checkout-page .form-row { margin: 0 !important; padding: 0 !important; }
.custom-checkout-page .form-row-wide { width: 100%; flex: 0 0 100%; }
.custom-checkout-page .form-row-first { flex: 1 1 calc(50% - 6px); min-width: 0; }
.custom-checkout-page .form-row-last { flex: 1 1 calc(50% - 6px); min-width: 0; }

.custom-checkout-page .form-row input[type="text"],
.custom-checkout-page .form-row input[type="email"],
.custom-checkout-page .form-row input[type="tel"],
.custom-checkout-page .form-row input[type="password"],
.custom-checkout-page .form-row input[type="number"],
.custom-checkout-page .form-row textarea,
.custom-checkout-page .form-row select {
	width: 100%;
	padding: 12px 16px;
	border: 1.5px solid #ddd;
	border-radius: 6px;
	background: #fff;
	color: #333;
	font-size: 15px;
	font-family: inherit;
	transition: border-color .2s;
	box-sizing: border-box;
	height: auto;
	line-height: 1.4;
}
.custom-checkout-page span.woocommerce-input-wrapper { width: 100%; }
.custom-checkout-page .form-row input:focus,
.custom-checkout-page .form-row textarea:focus,
.custom-checkout-page .form-row select:focus { outline: none; border-color: #ff6a00; box-shadow: 0 0 0 1px rgba(255,106,0,.15); }
.custom-checkout-page .form-row input::placeholder,
.custom-checkout-page .form-row textarea::placeholder { color: #bbb; }

/* select2 */
.custom-checkout-page .select2-container--default .select2-selection--single {
	background: #fff !important;
	border: 1.5px solid #ddd !important;
	border-radius: 6px !important;
}
.custom-checkout-page .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #333 !important;
	padding: 0 16px !important;
	font-size: 15px !important;
	text-align: left;
	line-height: 43px !important;
}
.custom-checkout-page .select2-container--default .select2-selection--single .select2-selection__arrow { height: 48px !important; right: 10px !important; }

.custom-checkout-page .required { color: #ff6a00; }

.express-checkout-wrap .woocommerce-shipping-fields .shipping_address {
    padding: 15px;
    border: 0;
    background: #f8f8f8;
}


/* checkbox */
.checkout-checkbox-label { display: flex; align-items: center; gap: 10px; cursor: pointer; font-size: 14px; color: #555; }
.checkout-checkbox-label input[type="checkbox"],
.woocommerce-terms-and-conditions-wrapper input#terms,
input#mailpoet_woocommerce_checkout_optin {width: 18px;height: 18px;accent-color: #ff5000;cursor: pointer;flex-shrink: 0;outline: 0;}
label.woocommerce-form__label.woocommerce-form__label-for-checkbox.checkbox {
    width: 100%;
    text-align: left;
    margin: 0;
}
.checkout-save-info {margin-top: 0;}

/* shipping options */
.shipping-methods-content { margin-top: 0; }
.checkout-shipping-options { list-style: none; padding: 0; margin: 0; border: 1.5px solid #ddd; border-radius: 8px; overflow: hidden; }
.checkout-shipping-options .shipping-option {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 16px 12px;
	border-bottom: 1px solid #f0f0f0;
	color: #333;
	font-size: 14px;
}
.checkout-shipping-options .shipping-option:last-child { border-bottom: none; }
.checkout-shipping-options .shipping-option input[type="radio"] {
    width: 16px;
    height: 16px;
    accent-color: #ff5000;
    margin: 0 4px 0 0;
    flex-shrink: 0;
    float: left;
    position: relative;
    }

.wpcvs-terms.wpcvs-type-radio.wpcvs-show-label-yes.wpcvs-style-rounded[data-attribute="pa_warranty-protection"] .wpcvs-term-radio input[type="radio"] {
  display: none;
}

.wpcvs-terms.wpcvs-type-radio.wpcvs-show-label-yes.wpcvs-style-rounded[data-attribute="pa_warranty-protection"] .wpcvs-term::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  border: 2px solid #ccc;
  border-radius: 50%;
  background-color: transparent;
  transition: background-color 0.2s, border-color 0.2s;
}

.wpcvs-terms.wpcvs-type-radio.wpcvs-show-label-yes.wpcvs-style-rounded[data-attribute="pa_warranty-protection"] .wpcvs-term.wpcvs-selected::before {
  border-color: #ff6600;
}

.checkout-shipping-options .shipping-option label {display: inline !important;cursor: pointer;color: #333;font-size: 14px;font-weight: 500;}
.shipping-notice-box { border: 1.5px solid #ddd; border-radius: 8px; padding: 20px; background: #fafafa; }
.shipping-notice-box p { margin: 0; color: #777; font-size: 14px; text-align: left; }

/* payment */
.payment-secure-note { color: #999; font-size: 14px; margin: 0 0 5px; text-align: left; }
.custom-checkout-page #payment { background: unset !important; border-radius: 0 !important; border: 0 !important; padding: 0 !important; }
.custom-checkout-page #payment .payment_methods {
	list-style: none;
	padding: 0 !important;
	margin: 0 0 20px !important;
	border: 1.5px solid #ddd !important;
	border-radius: 8px !important;
	overflow: hidden;
	background: transparent !important;
}
.custom-checkout-page #payment .payment_methods > li { border-bottom: 1px solid #f0f0f0; margin: 0 !important; padding: 0 !important; background: transparent !important; }
.custom-checkout-page #payment .payment_methods > li:last-child { border-bottom: none; }
.custom-checkout-page #payment .payment_methods > li > label {
	display: flex !important;
	align-items: center;
	gap: 12px;
	padding: 16px 18px;
	cursor: pointer;
	color: #333;
	font-size: 14px;
	font-weight: 500;
	margin: 0;
}
.custom-checkout-page #payment .payment_methods > li > input[type="radio"] {
	width: 16px;
	height: 16px;
	accent-color: #ff5000;
	margin: 0 4px 0 0;
	flex-shrink: 0;
	float: left;
	position: relative;
	top: 15px;
	left: 12px;
}
.custom-checkout-page #payment .payment_methods > li .payment_box {
	padding: 15px 18px;
	background: #fafafa !important;
	border-top: 1px solid #f0f0f0;
	color: #777;
	font-size: 13px;
	margin: 0;
}
.custom-checkout-page #payment .payment_methods > li .payment_box::before { display: none; }
.custom-checkout-page #payment .payment_methods > li img {max-height: 24px;width: auto;display: none;}

/* place order */
.custom-checkout-page #payment .place-order { padding: 0 !important; margin: 0; }
.custom-checkout-page #payment #place_order {
	display: block;
	width: 100%;
	padding: 16px 24px !important;
	background: #ff6a00;
	color: #fff !important;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	text-align: center;
	border-radius: 8px;
	border: none;
	cursor: pointer;
	transition: background .2s;
	margin-top: 20px;
}
.custom-checkout-page #payment #place_order:hover { background: #e65c00; }

/* terms */
.custom-checkout-page .woocommerce-terms-and-conditions-wrapper {margin: 0;}
.custom-checkout-page .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label {
	display: flex; align-items: flex-start; gap: 10px; color: #777; font-size: 13px;
}
.custom-checkout-page .woocommerce-privacy-policy-text {color: #999;font-size: 12px;}

.woocommerce-terms-and-conditions-wrapper p.form-row { display: flex; align-items: start; flex-direction: column; }
fieldset { padding: 0; border: 0; width: 100%; margin: 20px 0; }
fieldset p { color: #555; }


/* order notes */
p#order_comments_field label { display: none; }
.checkout-notes-section textarea {
	width: 100%;
	padding: 14px 16px;
	border: 1.5px solid #ddd !important;
	border-radius: 6px;
	color: #333 !important;
	font-size: 14px;
	font-family: inherit;
	resize: vertical;
	min-height: 80px;
	transition: border-color .2s;
	box-sizing: border-box;
	outline: none;
}
.checkout-notes-section textarea:focus { border-color: #ff6a00 !important; box-shadow: 0 0 0 1px rgba(255,106,0,.15); }

/* right sidebar */
.checkout-sidebar-inner { padding: 0; }

/* product list */
.checkout-products-list { margin-bottom: 20px; }
.checkout-product-row { display: flex; align-items: center; gap: 14px; padding: 10px 0; }
.checkout-product-thumb-wrap {
	position: relative;
	width: 64px;
	height: 64px;
	flex-shrink: 0;
	border-radius: 8px;
}
.checkout-product-thumb-wrap img {width: 64px;height: 64px;object-fit: cover;border-radius: 7px;display: block;border: 1px solid #e5e5e5;}
.checkout-qty-badge {
	position: absolute;
	top: -8px; right: -8px;
	background: #ff6a02;
	color: #fff;
	width: 22px; height: 22px;
	border-radius: 50%;
	font-size: 11px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
}
.checkout-product-details { flex: 1; min-width: 0; }
.checkout-product-name {
	display: block;
	color: #222;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.checkout-product-details dl,
.checkout-product-details .wc-item-meta { margin: 3px 0 0; font-size: 12px; color: #999; }
.checkout-product-details dt,
.checkout-product-details dd { display: inline; font-size: 13px; color: #777; margin: 0; }
.checkout-product-details dt { float: left; }
.checkout-product-details dt p,
.checkout-product-details dd p { margin-bottom: 0; }
.checkout-product-price { font-size: 15px; font-weight: 600; color: #333; white-space: nowrap; flex-shrink: 0; }
.checkout-item-shipping { display: block; font-size: 12px; font-weight: 400; color: #888; margin-top: 2px; }

/* discount code */
.checkout-discount-section { padding: 20px 0; }
.discount-input-wrap { display: flex; gap: 10px; }
.discount-input-wrap .discount-code-input {
	flex: 1;
	padding: 12px 14px;
	border: 1.5px solid #ddd;
	border-radius: 6px;
	background: #fff;
	color: #333;
	font-size: 14px;
	font-family: inherit;
	outline: none;
}
.discount-code-input:focus { border-color: #ff6a00; }
.discount-code-input::placeholder { color: #bbb; }
.discount-apply-btn {
	padding: 12px 22px;
	border: 1.5px solid #ddd;
	border-radius: 6px;
	background: #fff;
	color: #333;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: all .2s;
	white-space: nowrap;
}
.discount-apply-btn:hover { background: #ff6a00; border-color: #ff6a00; color: #fff; }

/* summary totals */
.checkout-summary-totals { padding-top: 20px; }
.checkout-summary-totals .summary-line {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 6px 0;
	font-size: 15px;
	color: #555;
}
.checkout-summary-totals .subtotal-line { padding-bottom: 10px; }
.checkout-summary-totals .coupon-line span:last-child { color: #4caf50; }
.checkout-summary-totals .shipping-line .shipping-tbd { color: #999; font-size: 14px; }
.shipping-breakdown { padding: 0 0 4px; margin-bottom: 2px; }
.shipping-breakdown .shipping-breakdown-item { display: flex; justify-content: space-between; align-items: center; padding: 2px 0 2px 12px; font-size: 13px; color: #888; }
.shipping-breakdown .breakdown-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 60%; }
.shipping-breakdown .breakdown-cost { flex-shrink: 0; }
.checkout-summary-totals .total-line { padding-top: 18px; border-top: 1.5px solid #e5e5e5; margin-top: 10px; }
.checkout-summary-totals .total-line span:first-child {/* font-size: 16px; */font-weight: 700;}
.checkout-summary-totals .total-line .total-value { font-size: 22px; font-weight: 800; color: #ff6a00; display: flex; gap: 5px; align-items: end; }
.checkout-summary-totals .total-line .currency-code {font-weight: 700;color: #ff6a00;vertical-align: super;font-size: 22px;}
.checkout-summary-totals .total-line .total-value .woocommerce-Price-amount { font-size: 22px; color: #ff6a00; }
a.woocommerce-privacy-policy-link {
    color: #FF5000;
}
a.woocommerce-remove-coupon {
    color: #ff0000;
}
/* footer */
.checkout-footer { margin-top: 0; padding-bottom: 0; }
.checkout-footer-divider { border: none; border-top: 1px solid #e5e5e5; margin: 0 0 20px; }
.checkout-footer-nav { display: flex; justify-content: start; flex-wrap: wrap; gap: 8px 24px; padding: 20px 0 0; }
.checkout-footer-nav a { font-size: 14px; color: #777; text-decoration: underline; transition: color .2s; }
.checkout-footer-nav a:hover { color: #ff6a00; }
a.woocommerce-terms-and-conditions-link {
    color: #ff5513;
}
/* notices */
.custom-checkout-page .woocommerce-error,
.custom-checkout-page .woocommerce-message,
.custom-checkout-page .woocommerce-info {background: #fafafa;color: #333;margin-bottom: 20px;font-size: 14px;}
.custom-checkout-page .woocommerce-error { border-left-color: #ff4444; }

.custom-checkout-page div[role="alert"] a {
    color: #222;
}

.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-privacy-policy-text p { margin: 0; text-align: left; }

/* checkout responsive */
@media (max-width: 900px) {
	.checkout-grid { grid-template-columns: 1fr; gap: 0; }
	.checkout-left { padding-right: 0; border-right: none; border-bottom: 1px solid #e5e5e5; padding-bottom: 30px; }
	.checkout-right { position: static; padding-left: 0; padding-top: 30px; }
}
@media (max-width: 600px) {
	.checkout-left { order: 1; }
	.custom-checkout-page { padding: 15px 15px 0; }
	.custom-checkout-page .form-row-first,
	.custom-checkout-page .form-row-last { flex: 0 0 100%; }
	.discount-input-wrap { flex-direction: column; }
	.checkout-section h3 { font-size: 16px; }
	.checkout-summary-totals .total-line .total-value { font-size: 18px; }
	.checkout-footer-nav { align-items: center; }
}

div#ppcp-recaptcha-v2-container { margin: 0 !important; }

.checkout-section.checkout-delivery-section .form-row label,
.checkout-section.checkout-contact-section .form-row label { text-align: left; }
.custom-checkout-page .form-row label.checkbox { display: flex; }
.custom-cart-page .woocommerce-shipping-methods input[type="radio"] {
    width: 16px;
    height: 16px;
    accent-color: #ff5000;
    margin: 0 10px 0 0 !important;
    flex-shrink: 0;
    float: left;
    position: relative;
    }
.custom-cart-page .woocommerce-shipping-methods li{
    background: #f3f3f3;
    padding: 10px 16px;
    border-radius: 8px;
    max-width: 300px;
    display: flex;
    align-items: center;
}
.custom-cart-page .summary-label{
}
.custom-cart-page .woocommerce-shipping-methods{
    margin: 10px 0 !important;
}
.custom-cart-page a.woocommerce-remove-coupon {
    color: #ff0000 !important;
}
.custom-cart-page a.woocommerce-remove-coupon:hover {
    color: #ff8c8c !important;
}
.custom-cart-page p.woocommerce-shipping-destination strong{
    font-weight: 400;
    font-size: 16px;
}

.shipping-calculator-button {
    background: #ececec;
    padding: 5px 20px;
    border-radius: 8px;
    display: block;
    width: max-content;
    font-size: 15px;
    font-weight: 500;
}
.custom-cart-page .summary-row.coupon-row .summary-value{
	font-weight: 400 !important;
}
.custom-cart-page .woocommerce-shipping-methods{
	display: flex;
	gap: 15px;
}
form.woocommerce-shipping-calculator {
    margin: 10px 0;
}
@media(max-width: 600px){
	
    .custom-cart-page .product-actions{
        
    }
    .cs-checkout-warp .woocommerce table.shop_table.cart-table thead {
        display: none
    }
    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item td:before {
        content: attr(data-title) !important;
        margin-inline-end: auto;
        float: unset !important;
        font-size: 14px !important;
        font-weight: 400 !important;
    }

    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item {
        display: flex;
        flex-direction: column;
        position: relative;
        padding-inline-start: 100px;
    }
    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item  > td{
        display: flex;
    }
    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item  > td.product-thumbnail {
        position: absolute;
        width:100px;
        left: 0;
        border: 0 !important;
        justify-content: center;
    }
    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item  > td.product-thumbnail:before{
        display: none;
    }
   .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item  .product-name:before{
       display: none;
   }
    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item  .product-name a{
        font-size: 13px;
        padding-right: 30px;
    }
    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item  .product-name {
        flex-direction: column;
    }
    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item  .product-name  .product-actions{
    position: absolute;
    right: 7px;
    }
    .cs-checkout-warp tr.woocommerce-cart-form__cart-item.cart_item .product-name .product-actions a{
        padding: 0;
    }
    .custom-cart-page .cart-table tbody td{
        padding: 10px 0;
    }
    .cs-checkout-warp .woocommerce-cart-form__cart-item.cart_item:nth-child(2n){
        background-color: #f5f5f5;
    }
    .custom-cart-page{
        padding: 10px
    }
    .footer-cart-wrap{
        width: 100%;
    }
	.custom-cart-page .woocommerce-shipping-methods li{
		max-width: 100%;
		font-size: 14px
	}

	.tax-shipping-note{
		text-align: left;
	}
}

