/**
 * RTL overrides (Arabic)
 *
 * Loaded only when yundian_get_html_dir() === 'rtl'.
 *
 * Layer 1 (below) mirrors the directional utility classes actually used in the
 * templates and is maintained by hand — extend it when new templates or
 * directional classes are introduced. Layer 2 (below) is hand-written
 * component-level fixes.
 *
 * Specificity note: [dir="rtl"] .class (0,2,0) beats Tailwind's .class
 * (0,1,0), so these rules win regardless of load order — no !important.
 */

/* ===== Layer 1: directional utility mirrors (generated) ===== */

/* ===== Margins ===== */
[dir="rtl"] .ml-1 { margin-left:0;margin-right:0.25rem; }
[dir="rtl"] .ml-4 { margin-left:0;margin-right:1rem; }
[dir="rtl"] .ml-auto { margin-left:0;margin-right:auto; }
[dir="rtl"] .mr-1 { margin-right:0;margin-left:0.25rem; }
[dir="rtl"] .mr-2 { margin-right:0;margin-left:0.5rem; }
[dir="rtl"] .mr-3 { margin-right:0;margin-left:0.75rem; }
[dir="rtl"] .mr-6 { margin-right:0;margin-left:1.5rem; }
[dir="rtl"] .mr-auto { margin-right:0;margin-left:auto; }
@media (min-width: 768px) {
  [dir="rtl"] .md\:ml-auto { margin-left:0;margin-right:auto; }
}
@media (min-width: 1024px) {
  [dir="rtl"] .lg\:ml-auto { margin-left:0;margin-right:auto; }
}

/* ===== Paddings ===== */
[dir="rtl"] .pl-5 { padding-left:0;padding-right:1.25rem; }
[dir="rtl"] .pr-6 { padding-right:0;padding-left:1.5rem; }
@media (min-width: 1024px) {
  [dir="rtl"] .lg\:pr-8 { padding-right:0;padding-left:2rem; }
}
@media (min-width: 1280px) {
  [dir="rtl"] .xl\:pr-12 { padding-right:0;padding-left:3rem; }
}

/* ===== Inset positioning ===== */
[dir="rtl"] .-right-1 { right:auto;left:-0.25rem; }
[dir="rtl"] .left-0 { left:auto;right:0; }
[dir="rtl"] .left-1\/2 { left:auto;right:50%; }
[dir="rtl"] .left-2 { left:auto;right:0.5rem; }
[dir="rtl"] .left-3 { left:auto;right:0.75rem; }
[dir="rtl"] .left-6 { left:auto;right:1.5rem; }
[dir="rtl"] .right-0 { right:auto;left:0; }
[dir="rtl"] .right-2 { right:auto;left:0.5rem; }
[dir="rtl"] .right-3 { right:auto;left:0.75rem; }
[dir="rtl"] .right-4 { right:auto;left:1rem; }

/* ===== Text alignment ===== */
[dir="rtl"] .text-left { text-align:right; }
[dir="rtl"] .text-right { text-align:left; }
@media (min-width: 768px) {
  [dir="rtl"] .md\:text-left { text-align:right; }
  [dir="rtl"] .md\:text-right { text-align:left; }
}
@media (min-width: 1024px) {
  [dir="rtl"] .lg\:text-left { text-align:right; }
  [dir="rtl"] .lg\:text-right { text-align:left; }
}

/* ===== Border sides ===== */
[dir="rtl"] .border-l-4 { border-right-width:4px;border-left-width:0;border-right-style:solid; }
[dir="rtl"] .border-r { border-left-width:1px;border-right-width:0; }
[dir="rtl"] .border-r-0 { border-left-width:0; }

/* ===== Corner radii ===== */
[dir="rtl"] .rounded-l-lg { border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem; }
[dir="rtl"] .rounded-r-lg { border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem; }
[dir="rtl"] .rounded-r-md { border-top-left-radius:0.375rem;border-bottom-left-radius:0.375rem; }

/* ===== Horizontal translate ===== */
[dir="rtl"] .-translate-x-1\/2 { --tw-translate-x:50%;transform:translateX(50%); }
[dir="rtl"] .-translate-x-2 { --tw-translate-x:0.5rem; }
[dir="rtl"] .group:hover .group-hover\:translate-x-0 { --tw-translate-x:0; }
[dir="rtl"] .group:hover .group-hover\:translate-x-1 { --tw-translate-x:-0.25rem; }

/* ===== Layer 2: component-level fixes (hand-written) ===== */

/* ---------- Directional icons ----------
   Lucide replaces <i data-lucide="x"> with <svg class="lucide lucide-x">.
   The standalone `scale` property is used instead of `transform` so Tailwind's
   translate/transition utilities (e.g. group-hover:translate-x-1) keep working. */
[dir="rtl"] .lucide-chevron-right,
[dir="rtl"] .lucide-arrow-right,
[dir="rtl"] .lucide-chevron-left { scale: -1 1; }

/* ---------- Language switcher panels ---------- */
[dir="rtl"] .yundian-lang-panel { right:auto;left:0; }
[dir="rtl"] #yundian-desktop-nav .wpml-ls-sub-menu { right:auto;left:0; }
[dir="rtl"] #mobile-menu li.wpml-ls-item .wpml-ls-sub-menu { padding-left:0;padding-right:0.75rem; }

/* ---------- Fixed overlays ---------- */
/* The footer renders .yundian-floating-cta (see class-yundian-floating-cta.php),
   whose inline <style> pins it with `right`. This selector outranks it (0,2,0 vs 0,1,0). */
[dir="rtl"] .yundian-floating-cta { right:auto;left:1.5rem; }
@media (max-width: 767px) {
  [dir="rtl"] .yundian-floating-cta { left:1rem; }
}

/* ---------- Gallery / lightbox arrows ---------- */
[dir="rtl"] .yundian-gallery-prev { left:auto;right:16px; }
[dir="rtl"] .yundian-gallery-next { right:auto;left:16px; }
[dir="rtl"] .yundian-lightbox-arrow-prev,
[dir="rtl"] .yundian-attr-lightbox-arrow-prev { left:auto;right:1rem; }
[dir="rtl"] .yundian-lightbox-arrow-next,
[dir="rtl"] .yundian-attr-lightbox-arrow-next { right:auto;left:1rem; }
@media (max-width: 767px) {
  [dir="rtl"] .yundian-gallery-prev { right:8px; }
  [dir="rtl"] .yundian-gallery-next { left:8px; }
  [dir="rtl"] .yundian-lightbox-arrow-prev,
  [dir="rtl"] .yundian-attr-lightbox-arrow-prev { right:0.5rem; }
  [dir="rtl"] .yundian-lightbox-arrow-next,
  [dir="rtl"] .yundian-attr-lightbox-arrow-next { left:0.5rem; }
}

/* ---------- Corner badges / floating controls ---------- */
[dir="rtl"] .yundian-case-badge { left:auto;right:0.75rem; }
[dir="rtl"] .yundian-related-product-badges { left:auto;right:0.5rem; }
[dir="rtl"] .yundian-gallery-zoom-btn { right:auto;left:12px; }
[dir="rtl"] .yundian-search-popup-scope-arrow { right:auto;left:8px; }

/* ---------- Search UI ---------- */
[dir="rtl"] .yundian-search-suggestions-right {
  padding-left:0;
  padding-right:2rem;
  border-left:none;
  border-right:1px solid #e5e7eb;
}
@media (max-width: 767px) {
  [dir="rtl"] .yundian-search-suggestions-right { padding-right:0;border-right:none; }
}

/* ---------- Text alignment ---------- */
[dir="rtl"] .yundian-product-tabs-shell .yundian-product-tab-link { text-align:right; }

/* ---------- Inline-start spacing (icon before label) ---------- */
[dir="rtl"] .yundian-product-action-icon { margin-right:0;margin-left:0.625rem; }
[dir="rtl"] .yundian-related-product-meta-value { margin-left:0;margin-right:0.25rem; }

/* ---------- Spec table column divider ---------- */
[dir="rtl"] .yundian-spec-item { border-right:none;border-left:1px solid #e5e7eb; }
[dir="rtl"] .yundian-spec-item:nth-child(2n) { border-left:none; }

/* ---------- Key attributes row divider ---------- */
[dir="rtl"] .yundian-ka-item::before { left:auto;right:-0.75rem; }
@media (min-width: 1024px) {
  [dir="rtl"] .yundian-ka-item::before { right:-1rem; }
}