.cart-page { padding: 64px 0; }
.cart-table { width: 100%; border-collapse: collapse; margin-bottom: 32px; }
.cart-table th { text-align: left; padding: 16px; background-color: var(--color-surface-alt); border-bottom: 1px solid var(--color-border); font-size: 14px; font-weight: 600; color: var(--color-text); }
.cart-item { border-bottom: 1px solid var(--color-border); }
.cart-item td { padding: 24px 16px; vertical-align: middle; }
.cart-item-info { display: flex; align-items: center; gap: 16px; }
.cart-item-image { width: 80px; height: 80px; background-color: var(--color-surface-alt); border: 1px solid var(--color-border); border-radius: 4px; overflow: hidden; }
.cart-item-image img { width: 100%; height: 100%; object-fit: cover; }
.cart-item-name { font-size: 15px; font-weight: 600; color: var(--color-text); text-decoration: none; }
.cart-item-name:hover { color: var(--color-primary); }
.cart-item-price, .cart-item-subtotal { font-size: 16px; font-weight: 600; color: var(--color-text); }
.cart-item-remove { background: none; border: none; color: var(--color-text-secondary); cursor: pointer; font-size: 20px; transition: color 0.2s; }
.cart-item-remove:hover { color: var(--color-danger); }
.cart-summary { background-color: var(--color-surface-alt); border: 1px solid var(--color-border); border-radius: 4px; padding: 32px; max-width: 400px; margin-left: auto; }
.cart-total { display: flex; justify-content: space-between; align-items: center; font-size: 20px; font-weight: 700; border-top: 1px solid var(--color-border); padding-top: 24px; margin-bottom: 24px; }
.cart-actions { display: flex; flex-direction: column; gap: 16px; }
.cart-empty { text-align: center; padding: 80px 24px; background-color: var(--color-surface-alt); border-radius: 4px; border: 1px dashed var(--color-border); }
.checkout-page { padding: 64px 0; }
.checkout-steps { display: flex; justify-content: center; gap: 48px; margin-bottom: 64px; border-bottom: 1px solid var(--color-border); padding-bottom: 24px; }
.checkout-step { font-size: 16px; font-weight: 600; color: var(--color-text-secondary); position: relative; }
.checkout-step.active { color: var(--color-primary); }
.checkout-step.active::after { content: ''; position: absolute; bottom: -25px; left: 0; width: 100%; height: 3px; background-color: var(--color-primary); }
.checkout-form { max-width: 800px; margin: 0 auto; }
.order-summary { background-color: var(--color-surface-alt); border: 1px solid var(--color-border); border-radius: 4px; padding: 32px; }
