/* Estilos compartidos por las páginas del sitio.
   Generado por tools/extraer_css.py: contiene sólo las reglas que ya
   eran idénticas en las cinco páginas, de modo que el aspecto no cambia. */

body { margin: 0; background: #eef2f7; }
* { box-sizing: border-box; }
.lang-pill > div { display: flex; background: #f1f5f9; border-radius: 7px; padding: 3px; gap: 2px; }
.lang-pill { display: flex; align-items: center; padding: 0 8px; }
.lang-btn[aria-pressed="true"] { background: #fff; color: #1d4ed8; box-shadow: 0 1px 3px rgba(0,0,0,0.10); }

@media (max-width: 640px) {
  .r-nav { padding: 0 12px !important; flex-wrap: wrap !important; }
  .r-nav-brand { min-height: 44px !important; padding: 0 108px 0 2px !important; font-size: 16px !important; flex: 1 0 100% !important; justify-content: flex-start !important; white-space: nowrap !important; }
  .r-nav-links .lang-pill { position: absolute !important; top: 4px; right: 10px; min-height: 36px !important; padding: 0 !important; }
  .r-nav-links { flex: 1 0 100% !important; min-width: 0 !important; overflow-x: auto !important; flex-wrap: nowrap !important; justify-content: flex-start !important; scrollbar-width: thin !important; scrollbar-color: #94a3b8 #f1f5f9; }
  .r-nav-links::-webkit-scrollbar { display: block; height: 4px; }
  .r-nav-links::-webkit-scrollbar-track { background: #f1f5f9; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}

/* Conmutador de idioma: enlaces con el aspecto de los botones anteriores */
.lang-btn { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.lang-btn[aria-current="page"] { background: #fff; color: #1d4ed8; box-shadow: 0 1px 3px rgba(0,0,0,0.10); }
.lang-btn[aria-current="page"]:hover { opacity: 1; }
