/* Marca MCMA · color y tipografia.
   Define TODOS los tokens que consume mcma-ui.css, asi que reemplaza a
   mcma-tema.css: se carga uno o el otro, nunca los dos.

   Paleta               Hex        Uso
   Azul                 #375AE6    accion, enlaces, foco
   Azul muy oscuro      #05174A    texto, superficies del modo oscuro
   Oro                  #B2894A    acento: filetes y enfasis, nunca texto
   Negro                #000000    contraste maximo
   Blanco               #FFFFFF    superficies del modo claro

   Neue Montreal es de pago (Pangram Pangram). Switzer es el equivalente
   libre mas cercano; Inter queda de respaldo si el CDN no responde.
   Para cambiar a la licenciada: reemplazar la @import y el primer nombre
   de --tipo. */

@import url('https://api.fontshare.com/v2/css?f[]=switzer@400,500,600,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
/* Monoespaciada para cifras. Un panel financiero se reconoce por como
   alinea los numeros, no por los colores. */
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap');

:root{
  --tipo:"Switzer","Neue Montreal","Inter",-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  /* Base */
  --azul:#375AE6;  --azul-alto:#2947C4;  --azul-bajo:#5B79EC;
  --noche:#05174A; --negro:#000000;      --blanco:#FFFFFF;

  /* Oro: el acento de marca. Vive en filetes y enfasis -- nunca en texto
     corrido ni en superficies grandes, donde compite con el azul y cansa. */
  --oro:#B2894A; --oro-alto:#8F6C33; --oro-bajo:#D4B481;

  /* Superficies */
  --bg:#F5F6FA; --card:#FFFFFF; --card2:#EDEFF6; --line:#E2E5F0;
  --bd:rgba(0,12,62,.11); --bd2:rgba(0,12,62,.22);

  /* Texto */
  --text:#000C3E; --txt:#000C3E;
  --subt:#4A5478; --muted:#4A5478; --mut:#4A5478; --mut2:#7A83A0;

  /* Accion */
  --accent:#375AE6; --acento:#375AE6; --pri:#375AE6; --pri2:#5B79EC;
  --blue:#375AE6; --sky:#5B79EC; --vip:#375AE6; --p0:#375AE6;
  --deep:#000C3E; --on-pri:#FFFFFF;

  /* Semanticos: elegidos para convivir con el azul, no para competirle */
  --ok:#0A7C55;   --p3:#0A7C55;
  --warn:#9A6100; --p2:#9A6100;
  --bad:#C4302B;  --err:#C4302B; --p1:#C4302B;

  --ok-bg:rgba(10,124,85,.10);  --wn-bg:rgba(154,97,0,.11);
  --dg-bg:rgba(196,48,43,.09);  --in-bg:rgba(55,90,230,.09);
  --nt-bg:rgba(0,12,62,.06);  --oro-bg:rgba(178,137,74,.11);

  --rail:#000C3E; --rail-txt:#C3CAE6; --rail-mut:#6C77A0; --rail-hd:#8A93B8;

  /* Elevacion: casi plana. El sistema se apoya en el borde, no en la sombra. */
  --e-1:0 1px 2px rgba(0,12,62,.04);
  --e-2:0 3px 12px rgba(0,12,62,.07);
  --e-3:0 10px 28px rgba(0,12,62,.11);

  /* Radios mas cerrados que la version anterior: la marca es geometrica */
  --r-xs:6px; --r-sm:9px; --r-md:12px; --r-lg:14px; --r-full:999px;
}

[data-theme="dark"],[data-tema="oscuro"]{
  --bg:#000C3E; --card:#081543; --card2:#0D1B4E; --line:#1B2A63;
  --bd:rgba(255,255,255,.11); --bd2:rgba(255,255,255,.22);

  --text:#FFFFFF; --txt:#FFFFFF;
  --subt:#A6AFD0; --muted:#A6AFD0; --mut:#A6AFD0; --mut2:#7B85AC;

  --accent:#5B79EC; --acento:#5B79EC; --pri:#5B79EC; --pri2:#7D95F1;
  --blue:#5B79EC; --sky:#7D95F1; --vip:#7D95F1; --p0:#5B79EC;
  --deep:#375AE6; --on-pri:#FFFFFF;

  --ok:#4FC79A;   --p3:#4FC79A;
  --warn:#E0A94B; --p2:#E0A94B;
  --bad:#F08A85;  --err:#F08A85; --p1:#F08A85;

  --ok-bg:rgba(79,199,154,.14);  --wn-bg:rgba(224,169,75,.14);
  --dg-bg:rgba(240,138,133,.13); --in-bg:rgba(91,121,236,.16);
  --nt-bg:rgba(255,255,255,.07);
  --oro:#D8B47C; --oro-alto:#C09A5E; --oro-bajo:#EBD5AF;
  --oro-bg:rgba(216,180,124,.14);

  --e-1:0 1px 2px rgba(0,0,0,.30);
  --e-2:0 3px 12px rgba(0,0,0,.38);
  --e-3:0 10px 28px rgba(0,0,0,.50);
}

body{font-family:var(--tipo); letter-spacing:-.005em}

/* Toda cifra va en monoespaciada con cero tabular: las columnas alinean y
   un numero que cambia no mueve al de al lado. */
.num,.u-cifra,td[align="right"],.u-tabla .num{
  font-family:var(--mono); font-variant-numeric:tabular-nums; font-feature-settings:"zero" 1;
  letter-spacing:-.02em;
}
