/**
 * body_cart.css — Cart page styles v1.0
 * Theme-aware: uses scoped CSS variables on .cart-az
 */

/* ── Theme variables (standalone — no global :root defines these) ── */
.cart-az{--text:#111;--text-sec:#888;--surface:#fff;--surface-alt:#f5f5f5;--border:#eee;--accent-check:#008296;--accent-link:#007185}
.dark-mode .cart-az{--text:#fff;--text-sec:#aaa;--surface:#1e1e1e;--surface-alt:#2a2a2a;--border:#333;--accent-check:#00a8b5;--accent-link:#4dc9d9}

.cart-az{padding:0 0 140px;max-width:600px;margin:0 auto;color:var(--text)}
.cart-az-pt{padding-top:calc(12px + var(--app-pt,0px))}
/* Sticky Checkout per store */
.cart-az-store-ck{background:var(--accent,#FFD814);border-radius:10px;margin:0 16px 8px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:transform .1s;box-shadow:0 1px 4px rgba(0,0,0,.1)}
.cart-az-store-ck:active{transform:scale(.98)}
.cart-az-store-ck-text{font-weight:700;font-size:14px;color:#111}
.cart-az-store-ck-total{font-weight:800;font-size:15px;color:#111}
/* Select all */
.cart-az-selall{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:14px;color:var(--text)}
.cart-az-selall label{display:flex;align-items:center;gap:8px;cursor:pointer}
/* Store section */
.cart-az-store{margin-bottom:4px}
.cart-az-store-hdr{display:flex;align-items:center;gap:10px;padding:14px 16px 8px;cursor:pointer}
.cart-az-store-hdr img{width:32px;height:32px;border-radius:8px;object-fit:cover}
.cart-az-store-hdr .st-name{font-weight:700;font-size:14px;color:var(--text);flex:1}
.cart-az-store-hdr .st-arrow{font-size:12px;color:var(--text-sec)}
/* Product card (swipeable) */
.cart-az-wrap{position:relative;overflow:hidden;border-bottom:1px solid var(--border);background:var(--surface)}
.cart-az-item{display:flex;gap:12px;padding:12px 16px;background:var(--surface);position:relative;z-index:1;transition:transform .15s ease-out;will-change:transform}
.cart-az-chk{flex-shrink:0;padding-top:4px}
.cart-az-chk input[type="checkbox"]{width:20px;height:20px;accent-color:var(--accent-check);cursor:pointer}
.cart-az-img{width:90px;height:90px;border-radius:8px;object-fit:cover;background:var(--surface-alt);flex-shrink:0;cursor:pointer}
.cart-az-img-empty{width:90px;height:90px;border-radius:8px;background:var(--surface-alt);display:flex;align-items:center;justify-content:center;font-size:32px;flex-shrink:0}
.cart-az-details{flex:1;min-width:0}
.cart-az-name{font-size:14px;color:var(--text);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 4px}
.cart-az-price{font-weight:700;font-size:16px;color:var(--text);margin:0 0 2px}
.cart-az-store-link{font-size:12px;color:var(--text-sec);margin:0 0 8px}
.cart-az-store-link a{color:var(--accent-link);text-decoration:none}
/* Qty */
.cart-az-qty{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:8px;overflow:hidden;height:34px;margin-bottom:6px}
.cart-az-qty button{width:36px;height:34px;border:none;background:var(--surface-alt);cursor:pointer;font-size:16px;font-weight:700;color:var(--text);display:flex;align-items:center;justify-content:center;transition:background .1s}
.cart-az-qty button:active{background:var(--border)}
.cart-az-qty button.cart-az-del{color:#e53935}
.cart-az-qty button.cart-az-del svg{width:16px;height:16px}
.cart-az-qty span{min-width:36px;text-align:center;font-size:14px;font-weight:600;color:var(--text);background:var(--surface);border-left:1px solid var(--border);border-right:1px solid var(--border);line-height:34px}
/* Actions */
.cart-az-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.cart-az-actions button{background:none;border:1px solid var(--border);border-radius:16px;padding:5px 12px;font-size:12px;color:var(--text-sec);cursor:pointer;white-space:nowrap;transition:background .1s}
.cart-az-actions button:active{background:var(--surface-alt)}
/* Swipe backgrounds */
.cart-az-swipe{position:absolute;top:0;bottom:0;display:flex;align-items:center;z-index:0}
.cart-az-swipe-left{right:0;left:0;justify-content:flex-end;padding-right:24px;background:#e53935}
.cart-az-swipe-right{left:0;right:0;justify-content:flex-start;padding-left:24px;background:#fb8c00}
.cart-az-swipe svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2}
.cart-az-swipe-lbl{color:#fff;font-size:12px;font-weight:600;margin-left:6px}
/* Saved for later section */
.cart-az-saved-hdr{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 8px;border-top:6px solid var(--border);margin-top:8px}
.cart-az-saved-hdr span{font-weight:700;font-size:15px;color:var(--text)}
/* Empty */
.cart-az-empty{text-align:center;padding:60px 20px}
.cart-az-empty-ico{font-size:56px;margin-bottom:16px;opacity:.3}
.cart-az-empty-t{font-size:18px;font-weight:700;color:var(--text);margin:0 0 8px}
.cart-az-empty-s{font-size:14px;color:var(--text-sec);margin:0 0 20px}
.cart-az-empty-btn{display:inline-block;background:var(--accent,#FFD814);color:#111;border-radius:10px;padding:12px 24px;font-weight:700;font-size:14px;text-decoration:none}
.cart-az-loading{text-align:center;padding:60px 20px;color:var(--text-sec)}
/* Unavailable badge */
.cart-az-unavail{font-size:12px;font-weight:600;color:#e53935;margin:0 0 4px;display:flex;align-items:center;gap:4px}
.cart-az-wrap.is-unavail .cart-az-img{opacity:.45}
.cart-az-wrap.is-unavail .cart-az-name{opacity:.55;text-decoration:line-through}
.cart-az-wrap.is-unavail .cart-az-price{opacity:.45}
