/*
  SIOV360 V21.334.1 · Estandarización visual REAL de tablas
  Alcance estrictamente visual:
  - Todas las filas y celdas de datos quedan con fondo blanco uniforme.
  - Se neutralizan zebra, semáforos aplicados a la CELDA, filas de alerta/selección y rellenos heredados.
  - El texto de datos queda con peso normal y color uniforme, incluso cuando versiones antiguas insertan estilos inline.
  - Encabezados y controles interactivos (botones/inputs/selects) conservan su estilo.
  - No modifica JavaScript, cálculos, persistencia, permisos ni lógica de negocio.

  Nota técnica: varias versiones antiguas inyectan estilos !important después de cargar la página
  (p. ej. siov-grid-sem-* y m213-status-*). Por eso estos selectores usan una especificidad
  deliberadamente alta para que la regla global siga dominando sin tocar dichas lógicas.
*/

:root {
  --siov-table-body-bg: #ffffff;
  --siov-table-body-text: #33495e;
}

/* Especificidad alta y global, sin depender del ID particular de cada pantalla. */
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr:nth-child(odd),
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr:nth-child(even),
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr:hover,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr:focus,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr:focus-within,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr.selected,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr.active,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr.highlight,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr.highlighted,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr.siov-workspace-draft-row,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr.siov-workspace-saved,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr.siov-workspace-invalid,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr.siov-workspace-related {
  background: var(--siov-table-body-bg) !important;
  background-color: var(--siov-table-body-bg) !important;
  background-image: none !important;
}

html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr > td,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody tr > th,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td.siov-grid-sem-red,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td.siov-grid-sem-amber,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td.siov-grid-sem-green,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td.m213-status-operative,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td.m213-status-inoperative,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td.m213-status-maintenance,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td.m213-status-demobilized {
  background: var(--siov-table-body-bg) !important;
  background-color: var(--siov-table-body-bg) !important;
  background-image: none !important;
  color: var(--siov-table-body-text) !important;
  font-family: Arial, sans-serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  box-shadow: none !important;
}

/* Normaliza texto inline heredado (p.ej. Código, Equipo, Estado, Unidad, Plan),
   pero no toca botones, inputs, selects ni badges/chips funcionales explícitos. */
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td > b,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td > strong,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td > small,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td > a:not(.btn):not([class*="button"]),
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody td > span:not(.status-program):not(.incident-badge):not([class*="badge"]):not([class*="pill"]):not([class*="chip"]),
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody th > b,
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody th > strong {
  color: inherit !important;
  font-family: inherit !important;
  font-weight: 400 !important;
  font-style: normal !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* Los controles sí conservan su lenguaje visual. */
html body:not(#siov-table-uniform-a):not(#siov-table-uniform-b):not(#siov-table-uniform-c) table tbody :is(button,input,select,textarea,.btn,[class*="button"]) {
  font-weight: revert !important;
}

/* Encabezados continúan diferenciados. */
html body table thead th {
  font-weight: 700;
}
