/* ============================================================
   GOPOS ANIMATIONS — Scroll animasyonları, geçişler
   ============================================================ */

/* ── Scroll Animasyonları ─────────────────────────────────── */
[data-animate] {
  opacity: 0;
  transition: opacity 0.6s ease, transform 0.6s ease;
}

[data-animate="fade-up"]   { transform: translateY(30px); }
[data-animate="fade-down"] { transform: translateY(-30px); }
[data-animate="fade-left"] { transform: translateX(30px); }
[data-animate="fade-right"]{ transform: translateX(-30px); }
[data-animate="zoom-in"]   { transform: scale(0.9); }
[data-animate="float"]     { opacity: 1; }

[data-animate].is-visible {
  opacity: 1;
  transform: none;
}

/* Gecikme */
[data-delay="100"] { transition-delay: 100ms; }
[data-delay="200"] { transition-delay: 200ms; }
[data-delay="300"] { transition-delay: 300ms; }
[data-delay="400"] { transition-delay: 400ms; }
[data-delay="500"] { transition-delay: 500ms; }

/* Erişilebilirlik: Hareket azalt */
@media (prefers-reduced-motion: reduce) {
  [data-animate], [data-animate].is-visible {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .blob, .hero-float, .gp-btn--glow, .badge-dot {
    animation: none !important;
  }
}

/* ── Skeleton Loader ──────────────────────────────────────── */
.skeleton {
  background: linear-gradient(90deg, var(--gp-bg-soft) 25%, var(--gp-bg-tint) 50%, var(--gp-bg-soft) 75%);
  background-size: 200% 100%;
  animation: skeleton-shimmer 1.5s infinite;
  border-radius: var(--radius);
}
@keyframes skeleton-shimmer {
  from { background-position: 200% 0; }
  to   { background-position: -200% 0; }
}

/* ── Sayfa Geçişi ─────────────────────────────────────────── */
.page-transition-enter {
  opacity: 0;
  transform: translateY(8px);
}
.page-transition-enter-active {
  opacity: 1;
  transform: none;
  transition: all .3s ease;
}
