.cart-title{margin-bottom:var(--sp-4)}.cart-count{font-weight:400;color:var(--text-muted);font-size:2rem}.cart-loading{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-6) 0}.cart-loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--teal);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.cart-empty{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-6) 0;color:var(--text-muted)}.cart-empty svg{opacity:.25}.cart-empty h2{color:var(--text)}.cart-layout{display:grid;grid-template-columns:1fr 360px;gap:var(--sp-4);align-items:start}.cart-table{border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--border)}.cart-table-header{display:grid;grid-template-columns:1fr 100px 130px 100px 44px;gap:var(--sp-2);align-items:center;padding:14px var(--sp-3);background:var(--teal);color:var(--white);font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.cart-table-header .cart-col-price,.cart-table-header .cart-col-total{color:var(--white)}.cart-row{display:grid;grid-template-columns:1fr 100px 130px 100px 44px;gap:var(--sp-2);align-items:center;padding:var(--sp-2) var(--sp-3);transition:background .15s}.cart-row:nth-child(odd){background:var(--white)}.cart-row:nth-child(2n){background:var(--beige)}.cart-row--oos{opacity:.55}.cart-col-product{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.cart-row-img{flex-shrink:0}.cart-row-img img{width:64px;height:64px;object-fit:cover;border-radius:var(--radius-sm);background:#e8e3dd}.cart-row-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.cart-row-name{font-weight:600;font-size:.9375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .2s}.cart-row-name:hover{color:var(--teal)}.cart-row-variant{font-size:.8125rem;color:var(--text-muted)}.cart-row-oos{font-size:.75rem;font-weight:600;color:var(--red)}.cart-col-price,.cart-col-total{font-size:.9375rem;text-align:right}.cart-col-price{color:var(--text-muted)}.cart-col-total{font-weight:700}.cart-col-label{display:none}.cart-col-qty{display:flex;justify-content:center}.cart-qty{display:inline-flex;align-items:center;background:var(--white);border:1.5px solid rgba(1,1,1,.12);border-radius:var(--radius-pill);overflow:hidden}.cart-qty-btn{display:grid;place-items:center;width:34px;height:34px;background:none;border:none;cursor:pointer;font-size:1rem;font-family:var(--font);color:var(--text);transition:background .15s,color .15s}.cart-qty-btn:hover{background:var(--teal);color:var(--white)}.cart-qty-val{width:28px;text-align:center;font-weight:600;font-size:.875rem;line-height:34px}.cart-col-remove{display:flex;justify-content:center}.cart-remove-btn{display:grid;place-items:center;width:34px;height:34px;background:none;border:none;cursor:pointer;color:var(--text-muted);border-radius:50%;transition:color .2s,background .2s}.cart-remove-btn:hover{color:var(--red);background:#e76f511a}.cart-summary{position:sticky;top:100px}.cart-summary-card{padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--white)}.cart-summary-card h3{font-size:1.125rem;padding-bottom:var(--sp-2);border-bottom:2px solid var(--teal)}.cart-summary-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.9375rem}.cart-summary-divider{border-top:1px solid var(--border);margin:var(--sp-1) 0}.cart-summary-total{font-weight:700;font-size:1.25rem}.cart-continue{text-align:center;font-size:.9375rem;font-weight:500;color:var(--text-muted);transition:color .2s}.cart-continue:hover{color:var(--text)}@media(max-width:767px){.cart-layout{grid-template-columns:1fr;gap:var(--sp-3)}.cart-summary{position:static}.cart-table-header{display:none}.cart-row{display:grid;grid-template-columns:auto 1fr auto;gap:var(--sp-1) var(--sp-2);padding:var(--sp-2) var(--sp-3);position:relative}.cart-col-product{grid-column:1 / -1}.cart-row-img img{width:56px;height:56px}.cart-col-price{display:none}.cart-col-qty{justify-content:flex-start}.cart-col-total{text-align:right;align-self:center}.cart-col-remove{position:absolute;top:var(--sp-2);right:var(--sp-2)}}
