/* Cart Drawer — self-contained (core WooCommerce CSS is dequeued outside
   Woo-context pages, so this doesn't lean on any .woocommerce-* class). */

/* WooCommerce core inserts its own "View cart" link (.added_to_cart) next to
   the button after a successful add — redundant now that the drawer has its
   own View Cart button, so it's hidden everywhere. */
a.added_to_cart, .added_to_cart.wc-forward{display:none !important}

.cart-drawer{position:fixed;inset:0;z-index:9999;visibility:hidden;pointer-events:none;font-family:var(--sans,'Mulish',sans-serif)}
.cart-drawer.is-open{visibility:visible;pointer-events:auto}

.cart-drawer__overlay{position:absolute;inset:0;background:rgba(13,10,8,.55);opacity:0;transition:opacity .35s ease}
.cart-drawer.is-open .cart-drawer__overlay{opacity:1}

.cart-drawer__panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,100vw);background:var(--cream,#f9f2e2);box-shadow:-12px 0 40px rgba(13,10,8,.25);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .4s cubic-bezier(.16,1,.3,1)}
.cart-drawer.is-open .cart-drawer__panel{transform:translateX(0)}

.cart-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--line,rgba(67,55,45,.14))}
.cart-drawer__head h2{font-family:var(--serif,'Fraunces',serif);font-size:1.3rem;font-weight:600;color:var(--brown,#43372D);margin:0}
.cart-drawer__close{background:none;border:0;font-size:1.6rem;line-height:1;color:var(--brown,#43372D);cursor:pointer;padding:4px 8px;border-radius:50%;transition:background .2s}
.cart-drawer__close:hover{background:rgba(67,55,45,.08)}

.cart-drawer__content{flex:1;display:flex;flex-direction:column;min-height:0;overflow-y:auto}

.cart-drawer__empty{margin:auto;text-align:center;padding:40px 24px;color:var(--ink-soft,#6E6052)}
.cart-drawer__empty svg{margin:0 auto 14px auto;color:var(--honey,#F2B831)}
.cart-drawer__empty p{margin:0 0 18px 0;font-size:.95rem}
.cart-drawer__shopbtn{display:inline-flex;align-items:center;justify-content:center;padding:12px 28px;border-radius:100px;background:var(--honey,#F2B831);color:var(--brown,#43372D);font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:background .25s,transform .25s}
.cart-drawer__shopbtn:hover{background:var(--gold,#EA9A36);transform:translateY(-2px)}

.cart-drawer__items{list-style:none;margin:0;padding:8px 20px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}
.cart-drawer__item{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line,rgba(67,55,45,.14))}
.cart-drawer__item:last-child{border-bottom:0}
.cart-drawer__item-img{display:block;width:64px;height:64px;border-radius:10px;overflow:hidden;background:#fff;flex:none}
.cart-drawer__item-img img{width:100%;height:100%;object-fit:cover;display:block}
.cart-drawer__item-info{display:flex;flex-direction:column;gap:3px;min-width:0}
.cart-drawer__item-name{font-size:.92rem;font-weight:700;color:var(--brown,#43372D);text-decoration:none;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cart-drawer__item-name:hover{color:var(--terra,#BC5B38)}
.cart-drawer__item-qty{font-size:.78rem;color:var(--ink-soft,#6E6052)}
.cart-drawer__item-price{font-size:.85rem;font-weight:700;color:var(--terra,#BC5B38)}
.cart-drawer__item-price ins{text-decoration:none}
.cart-drawer__item-remove{background:none;border:0;font-size:1.3rem;line-height:1;color:var(--ink-soft,#6E6052);cursor:pointer;padding:6px;border-radius:50%;transition:background .2s,color .2s;flex:none}
.cart-drawer__item-remove:hover{background:rgba(188,91,56,.1);color:var(--terra,#BC5B38)}

.cart-drawer__footer{padding:18px 24px 24px;border-top:1px solid var(--line,rgba(67,55,45,.14));background:var(--cream,#f9f2e2)}
.cart-drawer__subtotal{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font-size:.95rem;color:var(--brown,#43372D)}
.cart-drawer__subtotal strong{font-size:1.15rem;font-family:var(--serif,'Fraunces',serif)}
.cart-drawer__btn{display:flex;align-items:center;justify-content:center;width:100%;padding:14px;margin-bottom:10px;border-radius:100px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:background .25s,color .25s,transform .25s,box-shadow .25s}
.cart-drawer__btn:last-child{margin-bottom:0}
.cart-drawer__btn--checkout{background:var(--honey,#F2B831);color:var(--brown,#43372D)}
.cart-drawer__btn--checkout:hover{background:var(--gold,#EA9A36);transform:translateY(-2px);box-shadow:0 10px 24px rgba(234,154,54,.35)}
.cart-drawer__btn--view{background:transparent;color:var(--brown,#43372D);border:1px solid var(--line,rgba(67,55,45,.3))}
.cart-drawer__btn--view:hover{background:rgba(67,55,45,.06)}

@media (max-width:480px){
  .cart-drawer__panel{width:100vw}
  .cart-drawer__items{padding:8px 16px}
  .cart-drawer__head{padding:18px 16px}
  .cart-drawer__footer{padding:16px 16px 20px}
}
