/* ============ Cart / checkout ============ */
.two-col{display:grid;grid-template-columns:minmax(0,1fr);gap:1.1rem;margin-top:1rem;align-items:start}
@media(min-width:900px){.two-col{grid-template-columns:minmax(0,1fr) 22rem}}
.cart-line{display:flex;gap:.9rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:.9rem;margin-bottom:.7rem;box-shadow:var(--sh-sm)}
.cart-line img{width:5.5rem;height:5.5rem;border-radius:.8rem;object-fit:cover;flex:none;background:var(--surface-sunken)}
.cart-line .cl-body{flex:1;min-width:0}
.cart-line h4{margin:0 0 .2rem;font-size:.9rem;line-height:1.4;font-family:var(--fb);letter-spacing:0}
.summary{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.2rem;box-shadow:var(--sh-sm)}
@media(min-width:900px){.summary{position:sticky;top:8.5rem}}
.summary h3{font-size:1rem;font-weight:800;margin-bottom:.7rem}
.sum-row{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;padding:.32rem 0;color:var(--ink-2)}
.sum-row span:first-child{min-width:0}
.sum-row.total{border-top:1px solid var(--line2);margin-top:.55rem;padding-top:.75rem;font-size:1.05rem;font-weight:800;color:var(--ink);font-family:var(--fd)}
.free-tag{color:var(--ok);font-weight:800}
/* ============ Orders / timeline ============ */
.chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;font-weight:800;padding:.28rem .65rem;border-radius:999px;text-transform:capitalize;white-space:nowrap}
.chip-pending{background:var(--warn-bg);color:var(--warn)}
.chip-confirmed,.chip-preparing{background:var(--info-bg);color:var(--info)}
.chip-shipped{background:var(--surface-sunken);color:var(--ink-2)}
.chip-delivered,.chip-completed{background:var(--ok-bg);color:var(--ok)}
.chip-cancelled,.chip-refunded{background:var(--bad-bg);color:var(--bad)}
.order-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.05rem;margin-bottom:.8rem;box-shadow:var(--sh-sm)}
.order-head{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;align-items:center;margin-bottom:.6rem}
.order-items{display:flex;gap:.5rem;flex-wrap:wrap}
.order-items img{width:3.3rem;height:3.3rem;border-radius:.6rem;object-fit:cover;border:1px solid var(--line);background:var(--surface-sunken)}
.timeline{list-style:none;margin:1rem 0 .2rem;padding:0}
.timeline li{display:flex;gap:.8rem;position:relative;padding-bottom:1.25rem}
.timeline li:last-child{padding-bottom:.1rem}
.timeline li::before{content:"";position:absolute;left:.72rem;top:1.65rem;bottom:0;width:2px;background:var(--line)}
.timeline li:last-child::before{display:none}
.tl-dot{width:1.5rem;height:1.5rem;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--line);color:var(--muted);z-index:1}
.tl-dot svg{width:.8rem;height:.8rem}
.timeline li.done .tl-dot{background:var(--green);color:#fff}
.timeline li.now .tl-dot{background:var(--brand);color:#fff;box-shadow:0 0 0 5px var(--brand-soft)}
.tl-body strong{display:block;font-size:.9rem}
.tl-body span{font-size:.79rem;color:var(--muted)}
