.cart-sidebar{position:fixed;top:0;right:-400px;width:380px;max-width:100vw;height:100vh;background:#fff;box-shadow:-4px 0 24px rgba(0,0,0,.12);z-index:1001;transition:right .32s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.cart-sidebar.open{right:0}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid #ebebeb}.cart-header h3{font-family:'Playfair Display',serif;font-size:19px;font-weight:700;color:#2c2c2c}.close-cart{font-size:24px;color:#4b5563;cursor:pointer;border:none;background:none;min-width:40px;min-height:40px}.cart-items{flex:1;overflow-y:auto;padding:14px}.empty-cart{text-align:center;padding:36px 16px;color:#4b5563;font-size:13.5px}.cart-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #ebebeb;position:relative;align-items:center}.cart-item img{width:64px;height:64px;aspect-ratio:1;object-fit:cover;border-radius:6px;flex-shrink:0}.cart-item-details{flex:1}.cart-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:3px}.cart-item-header h4{font-size:13px;font-weight:700;color:#111;padding-right:16px;line-height:1.25}.cart-item-weight{font-size:11.5px;color:#4b5563;margin-bottom:8px}.cart-item-footer{display:flex;justify-content:space-between;align-items:center}.remove-item-x{position:absolute;top:12px;right:0;background:none;border:none;font-size:18px;color:#9ca3af;cursor:pointer}.cart-qty-selector{display:flex;align-items:center;border:1px solid #e5e7eb;border-radius:6px;overflow:hidden}.cart-qty-selector button{background:#fff;border:none;padding:4px 8px;font-size:13px;color:#4b5563;cursor:pointer;min-width:28px}.cart-qty-selector span{padding:4px 10px;font-size:12px;font-weight:700;color:#111;border-left:1px solid #e5e7eb;border-right:1px solid #e5e7eb}.cart-price-original{text-decoration:line-through;color:#64748b;font-size:11px;margin-right:4px}.cart-price-final{font-size:13.5px;font-weight:700;color:#111827}
/* .cart-footer{padding:16px;border-top:1px solid #ebebeb} */
.checkout-btn{width:100%;background:#b94a1a;color:#fff;border:none;border-radius:8px;padding:13px;font-family:'Nunito',sans-serif;font-size:13.5px;font-weight:700;cursor:pointer}
.cart-footer {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px 0;
}

.cart-tabs {
  display: flex;
  border-top: 1px solid #eee;
  margin: 0 -14px;
}

.cart-tab {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 10px;
  background: #fff;
  border: 0;
  border-bottom: 3px solid transparent;
  color: #6b6b6b;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.cart-tab:hover { color: #2c2c2c; }

.cart-tab.active {
  color: #f39c12;
  border-bottom-color: #f39c12;
}

.cart-tab:focus-visible {
  outline: 3px solid #f39c12;
  outline-offset: -3px;
}

.offers-panel {
  flex: 1;
  overflow-y: auto;
  padding: 14px;
}

.offer-card {
  border: 1px dashed #f39c12;
  border-radius: 8px;
  padding: 12px 14px;
  margin-bottom: 12px;
  background: #fffaf0;
  color: #2c2c2c;
}

.offer-card p { margin: 4px 0 0; font-size: 13px; }

.offer-link {
  display: inline-block;
  margin-top: 8px;
  color: #2c2c2c;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid #f39c12;
}

.offer-link:hover { color: #f39c12; }

#cartItems[hidden],
#offersPanel[hidden] { display: none !important; }