.cart-page { max-width: 920px; }
.cart-line { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 10px; padding: 12px; }
.summary-card-thumb { width: 70px; height: 70px; flex: 0 0 70px; overflow: hidden; border-radius: 8px; }
.summary-card-thumb .product-picture { height: 100%; }
.summary-card-info { flex: 1; min-width: 0; }
.summary-card-info .small { margin: 7px 0; color: var(--muted); }
.summary-card-price { margin: 8px 0 0; text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cart-no-price, .cart-note { color: var(--danger); }
.cart-remove { flex-shrink: 0; }
.cart-summary { margin-top: 16px; padding: 18px; }
.cart-total-row { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding-bottom: 14px; border-bottom: 1px solid var(--line); font-weight: 700; }
.cart-total-amount { color: var(--danger); font-size: 24px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cart-note { margin: 12px 0 0; font-size: 13px; }
.cart-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 16px; }

@media (max-width: 1024px) {
  .cart-line { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 10px; }
  .summary-card-thumb { width: 64px; height: 64px; flex-basis: 64px; }
  .summary-card-info strong { display: block; font-size: 13px; line-height: 1.4; }
  .summary-card-price { white-space: normal; }
  .cart-remove { align-self: center; padding-inline: 10px; }
  .cart-total-row { align-items: flex-start; flex-direction: column; gap: 6px; }
  .cart-total-amount { align-self: flex-end; }
  .cart-actions { display: grid; grid-template-columns: 1fr; }
  .cart-actions .button { width: 100%; }
}
