/* SIOV360 V21.203 · Sistema visual unificado
   Objetivo: una sola tipografía, jerarquía de tamaños y colores de texto en el área de trabajo.
   Los colores semánticos de estados/KPIs se conservan; los títulos decorativos de colores se normalizan. */
:root{
  --siov203-font:'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --siov203-title:#102a43;
  --siov203-text:#243b53;
  --siov203-muted:#62748a;
  --siov203-label:#52667c;
  --siov203-border:#d9e3ee;
  --siov203-soft:#f8fafc;
  --siov203-green:#3f9b27;
}

/* Tipografía única en toda el área autenticada. */
body.siov-persistent-mode #siovWorkspace,
#menuScreen .siov-workspace{
  font-family:var(--siov203-font)!important;
  color:var(--siov203-text);
}
body.siov-persistent-mode #siovWorkspace :is(input,select,textarea,button,table),
#menuScreen .siov-workspace :is(input,select,textarea,button,table){
  font-family:var(--siov203-font)!important;
}

/* Superficies blancas principales de SIOV360. */
:where(
  .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,.insights-card,.siov-attachment-card,.gd-card,.otm-card,.bkl-screen,.siov-m193-predictive,
  #siovTallerCentralPage,#menuScreen .siov-submodule-panel
){
  color:var(--siov203-text)!important;
}

/* Jerarquía tipográfica estable. Se eliminan títulos amarillo/neón/cian/rosado heredados. */
:where(
  .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,.insights-card,.siov-attachment-card,.gd-card,.otm-card,.bkl-screen,.siov-m193-predictive,
  #siovTallerCentralPage,#menuScreen .siov-submodule-panel
) h1{
  color:var(--siov203-title)!important;font-size:26px!important;line-height:1.2!important;font-weight:850!important;letter-spacing:-.015em!important;
}
:where(
  .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,.insights-card,.siov-attachment-card,.gd-card,.otm-card,.bkl-screen,.siov-m193-predictive,
  #siovTallerCentralPage,#menuScreen .siov-submodule-panel
) h2{
  color:var(--siov203-title)!important;font-size:22px!important;line-height:1.25!important;font-weight:850!important;letter-spacing:-.01em!important;
}
:where(
  .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,.insights-card,.siov-attachment-card,.gd-card,.otm-card,.bkl-screen,.siov-m193-predictive,
  #siovTallerCentralPage,#menuScreen .siov-submodule-panel
) h3{
  color:var(--siov203-title)!important;font-size:15px!important;line-height:1.3!important;font-weight:800!important;letter-spacing:0!important;
}
:where(
  .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,.insights-card,.siov-attachment-card,.gd-card,.otm-card,.bkl-screen,.siov-m193-predictive,
  #siovTallerCentralPage,#menuScreen .siov-submodule-panel
) h4{
  color:var(--siov203-title)!important;font-size:12.5px!important;line-height:1.35!important;font-weight:800!important;letter-spacing:.01em!important;
}

/* Subtítulos y textos de ayuda: un solo gris. */
:where(
  .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,.insights-card,.siov-attachment-card,.gd-card,.otm-card,.bkl-screen,.siov-m193-predictive,
  #siovTallerCentralPage,#menuScreen .siov-submodule-panel
) :is(p,small){
  font-family:var(--siov203-font)!important;
}

/* Formularios: etiquetas, campos y botones con escala única. */
body.siov-persistent-mode #siovWorkspace label,
#menuScreen .siov-workspace label{
  font-family:var(--siov203-font)!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:800!important;
  color:var(--siov203-label)!important;
  letter-spacing:.01em!important;
}
body.siov-persistent-mode #siovWorkspace :is(input:not([type=checkbox]):not([type=radio]),select,textarea),
#menuScreen .siov-workspace :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  font-size:13px!important;
  color:#1f354d!important;
  line-height:1.35!important;
}
body.siov-persistent-mode #siovWorkspace button:not(.siov-nav-item),
#menuScreen .siov-workspace button:not(.siov-nav-item){
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:800!important;
}

/* Tablas: una sola escala legible. */
body.siov-persistent-mode #siovWorkspace table th,
#menuScreen .siov-workspace table th{
  font-size:10.5px!important;
  line-height:1.25!important;
  font-weight:850!important;
  letter-spacing:.015em!important;
}
body.siov-persistent-mode #siovWorkspace table td,
#menuScreen .siov-workspace table td{
  font-size:11.5px!important;
  line-height:1.35!important;
}

/* Contracción global: mismo aspecto en todos los formularios. */
.siov-global-collapse-toolbar,.siov-collapse-header{
  min-height:42px!important;
  padding:9px 12px!important;
  background:var(--siov203-soft)!important;
  border:1px solid var(--siov203-border)!important;
  border-radius:10px!important;
  color:var(--siov203-title)!important;
  box-shadow:none!important;
}
.siov-global-collapse-toolbar .siov-global-collapse-title,
.siov-collapse-header h3{
  color:var(--siov203-title)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:0!important;
}
.siov-global-collapse-toggle,.siov-collapse-toggle{
  min-height:32px!important;
  padding:7px 10px!important;
  border-radius:8px!important;
  border:1px solid #c8d5e2!important;
  background:#fff!important;
  color:var(--siov203-title)!important;
  font-size:10px!important;
  font-weight:850!important;
  box-shadow:none!important;
}
.siov-global-collapse-toggle:hover,.siov-collapse-toggle:hover{
  border-color:#8acb6a!important;background:#f5fbf1!important;color:#317c1d!important;
}

/* V21.203 · Correctivo / Incidencias: se elimina contenido introductorio redundante.
   Se conserva el control CONTRAER/EXPANDER generado por la regla global. */
#incidenciasScreen{
  width:min(1420px,calc(100% - 24px))!important;
  margin:12px auto 24px!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
#incidenciasScreen > .incidence-header,
#incidenciasScreen > .incidence-overview{
  display:none!important;
}
#incidenciasScreen .incidence-section{
  margin:14px 16px!important;
  padding:14px!important;
  border-radius:12px!important;
  box-shadow:none!important;
}
#incidenciasScreen .incidence-section[data-siov-global-collapse] > h3,
#incidenciasScreen .incidence-section[data-siov-global-collapse] > .incidence-section-subtitle{
  display:none!important;
}
#incidenciasScreen .incidence-form-block{
  background:#fff!important;
  border:1px solid #e1e8f0!important;
  border-radius:10px!important;
  padding:12px!important;
  margin-bottom:10px!important;
}
#incidenciasScreen .incidence-field label{color:var(--siov203-label)!important;font-size:11px!important;}
#incidenciasScreen .incidence-field :is(input,select,textarea){font-size:13px!important;border-radius:8px!important;}
#incidenciasScreen .incidence-table th{background:#173f68!important;color:#fff!important;}
#incidenciasScreen .incidence-note,#incidenciasScreen .incidence-section-subtitle{color:var(--siov203-muted)!important;}

/* Títulos heredados con colores decorativos: texto funcional en azul SIOV360.
   Se conservan colores solo en semáforos, badges, KPIs y botones de acción. */
#masterScreen h2,#masterScreen h3,#masterScreen h4,
#registrarPMScreen h2,#registrarPMScreen h3,#registrarPMScreen h4,
#programGeneralScreen h2,#horomScreen h2,#horomScreen h3,
#weeklyScreen h2,#subMaintScreen h2,#personnelScreen h2,
#auditScreen h2,#finanzasScreen h2,#finanzasScreen h3,
#logisticaScreen h2,#logisticaScreen h3,
#adminScreen h2,#adminScreen h3,#ownerScreen h2,#ownerScreen h3{
  color:var(--siov203-title)!important;
  text-shadow:none!important;
}
#masterScreen p span[style*="color"],
#programGeneralScreen p span[style*="color"],
#horomScreen p span[style*="color"]{
  color:var(--siov203-muted)!important;
}
.yellow-header{color:var(--siov203-title)!important;}

/* Encabezados de tabla y barras: mismos tonos del sistema. */
.custom-table th,.weekly-table th,.log-table th,.finance-table th,.incidence-table th{
  background:#eef4f8!important;color:#17345f!important;border-color:#d5e0ea!important;
}
#incidenciasScreen .incidence-table th{background:#173f68!important;color:#fff!important;}

/* Badge de empresa: único estilo de marca. */
.company-badge{
  color:#338d19!important;
  background:#f7fcf4!important;
  border-color:#bfe5ae!important;
  text-shadow:none!important;
}

/* El módulo activo debe conservar el verde del menú. */
#siovPersistentSidebar .siov-nav-item.active,
#menuScreen .siov-nav-item.active{
  background:linear-gradient(90deg,#347f25,#4ca92b)!important;
  color:#fff!important;
}

@media(max-width:760px){
  :where(.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,.otm-card,.bkl-screen,.siov-m193-predictive,#siovTallerCentralPage) h1{font-size:23px!important}
  :where(.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,.otm-card,.bkl-screen,.siov-m193-predictive,#siovTallerCentralPage) h2{font-size:20px!important}
  #incidenciasScreen .incidence-section{margin:10px!important;padding:10px!important}
}
