/* Cart (mock bag) page — line-item list and summary. Static layout; the
   JS toggle between #cart-empty and #cart-content is the one approved
   exception to the no-JS rule (see CLAUDE.md). No pseudo-states, no motion. */

.cart-empty{
  text-align:center;padding:var(--space-2xl) 0;display:flex;flex-direction:column;
  align-items:center;gap:var(--space-m);
}
.cart-empty p{font-size:var(--step-1);color:var(--ink-2)}

.cart-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-l)}

.cart-item{
  display:grid;grid-template-columns:120px 1fr;gap:var(--space-m);
  padding-bottom:var(--space-l);border-bottom:1px solid var(--line);
}
.cart-item img{width:120px;height:150px;object-fit:cover;background:var(--ivory-2)}

.cart-item__body{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs)}
.cart-item__name{font-family:var(--font-display);font-size:var(--step-1);color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.cart-item__meta{color:var(--ink-2);font-size:var(--step--1)}
.cart-item__qty{color:var(--ink-2);font-size:var(--step--1)}
.cart-item__price{font-weight:500;color:var(--ink)}
.cart-item__remove{
  margin-top:var(--space-xs);background:none;border:none;padding:0;
  font-family:var(--font-text);font-size:var(--step--1);color:var(--ink-2);
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;
  cursor:pointer;
}

.cart-summary{margin-top:var(--space-xl);max-width:44ch}
.cart-summary__row{
  display:flex;justify-content:space-between;font-size:var(--step-1);
  color:var(--ink);padding-block:var(--space-s);border-top:1px solid var(--line);
}
.cart-summary__note{color:var(--ink-2);font-size:var(--step--1);margin-top:var(--space-xs)}
.cart-summary .cta-row{margin-top:var(--space-l)}

@media (max-width:560px){
  .cart-item{grid-template-columns:88px 1fr}
  .cart-item img{width:88px;height:110px}
}
