body {
    height: 100%;
    padding: 0;
    margin: 0;
}

.swal-icon--error {
    border-color: #e30613 !important;
}
.swal-icon--error__line {
    background-color: #e30613 !important;
}


/**********************/
.loaderItem,
.loaderItem:after {
    border-radius: 50%;
    width: 2em;
    height: 2em;
}

.loaderItem {
    font-size: 10px;
    position: relative;
    text-indent: -9999em;
    border-top: 0.2em solid #015196;
    border-right: 0.2em solid #015196;
    border-bottom: 0.2em solid #015196;
    border-left: 0.2em solid #ffffff;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    overflow:hidden;
    -webkit-animation: load8 1.1s infinite linear;
    animation: load8 1.1s infinite linear;
}

@-webkit-keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

/**********************/

.loader,
.loader:before,
.loader:after {
    border-radius: 50%;
    width: 2.5em;
    height: 2.5em;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation: load7 1.8s infinite ease-in-out;
    animation: load7 1.8s infinite ease-in-out;
}

.loader {
    color: rgb(0,159,227);
    font-size: 10px;
    margin: 80px auto;
    position: relative;
    text-indent: -9999em;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

    .loader:before,
    .loader:after {
        content: '';
        position: absolute;
        top: 0;
    }

    .loader:before {
        left: -3.5em;
        -webkit-animation-delay: -0.32s;
        animation-delay: -0.32s;
    }

    .loader:after {
        left: 3.5em;
    }

@-webkit-keyframes load7 {
    0%, 80%, 100% {
        box-shadow: 0 2.5em 0 -1.3em;
    }

    40% {
        box-shadow: 0 2.5em 0 0;
    }
}

@keyframes load7 {
    0%, 80%, 100% {
        box-shadow: 0 2.5em 0 -1.3em;
    }

    40% {
        box-shadow: 0 2.5em 0 0;
    }
}

.mybox {
    -webkit-box-shadow: -5px 6px 9px -2px rgba(168,168,168,1);
    -moz-box-shadow: -5px 6px 9px -2px rgba(168,168,168,1);
    box-shadow: -5px 6px 9px -2px rgba(168,168,168,1);
    background-color: #E8E8E8;
    padding: 10px;
    border-radius: 10px;
    min-height: 120px;
}

/* .modal { width: 75% !important ; height: 75% !important ; }  */

.switch label input.done[type=checkbox]:checked + .lever {
    background-color: #009104;
}

    .switch label input.done[type=checkbox]:checked + .lever::after {
        background-color: #009104;
    }

.switch label input.paso[type=checkbox]:checked + .lever {
    background-color: #ffdb03;
}

    .switch label input.paso[type=checkbox]:checked + .lever::after {
        background-color: #ffdb03;
    }

.switch label input[type=checkbox]:checked + .lever {
    background-color: #009fe3;
}

    .switch label input[type=checkbox]:checked + .lever::after {
        background-color: #009fe3;
    }

/*ul.dropdown-content.select-dropdown li span {
    font-family: Helvetica Neue,Helvetica,Arial,sans-serif !important;
}*/

.datepicker-date-display {
    background-color: rgb(0,159,227) !important;
}

.datepicker-table td.is-selected {
    background-color: rgb(0,159,227) !important;
}
/* .datepicker-weekday-display {
  background-color:  rgb(0,159,227) !important;
}
 */

.selected-side-menu {
    background-color: white !important;
    color: #015196 !important;
}

.selected-pbs-side-menu {
    background-color: #e8f8fa !important;
    color: #1ab5ca !important;
}

    .selected-side-menu .my-hover {
        filter: invert(13%) sepia(98%) saturate(3679%) hue-rotate(196deg) brightness(93%) contrast(99%) !important;
    }

.side-menu:hover {
    background-color: white;
    color: #015196 !important;
}

    .side-menu:hover .my-hover {
        filter: invert(13%) sepia(98%) saturate(3679%) hue-rotate(196deg) brightness(93%) contrast(99%);
    }

.my-hover {
    filter: invert(91%) sepia(77%) saturate(31%) hue-rotate(68deg) brightness(113%) contrast(107%);
    width: 25px;
    padding-left: 0.1rem;
}


[type="radio"]:checked + span:after, [type="radio"].with-gap:checked + span:before, [type="radio"].with-gap:checked + span:after {
    background-color: rgb(0,159,227) !important;
    border: rgb(0,159,227) !important;
}

[type="checkbox"].filled-in:checked + span:not(.lever):after {
    top: 0;
    width: 20px;
    height: 20px;
    border: rgb(0,159,227) !important;
    background-color: rgb(0,159,227) !important;
    z-index: 0;
}

input:focus {
    border-color: rgb(0,159,227) !important;
}



.material-icons.md-18 {
    font-size: 18px;
}

.material-icons.md-24 {
    font-size: 24px;
}

.material-icons.md-36 {
    font-size: 36px;
}

.material-icons.md-48 {
    font-size: 48px;
}

.errorInput {
    border-width: 1px;
    --border-opacity: 1;
    border-color: #D32929;
    border-color: rgba(211, 41, 41, var(--border-opacity));
}

.popup__input#otpInput {
    padding: 0.5rem 0.5rem 0.75rem 0.75rem;
    -webkit-appearance: none;
    -webkit-box-shadow: none;
    -moz-appearance: none;
    box-shadow: none;
    font-size: 2.5rem;
    text-align: center;
}

.popup__input#otpInput:focus {
    border-width: 2px;
}

.popup__input_error {
    border-bottom: 2px solid #e30613 !important;
}

.popup__input_checked {
    border-bottom: 2px solid #009104 !important;
}

.popup__label{
    margin-top: 0.5rem;
    display: block;
    text-align: center;
}

.popup__label_error {
    color: rgba(211, 41, 41, var(--text-opacity));
    --text-opacity: 1;
}

.popup__label__success {
    color: #009fe3;
    --text-opacity: 1;
}


.focusInput {
    border-color: #009fe3 !important;
    border-width: 1px !important;
    border-bottom: 1px solid #009fe3 !important;
    box-shadow: 0 1px 0 0 #009fe3 !important;
}
.errorLabel {
    margin-top: 0.5rem;
    --text-opacity: 1;
    color: #D32929;
    color: rgba(211, 41, 41, var(--text-opacity));
    display: block;
}

.successLabel {
    margin-top: 0.5rem;
    --text-opacity: 1;
    color: #009fe3;
    display: block;
}

.input {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    border-radius: 0.375rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

    .input:not(textarea).input--sm {
        padding-top: 0.25rem;
        padding-bottom: 0.25rem;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .input:not(textarea).input--lg {
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .input:focus {
        outline: 0;
    }

    .input[type=radio] {
        width: 16px;
        height: 16px;
        position: relative;
        border-radius: 9999px;
        overflow: hidden;
        cursor: pointer;
    }

        .input[type=radio]:before {
            content: "";
            width: 10px;
            height: 10px;
            transition: all 0.2s ease-in-out;
            position: absolute;
            border-radius: 9999px;
            --bg-opacity: 1;
            background-color: #1C3FAA;
            background-color: rgba(28, 63, 170, var(--bg-opacity));
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            margin: auto;
            opacity: 0;
        }

        .input[type=radio]:checked {
            --border-opacity: 1;
            border-color: #1C3FAA;
            border-color: rgba(28, 63, 170, var(--border-opacity));
        }

.btn {
    text-transform: none;
}

.input[type=radio]:checked:before {
    opacity: 1;
}

.input[type=checkbox]:not(.input--switch) {
    width: 16px;
    height: 16px;
    border-radius: 0.2em;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

    .input[type=checkbox]:not(.input--switch):before {
        content: "";
        transition: all 0.2s ease-in-out;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' class='feather feather-check'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
        background-size: 80%;
        width: 100%;
        height: 100%;
        position: absolute;
        --text-opacity: 1;
        color: #fff;
        color: rgba(255, 255, 255, var(--text-opacity));
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 0;
        background-repeat: no-repeat;
        background-position: center;
    }

    .input[type=checkbox]:not(.input--switch):checked {
        --bg-opacity: 1;
        background-color: #1C3FAA;
        background-color: rgba(28, 63, 170, var(--bg-opacity));
        --border-opacity: 1;
        border-color: #1C3FAA;
        border-color: rgba(28, 63, 170, var(--border-opacity));
    }

        .input[type=checkbox]:not(.input--switch):checked:before {
            opacity: 1;
        }

.input.input--switch[type=checkbox] {
    width: 38px;
    height: 24px;
    padding: 1px;
    outline: 0;
    border-radius: 9999px;
    position: relative;
    cursor: pointer;
}

    .input.input--switch[type=checkbox]:before {
        content: "";
        width: 22px;
        height: 22px;
        transition: all 0.2s ease-in-out;
        box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
        position: absolute;
        top: 0;
        bottom: 0;
        margin-top: auto;
        margin-bottom: auto;
        border-radius: 9999px;
    }

    .input.input--switch[type=checkbox]:checked {
        --bg-opacity: 1;
        background-color: #1C3FAA;
        background-color: rgba(28, 63, 170, var(--bg-opacity));
        --border-opacity: 1;
        border-color: #1C3FAA;
        border-color: rgba(28, 63, 170, var(--border-opacity));
    }

        .input.input--switch[type=checkbox]:checked::before {
            margin-left: 13px;
            --bg-opacity: 1;
            background-color: #fff;
            background-color: rgba(255, 255, 255, var(--bg-opacity));
        }

select.input {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgb(74, 85, 104)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-chevron-down'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-size: 15px;
    background-position: center right 0.6rem;
    --bg-opacity: 1;
    background-color: #fff;
    background-color: rgba(255, 255, 255, var(--bg-opacity));
    background-repeat: no-repeat;
    padding-right: 2rem;
}

    select.input.input--sm {
        padding-right: 2rem;
    }

    select.input.input--lg {
        padding-right: 2rem;
    }

.sticky {
    top: 0;
    position: sticky;
    z-index: 9;
}

.nav {
    padding: 0.25rem;
    height: 100%;
    position: fixed;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: top;
}

.nav-percentages {
    font-size: 0.8rem;
}

.right-pane {
    padding: 30px;
}

/*p, label, h1, h2, h3, h4, h5, h6, span, small, a, span {
    font-family: Helvetica Neue,Helvetica,Arial,sans-serif !important;
}*/

label, p {
    font-size: 14px !important;
}

a {
    font-size: 12px;
    line-height: 1 !important;
}

.parentBar {
    height: 20px;
    width: 5px;
    background-color: #B0B0B0;
    border-radius: 2px;
    margin-right: 4px;
}

.bar {
    border-left: solid #ee3a1f;
    height: 4px;
    width: 5px;
    bottom: 6px;
    position: absolute;
    border-radius: 2px;
}

.vertical-center {
    margin: 0;
    position: fixed;
    top: 50%;
    right: 0px;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background-color: #015196;
}

.custom {
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    width: 280px;
    height: 200%;
}

@media (max-width: 800px) {
    .custom {
        position: fixed;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100px;
        height: 100%;
        overflow-y: hidden
    }
}

.percentage {
    /* font-size:13px; */
    font-weight: 0;
}

.percentage {
    color: white;
}

.content {
    padding: 0px 22px;
    min-height: 100vh;
    --bg-opacity: 1;
    background-color: #F1F5F8;
    background-color: rgba(241, 245, 248, var(--bg-opacity));
    flex: 1 1 0%;
    padding-bottom: 2.5rem;
    margin-left: 230px;
}

.form_buttons {
    padding-left: 0px;
    background-color: #015196;
}

.side-img-mini {
    display: none;
}



@media (max-width: 766px) {
    .content {
        padding-left: 1rem;
        padding-right: 1rem;
        max-width: 100%;
        margin-left: 80px;
    }

    .parentBar {
        display: inline;
    }

    .bar {
        display: inline
    }

    .form_buttons {
        background-color: #1C3FAA
    }

    .side-img-lg {
        display: none;
    }

    #div_datos {
        display: none;
    }

    .side-img-mini {
        display: inline;
    }
}

.content:before {
    content: "";
    width: 100%;
    height: 1px;
    display: block;
}

.navnavnav {
    width: 230px;
    padding-right: 1.25rem;
    padding-bottom: 4rem;
    overflow-x: hidden;
}

@media (max-width: 766px) {
    .navnavnav {
        width: 90px;
    }
}


/* @media (max-width: 767px) {
  .navnavnav {
    display: none;
  }
}  */









.navnavnav .side-menu {
    height: 35px;
    display: flex;
    align-items: center;
    padding-left: 1.25rem;
    --text-opacity: 1;
    color: #fff;
    /* color: rgba(255, 255, 255, var(--text-opacity)); */
    margin-bottom: 0.25rem;
    position: relative;
    border-radius: 9999px;
}



.side-menu .side-menu__title {
    margin-left: 0.75rem;
    display: flex;
    align-items: center;
}

/* .navnavnav .side-menu .side-menu__title .side-menu__sub-icon {
  transition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform;
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
  transition-duration: 100ms;
  width: 1rem;
  height: 1rem;
  margin-left: auto;
  margin-right: 1.25rem;
} */

@media (max-width: 766px) {
    .navnavnav .side-menu .side-menu__title .side-menu__sub-icon {
        display: none;
    }
}

@media (max-width: 766px) {
    .navnavnav .side-menu .side-menu__title {
        display: none;
    }
}

.items-center {
    align-items: center;
}

.flex {
    display: flex;
}

.pl-5 {
    padding-left: 1.25rem;
}

.pt-4 {
    padding-top: 1rem;
}

.container-shape {
    background-color: #efefef;
    width: 400px;
    height: 35px;
    position: relative;
    clip-path: polygon(0 0, 90% 0, 100% 100%, 0% 100%);
}

.title-shape {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    font-size: 21px;
    color: #003c72;
    font-weight: lighter;
}

.icon-shape {
    display: inline;
    color: white;
    margin-right: 5px;
    vertical-align: bottom;
    margin-left: 10px;
}

.cursor_pointer {
    cursor: pointer;
}

.validated-input {
    border-color: #009104 !important;
    border-width: 1px !important;
    border-bottom: 1px solid #009104 !important;
    box-shadow: 0 1px 0 0 #009104 !important;
}

    .validated-input:focus {
        border-bottom: 1px solid #009104 !important;
        box-shadow: 0 1px 0 0 #009104 !important;
    }



.error-input {
    border-color: #e30613 !important;
    border-width: 1px !important;
    border-bottom: 1px solid #e30613 !important;
    box-shadow: 0 1px 0 0 #e30613 !important;
}

    .error-input:focus {
        border-bottom: 1px solid #e30613 !important;
        box-shadow: 0 1px 0 0 #e30613 !important;
    }

/*input:not([type]), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.materialize-textarea {
    border-bottom: 0 !important;
    box-shadow: 0 !important;
}*/

.topnav {
    overflow: hidden;
    background-color: #DCDCDC !important;
    padding-left: 24px;
    margin-bottom: 10px;
}

    .topnav a {
        float: left;
        text-align: center;
        padding: 14px 16px;
        text-decoration: none;
        /*font-size: 17px;*/
        margin: 5px;
    }

        .topnav a:hover {
            background-color: #0058a3;
            color: white;
            border-radius: 25px;
            height: auto;
        }

        .topnav a.active {
            background-color: #0058a3;
            color: white;
            border-radius: 25px;
            height: auto;
        }

    .topnav .search-container {
        float: right;
        width: 40%;
    }

    .topnav input[type=text] {
        padding: 6px;
        margin-top: 8px;
        font-size: 17px;
        border: none;
    }

    .topnav .search-container button {
        float: right;
        padding: 6px 10px;
        margin-top: 8px;
        background: #ddd;
        font-size: 17px;
        border: none;
        cursor: pointer;
    }

        .topnav .search-container button:hover {
            background: #ccc;
        }

@media screen and (max-width: 600px) {
    .topnav .search-container {
        float: none;
    }

        .topnav a, .topnav input[type=text], .topnav .search-container button {
            float: none;
            display: block;
            text-align: left;
            width: 100%;
            margin: 0;
            padding: 14px;
        }

    /*    .topnav input[type=text] {
        border: 1px solid #ccc;
    }*/
}

.myinput {
    /* Text inputs */
    background-color: #fff !important;
    border-bottom: none !important;
    border: none !important;
    border-radius: 12px !important;
    outline: none;
    height: auto !important;
    padding: 0;
    width: 88% !important;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-transition: border .3s, -webkit-box-shadow .3s;
    transition: border .3s, -webkit-box-shadow .3s;
    transition: box-shadow .3s, border .3s;
    transition: box-shadow .3s, border .3s, -webkit-box-shadow .3s;
}

.myalert {
    height: 50px !important;
    font-size: 12px !important;
    margin: 10px !important;
}

.filter {
    top: 0;
    right: 0;
    float: right;
    margin-right: 24px;
}

.filter-container {
    width: 100%;
    display: inline;
}

div.textMoneySign {
    position: relative;
}

    div.textMoneySign input {
        padding-left: 17px !important;
    }

    div.textMoneySign:after {
        position: absolute;
        left: 0px;
        top: 12px;
        content: '$';
    }


div.textPercentageSign {
    position: relative;
}

    div.textPercentageSign input {
        padding-left: 17px !important;
    }

    div.textPercentageSign:after {
        position: absolute;
        left: 0px;
        top: 12px;
        content: '%';
    }


table th, table td {
    text-align: center;
    font-weight: 200;
    border: 1px solid #ddd;
}

.compuesto {
    white-space: pre-line;
}

input[type="month"] {
    border: none;
    width: 90%;
    border-bottom: 1px solid #9e9e9e;
    margin: 20px !important;
}

    input[type="month"]:focus {
        outline: none !important;
        border: none !important;
        border-bottom: 1px solid #009fe3 !important;
    }


.select2-container--default .select2-search--dropdown .select2-search__field {
    border: none !important;
}

.table_custom {
    width: 50% !important;
    margin: 0 auto !important;
    padding: 24px !important;
    margin-top: 24px !important;
}

.table_custom thead {
    font-weight: bold;
}

.cell_highligh {
    background-color: #ffdb03;
}