/* _content/Michigan.Backoffice/Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-thaivnf5qr] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-thaivnf5qr] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/Michigan.Backoffice/Components/Tabs/DictarClaseTab.razor.rz.scp.css */
/* Layout de tres filas (ordenes.txt #3): filtros (auto) / grilla (flex:1, scroll interno) /
   Grabar (auto, siempre visible). CSS aislado del componente — no toca .mich-filters/.mich-actions
   globales, que otras pantallas reutilizan con sus propias necesidades. */

.dictarclase-screen[b-dq4ns9imkc] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
}

.dictarclase-filters[b-dq4ns9imkc] {
    display: flex;
    gap: 16px;
    align-items: flex-end;
    flex: 0 0 auto;
    margin-bottom: 16px;
}

/* Fecha 160px, Sesión 380px, ambos anchos fijos (ninguno se estira; el resto de la fila queda vacío). */
.dictarclase-field-fecha[b-dq4ns9imkc] {
    width: 160px;
    flex: 0 0 160px;
}

.dictarclase-field-sesion[b-dq4ns9imkc] {
    width: 380px;
    flex: 0 0 380px;
}

.dictarclase-grid-row[b-dq4ns9imkc] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}

/* Cadena explícita de altura hacia BusyOverlay (componente externo, sin scope propio: ::deep
   alcanza su marcado interno igual que el de SfGrid más abajo). Sin esto, SfGrid Height="100%"
   no tiene contra qué resolver y el scroll vertical interno del grid no se activa (ordenes.txt #1). */
.dictarclase-grid-row[b-dq4ns9imkc]  .mich-busy-wrap {
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.dictarclase-grid-row[b-dq4ns9imkc]  .mich-busy-wrap > * {
    flex: 1 1 auto;
    min-height: 0;
}

.dictarclase-actions[b-dq4ns9imkc] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 16px;
}

/* Antes reusaba .mich-screen-subtitle (margin: -8px 0 24px 0, pensado para ir bajo un H1) —
   dentro de esta fila flex esos márgenes lo hacían solaparse con el botón Grabar. Estilo propio. */
.dictarclase-processed-label[b-dq4ns9imkc] {
    font-size: 12px;
    color: #777;
    margin: 0;
}

.dictarclase-menor-icon[b-dq4ns9imkc] {
    display: inline-flex;
    color: var(--mich-danger-soft);
}

/* Los estilos genéricos de grid (letra, bordes, filas alternas, checkbox centrado, ancho de
   inputs) ahora viven en MichGrid (Michigan.Controls) — control base compartido por todo el
   sistema, paridad con TIB_LibreriaControles del legacy. Acá solo queda lo específico de esta
   pantalla: columnas Template propias (íconos, calificación) y el diálogo de historial. */

.dictarclase-grid-row[b-dq4ns9imkc]  .dictarclase-calificacion-input input {
    text-align: right !important;
    padding-right: 8px !important;
}

/* Columnas de solo ícono (historial / menor de edad): TextAlign="Center" del GridColumn no centra
   el contenido de columnas con Template (solo alinea el texto que Syncfusion renderiza a partir de
   Field, y estas columnas no tienen Field). Se centra el contenido a mano vía CustomAttributes. */
.dictarclase-grid-row[b-dq4ns9imkc]  .e-grid .dictarclase-icon-cell {
    text-align: center;
}

/* Botón-ícono de historial: sin borde ni fondo, discreto, máximo 16px. display:block + margin:auto
   para centrarlo horizontalmente en la celda pase lo que pase con el display por defecto que le
   da Syncfusion a .e-btn (text-align:center del padre no alcanza si el botón no es inline). */
.dictarclase-grid-row[b-dq4ns9imkc]  .dictarclase-historial-icon.e-btn {
    display: block;
    min-width: 16px;
    width: 16px;
    height: 16px;
    margin: 0 auto;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
}

.dictarclase-grid-row[b-dq4ns9imkc]  .dictarclase-historial-icon .e-btn-icon {
    font-size: 14px;
    color: var(--mich-blue);
}

/* Diálogo "Reporte de asistencia" (paridad ChildAsistenciaUsuario.xaml del legacy, SPEC-001 C28):
   12 columnas no entran cómodas ni en 920px — a diferencia de la grilla principal de Dictar Clase,
   acá SÍ se permite scroll horizontal (mismo criterio que el legacy, que también lo tenía). El
   grid en sí es MichGrid — letra, bordes (incluidas las verticales) y alto de fila ya vienen del
   control base; acá solo el layout: columna que envuelve grid + paginador dentro del Content del
   diálogo, con el paginador fuera del área que scrollea (flex:0, después del grid) para que nunca
   se esconda, y un alto tope para que el diálogo nunca supere el viewport (evita el salto de scroll
   de página completa al abrir). */
[b-dq4ns9imkc] .dictarclase-historial-content {
    display: flex;
    flex-direction: column;
    max-height: 60vh;
}

[b-dq4ns9imkc] .dictarclase-historial-scroll {
    overflow: auto;
    flex: 1 1 auto;
    min-height: 0;
}

[b-dq4ns9imkc] .dictarclase-historial-pager {
    flex: 0 0 auto;
    margin-top: 12px;
}
