/* =====================================================================================
   mpu-asistencia.css — piezas propias de la tanda Asistencia (UNI, 03-oct-2026)

   Solo clases propias con prefijo mpu-asis-. Ninguna regla sobre .dxbl-* (ver mpu-base.css).
   Colores: solo variables de mpu-base.css. El color de fondo de cada marca diaria viene del
   catálogo de tipos de asistencia (dato), puesto en línea por la página.
   Va enlazado en Components/App.razor después de mpu-base.css.
   ===================================================================================== */

/* Encabezado de columna por día: letra del día y número */
.mpu-asis-dia { font-size: 9px; line-height: 1.1; text-align: center; white-space: nowrap; border-radius: var(--mpu-radio); }
.mpu-asis-dia-letra { display: block; font-weight: 600; }
.mpu-asis-dia-num { display: block; font-size: 8px; color: var(--mpu-apagado); }
.mpu-asis-domingo { background: var(--mpu-aviso-fondo); }

/* Celda de un día y su marca (abreviatura del tipo de asistencia) */
.mpu-asis-celda { text-align: center; border-radius: var(--mpu-radio); padding: 1px 0; }
.mpu-asis-marca {
    display: inline-block; min-width: 16px; padding: 1px 3px; border-radius: var(--mpu-radio);
    color: var(--mpu-superficie); font-size: 10px; font-weight: 600; line-height: 14px; text-align: center;
    font-family: var(--mpu-fuente-cifras);
}

/* Lista corta dentro de una ventana (p. ej. trabajadores a dar de baja) */
.mpu-asis-lista { margin: 0; padding-left: 18px; font-size: var(--mpu-texto-base); }

/* Cifras planas en fila (resumen del mes de un trabajador) */
.mpu-asis-cifras { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--mpu-espacio-3); }
.mpu-asis-cifras > div { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.mpu-asis-cifra { font-size: 18px; font-weight: 600; color: var(--mpu-texto); line-height: 22px; }
@media (max-width: 900px) { .mpu-asis-cifras { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Calendario mensual: 7 columnas */
.mpu-asis-cal { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: var(--mpu-espacio-1); }
.mpu-asis-cal-cabecera {
    padding: var(--mpu-espacio-1); text-align: center; font-size: var(--mpu-texto-chico); font-weight: 600;
    color: var(--mpu-secundario); background: var(--mpu-fondo-zonas); border-radius: var(--mpu-radio);
}
.mpu-asis-cal-dia {
    position: relative; min-height: 72px; padding: var(--mpu-espacio-1);
    background: var(--mpu-superficie); border: 1px solid var(--mpu-borde); border-radius: var(--mpu-radio);
}
.mpu-asis-cal-otro { background: var(--mpu-fondo-zonas); color: var(--mpu-apagado); }
.mpu-asis-cal-finde { background: var(--mpu-fondo-zonas); }
.mpu-asis-cal-hoy { border: 2px solid var(--mpu-azul-700); }
.mpu-asis-cal-num { font-weight: 600; font-size: var(--mpu-texto-chico); }
.mpu-asis-cal-codigo { position: absolute; top: var(--mpu-espacio-1); right: var(--mpu-espacio-1); }
.mpu-asis-cal-pie {
    position: absolute; bottom: 2px; left: var(--mpu-espacio-1); right: var(--mpu-espacio-1);
    display: flex; gap: var(--mpu-espacio-1); align-items: center; color: var(--mpu-secundario);
}

/* Barra dentro de una pestaña (acciones a la izquierda, leyenda o título al otro lado) */
.mpu-asis-tab-barra { padding: var(--mpu-espacio-2) 0; }

/* Cita del calendario (DxScheduler): fondo = color del tipo de asistencia (dato) */
.mpu-asis-cita {
    color: var(--mpu-superficie); border-radius: var(--mpu-radio); padding: 1px 4px;
    line-height: 1.15; overflow: hidden; margin-bottom: 1px;
}
.mpu-asis-cita-tipo { font-weight: 600; font-size: 11px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mpu-asis-cita-horario { font-size: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mpu-asis-tooltip { padding: var(--mpu-espacio-1) var(--mpu-espacio-2); font-size: var(--mpu-texto-base); display: flex; flex-direction: column; gap: 2px; }

/* Anchos fijos de editores en filas de filtro (el DxPopupLookup propio no acepta style) */
.mpu-asis-ancho-250 { width: 250px; }
.mpu-asis-ancho-300 { width: 300px; }

/* Texto largo recortado en una línea (el completo va en el title) */
.mpu-asis-recorte { display: inline-block; vertical-align: bottom; max-width: 320px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Selector de archivo (InputFile) con su estado al lado */
.mpu-asis-archivo {
    display: flex; align-items: center; gap: var(--mpu-espacio-2); min-height: 32px;
    padding: 2px var(--mpu-espacio-2); font-size: var(--mpu-texto-chico);
    border: 1px solid var(--mpu-borde-control); border-radius: var(--mpu-radio); background: var(--mpu-superficie);
}

/* Velo mientras se procesa: tapa la página y muestra el mensaje al centro */
.mpu-asis-velo {
    position: fixed; inset: 0; z-index: 2000; display: flex; align-items: center; justify-content: center;
    background: rgba(10, 27, 61, 0.35);
}
.mpu-asis-velo-caja { display: flex; flex-direction: column; align-items: center; gap: var(--mpu-espacio-2); min-width: 280px; }

/* Visor de PDF que llena el cuerpo de la ventana */
.mpu-asis-visor { width: 100%; height: 100%; min-height: 60vh; border: 1px solid var(--mpu-borde); border-radius: var(--mpu-radio-grande); }

/* BAJA-POST (20-oct-2026): el rechazo de la baja lista una planilla por línea */
.mpu-asis-rechazo { white-space: pre-line; }
