/* Existing SPA Studio design: Arial controls/body, Georgia headings, brand blues.
   Presentation only. Keep XStore's cart AJAX, duplicate mobile quantities and Woo totals. */
body.spa-phase2 .et_b_header-cart .et-mini-content { font:14px/1.6 Arial,Helvetica,sans-serif; color:var(--spa-ocean-blue); }
body.spa-phase2 .et_b_header-cart .et-mini-content .product_list_widget a:not(.remove) { font:600 15px/1.5 Arial,Helvetica,sans-serif!important; color:var(--spa-ocean-blue); }
body.spa-phase2 .et_b_header-cart .et-mini-content .et-element-label { font:600 16px/1.5 Arial,Helvetica,sans-serif!important; }
body.spa-phase2 .et_b_header-cart .et-mini-content .variation { display:block; margin:4px 0; font:13px/1.5 Arial,Helvetica,sans-serif; }
body.spa-phase2 .et_b_header-cart .et-mini-content .variation dt,
body.spa-phase2 .et_b_header-cart .et-mini-content .variation dd { float:none; display:block; width:auto; margin:0; padding:0; }
body.spa-phase2 .et_b_header-cart .et-mini-content .variation dt { font-weight:600; }
body.spa-phase2 .et_b_header-cart .et-mini-content .variation p { margin:0; font:inherit; }
body.spa-phase2 .et_b_header-cart .et-mini-content .woocommerce-mini-cart__footer-wrapper .mini-cart-buttons a {
 display:flex; align-items:center; justify-content:center; width:100%; min-height:48px; height:auto;
 padding:12px 16px!important; border:1px solid var(--spa-ocean-blue)!important; border-radius:4px;
 background:var(--spa-ocean-blue)!important; color:#fff!important;
 font:600 14px/1.5 Arial,Helvetica,sans-serif!important; letter-spacing:0; text-transform:uppercase;
}
body.spa-phase2 .et_b_header-cart .et-mini-content .mini-cart-buttons a:hover { background:var(--spa-pool-blue)!important; border-color:var(--spa-pool-blue)!important; }
body.spa-phase2 .et_b_header-cart .et-mini-content .mini-cart-buttons a:focus-visible { outline:2px solid var(--spa-pool-blue); outline-offset:3px; }

/* Page layout follows the same shared container, with room for the product name. */
body.spa-phase2.woocommerce-cart .content-page { padding-top:32px; padding-bottom:42px; color:var(--spa-ocean-blue); }
body.spa-phase2.woocommerce-cart .content-page .content { margin-top:0; margin-bottom:0; }
body.spa-phase2.woocommerce-cart .content-page .woocommerce>.row { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(320px,1fr); align-items:start; gap:28px; margin:0; }
body.spa-phase2.woocommerce-cart .content-page .woocommerce>.row::before,
body.spa-phase2.woocommerce-cart .content-page .woocommerce>.row::after { display:none; }
body.spa-phase2.woocommerce-cart .content-page .woocommerce>.row>.col-md-7,
body.spa-phase2.woocommerce-cart .content-page .woocommerce>.row>.col-md-5 { float:none; width:auto; min-width:0; padding:0; }
body.spa-phase2.woocommerce-cart .woocommerce-cart-form,
body.spa-phase2.woocommerce-cart .cart-collaterals { margin:0; padding:24px; border:1px solid #e6ebef; border-radius:6px; background:#fff; box-shadow:none; }
body.spa-phase2.woocommerce-cart .cart-checkout-nav { font:600 14px/1.5 Arial,Helvetica,sans-serif; }
body.spa-phase2.woocommerce-cart .cart-checkout-nav a,
body.spa-phase2.woocommerce-cart .cart-checkout-nav span { font-family:Arial,Helvetica,sans-serif!important; font-size:14px; letter-spacing:0; }
body.spa-phase2.woocommerce-cart .cart-checkout-nav .active { color:var(--spa-ocean-blue); }

body.spa-phase2.woocommerce-cart .shop_table { width:100%; margin:0; font:14px/1.6 Arial,Helvetica,sans-serif; color:var(--spa-ocean-blue); }
body.spa-phase2.woocommerce-cart .shop_table th { padding:0 8px 15px; font:600 13px/1.5 Arial,Helvetica,sans-serif; text-transform:none; color:#526875; border-color:#e6ebef; }
body.spa-phase2.woocommerce-cart table.cart td { padding:22px 8px; vertical-align:top; border-color:#e6ebef; }
body.spa-phase2.woocommerce-cart table.cart td.product-name { width:80px; padding-left:0; }
body.spa-phase2.woocommerce-cart table.cart .product-thumbnail { width:72px; max-width:100%; margin:0; }
body.spa-phase2.woocommerce-cart table.cart .product-thumbnail img { width:72px; height:86px; object-fit:contain; }
body.spa-phase2.woocommerce-cart table.cart .product-details { min-width:150px; }
body.spa-phase2.woocommerce-cart table.cart .product-title { display:block; font:400 18px/1.45 Georgia,'Times New Roman',serif!important; color:var(--spa-ocean-blue); text-transform:none; }
body.spa-phase2.woocommerce-cart table.cart .product-title:hover { color:var(--spa-pool-blue); }
body.spa-phase2.woocommerce-cart table.cart .variation { display:block; margin:10px 0; border:0; font:13px/1.6 Arial,Helvetica,sans-serif; color:#526875; }
body.spa-phase2.woocommerce-cart table.cart .variation br { display:none; }
body.spa-phase2.woocommerce-cart table.cart .variation dt,
body.spa-phase2.woocommerce-cart table.cart .variation dd { float:none; display:block; width:auto; margin:0; padding:0; }
body.spa-phase2.woocommerce-cart table.cart .variation dt { margin-bottom:2px; font-weight:600; color:var(--spa-ocean-blue); }
body.spa-phase2.woocommerce-cart table.cart .cart-item-details>div { border:0; padding:0; }
body.spa-phase2.woocommerce-cart table.cart .variation p { margin:0; font:inherit; }
body.spa-phase2.woocommerce-cart table.cart .remove-item { font:13px/1.5 Arial,Helvetica,sans-serif; color:var(--spa-pool-blue); }
body.spa-phase2.woocommerce-cart table.cart td.product-sku { font:13px/1.6 Arial,Helvetica,sans-serif; color:#526875; }
body.spa-phase2.woocommerce-cart .shop_table .amount { font:600 16px/1.5 Arial,Helvetica,sans-serif; color:var(--spa-ocean-blue); white-space:nowrap; }
body.spa-phase2.woocommerce-cart table.cart .product-price .amount { font-weight:400; }
body.spa-phase2.woocommerce-cart table.cart td.product-subtotal { padding-right:0; }

/* Reuse the existing +/- controls and their handlers, with compact horizontal sizing. */
body.spa-phase2.woocommerce-cart table.cart .quantity { float:none; width:112px; max-width:112px; height:44px; margin:0!important; padding:0; }
body.spa-phase2.woocommerce-cart table.cart .quantity .quantity-wrapper { display:grid; grid-template-columns:32px minmax(0,1fr) 32px; align-items:center; width:112px; max-width:100%; height:44px; margin:0; padding:0; border:1px solid #ccd8df; border-radius:4px; background:#fff; }
body.spa-phase2.woocommerce-cart table.cart .quantity .quantity-wrapper::before,
body.spa-phase2.woocommerce-cart table.cart .quantity .minus::before,
body.spa-phase2.woocommerce-cart table.cart .quantity .plus::before { display:none!important; }
body.spa-phase2.woocommerce-cart table.cart .quantity .minus,
body.spa-phase2.woocommerce-cart table.cart .quantity .plus { display:flex; align-items:center; justify-content:center; position:static; width:32px; height:42px; margin:0; padding:0; border:0; color:var(--spa-ocean-blue); }
body.spa-phase2.woocommerce-cart table.cart .quantity .minus { order:0; }
body.spa-phase2.woocommerce-cart table.cart .quantity .plus { order:2; }
body.spa-phase2.woocommerce-cart table.cart .quantity .minus svg,
body.spa-phase2.woocommerce-cart table.cart .quantity .plus svg { display:block; width:12px; height:12px; fill:currentColor; }
body.spa-phase2.woocommerce-cart table.cart .quantity .minus:hover,
body.spa-phase2.woocommerce-cart table.cart .quantity .plus:hover { background:#e7f2f6; }
body.spa-phase2.woocommerce-cart table.cart .quantity input.qty { order:1; width:100%; height:42px; min-height:0; margin:0; padding:0; border:0; border-radius:0; background:#fff; box-shadow:none; text-align:center; font:400 16px/1.5 Arial,Helvetica,sans-serif!important; color:var(--spa-ocean-blue); }
body.spa-phase2.woocommerce-cart table.cart .quantity .quantity-wrapper:focus-within { outline:2px solid var(--spa-pool-blue); outline-offset:2px; }

body.spa-phase2.woocommerce-cart .woocommerce-cart-form .actions { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; margin:20px 0 0; padding:0; }
body.spa-phase2.woocommerce-cart .woocommerce-cart-form .actions::before,
body.spa-phase2.woocommerce-cart .woocommerce-cart-form .actions::after { display:none; }
body.spa-phase2.woocommerce-cart .woocommerce-cart-form .actions>div { width:auto; padding:0; }
body.spa-phase2.woocommerce-cart .coupon { display:flex; align-items:stretch; flex-wrap:wrap; gap:8px; margin:0; }
body.spa-phase2.woocommerce-cart .coupon input.input-text { width:170px; max-width:100%; height:44px; margin:0; padding:10px 12px; border:1px solid #ccd8df; border-radius:4px; font:14px/1.5 Arial,Helvetica,sans-serif; color:var(--spa-ocean-blue); }
body.spa-phase2.woocommerce-cart .content-page :is(.button,.btn,button,input[type=submit]) { font:600 14px/1.5 Arial,Helvetica,sans-serif!important; letter-spacing:0; text-transform:uppercase; border-radius:4px; }
body.spa-phase2.woocommerce-cart .content-page :is(.button,.btn,button,input[type=submit]):focus-visible { outline:2px solid var(--spa-pool-blue); outline-offset:3px; }
body.spa-phase2.woocommerce-cart .content-page .woocommerce-cart-form .coupon .btn { position:static; flex:none; width:auto!important; min-height:44px; height:auto!important; padding:10px 16px!important; background:var(--spa-ocean-blue)!important; border:1px solid var(--spa-ocean-blue)!important; border-radius:4px!important; color:#fff!important; }
body.spa-phase2.woocommerce-cart .content-page .clear-cart { min-height:44px; padding:10px 14px; border:1px solid #ccd8df; background:#fff; color:#526875; }
body.spa-phase2.woocommerce-cart .cart_totals h2 { margin:0 0 22px; padding:0; border:0; font:400 26px/1.3 Georgia,'Times New Roman',serif; color:var(--spa-ocean-blue); text-transform:none; }
body.spa-phase2.woocommerce-cart .cart_totals .shop_table th,
body.spa-phase2.woocommerce-cart .cart_totals .shop_table td { padding:16px 0; font:400 14px/1.6 Arial,Helvetica,sans-serif; border-color:#e6ebef; vertical-align:top; }
body.spa-phase2.woocommerce-cart .cart_totals .shop_table th { width:34%; color:#526875; }
body.spa-phase2.woocommerce-cart .cart_totals .woocommerce-shipping-totals th { display:table-cell; border-bottom:0; margin:0; }
body.spa-phase2.woocommerce-cart .cart_totals .woocommerce-shipping-totals th::before { display:none; }
body.spa-phase2.woocommerce-cart .cart_totals #shipping_method { margin:0; }
body.spa-phase2.woocommerce-cart .cart_totals #shipping_method li { margin:0 0 8px; }
body.spa-phase2.woocommerce-cart .cart_totals #shipping_method label { margin:0; font:400 14px/1.6 Arial,Helvetica,sans-serif; color:var(--spa-ocean-blue); }
body.spa-phase2.woocommerce-cart .cart_totals .shipping-calculator-button,
body.spa-phase2.woocommerce-cart .cart_totals .woocommerce-shipping-destination { font:13px/1.6 Arial,Helvetica,sans-serif; }
body.spa-phase2.woocommerce-cart .cart_totals .order-total th { font-weight:600; color:var(--spa-ocean-blue); text-transform:none; }
body.spa-phase2.woocommerce-cart .cart_totals .order-total .amount { font:700 24px/1.3 Arial,Helvetica,sans-serif; }
body.spa-phase2.woocommerce-cart .cart_totals .includes_tax { margin-top:4px; font:12px/1.5 Arial,Helvetica,sans-serif; color:#526875; text-transform:none; }
body.spa-phase2.woocommerce-cart .wc-proceed-to-checkout { padding:8px 0 0; }
body.spa-phase2.woocommerce-cart .wc-proceed-to-checkout .button { display:flex; align-items:center; justify-content:center; min-height:48px; height:auto; margin:10px 0 0; padding:12px 16px!important; border:1px solid var(--spa-ocean-blue)!important; background:var(--spa-ocean-blue)!important; color:#fff!important; }
body.spa-phase2.woocommerce-cart .wc-proceed-to-checkout .return-shop { background:#fff!important; color:var(--spa-ocean-blue)!important; border-color:#ccd8df!important; }
body.spa-phase2.woocommerce-cart .coupon .btn:hover,
body.spa-phase2.woocommerce-cart .wc-proceed-to-checkout .button:hover { background:var(--spa-pool-blue)!important; border-color:var(--spa-pool-blue)!important; color:#fff!important; }
body.spa-phase2.woocommerce-cart .cart-empty { font:16px/1.6 Arial,Helvetica,sans-serif; color:var(--spa-ocean-blue); }
body.spa-phase2.woocommerce-cart .empty-cart-block h1 { font:400 32px/1.3 Georgia,'Times New Roman',serif; color:var(--spa-ocean-blue); }

@media (max-width:1100px) {
 body.spa-phase2.woocommerce-cart .content-page .woocommerce>.row { grid-template-columns:minmax(0,1fr); gap:24px; }
}
@media (max-width:767px) {
 body.spa-phase2.woocommerce-cart .content-page { padding-top:24px; padding-bottom:30px; }
 body.spa-phase2.woocommerce-cart .woocommerce-cart-form,
 body.spa-phase2.woocommerce-cart .cart-collaterals { padding:16px; }
 body.spa-phase2.woocommerce-cart .cart-checkout-nav { display:flex; align-items:center; justify-content:center; gap:12px; padding:20px 16px; }
 body.spa-phase2.woocommerce-cart .cart-checkout-nav a,
 body.spa-phase2.woocommerce-cart .cart-checkout-nav span { font-size:12px; }
 body.spa-phase2.woocommerce-cart table.cart td { padding-top:16px; padding-bottom:16px; }
 body.spa-phase2.woocommerce-cart table.cart .product-details { min-width:0; padding-right:0; }
 body.spa-phase2.woocommerce-cart table.cart .product-title { font-size:17px!important; }
 body.spa-phase2.woocommerce-cart table.cart .product-price-quantity { display:flex; align-items:center; flex-wrap:wrap; gap:8px; font:14px/1.6 Arial,Helvetica,sans-serif; }
 body.spa-phase2.woocommerce-cart table.cart .product-details .product-price { margin:12px 0; }
 body.spa-phase2.woocommerce-cart table.cart .product-details .product-sku,
 body.spa-phase2.woocommerce-cart table.cart .product-details .product-subtotal { font:13px/1.6 Arial,Helvetica,sans-serif; margin:8px 0; color:#526875; }
 body.spa-phase2.woocommerce-cart .woocommerce-cart-form .actions { flex-direction:column; align-items:stretch; }
 body.spa-phase2.woocommerce-cart .coupon { flex-wrap:nowrap; }
 body.spa-phase2.woocommerce-cart .coupon input.input-text { min-width:0; width:auto; flex:1; }
 body.spa-phase2.woocommerce-cart .cart_totals h2 { font-size:24px; }
}
