/* ==========================================================================
   GoFit — branded chrome + CART skin for the MAIN-STORE purchase flow
   (cart + checkout, non-SPIRO). Scoped to body.gofit-store. CSS ONLY — it hides
   the old theme header/footer chrome and skins the standard WooCommerce cart
   markup. NO template/hook/field/payment/logistics changes. Pairs with the
   injected .gofit-storebar (see functions.php) and with checkout.css on checkout.
   Brand: navy #141d33 · warm ivory #efe9da · amber #e8a23d. Added 2026-07.
   ========================================================================== */

body.gofit-store{
  --ink:#141d33; --ink2:#0f1626; --panel:#1b2740; --paper:#efe9da; --paper2:#f6f1e4; --card:#fbf8ef;
  --lime:#e8a23d; --limeInk:#7a5518; --limeTint:rgba(232,162,61,.14); --limeTintB:rgba(232,162,61,.42);
  --muted:#5d6276; --dmuted:#aeb2c4; --line:rgba(20,29,51,.14); --dline:rgba(255,255,255,.13);
  --serif:'Noto Serif TC',serif; --sans:'Noto Sans TC',sans-serif; --mono:'IBM Plex Mono',monospace;
  background:var(--paper); color:var(--ink);
  font-family:var(--sans); -webkit-font-smoothing:antialiased;
}

/* hide the old theme header + footer chrome + sticky handheld bar on the purchase flow */
body.gofit-store #masthead,
body.gofit-store #colophon,
body.gofit-store .smartic-handheld-footer-bar,
body.gofit-store .handheld-footer-bar,
body.gofit-store .storefront-handheld-footer-bar,
body.gofit-store .smartic-mobile-nav,
body.gofit-store .smartic-overlay{ display:none !important; }

/* ---- injected branded header bar ---- */
.gofit-storebar{
  background:rgba(15,22,38,.96); border-bottom:1px solid var(--dline); color:var(--paper);
  font-family:var(--sans); position:sticky; top:0; z-index:1000;
}
.gofit-storebar-inner{
  max-width:1080px; margin:0 auto; padding:15px clamp(14px,4vw,26px);
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.gofit-storebar .gofit-brand{
  display:inline-flex; align-items:baseline; gap:8px; text-decoration:none; color:var(--paper);
}
.gofit-storebar .gofit-brand b{ font-family:var(--serif); font-weight:700; font-size:22px; letter-spacing:.04em; color:var(--paper); }
.gofit-storebar .gofit-brand b i{ color:var(--lime); font-style:normal; }
.gofit-storebar .gofit-brand em{
  font-family:var(--mono); font-style:normal; font-size:10px; letter-spacing:.3em;
  color:var(--dmuted); text-transform:uppercase;
}
.gofit-storebar .gofit-back{
  font-family:var(--mono); font-size:12px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--dmuted); text-decoration:none; transition:color .15s;
}
.gofit-storebar .gofit-back:hover{ color:var(--lime); }
@media(max-width:520px){ .gofit-storebar .gofit-brand em{display:none} }

/* ---- injected slim brand footer ---- */
.gofit-storefoot{
  background:var(--ink); color:var(--dmuted); text-align:center;
  font-family:var(--mono); font-size:11.5px; letter-spacing:.06em;
  padding:26px 18px; margin-top:40px; line-height:2;
}
.gofit-storefoot b{ color:var(--paper); font-family:var(--serif); letter-spacing:.04em; }
.gofit-storefoot .gofit-foot-trust{ color:var(--dmuted); }
.gofit-storefoot .gofit-foot-trust span{ margin:0 9px; white-space:nowrap; }

/* ---- page container + WooCommerce notices ---- */
body.gofit-store .woocommerce, body.gofit-store .woocommerce-page .woocommerce{
  max-width:1080px; margin:0 auto; padding:clamp(20px,4vw,46px) clamp(14px,4vw,26px);
}
body.gofit-store .woocommerce-message,
body.gofit-store .woocommerce-info,
body.gofit-store .woocommerce-error{
  background:var(--card); border-top:3px solid var(--lime); border-radius:12px;
  color:var(--ink); box-shadow:0 6px 18px rgba(20,29,51,.06);
}
body.gofit-store .woocommerce-message a.button,
body.gofit-store .woocommerce a.button.wc-backward{
  background:transparent; color:var(--limeInk); font-weight:600; box-shadow:none; padding:0 4px;
}
body.gofit-store abbr[title]{ text-decoration:none; }
body.gofit-store a{ color:var(--limeInk); }

/* ======================= CART page ======================= */
body.gofit-store .woocommerce-cart-form{ }
body.gofit-store table.shop_table.cart{
  background:var(--card); border:1px solid var(--line); border-collapse:separate; border-spacing:0;
  border-radius:16px; overflow:hidden; width:100%; margin:0 0 26px;
}
body.gofit-store table.shop_table.cart thead th{
  background:var(--paper2); font-family:var(--sans); font-size:12px; font-weight:700;
  letter-spacing:.05em; text-transform:uppercase; color:var(--muted); padding:15px 16px; border:0; text-align:left;
}
body.gofit-store table.shop_table.cart td{
  padding:18px 16px; border-top:1px solid var(--line); vertical-align:middle; color:var(--ink);
}
body.gofit-store table.shop_table.cart td.product-thumbnail img{
  width:66px; height:66px; object-fit:cover; border-radius:12px; border:1px solid var(--line);
}
body.gofit-store td.product-name a{ color:var(--ink); font-weight:600; text-decoration:none; }
body.gofit-store td.product-name a:hover{ color:var(--limeInk); }
body.gofit-store .product-price, body.gofit-store .product-subtotal{ color:var(--ink); font-weight:600; }
body.gofit-store td.product-subtotal .amount{ font-family:var(--serif); }
body.gofit-store a.remove{
  color:var(--muted) !important; font-size:20px; line-height:1;
}
body.gofit-store a.remove:hover{ background:transparent !important; color:#c0392b !important; }
body.gofit-store .quantity input.qty{
  width:64px; text-align:center; background:#fff; border:1px solid var(--line);
  border-radius:10px; padding:10px 6px; font-size:15px; color:var(--ink); min-height:44px;
}
/* coupon + update row */
body.gofit-store .cart .actions{ padding:0 0 8px; }
body.gofit-store .cart .actions .coupon input#coupon_code{
  background:#fff; border:1px solid var(--line); border-radius:10px; padding:12px 14px;
  min-height:46px; font-size:15px; color:var(--ink); max-width:220px;
}
body.gofit-store .cart .actions .button,
body.gofit-store .cart .actions button[name="apply_coupon"],
body.gofit-store .cart .actions button[name="update_cart"]{
  background:var(--ink); color:var(--paper); border:0; border-radius:10px;
  padding:13px 20px; font-size:14px; font-weight:600; font-family:var(--sans); cursor:pointer; min-height:46px;
  transition:filter .12s;
}
body.gofit-store .cart .actions button[name="update_cart"][disabled]{ opacity:.45; }
body.gofit-store .cart .actions .button:hover{ filter:brightness(1.15); }

/* cart totals card */
body.gofit-store .cart-collaterals .cart_totals{
  float:none; width:100%; max-width:420px; margin-left:auto;
  background:var(--card); border:1px solid var(--line); border-radius:16px; padding:clamp(18px,2.4vw,26px);
}
body.gofit-store .cart_totals h2{
  font-family:var(--serif); font-size:20px; font-weight:700; color:var(--ink); margin:0 0 16px;
}
body.gofit-store .cart_totals table.shop_table{ border:0; background:transparent; margin:0; }
body.gofit-store .cart_totals table.shop_table th,
body.gofit-store .cart_totals table.shop_table td{
  padding:12px 0; border-top:1px solid var(--line); color:var(--muted); background:transparent;
}
body.gofit-store .cart_totals .order-total th,
body.gofit-store .cart_totals .order-total td{ color:var(--ink); font-weight:700; }
body.gofit-store .cart_totals .order-total .amount{
  color:var(--limeInk); font-family:var(--serif); font-size:22px; font-weight:700;
}
body.gofit-store .wc-proceed-to-checkout{ padding:18px 0 0; }
body.gofit-store .wc-proceed-to-checkout a.checkout-button{
  display:block; width:100%; text-align:center; background:var(--lime); color:var(--ink);
  border:0; border-radius:12px; padding:16px 22px; font-size:17px; font-weight:700;
  font-family:var(--sans); letter-spacing:.02em; text-decoration:none;
  box-shadow:0 6px 18px rgba(232,162,61,.32); transition:transform .12s, box-shadow .12s, filter .12s;
}
body.gofit-store .wc-proceed-to-checkout a.checkout-button:hover{
  transform:translateY(-1px); filter:brightness(1.03); box-shadow:0 10px 24px rgba(232,162,61,.42);
}

/* empty-cart state */
body.gofit-store .cart-empty{ font-family:var(--serif); font-size:22px; color:var(--ink); }
body.gofit-store .return-to-shop a.button{
  display:inline-block; background:var(--lime); color:var(--ink); border-radius:12px;
  padding:14px 24px; font-weight:700; text-decoration:none; box-shadow:0 6px 18px rgba(232,162,61,.32);
}

/* responsive cart table (stack on mobile) */
@media(max-width:720px){
  body.gofit-store table.shop_table.cart thead{ display:none; }
  body.gofit-store table.shop_table.cart tr.cart_item{ display:grid; grid-template-columns:70px 1fr; gap:4px 14px; padding:14px 12px; border-top:1px solid var(--line); }
  body.gofit-store table.shop_table.cart td{ border:0; padding:2px 0; }
  body.gofit-store table.shop_table.cart td.product-thumbnail{ grid-row:1 / span 4; }
  body.gofit-store .cart-collaterals .cart_totals{ max-width:none; }
}
