/* Escala única de tamaños · se carga al final en todas las pantallas (alumno, René, administración, clásicas y acceso).
   Objetivo: letras y botones tranquilos y parejos. Para volver atrás basta quitar su <link>. */
html body{font-size:15px!important;line-height:1.5}
/* Títulos de pantalla */
body h1,#av-title,.cm-head h1,.page-heading h2,.ia-s h2,.ia-hi h2,#ia-rhome h2,.income-heading h2,.crm-heading h2,.register-heading h2,.editor-heading h2,.admin-heading h2,.gate h1,.head h1,#workspace>.heading h1{font-size:22px!important;font-weight:700!important;line-height:1.25!important;letter-spacing:0!important}
/* Subtítulos y títulos de tarjeta */
body h2,.ia-s h2,.cm-card h2{font-size:18px!important;font-weight:700!important;line-height:1.3!important}
body h3,.bank-insights h3{font-size:16px!important;font-weight:700!important;line-height:1.3!important}
.cm-hero h2{font-size:20px!important}#month-label{font-size:16px!important}
.modal-title,dialog h2,dialog h3{font-size:18px!important}
/* Cifras grandes */
.hero-amount,.ia-sum,.ia-big,.tx-detail-amt,.learning-gauge strong{font-size:30px!important;line-height:1.15!important}
.stat-val,.admin-metrics strong,.admin-metrics b,.finance-stats strong,.finance-stats article>strong,.finance-cash-stats article strong,.income-stats strong,.bi-kpis strong,.history-summary strong,.kpi b,.fun .st b,.cm-big,.thermo-ring strong,.category-donut strong,.voice-preview strong{font-size:24px!important;line-height:1.2!important}
.reg-amount-display,.ia-amt .reg-amount-display{font-size:38px!important}
.thermo-ring strong,.category-donut strong{font-size:22px!important}
/* Botones y tarjetas de acción */
.btn-sm,.action-main,.cm-btn,.btn-primary,#voice-start,.btn,.big-btn{font-size:14px!important;min-height:40px!important;height:auto!important;padding-top:8px!important;padding-bottom:8px!important;border-radius:12px!important}
.ia-big2{min-height:0!important;height:auto!important;padding:18px 20px!important;font-size:17px!important;gap:4px!important}
.ia-big2 small,.ia-big2 span+span{font-size:13px!important;font-weight:500!important}
.ia-rbig{min-height:0!important;padding:14px 18px!important;font-size:15px!important}
.act{min-height:0!important;height:auto!important;padding:14px 16px!important}
.act b,.act strong{font-size:15px!important}.act small,.act span{font-size:13px!important}
.rene-stat{min-height:0!important;padding:12px 16px!important;font-size:14px!important}.rene-stat b,.rene-stat strong{font-size:22px!important}
#history-expense,#history-income{min-height:40px!important;font-size:14px!important}
.marrow{font-size:20px!important}
/* Campos: 15 px en computador; 16 px en celular para que el teléfono no haga zoom al escribir */
input:not([type=checkbox]):not([type=radio]):not(#p-calculadoras *),select:not(#p-calculadoras *),textarea{min-height:44px!important;font-size:15px!important;border-radius:12px!important}
textarea{min-height:88px!important}
@media (max-width:899px){
 body h1,#av-title,.cm-head h1,.page-heading h2,.gate h1,.head h1{font-size:20px!important}
 input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}
 .btn-sm,.action-main,.cm-btn,.btn-primary,#voice-start,.btn,.big-btn{min-height:44px!important}
}
