/* style.css — Global overrides & utilities on top of Tailwind */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=Inter:wght@300;400;500;600;700&display=swap');

:root {
  --bg-main: #FDFCFB;
  --bg-soft: #F5F1ED;
  --text-dark: #2a2a2a;
  --text-light: #6b6b6b;
  --accent: #E94560;
  --accent-dark: #D6344D;
  --border-color: #EAE1DA;
}

* {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

.font-display {
  font-family: 'Playfair Display', serif;
}

/* Smooth page transitions */
html {
  scroll-behavior: smooth;
}

/* Hide scrollbar but keep scrolling on mobile */
body::-webkit-scrollbar {
  display: none;
}
body {
  -ms-overflow-style: none;
  scrollbar-width: none;
  background-color: var(--bg-main);
  color: var(--text-dark);
}

/* Placeholder image for missing product images */
img.product-img[src=""],
img.product-img:not([src]) {
  background: linear-gradient(135deg, var(--bg-soft), #EAE1DA);
}

/* Fade-in animation for cards */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: translateY(0); }
}
.animate-fade-up {
  animation: fadeUp 0.35s ease-out both;
}

/* Toast notification */
.toast {
  position: fixed;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  background: var(--accent);
  color: #fff;
  padding: 0.75rem 1.5rem;
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 500;
  z-index: 9999;
  opacity: 0;
  box-shadow: 0 10px 20px -5px rgba(233, 69, 96, 0.4);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.toast.show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.toast.error {
  background: #1f1f1f;
  box-shadow: 0 10px 20px -5px rgba(0, 0, 0, 0.35);
}
