﻿* {
    font-family: 'Segoe UI', Verdana, Arial, Helvetica, sans-serif;
    box-sizing: border-box;
}

body {
    padding: 0px;
    margin: 0px;
}

a:visited {
    color: #404040;
}

.hidden {
    display: none;
}

.BarraSuperior {
    background: #2c5176;
    color: white;
    font-size: 16pt;
    border: 0px solid #2c5176;
    border-bottom: 2px solid #d05c5f;
    height: 52px;
}

.small-badge {
    height: 48px;
    padding: 8px;
    vertical-align: middle;
    border-right: 1px solid #5980a6;
}

.medium-badge {
    font-size: 72px;
    margin: 0px;
    text-align: center;
    vertical-align: middle;
    text-shadow: -2px 2px 8px #5980a6;
    display: inline-block;
    width: 100px;
}

.giant-badge {
    font-size: 70vh;
    margin: 0px;
    text-align: center;
    vertical-align: middle;
    height: calc(100vh - 52px);
    text-shadow: 0px 0px 10vh white;
    overflow: hidden;
}

.giant-badge img {
    max-height: 100%;
}

.BarraSuperior div {
    display: inline-block;
    padding: 0.5em;
    vertical-align: middle;
}

.BarraSuperior a {
    color: white;
    text-decoration: none;
}

.right-icon-holder {
    position: fixed;
    right: 0px;
    top: 0px;
}

    .right-icon-holder a {
        padding: 0 0.25em 0 0.25em;
    }

.user-option {
    font-size: 10pt;
    vertical-align: middle;
}

.toolbar-icon {
    width: 32px;
    height: 32px;
    vertical-align: middle;
}

.BarraIzquierda {
    background: #f0f0f0;
    position: fixed;
    width: 275px;
    top: 52px;
    left: 0px;
    bottom: 0px;
    border-right: 1px solid lightgray;
}

    .BarraIzquierda h1 {
        background: #d0e0f0;
        margin: 0px;
        font-size: 12pt;
        font-weight: bold;
        padding: 0.5em;
        color: #404040;
        height: 37px;
    }

.MenuRaiz {
    padding: 0px;
    margin: 0px;
    overflow-y: auto;
    position: absolute;
    top: 38px;
    bottom: 38px;
    left: 0px;
    right: 0px;
    font-size: 10pt;
}

.MenuLateral {
    list-style: none;
    padding: 0px;
    margin: 0px;
}

    .MenuLateral li, .MenuRaiz li, .TituloSubmenu {
        margin: 0px;
        display: inline-block;
        width: 100%;
        cursor: pointer;
        color: #404040;
        text-decoration: none;
        border: 1px solid #f0f0f0;
    }

.TituloSubmenu {
    padding-top: 3px;
    padding-bottom: 3px;
    font-weight: bold;
    padding-left: 5px;
}

    .TituloSubmenu:hover {
        background: #e0e0e0;
        border: 1px solid #b0b0b0;
    }

    .TituloSubmenu i {
        padding: 0em 0.5em 0em 0em;
    }

.MenuLateral li a, .MenuRaiz li a {
    text-decoration: none;
    color: #404040;
    display: block;
    width: 100%;
    border: 1px solid #f0f0f0;
    padding: 3px 0px 1px 5px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

    .MenuLateral li a:hover, .MenuRaiz li a:hover {
        background: #d0e0f0;
        border: 1px solid #7b9ab7;
    }

.MenuNivel1, .MenuNivel2, .MenuNivel3, .MenuNivel4 {
    padding-left: 0;
    margin-left: 0;
}

.MenuLateral li a, .MenuLateral .TituloSubmenu {
    padding-left: 24px;
}

.MenuNivel1 li a, .MenuNivel1 .TituloSubmenu {
    padding-left: 48px;
}

.MenuNivel2 li a, .MenuNivel2 .TituloSubmenu {
    padding-left: 72px;
}

.MenuNivel3 li a, .MenuNivel3 .TituloSubmenu {
    padding-left: 96px;
}

.MenuNivel4 li a, .MenuNivel4 .TituloSubmenu {
    padding-left: 120px;
}

.MenuLateral li.SeparadorMenu, .MenuRaiz li.SeparadorMenu {
    height: 1px;
    cursor: default;
    margin: 0px 15px 0px 15px;
    border-width: 0px;
    padding: 0px;
    display: block;
    background: #d0d0d0;
    width: calc(100% - 30px)
}

.MenuNivel1 li.SeparadorMenu {
    margin-left: 48px;
    width: calc(100% - 58px);
}

.MenuNivel2 li.SeparadorMenu {
    margin-left: 72px;
    width: calc(100% - 82px);
}

.MenuNivel2 li.SeparadorMenu {
    margin-left: 96px;
    width: calc(100% - 106px);
}

/*.MenuNivel2, .MenuNivel3, .MenuNivel4 {
    display: none;
    transition-duration: 1s;
}*/

.MenuLateral li.Submenu, .MenuLateral li .Submenu {
    margin-left: 0;
    padding-left: 0;
}

.ListaSelectoraCompactable li, .ListaSelectoraCompactable li span, NombreElementoSelectoraCompactable {
    margin: 0px;
    padding: 5px 0px;
    cursor: pointer;
}

.GrupoMenu {
    list-style: none;
    margin-left: 0px;
    padding-left: 0px;
}

.ElementoActivado {
    background: #d0e0f0;
    border: 1px solid #31669b;
}

.MenuIcon {
    width: 24px;
    height: 24px;
    vertical-align: middle;
    margin-right: 3px;
    font-size: 20px;
}

.BarraIconosInferior {
    background: #e0e0e0;
    position: absolute;
    bottom: 0px;
    left: 0px;
    right: 0px;
    height: 36px;
    overflow-x: auto;
}

    .BarraIconosInferior img {
        display: block;
        vertical-align: middle;
        height: 36px;
        margin: auto;
        padding: 0px;
        opacity: 0.5;
    }

        .BarraIconosInferior img:hover {
            background: #5980a6;
            opacity: 1;
        }

    .BarraIconosInferior a {
        font-size: 20pt;
        margin: 0px 0px 0px 5px;
        display: inline-block;
        width: 45px;
        text-align: center;
        vertical-align: middle;
    }}

        .BarraIconosInferior a:hover {
            background: #2c5176;
            color: #404040;
            text-shadow: 2px 2px 4px white;
        }

        .BarraIconosInferior a.selected {
            text-shadow: 0px 0px 5px white;
            background: gray;
        }

        .BarraIconosInferior a:visited {
            color: unset;
        }

.PanelDeTrabajo {
    background: #b0b0b0;
    position: absolute;
    top: 52px;
    bottom: 0px;
    left: 275px;
    right: 0px;
    overflow-x: auto;
}

.flex-column-container {
    /* Se usa en conjunto con .remaining-part para mantener los controles de formulario fijos en la parte superior y evitar que la tabla de datos haga scroll */
    border: 0px solid white;
    margin: 0;
    position: absolute;
    top: 0px;
    right: 0px;
    left: 0px;
    bottom: 0px;
    display: flex;
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: auto;
    flex-direction: column;
}

.remaining-part {
    /* Se utiliza para crear un espacio te abarca el espacio restante dentro del div que lo contiene.*/
    display: flex; /*table-row; */
    flex: 0 1 auto;
    height: 100%; 
    overflow: auto;
}

.noflex {
    flex: 0 0 auto;
}

.dataframe {
    /* Se utiliza para crear un panel que abarca todo el elemento que lo contiene */
    position: absolute;
    top: 0px;
    bottom: 22px;
    right: 0px;
    left: 0px;
    overflow: auto;
    background: white;
}
    .dataframe .scroller {
        width: 100%;
        height: calc(100% -  37px);
        overflow: auto;
    }
.ComandosDeTrabajo {
    background: #f0f0f0;
    height: 37px;
}

    .ComandosDeTrabajo strong {
        display: inline-block;
        padding: 0.5em;
    }

.PanelDeTrabajo h1, .PanelDeTrabajo h2, .PanelDeTrabajo h3, .PanelDeTrabajo h4 {
    background: #f0f0f0;
    margin: 0px;
    padding: 0em 1em;
}

.PanelDeTrabajo h4 {
    height: 37px;
    padding: 0.5em;
}

.PanelDeTrabajo hr {
    margin: 0px;
}

.ComandosDeTrabajo a {
    font-size: 10pt;
    color: #404040;
    text-decoration: none;
    margin: 0px;
    padding: 10px;
    display: inline-block;
}

    .ComandosDeTrabajo a:hover {
        background: #5980a6;
        color: black;
    }

.ListaDeTrabajo {
    position: absolute;
    overflow-y: auto;
    top: 37px;
    bottom: 0px;
    width: 275px;
    border-right: 1px solid lightgray;
}

    .ListaDeTrabajo h1 {
        font-size: 12pt;
        font-weight: normal;
        margin: 0px;
        padding: 0.5em 1em;
        background: #d0e0f0;
        border-bottom: 1px solid lightgray;
    }

.SelectorDeTrabajo {
    list-style: none;
    padding: 0px;
    margin: 0px;
}

    .SelectorDeTrabajo li {
        background: white;
        font-size: 10pt;
    }

        .SelectorDeTrabajo li:hover {
            background: #d0e0f0;
        }

        .SelectorDeTrabajo li label {
            display: block;
            font-family: Helvetica;
            font-size: 12pt;
            padding: 4px 0px;
        }

        .SelectorDeTrabajo li a {
            text-decoration: none;
            color: black;
            display: inline-block;
            width: 100%;
            padding: 6px 0px 8px 36px;
        }

.big-selector-item {
    font-size: 28px;
    padding: 8px;
    width: 100%;
    display: block;
    text-decoration: none;
}

    .big-selector-item:hover {
        background: #d0e0f0;
    }

.big-selector-text {
    font-size: 28px;
    font-weight: bold;
    text-decoration: none;
}
/*dl {
    font-family: 'Segoe UI', Calibri, Arial, Verdana, sans-serif;
}
dt {
    font-weight: bold;
}
dd {
    display: inline-block;
}
dd::after {
    content: "\a";
    white-space: pre;
}*/
.AreaDetalle {
    position: absolute;
    left: 275px;
    right: 0px;
    top: 37px;
    bottom: 0px;
    overflow: auto;
    background: white;
}

.table {
    background: white;
    border-collapse: collapse;
    margin: 0.5em;
}

    .table td, .table th {
        border: 1px solid lightgray;
        font-size: 10pt;
        padding: 0.1em 0.3em;
    }

    .table tr:hover  {
        background: #d0e0f0;
    }

.td-right {
    text-align: right;
}
.td-left {
    text-align: left;
}
.td-center {
    text-align: center;
}

.DataLink {
    text-decoration: none;
    color: black;
}

    .DataLink:hover {
        text-decoration: underline;
        background: #d0e0f0;
    }

.DialogoSombreado {
    box-shadow: -4px 4px 10px #2c5176;
}

.ContenedorFormulario {
    background: white;
    padding: 1em;
}


.form-horizontal {
    background: white;
    padding-bottom: 1em;
}

.form-group {
    display: block;
    margin: 10px;
}

.form-control {
    display: block;
    width: 100%;
    min-height: 34px;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #404040;
    background-color: white;
    background-image: none;
    border: 1px solid lightgray;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}
    .form-control:hover {
        border-color: #31669b;
    }

    .form-control[type=checkbox] {
        display: inline-block;
        width: 20px;
        height: 20px;
        /* bottom: 3px; */
        /* position: relative; */
        vertical-align: middle;
        -webkit-box-shadow: unset;
        box-shadow: unset;
        min-height: unset;
    }

.with-sidekick {
    display: inline-block;
    width: calc(100% - 60px);
}

.sidekick {
    display: inline-block;
    width: 50px;
    position: relative;
    top: -2px;
}

.checklist-container {
    max-height: 60vh;
    overflow-x: auto;
}

.form-return-value {
    border: 1px solid darkgray;
    white-space: pre-wrap;
    font-family: Courier New, Courier, monospace;
    height: auto;
    min-height: 34px;
}

.form-control-error {
    color: darkred;
}

.control-label {
    display: inline-block;
    min-width: 150px;
}

.checklist-label {
    display: block;
    width: 100%;
    min-height: unset;
    vertical-align: middle;
    border-radius: 4px;
}

    .checklist-label:hover {
        background: #d0e0f0;
    }

.required {
}

    .required:hover::after {
        color: darkred;
        content: " Debe ingresar un valor.";
        position: relative;
    }

    .required::after {
        color: red;
        content: " * ";
    }

.text-danger {
    color: darkred;
}

.text-pre-wrap, .text-pre-wrap ul li {
    white-space: pre-wrap;
}

.validation-summary-errors ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.btn {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background: #e0e0e0;
    border: 1px solid gray;
    border-radius: 4px;
    text-decoration: none;
    color: #404040;
}

.btn-default {
    color: #404040;
    background-color: #e0e0e0;
    border-color: #404040;
    font-weight: bold;
}

.lblbtn {
    border: 1px solid #f0f0f0;
    border-radius: 4px;
    padding: 0px 6px;
    cursor: pointer;
}
    .lblbtn:hover {
        border: 1px solid gray;
        box-shadow: 0px 0px 5px 0px grey;
    }

.dl-horizontal {
    background: white;
    margin: 0px;
    padding: 1em;
}

    .dl-horizontal dt, .dl-horizontal dd {
        border-bottom: 1px solid #d0e0f0;
        min-height: 22px;
    }
    /**/
    .dl-horizontal dt {
        float: left;
        width: 240px;
        clear: left;
        text-align: left;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-weight: bold;
    }

    .dl-horizontal dd {
        padding-left: 0.5em;
        margin-left: 240px;
    }

.ayuda-campo-formulario {
    font-size: small;
    color: #404040;
}

.confirm-box {
    border: 1px solid lightgray;
    border-radius: 5px;
    padding: 20px;
    margin: 100px;
    text-align: center;
    background: #FAFAFA;
    box-shadow: -4px 4px 10px #2c5176;
}
.confirm-text {
    /* margin: 20px 10px 20px 10px; */
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    position: absolute;
    top: 0;
    bottom: 0;
    background: white;
    right: 0;
    left: 0;
    padding: 3em 1em;
}/*
.confirm-text {
    margin: 20px 10px 20px 10px;
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
}*/
.confirm-box .confirm-text {
    position: initial;
    background-color: initial;
}

.filterselect_modal {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgb(255,255,255);
    background-color: rgba(255,255,255,0.5);
    z-index: 100;
}

.filterselect {
    position: absolute;
    display: inline-block;
    top: 100px;
    bottom: 100px;
    right: 100px;
    left: 100px;
    border: 1px solid #2c5176;
    background-color: white;
    z-index: 101;    
}

    .filterselect h4 {
        background-color: #2c5176;
        color: white;
    }

.filterselect_help {
    font-size: small;
    color: gray;
    margin: 0px;
}

.filterselect div {
    margin: 0px;
    padding: 1em;
}

.filterselect_container {
    height: calc(100% - 12em);
}

.filterselect_list {
    width: 100%;
    height: 100%;
}

.filterselect_lowerbar {
    position: absolute;
    bottom: 0px;
    left: 0px;
    right: 0px;
    margin: 0px;
    padding: 1em;
    text-align: right;
}

    .filterselect_lowerbar button {
        margin-left: 1em;
    }
/**/
@media screen and (max-width: 1024px) and (min-width: 520px) {
    .BarraIzquierda {
        width: 180px;
    }

    .PanelDeTrabajo {
        left: 180px;
    }

    .ListaDeTrabajo {
        width: 180px;
    }

    .AreaDetalle {
        left: 180px;
    }

    .MenuLateral {
        width: 180px;
    }
}

/* Estilos generales */
.align-right {
    text-align: right;
}

.align-left {
    text-align: left;
}

.align-center {
    text-align: center;
}

.nowrap {
    white-space: nowrap;
}

.monospace {
    white-space: pre-wrap;
    font-family: Consolas, Courier New, Courier, monospace;
    height: auto;
}

.center-content-300 {
    width: 300px;
    position: absolute;
    left: calc(50vw - 150px);
}

.midle-content-300 {
    height: 300px;
    position: absolute;
    top: calc(50vh - 150px);
}

.miniform-middle {
    width: 200px;
    display: inline-block;
    position: relative;
    top: calc(50vh - 150px);
    text-align: left;
}

.table-icon-links {
    white-space: nowrap;
    text-align: center;
}

    .table-icon-links a {
        text-decoration: none;
        display: inline-block;
        font-size: 12pt;
        min-width: 34px;
        text-align: center;
    }

        .table-icon-links a:hover {
            background: #d0e0f0;
        }

.regcounter {
    font-size: 10pt;
    color: #2c5176;
}

.statusbar-bottom {
    background: #f0f0f0;
    padding: 0em 0.5em;
    border-top: 1px solid gray;
}

.widetable td {
    white-space: nowrap;
    max-width: 100px;
    text-overflow: ellipsis;
    overflow: hidden;
}

    .widetable td:hover {
        overflow: visible;
        background: #d0e0f0;
    }
        .widetable td:hover .cellbacking {
            position: relative;
            background: #d0e0f0;
            z-index: 10;
            /*padding: 1px 3px 2px 0px;*/
            padding-right: 6px;
            border-right: 1px solid lightgray;
        }
@media only screen and (max-width: 640px) {
    body {
        background-color: lightblue;
    }

    .right-icon-holder {
        display: none;
    }
}
