/* WooCommerce Cart & Checkout Design — isolated to cart/checkout only */
body.wccd-cart-checkout { background:var(--wccd-bg,#000); }
body.wccd-cart-checkout .woocommerce { width:100%; max-width:none; margin:0; padding:0 28px 72px; color:var(--wccd-text,#fff); box-sizing:border-box; }
body.wccd-cart-checkout .woocommerce * { box-sizing:border-box; }
body.wccd-cart-checkout .woocommerce a { color:var(--wccd-accent,#f2c94c); }
body.wccd-cart-checkout .woocommerce h1,
body.wccd-cart-checkout .woocommerce h2,
body.wccd-cart-checkout .woocommerce h3 { color:var(--wccd-text,#fff); letter-spacing:-.02em; }
/* Remove WooCommerce's generic width constraints and build our own composition. */
body.wccd-cart-checkout .woocommerce form.woocommerce-cart-form,
body.wccd-cart-checkout .woocommerce .cart-collaterals,
body.wccd-cart-checkout .woocommerce .woocommerce-notices-wrapper,
body.wccd-cart-checkout .woocommerce form.checkout,
body.wccd-cart-checkout .woocommerce .woocommerce-form-coupon-toggle,
body.wccd-cart-checkout .woocommerce .woocommerce-checkout-review-order { width:100%; max-width:none; }
/* CART */
body.wccd-cart-checkout.woocommerce-cart .woocommerce { padding-left:clamp(20px,5vw,80px); padding-right:clamp(20px,5vw,80px); }
body.wccd-cart-checkout.woocommerce-cart .woocommerce > h1,
body.wccd-cart-checkout.woocommerce-cart .woocommerce > h2:first-child { font-size:clamp(38px,4vw,62px); font-weight:600; margin:26px 0 32px; }
body.wccd-cart-checkout.woocommerce-cart table.shop_table { border:1px solid var(--wccd-border); border-radius:calc(var(--wccd-radius) + 6px); overflow:hidden; border-collapse:separate; border-spacing:0; background:linear-gradient(145deg,var(--wccd-surface),var(--wccd-surface2)); box-shadow:0 24px 60px rgba(0,0,0,.28); }
body.wccd-cart-checkout.woocommerce-cart table.shop_table th { background:#0c0d0f; color:var(--wccd-text); padding:18px 16px; border-color:var(--wccd-border); font-size:14px; text-transform:uppercase; letter-spacing:.08em; }
body.wccd-cart-checkout.woocommerce-cart table.shop_table td { padding:18px 16px; border-color:var(--wccd-border); color:var(--wccd-text); vertical-align:middle; }
body.wccd-cart-checkout.woocommerce-cart table.shop_table tr:last-child td { border-bottom:0; }
body.wccd-cart-checkout.woocommerce-cart .product-thumbnail img { width:72px; height:72px; object-fit:cover; border-radius:12px; background:#fff; padding:4px; }
body.wccd-cart-checkout.woocommerce-cart .product-name a { font-weight:600; font-size:16px; }
body.wccd-cart-checkout.woocommerce-cart .quantity .qty { background:#fff; color:#111; border:0; border-radius:10px; height:44px; width:72px; text-align:center; }
body.wccd-cart-checkout.woocommerce-cart .coupon { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
body.wccd-cart-checkout.woocommerce-cart .coupon input.input-text { width:180px; height:46px; background:#fff; color:#111; border:0; border-radius:10px; }
body.wccd-cart-checkout.woocommerce-cart .button,
body.wccd-cart-checkout.woocommerce-cart .checkout-button { border:0!important; border-radius:12px!important; background:var(--wccd-button)!important; color:var(--wccd-button-text)!important; font-weight:700!important; min-height:46px; padding:12px 20px!important; }
body.wccd-cart-checkout.woocommerce-cart .cart-collaterals { display:flex; justify-content:flex-end; margin-top:26px; }
body.wccd-cart-checkout.woocommerce-cart .cart-collaterals .cart_totals { float:none; width:min(620px,100%); margin-left:auto; padding:26px; border:1px solid var(--wccd-border); border-radius:20px; background:linear-gradient(145deg,#121315,#090a0c); box-shadow:0 20px 55px rgba(0,0,0,.35); }
body.wccd-cart-checkout.woocommerce-cart .cart_totals h2 { margin:0 0 18px; font-size:28px; }
body.wccd-cart-checkout.woocommerce-cart .cart_totals table { border:1px solid var(--wccd-border); border-radius:12px; overflow:hidden; border-collapse:separate; }
body.wccd-cart-checkout.woocommerce-cart .cart_totals td,
body.wccd-cart-checkout.woocommerce-cart .cart_totals th { border-color:var(--wccd-border); color:var(--wccd-text); padding:14px; }
body.wccd-cart-checkout.woocommerce-cart .wc-proceed-to-checkout { padding:0; margin-top:18px; }
body.wccd-cart-checkout.woocommerce-cart .wc-proceed-to-checkout .checkout-button { width:100%; text-align:center; font-size:18px; padding:16px!important; }
/* CHECKOUT — compact single column */
body.wccd-cart-checkout.woocommerce-checkout .woocommerce { padding:30px 24px 80px; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce > h1,
body.wccd-cart-checkout.woocommerce-checkout .woocommerce > h2:first-child { width:min(1040px,100%); margin:12px auto 28px; font-size:clamp(34px,4vw,52px); font-weight:600; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-notices-wrapper,
body.wccd-cart-checkout.woocommerce-checkout form.checkout { width:min(1040px,100%); margin-left:auto; margin-right:auto; }
body.wccd-cart-checkout.woocommerce-checkout form.checkout { display:block; }
body.wccd-cart-checkout.woocommerce-checkout #customer_details { display:block!important; width:100%; }
body.wccd-cart-checkout.woocommerce-checkout #customer_details .col-1,
body.wccd-cart-checkout.woocommerce-checkout #customer_details .col-2 { width:100%!important; float:none!important; padding:0!important; }
body.wccd-cart-checkout.woocommerce-checkout #customer_details .col-2 { display:none!important; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-additional-fields { display:none!important; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-billing-fields { background:linear-gradient(145deg,#121315,#0b0c0e); border:1px solid var(--wccd-border); border-radius:20px; padding:28px; box-shadow:0 20px 60px rgba(0,0,0,.3); }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-billing-fields > h3 { margin:0 0 22px; font-size:27px; display:flex; align-items:center; gap:14px; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-billing-fields > h3:before { content:'01'; display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:var(--wccd-accent); color:#111; font-size:13px; font-weight:800; }
body.wccd-cart-checkout.woocommerce-checkout #billing_email_field { width:100%; }
body.wccd-cart-checkout.woocommerce-checkout .form-row-first,
body.wccd-cart-checkout.woocommerce-checkout .form-row-last { width:calc(50% - 8px); }
body.wccd-cart-checkout.woocommerce-checkout .form-row-wide { width:100%; }
body.wccd-cart-checkout.woocommerce-checkout .form-row { margin-bottom:16px; }
body.wccd-cart-checkout.woocommerce-checkout label { color:var(--wccd-text); font-weight:600; font-size:13px; margin-bottom:7px; display:block; }
body.wccd-cart-checkout.woocommerce-checkout input.input-text,
body.wccd-cart-checkout.woocommerce-checkout select,
body.wccd-cart-checkout.woocommerce-checkout textarea { width:100%; background:var(--wccd-input-bg,#fff); color:var(--wccd-input-text,#111); border:1px solid var(--wccd-input-border); border-radius:10px; min-height:46px; padding:11px 13px; box-shadow:none; }
body.wccd-cart-checkout.woocommerce-checkout textarea { min-height:100px; }
body.wccd-cart-checkout.woocommerce-checkout .wccd-gps { margin:-5px 0 20px; }
body.wccd-cart-checkout.woocommerce-checkout .wccd-gps button { border:0; background:var(--wccd-accent); color:#111; border-radius:10px; padding:11px 16px; font-weight:700; cursor:pointer; }
body.wccd-cart-checkout.woocommerce-checkout .wccd-gps small { display:block; color:var(--wccd-muted); margin-top:7px; }
/* order summary */
body.wccd-cart-checkout.woocommerce-checkout #order_review_heading { width:min(1040px,100%); margin:28px auto 14px; padding:0; font-size:27px; }
body.wccd-cart-checkout.woocommerce-checkout #order_review_heading:before { content:'02'; display:inline-grid; place-items:center; width:38px; height:38px; margin-right:14px; border-radius:50%; background:var(--wccd-accent); color:#111; font-size:13px; vertical-align:middle; }
body.wccd-cart-checkout.woocommerce-checkout #order_review { width:100%; background:linear-gradient(145deg,#121315,#0b0c0e); border:1px solid var(--wccd-border); border-radius:20px; padding:22px; box-shadow:0 20px 60px rgba(0,0,0,.28); }
body.wccd-cart-checkout.woocommerce-checkout #order_review table.shop_table { border:0; border-radius:12px; overflow:hidden; border-collapse:separate; background:transparent; margin:0; }
body.wccd-cart-checkout.woocommerce-checkout #order_review table.shop_table th,
body.wccd-cart-checkout.woocommerce-checkout #order_review table.shop_table td { border-color:var(--wccd-border); color:var(--wccd-text); padding:14px; }
body.wccd-cart-checkout.woocommerce-checkout #order_review table.shop_table thead th { background:#0a0b0d; text-transform:uppercase; letter-spacing:.08em; font-size:12px; }
/* payment area — stable to reduce loading flash */
body.wccd-cart-checkout.woocommerce-checkout #payment { margin-top:20px; background:linear-gradient(145deg,#15171a,#0b0c0e); border:1px solid var(--wccd-border); border-radius:18px; padding:22px; min-height:180px; }
body.wccd-cart-checkout.woocommerce-checkout #payment ul.payment_methods { margin:0; padding:0; border:0; }
body.wccd-cart-checkout.woocommerce-checkout #payment .wc_payment_method { padding:14px 0; border-bottom:1px solid var(--wccd-border); }
body.wccd-cart-checkout.woocommerce-checkout #payment .wc_payment_method:last-child { border-bottom:0; }
body.wccd-cart-checkout.woocommerce-checkout #payment label { display:inline-flex; align-items:center; gap:8px; cursor:pointer; }
body.wccd-cart-checkout.woocommerce-checkout #payment div.payment_box { background:#f4f2f7; color:#222; border-radius:12px; margin:12px 0 0; padding:16px; }
body.wccd-cart-checkout.woocommerce-checkout #payment div.payment_box:before { display:none; }
body.wccd-cart-checkout.woocommerce-checkout #payment .place-order { margin:18px 0 0; padding:0; }
body.wccd-cart-checkout.woocommerce-checkout #payment .place-order:after { content:''; display:block; clear:both; }
body.wccd-cart-checkout.woocommerce-checkout #place_order { width:100%; min-height:56px; border:0!important; border-radius:12px!important; background:var(--wccd-button)!important; color:var(--wccd-button-text)!important; font-size:17px; font-weight:800; box-shadow:0 12px 30px rgba(0,0,0,.25); }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { color:var(--wccd-muted); margin-bottom:15px; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-privacy-policy-text { color:var(--wccd-muted); font-size:12px; }
/* coupon */
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-form-coupon-toggle { width:min(1040px,100%); margin:0 auto 18px; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-info { position:relative; display:block; background:#111214; color:var(--wccd-text); border:1px solid var(--wccd-border); border-top:3px solid var(--wccd-accent); border-radius:12px; padding:16px 20px 16px 52px; min-height:52px; line-height:20px; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-info:before { position:absolute; left:19px; top:50%; transform:translateY(-50%); margin:0; width:20px; height:20px; line-height:20px; text-align:center; }
body.wccd-cart-checkout.woocommerce-checkout .woocommerce-info a { display:inline; }
body.wccd-cart-checkout.woocommerce-checkout form.checkout_coupon { background:#111214; border:1px solid var(--wccd-border); border-radius:14px; margin:0 auto 20px; width:min(1040px,100%); }
/* Hide second shipping address and notes */
body.wccd-cart-checkout #ship-to-different-address,
body.wccd-cart-checkout .woocommerce-shipping-fields,
body.wccd-cart-checkout .woocommerce-additional-fields { display:none!important; }
/* loading stability */
body.wccd-cart-checkout.woocommerce-checkout #payment.processing,
body.wccd-cart-checkout.woocommerce-checkout #order_review.processing { opacity:1!important; }
body.wccd-cart-checkout.woocommerce-checkout .blockUI.blockOverlay { background:rgba(0,0,0,.35)!important; opacity:.35!important; }
body.wccd-cart-checkout.woocommerce-checkout .blockUI.blockMsg { display:none!important; }
@media(max-width:700px){
 body.wccd-cart-checkout .woocommerce{padding-left:14px;padding-right:14px;}
 body.wccd-cart-checkout.woocommerce-cart table.shop_table{font-size:13px;}
 body.wccd-cart-checkout.woocommerce-cart .product-thumbnail{display:none;}
 body.wccd-cart-checkout.woocommerce-cart .cart-collaterals .cart_totals{padding:18px;}
 body.wccd-cart-checkout.woocommerce-checkout .woocommerce-billing-fields{padding:18px;border-radius:15px;}
 body.wccd-cart-checkout.woocommerce-checkout .form-row-first,
 body.wccd-cart-checkout.woocommerce-checkout .form-row-last{width:100%;}
 body.wccd-cart-checkout.woocommerce-checkout #order_review{padding:14px;}
}
