/* 🧭 RTL foundation for Arabic (/ar/)
   Every rule here is scoped to [dir="rtl"] so it remains inert on every LTR locale.
   Linked as the last stylesheet in <head> so it overrides inline and shared rules.
*/

[dir="rtl"] {
  text-align: right;
  direction: rtl;
}

[dir="rtl"] body {
  text-align: right;
  direction: rtl;
}

[dir="rtl"] p,
[dir="rtl"] h1,
[dir="rtl"] h2,
[dir="rtl"] h3,
[dir="rtl"] h4,
[dir="rtl"] h5,
[dir="rtl"] h6,
[dir="rtl"] li {
  text-align: start;
}

/* ── Directional SVG Icons & Chevrons ── */
[dir="rtl"] .chev-ico,
[dir="rtl"] .triage-arr svg,
[dir="rtl"] .guide-link svg,
[dir="rtl"] .rack-arrows [data-dir="next"] svg,
[dir="rtl"] .rack-arrows [data-dir="prev"] svg,
[dir="rtl"] .model-disclosure summary::after,
[dir="rtl"] .crumb-sep,
[dir="rtl"] .crumb-arrow,
[dir="rtl"] .back-link svg,
[dir="rtl"] .crumbs span:not(:last-child):not(:first-child) {
  transform: scaleX(-1);
}

/* Hover motions: in RTL, forward motion is to the left (-X in screen coords, which is +X when scaled) */
@media (hover: hover) {
  [dir="rtl"] .sc-compat-link:hover::after,
  [dir="rtl"] .hero-store:hover .sc-store-link::after,
  [dir="rtl"] .gift-store:hover .sc-store-link::after,
  [dir="rtl"] .sc-meta-store:hover .sc-store-link::after,
  [dir="rtl"] .sc-alt-row:hover .sc-store-link::after,
  [dir="rtl"] .who-link:hover::after,
  [dir="rtl"] .helplinks a:hover > .chev-ico,
  [dir="rtl"] .answer a.triage-row:hover .triage-arr svg,
  [dir="rtl"] .model-disclosure:not([open]) summary:hover::after {
    transform: scaleX(-1) translateX(3px);
  }

  [dir="rtl"] .rack-back:hover .chev-ico,
  [dir="rtl"] .crumbs a:hover .crumb-arrow {
    transform: scaleX(-1) translateX(-3px);
  }

  [dir="rtl"] .rack-arrows [data-dir="next"]:hover svg {
    transform: scaleX(-1) translateX(2px);
  }

  [dir="rtl"] .rack-arrows [data-dir="prev"]:hover svg {
    transform: scaleX(-1) translateX(-2px);
  }
}

/* Active states */
[dir="rtl"] html :is(a, button:not(.browse-toggle)):active .chev-ico,
[dir="rtl"] html .guide-link:active svg,
[dir="rtl"] html a.triage-row:active .triage-arr svg,
[dir="rtl"] .sc-compat-link:active::after,
[dir="rtl"] .hero-store:active .sc-store-link::after,
[dir="rtl"] .gift-store:active .sc-store-link::after,
[dir="rtl"] .sc-meta-store:active .sc-store-link::after,
[dir="rtl"] .sc-alt-row:active .sc-store-link::after,
[dir="rtl"] .who-link:active::after {
  transform: scaleX(-1) translateX(3px);
  transition: none;
}

[dir="rtl"] html .rack-back:active .chev-ico,
[dir="rtl"] html .crumbs a:active .crumb-arrow {
  transform: scaleX(-1) translateX(-3px);
  transition: none;
}

/* ── Margins, Paddings & Alignments ── */
[dir="rtl"] ol,
[dir="rtl"] ul,
[dir="rtl"] .bub ol,
[dir="rtl"] .bub ul,
[dir="rtl"] .answer ol,
[dir="rtl"] .answer ul {
  padding-left: 0;
  padding-right: 24px;
}

[dir="rtl"] .helplinks .chev-ico {
  margin-left: 0;
  margin-right: 3px;
}

[dir="rtl"] .fnav a.fplay::after {
  margin-left: 0;
  margin-right: 5px;
}

[dir="rtl"] .crumb-search::after {
  margin-left: 0;
  margin-right: 2px;
}

[dir="rtl"] .chat-home {
  text-align: right;
}

[dir="rtl"] .chat-actions {
  margin-left: 0;
  margin-right: auto;
}

[dir="rtl"] .chat-att-clear {
  margin-left: 0;
  margin-right: 2px;
}

/* Search inputs */
[dir="rtl"] .faqfind input {
  padding: 13px 44px 13px 40px;
  text-align: right;
}

[dir="rtl"] .faqfind .mag {
  left: auto;
  right: 14px;
}

[dir="rtl"] .faqfind .clr {
  right: auto;
  left: 10px;
}

[dir="rtl"] .faqfind .fkey {
  right: auto;
  left: 12px;
}

[dir="rtl"] .faq-results .cat-tag {
  margin-left: 0;
  margin-right: auto;
}

[dir="rtl"] .reply input {
  text-align: right;
}

[dir="rtl"] .reply .r-mag {
  left: auto;
  right: 16px;
}

[dir="rtl"] .reply .clr {
  right: auto;
  left: 8px;
}

[dir="rtl"] .region-search-box input {
  padding: 10px 14px 10px 36px;
  text-align: right;
}

[dir="rtl"] .region-search-box .r-mag {
  left: auto;
  right: 12px;
}

[dir="rtl"] .devcheck input {
  padding-left: 46px;
  padding-right: 44px;
  text-align: right;
}

[dir="rtl"] .devcheck .ph {
  left: auto;
  right: 16px;
}

[dir="rtl"] .devcheck .clr {
  right: auto;
  left: 12px;
}

/* ── Chat Bubbles ── */
[dir="rtl"] .bub {
  box-shadow: -3px 4px 0 rgba(51, 47, 39, .1);
}

/* ── Language Picker ── */
[dir="rtl"] .langpick .langmenu {
  left: auto;
  right: -40px;
}

[dir="rtl"] .langpick .langmenu::after {
  left: auto;
  right: var(--notch-x, 93px);
}

@media (max-width: 580px) {
  [dir="rtl"] .langpick .langmenu {
    right: auto;
    left: 0;
  }
  [dir="rtl"] .langpick .langmenu::after {
    right: auto;
    left: var(--notch-x, 36px);
  }
}

/* ── LTR Isolation for Commands, Prices & Technical Tokens ── */
[dir="rtl"] kbd.cmd,
[dir="rtl"] .cmd,
[dir="rtl"] .cprice,
[dir="rtl"] .pc-price,
[dir="rtl"] .sc-price,
[dir="rtl"] .price,
[dir="rtl"] .path,
[dir="rtl"] [data-ltr],
[dir="rtl"] bdi {
  unicode-bidi: isolate;
  direction: ltr;
  display: inline-block;
}
