/**
 * assets/shared/css/rtl.css — Support RTL réel pour l'arabe (§9 du cahier des charges).
 *
 * Chargée UNIQUEMENT quand la langue active est l'arabe (voir includes/i18n.php),
 * en plus de site.css / dashboard.css, jamais à la place.
 *
 * IMPORTANT — historique : une première version de ce fichier ciblait des
 * classes qui n'existaient pas (`.tp-sidebar-membre`, `.tp-content-membre`)
 * ou des propriétés sans effet (une marge sur un layout flex, un `right/left`
 * sur un élément non positionné) — ces règles n'avaient donc jamais eu le
 * moindre effet visuel, alors qu'elles semblaient couvrir le sujet à la
 * lecture du code. Corrigé ici après vérification de chaque sélecteur
 * contre le CSS réel (site.css / dashboard.css), pas seulement par
 * déduction. Ne plus ajouter de règle ici sans vérifier que la classe
 * ciblée existe et que la propriété a un effet réel dans son contexte
 * (flex vs position vs flow normal).
 */

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

/* Police : les fontes latines (Sora/Inter) ne couvrent pas l'arabe — sans
   fonte de repli adaptée, le navigateur retombe sur une police système
   parfois peu lisible. Cairo est gratuite (Google Fonts), bien supportée,
   et s'accorde visuellement avec Inter/Sora (même famille de graisses). */
[dir="rtl"] body,
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3, [dir="rtl"] h4, [dir="rtl"] h5, [dir="rtl"] h6 {
  font-family: 'Cairo', 'Inter', system-ui, sans-serif;
}

/* Nav publique (.tp-navbar .nav) : liste horizontale simple, l'inversion
   d'ordre est correcte ici (flex-direction: row par défaut en LTR). */
[dir="rtl"] .tp-navbar .nav {
  flex-direction: row-reverse;
}
/* Sélecteur de langue : idem, petite liste horizontale à inverser. */
[dir="rtl"] .tp-lang-switch {
  flex-direction: row-reverse;
}

/* Icônes Font Awesome placées avant un texte (me-1, me-2, me-3 Bootstrap) :
   doivent basculer de l'autre côté du mot en RTL. */
[dir="rtl"] .me-1, [dir="rtl"] .me-2, [dir="rtl"] .me-3 {
  margin-right: 0 !important;
  margin-left: .35rem !important;
}
[dir="rtl"] .ms-1, [dir="rtl"] .ms-2, [dir="rtl"] .ms-3 {
  margin-left: 0 !important;
  margin-right: .35rem !important;
}

/* Espace membre : `.sidebar` et `.page-wrap` sont deux enfants flex de
   `.app-shell` (display:flex ; direction row par défaut, PAS une marge de
   décalage) — inverser l'ordre des flex-items suffit à passer la sidebar
   à droite, contrairement à une marge qui n'a aucun effet dans ce contexte. */
[dir="rtl"] .app-shell {
  flex-direction: row-reverse;
}
[dir="rtl"] .sidebar {
  border-left: 1px solid var(--border-color, #E1E7F0);
  border-right: none;
}
@media (max-width: 991.98px) {
  [dir="rtl"] .sidebar { right: 0; left: auto; transform: translateX(100%); }
  [dir="rtl"] .sidebar.open { transform: translateX(0); }
}
[dir="rtl"] .sidebar .nav-link i,
[dir="rtl"] .notif-item .notif-icon {
  margin-left: 12px;
  margin-right: 0;
}

/* Formulaires : alignement des champs et des groupes d'icône. */
[dir="rtl"] .form-control,
[dir="rtl"] .form-select,
[dir="rtl"] textarea {
  text-align: right;
}
[dir="rtl"] .input-group > .input-group-text:first-child {
  border-radius: 0 var(--radius-sm, 8px) var(--radius-sm, 8px) 0;
}
[dir="rtl"] .input-group > .input-group-text:last-child {
  border-radius: var(--radius-sm, 8px) 0 0 var(--radius-sm, 8px);
}

/* Dropdown menus Bootstrap : alignement à droite du déclencheur. */
[dir="rtl"] .dropdown-menu {
  --bs-position: end;
  text-align: right;
}

/* Fil d'Ariane (breadcrumb) : le séparateur "/" reste visuellement neutre,
   mais l'ordre de lecture doit se faire de droite à gauche. */
[dir="rtl"] .tp-breadcrumb {
  direction: rtl;
}

/* Cartes entreprise : le contenu suit déjà `text-align:right` hérité du
   body : seule la mise en page interne à deux colonnes (logo + texte, via
   `.d-flex.gap-3` dans includes/functions.php::renderCarteEntreprise) doit
   être inversée explicitement, sans toucher aux autres `.d-flex` du site
   (ex. les groupes icône+texte inline, qu'il ne faut PAS inverser en bloc :
   voir l'erreur précédente qui appliquait row-reverse à TOUS les `.d-flex`
   sans distinction, cassant potentiellement des mises en page non prévues). */
[dir="rtl"] .tp-card-entreprise .card-body > .d-flex.gap-3 {
  flex-direction: row-reverse;
}

/* Wizard d'inscription/création de fiche : numéros d'étape dans l'ordre
   de lecture RTL. */
[dir="rtl"] .wizard-steps {
  flex-direction: row-reverse;
}

/* Badges de secteur/complétion sur les cartes : le contenu suit le flux
   normal du texte, aucune règle position-based n'est nécessaire ici (ils ne
   sont pas positionnés en absolu dans le CSS existant — voir includes/
   functions.php::renderCarteEntreprise). */
