:root {
    --gradiente-verde:linear-gradient(180deg, #39722D -16.84%, #0D380D 50.12%);
    --color-verde-claro:#56B348;
    --color-verde-regular:#39722D;
    --color-verde-oscuro:#0D150D;
    --color-rojo-regular:#E74A3B;
    --color-rojo-regular-hover:#be291b;

    /* Backgrounds */
    --color-background-cards:#fff;
    --color-background-general:#ebf2fb;

    /* ScrollBar */
    --color-scroll-background:#f1f1f1;
    --color-scroll-bar:#60979D;

    /* Texto */
    --color-texto-base: #000140;

    /* Menu */
    --color-menu-link: #747474;
    --color-menu-link-hover: #747474;
    --color-menu-link-activo: #373a36;

    /* Inputs */
    --color-input-icon:#656565;
    --color-input-arrow-select:#656565;
    --color-input-texto-base:#373a36;
    --color-input-sombra:#5c5c5c42;
    --color-input-border:#ced4da8a;
    --color-input-label:#4C535F;

    /* Producto */
    --color-producto-background:#ececec;
    --color-producto-puntos:#373a36;
    --color-producto-input-cantidad:#d72140;

    /* CARDS */
    --color-card-cabecera: #acacac;
    --color-background-cards-secundario: #ededed;
    --color-background-cards-terciario: #666666;

    /* COLORS */
    --color-principal: #000140;
    --color-principal-hover: #0f1053;
    --color-submit: #e11d08;
    --color-submit-hover: #a71b0c;
    --color-blanco: #ffff;
    --color-blanco-hover: #b8b8b8;
}


input:focus-visible{
    outline: unset!important;
}
*::after,
*::before {
  box-sizing: border-box;
}
*::-webkit-scrollbar
{
    width: 0.5rem;
    height: 0.5rem;
    background-color: var(--color-scroll-background);
    border-radius: 1rem;
}

*::-webkit-scrollbar-thumb
{
    border-radius: 1rem;
    background-color: var(--color-scroll-bar);
}
.menu-dashboard{
    overflow: auto;
}
.menu-dashboard::-webkit-scrollbar{
    width: 0rem;
    height: 0rem;
    background-color: var(--color-scroll-background);
    border-radius: 1rem;
}
.menu-dashboard::-webkit-scrollbar-thumb{
    border-radius: 1rem;
    background-color: var(--color-scroll-bar);
}

html{
    font-size: 14px;
}
body{
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    color: #666666;
}
a{
    text-decoration: none;
}
i{
    font-size: 25px;
}
.text-secondary{
    color: var(--color-texto-base);
}
hr{
    border-top: 2px #e1e1e1 solid;
}
.loading {
    position: fixed;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #2a3842;
    z-index: 2000;
    opacity: 0.9;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* BACKGROUNDS */
.bg-celeste{
    background: #56B6E4;
}
.bg-duda{
    background: #FFB446;
}
.bg-login{
    background-image: url('../img/backgrounds/login.png');
    background-repeat: no-repeat;
    background-size:cover;
    background-position: center;
    background-attachment:fixed
}

/* CARDS */
    /* Dashhboard */
    .card.card-dashboard{
        padding: 1.5rem;
    }
    .card.card-dashboard p.color-rojo{
        font-size: 1.3rem;
    }
    .card.card-dashboard .card-detalle {
        background-color: #F5F5F5;
        padding: 0.8rem 0.6rem;
        width: 50px;
    }
    .card.card-dashboard .card-detalle i{
        color: #DE1513;
        font-size: 0.9rem;
    }
    .progress-bar{
        background-color: #AC182F;
    }
    .card.card-comisiones-detalle{
        padding: 1rem;
        background: #F5F5F5;
    }
    .card.card-comisiones-detalle .bono-nombre{
        font-size: 0.9rem;
    }
    .card.card-comisiones-detalle p.color-rojo{
        font-size: 1rem;
    }
    .card.card-comisiones-detalle .card-icono{
        padding: 0.7rem;
        background-color: #F6CB42;
    }
    .card.card-comisiones-detalle .card-icono i{
        font-size: 1.2rem;
        color: #9c8127;
    }
    .nombre-logro{
        font-weight: 700;
        color: #e11d08;
        text-align: center;
    }
    .descripcion-logro{
        font-size: 0.9rem;
        text-align: center;
    }

.card.card-modulo{
    padding: 0 2rem;
    border-radius: 0.625rem;
    border: 0;
}
.card{
    padding: 2rem;
    border-radius: 0.625rem;
    border: 0;
}
.img-fluid.img-activo{
    border: 0.3rem solid #2DC906;
    border-radius: 50%;
}
.img-fluid.img-inactivo{
    border: 0.1rem solid #d72140;
    border-radius: 50%;
}
.bolita{
    position: absolute;
    top: 20%;
    right: -13%;
    border-radius: 50%;
    width: 2rem;
    height: 2rem;
    border: 0.2rem solid #fff;
}
.titulo-card-dashboard {
    font-weight: 800;
}
.bolita.img-activo{
    background-color: #2DC906;
}
.bolita.img-inactivo{
    background-color:#d72140;
}
.card.card-azul{
    background-color: #284AE6;
}
.card.card-verde{
    background-color: #2DC906;
}
.card.card-rojo{
    background-color: #d72140;
}
.card.card-dorado{
    background-color: var(--color-principal);
}
.card.card-gradiente-dorado{
    background:linear-gradient(19deg, var(--color-principal) 12%, #f3e752  117%);
    color: #fff;
}
.card.card-gradiente-gris{
    background:linear-gradient(19deg, #9d9d9d 12%, #9d9d9d 117%);
    color: #fff;
}
.card.card-gradiente-plata{
    background:linear-gradient(19deg, #939393 12%, #e5e5e5  117%);
    color: #fff;
}
.card.card-gradiente-bronce{
    background:linear-gradient(19deg, #a5511e 12%, #f38652  117%);
    color: #fff;
}
.card.card-gradiente-azul{
    background: linear-gradient(19deg, #0c1375 12%, #3547e0 117%);
    color: #fff;
}
.card.card-gradiente-verde{
    background: linear-gradient(19deg, #3ec32f 12%, #52f392 117%);
    color: #fff;
}
.card.card-gradiente-celeste{
    background: linear-gradient(19deg, #0073e5 12%, #9acbfc 117%);
    color: #fff;
}
.card.card-celeste{
    background-color: #ECF3FB;
}
.card.card-links{
    background: rgba(255, 255, 255, 0.18);
    backdrop-filter: blur(0.65rem);
    padding: 2rem;
}
.card-login{
    padding: 2.5rem;
    border-radius: 1rem;
    border: 0;
    background-color: #9536361a;
    box-shadow: 0 0rem 5.2rem rgb(101 14 14) !important;
}
.card .titulo{
    font-size: 1.5rem;
    font-weight: 600;
}
.card.bg-card-dashboard-secundario{
    background-color: var(--color-background-cards-secundario);
    padding: 0.8rem;
}
.card.bg-card-dashboard-icono{
    background-color: var(--color-background-cards-terciario);
    padding: 0.8rem;
}
.card-modulo h2{
    color: #e11d08;
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 0;
}
.card-modulo h3{
    color: #000140;
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
}
.card-modulo p{
    margin-bottom: 0.5rem;
    color: #afafaf;
}

/* COLORWAYS */
.color-principal{
    color: var(--color-principal)!important;
}
.color-secundario{
    color: var(--color-secundario)!important;
}
.color-terciario{
    color: var(--color-terciario)!important;
}
.color-negro{
    color: var(--color-texto-base)!important;
}
.color-rojo{
    color: #AC182F!important;
}
a.color-dorado:hover{
    color: var(--color-principal-hover)!important;
}
.color-blanco{
    color: var(--color-blanco)!important;
}
.color-azul{
    color: var(--color-azul)!important;
}
.color-azul:hover{
    color: var(--color-azul-hover)!important;
}
.color-wallet-rojo {
    background:#a7abab;
    color:#fff;
    border-radius:4rem;
    padding: 0.5rem;
    text-align: center;
}
.color-wallet-verde {
    background:#7cc478;
    color:#fff;
    border-radius:4rem;
    padding: 0.5rem;
    text-align: center;
}
.color-wallet-amarillo {
    background:#d3b955;
    color:#fff;
    border-radius:4rem;
    padding: 0.5rem;
    text-align: center;
}


/* FUENTES */
.fw-regular{
    font-weight: 400;
}
.fw-semibold{
    font-weight: 600;
}
.fw-bold{
    font-weight: 700;
}

/* TITULOS */
.subtitulo-login{
    font-size: 1.9rem;
    line-height: 2.2rem;
}
.titulo-grande{
    font-weight: 700;
}
.titulo-modulo{
    font-size: 2rem;
    color: var(--color-texto-base);
    font-weight: 800;
}
.titulo-apoyo{
    font-size: 2.2rem;
    font-weight: 600;
}

/* Botones */
.btn{
    border: 0;
}

.btn-link{
    text-decoration:none;
    color: #ebebeb;;
}
.btn-principal{
    background: var(--color-principal);
    color: #fff;
    font-weight: 600;
}
.btn-principal:hover{
    background: var(--color-principal-hover);
    color: #fff;
    font-weight: 600;
}
.btn-principal-rojo{
    background: linear-gradient(165deg, #a5162b 0%, #aa172e 100%) !important;
    color: #fff!important;
    font-weight: 600;
}
.btn-principal-rojo:hover,
.btn-principal-rojo:active,
.btn-principal-rojo:focus-visible
{
    background: linear-gradient(165deg, #a5162b 0%, #c71c36 100%) !important;
    color: #fff!important;
    font-weight: 600;
}
.btn-secundario-azul{
    background-color: #a9a9a9;
    color: #fff;
    font-weight: 600;
}
.btn-secundario-azul:hover,
.btn-secundario-azul:active,
.btn-secundario-azul.show{
    background-color: #a9a9a9!important;
    color: #fff!important;
    font-weight: 600;
}
.btn-secundario-celeste{
    background-color: #fff;
    font-weight: 500;
    border-radius: 5rem;
}
.btn-secundario-celeste.activo,
.btn-secundario-celeste:hover,
.btn-secundario-celeste:active{
    background-color: #78BDC4;
    color: #fff!important;
}
.btn-mini-agregar{
    cursor: pointer;
    background: var(--color-principal);
    color: white;
    font-weight: 600;
    padding: 6px 11px;
    border-radius: 3px;
}
.btn-link:hover{
    color:#b42f2f;
}
.btn:active, .btn-link:active{
    transform: scale(0.98);
}
.btn:focus{
    box-shadow: none;
}
.btn{
    border-radius: 3rem;
    padding: 0.8rem 4rem;
    font-size: 1rem;
}
.btn-modulo-opcion{
    background-color: #000140b3;
    padding: 0.8rem 1.5rem;
    font-size: 1rem;
    color: #fff;
}
.btn-modulo-opcion:hover,
.btn-modulo-opcion.activo{
    color: #fff;
    background-color: var(--color-principal-hover);
}
.btn-submit{
    background-color: var(--color-submit);
    color: #fff;
}
.btn-submit:hover{
    color: #fff;
    background-color: var(--color-submit-hover);
}
.btn-blanco{
    background-color: #fff;
    color: var(--color-texto-base);
    font-weight: 600;
}
.btn-blanco:hover{
    background-color: #f3f3f3;
}
.btn i{
    font-size: 1rem;
    margin-right: 0.7rem;
}
.btn-menu-link{
    color: rgba(247, 250, 255, 0.70);
    padding: 0.8rem 2rem;
    border: 0;
}
.btn-menu-link:hover,
.btn-menu-link:focus,
.btn-menu-link:active,
.btn-menu-link.activo{
    text-shadow: white 0px 0px 1px;
    color: #ECF3FB!important;
    background: linear-gradient(165deg, #a5162b 0%, #aa172e 100%) !important;
    border: 0;
}

.box-user-foto{
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    border: 0.3rem solid #fff;
    background-color: #fff;
    overflow: hidden;
}
.box-user-foto img{
    max-width: 100%;
    height: auto;
}

/* FORMS */
    /* LOGIN */
    .login-titulo{
        font-size: 2rem;
        font-weight: bold;
        color: #fff;
    }
    .login-parrafo{
        font-size: 1rem;
        color: #ebebeb;
    }
    .login-titular{
        font-size: 1.5rem;
        line-height: 1.2;
        color: #fff;
        font-weight: normal;
        margin-bottom: 0;
    }
    .login-titular-parrafo{
        font-size: 2.25rem;
        color: #fff;
        line-height: normal;
        font-weight: 200;
    }
    form.login label{
        color: #ebebeb;
        font-weight: 600;
    }
    form label{
        color: #797979;
        font-size: 1rem;
        text-align: left;
        margin-bottom: 0.4rem;
        font-weight: 500;
    }
    form .form-group-input .form-control {
        background: #F5F5F5 !important;
        padding: 1rem 1.25rem;
        border-radius: 3rem;
        font-size: 1rem;
        color: #9f9f9f;
        border:unset;
    }
    form.login .form-group-input .form-control {
        background: #ffffff24 !important;
        padding: 1rem 1.25rem;
        border-radius: 3rem;
        font-size: 1rem;
        color: #ffffff;
        border:unset;
    }
    form .icon-placeholder {
        position: absolute;
        top: 35%;
        right: 1.5rem;
    }
    form .input-container i{
        color: var(--color-texto-base);
    }
    form.login .input-container i {
        color: #fff;
    }
    form .form-control::placeholder,
    form .form-control::-webkit-input-placeholder{
        color: #9f9f9f!important;
    }
    form.login .form-control::placeholder,
    form.login .form-control::-webkit-input-placeholder{
        color: #ffffff!important;
    }
    form.login .form-group-input .form-control:focus{
        box-shadow: unset!important;
        background: rgba(255, 108, 108, 0.26) !important;
    }
    form .form-group-input .form-control:focus{
        box-shadow: unset!important;
        background: rgba(255, 108, 108, 0.26) !important;
    }
    form .form-group-input .form-control:focus{
        box-shadow: unset!important;
        background: rgb(207 207 207 / 51%) !important;;
    }
    form.login button[type="submit"]{
        background: linear-gradient(165deg, #a5162b 0%, #aa172e 100%) !important;
        color: #fff;
        font-weight: 600;
    }
    form.login button[type="submit"]:hover,
    form.login button[type="submit"]:focus,
    form.login button[type="submit"]:active{
        background: linear-gradient(165deg, #a5162b 0%, #a11d31 100%) !important;
        color: #fff;
    }
    form button[type="submit"]{
        background: var(--color-submit);
        color: #fff;
        font-weight: 600;
    }
    form button[type="submit"]:hover,
    form button[type="submit"]:focus,
    form button[type="submit"]:active{
        background: var(--color-submit-hover);
    }
    form h4{
        color: #e11d08;
        font-size: 1.2rem;
    }

    /* INTERNA */
.icon-placeholder {
    position: absolute;
    top: 1rem;
    right: 1.5rem;
    font-size: 1.2rem;
}
/* .input-container i{
    color: var(--color-azul);
} */
.input-container {
    position: relative;
}
form label{
    /* color: var(--color-azul); */
    font-size: 1rem;
    text-align: left;
    /* margin-bottom: 0.5rem; */
    /* font-weight: 700; */
}

.form-check-label{
    color: #9f9f9f;
    font-weight: normal;
    font-size: 1em;
    text-align: left;
}
.form-group-input .form-control {
    background: #F5F5F5 !important;
    padding: 0.8rem 1.25rem;
    font-size: 1rem;
    border-radius: 3rem;
    color: #9f9f9f;
    border: 1px solid #F5F5F5;
}
input.input-invalido {
    border-color: var(--color-rojo-regular) !important;
}

.form-group-input .form-control:focus{
    box-shadow: unset!important;
}
.form-group-input label {
    position: absolute;
    color: var(--color-input-label);
    font-size: 0.875rem;
    padding-left: 1.25rem;
    padding-top: 0.8rem;
    z-index: 1;
}
.contenedor-formulario-registro{
    margin-top: 16rem!important;
}
.form-control.input-custom:focus{
    box-shadow:none
}
.was-validated .form-control:valid{
    border: 2px solid #5dff5d6b !important;
    background-image: unset!important;
}
.was-validated .form-control:invalid{
    border: 2px solid rgb(255, 0, 0) !important;
    /* border: 1px solid red !important; */
    background-image: unset!important;
}

.select::after {
    content: "\004b";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    /* padding: 1.5rem 0rem 0rem 1.5rem; */
    padding: 2.5rem 0rem 0rem 0rem;
    background: #fff0;
    /* color: #fff; */
    cursor: pointer;
    pointer-events: none;
    font-size: 1rem;
    -webkit-transition: 0.25s all ease;
    -o-transition: 0.25s all ease;
    transition: 0.25s all ease;
    font-family: "Glyphter";
    transform: rotate(90deg);
}

.image-upload {
    position: relative;
    margin: 0 auto;
    /* overflow: hidden; */
    /* height: 84%; */
}

.image-upload input {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    cursor: pointer;
}

.upload-field {
    display: block;
    position: unset!important;
    border: 0.15rem dashed var(--color-principal)!important;
    background: transparent;
    border-radius: 1rem!important;
}

.upload-field .file-thumbnail {
    cursor: pointer;
    background: #EDF2F6;
    border-radius: 1rem;
    text-align: center;
    padding: 1rem;
    padding-top: 2rem;
    padding-bottom: 1rem;
    padding-left: 1rem;
}
/* UPLOAD FILE */
.upload-field .file-thumbnail h3 {
    font-size: 1rem;
    color: var(--color-texto-base);
    font-weight: 600;
    margin-bottom: 4px;
}

.upload-field .file-thumbnail p {
    font-size: 12px;
    color: #9abcd1;
    margin-bottom: 0;
}

/* TOAST */
.titulo-toast{
    font-weight: 600;
    font-size: 1.5rem;
    color: #fff;
}
.toast{
    width: 25rem!important;
    z-index: 5;
    background-color: unset!important;
}
.toast-body{
    border-radius: 1rem;
    padding: 1.5rem;
}
.toast-body.correo{
    background-color: #FFB446;
}
.correo .toast-progress.progress{
    background-color: #F2F7F3;
}
.correo .toast-bar.progress-bar{
    background-color: #C37602;
}
.toast-body.exitoso{
    background-color: #56B348;
}
.exitoso .toast-progress.progress{
    background-color: #F2F7F3;
}
.exitoso .toast-bar.progress-bar{
    background-color: #39722D;
}
.toast-body.mensaje{
    background-color: #56B6E4;
}
.mensaje .toast-progress.progress{
    background-color: #F2F7F3;
}
.mensaje .toast-bar.progress-bar{
    background-color: #1474BC;
}
.toast-body.error{
    background-color: #8A2C26;
}
.error .toast-progress.progress{
    background-color: #752520c3;
}
.error .toast-bar.progress-bar{
    background-color: #dc2012;
}
.toast-bar.progress-bar{
    animation: load 6s normal forwards;
    background-color: #3AC267;
    height: 0.4rem;
}
.toast-progress.progress{
    background-color: #3ac2677c;
    height: 0.4rem;
}
@keyframes load {
    0% { width: 0; }
    100% { width: 100%; }
}


.table > :not(:first-child){
    border-top: none;
    border-style:unset!important
}
/* .contenido-tabla table thead tr th {
    color: #fff;
    font-weight: 600;
} */
.margen-extremo {
    padding: 1em 2.5em;
}
table.dataTable tr th:first-child,
table.dataTable tr td:first-child {
    padding-left: 1.5em;
}
table.dataTable tr td:first-child{
    padding-top: 1em!important;
}
table.dataTable tr th:last-child,
table.dataTable tr td:last-child {
    padding-right: 2.5em;
}
.table > :not(caption) > * > * {
    padding: 1rem 0.5rem;
}
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
    margin: 1.5rem 0rem 0rem 0rem !important;
}
.dataTables_paginate ul.pagination li.paginate_button {
    margin: 0 0.3rem;
}
th, td{
    font-style: normal;
    font-weight: 300;
}
td{
    font-weight: 300;
}
thead {
    background-color: #78bdc4;

}
.table>:not(caption)>*>*{
    background-color:unset;
}
.table thead th{
    border-bottom:0.0rem solid #78bdc4;
    color: #fff;
    font-weight: 500;
}
.dataTables_scrollHeadInner table{
    border-radius: 0.625rem 0.625rem 0 0;
}

.dataTables_scrollBody table{
    border-radius: 0 0 0.625rem 0.625rem;
}
table {
    color: var(--color-verde-oscuro);
    /* border-radius: 0.9rem 0.9rem 0 0; */
    overflow: hidden;
    margin-bottom: 0 !important;
    /* margin-top: 0.8rem !important; */
    border: unset !important;
}
tfoot {
    border-color: unset !important;
    border-style: solid;
    border-width: 0;
}
tfoot tr {
    border-color: transparent;
}

.dataTables_info {
    display: none !important;
}
.border-bottom {
    border-bottom: unset !important;
}
thead, tbody, tfoot, tr, td{
    border-style: unset!important;
}
.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: #f7f7f7;
    border-style: unset!important;
    --bs-table-accent-bg: unset;
}
.table-striped > tbody > tr:nth-of-type(even) {
    background-color: #f7f7f7;
}
.table.dataTable th {
    padding: 0.8rem 0.5rem;
}
.table.dataTable td {
    font-weight: 400;
    vertical-align: baseline;
}
/* table a, table button{
    font-size: 0.8rem!important;
} */
.contenido-tabla {
    border-radius: 0.5em;
    background-color: unset !important;
}
.table-responsive{
    overflow-x: unset;
}

/* TABLA MOSTRAR DATOS */
.dataTables_length{
    display: flex;
    align-items: end;
}
.dataTables_length label{
    display: flex;
    align-items: center;
}
.dataTables_length select{
    transition: box-shadow 0.5s ease-out;
}
.dataTables_length select{
    margin-left: 1rem;
    margin-right: 1rem;
    background-color: #a9a9a93b;
    border-radius: 0.625rem;
    border: unset!important;
    /* border-color: var(--color-lightblue); */
    color: #000000;
    font-weight: 600;
    padding: 0.4rem 1.5rem 0.4rem 1rem;
}
.dtr-details{
    text-align: left;
}

/* TABLA BUSCADOR */
#example_filter input{
    margin-left: 1rem;
}
#example_filter label{
    display: flex;
    justify-content: center;
    align-items: center;
}
#example_filter{
    margin-right: 1rem;
    color: var(--color-verde-oscuro);
}
div.dataTables_wrapper div.dataTables_filter input {
    border-radius: 1rem;
    padding: 0.375rem 0.75rem;
    background: rgb(245 245 245);
    border: unset;
    color: var(--color-verde-oscuro);
}
div.dataTables_wrapper div.dataTables_filter input:focus{
    transition: box-shadow 0.5s ease-out;
    box-shadow: 0 0 2rem 0.25rem var(--color-blackblue-input-shadow);
}

/* TABLA BOTON EXCEL */
.contenido-tabla .dt-button{
    border-radius: 0.6em;
    font-size: 0.9em;
    padding: 0.3rem 1em;
    border: none;
    background: #a9a9a9;
    color: #fff;
    /* box-shadow: 0 0 2rem 0.25rem ; */
}
.contenido-tabla .dt-button:focus,
.contenido-tabla .dt-button:active{
    animation: push 0.5s normal forwards;
}
.contenido-tabla .dt-button:hover,
.contenido-tabla .dt-button:focus,
.contenido-tabla .dt-button:active{
    background: #6e6e6e;
    border: unset!important;
}

/* TABLA PAGINADORES */
.paginate_button.page-item.next a,.paginate_button.page-item.previous a{
    background-color: transparent;
    /* color: var(--color-verde-claro); */
    border-color: var(--color-boton-terciario);
}
.page-link:focus {
    box-shadow: none;
}
.page-link:hover {
    background-color: var(--color-azul)!important;
    color: #fff !important;
}
.page-item.active .page-link {
    z-index: 3;
    background-color: var(--color-boton-terciario-hover);
    color: var(--color-azul);
    border-color: var(--color-boton-terciario-hover);
}
ul.pagination li.paginate_button .page-link {
    border-radius: 0.5rem;
}
.dtr-details li {
    margin-bottom: 0.8rem;
}
.dtr-data{
    display: flex;
}

/* Rueda */
.progress-circle {
    width: 12rem;
    height: 12rem;
    background: none;
    position: relative;
}
.progress-circle::after {
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 1rem solid #eee;
    position: absolute;
    top: 0;
    left: 0;
    /* box-shadow: 0 0 1rem rgb(0, 255, 115); */
}
.progress-circle>span {
    width: 50%;
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    z-index: 1;
}
.progress-circle .progress-left {
    left: 0;
}
.progress-circle .progress-circle-bar {
    width: 100%;
    height: 100%;
    background: none;
    border-width: 1rem;
    border-style: solid;
    position: absolute;
    top: 0;
}
.progress-circle .progress-left .progress-circle-bar {
    left: 100%;
    border-top-right-radius: 8rem;
    border-bottom-right-radius: 8rem;
    border-left: 0;
    -webkit-transform-origin: center left;
    transform-origin: center left;
}
.progress-circle .progress-right {
    right: 0;
}
.progress-circle .progress-right .progress-circle-bar {
    left: -100%;
    border-top-left-radius: 8rem;
    border-bottom-left-radius: 8rem;
    border-right: 0;
    -webkit-transform-origin: center right;
    transform-origin: center right;
    /* animation: loading-1 1.8s linear forwards; */
    transform: rotate(0deg);
}
.progress-circle .progress-value {
    position: absolute;
    top: 0;
    left: 0;
}
.progress-text{
    font-size: 1.5rem;
}
.border-primary {
    border-color: #AC182F!important;
}
.progress {
    background-color: #e3e3e3;
}

/* POPVER */
.popover{
    border: 0;
    background-color: transparent;
}
.popover-body{
    background-color: var(--color-azul);
    border-radius: 1.5rem;
    color: #fff;
}

/* Menu */
.dropdown-toggle:empty::after {
    margin-left: 0;
    font-size: 2rem;
    color: #fff;
    margin-top: 1rem;
}

/* Reel Categorias */
.swiper-button-next,
.swiper-button-prev{
    width: 5rem!important;
}
.swiper-button-next::after,
.swiper-button-prev::after{
    width: 2.4rem;
    height: 2.4rem;
    font-size: 1rem !important;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    color: #fff;
    background: linear-gradient(165deg, #a5162b 0%, #aa172e 100%) !important;
    border-radius: 50%;
}
.box-categoria-icono{
    background-color: #78BDC4;
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
}
.card-categorias,.card-paises{
    border-radius: 5rem;
    cursor: pointer;
}
.card-categorias p, .card-paises p{
    font-weight: 500;
}
.card-categorias.activo, .card-categorias:hover,
.card-paises.activo, .card-paises:hover{
    background-color: #78BDC4;
    color: #fff;
}
.card-categorias.activo i, .card-categorias:hover i{
    scale: 1.3;
}

/* Producto */
.card-producto{
    border: 0.2rem solid #F5F5F5;
    margin-bottom: 1.5rem;
    padding: 1rem;
    border-radius: 2rem;
}
.card-producto .nombre{
    font-size: 0.9rem;
    font-weight: 700;
    color: #000140;
}
.card-producto .presentacion{
    font-size: 0.8rem;
    font-weight: 400;
    color: #000140;
}
.card-producto button{
    display: flex;
    justify-content: center;
    align-items: center;
}
.card-producto button span{
    font-size: 2rem;
    margin-left: 1rem;
}
.card-precio{
    background-color: #78BDC4;
    border-radius: 1rem 1rem 0rem 0rem;
}
.precio{
    font-size: 0.8rem;
    text-align: center;
    font-weight: bold;
    color: #fff;
}
.precio-titulo {
    color: #51a1aa;
    font-size: 0.8rem;
    text-align: center;
    font-weight: bold;
}
.precio-nombre{
    color: #fff;
    font-size: 0.8rem;
    text-align: center;
}
.card-puntos{
    color: #fff;
    background: #5e9ba1;
    border-radius: 0rem 0rem 1rem 1rem;
    text-align: center;
    padding: 0.2rem 0.8rem;
}
.card-puntos i{
    margin-right: 0.5rem;
    font-size: 0.8rem;
}
.card-puntos span{
    font-size: 0.8rem;
    margin: 0;
    font-weight: 500;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
}

.card-producto .number-input {
    display: inline-flex;
}

.card-producto .input-number-custom,
.card-producto .input-number-custom input,
.detalleProducto .input-number-custom,
.detalleProducto .input-number-custom input {
    box-sizing: border-box;
    background-color: var(--color-dorado);
    border-radius: 0.625rem;
    display: flex;
    justify-content: space-between;
}

.card-producto .input-number-custom input[type="number"],
.detalleProducto .input-number-custom input[type="number"] {
    font-family: sans-serif;
    border: transparent;
    font-size: 1rem;
    text-align: center;
    width: 4rem;
    background: var(--darkblue);
    color: #fff;
    border: none;
    padding: 0;
}

.card-producto .input-number-custom button.btn-add:after,
.detalleProducto .input-number-custom button.btn-add:after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.card-producto .btn-principal-rojo,
.detalleProducto .btn-principal-rojo{
    border-radius: 3rem;
}

.card-producto .input-number-custom button:before,
.card-producto .input-number-custom button:after,
.detalleProducto .input-number-custom button:before,
.detalleProducto .input-number-custom button:after {
    display: inline-block;
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    width: .8rem;
    height: .15rem;
    background-color: #ffffff;
    transform: translate(-50%, -50%);
}
.card-producto .input-number-custom button:before,
.card-producto .input-number-custom button:after,
.detalleProducto .input-number-custom button:before,
.detalleProducto .input-number-custom button:after {
    display: inline-block;
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    width: .8rem;
    height: .15rem;
    background-color: #ffffff;
    transform: translate(-50%, -50%);
}
.card-producto .input-number-custom button.plus,
.detalleProducto .input-number-custom button.plus{
    border-radius: 0.625rem 0 0 0.625rem;
}
.card-producto .input-number-custom button.btn-minus,
.detalleProducto .input-number-custom button.btn-minus{
    border-radius: 0 0.625rem 0.625rem 0;
}
.card-producto .input-number-custom button:active,
.detalleProducto .input-number-custom button:active{
    transform: scale(0.80);
}
.card-producto .input-number-custom button:focus,
.detalleProducto .input-number-custom button:focus{
    box-shadow: none;
}
.card-producto .input-number-custom button,
.detalleProducto .input-number-custom button{
    outline: none;
    -webkit-appearance: none;
    border: none;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 3rem;
    cursor: pointer;
    margin: 0;
    position: relative;
    background: var(--color-dorado);
    text-align: center;
    color: #fff;
}
.shadow{
    box-shadow: 0 0rem 1.2rem rgba(0, 0, 0, 0.08)!important;
}
.swiper .swiper-slide{
    overflow: unset!important;
}
.card-detalle-linea{
    cursor: pointer;
}
.card-detalle-linea:hover, .card-detalle-linea.activo{
    background: #78BDC4;
}
.fa-solid.fa-eye.activo{
    color: #78BDC4!important;
}

/* Carrito */
.text-monto.totalcompra{
    font-weight: 700;
}
.text-monto.totalcomprapuntos{
    font-weight: 600;
    color: #707070;
}
#carrito {
    width: 0rem;
    position: fixed;
    z-index: 2001;
    right: 0;
    top: 0;
    height: 100vh;
    overflow: auto;
}
.card-carrito{
    min-height: 100vh;
    border-radius: 0;
}
.card-resumen-pedido{
    background: #F5F5F5;
    border-radius: 1.5rem;
    padding: 1rem 1.3rem;
}
.check-checkout{
    border: 3.5px solid #78BDC4;
    color: #78BDC4;
    font-weight: 600;
}
.check-checkout.activo,
.check-checkout:hover{
    background-color: #78BDC4;
    color: #fff;
}

/* Checkout */
.raya-vertical{
    border: 1px solid #f5f5f5;
    height: 100%;
    width: 0.1rem;
}
.progress.terminado .progress-bar,
.progress.activo .progress-bar{
    background-image: linear-gradient(
        45deg, rgba(255, 255, 255, .15) 25%,
        transparent 25%, transparent 50%,
        rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
        transparent 75%, transparent);
    background-color: #78bdc4;
}
.circulo{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 4rem;
    height: 4rem;
    padding: 1rem;
}
.circulo.activo{
    background: #78bdc4;
    border-radius: 50%;
    color: #f5f5f5;
}
.circulo{
    background: #e3e3e3;
    border-radius: 50%;
    color: #cdcdcd;
}
.pasos-checkout p.activo{
    color: #78bdc4;
}
.pasos-checkout p{
    color: #cdcdcd;
}

.shine::after {
    content: "";
    width: 5rem;
    height: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    background: #fff;
    opacity: 0.6;
    filter: blur(20px);
    animation: login-blur 2s infinite;
    animation-delay: 0s;
    transform-origin: top;
}

table .dropdown-toggle::after{
    content: unset!important;
}

@keyframes login-blur {
    from {
        transform: translate(0) rotate(45deg);
        opacity: 0;
    }
    to {
        transform: translateX(370px) rotate(45deg);
        opacity: 1;
    }
}

/* Pago */
.form-check-input:checked {
    background-color: var(--color-submit);
    border-color: var(--color-submit);
}

@keyframes loading-1 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }
}

.container-fluid.contenido{
    width: 94%;
}

.card-producto{
    width: calc(100%);
}

.cantidad-despacho{border: none;width: 50px;text-align: center;background: none;color: white;}

@keyframes extender-carrito {
    0% { width: 0rem; }
    100% { width: 100%; }
}
@keyframes contraer-carrito {
    0% { width: 100%; }
    100% { width: 0rem; }
}

@media (min-width: 470px) {
    .card-producto{
        width: calc(100% / 2 - 0.75rem);
    }
}

/* Carrousel */
.carousel.slide {
    height: 210px;
}

/* Small devices (tablets, 576px and up) */
@media (min-width: 576px) {
    .login-titular{
        font-size: 2.5rem;
    }
    .progress-circle {
        width: 10rem;
        height: 10rem;
    }
    .carousel.slide {
        height: 322px;
    }

    .card-producto{
        width: calc(100% / 2 - 0.75rem);
    }
    html{
        font-size: 14px;
    }
    .container-fluid.login{
        width: calc(100% - 28px);
        max-width: 572px;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .progress-circle {
        width: 8.5rem;
        height: 8.5rem;
    }
    .card-producto{
        width: calc(100% / 3 - 1.5rem);
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(n){
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(3n){
        margin-right: 0;
    }
    html{
        font-size: 14px;
    }
    .background-modal{
        right: -1%;
    }
    .container-fluid.login{
        width: calc(100% - 16px);
        max-width: 722px;
        height: 100%;
    }
    @keyframes extender-carrito {
        0% { width: 0rem; }
        100% { width: 100%; }
    }
    @keyframes contraer-carrito {
        0% { width: 100%; }
        100% { width: 0rem; }
    }

    .container-fluid.contenido{
        width: 95%;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .dataTables_scrollBody{
        overflow: unset!important;
    }
    /* Carrousel */
    .carousel.slide {
        height: 322px;
    }
    .progress-circle {
        width: 12rem;
        height: 12rem;
    }

    .card-producto{
        width: calc(100% / 3 - 1.5rem);
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(n){
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(3n){
        margin-right: 0;
    }
    #carrito .card-header{
        border-radius: 0.8rem 0 0 0;
    }
    #carrito .card-footer{
        border-radius: 0 0 0 0.8rem;
    }
    .filtros-categoria-container{
        max-height: 25rem;
        overflow: auto;
    }
    .scrollCustom{
        top: 1rem;
        padding-top: 0rem;
        padding-bottom: 0rem;
    }
    html{
        font-size: 14px;
    }
    .header-menu{
        background: transparent;
    }
    .btn-categoria{
        height: 9rem;
        font-size: 1rem;
    }
    .container-fluid.login{
        width: calc(100% - 70px);
        max-width: 876px;
    }
    .bg-slide{
        background: linear-gradient(to right, var(--color-background-general) 0% , var(--color-background-general) 47%,#f5f5f5 47%,  #f5f5f5  100%);
    }
    .aquiridosScroll{
        max-height:54.5vh;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .swiper.swiper-dashboard{
        overflow: unset!important;
    }
    .card-producto{
        width: calc(100% / 4 - 1.5rem);
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(n){
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(4n){
        margin-right: 0;
    }
    html{
        font-size: 14px;
    }
    .container-fluid.login{
        width: calc(100% - 140px);
        max-width: calc(1060px + 1.5rem);
    }
    .aquiridosScroll{
        max-height: 48.5vh;
    }
    .container-fluid.contenido{
        width: 95%;
    }
}

/* Extra Extra large devices (large desktops, 1400px and up) */
@media (min-width: 1400px){
    .card-producto{
        width: calc(100% / 4 - 1.5rem);
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(n){
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(4n){
        margin-right: 0;
    }
    html{
        font-size: 16px;
    }
    .aquiridosScroll{
        max-height:54.5vh;
    }
    .container-fluid.login{
        width: calc(100% - 140px);
        max-width: calc(1260px + 1.5rem);
    }
    .container-fluid.contenido{
        max-width: 1600px;
    }
}


@media (min-width: 1920px) {
    .card-producto{
        width: calc(100% / 5 - 1.5rem);
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(n){
        margin-right: 1.87rem;
    }
    .card-producto:nth-child(5n){
        margin-right: 0;
    }

    .col-xxxl-auto {
        flex: 0 0 auto;
        width: auto;
    }

    .col-xxxl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xxxl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xxxl-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xxxl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xxxl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xxxl-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xxxl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xxxl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xxxl-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xxxl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xxxl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xxxl-12 {
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xxxl-0 {
        margin-left: 0;
    }

    .offset-xxxl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xxxl-2 {
        margin-left: 16.66666667%;
    }

    .offset-xxxl-3 {
        margin-left: 25%;
    }

    .offset-xxxl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xxxl-5 {
        margin-left: 41.66666667%;
    }

    .offset-xxxl-6 {
        margin-left: 50%;
    }

    .offset-xxxl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xxxl-8 {
        margin-left: 66.66666667%;
    }

    .offset-xxxl-9 {
        margin-left: 75%;
    }

    .offset-xxxl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xxxl-11 {
        margin-left: 91.66666667%;
    }

    .g-xxxl-0,
    .gx-xxxl-0 {
        --bs-gutter-x: 0;
    }

    .g-xxxl-0,
    .gy-xxxl-0 {
        --bs-gutter-y: 0;
    }

    .g-xxxl-1,
    .gx-xxxl-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-xxxl-1,
    .gy-xxxl-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-xxxl-2,
    .gx-xxxl-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-xxxl-2,
    .gy-xxxl-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-xxxl-3,
    .gx-xxxl-3 {
        --bs-gutter-x: 1rem;
    }

    .g-xxxl-3,
    .gy-xxxl-3 {
        --bs-gutter-y: 1rem;
    }

    .g-xxxl-4,
    .gx-xxxl-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-xxxl-4,
    .gy-xxxl-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-xxxl-5,
    .gx-xxxl-5 {
        --bs-gutter-x: 3rem;
    }

    .g-xxxl-5,
    .gy-xxxl-5 {
        --bs-gutter-y: 3rem;
    }

    .text-xxxl-start {
        text-align: left !important;
    }

    .text-xxxl-end {
        text-align: right !important;
    }

    .text-xxxl-center {
        text-align: center !important;
    }
}



/* Efectos */
.fadeInRigthCards{
    display: block;
    opacity: 0;
    animation: revealRight 1s forwards;
}
.fadeInRigthCards:nth-child(1){
    animation-delay: .200s;
}
.fadeInRigthCards:nth-child(2){
    animation-delay: .500s;
}
.fadeInRigthCards:nth-child(3){
    animation-delay: .800s;
}
.fadeInLeftCards{
    display: block;
    opacity: 0;
    animation: revealLeft 1s forwards;
}
.fadeInLeftCards.first{
    animation-delay: .200s;
}
.fadeInLeftCards.second{
    animation-delay: .500s;
}
.fadeInLeftCards.third{
    animation-delay: .800s;
}
/* .efecto-reveal:nth-child(4){
    animation-delay: .400s;
}
.efecto-reveal:nth-child(5){
    animation-delay: .475s;
} */
.fadeInLeft{
    opacity: 0;
    animation: revealLeft 1s forwards;
}
.fadeInRight{
    opacity: 0;
    animation: revealRight 1s forwards;
}
.fadeInUp{
    opacity: 0;
    animation: revealUp 2s forwards;
}
@keyframes revealUp {
    from{
        transform: translateY(0.5em);
    }
    to{
        opacity: 1;
        transform: none;
    }
}
@keyframes revealLeft {
    from{
        transform: translateX(1em);
    }
    to{
        opacity: 1;
        transform: none;
    }
}
@keyframes revealRight {
    from{
        transform: translateX(-1em);
    }
    to{
        opacity: 1;
        transform: none;
    }
}


/* IMPERIAL */
.card.card-imperial-container-caracteristicas{
    background: #ECECEC;
    padding:6rem 4rem 4rem 4rem;
    border-radius:2rem;
}
.card.card-imperial-caracteristicas{
    background: #AC182F;
    padding:2rem 2rem 1rem 2rem;
    border-radius:1.5rem;
}
.card.card-imperial-caracteristicas .position-absolute{
    top: -13%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.box-icono-imperial{
    width: 5rem;
    height: 5rem;
    padding: 1rem;
    border-radius: 50%;
    background-color: #000000;
    display: flex;
    overflow: hidden;
    justify-content: center;
    align-items: center;
}
.box-icono-entrenamiento-imperial{
    width: 6rem;
    height: 6rem;
    padding: 1.7rem;
    border-radius: 50%;
    background-color: #EDEDED;
    display: flex;
    overflow: hidden;
    justify-content: center;
    align-items: center;
}
.btn-imperial-video{
    background: #1D1D1B;
    border-radius: 2rem;
    color: #fff;
}
.btn-imperial-audio{
    background: #3C3C3B;
    border-radius: 2rem;
    color: #fff;
}
.btn-imperial-descarga{
    background: #ffffff;
    border-radius: 2rem;
    color: #000000;
}
.btn-imperial-video:hover,
.btn-imperial-video:active,
.btn-imperial-video:focus,
.btn-imperial-video:focus-visible{
    background-color: #000000!important;
    color: #fff!important;
}
.btn-imperial-audio:hover,
.btn-imperial-audio:active,
.btn-imperial-audio:focus,
.btn-imperial-audio:focus-visible{
    background-color: rgb(63, 63, 63)!important;
    color: #fff!important;
}
.btn-imperial-descarga:hover,
.btn-imperial-descarga:active,
.btn-imperial-descarga:focus,
.btn-imperial-descarga:focus-visible{
    background-color: #cfcfcf!important;
    color: #fff!important;
}
