/* ============================================================================
 * Siya9a Pro — RTL (arabe). Chargé après les autres feuilles ; actif seulement
 * quand js/i18n.js pose <html dir="rtl">. Tout est scopé sous [dir="rtl"].
 * Principe : les mises en page flex/grid se retournent seules ; on ne corrige ici que
 * les positions/marges/bordures écrites en left/right.
 * ========================================================================== */

/* Pas de flash de texte français pendant le chargement du dictionnaire */
html.i18n-pending body { visibility: hidden; }

[dir="rtl"] body,
[dir="rtl"] input, [dir="rtl"] select, [dir="rtl"] textarea, [dir="rtl"] button {
  font-family: "Cairo", "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}
[dir="rtl"] body { letter-spacing: 0; }

/* Les nombres, e-mails, URL, plaques restent lisibles de gauche à droite */
[dir="rtl"] input[type="email"], [dir="rtl"] input[type="tel"], [dir="rtl"] input[type="url"],
[dir="rtl"] input[type="number"], [dir="rtl"] input[type="password"] { direction: ltr; text-align: right; }
[dir="rtl"] input[type="email"]::placeholder, [dir="rtl"] input[type="tel"]::placeholder,
[dir="rtl"] input[type="password"]::placeholder { direction: rtl; }
[dir="rtl"] .ltr, [dir="rtl"] [data-ltr] { direction: ltr; unicode-bidi: isolate; display: inline-block; }

/* ---- Champ mot de passe ---- */
[dir="rtl"] .pw-wrap input.fi,
[dir="rtl"] #onboarding .pw-wrap input.fi { padding-right: 14px; padding-left: 46px; }
[dir="rtl"] .pw-toggle { right: auto; left: 6px; }

/* ---- Éléments flottants ---- */
[dir="rtl"] .fab { right: auto; left: max(16px, calc(50% - 215px + 16px)); }
[dir="rtl"] .video-controls { right: auto; left: 10px; }
[dir="rtl"] .ob-fab { right: auto; left: 22px; }
[dir="rtl"] .ob-fab-label { right: auto; left: 64px; }
[dir="rtl"] .siya-pricing-close { right: auto; left: 16px; }
@media (max-width: 640px) { [dir="rtl"] .ob-fab { right: auto; left: 14px; } }
@media (min-width: 600px) and (max-width: 1024px) {
  [dir="rtl"] .fab { right: auto; left: max(16px, calc(50% - 280px + 16px)); }
}
@media (min-width: 1025px) {
  [dir="rtl"] .fab { right: auto; left: 32px; }
  [dir="rtl"] .app-shell { padding-right: 0; padding-left: 24px; }
}

/* ---- Barre latérale (desktop) : passe à droite via la grille ; bordure côté contenu ---- */
[dir="rtl"] .ap-sidebar { border-right: 0; border-left: 1px solid var(--ap-border); }
[dir="rtl"] .ap-nav-item { text-align: start; }
[dir="rtl"] #onboarding { flex-direction: row !important; }   /* annule le row-reverse historique */

/* ---- Cartes, puces, interrupteurs ---- */
[dir="rtl"] .fr-card { border-left: 0; border-right: 6px solid var(--red); }
[dir="rtl"] .sync-chip { margin-left: 0; margin-right: auto; }
[dir="rtl"] .switch .slider:before { left: auto; right: 3px; }
[dir="rtl"] .switch input:checked + .slider:before { transform: translateX(-20px); }
[dir="rtl"] .fin-pill { margin-left: 0; margin-right: 6px; }
[dir="rtl"] .fin-salaires-mons { padding-right: 0; padding-left: 4px; }
[dir="rtl"] .fin-mon-chip { text-align: right; }
[dir="rtl"] .fin-bulletins-head-totals div { text-align: left; }
[dir="rtl"] .ap-idigi-card::after { right: auto; left: -40px; }
[dir="rtl"] .pipeline-step:not(:last-child)::after { right: auto; left: -6px; }
[dir="rtl"] .siya-pricing-footer .sandbox-tag { margin-right: 0; margin-left: 8px; }
[dir="rtl"] .ob-features { border-left: 0; border-right: 1px solid #eef2f7; }

/* ---- Tableaux ---- */
[dir="rtl"] .pdata-table thead th,
[dir="rtl"] .pdata-table td { text-align: right; }
[dir="rtl"] .pdata-table .amount { text-align: left; }
[dir="rtl"] .pdata-table .col-action { text-align: left; }
@media (max-width: 640px) {
  [dir="rtl"] .pdata-table .col-action { right: auto; left: 14px; }
}
[dir="rtl"] .psearch .psearch-icon { left: auto; right: 11px; }
[dir="rtl"] .psearch input { padding-left: 12px; padding-right: 36px; }
[dir="rtl"] .pkebab-menu { right: auto; left: 0; }
[dir="rtl"] .pkebab-menu button { text-align: right; }

/* ---- Panneau latéral glissant ---- */
[dir="rtl"] .psheet { right: auto; left: 0; transform: translateX(-100%); }
[dir="rtl"] .psheet.open { transform: translateX(0); }

/* ---- Montants : lus de droite à gauche (« 15,900 درهم ») ---- */
[dir="rtl"] .ap-solde-amount,
[dir="rtl"] .ap-solde-sub-value { direction: rtl; unicode-bidi: isolate; text-align: start; }
[dir="rtl"] .pill, [dir="rtl"] .ap-badge { white-space: nowrap; }

/* ---- Calendrier : « précédent » pointe vers la droite en RTL ---- */
[dir="rtl"] [data-testid="cal-prev-month"], [dir="rtl"] [data-testid="cal-next-month"] { transform: scaleX(-1); }

/* ---- Aides diverses ---- */
[dir="rtl"] .em-i, [dir="rtl"] .ap-nav-item svg { flex-shrink: 0; }
/* Flèches directionnelles ASCII/emoji : l'arabe les inverse dans le dictionnaire (← au lieu de →) */
[dir="rtl"] [data-flip] { transform: scaleX(-1); }

/* ---- Sélecteur de langue (visible dans les deux sens) ---- */
.lang-switch {
  display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid var(--border, #e2e8f0); background: var(--bg, #f8fafc); color: var(--black, #0f172a);
  border-radius: 999px; padding: 6px 12px; font: 700 12px/1 "Cairo", "DM Sans", system-ui, sans-serif;
  cursor: pointer; min-height: 34px; white-space: nowrap; width: auto;
}
.lang-switch:hover { background: var(--white, #fff); }
.lang-switch .ls-ar { display: none; }
html[lang="ar"] .lang-switch .ls-fr { display: none; }
html[lang="ar"] .lang-switch .ls-ar { display: inline; }
