/* YayoDesk landing — supplementary styles.
 * Tailwind handles the heavy lifting; this file covers only what Tailwind
 * can't do cleanly: fade-in animations, typing dots, RTL flips, and a few
 * print/iOS polish rules.
 */

html { scroll-behavior: smooth; }

body.font-ar,
html[dir="rtl"] body { font-family: 'Cairo', system-ui, sans-serif; }

/* Fade-in on scroll (triggered by IntersectionObserver in main.js) */
[data-fade] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
[data-fade].is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Flip arrow icons in RTL so they point in the reading direction */
html[dir="rtl"] .rtl-flip { transform: scaleX(-1); }

/* Typing indicator (CSS-only, used in the hero AI chat card) */
.typing-dot {
  width: 6px;
  height: 6px;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.7);
  display: inline-block;
  animation: typing-bounce 1.2s infinite ease-in-out;
}
.typing-dot:nth-child(2) { animation-delay: 0.15s; }
.typing-dot:nth-child(3) { animation-delay: 0.3s; }

@keyframes typing-bounce {
  0%, 60%, 100% { transform: translateY(0);   opacity: 0.5; }
  30%           { transform: translateY(-4px); opacity: 1;   }
}

/* Reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce) {
  [data-fade] { opacity: 1; transform: none; transition: none; }
  .typing-dot { animation: none; }
  html { scroll-behavior: auto; }
}

/* iOS tap highlight polish */
a, button { -webkit-tap-highlight-color: transparent; }

/* Ensure long Arabic words don't blow out feature/pricing cards */
.card-body { overflow-wrap: anywhere; word-break: break-word; }

/* Print: keep only text */
@media print {
  header, footer, #contact { display: none; }
  body { background: #fff; color: #000; }
}
