/* ==========================================================
   CART + CHECKOUT — CLEAN WHITE TRANSACTION UI
   ========================================================== */
body.tts-future-cart .page-content,
body.tts-future-checkout .page-content { padding:clamp(75px,9vw,130px) var(--tts-gutter) var(--tts-section)!important; }
body.tts-future-cart .page-content > h1,
body.tts-future-checkout .page-content > h1 { width:min(var(--tts-content),100%); margin:0 auto clamp(45px,6vw,80px)!important; color:var(--tts-ink)!important; font-size:clamp(3rem,7vw,7rem)!important; line-height:.9!important; font-weight:400!important; letter-spacing:-.065em!important; text-transform:uppercase; }
body.tts-future-cart .entry-content,
body.tts-future-checkout .entry-content { width:min(var(--tts-content),100%); margin:0 auto!important; color:var(--tts-ink)!important; }

/* Cart */
body.tts-future-cart .woocommerce-cart-form { width:66%; float:left; padding-right:55px; }
body.tts-future-cart .cart-collaterals { width:34%!important; float:right!important; }
body.tts-future-cart .cart-collaterals .cart_totals { width:100%!important; float:none!important; padding:26px!important; background:#fff!important; border:1px solid var(--tts-line)!important; border-radius:var(--tts-radius-md)!important; }
body.tts-future-cart table.shop_table { border:0!important; border-radius:0!important; background:transparent!important; color:var(--tts-ink)!important; }
body.tts-future-cart table.shop_table th { border:0!important; border-bottom:1px solid var(--tts-line)!important; color:var(--tts-muted)!important; font-size:.62rem!important; letter-spacing:.1em;text-transform:uppercase;font-weight:500!important;padding:14px 10px!important; }
body.tts-future-cart table.shop_table td { border:0!important; border-bottom:1px solid var(--tts-line)!important; padding:24px 10px!important; color:var(--tts-ink)!important; }
body.tts-future-cart td.product-thumbnail img { width:105px!important; height:105px!important; object-fit:contain!important; padding:10px!important; background:#e9e9e6; mix-blend-mode:normal; }
body.tts-future-cart td.product-name a { color:var(--tts-ink)!important; font-size:.9rem; font-weight:500; }
body.tts-future-cart td.product-remove a { color:var(--tts-muted)!important; font-size:18px!important; }
body.tts-future-cart .quantity .qty { min-height:42px;border:1px solid var(--tts-line)!important;border-radius:999px!important;background:#fff!important;color:var(--tts-ink)!important; }
body.tts-future-cart .coupon { display:flex; gap:7px; }
body.tts-future-cart .coupon .input-text { width:160px!important; min-height:44px!important; border:1px solid var(--tts-line)!important; border-radius:999px!important; background:#fff!important; color:var(--tts-ink)!important; padding:0 15px!important; }
body.tts-future-cart button.button,
body.tts-future-cart a.button { min-height:44px!important; padding:0 18px!important; border-radius:999px!important; background:#fff!important; border:1px solid var(--tts-line)!important; color:var(--tts-ink)!important; box-shadow:none!important; font-size:.7rem!important; }
body.tts-future-cart .cart_totals h2 { margin:0 0 24px!important; color:var(--tts-ink)!important; font-size:1.25rem!important; font-weight:500!important; letter-spacing:-.03em; text-transform:uppercase; }
body.tts-future-cart .cart_totals table td,body.tts-future-cart .cart_totals table th{padding:14px 0!important;border-bottom:1px solid var(--tts-line)!important;}
body.tts-future-cart .wc-proceed-to-checkout a.checkout-button { min-height:54px!important; display:flex!important;align-items:center;justify-content:center;background:var(--tts-ink)!important;color:#fff!important;border-color:var(--tts-ink)!important;font-size:.78rem!important;font-weight:500!important; }
body.tts-future-cart .woocommerce::after{content:'';display:block;clear:both;}

/* Checkout */
body.tts-future-checkout form.checkout { display:grid; grid-template-columns:minmax(0,1fr) minmax(330px,.55fr); gap:clamp(42px,7vw,90px); align-items:start; }
body.tts-future-checkout #customer_details { float:none!important; width:auto!important; }
body.tts-future-checkout #order_review_heading,
body.tts-future-checkout #order_review { float:none!important; width:auto!important; }
body.tts-future-checkout #order_review_heading { grid-column:2; grid-row:1; margin:0 0 20px!important; color:var(--tts-ink)!important; font-size:1.25rem!important; font-weight:500!important; letter-spacing:-.03em; text-transform:uppercase; }
body.tts-future-checkout #order_review { grid-column:2; grid-row:1; margin-top:52px!important; padding:25px!important; background:#fff!important; border:1px solid var(--tts-line)!important; border-radius:var(--tts-radius-md)!important; }
body.tts-future-checkout .col2-set { width:auto!important; float:none!important; }
body.tts-future-checkout .col-1,body.tts-future-checkout .col-2 { width:100%!important; float:none!important; }
body.tts-future-checkout h3 { color:var(--tts-ink)!important; font-size:1.35rem!important; font-weight:500!important; letter-spacing:-.03em; }
body.tts-future-checkout .form-row label { color:var(--tts-muted)!important; font-size:.66rem!important; letter-spacing:.08em; text-transform:uppercase; margin-bottom:7px!important; }
body.tts-future-checkout input.input-text,body.tts-future-checkout textarea,body.tts-future-checkout .select2-selection { min-height:50px!important; border:1px solid var(--tts-line)!important; border-radius:var(--tts-radius-xs)!important; background:#fff!important; color:var(--tts-ink)!important; box-shadow:none!important; padding:12px 14px!important; }
body.tts-future-checkout textarea{min-height:120px!important;}
body.tts-future-checkout table.shop_table{border:0!important;border-radius:0!important;color:var(--tts-ink)!important;}
body.tts-future-checkout table.shop_table th,body.tts-future-checkout table.shop_table td{border-bottom:1px solid var(--tts-line)!important;padding:13px 0!important;color:var(--tts-ink)!important;font-size:.76rem;}
body.tts-future-checkout #payment { background:transparent!important; color:var(--tts-ink)!important; }
body.tts-future-checkout #payment ul.payment_methods { padding:18px 0!important;border-bottom:1px solid var(--tts-line)!important; }
body.tts-future-checkout #payment div.payment_box { background:var(--tts-surface)!important;color:var(--tts-ink-2)!important;border-radius:var(--tts-radius-xs)!important;font-size:.75rem!important; }
body.tts-future-checkout #payment div.payment_box::before{border-bottom-color:var(--tts-surface)!important;}
body.tts-future-checkout #place_order { width:100%!important; min-height:54px!important;border-radius:999px!important;background:var(--tts-ink)!important;color:#fff!important;font-size:.78rem!important;font-weight:500!important;box-shadow:none!important; }
body.tts-future-checkout .woocommerce-privacy-policy-text { color:var(--tts-muted)!important; font-size:.68rem!important; line-height:1.5; }
body.tts-future-checkout .woocommerce-privacy-policy-text a{color:var(--tts-ink)!important;text-decoration:underline;}

@media(max-width:900px){
  body.tts-future-cart .woocommerce-cart-form,body.tts-future-cart .cart-collaterals{width:100%!important;float:none!important;padding-right:0;}
  body.tts-future-cart .cart-collaterals{margin-top:38px;}
  body.tts-future-checkout form.checkout{grid-template-columns:1fr;}
  body.tts-future-checkout #order_review_heading,body.tts-future-checkout #order_review{grid-column:1;grid-row:auto;}
  body.tts-future-checkout #order_review{margin-top:0!important;}
}
@media(max-width:640px){
  body.tts-future-cart table.shop_table_responsive tr{display:block!important;padding:22px 0;border-bottom:1px solid var(--tts-line);}
  body.tts-future-cart table.shop_table_responsive td{border:0!important;padding:8px 0!important;}
  body.tts-future-cart td.product-thumbnail{display:block!important;text-align:left!important;}
}

/* Future 2.1: no legacy motion in transaction UI. */
body.tts-future-cart .woocommerce *,body.tts-future-checkout .woocommerce *{transition:none!important;}
body.tts-future-cart .woocommerce a:hover,body.tts-future-checkout .woocommerce a:hover{transform:none!important;}
