/* RecoPad UI polish — scroll reveal, card hover, page fade */

:root {
  --sh-2: 0 8px 25px -5px rgba(44, 36, 32, 0.08), 0 4px 10px -6px rgba(44, 36, 32, 0.04);
}

@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior: smooth; }
}

/* Scroll reveal — ui.js tags [data-reveal], adds .is-visible on enter */
@media (prefers-reduced-motion: no-preference) {
  .ui-ready [data-reveal]:not(.is-visible) {
    opacity: 0;
    transform: translateY(16px);
  }
  .ui-ready [data-reveal] {
    transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.2, 0.7, 0.3, 1);
    will-change: opacity, transform;
  }
}

/* Card hover lift */
@media (prefers-reduced-motion: no-preference) {
  .sc,
  .cc,
  .rc:not(.rc-cov),
  .tc,
  .rp-stat-card,
  .rp-promo-card,
  .rp-action-card,
  .rp-callout,
  .rp-card.rp-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  }

  .sc:hover,
  .cc:hover,
  .rc:not(.rc-cov):hover,
  .tc:hover,
  .rp-stat-card:hover,
  .rp-promo-card:hover,
  .rp-action-card:hover,
  .rp-callout:hover {
    transform: translateY(-3px);
    box-shadow: var(--sh-2);
    border-color: rgba(137, 24, 17, 0.22);
  }
}

@keyframes rpPgIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@media (prefers-reduced-motion: no-preference) {
  .page-content > .container-fluid {
    animation: rpPgIn 0.22s ease;
  }
}
