/**
 * CUTEPOL WooCommerce 样式：购物车/结账/账户/商店页按原站设计语言美化。
 */

/* ---------- 商店归档 ---------- */
.cutepol-woo-page ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; margin: 0; padding: 0; list-style: none; }
.cutepol-woo-page ul.products::before, .cutepol-woo-page ul.products::after { display: none; }
.cutepol-woo-page ul.products li.product { width: 100% !important; margin: 0 !important; float: none !important; }
.cutepol-woo-page ul.products li.product a { text-decoration: none; }
@media (max-width: 1024px) { .cutepol-woo-page ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .cutepol-woo-page ul.products { grid-template-columns: 1fr; } }

.cutepol-woo-page .woocommerce-products-header__title { font-family: var(--font-display); font-weight: 800; font-size: clamp(1.75rem, 4vw, 2.5rem); color: #2b2521; letter-spacing: -0.02em; }
.cutepol-woo-page .woocommerce-result-count { color: #5c534b; font-weight: 600; }
.cutepol-woo-page .woocommerce-ordering select { border-radius: 9999px; padding: 0.5rem 1.25rem; }

/* ---------- 通知 ---------- */
.cutepol-woo-page .woocommerce-message, .cutepol-woo-page .woocommerce-info, .cutepol-woo-page .woocommerce-error,
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	border: none !important;
	border-radius: 1.25rem;
	background: #fff;
	box-shadow: 0 4px 24px rgba(90,60,20,0.08);
	padding: 1rem 1.25rem !important;
	color: #2b2521;
	font-weight: 700;
	margin-bottom: 1.5rem;
	list-style: none;
}
.woocommerce-message { border-top: 4px solid #8fbb60 !important; }
.woocommerce-info { border-top: 4px solid #e8963c !important; }
.woocommerce-error { border-top: 4px solid #e58ca0 !important; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { color: #2b2521 !important; }

/* ---------- 按钮 ---------- */
.cutepol-woo-page a.button, .cutepol-woo-page button.button, .cutepol-woo-page input.button,
.cutepol-woo-page #respond input#submit, .woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce #respond input#submit, .woocommerce a.button.alt,
.woocommerce button.button.alt, .woocommerce input.button.alt, #place_order {
	background: #2b2521 !important;
	color: #fff !important;
	border-radius: 9999px !important;
	font-weight: 800 !important;
	font-size: 0.875rem;
	padding: 0.85rem 1.75rem !important;
	transition: transform 0.3s, box-shadow 0.3s !important;
	border: none;
	box-shadow: 0 4px 12px rgba(43,37,33,0.18);
}
.cutepol-woo-page a.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, #place_order:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(43,37,33,0.22) !important; }
.woocommerce a.button:not(.alt):hover, .woocommerce button.button:not(.alt):hover { background: #5c534b !important; }
.woocommerce a.button.disabled, .woocommerce button.button:disabled { opacity: 0.5; pointer-events: none; }

/* ---------- 表格（购物车） ---------- */
.cutepol-woo-page table.shop_table { border: none; border-collapse: separate; border-spacing: 0; border-radius: 1.5rem; background: #fff; box-shadow: 0 4px 24px rgba(90,60,20,0.07); overflow: hidden; padding: 0.5rem; }
.cutepol-woo-page table.shop_table th { font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.12em; color: #5c534b; font-weight: 800; padding: 1rem; border-bottom: 2px solid rgba(43,37,33,0.06); }
.cutepol-woo-page table.shop_table td { padding: 1rem; border-top: 1px solid rgba(43,37,33,0.05); font-weight: 600; color: #2b2521; }
.cutepol-woo-page table.shop_table img { border-radius: 0.75rem; }
.cutepol-woo-page table.shop_table .product-name a { font-weight: 800; color: #2b2521; text-decoration: none; }
.cutepol-woo-page table.shop_table .product-name a:hover { text-decoration: underline; }

/* 数量输入 */
.cutepol-woo-page .quantity .qty { width: 4.5rem; text-align: center; border-radius: 9999px; border: 2px solid rgba(43,37,33,0.1); padding: 0.5rem 0.75rem; font-weight: 800; }
#coupon_code { border-radius: 9999px !important; padding: 0.5rem 1rem !important; }

/* ---------- 结账 ---------- */
.cutepol-woo-page .woocommerce-checkout .col2-set, .cutepol-woo-page #customer_details { width: 100%; float: none; }
.cutepol-woo-page .form-row label { font-weight: 800; font-size: 0.8rem; color: #2b2521; }
.cutepol-woo-page .form-row input.input-text, .cutepol-woo-page .form-row textarea, .cutepol-woo-page .form-row select { border-radius: 1rem; border: 2px solid rgba(43,37,33,0.1); padding: 0.75rem 1rem; font-weight: 600; background: #fffdf9; }
.cutepol-woo-page .form-row input.input-text:focus { border-color: #e8963c; }
.cutepol-woo-page h3 { font-family: var(--font-display); font-weight: 800; color: #2b2521; letter-spacing: -0.01em; }
#order_review_heading, #order_review { background: #fff; border-radius: 1.5rem; box-shadow: 0 4px 24px rgba(90,60,20,0.07); padding: 1.5rem; border: none !important; }
.cutepol-woo-page #payment { background: #fffaf3; border-radius: 1.25rem; }
.cutepol-woo-page #payment ul.payment_methods li { background: #fff; border-radius: 1rem; padding: 1rem; margin-bottom: 0.75rem; box-shadow: 0 2px 10px rgba(90,60,20,0.05); font-weight: 600; }
.cutepol-woo-page #payment div.payment_box { background: #fffaf3; border-radius: 0.75rem; }
.woocommerce-terms-and-conditions { border-radius: 1rem; }

/* ---------- 账户 / 登录 ---------- */
.cutepol-woo-page .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.cutepol-woo-page .woocommerce-MyAccount-navigation ul li a { display: inline-block; background: #fff; border-radius: 9999px; padding: 0.5rem 1.25rem; font-weight: 800; font-size: 0.85rem; color: #5c534b; box-shadow: 0 2px 12px rgba(90,60,20,0.08); text-decoration: none; }
.cutepol-woo-page .woocommerce-MyAccount-navigation ul li.is-active a, .cutepol-woo-page .woocommerce-MyAccount-navigation ul li a:hover { background: #2b2521; color: #fff; }
.cutepol-woo-page .woocommerce form .form-row-first, .cutepol-woo-page .woocommerce form .form-row-last { width: 48%; float: left; }
.cutepol-woo-page .woocommerce form .form-row-last { float: right; }
.cutepol-woo-page .lost_password a { color: #c97722; font-weight: 800; }

/* ---------- 价格 ---------- */
.cutepol-woo-page .price, .woocommerce .price { color: #2b2521; font-weight: 800; }
.cutepol-woo-page .price del { color: #a89f95; }
.cutepol-woo-page .price ins { text-decoration: none; }

/* ---------- 抽屉内价格符号一致性 ---------- */
.cutepol-mini-cart .woocommerce-Price-amount { font-weight: 800; }

/* ---------- 商品默认详情兜底（非花卉商品） ---------- */
.cutepol-woo-page div.product .woocommerce-tabs ul.tabs { list-style: none; padding: 0; display: flex; gap: 0.5rem; }
.cutepol-woo-page div.product .woocommerce-tabs ul.tabs::before { display: none; }
.cutepol-woo-page div.product .woocommerce-tabs ul.tabs li { background: #fff; border-radius: 9999px; box-shadow: 0 2px 12px rgba(90,60,20,0.08); border: none; }
.cutepol-woo-page div.product .woocommerce-tabs ul.tabs li.active a { color: #2b2521; }
.cutepol-woo-page div.product .woocommerce-tabs ul.tabs li a { padding: 0.5rem 1.25rem; font-weight: 800; font-size: 0.85rem; color: #5c534b; }

/* ---------- 相关商品 / 分页 ---------- */
.cutepol-woo-page .woocommerce-pagination ul.page-numbers { display: flex; gap: 0.5rem; list-style: none; }
.cutepol-woo-page .woocommerce-pagination ul.page-numbers li a, .cutepol-woo-page .woocommerce-pagination ul.page-numbers li span {
	display: inline-flex; align-items: center; justify-content: center; min-width: 2.5rem; height: 2.5rem;
	border-radius: 9999px; background: #fff; color: #5c534b; font-weight: 800; box-shadow: 0 2px 12px rgba(90,60,20,0.08);
}
.cutepol-woo-page .woocommerce-pagination ul.page-numbers li span.current { background: #2b2521; color: #fff; }
