﻿:root {
    /*COLORES*/
    --color_fondo_icono: whitesmoke;
    --color_1: #1e1e1e;
    --color_2: #333;
    /*COLORES DE FONDO*/
    --color_fondo_1: white;
    --color_fondo_2: #c2c2c2;
    /*COLORES*/
    --color-naranja: #ED7D31;
    --color_fondo_cabecera: #d5d5d5;
    --color_verde_1: #00a65a;
    --c_btn_fondo_1: var(--color-naranja);
    --c_btn_texto_1: white;
    /*FONS*/
    --fuenteTipo_Base: Calibri,Avenir;
    --fuenteSize_Base: 1.2rem;
    --fuenteSize_Titulo: 2.5rem;
    --fuenteSize_Info: 1.6rem;
    --fuenteSize_Menu: 1.2rem;
    --fuenteSize_MenuIcon: calc(var(--fuenteSize_Menu) + 0.1rem);
    --fuenteSize_SubMenu: 1.1rem;
    --fuenteSize_SubMenuIcon: calc(var(--fuenteSize_SubMenu) - 0.2rem);
    --fuenteSize_Input: 1.4rem;
    --fuenteSize_Button: 1.6rem;
    --fuenteSize_iconoFiltros: 17px;
    /*TAMAÑOS*/
    --border-radius_1: 5px;
    --border-radius_2: 10px;
    --font_sizePaginaDatos: 10px;
}

@font-face {
    font-family: 'Roboto';
    src: url(../Resources/Fonts/KFOmCnqEu92Fr1Mu4mxP.ttf);
}

@font-face {
    font-family: 'Space Mono';
    src: url(../Resources/Fonts/i7dPIFZifjKcF5UAWdDRYEF8QA.ttf), url(../Resources/Fonts/i7dMIFZifjKcF5UAWdDRaPpZUFWaGw.ttf);
}

html {
    font-size: 12px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: var(--fuenteTipo_Base);
    color: var(--color_1);
    font-size: var(--fuenteSize_Base);
}


a {
    color: #3c8dbc;
    text-decoration: none;
}

i {
    color: inherit;
}
/*#region Tablas*/

table > thead {
    background-color: #dce9f9;
}

    table > thead > tr {
    }

        table > thead > tr > th {
            height: 20px;
            padding: 2px;
        }

table > tbody {
    background-color: white;
}

    table > tbody > tr {
    }

        table > tbody > tr > td {
            height: 20px;
            padding: 2px;
        }

        table > tbody > tr:nth-child(odd) {
            background-color: #ebebeb;
        }

        table > tbody > tr:nth-child(even) {
            background-color: white;
        }

        table > tbody > tr:hover {
            background-color: #dce9f9;
            cursor: pointer;
        }
        /*Paginacion*/
        table > tbody > tr.tr_Paginacion {
            background-color: white;
        }

            table > tbody > tr.tr_Paginacion > td {
                background-color: white;
            }

                table > tbody > tr.tr_Paginacion > td > table {
                    background-color: white;
                    width: 100%;
                    text-align: center;
                    display: flex;
                    flex-direction: row;
                    justify-content: center;
                    align-items: center;
                    align-content: center;
                    flex-wrap: wrap;
                }

                    table > tbody > tr.tr_Paginacion > td > table > tbody {
                        background-color: white;
                        width: 100%;
                        text-align: center;
                        display: flex;
                        flex-direction: row;
                        justify-content: center;
                        align-items: center;
                        align-content: center;
                        flex-wrap: wrap;
                    }

                        table > tbody > tr.tr_Paginacion > td > table > tbody > tr {
                            background-color: white;
                            width: 100%;
                            display: flex;
                            justify-content: center;
                            align-items: center;
                            align-content: center;
                            column-gap: 5px;
                            height: 25px;
                        }

                            table > tbody > tr.tr_Paginacion > td > table > tbody > tr:nth-child(odd) {
                            }

                            table > tbody > tr.tr_Paginacion > td > table > tbody > tr:nth-child(even) {
                            }

                            table > tbody > tr.tr_Paginacion > td > table > tbody > tr > td {
                                background-color: white;
                                border-radius: 10px;
                                border: 1px solid gray;
                                display: flex;
                                justify-content: center;
                                align-items: center;
                                align-content: center;
                                height: 20px;
                                width: 20px;
                                padding: 0;
                            }

                                table > tbody > tr.tr_Paginacion > td > table > tbody > tr > td > span {
                                    background-color: white;
                                    color: black;
                                    font-weight: bold;
                                }

                                table > tbody > tr.tr_Paginacion > td > table > tbody > tr > td > a {
                                    color: gray;
                                }

                                    table > tbody > tr.tr_Paginacion > td > table > tbody > tr > td > a:hover {
                                        color: black;
                                    }


/*Iconos de tablas Codificaciones*/
.btn_grd_eliminar {
    color: red;
}

.btn_grd_modificar {
    color: dimgray;
}
/*#endregion Tablas*/

/*#region Modal*/
/*Estilos generales de modal (es posible que un modal sobrescriba
estos estilos en algun caso especial )*/
dialog.Modal {
    position: absolute;
    margin: auto;
    box-shadow: 0 2rem 4rem black;
    border: 1px solid gray;
    border-radius: var(--border-radius_2);
    padding: 1rem;
    width: 90vw;
    max-width: fit-content;
    outline: 0;
}

    dialog.Modal::backdrop {
        background-color: rgba(0,0,0,0.6);
    }

.dialog-content > hr {
    width: 100%;
    size: 1;
    color: silver;
}

.Modal_Header {
    display: flex;
    align-items: center;
    align-content: center;
    flex-direction: row;
    justify-content: space-between;
    padding: 0.4rem;
}

    .Modal_Header > h1 {
        font-size: 1.5rem;
    }

.Modal_Body {
}

.Modal_Footer {
    display: flex;
    align-items: center;
    align-content: center;
    flex-direction: row;
    justify-content: space-between;
    padding: 0.4rem;
}

/*#endregion Modal*/

/*#region Botones4i*/
.botonRedondo {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    border: 1px solid #e0e0e0c7;
    color: #666;
    font-size: 22px;
}

    .botonRedondo:hover {
        color: black;
        background-color: #e7e7e7;
        border-color: gray;
    }


    .botonRedondo > i {
        color: inherit;
        font-size: inherit;
    }

/*#endregion*/

/*#region Fielset*/

fieldset {
    border: 1px solid #000000;
    padding: 0.5rem;
    border: 0;
    border-top: 1px solid #727171;
    width: calc(100% - 1rem);
    min-width: calc(100% - 1rem);
}

legend {
    width: auto;
    border: 0;
    margin: 0;
    font-size: 12px;
    margin: 0;
    font-weight: normal;
    width: auto;
    height: 1.4rem;
    color: gray;
}

.lbl_legend {
    width: auto;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    color: #ffffff;
    background: #b5b5b5;
    border-radius: var(--border-radius_2);
}
/*#endregion*/

input[type="checkbox"] {
    height: 17px;
    width: 17px;
    max-width: 100%;
    accent-color: var(--color-naranja);
}

    input[type="checkbox"]:checked {
        color: red;
    }
/*#region Inputs */
.divInput {
    display: grid;
    grid-template:
        "etiqueta" 30%
        "input" 70% /
        100%;
    height: 3.5rem;
    justify-items: center;
    align-items: center;
    margin-left: 1rem;
    margin-right: 1rem;
    max-width: calc(100% - 2rem);
    margin-bottom: 0.8rem;
}

.etiqueta {
    grid-area: etiqueta;
    width: fit-content;
    min-width: max-content;
    font-size: 12px;
    margin: 0;
    font-weight: normal;
    width: 100%;
    float: left;
    height: 14px;
    color: gray;
}

.input {
    grid-area: input;
    width: 100%;
    height: 25px;
    font-weight: bold;
    color: black;
    padding-left: 3px;
    border: 1px solid rgba(118,118,118,0.3);
    border-radius: 3px;
}


.divInput > .input:focus-visible {
    border: 2px solid black;
}

input {
    border: 1px solid rgba(118,118,118,0.3);
    border-radius: 3px;
}

    input:focus-visible {
        border: 1px solid black;
    }

    input:read-only {
        background-color: #ffffd3;
    }

    input:disabled {
        background-color: #f5f5f5;
    }

/*#endregion*/

/*#region Input file */
.div_input_file {
    position: relative;
    width: 150px;
    max-width: 100%;
    height: 40px;
    border: 1px solid #b5b3b3;
    border-radius: var(--border-radius_1);
}

    .div_input_file > span {
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 0;
        width: 100%;
        cursor: pointer;
        color: #666666;
        height: 100%;
        text-align: center;
    }

    .div_input_file > .input_file {
        display: inline-block;
        position: absolute;
        z-index: 1;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        opacity: 0;
        cursor: pointer;
    }
/*#endregion */

/*#region DIV para filtros de busqueda con descripcion y 2º icono de accion*/
.div_inputBusquedaLUPA {
    display: grid;
    grid-template:
        "Info_Busqueda  Info_Busqueda   Info_Busqueda   Info_Busqueda" 30%
        "codBusq        lupa            descBusq        2nIcono" 70% /
        calc(30% - 2rem) 2rem calc(70% - 2rem) 2rem;
    height: 3.5rem;
    justify-items: center;
    align-items: center;
}


    .div_inputBusquedaLUPA > .lbl_infoBusqueda {
        width: 100%;
        grid-area: Info_Busqueda;
    }

    .div_inputBusquedaLUPA > .input_codBusqueda {
        grid-area: codBusq;
        width: 100%;
        height: 25px;
        border-radius: 3px;
        padding-left: 3px;
    }

    .div_inputBusquedaLUPA > .icon_lupa {
        grid-area: lupa;
        color: #666666;
        font-size: var(--fuenteSize_iconoFiltros);
        cursor: pointer;
    }

        .div_inputBusquedaLUPA > .icon_lupa:hover, .icon_lupa:active, .icon_lupa:focus {
            color: black;
            cursor: pointer;
        }

    .div_inputBusquedaLUPA > .input_descBusqueda {
        grid-area: descBusq;
        width: 100%;
        height: 90%;
        border-radius: 3px;
        padding-left: 3px;
    }

    .div_inputBusquedaLUPA > .Icono2 {
        grid-area: 2nIcono;
        color: #666666;
        font-size: var(--fuenteSize_iconoFiltros);
        cursor: pointer;
    }

        .div_inputBusquedaLUPA > .Icono2:hover, .Icono2:active, .Icono2:focus {
            color: black;
        }
/*#endregion */

/*#region DIV para filtros de busqueda SIN descripcion y 2º icono de accion */

.div_inputBusquedaLupaSinDesc {
    display: grid;
    grid-template:
        "Info_Busqueda  Info_Busqueda   Info_Busqueda" 30%
        "codBusq        lupa            2nIcono" 70% /
        calc(100% - 4rem) 2rem 2rem;
    width: 100%;
    height: 3.5rem;
    justify-items: center;
    align-items: center;
    width: 300px;
}


    .div_inputBusquedaLupaSinDesc > .lbl_infoBusqueda {
        width: 100%;
        grid-area: Info_Busqueda;
    }

    .div_inputBusquedaLupaSinDesc > .input_codBusqueda {
        grid-area: codBusq;
        width: 100%;
        height: 25px;
        border-radius: 3px;
        padding-left: 3px;
    }

    .div_inputBusquedaLupaSinDesc > .icon_lupa {
        grid-area: lupa;
        color: #666666;
        font-size: var(--fuenteSize_iconoFiltros);
        cursor: pointer;
    }

        .div_inputBusquedaLupaSinDesc > .icon_lupa:hover, .icon_lupa:active, .icon_lupa:focus {
            color: black;
            cursor: pointer;
        }

    .div_inputBusquedaLupaSinDesc > .input_descBusqueda {
        grid-area: descBusq;
        width: 100%;
        height: 25px;
        border-radius: 3px;
        padding-left: 3px;
    }

    .div_inputBusquedaLupaSinDesc > .Icono2 {
        grid-area: 2nIcono;
        color: #666666;
        font-size: var(--fuenteSize_iconoFiltros);
        cursor: pointer;
    }

        .div_inputBusquedaLupaSinDesc > .Icono2:hover, .Icono2:active, .Icono2:focus {
            color: black;
        }
/*#endregion */

/*#region DIV para filtros de CAMPO (LIKE) con limpieza de campo*/

.div_filtroLIKE {
    display: grid;
    grid-template:
        "Info_Busqueda  Info_Busqueda" 30%
        "codBusq         limpiar" 70% /
        calc(95% - 2rem) 2rem;
    width: 100%;
    height: 3.5rem;
    justify-items: center;
    align-items: center;
}

    .div_filtroLIKE > .icon_limpiar {
        grid-area: limpiar;
        color: #666666;
        font-size: var(--fuenteSize_iconoFiltros);
        cursor: pointer;
    }
/*#endregion */

/*#region DIV para filtros de periodo*/
.div_filtroPeriodo {
    display: grid;
    grid-template:
        "Info_Busqueda  Info_Busqueda   Info_Busqueda" 30%
        "periodo1       simbolo         periodo2" 70% /
        45% 10% 45%;
    height: 3.5rem;
    justify-items: center;
    align-items: center;
}

.periodo1 {
    grid-area: periodo1;
    width: 100%;
    height: 90%;
    border-radius: 3px;
}

.simboloSepradaror {
    grid-area: simbolo;
    width: 100%;
    height: 90%;
    text-align: center;
    vertical-align: central;
}

.periodo2 {
    grid-area: periodo2;
    width: 100%;
    height: 90%;
    border-radius: 3px;
}

/*#endregion */

/*Propio de la pagina*/

/*Select*/

.div_Select {
    border: 0;
    display: flex;
    flex-direction: row;
    width: 100%;
    cursor: pointer;
    height: 24px;
}

    .div_Select::after {
        content: "\f142";
        font-family: "";
        position: relative;
        pointer-events: none;
        font-family: var(--fa-style-family,"Font Awesome 6 Free");
        font-weight: var(--fa-style,900);
        pointer-events: none;
        right: 5px;
        top: 4px;
        color: var(--color-naranja);
    }

    .div_Select > select {
        border: 0;
        appearance: none;
        width: 100%;
        background-color: transparent;
        font-weight: bold;
        font-size: 20px;
        cursor: pointer;
        height: 100%;
    }

    .div_Select:has(select > option:only-child)::after {
        display: none;
    }

    .div_Select:has(select > option:only-child) > select {
        -webkit-user-select: none; /* Safari */
        -ms-user-select: none; /* IE 10 and IE 11 */
        user-select: none; /* Standard syntax */
        pointer-events: none;
    }

    .div_Select > select:focus-visible {
        font-weight: bold;
        outline: 0;
    }

    .div_Select > select > option:disabled {
        background-color: #dfdfdf;
        color: #858585;
    }
