/* ==========================================================================
   Logic Software — overrides RTL para árabe.
   Se carga SOLO en las páginas de /ar/, después de logic.css, y actúa sobre
   [dir="rtl"] en <html>. No se toca logic.css: esto es un añadido, no una
   reescritura — si algo fallara, basta con quitar este <link> y las páginas
   /ar/ vuelven a maquetarse en LTR (con el texto en árabe, pero sin romper).
   25/08/2026.
   ========================================================================== */

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

/* La tipografía latina (Archivo) no cubre árabe: se necesita una familia
   propia. Se declara sobre `body`, no sobre `html`, porque logic.css fija
   font-family directamente en `body` — una regla heredada de un ancestro
   nunca gana a una declaración directa sobre el propio elemento. */
[dir="rtl"] body { font-family: "Noto Kufi Arabic", "Archivo", -apple-system, "Segoe UI", system-ui, Roboto, Arial, sans-serif; }
[dir="rtl"] .tag,
[dir="rtl"] .register,
[dir="rtl"] .n { font-family: "Noto Kufi Arabic", var(--mono); } /* la mono no lleva glifos arabes */

/* La cabecera: el logo a la derecha, el menú y las acciones a la izquierda */
[dir="rtl"] .menu { margin-left: 0; margin-right: 8px; }
[dir="rtl"] .top .right { margin-left: 0; margin-right: auto; }

/* El registro: la columna "Ref" empieza pegada al borde de lectura (derecha) */
[dir="rtl"] .register caption { text-align: right; }
[dir="rtl"] .register thead th { text-align: right; }
[dir="rtl"] .register .act { text-align: left; }

/* Los iconos de flecha (→) apuntan al sentido de lectura: se invierten */
[dir="rtl"] .btn svg,
[dir="rtl"] .row-actions svg,
[dir="rtl"] .act svg { transform: scaleX(-1); }

/* Bleed y separadores que usaban margin-left/border-left físicos */
[dir="rtl"] .bleed { margin-left: 0; margin-right: calc(50% - 50vw); border-right: 0; border-left: 0; }
[dir="rtl"] .bleed + figcaption { margin-left: auto; margin-right: auto; }
[dir="rtl"] .pipe-step { border-right: 0; border-left: 1px solid var(--line); }
[dir="rtl"] .pipe-step:last-child { border-left: 0; }

/* Móvil: el menú desplegado y sus separadores */
@media (max-width: 900px) {
  [dir="rtl"] .menu a { border-left: 0; border-right: 0; }
  [dir="rtl"] .register .act { text-align: right; }
}

/* El selector de idioma (mismo bloque en las tres versiones) */
.lang-switch { display: flex; align-items: center; gap: 2px; font: 600 13px/1 var(--sans); }
.lang-switch a { padding: 6px 8px; border-radius: 7px; color: var(--txt2); text-decoration: none; }
.lang-switch a:hover { background: var(--line); color: var(--txt); }
.lang-switch a[aria-current="true"] { color: var(--ink); background: var(--line); }
