/* EVO CELL Intranet — V1.0.50 | refinamiento visual controlado.
   Hoja adicional: no altera permisos, registros, formularios ni flujos de solicitudes. */
:root{--evo-borde:#dfe6f0;--evo-radio:12px;--evo-azul:#2869c6;--evo-tinta:#182b45}
/* Navegación: desplazamiento sigue activo, sin la barra gris del contenedor. */
.navegacion [data-slot="sidebar-content"],
.navegacion [data-slot="sidebar-inner"]{
 scrollbar-width:none;-ms-overflow-style:none;
}
.navegacion [data-slot="sidebar-content"]::-webkit-scrollbar,
.navegacion [data-slot="sidebar-inner"]::-webkit-scrollbar{width:0;height:0;display:none}
.navegacion [data-slot="sidebar-menu-button"]{min-width:0;outline-offset:2px}
.navegacion [data-slot="sidebar-menu-button"]>span{min-width:0;overflow-wrap:break-word}
.navegacion [data-slot="sidebar-menu-button"]:focus-visible{outline:2px solid #90bdff}
.navegacion [data-slot="sidebar-footer"]{flex-shrink:0}
/* Encabezados por módulo y tarjeta: mantienen alineación con acciones largas. */
.encabezado{min-width:0}
.ruta{min-width:0}
.ruta strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.herramientas{flex-shrink:0}
.titulo-pagina{min-width:0}
.titulo-pagina>div:first-child{min-width:0;flex:1 1 260px}
.titulo-pagina h1{color:var(--evo-tinta);overflow-wrap:break-word}
.titulo-pagina p{max-width:80ch;line-height:1.6;overflow-wrap:anywhere}
.titulo-pagina>button,.titulo-pagina>a{flex:0 0 auto}
.titulo-tarjeta{min-width:0;flex-wrap:wrap}
.titulo-tarjeta h2{min-width:0;overflow-wrap:break-word}
/* Tarjetas y métricas consistentes, sin truncar cifras. */
.tarjeta,.indicador,.vacacion-persona,.roles article{border-color:var(--evo-borde)}
.tarjeta,.indicador{overflow-wrap:break-word}
.indicadores,.dashboard-superior,.dashboard-inferior,.rejilla-horarios,.vacaciones-equipo{min-width:0}
.indicador{min-width:0}
.indicador strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.indicador small{line-height:1.5}
.roles article,.vacacion-persona{min-width:0;overflow-wrap:anywhere}
.pie-jornada{min-width:0}
/* Tablas: legibilidad y scroll horizontal local, sin ampliar toda la página. */
.tabla-adaptable{min-width:0;max-width:100%}
.tabla-adaptable [data-slot="table-container"]{max-width:100%;overscroll-behavior-x:contain}
.tabla-adaptable [data-slot="table"]{width:100%;table-layout:auto}
.tabla-adaptable [data-slot="table"]:has([data-slot="table-head"]:nth-child(7)){min-width:940px}
.tabla-adaptable [data-slot="table"]:has([data-slot="table-head"]:nth-child(9)){min-width:1160px}
.tabla-adaptable [data-slot="table-head"]{height:46px;padding:11px 13px;vertical-align:middle;font-weight:650}
.tabla-adaptable [data-slot="table-cell"]{max-width:300px;padding:14px 13px;vertical-align:middle;line-height:1.55;overflow-wrap:break-word}
.tabla-adaptable [data-slot="table-row"]{transition:background-color .12s ease}
.tabla-adaptable [data-slot="table-body"] [data-slot="table-row"]:hover{background:#f8fbff}
.tabla-adaptable [data-slot="table-cell"] .acciones{gap:7px;min-width:0}
.tabla-adaptable [data-slot="table-cell"] .acciones button{white-space:normal;line-height:1.3;min-height:32px}
.tabla-adaptable .persona{min-width:165px;max-width:320px}
.tabla-adaptable .persona>span{min-width:0;overflow-wrap:anywhere}
.tabla-adaptable .persona strong{display:block;line-height:1.45}
.tabla-adaptable .persona small{line-height:1.5}
/* Etiquetas de estado: texto completo, una sola línea, sin efecto "Activ/o". */
.estado{white-space:nowrap;word-break:normal;overflow-wrap:normal;min-width:max-content;max-width:none;line-height:1.35;border-radius:7px;padding:6px 10px;font-weight:600;vertical-align:middle}
.jornada-principal .estado{min-width:0;max-width:100%;white-space:normal;text-align:center}
/* Filtros, formularios, interacciones y acciones. */
.barra-listado{min-width:0;flex-wrap:wrap}
.barra-listado .campo{min-width:170px}
.buscar{min-width:0;flex:1 1 240px}
.barra-listado .acciones{flex-wrap:wrap;align-items:center}
.barra-listado .acciones>button{min-height:36px}
.rejilla-formulario{min-width:0}
.rejilla-formulario>*{min-width:0}
.rejilla-formulario input,.rejilla-formulario select,.rejilla-formulario textarea{max-width:100%}
.modal-evo{max-width:min(680px,calc(100vw - 24px))!important;scrollbar-gutter:stable}
.acciones-formulario{flex-wrap:wrap}
.acciones-formulario button{min-height:38px}
:where(.contenido,.modal-evo) :is(button,a,input,textarea,select):focus-visible{outline:2px solid #2e7be8;outline-offset:2px}
/* Novedades y notificaciones. */
.notificacion{min-width:0;align-items:flex-start;overflow-wrap:anywhere}
.notificacion>div{min-width:0}
.notificacion p{line-height:1.6}
.notificacion .acciones{flex-wrap:wrap;gap:10px 15px}
.notificacion .enlace{min-height:30px;text-align:left;white-space:normal}
.novedad>div{min-width:0}
.novedad strong{overflow-wrap:anywhere}
/* Tabla responsive en tarjetas: cada registro mantiene sus etiquetas y acciones. */
@media (width<=767px){
 .encabezado{padding-inline:16px}
 .contenido{min-width:0}
 .titulo-pagina{flex-wrap:wrap;gap:12px}
 .titulo-pagina>button,.titulo-pagina>a{max-width:100%;white-space:normal}
 .titulo-pagina h1{line-height:1.23}
 .tabla-adaptable [data-slot="table-container"]{overflow-x:visible}
 .tabla-adaptable [data-slot="table"],.tabla-adaptable [data-slot="table"]:has([data-slot="table-head"]:nth-child(7)),.tabla-adaptable [data-slot="table"]:has([data-slot="table-head"]:nth-child(9)){min-width:0;width:100%;display:block}
 .tabla-adaptable [data-slot="table-body"]{min-width:0;display:block}
 .tabla-adaptable [data-slot="table-row"]{min-width:0;width:100%;padding:11px 15px;margin-bottom:12px;box-shadow:0 1px 3px #172b4606}
 .tabla-adaptable [data-slot="table-cell"]{min-width:0;max-width:none;gap:12px;align-items:flex-start;line-height:1.5;padding-block:11px}
 .tabla-adaptable [data-slot="table-cell"]:before{min-width:95px;max-width:38%;white-space:normal;overflow-wrap:break-word;flex-shrink:0;line-height:1.45}
 .tabla-adaptable [data-slot="table-cell"]>*{min-width:0}
 .tabla-adaptable [data-slot="table-cell"] .acciones{justify-content:flex-end}
 .tabla-adaptable .persona{min-width:0;max-width:100%;justify-content:flex-end}
 .estado{min-width:0;max-width:100%}
 .barra-listado{gap:12px}
 .barra-listado>.buscar,.barra-listado .buscar{flex:1 1 100%;max-width:none}
 .barra-listado .acciones{width:100%;min-width:0}
 .notificacion{padding:17px 4px;gap:12px}
 .notificacion.no-leida{padding-left:12px}
 .notificacion .icono-indicador{width:36px;height:36px}
 .notificacion .acciones{justify-content:flex-start}
 .vacaciones-equipo{gap:12px}
}
@media (width<=580px){
 .indicadores.cuatro{gap:10px}
 .indicadores.cuatro .indicador{padding:15px 13px}
 .indicadores.cuatro .indicador strong{font-size:1.45rem}
 .indicadores.cuatro .indicador p{line-height:1.4}
 .titulo-pagina>button,.titulo-pagina>a{width:100%;justify-content:center}
 .modal-evo{width:calc(100vw - 16px)!important;padding:18px 15px}
 .tabla-adaptable [data-slot="table-cell"]:before{min-width:90px;max-width:39%}
 .tabla-adaptable [data-slot="table-cell"] .acciones{flex-direction:column;align-items:flex-end}
 .tabla-adaptable [data-slot="table-cell"] .acciones button{max-width:100%;white-space:normal}
 .acciones-formulario button{max-width:100%}
 .notificacion .acciones{gap:6px 12px}
}
@media (prefers-reduced-motion:reduce){.tabla-adaptable [data-slot="table-row"]{transition:none}}
