/* SIOV360 V21.250 · ESTÁNDAR TIPOGRÁFICO Y DE CONTROLES
   Hoja final de normalización. Se carga después de los estilos de cada módulo
   para impedir que reglas heredadas vuelvan a cambiar tipografías, pesos o alturas. */
:root{
  --siov250-font:'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --siov250-title:#102a43;
  --siov250-text:#243b53;
  --siov250-muted:#62748a;
  --siov250-label:#52667c;
  --siov250-border:#cdd9e5;
  --siov250-soft:#f8fafc;
  --siov250-green:#3f9b27;
  --siov250-control-size:13px;
  --siov250-label-size:11px;
  --siov250-button-size:11px;
  --siov250-help-size:11px;
}

/* 1. UNA SOLA FAMILIA TIPOGRÁFICA EN TODA LA INTERFAZ AUTENTICADA. */
#menuScreen,
#menuScreen *,
body.siov-persistent-mode,
body.siov-persistent-mode *{
  font-family:var(--siov250-font)!important;
}

/* 2. JERARQUÍA ÚNICA. Se mantiene diferencia solo por función, no por módulo. */
#menuScreen .siov-workspace h1,
body.siov-persistent-mode :is(.menu-card,.admin-card,.audit-card,.finance-card,.maint-card,.sub-maint-card,.horom-card,.master-card,.program-card,.pm-card,.personnel-card,.weekly-card,.sso-card,.log-card,.alert-card,.incidence-card,.owner-card,.gd-card,.siov-attachment-card,.otm-card,.bkl-screen) h1{
  font-size:26px!important;line-height:1.2!important;font-weight:850!important;letter-spacing:-.015em!important;color:var(--siov250-title)!important;
}
#menuScreen .siov-workspace h2,
body.siov-persistent-mode :is(.menu-card,.admin-card,.audit-card,.finance-card,.maint-card,.sub-maint-card,.horom-card,.master-card,.program-card,.pm-card,.personnel-card,.weekly-card,.sso-card,.log-card,.alert-card,.incidence-card,.owner-card,.gd-card,.siov-attachment-card,.otm-card,.bkl-screen) h2{
  font-size:22px!important;line-height:1.25!important;font-weight:850!important;letter-spacing:-.01em!important;color:var(--siov250-title)!important;
}
#menuScreen .siov-workspace h3,
body.siov-persistent-mode :is(.menu-card,.admin-card,.audit-card,.finance-card,.maint-card,.sub-maint-card,.horom-card,.master-card,.program-card,.pm-card,.personnel-card,.weekly-card,.sso-card,.log-card,.alert-card,.incidence-card,.owner-card,.gd-card,.siov-attachment-card,.otm-card,.bkl-screen) h3{
  font-size:15px!important;line-height:1.3!important;font-weight:800!important;letter-spacing:0!important;color:var(--siov250-title)!important;
}
#menuScreen .siov-workspace h4,
body.siov-persistent-mode :is(.menu-card,.admin-card,.audit-card,.finance-card,.maint-card,.sub-maint-card,.horom-card,.master-card,.program-card,.pm-card,.personnel-card,.weekly-card,.sso-card,.log-card,.alert-card,.incidence-card,.owner-card,.gd-card,.siov-attachment-card,.otm-card,.bkl-screen) h4{
  font-size:12px!important;line-height:1.35!important;font-weight:800!important;letter-spacing:0!important;color:var(--siov250-title)!important;
}

/* 3. ETIQUETAS UNIFORMES. */
#menuScreen .siov-workspace label,
body.siov-persistent-mode label{
  font-size:var(--siov250-label-size)!important;
  line-height:1.3!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  color:var(--siov250-label)!important;
}

/* 4. CAMPOS UNIFORMES: mismo tamaño y peso para escribir, seleccionar y leer. */
#menuScreen .siov-workspace :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
body.siov-persistent-mode :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  font-size:var(--siov250-control-size)!important;
  line-height:1.35!important;
  font-weight:500!important;
  letter-spacing:0!important;
  color:#1f354d!important;
}
#menuScreen .siov-workspace :is(input,textarea)::placeholder,
body.siov-persistent-mode :is(input,textarea)::placeholder{
  font-family:var(--siov250-font)!important;
  font-size:var(--siov250-control-size)!important;
  font-weight:400!important;
  color:#7b8b9d!important;
  opacity:1!important;
}
#menuScreen .siov-workspace input[readonly],
body.siov-persistent-mode input[readonly]{
  font-size:var(--siov250-control-size)!important;
  font-weight:600!important;
  color:#17345f!important;
}

/* 5. BOTONES UNIFORMES. */
#menuScreen .siov-workspace button:not(.siov-nav-item),
body.siov-persistent-mode button:not(.siov-nav-item){
  font-size:var(--siov250-button-size)!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:0!important;
}

/* 6. TEXTOS AUXILIARES. Evita notas microscópicas de 8/9 px. */
#menuScreen .siov-workspace :is(.incidence-note,.incidence-section-subtitle,.m213-stop-note,.ia-history-count,.ia-history-source,.ia-history-ot,.alert-inc-list p,.ia-context-box p),
body.siov-persistent-mode :is(.incidence-note,.incidence-section-subtitle,.m213-stop-note,.ia-history-count,.ia-history-source,.ia-history-ot,.alert-inc-list p,.ia-context-box p){
  font-size:var(--siov250-help-size)!important;
  line-height:1.45!important;
  font-weight:500!important;
  letter-spacing:0!important;
}

/* 7. TABLAS: mismo criterio en todos los históricos. */
#menuScreen .siov-workspace table th,
body.siov-persistent-mode table th{
  font-size:10.5px!important;line-height:1.25!important;font-weight:800!important;letter-spacing:.01em!important;
}
#menuScreen .siov-workspace table td,
body.siov-persistent-mode table td{
  font-size:11.5px!important;line-height:1.35!important;font-weight:400!important;letter-spacing:0!important;
}

/* ========================================================================
   INCIDENTES & ALERTAS / REPORTE DE INCIDENCIA
   Normalización de detalle visual de la pantalla observada en V21.249.
   ======================================================================== */
#incidenciasScreen{
  font-family:var(--siov250-font)!important;
  color:var(--siov250-text)!important;
}

/* El encabezado CONTRAER generado automáticamente conserva una única escala. */
#incidenciasScreen .siov-global-collapse-toolbar,
#incidenciasScreen .siov-collapse-header{
  min-height:48px!important;
  box-sizing:border-box!important;
  padding:8px 14px!important;
  border:1px solid #d7e2ec!important;
  border-radius:10px!important;
  background:#f8fafc!important;
  box-shadow:none!important;
}
#incidenciasScreen .siov-global-collapse-title,
#incidenciasScreen .siov-collapse-header h3{
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:0!important;
  color:var(--siov250-title)!important;
}
#incidenciasScreen :is(.siov-global-collapse-toggle,.siov-collapse-toggle){
  min-height:34px!important;
  padding:7px 12px!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:800!important;
}

/* Todos los bloques usan la misma geometría. */
#incidenciasScreen .incidence-section{
  padding:14px!important;
}
#incidenciasScreen .incidence-form-block{
  margin:0 0 12px!important;
  padding:14px!important;
  border:1px solid #dfe7ef!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:none!important;
}
#incidenciasScreen .incidence-form-block:last-child{margin-bottom:0!important;}
#incidenciasScreen .incidence-grid{
  gap:14px 16px!important;
  align-items:start!important;
}

/* Misma etiqueta en cada columna. */
#incidenciasScreen .incidence-field{
  min-width:0!important;
  gap:0!important;
}
#incidenciasScreen .incidence-field label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:18px!important;
  margin:0 0 7px!important;
  padding:0!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.01em!important;
  color:#52667c!important;
}

/* Misma altura, tipografía y peso en INPUT y SELECT, incluido readonly. */
#incidenciasScreen .incidence-field :is(input:not([type="checkbox"]):not([type="radio"]),select){
  width:100%!important;
  height:54px!important;
  min-height:54px!important;
  box-sizing:border-box!important;
  padding:0 14px!important;
  border:1px solid #cdd9e5!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#1f354d!important;
  font-family:var(--siov250-font)!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:500!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}
#incidenciasScreen .incidence-field input[readonly]{
  background:#f7f9fc!important;
  color:#17345f!important;
  font-weight:600!important;
}
#incidenciasScreen .incidence-field select{
  font-weight:500!important;
}
#incidenciasScreen .incidence-field textarea{
  width:100%!important;
  min-height:104px!important;
  box-sizing:border-box!important;
  padding:13px 14px!important;
  border:1px solid #cdd9e5!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#1f354d!important;
  font-family:var(--siov250-font)!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-weight:500!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}
#incidenciasScreen .incidence-field :is(input,select,textarea):focus{
  outline:none!important;
  border-color:#79b641!important;
  box-shadow:0 0 0 3px rgba(121,182,65,.12)!important;
}

/* El bloque de parada ya no usa texto diminuto ni una apariencia distinta. */
#incidenciasScreen .m213-stop-block{
  border-left:1px solid #dfe7ef!important;
  background:#fff!important;
}
#incidenciasScreen .m213-stop-note{
  margin-top:10px!important;
  padding:9px 12px!important;
  border:1px solid #d8e8cc!important;
  border-radius:8px!important;
  background:#f5faef!important;
  color:#536a45!important;
  font-family:var(--siov250-font)!important;
  font-size:11px!important;
  line-height:1.45!important;
  font-weight:500!important;
}
#incidenciasScreen .m213-stop-note b{font-weight:700!important;}

/* Adjuntos integrados al mismo sistema visual. */
#incidenciasScreen .siov-attachment-upload-title,
#incidenciasScreen .siov-attachment-upload-note,
#incidenciasScreen .siov-attachment-file-name,
#incidenciasScreen .siov-attachment-file-percent,
#incidenciasScreen .siov-attachment-file-item-name,
#incidenciasScreen .siov-attachment-file-item-size,
#incidenciasScreen .siov-attachment-total-size,
#incidenciasScreen .siov-attachment-file-complete,
#incidenciasScreen .siov-attachment-file-error{
  font-family:var(--siov250-font)!important;
  font-size:11px!important;
  line-height:1.4!important;
}

/* Histórico general de incidentes: filtro y contador alineados. */
#alertasScreen .ia-history-toolbar{
  align-items:flex-end!important;
  gap:12px!important;
}
#alertasScreen .ia-history-area-filter label{
  margin-bottom:7px!important;
}
#alertasScreen .ia-history-area-filter select{
  min-height:44px!important;
  padding:0 12px!important;
  font-size:13px!important;
  font-weight:500!important;
}
#alertasScreen .ia-history-count{
  padding-bottom:12px!important;
  font-size:11px!important;
  font-weight:600!important;
}
#alertasScreen .ia-history-source,
#alertasScreen .ia-history-ot{
  font-size:10.5px!important;
  line-height:1.35!important;
  font-weight:600!important;
}

/* Paginación también respeta la escala. */
#incidenciasScreen :is(.incidence-pagination-info,.incidence-pagination-tools,.inc-page-btn),
#alertasScreen :is(.siov-table-pagination,.siov-page-summary,.siov-page-size,.siov-page-button){
  font-family:var(--siov250-font)!important;
  font-size:11px!important;
  line-height:1.25!important;
}

@media(max-width:760px){
  #incidenciasScreen .incidence-field :is(input:not([type="checkbox"]):not([type="radio"]),select){height:50px!important;min-height:50px!important;}
  #incidenciasScreen .incidence-form-block{padding:12px!important;}
}
