:root {
  --trz-formato-control-h: 30px;
  --trz-formato-control-small-h: 26px;
  --trz-formato-radius-control: 6px;
  --trz-formato-radius-panel: 12px;
  --trz-formato-font-control: 11px;
  --trz-formato-font-small: 10px;
  --trz-formato-gap: 8px;
  --trz-formato-pad-x: 11px;
}

.leaflet-container,
.leaflet-container *,
.leaflet-control,
.leaflet-control *,
#dashboardOperativo,
#dashboardOperativo *,
#dispatchRootShell,
#dispatchRootShell *,
#certModuloRoot,
#certModuloRoot *,
#mapaOperativoMap,
#mapaOperativoMap * {
  box-sizing: initial;
}

/* TRAZZA-VISUAL-V1A-SCOPED */

/*
  Alcance deliberadamente limitado.
  No incluye Fotos, Dashboard, Ruta Diaria, Despacho,
  Inventario, Certificación, Edición, Mapa ni GPS.
*/

#nominaRootModulo,
#presentismoRootModulo,
#permisosRoot,
#resumenMensualRealV7,
#liquidacionRoot{
  box-sizing:border-box;
  color:var(--trazza-text);
  background:var(--trazza-bg);
}

#nominaRootModulo,
#presentismoRootModulo,
#permisosRoot,
#resumenMensualRealV7,
#liquidacionRoot{
  padding:var(--trazza-space-4);
}

/* Superficies principales conocidas */

#presentismoRootModulo .pres-toolbar,
#presentismoRootModulo .pres-panel,
#permisosRoot .page-head,
#resumenMensualRealV7 .ro-panel,
#liquidacionRoot .liq-head,
#liquidacionRoot .liq-card{
  border-color:var(--trazza-border);
  border-radius:var(--trazza-radius-panel);
  background:var(--trazza-surface);
  box-shadow:var(--trazza-shadow-panel);
}

/* Cabeceras y texto secundario */

#permisosRoot .page-head,
#resumenMensualRealV7 .ro-head,
#liquidacionRoot .liq-head{
  color:var(--trazza-text);
}

#permisosRoot .page-head p,
#resumenMensualRealV7 .ro-sub,
#liquidacionRoot .liq-head p{
  color:var(--trazza-muted);
}

/* Controles: solamente toolbars/filtros principales */

#presentismoRootModulo .pres-toolbar input:not([type="checkbox"]):not([type="radio"]),
#presentismoRootModulo .pres-toolbar select,
#resumenMensualRealV7 .ro-filters input:not([type="checkbox"]):not([type="radio"]),
#resumenMensualRealV7 .ro-filters select,
#resumenMensualRealV7 .ro-filters .range-btn,
#liquidacionRoot .liq-controls input:not([type="checkbox"]):not([type="radio"]),
#liquidacionRoot .liq-controls select{
  min-height:var(--trazza-control-h);
  border-color:var(--trazza-border);
  border-radius:var(--trazza-radius-control);
  background:var(--trazza-surface);
  color:var(--trazza-text);
  font-size:var(--trazza-font-control);
  box-shadow:var(--trazza-shadow-control);
}

/* Botones principales conocidos */

#presentismoRootModulo .pres-btn,
#permisosRoot .page-head .btn,
#resumenMensualRealV7 .ro-btn,
#liquidacionRoot .liq-controls button{
  min-height:var(--trazza-control-h);
  border-radius:var(--trazza-radius-control);
  font-size:var(--trazza-font-control);
  font-weight:800;
}

#presentismoRootModulo .pres-btn:not(.sec),
#resumenMensualRealV7 .ro-btn,
#liquidacionRoot .liq-controls button{
  background:var(--trazza-navy);
  border-color:var(--trazza-navy);
  color:#fff;
}

/* Focus legible, sin modificar geometría */

#presentismoRootModulo .pres-toolbar input:focus,
#presentismoRootModulo .pres-toolbar select:focus,
#resumenMensualRealV7 .ro-filters input:focus,
#resumenMensualRealV7 .ro-filters select:focus,
#resumenMensualRealV7 .ro-filters .range-btn:focus,
#liquidacionRoot .liq-controls input:focus,
#liquidacionRoot .liq-controls select:focus{
  outline:none;
  box-shadow:var(--trazza-focus-ring);
}

/* TRAZZA-VISUAL-V1B-NITIDEZ */

/*
  Ajustes deliberadamente acotados a las cinco vistas V1A.
  Sin cambios de grids, tablas, sticky, scroll, layout o logica.
*/

/* NOMINA */

#nominaRootModulo .chip{
  font-size:var(--trazza-font-small);
  font-weight:var(--trazza-weight-strong);
}

#nominaRootModulo .field label,
#nominaRootModulo .nomina-btn{
  font-weight:var(--trazza-weight-strong);
}

/* PRESENTISMO */

#presentismoRootModulo .pres-detail{
  font-size:var(--trazza-font-small);
  font-weight:var(--trazza-weight-strong);
}

#presentismoRootModulo .pres-btn,
#presentismoRootModulo .pres-range{
  font-weight:var(--trazza-weight-strong);
}

/* PERMISOS */

#permisosRoot .perm-kpi span,
#permisosRoot .perm-field label{
  font-size:var(--trazza-font-small);
  font-weight:var(--trazza-weight-strong);
}

#permisosRoot .perm-btn,
#permisosRoot .perm-link,
#permisosRoot .perm-group-title,
#permisosRoot .perm-badge{
  font-weight:var(--trazza-weight-strong);
}

/* RESUMEN MENSUAL */

#resumenMensualRealV7 .calendar-week div{
  font-size:var(--trazza-font-small);
  font-weight:var(--trazza-weight-strong);
}

#resumenMensualRealV7 .ro-field label,
#resumenMensualRealV7 .ro-btn,
#resumenMensualRealV7 .ro-tab,
#resumenMensualRealV7 .calendar-nav,
#resumenMensualRealV7 .calendar-actions button,
#resumenMensualRealV7 .ro-kpi .k,
#resumenMensualRealV7 .mini .k{
  font-weight:var(--trazza-weight-strong);
}

/* LIQUIDACION */

#liquidacionRoot .liq-table th{
  font-size:var(--trazza-font-small);
  font-weight:var(--trazza-weight-strong);
}

#liquidacionRoot .liq-controls label,
#liquidacionRoot .liq-controls button,
#liquidacionRoot .liq-card-title button,
#liquidacionRoot .liq-just-form button,
#liquidacionRoot .liq-table button,
#liquidacionRoot .liq-check,
#liquidacionRoot .liq-template-state{
  font-weight:var(--trazza-weight-strong);
}
