
/*Spinner*/
.spinner {
    position: relative;
    cursor: pointer;
}

    .spinner:active {
        background: #007a63;
    }

.spinner__text {
    color: #ffffff;
    transition: all 0.2s;
}

.spinner--loading .spinner__text {
    visibility: hidden;
    opacity: 0;
}

.spinner--loading::before {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    border: 4px solid transparent;
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: spinner-loading-spinner 1s ease infinite;
}

@keyframes spinner-loading-spinner {
    from {
        transform: rotate(0turn);
    }

    to {
        transform: rotate(1turn);
    }
}

/*Fine Spinner*/

.max-h-35{
    max-height: 35rem;
}
.min-h-17{
    min-height: 17rem;
}
.txt-transform-none{
    text-transform: none;
}
.c-pointer{
    cursor: pointer;
}

#modalBody {
    border-top: 4px solid #e3e6f0;
}

.border-top-success {
    border-top: 4px solid #198754;
}

.border-top-warning {
    border-top: 4px solid #ffc107;
}

.border-top-primary {
    border-top: 4px solid #0dcaf0;
}

.fieldSmartBill {
    display: block;
    width: 100%;
    height: 42px;
    padding: 6px 12px;
    line-height: 1.42857143;
    color: #555;
    background-color: transparent;
    background-image: none;
    border: none;
    border-radius: 4px;
    white-space: nowrap;
}

.shake-horizontal {
    display: block;
    -webkit-animation: shake-horizontal 1s cubic-bezier(0.455, 0.030, 0.515, 0.955) infinite both;
    animation: shake-horizontal 1s cubic-bezier(0.455, 0.030, 0.515, 0.955) infinite both;
}


@-webkit-keyframes shake-horizontal {
    0%, 100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    10%, 30%, 50%, 70% {
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }

    20%, 40%, 60% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    80% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    90% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }
}

@keyframes shake-horizontal {
    0%, 100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    10%, 30%, 50%, 70% {
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }

    20%, 40%, 60% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    80% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    90% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

}
    .min-width-75{
        min-width: 75px;
    }

.position-top-right{
    position: fixed;
    top: 2%;
    right: 1%;
}


/******************************   HAMBURGER MENU ICONA ANIMATA   ***********************************************/
.topbar #sidebarToggleTop {
    height: unset !important;
    width: unset !important;
}

.hamburger {
    /*padding: 15px 15px;*/
    padding-left: 10px;
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible;
}

    .hamburger:hover {
        opacity: 0.7;
    }

    .hamburger.is-active:hover {
        opacity: 0.7;
    }

    .hamburger.is-active .hamburger-inner,
    .hamburger.is-active .hamburger-inner::before,
    .hamburger.is-active .hamburger-inner::after {
        background-color: #000;
    }

.hamburger-box {
    width: 40px;
    height: 24px;
    display: inline-block;
    position: relative;
}

.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px;
}

    .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
        width: 30px;
        height: 4px;
        background-color: #000;
        border-radius: 4px;
        position: absolute;
        transition-property: transform;
        transition-duration: 0.15s;
        transition-timing-function: ease;
    }

        .hamburger-inner::before, .hamburger-inner::after {
            content: "";
            display: block;
        }

        .hamburger-inner::before {
            top: -10px;
        }

        .hamburger-inner::after {
            bottom: -10px;
        }

.hamburger--squeeze .hamburger-inner {
    transition-duration: 0.075s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

    .hamburger--squeeze .hamburger-inner::before {
        transition: top 0.075s 0.12s ease, opacity 0.075s ease;
    }

    .hamburger--squeeze .hamburger-inner::after {
        transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

.hamburger--squeeze.is-active .hamburger-inner {
    transform: rotate(45deg);
    transition-delay: 0.12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

    .hamburger--squeeze.is-active .hamburger-inner::before {
        top: 0;
        opacity: 0;
        transition: top 0.075s ease, opacity 0.075s 0.12s ease;
    }

    .hamburger--squeeze.is-active .hamburger-inner::after {
        bottom: 0;
        transform: rotate(-90deg);
        transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
    }
/*****************************************************************************/
