/* =============================================
   ZANPU VER3 — WOOCOMMERCE CSS
   ============================================= */

/* ── GENERAL WC RESETS ─────────────────── */
.woocommerce-page .page-title,
.woocommerce-page .woocommerce-breadcrumb { display: none; }
.woocommerce-page .site-main { margin: 0; padding: 0; }
.woocommerce-page .content-area { padding: 0; margin: 0; }
.woocommerce-page #primary { padding: 0; }

/* ── PRICE STYLING ─────────────────────── */
.woocommerce del, .woocommerce del .amount { color: var(--zanpu-gray); font-size: .85em; }
.woocommerce ins, .woocommerce ins .amount { text-decoration: none; color: var(--zanpu-black); font-weight: 700; }
.woocommerce .price .amount { font-family: var(--font-en); }
.price del { color: var(--zanpu-gray); }
.price ins { font-weight: 700; }

/* ── PRODUCT CARD (WC loop/content-product) ── */
.woocommerce ul.products li.product { position: relative; }
.woocommerce ul.products li.product a img { border-radius: var(--radius-sm); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 12.5px; font-weight: 500; padding: 8px 4px 2px; }
.woocommerce ul.products li.product .price { font-size: 13px; padding: 0 4px; }
.woocommerce ul.products li.product .onsale { background: var(--zanpu-red); border-radius: var(--radius-sm); font-size: 10px; font-weight: 700; padding: 3px 8px; top: 10px; left: 10px; margin: 0; }
.woocommerce ul.products { margin: 0; padding: 0; }
.woocommerce ul.products li.product { margin: 0 !important; }

/* ── LOOP PRODUCT LINK ─────────────────── */
.woocommerce ul.products li.product a { text-decoration: none; }

/* ── SINGLE PRODUCT ────────────────────── */
.woocommerce div.product .product_title { font-size: clamp(20px, 2.5vw, 28px); font-weight: 600; }
.woocommerce div.product p.price { font-size: 28px; font-weight: 700; color: var(--zanpu-black); }
.woocommerce div.product span.price { color: var(--zanpu-black); }

/* Star ratings */
.woocommerce .star-rating { color: var(--zanpu-gold); }
.woocommerce .star-rating::before { color: var(--zanpu-gold); }
.woocommerce .star-rating span::before { color: var(--zanpu-gold); }

/* ── ADD TO CART ────────────────────────── */
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button { background: var(--zanpu-green); color: var(--zanpu-white); border: none; border-radius: var(--radius-pill); padding: 10px 28px; font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; transition: background var(--transition); font-family: var(--font-en); cursor: pointer; }
.woocommerce .button:hover,
.woocommerce button.button:hover { background: var(--zanpu-green-dark); color: var(--zanpu-white); }
.woocommerce .button.alt,
.woocommerce button.button.alt { background: var(--zanpu-black); }
.woocommerce .button.alt:hover { background: #333; }
.woocommerce .added_to_cart { display: none !important; }

/* ── QUANTITY ────────────────────────────── */
.woocommerce .quantity { display: flex; align-items: center; }
.woocommerce .quantity .qty { border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-sm); padding: 0 10px; height: 44px; width: 70px; text-align: center; font-size: 14px; font-weight: 600; outline: none; font-family: var(--font-en); }
.woocommerce .quantity .qty:focus { border-color: var(--zanpu-green); }

/* ── VARIATIONS ─────────────────────────── */
.woocommerce .variations_form .variations { width: 100%; border: none; margin-bottom: 16px; }
.woocommerce .variations_form .variations td,
.woocommerce .variations_form .variations th { padding: 0; border: none; }
.woocommerce .variations_form .variations .label label { font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; margin-bottom: 8px; display: block; }
.woocommerce .variations_form .variations select { border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-sm); padding: 10px 14px; font-size: 13px; outline: none; width: 100%; cursor: pointer; font-family: var(--font-en); }
.woocommerce .variations_form .variations select:focus { border-color: var(--zanpu-green); }
.woocommerce .reset_variations { font-size: 12px; color: var(--zanpu-gray); }

/* ── CART PAGE ─────────────────────────── */
.woocommerce-cart .woocommerce { max-width: var(--max-width); margin: 0 auto; padding: 40px 24px; }
.woocommerce table.shop_table { border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-md); border-collapse: separate; }
.woocommerce table.shop_table th { background: var(--zanpu-cream); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; padding: 14px 16px; }
.woocommerce table.shop_table td { padding: 16px; border-top: 1px solid var(--zanpu-gray-light); font-size: 13px; }
.woocommerce table.shop_table td.product-name a { font-weight: 600; color: var(--zanpu-black); }
.woocommerce table.shop_table td.product-name a:hover { color: var(--zanpu-green); }
.woocommerce table.shop_table .cart_item td.product-subtotal { font-weight: 700; }
.woocommerce .cart-collaterals .cart_totals { border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-md); padding: 24px; }
.woocommerce .cart_totals h2 { font-size: 14px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; margin-bottom: 16px; }
.woocommerce .cart_totals table th,
.woocommerce .cart_totals table td { padding: 10px 0; font-size: 13px; border: none; border-bottom: 1px solid var(--zanpu-gray-light); }
.woocommerce .cart_totals table .order-total th,
.woocommerce .cart_totals table .order-total td { font-size: 18px; font-weight: 700; border-bottom: none; }
.woocommerce .cart_totals .wc-proceed-to-checkout .checkout-button { width: 100%; display: block; text-align: center; }
.woocommerce a.remove { color: var(--zanpu-gray) !important; font-size: 18px; line-height: 1; }
.woocommerce a.remove:hover { background: var(--zanpu-red) !important; color: var(--zanpu-white) !important; border-radius: 50%; }

/* Coupon field */
.woocommerce .coupon input { border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-sm); padding: 10px 14px; font-size: 13px; margin-right: 8px; outline: none; }
.woocommerce .coupon input:focus { border-color: var(--zanpu-green); }

/* ── CHECKOUT ────────────────────────────── */
.woocommerce-checkout #payment .payment_methods { list-style: none; margin: 0; padding: 0; }
.woocommerce-checkout #payment .payment_methods li { border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-sm); margin-bottom: 10px; padding: 14px; background: var(--zanpu-white); }
.woocommerce-checkout #payment .payment_methods li label { font-size: 13px; font-weight: 600; cursor: pointer; }
.woocommerce-checkout #payment .payment_box { background: var(--zanpu-cream); border-radius: var(--radius-sm); padding: 14px; margin-top: 12px; font-size: 12px; color: var(--zanpu-gray); }
.woocommerce-checkout .form-row { margin-bottom: 12px; }
.woocommerce-checkout .form-row label { font-size: 12px; font-weight: 600; display: block; margin-bottom: 5px; letter-spacing: .04em; }
.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="tel"],
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea { width: 100%; border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-sm); padding: 11px 14px; font-size: 13px; outline: none; font-family: var(--font-en); transition: border-color var(--transition); }
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row select:focus { border-color: var(--zanpu-green); }
.woocommerce-checkout .form-row select { -webkit-appearance: auto; }
.woocommerce-checkout p.form-row-first,
.woocommerce-checkout p.form-row-last { display: inline-block; width: calc(50% - 8px); }
.woocommerce-checkout p.form-row-first { margin-right: 8px; }
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { font-size: 12px; color: var(--zanpu-gray); margin-bottom: 16px; }

/* ── MY ACCOUNT ─────────────────────────── */
.woocommerce-account .woocommerce { max-width: 900px; margin: 0 auto; padding: 40px 24px; }
.woocommerce-account .woocommerce-MyAccount-navigation { border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-md); padding: 16px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 10px 16px; font-size: 13px; color: var(--zanpu-black); border-radius: var(--radius-sm); transition: all var(--transition); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background: var(--zanpu-green); color: var(--zanpu-white); }

/* ── PAGINATION ─────────────────────────── */
.woocommerce nav.woocommerce-pagination ul { display: flex; justify-content: center; gap: 8px; list-style: none; padding: 0; margin: 0; }
.woocommerce nav.woocommerce-pagination ul li { }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; border: 1.5px solid var(--zanpu-gray-light); border-radius: var(--radius-sm); font-size: 13px; font-weight: 500; color: var(--zanpu-black); background: var(--zanpu-white); transition: all var(--transition); }
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--zanpu-green); border-color: var(--zanpu-green); color: var(--zanpu-white); }

/* ── PRODUCT TABS ────────────────────────── */
.woocommerce div.product .woocommerce-tabs ul.tabs { border-bottom: 1.5px solid var(--zanpu-gray-light); padding: 0; margin: 0; list-style: none; display: flex; gap: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: none; background: none; margin: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 12px 20px; font-size: 13px; font-weight: 600; color: var(--zanpu-gray); border-bottom: 2px solid transparent; display: block; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--zanpu-green); border-bottom-color: var(--zanpu-green); }

/* ── KBANK PAYMENT GATEWAY ───────────────── */
.payment_method_kbank_payment_gateway { }
.payment_method_kbank_payment_gateway label { display: flex; align-items: center; gap: 10px; }
.payment_method_kbank_payment_gateway .payment_box { }
.kbank-logo { max-height: 24px; width: auto; }
