body.loading-open{
    overflow: hidden;}
.loading-open .loading {
    overflow-x: hidden;
    overflow-y: auto;}

.loading > * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;}

        .loading{
            position: fixed;
            top: 0;
            left: 0;
            z-index: 1034;
            height: 100%;
            width: 100%;
            background: rgba(0,0,0,0.4);}
        .loading, 
        .loading-dialog{
            opacity: 0;
            pointer-events: none;
            transition: all 0.25s ease;}
        .loading.show, 
        .loading.show .loading-dialog{
            opacity: 1;
            pointer-events: auto;}

            .loading .loading-dialog{
                position: absolute;
                top: 50%;
                left: 50%;
                z-index: 1036;
                width: 100%;
                max-width: 500px;
                justify-content: center;
                transform: translate(-50%, -50%) scale(0.95);}
            .loading.show .loading-dialog{
                transform: translate(-50%, -50%) scale(1);}
                .loading-dialog, 
                .loading-content, 
                .loading-header, 
                .loading-body{
                    width: 100%;
                    display: flex;
                    align-items: center;
                    justify-content: space-between;}
                .loading-header, 
                .loading-body{
                    padding: 1rem;}

                .loading-dialog .loading-content{
                    flex-direction: column;
                    border-radius: 5px;
                    background: #fff;
                    width: calc(100% - 15px);
                    box-shadow: 0 0 15px rgba(0,0,0,0.1);}
                    .loading-content .loading-header{
                        border-bottom: 1px solid #ccc;
                        border-radius: 5px 5px 0 0;}
                    .loading-content .loading-header.purple{
                        color: #fff;
                        background: #4c5dab;
                        border-bottom: none;}
                        .loading-content .loading-header .loading-title{
                            font-size: 1.2rem;
                            font-weight: 500;
                            margin: 0;}
                        .loading-content .loading-header.purple .loading-title{
                            color: #fff !important;}
                        .loading-content .loading-header i{
                            color: #8b8989;
                            cursor: pointer;
                            font-size: 23px;}
                    .loading-content .loading-body{
                        justify-content: center;}
        