@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swap");

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Manrope", sans-serif;
}
body {
    overflow: hidden;
}

.toggle {
    cursor: pointer;
    display: inline-block;
}
.toggle-switch {
    display: inline-block;
    background: #ccc;
    border-radius: 16px;
    width: 58px;
    height: 32px;
    position: relative;
    vertical-align: middle;
    transition: background 0.25s;
    &:before,
    &:after {
        content: "";
    }
    &:before {
        display: block;
        background: linear-gradient(to bottom, #fff 0%, #eee 100%);
        border-radius: 50%;
        box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);
        width: 24px;
        height: 24px;
        position: absolute;
        top: 4px;
        left: 4px;
        transition: left 0.25s;
    }
    .toggle:hover &:before {
        background: linear-gradient(to bottom, #fff 0%, #fff 100%);
        box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5);
    }
    .toggle-checkbox:checked + & {
        background: rgb(33, 150, 243);
        &:before {
            left: 30px;
        }
    }
}
.toggle-checkbox {
    position: absolute;
    visibility: hidden;
}
.toggle-label {
    margin-left: 5px;
    position: relative;
    top: 2px;
}

.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

input:checked + .slider {
    background-color: #2196f3;
}

input:focus + .slider {
    box-shadow: 0 0 1px #2196f3;
}

input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}
/* width */
::-webkit-scrollbar {
    width: 5px;
}

/* Track */
::-webkit-scrollbar-track {
    background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: #888;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.d-flex {
    display: flex;
    justify-content: center;
    align-items: center;
}

.d-flexs {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.colum {
    flex-direction: column;
}

.remove-coupon {
    display: none;
}

// Globle Start --------------------
.sub_header {
    width: 100%;
    height: 30px;
    border-left: 3px solid rgb(3, 3, 109);
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    h2 {
        font-size: 18px;
        padding-left: 10px;
        margin-bottom: 2px;
        color: #686868;
    }
}

.filter-bar {
    background-color: rgb(235, 235, 235);
    width: 100%;
    height: 40px;
    border-radius: 5px;
    padding: 4px;
    display: flex;
    gap: 5px;
    margin-bottom: 5px;
    font-size: 12px;
    color: #686767;
    overflow: hidden;

    .search_box {
        height: 100%;
        width: 350px;
        gap: 10px;
        input {
            height: 100%;
            width: 70%;
            outline: none;
            border: none;
            border-radius: 5px;
            padding-left: 10px;
        }

        button {
            width: 30%;
            height: 100%;
            outline: none;
            border: none;
            border-radius: 5px;
            color: #fff;
            background: linear-gradient(
                90deg,
                rgb(135, 197, 255) 0%,
                rgb(97, 179, 255) 33%,
                rgb(75, 169, 255) 52%,
                rgb(54, 159, 255) 100%
            );
            cursor: pointer;
        }
    }

    .date_selector {
        height: 100%;
        width: 500px;
        gap: 10px;
        input,
        select {
            height: 100%;
            width: 70%;
            outline: none;
            border: none;
            border-radius: 5px;
            padding-left: 10px;
        }

        img {
            height: 100%;
            width: auto;
            cursor: pointer;
        }
    }

    .sorting {
        height: 100%;
        gap: 5px;
        button {
            height: 100%;
            width: 35px;
            outline: none;
            border: none;
            border-radius: 5px;
            color: #fff;
            font-size: 17px;
            cursor: pointer;
            background-color: #a5a5a5;
        }

        img {
            height: 100%;
            width: auto;
            cursor: pointer;
        }
    }

    .grid-layout {
        height: 100%;
        gap: 10px;
        margin-right: 10px;
        i {
            font-size: 24px;
            cursor: pointer;
        }
    }

    form{
        display: flex;
        align-items: center;
        width: 100%;
        height: 100%;
        gap: 10px;
        input,select {
            height: 100%;
            width: 160px;
            outline: none;
            border: none;
            border-radius: 5px;
            padding-left: 10px;
        }
        input:nth-child(6){
            width: 100px;
        }

        button {
            width: 100px;
            height: 100%;
            outline: none;
            border: none;
            border-radius: 5px;
            color: #fff;
            background: linear-gradient(
                90deg,
                rgb(135, 197, 255) 0%,
                rgb(97, 179, 255) 33%,
                rgb(75, 169, 255) 52%,
                rgb(54, 159, 255) 100%
            );
            cursor: pointer;
        }

        input[type="file"]::file-selector-button {
            border-radius: 4px;
            padding: 0 16px;
            height: 100%;
            cursor: pointer;
            background-color: white;
            border: 1px solid rgba(0, 0, 0, 0.16);
            box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.05);
            margin-right: 16px;
            transition: background-color 200ms;
        }

        input[type="file"]::file-selector-button:hover {
            background-color: #f3f4f6;
        }

        /* file upload button active state */
        input[type="file"]::file-selector-button:active {
            background-color: #e5e7eb;
        }

        input[type="checkbox"]{
            width: 20px;
            height: 20px;
        }

        span{
            display: flex;
            align-items: center;
            font-size: 14px;
            gap: 5px;
        }
    }


}

.side-bar {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    position: relative;
    .logo {
        width: 70%;
        height: 60px;
        overflow: hidden;
        margin-top: 10px;
        img {
            width: 100%;
            margin: 10px;
        }
    }

    .menu {
        width: 100%;
        margin-top: 10px;
        a {
            text-decoration: none;
            width: 100%;
            padding: 10px;
            position: relative;
            cursor: pointer;
            padding-left: 35px;
            li {
                list-style: none;
                // background-color: red;
                font-size: 16px;
                color: #adadad;

                span {
                    margin-right: 15px;
                    i {
                        font-size: 20px;
                    }
                }
            }
        }

        a.active {
            li {
                color: rgb(115, 53, 161);
            }
            border-left: 4px solid rgb(115, 53, 161);
        }

        a.active::before {
            content: "";
            display: block;
            position: absolute;
            right: 10px;
            top: 17px;
            width: 9px;
            height: 9px;
            border-radius: 50%;
            background-color: rgb(115, 53, 161);
        }

        a:hover {
            li {
                color: rgb(115, 53, 161);
            }
            // border-left: 4px solid rgb(115,53,161);
        }
    }

    .event {
        width: 100%;
        position: absolute;
        bottom: 20px;
        .event_img {
            width: 80%;

            img {
                width: 100%;
                height: auto;
            }
        }

        .logout {
            width: 130px;
            padding: 5px 10px;
            border-radius: 20px;
            cursor: pointer;
            color: #fff;
            background: linear-gradient(87deg, rgba(168, 151, 180, 1) 0%, rgba(115, 53, 161, 1) 100%);
            span {
                margin-left: 5px;
            }
        }
    }
}

.main_header {
    width: 100%;
    height: 60px;

    p {
        font-size: 18px;
        color: rgb(115, 53, 161);
        span {
            font-weight: bold;
        }
    }

    .client_logo {
        width: 130px;
        height: 70%;
        img {
            width: 100%;
            height: 100%;
        }
    }

    button {
        padding: 7px 10px;
        border-radius: 5px;
        border: none;
        color: #fff;
        cursor: pointer;
        background: linear-gradient(87deg, rgb(168, 151, 180) 0%, rgb(115, 53, 161) 100%);
    }
}

// Globle end --------------------

main {
    height: 100vh;
    display: grid;
    grid-template-columns: 1fr 3fr 2fr;

    .main-wrapper {
        border-right: 2px solid #f0f0f0;
        border-left: 2px solid #f0f0f0;
        display: flex;
        align-items: flex-start;
        padding: 10px 30px;

        .info-cards {
            width: 100%;
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 15px;
            margin-bottom: 20px;

            .card {
                height: 120px;
                flex: 1 1 200px;
                background-color: red;
                border-radius: 10px;
                padding: 20px;
                display: flex;
                justify-content: space-between;
                align-items: flex-start;
                position: relative;
                color: #fff;
                box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
                .title {
                    h1 {
                        margin-top: 20px;
                        color: rgb(13, 33, 38);
                    }
                }
                .card-icon {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    flex-direction: column;
                    i {
                        font-size: 25px;
                        padding: 10px 11px;
                        border-radius: 50%;
                    }

                    a {
                        text-decoration: none;
                        i {
                            font-size: 20px;
                        }
                    }
                }

                .see_details_btn {
                    position: absolute;
                    right: 10px;
                    bottom: 10px;
                    font-size: 18px;
                    padding: 0 10px;
                    border-radius: 2px;
                    cursor: pointer;
                }
            }

            .card:nth-child(1) {
                background: rgb(254, 228, 231);
                .card-icon {
                    i {
                        background-color: rgb(244, 90, 130);
                    }
                }
            }

            .card:nth-child(2) {
                background: rgb(254, 244, 224);
                .card-icon {
                    i {
                        background-color: rgb(246, 147, 125);
                    }
                }
            }

            .card:nth-child(3) {
                background: rgb(221, 252, 229);
                .card-icon {
                    i {
                        background-color: rgb(61, 207, 83);
                    }
                }
            }

            .card:nth-child(4) {
                background: rgb(243, 233, 255);
                i {
                    background-color: rgb(194, 131, 255);
                }
            }
        }

        .action_cards {
            flex-wrap: wrap;
            width: 100%;
            gap: 15px;
            a {
                flex: 1 1 250px;
                background-color: #f7f7f7;
                padding: 20px;
                border-radius: 10px;
                text-decoration: none;
                color: #000;
                .card {
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                }
            }
        }
    }

    .right-bar {
        padding: 30px;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
        position: relative;
        overflow: hidden;

        .notification_bar {
            width: 100%;
            margin-bottom: 20px;
            .bell {
                background-color: #ebebeb;
                width: 45px;
                height: 45px;
                border-radius: 50%;
                position: relative;
                cursor: pointer;
                .notification_count {
                    position: absolute;
                    background-color: rgb(216, 0, 0);
                    width: 25px;
                    height: 25px;
                    border-radius: 50%;
                    color: #fff;
                    right: -10px;
                    top: -10px;
                    font-size: 10px;
                    border: 3px solid #fff;
                }
            }

            .date {
                p {
                    font-size: 12px;
                    text-align: right;
                }
            }
        }

        .primary_cards {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 15px;
            flex-wrap: wrap;
            margin-bottom: 20px;
            a {
                flex: 1 1 130px;
                text-decoration: none;
                color: rgb(115, 53, 161);
                .card {
                    height: 150px;
                    background: rgb(243, 233, 255);
                    padding: 20px;
                    border-radius: 15px;
                    display: flex;
                    justify-content: space-between;
                    align-items: flex-start;
                    flex-direction: column;
                    position: relative;
                    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
                    h1 {
                        font-size: 45px;
                    }
                }

                .card::before {
                    content: " ";
                    display: block;
                    width: 2px;
                    height: 100px;
                    position: absolute;
                    right: 0;
                    top: 30px;
                    background: rgb(115, 53, 161);
                }

                .card:hover {
                    background: #cccecf;
                }
            }
        }

        .notification_panal {
            position: absolute;
            top: 0;
            right: -450px;
            z-index: 10000;
            width: 100%;
            height: 100%;
            overflow-x: hidden;
            overflow-y: scroll;
            padding: 70px 20px 20px 20px;
            display: flex;
            justify-content: flex-start;
            align-items: flex-start;
            flex-direction: column;
            transition: all 0.3s ease-in-out;
            gap: 10px;

            /* From https://css.glass */
            background: rgba(255, 255, 255, 0.2);
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
            backdrop-filter: blur(5px);
            -webkit-backdrop-filter: blur(5px);
            border: 1px solid rgba(255, 255, 255, 0.3);
            .note_header {
                position: relative;
                top: 0;
                width: 422px;
                margin-top: -70px;
                z-index: 1000;
                padding: 10px;
                font-size: 14px;
                background-color: #fff;
                .close {
                    width: 30px;
                    height: 30px;
                    background: url(./assets/close.png);
                    background-position: center;
                    background-size: cover;
                    background-repeat: no-repeat;
                    margin-left: 210px;
                    cursor: pointer;
                }
            }
            .notifications {
                padding: 20px;
                border-radius: 10px;
                box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
                position: relative;
                background: #fff;
                .date {
                    position: absolute;
                    right: 10px;
                    top: 10px;
                    font-size: 12px;
                    color: #686868;
                }
                p {
                    font-size: 14px;
                    margin-top: 15px;
                }
            }
        }
        .notification_panal.active {
            right: 0;
        }
    }
}

fullbody-wrapper {
    display: grid;
    grid-template-columns: 1fr 5fr;
    height: 100vh;
    position: relative;

    .modal {
        position: absolute;
        background-color: rgb(232, 247, 241);
        right: 450px;
        top: -200px;
        z-index: 10000;
        padding: 10px;
        border-radius: 10px;
        border: 2px solid #fff;
        box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
        transition: all 0.5s ease-in-out;

        i {
            position: absolute;
            right: 5px;
            top: 5px;
            font-size: 20px;
            cursor: pointer;
        }
        p {
            font-size: 14px;
            margin-bottom: 10px;
        }

        input {
            height: 40px;
            width: 250px;
            border-radius: 5px;
            border: none;
            outline: none;
            border: 1px solid rgb(34, 179, 120);
            padding-left: 10px;
        }
        button {
            margin-left: 10px;
            background-color: rgb(34, 179, 120);
            border: none;
            height: 40px;
            width: 80px;
            border-radius: 5px;
            color: #fff;
            cursor: pointer;
        }
    }
    .modal.active {
        top: 20px;
    }

    .modal:nth-child(2) {
        background: rgb(254, 228, 231);
        input {
            border: 1px solid rgb(244, 90, 130);
        }
        button {
            background-color: rgb(244, 90, 130);
        }
    }
    .main-wrapper {
        border-right: 2px solid #f0f0f0;
        border-left: 2px solid #f0f0f0;
        display: flex;
        align-items: flex-start;
        padding: 0 10px 10px 10px;
        .data-wrapper {
            width: 100%;
            height: auto;
            position: relative;

            .appcard-wrapper {
                display: flex;
                flex-direction: column;
                width: 100%;
                height: 530px;
                border: 1px solid rgb(235, 235, 235);
                border-radius: 0 0 5px 5px;
                overflow-y: scroll;

                .app-card {
                    width: 100%;
                    display: grid;
                    grid-template-columns: 1fr 1fr 1fr 1fr 2fr 3fr;
                    border-bottom: 1px solid rgb(235, 235, 235);
                    padding: 5px 0;
                    position: relative;
                    margin-bottom: 30px;
                    .status {
                        position: absolute;
                        bottom: -23px;
                        left: 0;
                        border-radius: 0 0 5px 5px;
                        background: #aaf3ba;
                        font-size: 12px;
                        padding: 3px 6px;
                        display: flex;
                        gap: 10px;
                        font-weight: bold;
                        p {
                            span {
                                font-weight: lighter;
                            }
                        }
                    }

                    .status2 {
                        position: absolute;
                        bottom: -28px;
                        right: 0;
                        border-radius: 0 0 5px 5px;
                        background: #aac4f3;
                        padding: 3px 6px;
                        i {
                            cursor: pointer;
                        }
                    }

                    .coupon-list {
                        display: none;
                        position: absolute;
                        width: 180px;
                        bottom: -130px;
                        right: 56px;
                        background-color: #fff;
                        z-index: 1000;
                        border-radius: 5px;
                        padding: 10px;
                        box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
                        .coupon-head {
                            font-weight: bold;
                            font-size: 15px;
                        }
                        .coupon {
                            display: flex;
                            justify-content: space-between;
                            align-items: center;
                        }
                    }

                    .data {
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        padding: 4px;
                        img {
                            width: 50%;
                            height: auto;
                        }

                        .search_box {
                            height: 100%;
                            width: 100%;
                            gap: 10px;
                            input {
                                height: 100%;
                                width: 100%;
                                outline: none;
                                border: none;
                                border-radius: 5px;
                                padding-left: 10px;
                                border: 1px solid rgb(146, 146, 146);
                            }

                            button {
                                width: 40%;
                                height: 100%;
                                outline: none;
                                border: none;
                                border-radius: 5px;
                                color: #fff;
                                background: linear-gradient(
                                    90deg,
                                    rgb(135, 197, 255) 0%,
                                    rgb(97, 179, 255) 33%,
                                    rgb(75, 169, 255) 52%,
                                    rgb(54, 159, 255) 100%
                                );
                                cursor: pointer;
                            }
                        }
                        select {
                            height: 100%;
                            width: 90%;
                            outline: none;
                            border: none;
                            border-radius: 5px;
                            padding: 0 10px;
                            border: 1px solid rgb(146, 146, 146);
                        }
                    }
                }
            }
        

            .data_headers {
                display: grid;
                grid-template-columns: 1fr 2fr 1fr 1fr 1fr 1fr;
                .header {
                    background-color: rgb(235, 235, 235);
                    height: 40px;
                    font-size: 13px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    font-weight: bold;
                }
                .header:not(:last-child) {
                    border-right: 1px solid #fff;
                }

                .header:first-child {
                    border-radius: 5px 0 0 0;
                }

                .header:last-child {
                    border-radius: 0 5px 0 0;
                }
            }

            .customer_data_cards {
                display: flex;
                flex-direction: column;
                width: 100%;
                height: 480px;
                border: 1px solid rgb(235, 235, 235);
                border-radius: 0 0 5px 5px;
                overflow-y: scroll;
                .customer_data_card {
                    width: 100%;
                    display: grid;
                    grid-template-columns: 1fr 2fr 1fr 1fr 1fr 1fr;
                    font-size: 14px;
                    height: 50px !important;
                    min-height: 50px;
                    border-bottom: 1px solid gainsboro;
                    transition: all 0.5s ease-in-out;

                    .data {
                        height: 100%;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        color: #686767;
                        position: relative;

                        img {
                            width: 80px;
                            height: auto;
                        }
                        > i {
                            background-color: rgb(238, 238, 238);
                            font-size: 20px;
                            padding: 7px;
                            border-radius: 5px;
                            cursor: pointer;
                        }
                    }
                    .data {
                        .access-list {
                            width: auto;
                            position: absolute;
                            background-color: rgb(255, 255, 255);
                            top: 47px;
                            padding: 10px;
                            box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
                            display: none;
                            z-index: 100000;
                            form{
                                gap: 10px;
                                button {
                                    padding: 2px 5px ;
                                    outline: none;
                                    border: none;
                                    border-radius: 5px;
                                    color: #fff;
                                    background: linear-gradient(
                                        90deg,
                                        rgb(135, 197, 255) 0%,
                                        rgb(97, 179, 255) 33%,
                                        rgb(75, 169, 255) 52%,
                                        rgb(54, 159, 255) 100%
                                    );
                                    cursor: pointer;
                                }
                            }
                            ul {
                                li {
                                    width: 100%;
                                    list-style: none;
                                    margin-bottom: 10px;
                                    span {
                                        margin-left: 10px;
                                        button {
                                            padding: 5px;
                                            outline: none;
                                            border: none;
                                            border-radius: 5px;
                                            color: #fff;
                                            background: linear-gradient(
                                                90deg,
                                                rgb(135, 197, 255) 0%,
                                                rgb(97, 179, 255) 33%,
                                                rgb(75, 169, 255) 52%,
                                                rgb(54, 159, 255) 100%
                                            );
                                            cursor: pointer;
                                        }
                                    }
                                }
                            }
                        }
                        .link-tag {
                            position: absolute;
                            font-size: 9px;
                            position: absolute;
                            right: 5px;
                            top: 5px;
                            display: flex;
                            justify-content: center;
                            align-items: center;
                            padding: 0 5px;
                            border-radius: 10px;
                            display: none;
                        }
                        .link-tag.link {
                            display: block;
                            color: rgb(49, 137, 68);
                            background-color: rgb(235, 249, 235);
                            border: 1px solid rgb(185, 224, 188);
                        }
                        .link-tag.notlink {
                            display: block;
                            color: rgb(179, 51, 24);
                            background-color: rgb(255, 240, 238);
                            border: 1px solid rgb(250, 202, 193);
                        }
                    }

                    .data:hover {
                        .access-list {
                            display: block;
                        }
                    }

                    .data:first-child {
                        .hover-card {
                            width: 430px;
                            height: 200px;
                            position: absolute;
                            left: 0;
                            top: 0;
                            transition: all 0.3s ease-in-out;
                            display: none;
                            z-index: 1000;
                            img {
                                width: 100%;
                                height: 100%;
                            }
                        }

                        .img-collage-hover {
                            box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
                            height: 250px;
                            position: absolute;
                            top: 10px;
                            left: 10px;
                            width: 400px;
                            grid-template-columns: 1fr 1fr 1fr;
                            grid-template-rows: 1fr 1fr;
                            gap: 5px;
                            z-index: 1000;
                            background-color: #fff;
                            display: none;

                            .img-box {
                                img {
                                    width: 100%;
                                    height: 100%;
                                }
                            }
                        }
                    }
                }

                .data:first-child:hover {
                    .hover-card {
                        display: block;
                    }
                    .img-collage-hover {
                        display: grid;
                    }
                }

                .data:last-child{
                    display: flex;
                    gap: 5px;
                }

                .data:nth-child(5),.data:nth-child(6) {
                    p {
                        width: 90px;
                        height: 25px;
                        color: rgb(49, 137, 68);
                        background-color: rgb(235, 249, 235);
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        border-radius: 20px;
                        border: 1px solid rgb(185, 224, 188);
                        font-size: 12px;
                    }
                }

                .data:nth-child(5).block {
                    p {
                        color: rgb(179, 51, 24);
                        background-color: rgb(255, 240, 238);
                        border: 1px solid rgb(250, 202, 193);
                    }
                }

                .data:nth-child(5).expire {
                    p {
                        color: rgb(152, 110, 8);
                        background-color: rgb(255, 250, 225);
                        border: 1px solid rgb(248, 218, 129);
                    }
                }

                .data:nth-child(5).unused,.data:nth-child(6).unused {
                    p {
                        color: rgb(122, 126, 129);
                        background-color: rgb(241, 243, 245);
                        border: 1px solid rgb(215, 220, 224);
                    }
                }

                .customer_data_card.hide {
                    display: none;
                }
                .customer_data_card:hover {
                    background-color: #f3f2f2;
                }
            }

         
            

    

            .membership-card {
                display: grid;
                grid-template-columns: 1fr 1fr 1fr;
                width: 100%;
                height: 100px;
                gap: 10px;

                .jumbo-card {
                    height: 500px;
                    border: 1px solid rgb(189, 189, 189);
                    gap: 10px;
                    padding: 10px;
                    border-radius: 5px;
                    position: relative;
                    .img-sect {
                        width: 100%;
                        display: grid;
                        grid-template-columns: 1fr 1fr 1fr;
                        gap: 10px;
                        .child-img {
                            border-radius: 5px;
                            overflow: hidden;
                            height: 105px;
                            overflow: hidden;
                            img {
                                width: 100%;
                                height: 100%;
                            }
                        }
                    }
                    .text-sect {
                        margin-top: 10px;
                        p {
                            margin: 10px 0;
                        }
                    }

                    .buttons {
                        position: absolute;
                        right: 10px;
                        bottom: 10px;
                        button {
                            padding: 2px 5px;
                            border-radius: 3px;
                            border: none;
                            color: #fff;
                            cursor: pointer;
                            background: linear-gradient(87deg, rgb(168, 151, 180) 0%, rgb(115, 53, 161) 100%);
                            // font-size: 12px;
                            i {
                                margin-right: 2px;
                            }
                        }
                    }
                }
            }

            // .coupon-card {
            //     width: 100%;
            //     height: 100%;
            //     display: grid;
            //     grid-template-columns: 1fr 1fr 1fr;
            //     gap: 10px;
            //     .card {
            //         overflow: hidden;
            //         position: relative;
            //         img {
            //             width: 100%;
            //             height: 100%;
            //         }
            //         i {
            //             position: absolute;
            //             right: 10px;
            //             bottom: 10px;
            //             background-color: #cccecf;
            //             padding: 10px;
            //             border-radius: 5px;
            //         }
            //     }
            // }

            // .app_headers {
            //     display: grid;
            //     grid-template-columns: 1fr 1fr 1fr 1fr 2fr 3fr;
            //     .header {
            //         background-color: rgb(235, 235, 235);
            //         height: 40px;
            //         font-size: 13px;
            //         display: flex;
            //         justify-content: center;
            //         align-items: center;
            //         font-weight: bold;
            //     }
            //     .header:not(:last-child) {
            //         border-right: 1px solid #fff;
            //     }

            //     .header:first-child {
            //         border-radius: 5px 0 0 0;
            //     }

            //     .header:last-child {
            //         border-radius: 0 5px 0 0;
            //     }
            // }
        }

    }
}

.login{
    width: 100vw;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 10px;

    .logo-box{
        margin-top: -50px;
        img{
            width: 300px;
            height: auto;
        }
    }

    .input-section {
        background-color: #fff;
        z-index: 1000;
        border-radius: 5px;
        padding: 30px;
        box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
        width: 350px;
        margin-bottom: 50px;
        form{
            .inp-box {
                position: relative;
                width: 100%;
                height: 42px;
                margin-bottom: 10px;
                p {
                    position: absolute;
                    font-size: 11px;
                    top: -8px;
                    left: 10px;
                    color: rgb(115, 53, 161);
                    background-color: #fff;
                    padding: 0 10px;
                    font-weight: bold;
                }
        
                input {
                    width: 100%;
                    height: 100%;
                    outline: none;
                    border-radius: 5px;
                    border: none;
                    padding: 0 10px;
                    border: 1px solid rgb(101, 101, 102);
                    text-align: center;
                }
        
        
             
            }
          
        }

        button{
            width: 100%;
            height: 42px;
            outline: none;
            border: none;
            border-radius: 5px;
            color: #fff;
            cursor: pointer;
            background: linear-gradient(87deg, rgb(168, 151, 180) 0%, rgb(115, 53, 161) 100%);
        }
    
    }

    >p{
        color: #686767;
        text-align: center;
        font-size: 13px;
    
    }
    
    
}


.add-formdata{
    width: 100vw;
    height: 100vh;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.795);
    z-index: 100000;
    display: none;
    >i{
        position: absolute;
        color: #fff;
        right: 10px;
        top: 10px;
        font-size: 30px;
    }
    .input-section {
        background-color: #fff;
        z-index: 1000;
        border-radius: 5px;
        padding: 30px;
        box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
        width: 350px;
        margin-bottom: 50px;
        h3{
            margin-bottom: 10px;
        }
        form{
            .inp-box {
                position: relative;
                width: 100%;
                height: 42px;
                margin-bottom: 10px;
                p {
                    position: absolute;
                    font-size: 11px;
                    top: -8px;
                    left: 10px;
                    color: rgb(115, 53, 161);
                    background-color: #fff;
                    padding: 0 10px;
                    font-weight: bold;
                }
        
                select,input {
                    width: 100%;
                    height: 100%;
                    outline: none;
                    border-radius: 5px;
                    border: none;
                    padding: 0 10px;
                    border: 1px solid rgb(101, 101, 102);
                }

                input[type="file"]::file-selector-button {
                    border-radius: 4px;
                    padding: 0 16px;
                    height: 100%;
                    cursor: pointer;
                    background-color: white;
                    border: 1px solid rgba(0, 0, 0, 0.16);
                    box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.05);
                    margin-right: 16px;
                    transition: background-color 200ms;
                }
        
                input[type="file"]::file-selector-button:hover {
                    background-color: #f3f4f6;
                }
        
                /* file upload button active state */
                input[type="file"]::file-selector-button:active {
                    background-color: #e5e7eb;
                }
        
        
             
            }
            // .inp-box:nth-child(8),.inp-box:nth-child(9){
            //     input{
            //         border: none;
              
            //     }
            // }
          
        }

        button{
            width: 100%;
            height: 42px;
            outline: none;
            border: none;
            border-radius: 5px;
            color: #fff;
            cursor: pointer;
            background: linear-gradient(87deg, rgb(168, 151, 180) 0%, rgb(115, 53, 161) 100%);
        }
    
    }

    .customer_info_panal {
        width: 90%;
        height: 630px;
        padding: 15px;
        background-color: #fff;
        border: 1px solid gainsboro;
        transition: all 0.5s ease-in-out;
        .customer_info_panal_header {
            width: 100%;
            display: flex;
            justify-content: space-between;
            align-items: center;
            .buttons {
                button {
                    background-color: #0b79e0;
                    color: #fff;
                    padding: 5px;
                    border-radius: 5px;
                    border: none;
                }
            }
        }
        p {
            font-size: 13px;
        }

        .customer_profile {
            display: flex;
            align-items: center;
            gap: 10px;
            margin: 10px 0;
            .profile_img {
                width: 70px;
                height: 70px;
                overflow: hidden;
                border-radius: 50%;
                border: 2px solid blue;

                img {
                    width: 100%;
                    height: 100%;
                }
            }
        }

        .profile_details {
            width: 100%;
            height: 100px;
            display: grid;
            grid-template-columns: 40% 60%;
            p {
                font-weight: bold;
                span {
                    font-weight: lighter;
                }
            }
        }

        .abs-table-wrapper {
            width: 100%;
            height: 390px;
            position: relative;
            overflow: hidden;
            .main-table-wrapper {
                width: 202%;
                height: 390px;
                display: flex;
                overflow: hidden;
                position: absolute;
                top: 0;
                left: 0;
                transition: all 0.5s ease-in-out;

                .table-wrapper {
                    width: 100%;
                    height: 100%;
                    // overflow: scroll;

                    .coupon-wrapper {
                        width: 100%;
                        height: 340px;
                        display: grid;
                        gap: 10px;
                        overflow-y: scroll;
                   
            
                        .coupon {
                            // width: 100%;
                            overflow: hidden;
                            position: relative;
                            transition: all 0.3s ease-in-out;
                            img {
                                width: 100%;
                                height: 100%;
                            }
                            button {
                                background-color: gray;
                                color: #fff;
                                width: 70px;
                                font-size: 12px;
                                font-weight: bold;
                                padding: 5px;
                                border-radius: 20px;
                                display: block;
                                position: absolute;
                                border: none;
                                bottom: -50px;
                                right: 10px;
                                cursor: pointer;
                                opacity: 0.9;
                                transition: all 0.3s ease-in-out;
                            }
                        }
            
                        .coupon:hover button {
                            bottom: 10px;
                        }
            
                        .coupon.redeem {
                            img {
                                filter: grayscale(100%);
                            }
                        }
                    }
            
                    .coupon-wrapper.grid-large {
                        grid-template-columns: 1fr 1fr;
                        .coupon {
                            height: 260px;
                        }
                    }
                    .coupon-wrapper.grid-medium {
                        grid-template-columns: 1fr 1fr 1fr;
                        .coupon {
                            height: 180px;
                        }
                    }
                    .coupon-wrapper.grid-small {
                        grid-template-columns: 1fr 1fr 1fr 1fr;
                        .coupon {
                            height: 130px;
                        }
                    }
                }

                .data_headers {
                    display: grid;
                    grid-template-columns: 1fr 2fr 1fr 1fr 1fr 1fr;
                    .header {
                        background-color: rgb(235, 235, 235);
                        height: 40px;
                        font-size: 13px;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        font-weight: bold;
                    }
                    .header:not(:last-child) {
                        border-right: 1px solid #fff;
                    }
    
                    .header:first-child {
                        border-radius: 5px 0 0 0;
                    }
    
                    .header:last-child {
                        border-radius: 0 5px 0 0;
                    }
                }

                .customer_data_cards {
                    display: flex;
                    flex-direction: column;
                    width: 100%;
                    height: 300px;
                    border: 1px solid rgb(235, 235, 235);
                    border-radius: 0 0 5px 5px;
                    overflow-y: scroll;
                    .customer_data_card {
                        width: 100%;
                        display: grid;
                        grid-template-columns: 1fr 2fr 1fr 1fr 1fr 1fr;
                        font-size: 14px;
                        height: 50px !important;
                        min-height: 50px;
                        border-bottom: 1px solid gainsboro;
                        transition: all 0.5s ease-in-out;
    
                        .data {
                            height: 100%;
                            display: flex;
                            justify-content: center;
                            align-items: center;
                            color: #686767;
                            position: relative;
    
                            img {
                                width: 80px;
                                height: auto;
                            }
                            > i {
                                background-color: rgb(238, 238, 238);
                                font-size: 20px;
                                padding: 7px;
                                border-radius: 5px;
                                cursor: pointer;
                            }
                        }
                        .data {
                            .access-list {
                                width: auto;
                                position: absolute;
                                background-color: rgb(255, 255, 255);
                                top: 47px;
                                padding: 10px;
                                box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
                                display: none;
                                z-index: 100000;
                                form{
                                    gap: 10px;
                                    button {
                                        padding: 2px 5px ;
                                        outline: none;
                                        border: none;
                                        border-radius: 5px;
                                        color: #fff;
                                        background: linear-gradient(
                                            90deg,
                                            rgb(135, 197, 255) 0%,
                                            rgb(97, 179, 255) 33%,
                                            rgb(75, 169, 255) 52%,
                                            rgb(54, 159, 255) 100%
                                        );
                                        cursor: pointer;
                                    }
                                }
                                ul {
                                    li {
                                        width: 100%;
                                        list-style: none;
                                        margin-bottom: 10px;
                                        span {
                                            margin-left: 10px;
                                            button {
                                                padding: 5px;
                                                outline: none;
                                                border: none;
                                                border-radius: 5px;
                                                color: #fff;
                                                background: linear-gradient(
                                                    90deg,
                                                    rgb(135, 197, 255) 0%,
                                                    rgb(97, 179, 255) 33%,
                                                    rgb(75, 169, 255) 52%,
                                                    rgb(54, 159, 255) 100%
                                                );
                                                cursor: pointer;
                                            }
                                        }
                                    }
                                }
                            }
                            .link-tag {
                                position: absolute;
                                font-size: 9px;
                                position: absolute;
                                right: 5px;
                                top: 5px;
                                display: flex;
                                justify-content: center;
                                align-items: center;
                                padding: 0 5px;
                                border-radius: 10px;
                                display: none;
                            }
                            .link-tag.link {
                                display: block;
                                color: rgb(49, 137, 68);
                                background-color: rgb(235, 249, 235);
                                border: 1px solid rgb(185, 224, 188);
                            }
                            .link-tag.notlink {
                                display: block;
                                color: rgb(179, 51, 24);
                                background-color: rgb(255, 240, 238);
                                border: 1px solid rgb(250, 202, 193);
                            }
                        }
    
                        .data:hover {
                            .access-list {
                                display: block;
                            }
                        }
    
                        .data:first-child {
                            .hover-card {
                                width: 430px;
                                height: 200px;
                                position: absolute;
                                left: 0;
                                top: 0;
                                transition: all 0.3s ease-in-out;
                                display: none;
                                z-index: 1000;
                                img {
                                    width: 100%;
                                    height: 100%;
                                }
                            }
    
                            .img-collage-hover {
                                box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
                                height: 250px;
                                position: absolute;
                                top: 10px;
                                left: 10px;
                                width: 400px;
                                grid-template-columns: 1fr 1fr 1fr;
                                grid-template-rows: 1fr 1fr;
                                gap: 5px;
                                z-index: 1000;
                                background-color: #fff;
                                display: none;
    
                                .img-box {
                                    img {
                                        width: 100%;
                                        height: 100%;
                                    }
                                }
                            }
                        }
                    }
    
                    .data:first-child:hover {
                        .hover-card {
                            display: block;
                        }
                        .img-collage-hover {
                            display: grid;
                        }
                    }
    
                    .data:last-child{
                        display: flex;
                        gap: 5px;
                    }
    
                    .data:nth-child(5),.data:nth-child(6) {
                        p {
                            width: 90px;
                            height: 25px;
                            color: rgb(49, 137, 68);
                            background-color: rgb(235, 249, 235);
                            display: flex;
                            justify-content: center;
                            align-items: center;
                            border-radius: 20px;
                            border: 1px solid rgb(185, 224, 188);
                            font-size: 12px;
                        }
                    }
    
                    .data:nth-child(5).block {
                        p {
                            color: rgb(179, 51, 24);
                            background-color: rgb(255, 240, 238);
                            border: 1px solid rgb(250, 202, 193);
                        }
                    }
    
                    .data:nth-child(5).expire {
                        p {
                            color: rgb(152, 110, 8);
                            background-color: rgb(255, 250, 225);
                            border: 1px solid rgb(248, 218, 129);
                        }
                    }
    
                    .data:nth-child(5).unused,.data:nth-child(6).unused {
                        p {
                            color: rgb(122, 126, 129);
                            background-color: rgb(241, 243, 245);
                            border: 1px solid rgb(215, 220, 224);
                        }
                    }
    
                    .customer_data_card.hide {
                        display: none;
                    }
                    .customer_data_card:hover {
                        background-color: #f3f2f2;
                    }
                }
                .table-wrapper:first-child {
                    margin-right: 20px;
                }
            }

            .main-table-wrapper.active {
                left: -1220px;
            }
        }
    }

    .customer_info_panal.active {
        right: 0;
    }
}

.add-formdata.active{
    display: flex;
}


.coupon-wrapper {
    width: 100%;
    height: 520px;
    display: grid;
    gap: 10px;
    overflow-y: scroll;

    .coupon {
        width: 100%;
        overflow: hidden;
        position: relative;
        transition: all 0.3s ease-in-out;
        img {
            width: 100%;
            height: auto;
        }
        button {
            background-color: gray;
            color: #fff;
            width: 70px;
            font-size: 12px;
            font-weight: bold;
            padding: 5px;
            border-radius: 20px;
            display: block;
            position: absolute;
            border: none;
            bottom: -50px;
            right: 10px;
            cursor: pointer;
            opacity: 0.9;
            transition: all 0.3s ease-in-out;
        }
    }

    .coupon:hover button {
        bottom: 10px;
    }

    .coupon.redeem {
        img {
            filter: grayscale(100%);
        }
    }
}

.coupon-wrapper.grid-large {
    grid-template-columns: 1fr 1fr;
    .coupon {
        height: 260px;
    }
}
.coupon-wrapper.grid-medium {
    grid-template-columns: 1fr 1fr 1fr;
    .coupon {
        height: 180px;
    }
}
.coupon-wrapper.grid-small {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    .coupon {
        height: 124px;
    }
}
