.cart-overlay{position:fixed;inset:0;background:rgba(7,6,4,.55);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease;z-index:120}.cart-overlay.open{opacity:1;visibility:visible}.cart-drawer{position:fixed;top:0;right:0;height:100%;width:min(428px,92vw);background:var(--cream);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .32s cubic-bezier(.4,0,.2,1);z-index:121;box-shadow:-24px 0 60px rgba(0,0,0,.4)}.cart-drawer.open{transform:translateX(0)}.cd-head{background:var(--black);color:var(--cream-text);justify-content:space-between;padding:20px 22px;flex-shrink:0}.cd-head,.cd-head h2{display:flex;align-items:center}.cd-head h2{font-family:var(--font-display);font-weight:400;font-size:23px;letter-spacing:.04em;text-transform:uppercase;gap:11px}.cd-head .cd-count{font-family:var(--font-body);font-size:12px;font-weight:700;color:#241608;background:var(--soft-gold);border-radius:30px;padding:3px 10px;letter-spacing:.02em}.cd-close{color:var(--cream-text);display:grid;place-items:center;width:44px;height:44px;border-radius:50%;transition:.18s;margin-right:-8px}.cd-close:hover{background:rgba(255,255,255,.1)}.cd-close svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2}.cd-ship{background:var(--cream-card);border-bottom:1px solid var(--line-cream);padding:14px 22px;flex-shrink:0}.cd-ship-msg{font-size:13px;color:var(--ink);display:flex;align-items:center;gap:9px;line-height:1.35}.cd-ship-msg svg{width:19px;height:19px;stroke:var(--bronze);fill:none;stroke-width:1.7;flex-shrink:0}.cd-ship-msg b{color:var(--bronze)}.cd-ship-bar{height:6px;border-radius:30px;background:var(--line-cream);margin-top:10px;overflow:hidden}.cd-ship-fill{height:100%;border-radius:30px;background:linear-gradient(90deg,var(--soft-gold),var(--gold));width:0;transition:width .4s ease}.cd-ship.done .cd-ship-fill{background:linear-gradient(90deg,#5fa86f,#2f8a4a)}.cd-body{flex:1;overflow-y:auto;padding:8px 22px;-webkit-overflow-scrolling:touch}.cd-item{display:grid;grid-template-columns:64px 1fr auto;gap:14px;padding:18px 0;border-bottom:1px solid var(--line-cream)}.cd-thumb{width:64px;height:64px;border-radius:10px;overflow:hidden;background:linear-gradient(160deg,#15120e,#070604);flex-shrink:0}.cd-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.cd-thumb img.cd-pack-img{-o-object-fit:contain;object-fit:contain;padding:7px;box-sizing:border-box;filter:drop-shadow(0 8px 10px rgba(0,0,0,.32))}.cd-info{min-width:0;display:flex;flex-direction:column;gap:3px}.cd-name{font-family:var(--font-display);font-weight:400;font-size:18px;letter-spacing:.02em;text-transform:uppercase;color:var(--ink);line-height:1.05}.cd-meta{font-size:12.5px;color:var(--muted)}.cd-unit{font-size:12.5px;color:var(--bronze);font-weight:700;margin-top:1px}.cd-qty{display:inline-flex;align-items:center;border:1.5px solid var(--line-cream);border-radius:8px;overflow:hidden;background:#fff;margin-top:9px;width:-moz-max-content;width:max-content}.cd-qty button{width:32px;height:34px;display:grid;place-items:center;color:var(--ink);transition:.15s}.cd-qty button:hover{background:var(--cream)}.cd-qty button svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.5}.cd-qty .cd-qv{width:34px;text-align:center;font-family:var(--font-display);font-size:16px;color:var(--ink)}.cd-right{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}.cd-line{font-family:var(--font-display);font-weight:400;font-size:17px;color:var(--ink);letter-spacing:.02em;white-space:nowrap}.cd-remove{font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);transition:.15s;padding:4px 0}.cd-remove:hover{color:var(--red-bbq)}.cd-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:40px 30px;color:var(--muted)}.cd-empty .ce-ic{width:78px;height:78px;border-radius:50%;border:1.5px solid var(--line-cream);display:grid;place-items:center;color:var(--bronze)}.cd-empty .ce-ic svg{width:36px;height:36px;stroke:currentColor;fill:none;stroke-width:1.4}.cd-empty h3{font-family:var(--font-display);font-weight:400;font-size:24px;letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}.cd-empty p{font-size:14px;max-width:240px;line-height:1.5}.cd-empty .btn{margin-top:6px}.cd-foot{flex-shrink:0;border-top:1px solid var(--line-cream);background:var(--cream-card);padding:20px 22px;display:flex;flex-direction:column;gap:14px}.cd-subtotal{display:flex;align-items:baseline;justify-content:space-between}.cd-subtotal .cs-l{font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.cd-subtotal .cs-l,.cd-subtotal .cs-v{font-family:var(--font-display);font-weight:400}.cd-subtotal .cs-v{font-size:30px;letter-spacing:.02em;color:var(--ink)}.cd-subtotal .cs-v small{font-size:15px;color:var(--muted);margin-right:4px}.cd-actions{display:flex;flex-direction:column;gap:10px}.cd-actions .btn{width:100%;font-size:14px;padding:15px 20px}.cd-actions .btn-wa{background:#1faf54;color:#fff;box-shadow:0 8px 22px rgba(31,175,84,.28)}.cd-actions .btn-wa:hover{background:#1a9c4a;transform:translateY(-2px);box-shadow:0 12px 28px rgba(31,175,84,.4)}.cd-actions .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line-cream)}.cd-actions .btn-ghost:hover{border-color:var(--bronze);background:var(--cream)}.cd-note{font-size:11.5px;color:var(--muted);text-align:center;line-height:1.4}.cart-badge.flash{animation:cartBump .42s ease}@keyframes cartBump{0%{transform:scale(1)}40%{transform:scale(1.6)}to{transform:scale(1)}}.cart-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(24px);z-index:130;background:var(--black);color:var(--cream-text);border:1px solid rgba(255,255,255,.12);padding:13px 22px;border-radius:30px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:10px;opacity:0;visibility:hidden;transition:.3s ease;box-shadow:0 16px 40px rgba(0,0,0,.4);white-space:nowrap}.cart-toast.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.cart-toast svg{width:19px;height:19px;stroke:var(--soft-gold);fill:none;stroke-width:2}@media(max-width:560px){.cart-drawer{width:100vw}.cd-subtotal .cs-v{font-size:26px}}