.cart-btn{position:relative;width:48px;height:48px;border-radius:50%;border:2px solid var(--mint-ink);background:#fff;color:var(--mint-ink);display:grid;place-items:center;padding:0;cursor:pointer;transition:background .15s}
.cart-btn:hover{background:var(--mist)}
.cart-btn .umb{width:26px;height:26px}
.cart-n{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--grad);color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center;border:2px solid #fff;line-height:1}
.cart-btn.bump{animation:bump .5s ease}
@keyframes bump{0%{transform:scale(1)}30%{transform:scale(1.18) rotate(-8deg)}60%{transform:scale(.95) rotate(4deg)}100%{transform:scale(1)}}
.cd-ov{position:fixed;inset:0;background:rgba(30,10,14,.45);z-index:50;opacity:0;transition:opacity .25s}
.cd-ov.on{opacity:1}
.cd{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);background:#fff;z-index:51;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .28s cubic-bezier(.2,.8,.2,1);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:-10px 0 40px rgba(62,26,32,.18)}
.cd.on{transform:none}
.cd-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}
.cd-head h2{font-size:24px}
.cd-x{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:20px;color:var(--mint-ink)}
.cd-free{margin:14px 20px 0;background:var(--mist);border-radius:12px;padding:10px 14px;font-size:13px;font-weight:600;color:var(--mint-ink);display:flex;gap:8px;align-items:center}
.cd-list{flex:1;overflow-y:auto;padding:6px 20px}
.cd-item{display:grid;grid-template-columns:72px 1fr auto;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);align-items:start}
.cd-item img{width:72px;height:72px;object-fit:contain;border-radius:12px;background:#f3f3f1}
.cd-info{display:grid;gap:4px;min-width:0}
.cd-info b{font-size:15px;line-height:1.25;color:var(--mint-ink)}
.cd-info span{font-size:13px;color:var(--ink-soft)}
.cd-qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;width:fit-content;margin-top:4px}
.cd-qty button{width:32px;height:32px;border:0;background:none;font-size:16px;color:var(--mint-ink)}
.cd-qty span{min-width:20px;text-align:center;font-weight:700;color:var(--ink)}
.cd-price{text-align:right;font-weight:800;display:grid;gap:6px;justify-items:end}
.cd-rm{border:0;background:none;padding:0;font-size:12px;color:var(--ink-soft);text-decoration:underline}
.cd-empty{display:grid;justify-items:center;gap:6px;text-align:center;padding:60px 10px;color:var(--ink-soft)}
.cd-empty .umb{width:48px;height:48px;color:var(--line)}
.cd-empty b{color:var(--mint-ink);font-size:17px}
.cd-foot{border-top:1px solid var(--line);padding:16px 20px;display:grid;gap:10px;background:#fff}
.cd-row{display:flex;justify-content:space-between;font-weight:800;font-size:18px;color:var(--ink)}
.cd-note{font-size:12px;color:var(--ink-soft);text-align:center}
.cd-keep{border:0;background:none;color:var(--mint-ink);font-weight:600;text-decoration:underline;padding:4px}
.cd .pay-img{max-width:300px}
@media (prefers-reduced-motion:reduce){.cart-btn.bump{animation:none}.cd,.cd-ov{transition:none}}
.social-pill{display:flex;align-items:center;justify-content:center;gap:10px;width:fit-content;max-width:100%;margin:-4px auto 0;padding:10px 18px;background:#fff;border-radius:999px;box-shadow:0 6px 18px rgba(62,26,32,.12),0 1px 3px rgba(62,26,32,.08);font-size:14px;color:var(--ink);text-align:left}
.social-pill svg{width:22px;height:22px;flex:none}
.social-pill b{font-weight:800}
.ba-cta{display:none!important}
