/* =========================================================
   AURORA MOTION ENGINE · estética .au-*
   ---------------------------------------------------------
   Lenguaje visual "Aurora Glass": luz ambiental, profundidad
   y física de movimiento. Complementa a SIM.aurora (js).
   Todo respeta prefers-reduced-motion.
   ========================================================= */

/* ---------- scroll reveal en cascada ---------- */
.au-reveal {
  opacity: 0;
  transform: translateY(14px) scale(.985);
  transition:
    opacity .55s cubic-bezier(.2, .8, .3, 1),
    transform .55s cubic-bezier(.2, .8, .3, 1);
  will-change: opacity, transform;
}
.au-reveal.au-in {
  opacity: 1;
  transform: none;
  will-change: auto;
}

/* ---------- tilt 3D ---------- */
.au-tilt {
  transition: transform .25s cubic-bezier(.2, .8, .3, 1), box-shadow .25s ease;
  transform-style: preserve-3d;
}

/* ---------- luz ambiental (mesh gradient fijo) ---------- */
.au-ambient {
  position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(42% 38% at 12% 8%,  rgba(37, 99, 235, .07), transparent 70%),
    radial-gradient(38% 34% at 88% 12%, rgba(6, 182, 212, .06), transparent 70%),
    radial-gradient(46% 40% at 82% 88%, rgba(245, 179, 1, .05), transparent 70%),
    radial-gradient(36% 32% at 10% 90%, rgba(16, 185, 129, .05), transparent 70%);
  animation: auBreathe 14s ease-in-out infinite alternate;
}
@keyframes auBreathe {
  from { opacity: .75; }
  to   { opacity: 1; }
}
[data-theme="dark"] .au-ambient {
  background:
    radial-gradient(42% 38% at 12% 8%,  rgba(37, 99, 235, .12), transparent 70%),
    radial-gradient(38% 34% at 88% 12%, rgba(6, 182, 212, .09), transparent 70%),
    radial-gradient(46% 40% at 82% 88%, rgba(245, 179, 1, .06), transparent 70%),
    radial-gradient(36% 32% at 10% 90%, rgba(16, 185, 129, .07), transparent 70%);
}

/* ---------- profundidad extra en hover para tarjetas clave ---------- */
.au-tilt:hover {
  box-shadow: 0 18px 44px rgba(10, 42, 94, .22);
}
[data-theme="dark"] .au-tilt:hover {
  box-shadow: 0 18px 44px rgba(0, 0, 0, .5);
}

/* ---------- accesibilidad ---------- */
@media (prefers-reduced-motion: reduce) {
  .au-reveal { opacity: 1; transform: none; transition: none; }
  .au-tilt { transition: none; }
  .au-ambient { animation: none; }
}
