/*
=========================================
CloudCart Animations
=========================================
*/

/* =====================================
Global Transition
===================================== */

* {
  transition:
    background-color 0.3s ease,
    color 0.3s ease,
    border-color 0.3s ease,
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

/* =====================================
Fade Up
===================================== */

.reveal {
  opacity: 0;

  transform: translateY(40px);

  transition:
    opacity 0.8s ease,
    transform 0.8s ease;
}

.reveal.active {
  opacity: 1;

  transform: translateY(0);
}

/* =====================================
Hero Image Float
===================================== */

.hero-image img {
  animation: heroFloat 6s ease-in-out infinite;
}

@keyframes heroFloat {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-18px);
  }

  100% {
    transform: translateY(0);
  }
}

/* =====================================
Product Card Hover
===================================== */

.product-card:hover {
  transform: translateY(-12px);
}

.product-card:hover .product-image img {
  transform: scale(1.08) rotate(1deg);
}

/* =====================================
Category Hover
===================================== */

.category-card:hover {
  transform: translateY(-10px);
}

.category-card:hover .category-overlay {
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.92));
}

/* =====================================
Buttons
===================================== */

.btn:hover {
  transform: translateY(-3px);

  box-shadow: 0 15px 35px rgba(79, 70, 229, 0.3);
}

/* =====================================
Dashboard Cards
===================================== */

.dashboard-card:hover {
  transform: translateY(-8px);
}

/* =====================================
Review Cards
===================================== */

.review-card:hover {
  transform: translateY(-8px);
}

/* =====================================
Statistics
===================================== */

.statistic-card:hover {
  transform: translateY(-8px);
}

/* =====================================
Images
===================================== */

img {
  user-select: none;
}

/* =====================================
Navbar
===================================== */

.navbar {
  transition:
    background 0.35s ease,
    backdrop-filter 0.35s ease;
}

.navbar-scrolled {
  background: rgba(10, 15, 30, 0.88);

  backdrop-filter: blur(16px);
}

/* =====================================
Gradient Animation
===================================== */

.text-gradient {
  background-size: 200% auto;

  animation: gradientShift 6s linear infinite;
}

@keyframes gradientShift {
  from {
    background-position: left center;
  }

  to {
    background-position: right center;
  }
}

/* =====================================
Loading Pulse
===================================== */

.loading {
  animation: pulse 1.8s infinite;
}

@keyframes pulse {
  0% {
    opacity: 0.5;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 0.5;
  }
}

/* =====================================
Section Fade
===================================== */

section {
  animation: fadeSection 0.8s ease;
}

@keyframes fadeSection {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
