/* Right-to-left overrides — loaded only by the Arabic edition, after style.css.
   Everything here mirrors a physical left/right value that dir="rtl" cannot flip on its own. */

body { text-align: right; }

/* Skip link */
.skip-link { left: auto; right: -999px; }
.skip-link:focus { right: 10px; left: auto; }

/* Mobile drawer slides in from the left edge in RTL */
.nav-close { right: auto; left: 22px; }

@media (max-width: 760px) {
  .site-nav {
    right: auto;
    left: 0;
    transform: translateX(-100%);
    box-shadow: 10px 0 30px rgba(0, 0, 0, .3);
  }
  .site-nav.is-open { transform: translateX(0); }
}

/* Quick answer panel: accent rail moves to the right edge */
.quick-answer {
  border-left: 1px solid var(--border);
  border-right: 6px solid var(--teal);
}

/* Marker lists */
.qa-list li,
.check-list li,
.yes-list li,
.no-list li { padding-left: 0; padding-right: 30px; }
.dot-list li { padding-left: 0; padding-right: 20px; }
.qa-list li::before,
.check-list li::before,
.yes-list li::before,
.no-list li::before,
.dot-list li::before { left: auto; right: 0; }

/* Route timeline */
.timeline-item { padding-left: 0; padding-right: 4px; }
.timeline-item::before { left: auto; right: 16px; }

/* Tour cards */
.tour-card-ribbon { left: auto; right: 14px; }

/* Comparison table: header cells and the sticky first column follow the reading direction */
.compare th,
.compare td { text-align: right; }
.compare tbody th { text-align: right; }
.compare td:first-child,
.compare th:first-child {
  left: auto;
  right: 0;
  box-shadow: -2px 0 6px rgba(0, 0, 0, 0.08);
}

/* FAQ toggle */
.faq-item summary { padding: 20px 0 20px 34px; }
.faq-item summary::after { right: auto; left: 0; }

/* Back-to-top button */
.back-to-top { right: auto; left: 20px; }

/* Latin-script fragments (names, places, prices, operator names) stay left-to-right
   inside otherwise right-to-left text. */
.review-loc,
.spec-list li strong + *,
.footer-lang-list { unicode-bidi: isolate; }
.review-loc { direction: ltr; text-align: right; }
