/**
 * WooCommerce 主题特定样式覆盖
 */

/* 移除 WooCommerce 默认包装与干扰 */
.woocommerce .woocommerce-breadcrumb { display: none; }
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering { display: none !important; }
.woocommerce-products-header { display: none; }

/* 主内容包装（主题模板自行处理布局） */
.woocommerce main.main-content { padding: 0; }

/* 商品列表 grid 覆盖 */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 15px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
/* 清除 WooCommerce 默认的 clearfix 伪元素
   WooCommerce 在 ul.products 上加了 ::before/::after 做 float clear，
   在 grid 布局下这些伪元素会被当作 grid item 占据第一格，
   导致首商品被推到第二列（"开头空一个商品位"的根因） */
.woocommerce ul.products::before,
.woocommerce-page ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::after {
	content: none !important;
	display: none !important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	width: auto !important;
	margin: 0 !important;
	padding: 5px !important;
	float: none !important;
}
@media (max-width: 1280px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 1024px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
/* 小屏保持 2 列（用户要求：商城/分类/标签页移动端一行两个）
   注意：此断点不可改为 1fr，否则会覆盖 mobile.css 的 2 列规则（特异性 0,0,3,0 > 0,0,2,0） */
@media (max-width: 560px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; }
}

/* 隐藏 WooCommerce 默认商品卡内部元素（主题自行渲染） */
/* 用 > 直接子元素选择器：只隐藏 WooCommerce 默认输出，不影响主题 .product-layout 内的 .price */
.woocommerce ul.products li.product > .woocommerce-loop-product__title,
.woocommerce ul.products li.product > .price,
.woocommerce ul.products li.product > .star-rating,
.woocommerce ul.products li.product > .button,
.woocommerce ul.products li.product > a img { display: none !important; }

/* WooCommerce 商品详情页变量商品 */
.woocommerce div.product form.cart .variations { width: 100%; margin-bottom: 15px; }
.woocommerce div.product form.cart .variations td { padding: 5px 0; }
.woocommerce div.product form.cart .variations select { padding: 8px 12px; border: 1px solid var(--theme-border); }
.woocommerce div.product form.cart .single_variation_wrap { margin-top: 15px; }
.woocommerce-variation-add-to-cart { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.woocommerce-variation-add-to-cart .quantity { float: none !important; margin: 0 !important; }
.woocommerce-variation-add-to-cart .qty {
	width: 60px !important; padding: 8px; border: 1px solid var(--theme-border); text-align: center;
}
.woocommerce-variation-add-to-cart .single_add_to_cart_button {
	background: var(--theme-dark) !important; color: #fff !important;
	padding: 10px 24px !important; font-weight: 700 !important; text-transform: uppercase;
	font-size: 13px !important; border-radius: 0 !important;
}
.woocommerce-variation-add-to-cart .single_add_to_cart_button:hover {
	background: var(--theme-primary) !important;
}

/* 评论 */
.woocommerce #reviews #comments ol.commentlist { padding-left: 0; list-style: none; }
.woocommerce #reviews #comments ol.commentlist li { padding: 15px 0; border-bottom: 1px solid var(--theme-border); }
.woocommerce #review_form #respond .form-submit input {
	background: var(--theme-dark); color: #fff; border: 0; padding: 10px 24px; cursor: pointer; font-weight: 700; text-transform: uppercase;
}
.woocommerce #review_form #respond .form-submit input:hover { background: var(--theme-primary); }

/* 商品图片 */
.woocommerce div.product div.images { float: none !important; width: auto !important; }
.woocommerce div.product div.images img { display: none; } /* 使用主题自定义画廊 */

/* 隐藏 WooCommerce 默认 tab */
.woocommerce div.product .woocommerce-tabs { display: none; }

/* 隐藏默认相关商品区域（主题使用自定义） */
.woocommerce div.product .related,
.woocommerce div.product .upsells { display: none; }

/* 简码商品列表的网格适配 */
.woocommerce ul.products li.product-category a img { display: block !important; }

/* 购物车与结账简化 */
.woocommerce table.shop_table { border: 1px solid var(--theme-border); border-radius: 4px; border-collapse: separate; border-spacing: 0; }
.woocommerce table.shop_table th { background: transparent; color: var(--theme-text-light); font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: 0.04em; }
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { padding: 16px 16px; text-align: left; vertical-align: middle; }
.woocommerce table.shop_table tbody tr { border-bottom: 1px solid var(--theme-border); }
.woocommerce table.shop_table tbody tr:last-child { border-bottom: 0; }

/* ====== 购物车页：彻底统一样式，移除所有阴影/背景差异 ====== */

/* 1. 统一所有行背景为透明，覆盖 WC 默认偶数行灰底（smallscreen.css 的 nth-child(2n) td 背景） */
.woocommerce-cart-form table.shop_table tbody tr td,
.woocommerce-cart-form__cart-item,
.woocommerce-cart-form .cart_item { background: transparent !important; }

/* 2. 商品首图：放大到 110x110，object-fit: contain 完整展示不裁剪，白底 + 轻边框 */
.woocommerce-cart-form__cart-item .product-thumbnail img,
.woocommerce-cart-form .cart_item .product-thumbnail img {
	width: 110px !important;
	height: 110px !important;
	max-width: 110px !important;
	object-fit: contain !important;
	background: #fff !important;
	border-radius: 8px !important;
	border: 1px solid var(--theme-border) !important;
	padding: 4px !important;
	box-shadow: none !important;
}
.woocommerce-cart-form__cart-item .product-thumbnail,
.woocommerce-cart-form .cart_item .product-thumbnail { width: 130px !important; min-width: 130px !important; text-align: center; }

/* 3. 移动端强制显示商品图（WC 默认 smallscreen.css 在 ≤768px 隐藏 .product-thumbnail） */
@media (max-width: 768px) {
	.woocommerce-cart-form table.shop_table .product-thumbnail,
	.woocommerce-cart-form__cart-item .product-thumbnail,
	.woocommerce-cart-form .cart_item .product-thumbnail { display: table-cell !important; }
	.woocommerce-cart-form__cart-item .product-thumbnail img,
	.woocommerce-cart-form .cart_item .product-thumbnail img { width: 80px !important; height: 80px !important; max-width: 80px !important; }
	.woocommerce-cart-form__cart-item .product-thumbnail,
	.woocommerce-cart-form .cart_item .product-thumbnail { width: 96px !important; min-width: 96px !important; }
}

/* 4. 商品名：移除任何背景，强调字重和颜色 */
.woocommerce-cart-form__cart-item .product-name,
.woocommerce-cart-form .cart_item .product-name { background: transparent !important; padding: 16px 16px !important; }
.woocommerce-cart-form__cart-item .product-name a,
.woocommerce-cart-form .cart_item .product-name a {
	background: transparent !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--theme-dark) !important;
}
.woocommerce-cart-form__cart-item .product-name a:hover,
.woocommerce-cart-form .cart_item .product-name a:hover { color: var(--theme-primary) !important; }
/* 移除变体属性 dl 的默认背景 */
.woocommerce-cart-form__cart-item .product-name .variation,
.woocommerce-cart-form .cart_item .product-name .variation { background: transparent !important; margin: 6px 0 0; font-size: 13px; }

/* 5. 数量输入框：移除丑陋的 inset 边框，统一现代风格 */
.woocommerce-cart-form .quantity .qty,
.woocommerce-cart-form .product-quantity .qty {
	border: 1px solid var(--theme-border) !important;
	border-radius: 4px !important;
	padding: 6px 8px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--theme-dark) !important;
	background: #fff !important;
	box-shadow: none !important;
	outline: none !important;
}
.woocommerce-cart-form .quantity .qty:focus,
.woocommerce-cart-form .product-quantity .qty:focus { border-color: var(--theme-primary) !important; }

/* 6. cart_totals 区域：移除灰底，统一透明背景 */
.cart_totals,
.woocommerce .cart_totals { background: transparent !important; }
.cart_totals table.shop_table { background: transparent !important; }
.cart_totals table.shop_table th { background: transparent !important; }

/* 7. coupon 输入框美化 */
.woocommerce-cart-form .coupon #coupon_code {
	border: 1px solid var(--theme-border) !important;
	border-radius: 4px !important;
	padding: 8px 12px !important;
	font-size: 14px !important;
}
.woocommerce-cart-form .coupon .button { border-radius: 4px !important; }

.woocommerce .cart .button,
.woocommerce .checkout-button {
	background: var(--theme-primary) !important; color: #fff !important;
	padding: 10px 20px !important; border: 0 !important; font-weight: 700 !important; text-transform: uppercase;
	border-radius: 4px !important; transition: background .2s;
}
.woocommerce .cart .button:hover,
.woocommerce .checkout-button:hover { background: var(--theme-dark) !important; }

/* 返回商店按钮：覆盖 WooCommerce 默认灰色，统一主题深色 */
.woocommerce .return-to-shop .button,
.woocommerce-cart .return-to-shop a.button {
	background: var(--theme-dark) !important; color: #fff !important;
	border-radius: 4px !important; padding: 12px 24px !important;
	font-weight: 700 !important; text-transform: uppercase; font-size: 13px !important;
	border: 0 !important; transition: background .2s;
}
.woocommerce .return-to-shop .button:hover,
.woocommerce-cart .return-to-shop a.button:hover { background: var(--theme-primary) !important; color: #fff !important; }

/* Coupon 按钮（Apply）统一主题深色 + 4px 圆角 */
.woocommerce-cart-form .coupon button.button,
.woocommerce form.checkout_coupon button.button {
	background: var(--theme-dark) !important; color: #fff !important;
	border-radius: 4px !important; padding: 10px 20px !important;
	font-weight: 700 !important; text-transform: uppercase; font-size: 13px !important;
	border: 0 !important; transition: background .2s;
}
.woocommerce-cart-form .coupon button.button:hover,
.woocommerce form.checkout_coupon button.button:hover { background: var(--theme-primary) !important; }

/* Update cart 按钮 */
.woocommerce-cart-form button[name="update_cart"] {
	background: var(--theme-bg-light) !important; color: var(--theme-text) !important;
	border: 1px solid var(--theme-border) !important; border-radius: 4px !important;
	padding: 10px 20px !important; font-weight: 700 !important; text-transform: uppercase; font-size: 13px !important;
	transition: background .2s;
}
.woocommerce-cart-form button[name="update_cart"]:hover { background: var(--theme-border) !important; }

/* Destructive cart action: quieter than the primary checkout controls. */
.woocommerce-cart-form .theme577-clear-cart {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 7px;
	float: none !important;
	margin: 0 10px 0 0 !important;
	padding: 10px 16px !important;
	border: 1px solid #d9dde0 !important;
	border-radius: 4px !important;
	background: #fff !important;
	color: #5b6268 !important;
	font-size: 12px !important;
	font-weight: 650 !important;
	line-height: 1.2;
	text-transform: none !important;
	box-shadow: none !important;
}
.woocommerce-cart-form .theme577-clear-cart:hover {
	border-color: #c53d33 !important;
	background: #fff5f4 !important;
	color: #b93229 !important;
}

.woocommerce-cart .wc-proceed-to-checkout .theme577-continue-shopping {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin: 0 0 10px !important;
	padding: 13px 20px !important;
	border: 1px solid #cfd4d8 !important;
	background: #fff !important;
	color: #343b40 !important;
	font-size: 13px !important;
	font-weight: 650 !important;
	text-transform: uppercase;
}
.woocommerce-cart .wc-proceed-to-checkout .theme577-continue-shopping:hover {
	background: #f3f5f6 !important;
	color: #171a1d !important;
}

/* Proceed to Checkout 按钮 */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.button {
	border-radius: 4px !important; font-size: 14px !important; padding: 14px 24px !important;
}

/* 空购物车页面 */
.woocommerce-cart .cart-empty { font-size: 20px; font-weight: 700; color: var(--theme-dark); padding: 40px 0 20px; text-align: center; }
.woocommerce-cart .return-to-shop { text-align: center; padding-bottom: 40px; }

/* Cart totals 区 */
.cart-collaterals .cart_totals { background: #fafafa; border-radius: 4px; padding: 16px 20px; }
.cart-collaterals .cart_totals h2 { font-size: 18px; font-weight: 700; color: var(--theme-dark); margin-bottom: 12px; }
.cart-collaterals .cart_totals table.shop_table { border: 1px solid var(--theme-border); border-radius: 4px; background: #fff; }
.cart-collaterals .cart_totals table th { font-weight: 700; color: var(--theme-dark); }
.cart-collaterals .cart_totals .order-total th,
.cart-collaterals .cart_totals .order-total td { font-size: 16px; font-weight: 700; }

/* Checkout 页面：表单输入框统一样式 */
.woocommerce-checkout form.checkout .form-row input.input-text,
.woocommerce-checkout form.checkout .form-row textarea,
.woocommerce-checkout form.checkout .form-row select {
	border: 1px solid var(--theme-border) !important; border-radius: 4px !important;
	padding: 10px 14px !important; font-size: 14px !important;
	transition: border-color .2s;
}
.woocommerce-checkout form.checkout .form-row input.input-text:focus,
.woocommerce-checkout form.checkout .form-row textarea:focus,
.woocommerce-checkout form.checkout .form-row select:focus { border-color: var(--theme-secondary) !important; }
.woocommerce-checkout form.checkout .form-row label { font-weight: 600; color: var(--theme-dark); margin-bottom: 4px; }

/* Checkout 布局：左右两栏 */
.woocommerce-checkout form.checkout .col2-set { display: flex; gap: 30px; flex-wrap: wrap; }
.woocommerce-checkout form.checkout .col2-set .col-1,
.woocommerce-checkout form.checkout .col2-set .col-2 { flex: 1 1 calc(50% - 15px); min-width: 300px; }
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3 { font-size: 18px; font-weight: 700; color: var(--theme-dark); margin-bottom: 16px; padding-bottom: 8px; border-bottom: 2px solid var(--theme-border); }

/* Checkout 订单摘要 */
.woocommerce-checkout-review-order { background: #fafafa; border-radius: 4px; padding: 20px; margin-top: 24px; }
.woocommerce-checkout-review-order h3 { font-size: 18px; font-weight: 700; color: var(--theme-dark); margin-bottom: 12px; padding-bottom: 8px; border-bottom: 2px solid var(--theme-border); }
.woocommerce-checkout-review-order-table { border: 1px solid var(--theme-border); border-radius: 4px; background: #fff; }
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td { padding: 10px 14px; font-size: 14px; }
.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td { font-size: 16px; font-weight: 700; }

/* 支付方式区域 */
.woocommerce-checkout-payment { background: #fff; border: 1px solid var(--theme-border); border-radius: 4px; padding: 16px 20px; margin-top: 16px; }
.woocommerce-checkout-payment ul.wc_payment_methods { list-style: none; padding: 0; margin: 0; }
.woocommerce-checkout-payment ul.wc_payment_methods li { padding: 12px 0; border-bottom: 1px solid var(--theme-border); display: flex; align-items: center; gap: 10px; }
.woocommerce-checkout-payment ul.wc_payment_methods li:last-child { border-bottom: 0; }
.woocommerce-checkout-payment ul.wc_payment_methods li label { font-weight: 600; color: var(--theme-dark); cursor: pointer; }
.woocommerce-checkout-payment ul.wc_payment_methods li .payment_box { background: var(--theme-bg-light); border-radius: 4px; padding: 10px 14px; margin-top: 8px; font-size: 13px; color: var(--theme-text-light); width: 100%; }
.woocommerce-checkout-payment #place_order {
	background: var(--theme-primary) !important; color: #fff !important;
	border: 0 !important; border-radius: 4px !important;
	padding: 14px 30px !important; font-size: 15px !important; font-weight: 700 !important; text-transform: uppercase !important;
	width: 100%; margin-top: 12px; cursor: pointer; transition: background .2s;
}
.woocommerce-checkout-payment #place_order:hover { background: var(--theme-dark) !important; }

/* Checkout 优惠券切换提示 */
.woocommerce-form-coupon-toggle, .woocommerce-form-login-toggle { padding: 12px 16px; background: var(--theme-bg-light); border-radius: 4px; margin-bottom: 16px; }
.woocommerce-form-coupon-toggle a, .woocommerce-form-login-toggle a { color: var(--theme-primary); font-weight: 600; }

/* Checkout coupon 表单 */
form.checkout_coupon { border: 1px solid var(--theme-border) !important; border-radius: 4px !important; padding: 16px !important; margin-bottom: 16px; }
form.checkout_coupon input.input-text { border: 1px solid var(--theme-border); border-radius: 4px; padding: 10px 14px; }
form.checkout_coupon button.button { border-radius: 4px !important; }

/* 订单完成页 */
.woocommerce-order .woocommerce-thankyou-order-received { background: #f0fdf4; color: #15803d; border: 1px solid #bbf7d0; border-radius: 4px; padding: 16px 20px; font-size: 18px; font-weight: 700; text-align: center; margin-bottom: 24px; }
.woocommerce-order-overview { border: 1px solid var(--theme-border) !important; border-radius: 4px; overflow: hidden; margin-bottom: 24px; }
.woocommerce-order-overview li { border-bottom: 1px solid var(--theme-border) !important; }
.woocommerce-order-overview li:last-child { border-bottom: 0 !important; }
.woocommerce-order-details h2, .woocommerce-customer-details h2 { font-size: 18px; font-weight: 700; color: var(--theme-dark); margin-bottom: 12px; }
.woocommerce-table--order-details { border: 1px solid var(--theme-border); border-radius: 4px; }

/* Cart/Checkout 消息提示
   --------------------------------------------------------------------
   关键：padding-left 必须 ≥ 40px，给 WC ::before icon 留出位置
   （WC icon 默认 left:1.5em/24px + 文字 16px 起始，padding 太小时 icon 落进文字区造成重叠）
   修复前：padding: 12px 16px → icon 与文字重叠
   修复后：padding: 12px 20px 12px 50px → icon 在 18px 位置，文字从 50px 开始

   !!important 原因：WooCommerce/主题其它规则会覆盖（如 .woocommerce-cart .cart-empty { padding: 20px 0 }
   特异性 0,0,2,0 覆盖 .woocommerce-info 0,0,1,0），必须用 !important 锁定
   -------------------------------------------------------------------- */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	border-radius: 4px !important;
	border: 0;
	padding: 12px 20px 12px 50px !important;
	position: relative;
	word-wrap: break-word;
}
.woocommerce-message { background: #f0fdf4; color: #15803d; }
.woocommerce-info { background: #eff6ff; color: #1e40af; }
.woocommerce-error { background: #fef2f2; color: #991b1b; }
/* 调整 ::before icon 位置（与 border-left/文字 错开） */
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before {
	left: 18px !important;
	top: 50% !important;
	transform: translateY(-50%);
	font-size: 16px !important;
}
/* 兼容：cart-empty 类（在 .woocommerce-info 上的更高特异性组合）必须同样预留 50px 左侧 */
.woocommerce-cart .cart-empty,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-message {
	padding-left: 50px !important;
}
.woocommerce-cart .cart-empty::before,
.woocommerce-checkout .woocommerce-info::before,
.woocommerce-checkout .woocommerce-error::before,
.woocommerce-checkout .woocommerce-message::before {
	left: 18px !important;
}

/* ==========================================================================
   Mini Cart 购物车下拉（页眉 hover 弹出）
   设计：电商级精致样式
   ========================================================================== */
.cart-dropdown .widget_shopping_cart_content { padding: 0; }

/* 空购物车 */
.cart-dropdown .woocommerce-mini-cart__empty-message {
	padding: 32px 20px;
	text-align: center;
	color: var(--theme-text-light);
	font-size: 14px;
}
.cart-dropdown .woocommerce-mini-cart__empty-message::before {
	content: "\f07a";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	display: block;
	font-size: 36px;
	color: var(--theme-border);
	margin-bottom: 12px;
}

/* 商品列表区：固定高度 + 自定义滚动条 */
.cart-dropdown .cart_list {
	list-style: none;
	padding: 0;
	margin: 0;
	max-height: 320px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: var(--theme-border) transparent;
}
.cart-dropdown .cart_list::-webkit-scrollbar { width: 6px; }
.cart-dropdown .cart_list::-webkit-scrollbar-thumb {
	background: var(--theme-border);
	border-radius: 3px;
}
.cart-dropdown .cart_list::-webkit-scrollbar-thumb:hover { background: var(--theme-text-light); }

/* 单个商品项 */
.cart-dropdown .woocommerce-mini-cart-item {
	padding: 12px 16px;
	border-bottom: 1px solid var(--theme-bg-light);
	display: grid !important;
	grid-template-columns: 72px 1fr auto;
	gap: 12px;
	align-items: flex-start;
	position: relative;
	transition: background 0.18s ease;
}
.cart-dropdown .woocommerce-mini-cart-item:hover { background: #fafafa; }
.cart-dropdown .woocommerce-mini-cart-item:last-child { border-bottom: 0; }

/* 删除按钮：右上角 × 图标 */
.cart-dropdown .remove_from_cart_button {
	position: absolute !important;
	top: 8px;
	right: 8px;
	width: 22px;
	height: 22px;
	line-height: 20px;
	text-align: center;
	font-size: 14px !important;
	color: #bbb !important;
	background: transparent !important;
	border-radius: 50%;
	transition: all 0.18s ease;
	padding: 0 !important;
	margin: 0 !important;
	font-weight: 400 !important;
	text-decoration: none !important;
}
.cart-dropdown .remove_from_cart_button:hover {
	color: #fff !important;
	background: var(--theme-primary) !important;
}

/* 商品图片：72x72 圆角 + 边框 */
.cart-dropdown .woocommerce-mini-cart-item img {
	width: 72px !important;
	height: 72px !important;
	object-fit: cover;
	border-radius: 6px;
	border: 1px solid var(--theme-bg-light);
	margin: 0 !important;
	background: #fff;
}

/* 商品名/链接 */
.cart-dropdown .woocommerce-mini-cart-item > a:not(.remove_from_cart_button) {
	display: block !important;
	font-size: 13px;
	font-weight: 500;
	color: var(--theme-dark) !important;
	line-height: 1.4;
	text-decoration: none;
	padding-right: 24px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	max-height: 36px;
}
.cart-dropdown .woocommerce-mini-cart-item > a:not(.remove_from_cart_button):hover { color: var(--theme-primary) !important; }

/* 商品价格 + size 标签：放在第二个 a 下方 */
.cart-dropdown .woocommerce-mini-cart-item .quantity {
	display: block !important;
	font-size: 12px;
	color: var(--theme-text-light);
	margin-top: 4px;
	white-space: nowrap;
}
.cart-dropdown .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
	color: var(--theme-primary);
	font-weight: 700;
}

/* 第三个 grid 列：数量选择器（暂用文本，JS 可扩展） */
.cart-dropdown .woocommerce-mini-cart-item .mini-cart-qty {
	font-size: 12px;
	color: var(--theme-text-light);
	padding-top: 4px;
	text-align: right;
}

/* Total 小计行 */
.cart-dropdown .total {
	display: flex !important;
	justify-content: space-between;
	align-items: center;
	padding: 14px 16px !important;
	margin: 0;
	border-top: 1px solid var(--theme-border);
	border-bottom: 1px solid var(--theme-border);
	background: #fafafa;
	font-size: 14px;
	font-weight: 700;
	color: var(--theme-dark);
}
.cart-dropdown .total strong { font-weight: 700; }
.cart-dropdown .total .woocommerce-Price-amount {
	color: var(--theme-primary);
	font-size: 16px;
	font-weight: 800;
}

/* 按钮区 */
.cart-dropdown .woocommerce-mini-cart__buttons.buttons {
	display: flex !important;
	gap: 8px;
	padding: 12px 16px 16px !important;
	margin: 0;
}
.cart-dropdown .woocommerce-mini-cart__buttons.buttons a {
	flex: 1;
	display: flex !important;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 11px 12px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: 6px;
	transition: all 0.2s ease !important;
	text-decoration: none !important;
	min-height: 42px;
}
.cart-dropdown .woocommerce-mini-cart__buttons a.button {
	background: var(--theme-dark) !important;
	color: #fff !important;
	border: 1px solid var(--theme-dark) !important;
}
.cart-dropdown .woocommerce-mini-cart__buttons a.button:hover {
	background: #1a2228 !important;
	border-color: #1a2228 !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 10px rgba(44,54,64,0.25);
}
.cart-dropdown .woocommerce-mini-cart__buttons a.checkout {
	background: var(--theme-primary) !important;
	color: #fff !important;
	border: 1px solid var(--theme-primary) !important;
}
.cart-dropdown .woocommerce-mini-cart__buttons a.checkout:hover {
	background: #d8392a !important;
	border-color: #d8392a !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 10px rgba(239,80,66,0.35);
}

/* mini-cart 头部标题（JS 注入） */
.cart-dropdown .mini-cart-header {
	display: flex !important;
	justify-content: space-between;
	align-items: center;
	padding: 14px 16px;
	border-bottom: 1px solid var(--theme-bg-light);
	background: #fff;
}
.cart-dropdown .mini-cart-title {
	font-size: 14px;
	font-weight: 700;
	color: var(--theme-dark);
	letter-spacing: 0.3px;
}
.cart-dropdown .mini-cart-count {
	font-size: 12px;
	color: var(--theme-text-light);
	background: var(--theme-bg-light);
	padding: 3px 9px;
	border-radius: 10px;
	font-weight: 600;
}

/* 价格过滤器组件 */
.woocommerce .widget_price_filter .price_slider_wrapper { display: none; }

/* 防止 WooCommerce 默认排序框出现重复 */
.woocommerce-ordering { display: none !important; }

/* ========================================================================== 
   Reference-style cart and checkout: compact, functional and consistent.
   ========================================================================== */
.theme577-checkout-steps {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	width: min(720px, 100%);
	margin: 4px auto 30px;
	padding: 0;
	list-style: none;
}
.theme577-checkout-steps li {
	position: relative;
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 7px;
	min-width: 0;
	color: #92979b;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.25;
	text-align: center;
}
.theme577-checkout-steps li:not(:last-child)::after {
	content: '';
	position: absolute;
	top: 15px;
	left: calc(50% + 20px);
	width: calc(100% - 40px);
	height: 1px;
	background: #dfe2e4;
}
.theme577-checkout-steps .theme577-step-number {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 31px;
	height: 31px;
	border: 1px solid #d5d9dc;
	border-radius: 50%;
	background: #fff;
	color: #747b81;
	font-size: 12px;
	font-weight: 750;
}
.theme577-checkout-steps li.is-active,
.theme577-checkout-steps li.is-complete { color: #171a1d; }
.theme577-checkout-steps li.is-active .theme577-step-number,
.theme577-checkout-steps li.is-complete .theme577-step-number {
	border-color: #171a1d;
	background: #171a1d;
	color: #fff;
}
.theme577-checkout-steps li.is-complete::after { background: #171a1d; }

.woocommerce-cart-form table.shop_table.cart {
	border: 1px solid #e5e7e9;
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
}
.woocommerce-cart-form table.shop_table.cart thead th {
	padding-top: 13px;
	padding-bottom: 13px;
	background: #f6f7f8;
	color: #697077;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .055em;
}
.woocommerce-cart-form table.shop_table.cart tbody tr.cart_item td { border-top: 1px solid #eceeef; }
.woocommerce-cart-form__cart-item .product-thumbnail img,
.woocommerce-cart-form .cart_item .product-thumbnail img {
	width: 96px !important;
	height: 96px !important;
	max-width: 96px !important;
	border-color: #eceeef !important;
	border-radius: 9px !important;
}
.woocommerce-cart-form__cart-item .product-thumbnail,
.woocommerce-cart-form .cart_item .product-thumbnail { width: 116px !important; min-width: 116px !important; }
.woocommerce-cart-form__cart-item .product-name a,
.woocommerce-cart-form .cart_item .product-name a {
	font-size: var(--theme-product-title-size, 14px) !important;
	font-weight: var(--theme-product-title-weight, 600) !important;
	line-height: 1.42;
	color: #171a1d !important;
}
.woocommerce-cart-form .cart_item .product-name .variation {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 3px 7px;
	margin-top: 8px;
	font-size: 12px;
	line-height: 1.35;
	color: #747b81;
}
.woocommerce-cart-form .cart_item .product-name .variation dt,
.woocommerce-cart-form .cart_item .product-name .variation dd { margin: 0; padding: 0; }
.woocommerce-cart-form .cart_item .product-name .variation p { margin: 0; }
.woocommerce-cart-form .cart_item .product-price,
.woocommerce-cart-form .cart_item .product-subtotal,
.woocommerce-cart-form .cart_item .product-price .amount,
.woocommerce-cart-form .cart_item .product-subtotal .amount { color: #171a1d !important; font-size: 14px; font-weight: 700; }
.woocommerce-cart-form .cart_item .product-remove .remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #f2f3f4;
	color: #777e83 !important;
	font-size: 18px !important;
	line-height: 1;
}
.woocommerce-cart-form .cart_item .product-remove .remove:hover { background: #171a1d; color: #fff !important; }
.woocommerce-cart-form table.shop_table.cart .actions { padding: 16px !important; border-top: 1px solid #eceeef; background: #fbfbfc !important; }
.woocommerce-cart-form .coupon { display: inline-flex; align-items: center; gap: 8px; }
.woocommerce-cart-form .coupon #coupon_code { width: 190px; height: 42px; padding: 0 12px !important; border-color: #dfe2e4 !important; border-radius: 6px !important; }
.woocommerce-cart-form .coupon button.button,
.woocommerce-cart-form button[name="update_cart"] { min-height: 42px; border-radius: 6px !important; }

.cart-collaterals {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 410px);
	align-items: start;
	gap: 32px;
	margin-top: 28px;
}
.cart-collaterals::before,
.cart-collaterals::after { content: none !important; display: none !important; }
.cart-collaterals .cross-sells { width: auto !important; float: none !important; }
.cart-collaterals .cross-sells > h2 { margin: 0 0 16px; color: #171a1d; font-size: 18px; font-weight: 750; }
.cart-collaterals .cart_totals,
.woocommerce .cart-collaterals .cart_totals {
	position: sticky;
	top: 132px;
	width: 100% !important;
	float: none !important;
	padding: 22px;
	border: 1px solid #e2e5e7;
	border-radius: 12px;
	background: #f7f8f8 !important;
}
.cart-collaterals .cart_totals h2 { margin: 0 0 14px; color: #171a1d; font-size: 20px; font-weight: 750; }
.cart-collaterals .cart_totals table.shop_table { margin-bottom: 14px; border: 0; border-radius: 0; background: transparent !important; }
.cart-collaterals .cart_totals table.shop_table th,
.cart-collaterals .cart_totals table.shop_table td { padding: 11px 0; border-top: 1px solid #e1e4e6; background: transparent !important; font-size: 13px; }
.cart-collaterals .cart_totals table.shop_table td { text-align: right; }
.cart-collaterals .cart_totals .order-total th,
.cart-collaterals .cart_totals .order-total td,
.cart-collaterals .cart_totals .order-total .amount { padding-top: 14px; color: #171a1d !important; font-size: 17px; }
.woocommerce-cart .wc-proceed-to-checkout { padding: 4px 0 0; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.button {
	min-height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 13px;
	border-radius: 7px !important;
	background: #050505 !important;
	font-size: 15px !important;
	letter-spacing: .025em;
	white-space: nowrap;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.button:hover { background: #292929 !important; }
.theme577-cart-reassurance { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; padding-top: 4px; }
.theme577-cart-reassurance span { display: flex; flex-direction: column; align-items: center; gap: 5px; min-width: 0; color: #697077; font-size: 10px; font-weight: 600; line-height: 1.25; text-align: center; }
.theme577-cart-reassurance .fa { color: #171a1d; font-size: 15px; }

.woocommerce-checkout form.checkout .col2-set,
.woocommerce-checkout-review-order { border: 1px solid #e5e7e9; border-radius: 12px; background: #fff; }
.woocommerce-checkout form.checkout .col2-set,
.woocommerce-checkout-review-order { padding: 22px; }
.woocommerce-checkout-payment { border-radius: 9px; }
.woocommerce-checkout-payment #place_order { min-height: 52px; border-radius: 7px !important; background: #050505 !important; }
.woocommerce-checkout-payment #place_order:hover { background: #292929 !important; }

@media (max-width: 991px) {
	.cart-collaterals { grid-template-columns: 1fr; gap: 24px; }
	.cart-collaterals .cart_totals,
	.woocommerce .cart-collaterals .cart_totals { position: static; }
}
