/* css/pages/cart.css — page-scoped styles for /cart.
   Extracted from the inline <style> block in cart.html as part of the
   MPA migration.

   The legacy cart.html declared its own warm palette on :root, which
   differs slightly from the global palette in /css/styles.css (warmer
   --ink, gold-tinted --line, cream --card vs the cooler global tones).
   To preserve the exact visual of the legacy cart without leaking those
   overrides into other pages (nav, footer, soft-nav targets), the
   palette is re-scoped to `.cart-wrap` here. Custom properties inherit
   through descendants, so every var() reference inside the cart resolves
   to the warm palette while everything outside .cart-wrap keeps the
   global styles.css palette. */

.cart-wrap{
  --ink:#1a1410; --ink2:#2e251c; --muted:#6f6052; --muted2:#8a7c6c;
  --gold:#b89640; --gold2:#a08855;
  --page-bg:#fbf9f3; --card:#fdfcf9;
  --line:rgba(184,150,78,0.18); --line2:rgba(184,150,78,0.32);
  --font-display:'Fraunces', Georgia, serif;
  max-width:880px;margin:36px auto 80px;padding:0 24px;
}
.cart-eyebrow{
  font-family:var(--font-display);font-size:10px;letter-spacing:3px;
  font-weight:600;color:var(--gold2);text-transform:uppercase;margin-bottom:8px;
}
.cart-wrap h1{
  font-family:var(--font-display);font-size:42px;font-weight:300;
  font-style:italic;letter-spacing:-0.7px;margin:0 0 28px;
}
.cart-empty{
  background:var(--card);border:1px solid var(--line);
  border-radius:4px;padding:40px 30px;text-align:center;
}
.cart-empty h2{
  font-family:var(--font-display);font-size:22px;font-weight:400;
  font-style:italic;margin:0 0 8px;
}
.cart-empty p{font-size:13.5px;color:var(--muted);margin:0 0 22px;line-height:1.55}
.cart-empty .cart-empty-cta{
  display:inline-block;padding:13px 30px;background:var(--ink);color:#fff;
  text-decoration:none;font-size:10.5px;font-weight:600;
  letter-spacing:2.5px;text-transform:uppercase;
}
.cart-empty .cart-empty-cta:hover{background:var(--gold2)}

.cart-list{display:flex;flex-direction:column;gap:0}
.cart-row{
  display:grid;grid-template-columns:1fr auto auto;gap:18px;
  padding:20px 0;border-top:1px solid var(--line);
  align-items:center;
}
.cart-row:first-child{border-top:1px solid var(--line2)}
.cart-row:last-child{border-bottom:1px solid var(--line2)}
.cart-item-main{min-width:0}
.cart-item-name{
  font-family:var(--font-display);font-size:18px;font-weight:500;
  margin:0 0 4px;letter-spacing:-0.1px;color:var(--ink);
}
.cart-item-meta{
  font-size:12px;color:var(--muted);letter-spacing:0.2px;
}
.cart-item-remove{
  display:inline-block;margin-top:6px;
  background:transparent;border:none;cursor:pointer;
  font:inherit;font-size:11px;color:var(--muted2);text-decoration:underline;
  letter-spacing:0.4px;padding:0;
}
.cart-item-remove:hover{color:var(--ink)}
.cart-item-qty{
  display:flex;align-items:center;gap:6px;
}
.cart-item-qty button{
  width:28px;height:28px;background:transparent;
  border:1px solid var(--line2);border-radius:0;cursor:pointer;
  font:inherit;font-size:15px;color:var(--ink);
}
.cart-item-qty button:hover{border-color:var(--ink)}
.cart-item-qty input{
  width:36px;text-align:center;
  border:1px solid var(--line2);background:#fff;
  padding:5px 0;font:inherit;font-size:13px;
}
.cart-item-price{
  font-family:var(--font-display);font-size:18px;font-weight:500;
  letter-spacing:-0.1px;min-width:80px;text-align:right;
}

.cart-summary{
  margin-top:28px;padding-top:18px;
  display:flex;flex-direction:column;align-items:flex-end;gap:8px;
}
.cart-summary .subtotal-row{
  display:flex;justify-content:space-between;gap:60px;
  font-size:14px;color:var(--ink);
}
.cart-summary .total-row{
  display:flex;justify-content:space-between;gap:60px;
  font-family:var(--font-display);font-size:22px;font-weight:500;
  letter-spacing:-0.2px;padding-top:8px;border-top:1px solid var(--line2);
  margin-top:6px;width:100%;max-width:300px;
}
.cart-actions{
  display:flex;gap:10px;margin-top:24px;justify-content:flex-end;
}
.cart-actions a, .cart-actions button{
  padding:14px 30px;border:none;border-radius:0;cursor:pointer;
  font:inherit;font-size:10.5px;font-weight:600;
  letter-spacing:2.5px;text-transform:uppercase;text-decoration:none;
  transition:background .15s;
}
.cart-actions .continue{background:transparent;color:var(--ink);border:1px solid var(--line2)}
.cart-actions .continue:hover{border-color:var(--ink)}
.cart-actions .checkout{background:var(--ink);color:#fff}
.cart-actions .checkout:hover{background:var(--gold2)}
.cart-actions .checkout:disabled{opacity:0.4;cursor:not-allowed}
.cart-actions .checkout:disabled:hover{background:var(--ink)}
