/* Right-to-left overrides for Arabic. The base styles are authored left-to-right; everything that depends on
   direction is mirrored here so both languages share one set of components. Charts stay left-to-right (time runs left → right). */
[dir="rtl"] body { font-family: "IBM Plex Sans Arabic", "Inter", ui-sans-serif, system-ui, sans-serif; }
[dir="rtl"] .num, [dir="rtl"] .mono, [dir="rtl"] .kpi-value, [dir="rtl"] input[type=number], [dir="rtl"] .readout { font-family: "Inter", "IBM Plex Sans Arabic", ui-sans-serif, sans-serif; }
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3 { letter-spacing: 0; }
[dir="rtl"] .eyebrow, [dir="rtl"] .nav-label, [dir="rtl"] .wf-key { letter-spacing: 0; }

/* Direction-dependent icons point the other way */
[dir="rtl"] .lucide-chevron-right, [dir="rtl"] .lucide-chevron-left, [dir="rtl"] .lucide-arrow-right, [dir="rtl"] .lucide-arrow-left,
[dir="rtl"] .lucide-chevrons-right, [dir="rtl"] .lucide-chevrons-left, [dir="rtl"] .lucide-arrow-up-right, [dir="rtl"] .lucide-log-out { transform: scaleX(-1); }
[dir="rtl"] .nav-group.open > .nav-item .chev { transform: scaleX(-1) rotate(90deg); }

/* Shell */
[dir="rtl"] .sidebar { border-right: 0; border-left: 1px solid var(--border); }
[dir="rtl"] .nav-item, [dir="rtl"] .search-trigger, [dir="rtl"] .palette-item, [dir="rtl"] .features li button { text-align: right; }
[dir="rtl"] .nav-sub .nav-item { padding: 6px 40px 6px var(--sp-3); }
[dir="rtl"] .nav-sub .nav-item::before { left: auto; right: 21px; }
[dir="rtl"] .search-trigger .kbd { margin-left: 0; margin-right: auto; }
[dir="rtl"] .topbar-actions { margin-left: 0; margin-right: auto; }
[dir="rtl"] .role-switch { padding: 0 4px 0 6px; }
[dir="rtl"] .role-switch select { padding: 0 0 0 18px; background-position: left 0 center; }
@media (max-width: 1100px) {
  [dir="rtl"] .sidebar { left: auto; right: 0; transform: translateX(100%); }
  [dir="rtl"] body.nav-open .sidebar { transform: none; }
}

/* Components */
[dir="rtl"] .right { text-align: left; }
[dir="rtl"] .icon-btn .dot { right: auto; left: 7px; }
[dir="rtl"] select.input { padding-right: 12px; padding-left: 32px; background-position: left 12px center; }
[dir="rtl"] .input-group svg { left: auto; right: 12px; }
[dir="rtl"] .input-group .input { padding-left: 12px; padding-right: 36px; }
[dir="rtl"] .switch .track::after { left: auto; right: 3px; }
[dir="rtl"] .switch input:checked + .track::after { transform: translateX(-16px); }
[dir="rtl"] .pill .count { margin-left: 0; margin-right: 6px; }
[dir="rtl"] .filter-pill select { padding-right: 0; padding-left: 4px; }
[dir="rtl"] .kpi-value small { margin-left: 0; margin-right: 3px; }
[dir="rtl"] .kpi-value small.pre { margin: 0 0 0 4px; }
[dir="rtl"] .tbl th { text-align: right; }
[dir="rtl"] .tbl th .sort { margin-left: 0; margin-right: 2px; }
[dir="rtl"] .tbl th:first-child, [dir="rtl"] .tbl td:first-child { padding-left: 14px; padding-right: var(--sp-5); }
[dir="rtl"] .tbl th:last-child, [dir="rtl"] .tbl td:last-child { padding-right: 14px; padding-left: var(--sp-5); }
[dir="rtl"] .tbl .num, [dir="rtl"] .tbl th.num { text-align: left; }
[dir="rtl"] .pager { margin-left: 0; margin-right: auto; }
[dir="rtl"] .mini-list .ml-end { text-align: left; }
[dir="rtl"] .step::before { left: calc(50% + 20px); right: calc(-50% + 20px); }
[dir="rtl"] .timeline { padding-left: 0; padding-right: 26px; }
[dir="rtl"] .timeline::before { left: auto; right: 9px; }
[dir="rtl"] .tl-dot { left: auto; right: -26px; }
[dir="rtl"] .tl-h-item::after { left: auto; right: calc(50% + 26px); }
[dir="rtl"] .drawer { right: auto; left: 10px; transform: translateX(calc(-100% - 20px)); }
[dir="rtl"] .drawer.on { transform: none; }
@media (max-width: 640px) { [dir="rtl"] .drawer { left: 0; right: 0; } }
[dir="rtl"] .attach .faint, [dir="rtl"] .approval .badge { margin-left: 0; margin-right: auto; }
[dir="rtl"] .toasts { right: auto; left: 20px; }
[dir="rtl"] .chart-legend i, [dir="rtl"] .map-legend i { margin-right: 0; margin-left: 6px; }
[dir="rtl"] .map-legend { left: auto; right: 12px; }
[dir="rtl"] .popover { right: auto; left: 16px; }
[dir="rtl"] .notif.unread .notif-title::after { margin-left: 0; margin-right: 6px; }
[dir="rtl"] body.feedback-on .content::after { content: "وضع الملاحظات: انقر في أي مكان لإضافة تعليق"; }
[dir="rtl"] .readout { text-align: left; }
[dir="rtl"] .chart-box, [dir="rtl"] .chart-wrap, [dir="rtl"] canvas { direction: ltr; }
[dir="rtl"] .gauge-center, [dir="rtl"] .donut-center { direction: rtl; }

/* Values that mix numbers and Latin units ("1.028 g/ml", "KES 3.7M") keep their own reading order inside Arabic text */
[dir="rtl"] :is(dd, td, .kpi-value, .ml-end, .badge, .chip, .readout, .mono, .wf-tile-meta, .kpi-trend .delta) { unicode-bidi: plaintext; }
[dir="rtl"] dd, [dir="rtl"] .tbl td { text-align: right; }
[dir="rtl"] .tbl td.num { text-align: left; }
