html {
  font-size: 15px;
  position: relative;
  min-height: 100%;
}

.btn:focus, .btn:active:focus, .form-control:focus {
  box-shadow: 0 0 0 0.2rem rgba(201, 162, 39, 0.25);
  border-color: var(--color-gold);
}

img[data-fallback] {
  object-fit: cover;
}

/* Fly to Cart Animation Styles */
.flying-cart-item {
  position: fixed;
  pointer-events: none;
  z-index: 10000;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  border: 2px solid var(--color-gold, #c9a227);
}

.cart-badge-bounce {
  animation: cartBounce 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;
}

@keyframes cartBounce {
  0% { transform: scale(1); }
  25% { transform: scale(1.6); }
  50% { transform: scale(0.9); }
  75% { transform: scale(1.25); }
  100% { transform: scale(1); }
}

.btn-added-state {
  background-color: #198754 !important; /* bootstrap green */
  color: #fff !important;
  border-color: #198754 !important;
  box-shadow: 0 4px 12px rgba(25, 135, 84, 0.3) !important;
}

