/* Sticky header and the bag drawer. */
.sticky-head{position:sticky;top:0;z-index:60;background:#fff;border-bottom:1px solid var(--line)}
html.cart-open body{overflow:hidden}

#cart-drawer{position:fixed;inset:0;z-index:200}
#cart-drawer[hidden]{display:none}
.drawer-backdrop{position:absolute;inset:0;background:rgba(23,43,42,.45);opacity:0;transition:opacity .25s ease}
.drawer-panel{position:absolute;inset-block:0;inset-inline-end:0;display:flex;flex-direction:column;width:min(440px,100%);background:#fff;box-shadow:-12px 0 40px rgba(23,43,42,.18);transform:translateX(100%);transition:transform .26s cubic-bezier(.2,.7,.2,1);outline:none}
html[dir="rtl"] .drawer-panel{transform:translateX(-100%);box-shadow:12px 0 40px rgba(23,43,42,.18)}
#cart-drawer.is-open .drawer-backdrop{opacity:1}
#cart-drawer.is-open .drawer-panel{transform:none}

.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid var(--line)}
.drawer-head h2{margin:0;font-size:24px;line-height:1.2}
.drawer-count{color:var(--muted);font-weight:500;font-size:.75em}
.drawer-close{display:grid;place-items:center;min-width:44px;min-height:44px;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}
.drawer-close:hover{background:var(--soft)}

.drawer-lines{flex:1;margin:0;padding:0 24px;overflow-y:auto;list-style:none}
.drawer-line{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}
.drawer-thumb{flex:none;width:84px;height:84px;overflow:hidden;border-radius:12px;background:var(--soft)}
.drawer-thumb .product-photo,.drawer-thumb .product-art{width:100%;height:100%;object-fit:cover}
.drawer-thumb .product-art{display:grid;place-items:center;padding:6px;font-size:10px}
.drawer-thumb .product-art b,.drawer-thumb .product-art small{display:none}
.drawer-line-info{display:grid;flex:1;gap:6px;min-width:0;align-content:start}
.drawer-name{color:var(--ink);font-weight:600;line-height:1.35;text-decoration:none}
.drawer-price{color:var(--teal);font-size:17px}
.drawer-line-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}
.drawer-qty{display:inline-flex;align-items:center;gap:6px}
.drawer-qty button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ink);border-radius:10px;background:#fff;color:var(--ink);cursor:pointer}
.drawer-qty button:hover{background:var(--soft)}
.drawer-qty span{min-width:28px;text-align:center;font-weight:600}
.drawer-remove{min-height:44px;padding:0 4px;border:0;background:none;color:var(--muted);text-decoration:underline;cursor:pointer}
.drawer-remove:hover{color:var(--ink)}

.drawer-foot{display:grid;gap:12px;padding:20px 24px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff}
.drawer-subtotal{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.drawer-subtotal b{font-size:26px}
.drawer-note{margin:0;color:var(--muted);font-size:13px}
.drawer-checkout{width:100%;justify-content:center;text-align:center}
.drawer-continue{min-height:44px;border:0;background:none;color:var(--teal);font-weight:600;cursor:pointer}

.drawer-empty{display:grid;flex:1;place-content:center;justify-items:center;gap:16px;padding:32px 24px;text-align:center}
.drawer-empty p{margin:0;color:var(--muted)}
.drawer-empty-icon{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--soft);color:var(--teal)}

.toast-action{display:flex;align-items:center;gap:16px;padding:8px 8px 8px 22px}
html[dir="rtl"] .toast-action{padding:8px 22px 8px 8px}
.toast-action button{min-height:44px;padding:0 16px;border:0;border-radius:8px;background:rgba(255,255,255,.14);color:#fff;font-weight:600;cursor:pointer}
.toast-action button:hover{background:rgba(255,255,255,.24)}

@media (max-width:650px){
  .drawer-head{padding:16px 18px}
  .drawer-lines{padding:0 18px}
  .drawer-foot{padding-inline:18px}
  .sticky-head .header{padding-block:12px}
}
@media (prefers-reduced-motion:reduce){
  .drawer-backdrop,.drawer-panel{transition-duration:.01ms}
}

.drawer-whatsapp,.wa-icon{display:inline-flex;align-items:center;justify-content:center}
.drawer-whatsapp{gap:10px;color:#fff}
.wa-icon svg{width:22px;height:22px}
