/* Custom styles can be added below */

/* Hide activation checklist FAB while admin drawers/modals lock body scroll. */
body.overflow-hidden #activation-checklist {
  display: none;
}

@keyframes sched-reveal-up {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes sched-hero-demo-in {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes sched-hero-demo-status-out {
  to { opacity: 0; transform: scale(0.92); }
}

@keyframes sched-hero-demo-status-in {
  from { opacity: 0; transform: scale(0.92); }
  to { opacity: 1; transform: scale(1); }
}

html:not(.js) [data-hero-demo="status-pending"] {
  opacity: 0;
}

html:not(.js) [data-hero-demo="status-confirmed"] {
  opacity: 1;
}

@media (prefers-reduced-motion: no-preference) {
  html.js [data-reveal] {
    opacity: 0;
    transform: translateY(16px);
  }

  html.js [data-reveal].is-visible {
    animation: sched-reveal-up 0.7s ease forwards;
  }

  html.js [data-reveal]:not(.is-visible) [data-hero-demo="dashboard"] {
    opacity: 0;
  }

  html.js [data-reveal]:not(.is-visible) [data-hero-demo="status-confirmed"] {
    opacity: 0;
  }

  html.js [data-reveal].is-visible [data-hero-demo="dashboard"] {
    animation: sched-hero-demo-in 0.55s ease forwards;
  }

  html.js [data-reveal].is-visible [data-hero-demo="status-pending"] {
    animation: sched-hero-demo-status-out 0.35s ease 1.4s forwards;
  }

  html.js [data-reveal].is-visible [data-hero-demo="status-confirmed"] {
    opacity: 0;
    animation: sched-hero-demo-status-in 0.35s ease 1.4s forwards;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.js [data-reveal],
  html.js [data-reveal].is-visible {
    opacity: 1;
    transform: none;
    animation: none;
  }

  [data-hero-demo="status-pending"] {
    opacity: 0;
  }

  [data-hero-demo="status-confirmed"] {
    opacity: 1;
  }
}
