.cart-popup {
  position: fixed;
  top: 20%;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 8px 20px rgba(0,0,0,.3);
  padding: 20px;
  z-index: 9999;
  max-width: 400px;
  width: 90%;
}
.cart-popup.hidden { display: none; }
.cart-popup-content { text-align: center; }
.cart-popup-actions .btn { margin: 5px; }
.cart-quantity-input { max-width: 5rem; }
.cart-product-description { min-width: 0; }
