:root {
    --gradiente-verde: linear-gradient(180deg, #FF8700 -16.84%, #FF8700 50.12%);
    --color-verde-claro: #0f3492;
    --color-verde-regular: #001F6F;
    --color-verde-oscuro: #001854;
    --color-dorado: #FF8700;
    --color-dorado-hover: #ca6c01;
    --color-rojo-regular: #E74A3B;
    --color-rojo-regular-hover: #be291b;
}

*::after,
*::before {
    box-sizing: border-box;
}

*::-webkit-scrollbar,
*::-webkit-scrollbar,
*::-webkit-scrollbar,
*::-webkit-scrollbar {
    width: 0.5rem;
    height: 0.5rem;
    background-color: #ececec;
    border-radius: 1rem;
}

*::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-thumb {
    border-radius: 1rem;
    background-color: var(--color-verde-regular);
}

html {
    font-size: 12px;
}

body {
    font-family: 'Montserrat', sans-serif;
}

a {
    text-decoration: none;
}

.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-dashboard {
    background-image: url('../img/plataforma/backgrounds/bakground-general-socios.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-attachment: fixed
} */

.bg-celeste {
    background: #56B6E4;
    ;
}

.bg-duda {
    background: #FFB446;
    ;
}

/* CARDS */
.card.bg-card-dashboard-icono {
    background-color: var(--color-dorado);
    padding: 0.6rem;
    border-radius: 0.8rem;
    border: 0;
}

.card.bg-card-dashboard-secundario {
    background-color: #E5F1E8;
    padding: 1rem;
    border-radius: 1rem;
    border: 0;
}

.card.bg-card-dashboard-secundario small {
    color: var(--color-verde-oscuro);
    font-weight: 600;
}

.card.bg-card-dashboard-secundario p {
    color: var(--color-verde-oscuro);
    font-weight: 700;
    font-size: 1rem;
}

.card.bg-card-dashboard-datos .titulo-card {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-verde-oscuro);
    margin-bottom: 0;
}

.card.bg-card-dashboard-datos {
    background-color: #F2F7F3;
    padding: 1.5rem;
    border-radius: 1.5rem;
    border: 0;
}

.card.bg-card-dashboard {
    background-color: #F2F7F3;
    padding: 1.5rem;
    border-radius: 1.5rem;
    border: 0;
}

.card.bg-card-dashboard-pack .titulo-card {
    font-size: 1.25rem;
    color: #fff;
    font-weight: 700;
    margin-bottom: 0;
}

.card.bg-card-dashboard-pack {
    background-color: var(--color-verde-regular);
    padding: 1.5rem;
    border-radius: 1.5rem;
    border: 0;
}

.titulo-card {
    font-weight: 700;
    font-size: 1rem;
    color: var(--color-dorado);
}

.nombre-rango {
    font-size: 1rem;
    color: var(--color-verde-oscuro);
    text-align: center;
}

/* COLORWAYS */
.c-dorado {
    color: var(--color-dorado);
}

.c-dorado:hover {
    color: var(--color-dorado-hover);
}

.c-verde-oscuro {
    color: var(--color-verde-regular);
}

/* 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: 1.5rem;
    color: var(--color-verde-regular);
    font-weight: 600;
}

/* Botones */
.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-dorado {
    background-color: var(--color-dorado);
    color: #fff;
    font-weight: 600;
}

.btn-dorado:hover {
    background-color: var(--color-dorado-hover);
    color: #fff;
}

.btn-rojo {
    background-color: var(--color-rojo-regular);
    color: #fff;
    font-weight: 600;
}

.btn-rojo:hover {
    background-color: var(--color-rojo-regular-hover);
    color: #fff;
}

.btn-verde {
    background-color: var(--color-verde-regular);
    color: #fff;
    font-weight: 600;
}

.btn-verde:hover,
.btn-verde.active {
    background-color: var(--color-verde-claro);
    color: #fff;
}

.btn-link {
    color: var(--color-dorado);
    font-size: 1.5rem;
}

.btn-link:hover {
    color: var(--color-dorado-hover);
}

.btn-categoria:hover {
    color: #fff;
}

.btn-categoria.active {
    border: 0.2rem solid var(--color-dorado);
    background: #9975269e;
}

.btn-categoria {
    padding: 1rem;
    width: 100%;
    height: 7rem;
    font-size: 0.8rem;
    font-weight: 600;
    border-radius: 1rem;
    background-image: url(../img/plataforma/tienda/categorias/backgrounds/default.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
}

.btn-despacho.active,
.btn-despacho:hover {
    background-color: var(--color-verde-regular);
    color: #fff;
}

.btn-despacho {
    border: 0.15rem solid var(--color-verde-regular);
    padding: 1rem 1.5rem;
    border-radius: 1.5rem;
}

/* SWIPER */
.icon-icon-flecha.inversa {
    transform: rotate(180deg);
}

.swiper-categoria .swiper-button-next:after,
.swiper-categoria .swiper-button-prev:after {
    display: none;
}

.swiper-categoria .swiper-button-next,
.swiper-categoria .swiper-button-prev {
    background-color: var(--color-dorado-hover);
    border-radius: 50%;
    color: #fff;
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.swiper-categoria .swiper-button-prev:hover,
.swiper-categoria .swiper-button-next:hover {
    background-color: var(--color-dorado-hover);
}

/* FORMS */
.icon-placeholder {
    position: absolute;
    top: 30%;
    right: 1.2rem;
}

.input-custom-verde i {
    color: #000;
}

.input-custom-verde legend label {
    color: #000;
    font-weight: 700;
}

.input-custom-verde legend {
    float: unset !important;
    width: unset !important;
    padding: 0px 0.5rem 0px 0.5rem;
    margin-bottom: 0;
    margin-left: 1rem;
    font-size: 1rem;
}

fieldset.input-custom-verde {
    display: block;
    padding-block-start: unset !important;
    padding-inline-start: 0.75rem;
    padding-inline-end: 0.75rem;
    padding-block-end: 0.2rem;
    min-inline-size: min-content;
    border-width: 0.15rem !important;
    border-style: solid !important;
    border-color: var(--color-verde-claro) !important;
    border-image: initial !important;
    border-radius: 2rem;
    position: relative;
}

fieldset.input-invalido {
    border-color: var(--color-rojo-regular) !important;
}

fieldset.input-invalido legend label {
    color: var(--color-rojo-regular) !important;
}

.form-control.input-custom {
    color: var(--color-verde-regular);
    border-radius: 2rem;
    border: unset;
    background-color: transparent;
    padding: 0.3rem 0.2rem;
    font-weight: 600;
}

.form-control.input-custom:focus {
    box-shadow: none
}

.was-validated .form-control.input-custom:valid {
    box-shadow: none;
    background-image: url('../img/plataforma/iconos/valid-icon.svg')
}

.was-validated .form-control.input-custom:invalid {
    box-shadow: none;
    background-image: url('../img/plataforma/iconos/error-icon.svg')
}

.was-validated .form-control.input-custom:valid+.icon-placeholder,
.was-validated .form-control.input-custom:invalid+.icon-placeholder {
    right: 2.8rem;
    top: 0.6rem;
}

.was-validated .form-control.input-custom:valid~.fa-eye,
.was-validated .form-control.input-custom:valid~.fa-eye-slash,
.was-validated .form-control.input-custom:invalid~.fa-eye,
.was-validated .form-control.input-custom:invalid~.fa-eye-slash {
    right: 2.8rem;
    top: 0.6rem;
}

.select::after {
    content: "\004b";
    position: absolute;
    top: 0;
    right: 1%;
    bottom: 0;
    padding: 1rem 0.5rem;
    background: #fff0;
    color: var(--color-verde-claro);
    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;
    /* background: #fdf9ee; */
    background: transparent;
    padding: 1rem;
    border-radius: 1rem;
}

.upload-field .file-thumbnail {
    cursor: pointer;
    border: 0.1rem dashed #bbd9ec;
    border-radius: 1rem;
    text-align: center;
    padding: 1rem;
}

/* UPLOAD FILE */
/* .upload-field .file-thumbnail img {
    max-width: 45%;
} */

.upload-field .file-thumbnail h3 {
    font-size: 0.8rem;
    color: #000000;
    font-weight: 600;
    margin-bottom: 4px;
}

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

.foto-subida {
    background: #fdf9ee;
    padding: 1rem;
    border-radius: 1rem;
}

/* TOAST */
.titulo-toast {
    font-weight: 600;
    font-size: 1.5rem;
    color: #fff;
}

.toast {
    width: 25rem !important;
    z-index: 3;
    background-color: unset !important;
}

.toast-body {
    border-radius: 1rem;
}

.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%;
    }
}

/* Menu */
.header-menu {
    background: linear-gradient(15deg, #001f6f -16.84%, #001b60 102.12%);
}

.img-logo-dashboard {
    width: 6rem;
}

.menu-dashboard-container {
    background: linear-gradient(15deg, #001f6f -16.84%, #001b60 102.12%);
    border-radius: 0px 2rem 2rem 0px;
    position: fixed;
    left: 0;
    top: 0;
    width: 0rem;
    z-index: 3;
}

@keyframes extender {
    0% {
        width: 0rem;
    }

    100% {
        width: 22rem;
    }
}

@keyframes contraer {
    0% {
        width: 22rem;
    }

    100% {
        width: 0rem;
    }
}

.cabecera-movil a {
    color: #fff;
    text-decoration: none;
}

ul.menu-dashboard {
    list-style: none;
    margin-bottom: 0;
    width: 100%;
    padding: 0 1.5rem;
}

ul.menu-dashboard li {
    margin-bottom: 1rem;
    display: flex;
    justify-content: center;
}

ul.menu-dashboard li a:hover {
    background-color: var(--color-verde-claro);
}

ul.menu-dashboard li a {
    text-decoration: none;
    padding: 0.9rem 2.5rem;
    width: 15rem;
}

ul.menu-dashboard li a span {
    font-size: 1rem;
    margin-left: 1.2rem;
    color: #fff;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 300;
}

.menu-cuenta .btn {
    font-size: 0.8rem;
    padding: 0.375rem 0.4rem;
}

ul.menu-dashboard svg {
    width: 2.25rem;
    height: 2.25rem;
}

.menu-dashboard-container-movil {
    border-radius: 2rem 2rem 0rem 0rem;
}

.menu-dashboard-container-movil .menu-dashboard {
    display: flex;
    justify-content: space-around;
    align-items: center;
    width: 100%;
}

.menu-dashboard-container-movil ul.menu-dashboard li {
    margin-bottom: 1rem;
    margin-top: 1rem;
}

#menu-movil {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: auto;
    height: auto;
    z-index: 3;
    background-image: linear-gradient(360deg, rgb(21, 53, 33) 1.75%, rgb(27, 93, 52) 87.48%);
}

.background-modal {
    width: 100%;
    height: 100vh;
    position: absolute;
    right: -3%;
    background: #2a5f223b;
    z-index: 3;
}

/* PRODUCTOS */
.producto.card {
    background: #FFFFFF;
    box-shadow: 0px 1.25rem 2.5rem rgba(0, 0, 0, 0.12);
    border-radius: 1.25rem;
}

.producto .card-footer {
    background: #FFFFFF;
    padding: 0;
}

.producto .nombre-producto {
    color: #0D150D;
    font-weight: 700;
    font-size: 1rem;
}

.producto .presentacion-producto {
    color: #999CA1;
    font-weight: 500;
    font-size: 0.7rem;
    margin-top: -0.1rem;
    margin-bottom: 0;
}

.producto .precio-producto {
    color: #0D150D;
    font-weight: 700;
    font-size: 1rem;
}

.producto .precio-producto span {
    color: #999CA1;
    font-weight: 500;
    font-size: 0.9rem;
}

.producto .image-producto {
    background: #FCF7DE;
    border-radius: 1.5rem;
    padding: 1rem 1rem 3rem 1rem;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
}

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

.producto .input-number-custom,
.producto .input-number-custom input {
    box-sizing: border-box;
    /* background-color: var(--color-dorado); */
    background-color: var(--color-verde-regular);
    border-radius: 3rem;
    display: flex;
    justify-content: space-between;
    /* box-shadow: 0 0.2rem 1.5rem rgb(176 147 83 / 25%); */
    /* box-shadow: 0 0.2rem 1.5rem rgb(57 114 45 / 42%); */
}

.producto .input-number-custom button:hover {
    /* background: var(--color-dorado-hover); */
    background: var(--color-verde-claro);
}

.producto .input-number-custom button.plus {
    border-radius: 3rem 0 0 3rem;
}

.producto .input-number-custom button.btn-minus {
    border-radius: 0 3rem 3rem 0;
}

.producto .input-number-custom button:active {
    transform: scale(0.80);
    /* background: var(--color-dorado-hover); */
    background: var(--color-verde-claro);
}

.producto .input-number-custom button:focus {
    box-shadow: none;
}

.producto .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); */
    background: var(--color-verde-regular);
    text-align: center;
    color: #fff;
    box-shadow: 0 0.2rem 1.5rem rgb(176 147 83 / 20%);
}

.producto .input-number-custom-primer button:before,
.producto .input-number-custom-primer button:after {
    width: 0 !important;
    height: 0 !important;
}

.producto .input-number-custom button:before,
.producto .input-number-custom button:after {
    display: inline-block;
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    width: .8rem;
    height: .1rem;
    background-color: #ffffff;
    transform: translate(-50%, -50%);
}

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

.producto .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;
}

.btnAgregrarPrimerProducto button {
    width: 100% !important;
    border-radius: 3rem !important;
}

.input-number-custom-primer {
    background-color: transparent !important;
}

.producto .puntos {
    position: absolute;
    bottom: 0;
    left: 25%;
    right: 25%;
    z-index: 2;
    /* background-color: var(--color-verde-regular); */
    background-color: var(--color-dorado);
    padding: 0.3rem 0.5rem;
    border-radius: 1rem 1rem 0 0;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    /* box-shadow: 0 0.2rem 1.5rem rgb(57 114 45 / 42%); */
    /* box-shadow: 0 0.2rem 1.5rem rgb(176 147 83 / 25%); */
}

/* CARRITO */
#carrito {
    width: 0rem;
    position: fixed;
    z-index: 2;
    right: 0;
    top: 0;
    height: 100%;
}

#carrito .card,
#detalle-checkout .card {
    background-color: transparent;
    border: 0;
}

#carrito .card-header p,
#detalle-checkout .card-header p {
    font-size: 1.5rem;
}

#carrito .card-header {
    background: linear-gradient(180deg, #0D380D -16.84%, #39722D 90.59%);
    border-radius: 3rem 0 0 0;
    padding: 2rem 2rem 1rem 2.5rem;
}

#carrito .card-body {
    background: #FFFFFF;
    padding: 1.5rem 1rem 0rem 0.5rem;
    border: 0;
}

#carrito .card-footer {
    background: #FFFFFF;
    border-radius: 0 0 0 3rem;
    padding: 1.5rem;
    border: 0;
}

#detalle-checkout .card-header {
    border-radius: 2rem 2rem 0 0;
    background: linear-gradient(180deg, #0D380D -16.84%, #39722D 90.59%);
    padding: 1.5rem;
    border: 0;
}

#detalle-checkout .card-body {
    background: #FFFFFF;
    padding: 1.5rem 1.5rem 1.5rem 1rem;
    border: 0;
    border-radius: 0 0 2rem 2rem;
}

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

    100% {
        width: 30rem;
    }
}

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

    100% {
        width: 0rem;
    }
}

#adquiridos .titulo,
#adquiridos .precio {
    font-size: 1rem;
}

#adquiridos .titulo {
    font-weight: 500;
}

#adquiridos img {
    background: #FCF7DE;
    border-radius: 1rem;
    padding: 1rem;
}

#adquiridos .card {
    background: #FFFFFF;
    box-shadow: 0px -1px 30px -6px rgba(0, 0, 0, 0.04), 0px 6px 20px -2px rgba(0, 0, 0, 0.1);
    padding: 1rem;
    border-radius: 1rem;
}

#adquiridos .img-list {
    width: 5em;
}

#adquiridos .btn-eliminar {
    color: #224F98;
    font-size: 1.7em;
}

#adquiridos .btn-eliminar:hover {
    color: #224F98;
}

.aquiridosScroll {
    overflow-y: auto;
    max-height: 34rem;
    padding: 0;
}

.list-cart-producto .count input.number {
    text-align: center;
    border: none;
    margin: 0px;
    width: 1.7em;
    height: 1.7em;
    color: #fff;
}

#adquiridos .rec .precio {
    color: #224F98;
    font-weight: bold;
    text-align: right;
}

#adquiridos .desc p {
    text-align: right;
}

#adquiridos .nombre-producto {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 0;
}

.aquiridosScroll .input-cantidad-producto button:before,
.aquiridosScroll .input-cantidad-producto button:after {
    display: inline-block;
    position: absolute;
    content: "";
    width: .5rem;
    height: .1rem;
    background-color: #ffffff;
    transform: translate(-50%, -50%);
}

.aquiridosScroll .input-cantidad-producto button.plus:after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.aquiridosScroll .plus {
    border-radius: 1rem 0rem 0rem 1rem !important;
}

.aquiridosScroll .btn-minus {
    border-radius: 0rem 1rem 1rem 0rem !important;
}

.aquiridosScroll .value-button,
.number {
    outline: none;
    -webkit-appearance: none;
    border: none;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 2rem;
    cursor: pointer;
    margin: 0;
    position: relative;
    background: var(--color-verde-regular);
    text-align: center;
    color: #fff;
}

/* MODAL */
.modal-container {
    width: 30rem;
    margin: auto;
}

.modal-content {
    border-radius: 2rem !important;
    border: none !important;
}

.titulo-modal {
    font-weight: 600;
    font-size: 1.5rem;
    color: #fff;
}

.modal-header {
    background-color: var(--color-verde-claro);
    color: #fff;
}

.modal-backdrop {
    z-index: 3 !important;
}

/* CHECKOUT */
.titulo-card-checkout {
    color: #fff;
    font-weight: 600;
    font-size: 1.25rem;
    margin-bottom: 0;
}

.datosCompra .card-header {
    padding: 1.25rem;
    background-color: var(--color-verde-claro);
    border-radius: 1.5rem 1.5rem 0 0;
}

.datosCompra .card-body {
    padding: 1.25rem;
    font-weight: 500;
    color: var(--color-verde-oscuro);
}

.datosCompra {
    border-radius: 1.5rem !important;
    background-color: #F2F7F3 !important;
    font-size: 1rem;
}

.pasos-checkout .progress.active .progress-bar {
    background-color: var(--color-dorado);
}

.pasos-checkout .progress .progress-bar {
    background-color: #F2F7F3;
}

.pasos-checkout .progress {
    background-color: #F2F7F3;
    border-radius: 3rem;
    height: 0.8rem;
}

#progress-circle {
    transition: stroke-dashoffset 0.5s ease-in-out;
}

.pasos-checkout .circulo {
    border-radius: 50%;
    width: 3rem;
    height: 3rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    background: #F2F7F3;
    color: #6F6C90;
}

.pasos-checkout .circulo.active {
    background-color: var(--color-dorado);
    color: #fff;
}

.input-group-prepend button {
    border-radius: 2rem 0 0 2rem;
}

.input-group input {
    background-color: #56b34821 !important;
    border-radius: 0 2rem 2rem 0;
    border-width: 0.15rem !important;
    border-style: solid !important;
    border-color: var(--color-verde-claro) !important;

}

/* PAGO VOUCHER */
.form-check-input:checked {
    background-color: var(--color-verde-regular);
    border-color: var(--color-verde-regular);
}

.table> :not(:first-child) {
    border-top: none;
    border-style: unset !important
}

.contenido-tabla table thead tr th {
    color: var(--color-verde-oscuro);
    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 0em !important;
}

.dataTables_paginate ul.pagination li.paginate_button {
    margin: 0 0.3rem;
}

th,
td {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
}

td {
    font-weight: 300;
}

thead {
    background-color: #F2F7F3;
}

.table thead th {
    border-bottom: 0.15rem solid var(--color-dorado-hover);
    font-weight: 600;
}

table {
    color: var(--color-verde-oscuro);
    /* border-radius: 0.9rem; */
    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: #E1EBE2;
    border-style: unset !important;
    --bs-table-accent-bg: unset;
}

.table-striped>tbody>tr:nth-of-type(even) {
    background-color: #D2DCD4;
}
.indexado_socio_inactivo td{
    color: #ff0000 !important;
}
.table.dataTable th {
    padding: 0.8rem 0.5rem;
}

.table.dataTable td {
    color: var(--color-verde-oscuro);
    font-weight: 500;
}

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;
    color: var(--color-verde-oscuro);
}

.dataTables_length select {
    transition: box-shadow 0.5s ease-out;
}

.dataTables_length select {
    margin-left: 1rem;
    margin-right: 1rem;
    background-color: var(--color-verde-claro);
    border-radius: 1rem;
    border: unset !important;
    /* border-color: var(--color-lightblue); */
    color: #fff;
    padding: 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: var(--color-dorado);
    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: var(--color-dorado-hover) !important;
    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-verde-claro);
}

.page-link:focus {
    box-shadow: none;
}

.page-link:hover {
    background-color: var(--color-verde-claro) !important;
    color: #fff !important;
}

.page-item.active .page-link {
    z-index: 3;
    color: #fff !important;
    background-color: var(--color-verde-claro);
    border-color: var(--color-verde-claro);
}

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;
    display: none;
}

.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: var(--color-verde-claro) !important;
}

.progress {
    background-color: #ffffff;
}
.step-upgrade{
    color: #999CA1;
    font-weight: 500;
    font-size: 1rem;
}

/* POPVER */
.popover {
    border: 0;
    background-color: transparent;
}

.popover-body {
    background-color: var(--color-verde-claro);
    border-radius: 1.5rem;
    color: #fff;
}

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

    100% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
    }
}

.circulo-rango-progreso{
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.85rem;
    padding-bottom: 0.8rem;
}

/* Small devices (tablets, 576px and up) */
@media (min-width: 321px) {
    .background-modal {
        right: -2%;
    }
}

/* Small devices (tablets, 576px and up) */
@media (min-width: 576px) {
    .circulo-rango-progreso{
        padding-left: 1rem;
        padding-right: 1rem;
        padding-top: 0.85rem;
        padding-bottom: 0.8rem;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .background-modal {
        right: -1%;
    }
    .circulo-rango-progreso{
        padding-left: 1rem;
        padding-right: 1rem;
        padding-top: 0.8rem;
        padding-bottom: 0.8rem;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .circulo-rango-progreso{
        padding-left: 1rem;
        padding-right: 1rem;
        padding-top: 0.85rem;
        padding-bottom: 0.8rem;
    }
    .container-fluid {
        max-width: calc(100% - 70px);
    }
    .header-menu {
        background: transparent;
    }

    .menu-dashboard-container {
        width: 9rem;
    }

    @keyframes extender {
        0% {
            width: 9rem;
        }

        100% {
            width: 18rem;
        }
    }

    @keyframes contraer {
        0% {
            width: 18rem;
        }

        100% {
            width: 9rem;
        }
    }

    ul.menu-dashboard li a {
        width: unset;
    }

    ul.menu-dashboard li {
        display: unset;
        justify-content: unset;
    }

    .btn-categoria {
        height: 9rem;
        font-size: 1rem;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    html {
        font-size: 14px;
    }

    .container-fluid {
        max-width: calc(100% - 70px);
    }
}

/* Extra Extra large devices (large desktops, 1400px and up) */
@media (min-width: 1400px) {
    html {
        font-size: 16px;
    }

    .container-fluid {
        width: calc(100% - 80px);
        max-width: 1920px;
    }
}

@media (min-width: 1600px) {
    .container-fluid {
        width: calc(100% - 70px);
        max-width: 1920px;
    }

    .col-xxl-20 {
        flex: 0 0 auto;
        width: 17%;
    }

    .margen-tracania:nth-child(5n),
    .margen-izquierda {
        margin-left: 1.875%;
        margin-right: 0;
    }

    .margen-tracania:nth-child(5n+1),
    .margen-derecha {
        margin-left: 0;
        margin-right: 1.875%;
    }

    .margen-tracania,
    .margen-ambos {
        margin-left: 1.875%;
        margin-right: 1.875%;
    }

    .ps-xxxl-0 {
        padding-left: 0 !important;
    }
}

@media (min-width: 1920px) {
    .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;
    }
}

.row-gap-1 {
    row-gap: .25rem !important;
}
.row-gap-2 {
    row-gap: .5rem !important;
}
.row-gap-3 {
    row-gap: 1rem !important;
}
.row-gap-4 {
    row-gap: 1.5rem !important;
}
.row-gap-5 {
    row-gap: 3rem !important;
}
