/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-diq6yvsjuu] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-diq6yvsjuu] {
    flex: 1;
}

.sidebar[b-diq6yvsjuu] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3db8a3 70%);
}

.top-row[b-diq6yvsjuu] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-diq6yvsjuu]  a, .top-row[b-diq6yvsjuu]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-diq6yvsjuu]  a:hover, .top-row[b-diq6yvsjuu]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-diq6yvsjuu]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-diq6yvsjuu] {
        justify-content: space-between;
    }

    .top-row[b-diq6yvsjuu]  a, .top-row[b-diq6yvsjuu]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-diq6yvsjuu] {
        flex-direction: row;
    }

    .sidebar[b-diq6yvsjuu] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-diq6yvsjuu] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-diq6yvsjuu]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-diq6yvsjuu], article[b-diq6yvsjuu] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-diq6yvsjuu] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    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-diq6yvsjuu] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Pages/Gestion/Producto/ProductoGeneralIndex.razor.rz.scp.css */
/* Cabecera de los grupos de la grilla de productos.

   El nombre ocupa una pista de ancho fijo para que el distintivo de registros y el
   vencimiento de todos los grupos arranquen en la misma vertical, en lugar de colgar
   del final de un nombre que cambia de largo en cada grupo. El ancho se aproxima al de
   la columna "Producto" (500px) descontando la celda del control de plegado, de modo
   que el resto de la información cae sobre la columna "Nro Registro". */
.grupo-cabecera[b-edpympaj5e] {
    display: grid;
    grid-template-columns: 460px max-content max-content;
    align-items: center;
    column-gap: 0.75rem;
}

/* Una pista de ancho fijo no se estira: un nombre más largo se recorta con puntos
   suspensivos en vez de desplazar lo que viene detrás y romper la alineación. El nombre
   completo sigue disponible en el title y en la columna Producto de cada fila. */
.grupo-nombre[b-edpympaj5e] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Barra única sobre la grilla: alta a la izquierda, controles de vista al centro y
   descarga al extremo derecho. Antes eran dos filas con márgenes propios en cada botón,
   y el conjunto se leía disperso. */
.barra-acciones[b-edpympaj5e] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

/* Los filetes laterales agrupan lo que solo cambia cómo se ve la tabla, separándolo de
   las acciones que crean o extraen datos. */
.controles-vista[b-edpympaj5e] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-inline: 1rem;
    border-inline: 1px solid var(--rz-base-300);
}

/* El title de cada opción vive en este envoltorio, dentro del Template del item:
   RadzenSelectBarItem no admite atributos sueltos y no acepta un title propio. Se estira
   para que el tooltip salte en toda la superficie del botón, no solo sobre el glifo. */
.icono-opcion[b-edpympaj5e] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Con perfil Lector no se pinta el botón de alta y el grupo de vista pasa a abrir la
   fila: ahí su filete izquierdo quedaría colgando. */
.controles-vista:first-child[b-edpympaj5e] {
    padding-inline-start: 0;
    border-inline-start: none;
}

/* Expandir y colapsar son dos botones sueltos: se juntan para que se lean como un par,
   igual que las barras de selección que tienen al lado. */
.grupo-botones[b-edpympaj5e] {
    display: inline-flex;
    gap: 0.25rem;
}

.accion-exportar[b-edpympaj5e] {
    margin-left: auto;
}
