/* NexxoWin 2.0 · Tipografía estándar (Winsermant)
   Una sola letra (Inter) y una escala fija de tamaños y grosores para todo el sistema.
   Se carga al final: corrige los tamaños sueltos de la versión anterior y de las pantallas nuevas.

   Escala                       Tamaño   Grosor
   --t-titulo  (título página)   24 px    800
   --t-seccion (título tarjeta)  17 px    700
   --t-sub     (subtítulo)       15 px    700
   --t-base    (texto)           14 px    400
   --t-sec     (texto secundario)13 px    400
   --t-campo   (etiqueta campo)  13 px    600
   --t-chico   (notas, insignias)12 px    600
   --t-mini    (MAYÚSCULAS)      11 px    700 + espaciado
   Grosores permitidos: 400, 600, 700 y 800. */

:root{
  --t-familia:"Inter","Segoe UI",system-ui,-apple-system,sans-serif;
  --t-titulo:24px; --t-seccion:17px; --t-sub:15px; --t-base:14px; --t-sec:13px; --t-campo:13px; --t-chico:12px; --t-mini:11px;
}

/* Familia única (los íconos conservan su letra) */
body,button,input,select,textarea,.app-shell-v2,.login-page{font-family:var(--t-familia)}
.ms,.material-symbols-rounded{font-family:"Material Symbols Rounded"!important}

/* Texto base */
.app-shell-v2 main{font-size:var(--t-base);line-height:1.5}

/* Títulos */
.app-shell-v2 main h1,.login-page h1{font-size:var(--t-titulo)!important;font-weight:800!important;letter-spacing:-.3px;line-height:1.2}
.app-shell-v2 main h2:not(.v2-stage h2),.v2-help h2,.login-page h2:not(.v2-login-pitch h2){font-size:var(--t-seccion)!important;font-weight:700!important;letter-spacing:-.1px;line-height:1.3}
.app-shell-v2 main h3,.v2-help h3,.v2-tour h3{font-size:var(--t-sub)!important;font-weight:700!important;line-height:1.35}
/* Excepción pedida: nombre de la etapa en las tarjetas del dashboard, más grande */
.v2-stage h2{font-size:var(--t-titulo)!important;font-weight:800!important}

/* Tablas */
.app-shell-v2 main table th{font-size:var(--t-mini)!important;font-weight:700!important;letter-spacing:.06em;text-transform:uppercase}
.app-shell-v2 main table td{font-size:var(--t-sec)}

/* Formularios */
.app-shell-v2 main label > span:first-child,.app-shell-v2 main .field-label,.login-page label > span:first-child{font-size:var(--t-campo)!important;font-weight:600!important;text-transform:none;letter-spacing:0}
.app-shell-v2 main :is(input,select,textarea),.login-page :is(input,select,textarea){font-size:var(--t-base)!important}

/* Botones */
.app-shell-v2 :is(button,.button),.login-page :is(button,.button){font-size:var(--t-sec)!important;font-weight:600!important}
.app-shell-v2 .app-sidebar-link{font-size:var(--t-base)!important}
.app-shell-v2 .app-sidebar-section h2{font-size:10px!important;font-weight:700!important;letter-spacing:.14em!important}

/* Insignias, notas y textos pequeños */
.app-shell-v2 :is(.badge,.report-status-badge,.case-status-badge,.v2-stage-chip,.dashboard-relation-chip,.case-list-chip){font-size:var(--t-chico)!important;font-weight:600!important}
.app-shell-v2 main small{font-size:var(--t-chico)}

/* Normalizar grosores fuera de la escala */
.app-shell-v2 main [style*="font-weight:900"],.app-shell-v2 main b,.app-shell-v2 main strong{font-weight:700}
.app-shell-v2 main .v2-stage-total strong,.app-shell-v2 main .report-summary-card strong{font-weight:800}

/* Cifras grandes (indicadores): una sola medida */
:root{--t-cifra:24px}
.app-shell-v2 main :is(.report-card strong,.report-summary-card strong,.v2-stage-total strong){font-size:var(--t-cifra)!important;font-weight:800!important}
.app-shell-v2 main .v2-stage-total strong{font-size:30px!important}

/* Etiquetas en MAYÚSCULAS y contadores pequeños: mínimo 11 px */
.app-shell-v2 .app-topbar small,.app-shell-v2 .app-branch-switcher small{font-size:var(--t-mini)!important;font-weight:700!important}
.app-shell-v2 main :is(.case-pending-count,.case-form-badge,[class*="-count"]){font-size:var(--t-mini)!important;font-weight:700!important}
.app-shell-v2 main svg text{font-size:var(--t-mini)}

/* Pantallas de un caso: el nombre del caso es el título de la página; el módulo (Pagos, Documentos…) es título de sección */
.app-shell-v2 main:has(.v2-case-head) h1{font-size:var(--t-seccion)!important;font-weight:700!important;letter-spacing:-.1px}
.v2-case-title a:not(.v2-case-back){font-size:var(--t-titulo)!important;font-weight:800!important}
