.rank-modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

/* 
.rank-modal-content {
    background: white;
    padding: 20px;
    margin: 15% auto;
    width: 50%;
    text-align: center;
    position: relative;
    border-radius: 10px;
} */

.rank-close-btn {
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 30px;
    cursor: pointer;
}

button#load-more-ranks,
button#load-more-achievements,
button#load-more-active-camp {
    margin-right: 10px;

}

.reward-stamp img {
    width: 20px;
    height: 20px;
}

.daily-rewards-section .gamipress-calendar-reward.user-has-earned .reward-stamp {
    top: -26px;
    padding: 0em;
}

.gamipress-calendar-reward-label {
    font-size: 12px;
}

.gamipress-calendar-reward-day {
    font-size: 14px;
    font-weight: 600;
}

button#load-more-ranks,
button#load-more-achievements,
button#load-more-active-camp {
    background: #7a4ecc;
    color: #fff;
    border-color: #7a4ecc;
    border-radius: 16px;
}

button#load-more-ranks:hover,
button#load-more-achievements:hover,
button#load-more-active-camp:hover {
    background: #fff;
    color: #7a4ecc;
}

.achievement-modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.achievement-modal-content,
.rank-modal-content {
    background: white;
    padding: 20px;
    margin: 15% auto;
    width: 40%;
    text-align: center;
    position: relative;
    border-radius: 10px;
}

@media(max-width:1024px) {

    .achievement-modal-content,
    .rank-modal-content {
        width: 60%;
    }
}

@media(max-width:656px) {

    .achievement-modal-content,
    .rank-modal-content {
        width: 90%;
    }
}

.achievement-close-btn {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 30px;
    cursor: pointer;
}

/* rank table */
table#ranks-tbl,
table#achievements-tbl,
table#active-campagin-tbl,
table#user-submissions-list-tbl {
    border: none !important;
    font-size: 14px;
}

table#ranks-tbl td,
table#ranks-tbl th,
table#achievements-tbl td,
table#achievements-tbl th,
table#active-campagin-tbl td,
table#active-campagin-tbl th,
table#user-submissions-list-tbl td,
table#user-submissions-list-tbl th {
    padding: 10px !important;
    vertical-align: middle;
}

table#achievements-tbl thead tr,
table#ranks-tbl thead tr,
table#active-campagin-tbl thead tr,
table#user-submissions-list-tbl thead tr {
    background-color: #e1e1e1 !important;
    border-radius: 25px !important;
}

table#ranks-tbl thead td,
table#achievements-tbl thead td,
table#active-campagin-tbl thead td,
table#user-submissions-list-tbl thead td {
    font-weight: 600;
    font-size: 16px;
    padding: 10px !important;

}

table#ranks-tbl tr,
table#ranks-tbl td,
table#achievements-tbl tr,
table#achievements-tbl td,
table#active-campagin-tbl tr,
table#active-campagin-tbl td,
table#user-submissions-list-tbl tr,
table#user-submissions-list-tbl td {
    border-bottom: none !important;
}

table#ranks-tbl tr:nth-child(odd),
table#achievements-tbl tr:nth-child(odd),
table#active-campagin-tbl tr:nth-child(odd),
table#user-submissions-list-tbl tr:nth-child(odd) {
    background-color: #fff;
}

table#ranks-tbl tr:nth-child(even),
table#achievements-tbl tr:nth-child(even),
table#active-campagin-tbl tr:nth-child(even),
table#user-submissions-list-tbl tr:nth-child(even) {
    background-color: #ebebeb;
}

table#ranks-tbl img,
table#achievements-tbl img,
table#active-campagin-tbl img {
    border-radius: 50%;
}

table#active-campagin-tbl img {
    height: 35px;
}

/* daily-watchers css */
.achievement-modal-content,
.rank-modal-content {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: inherit;

}

.achievement-modal-content,
.rank-modal-content {
    background: rgb(250, 208, 124);
    background: linear-gradient(153deg, rgba(250, 208, 124, 0.9976365546218487) 0%, rgba(250, 239, 239, 1) 40%);
    padding: 0;
    border-radius: 30px;
}

.achievement-modal-content h2,
.rank-modal-content h3 {
    background: #ffbf61;
    padding: 10px;
    border-radius: 30px 30px 0px 0px;
    box-shadow: 0px 10px 20px #ffffff;
    padding-right: 30px;
}

ul.gamipress-achievement-steps.gamipress-required-achievements li,
ul.gamipress-rank-requirements.gamipress-required-requirements li {
    list-style: decimal;
}

.earn-points {
    justify-content: space-between;
    width: 100%;
}

.mb-0 {
    margin-bottom: 0;
}

.achievement-details,
.rank-modal-details {
    padding: 0 30px 30px 30px;
}

ul.gamipress-rank-requirements.gamipress-required-requirements {
    margin: 0;
}

.gamipress-achievement-points.gamipress-achievement-points-type-karma,
.gamipress-achievement-points.gamipress-achievement-points-type-xtokens {
    display: flex;
    align-items: center;
    gap: 10px;
}

ul.gamipress-achievement-steps.gamipress-required-achievements,
ul.gamipress-rank-requirements.gamipress-required-requirements,
ol.gamipress-achievement-steps.gamipress-required-achievements {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#rank-status {
    margin-top: 20px;
    margin-bottom: 0;
}

#rank-status div {
    display: flex;
    align-items: center;
    justify-content: center;
}

#rank-status span {
    color: #0c6900;
    margin-left: 2px;
}

.earned-rank p {
    text-decoration: line-through;
}

img#rank-modal-img {
    margin-bottom: 10px;
}

p#rank-modal-description {
    margin-bottom: 0;
}

.gamipress-achievement-steps-heading {
    margin-bottom: 0;

}

.gamipress-rank-requirements-heading {
    margin-bottom: 10px;
}

.flex-wrap {
    flex-wrap: wrap;
}

.px-2 {
    padding: 0 16px;
}

li.user-has-not-earned a {
    color: #000;
}

.gamipress-achievement-attached,
.gamipress-rank-requirements {
    border-bottom: none;
}

a.achievement-open-modal,
a.open-rank-modal {
    white-space: nowrap;
}


#load-more-ranks:disabled,
#load-more-achievements:disabled,
#load-more-active-camp:disabled {
    pointer-events: none;
    background: #ccc;
    border: 1px solid #a1a1a1;
}

.youtube-auth-button {
    margin-bottom: 10px;
}

@media(max-width:767px) {

    .rank-modal-content h3,
    .achievement-modal-content h2 {
        font-size: 16px;
    }
}

@media(max-width:370px) {

    .earn-points {
        justify-content: center;
    }
}

body:not(.page-id-7767):not(.page-id-8199):not(.page-id-8304) .e-con-inner {
    padding: 20px !important;
}

.e-con-inner h5 {
    margin-bottom: 20px !important;
}

.daily-rewards-section .gamipress-calendar-reward-label {
    display: none;
}

.gamipress-calendar-reward {
    position: relative;

}

.daily-rewards-section .gamipress-rewards-calendar-rewards.gamipress-rewards-calendar-col-1 {
    justify-content: space-between !important;
    flex-wrap: wrap;
}

@media(max-width:1024px) {
    .daily-rewards-section .gamipress-rewards-calendar-rewards.gamipress-rewards-calendar-col-1 {
        justify-content: start !important;
    }
}

.gamipress-calendar-reward:before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: #ece2fd;
    border-radius: 50%;
    top: 0;
    left: 50%;
    transform: translate(-50%, -5px);
}

/* header-changes */
.camp-header-main .bg-img {
    width: 100%;
    height: auto;
    display: block;
    position: relative;
}



.camp-date-highlight {
    color: #ff2a2a;
}

.camp-header-main .overly-bg {
    background: #00000066;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.camp-header-main .title {
    position: absolute;
    top: 50%;
    left: 10%;
    transform: translate(-5%, -50%);
    color: #fff;
}

.camp-header-main h2.section-title {
    color: #fff;
}

.campaign-header-container .e-con-inner {
    padding: 0 !important;
    max-width: 100%;
    width: 100%;
    margin: 0;
}

.camp-elementor-header {
    display: none;
}

div#gamipress-rewards-calendar-3058 .gamipress-rewards-calendar-rewards {
    justify-content: flex-start;
    flex-wrap: wrap;
}

.gamipress-calendar-reward.user-has-earned .reward-stamp {
    top: -40px;
    padding: 0em;
}

#rank-modal-details p,
.achievement-details p {
    font-size: 14px;
}

#rank-modal-description,
#achievement-modal-description {
    padding-top: 15px;
}

#rank-modal-requirements {
    margin-bottom: 0;
}

#achievement-modal-requirements ol,
#achievement-earn-points,
#achievement-modal-requirements ul {
    font-size: 14px;
}

#social-auth-modal.modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9999;
}

#social-auth-modal .social-modal-content {
    background-color: white;
    margin: 15% auto;
    padding: 20px;
    width: 70%;
    max-width: 500px;
    border-radius: 5px;
    text-align: center;
    position: relative;
    /* Added for close button positioning */
}

#social-auth-modal .close-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 24px;
    font-weight: bold;
    color: #666;
    cursor: pointer;
    line-height: 1;
}

#social-auth-modal .close-btn:hover {
    color: #7a4ecc;
}

#social-auth-modal .social-modal-content h2 {
    margin-top: 20px;
    /* Added some space below close button */
}

#social-auth-modal .social-modal-content button {
    background-color: #7a4ecc;
    color: #fff;
    padding: 10px 20px;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    margin-top: 15px;
    border: 1px solid #7a4ecc;
}

#social-auth-modal .social-modal-content button:hover {
    background-color: #fff !important;
    color: #7a4ecc !important;
}

.header-aside {
    gap: 5px;
}

/* .btn-auth {
    background: #7a4ecc !important;
    border-color: #7a4ecc !important;
    border-radius: 16px !important;
    margin: 5px 0;
}

.btn-auth:hover {
    background: #fff !important;
    color: #7a4ecc !important;
} */

#buddypress .profile.edit>#profile-edit-form.social-profile .editfield,
#buddypress #profile-edit-form.social-profile div.submit {
    display: none !important;
}

.gamipress-points.gamipress-user-points-xtokens {
    margin: 0 !important;
}

.gamipress-points.gamipress-user-points-karma {
    margin: 0 !important;
}

.buddypanel-menu>li>.bb-menu-item>img {
    width: 22px;
}

.dash-gamipress .gamipress-user-points.gamipress-is-current-user.gamipress-columns-1.gamipress-columns-small-1.gamipress-layout-left.gamipress-align-none,
.wallet-gamipress .gamipress-user-points.gamipress-is-current-user.gamipress-columns-1.gamipress-columns-small-1.gamipress-layout-left.gamipress-align-none {
    gap: 20px;
}

.ld-spinner::after {
    content: '';
    display: none;
    width: 16px;
    height: 16px;
    border: 3px solid #ccc;
    border-top-color: #7a4ecc;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

.ld-spinner.loading::after {
    display: inline-block;
}
span.ld-spinner.loading {
    display: flex;
    align-items: center;
}
.ranks-loader, .achievements-loader {
    display: flex;
}

.ld-spinner::after {
    content: '';
    display: none;
    width: 16px;
    height: 16px;
    border: 3px solid #ccc;
    border-top-color: #7a4ecc;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

.ld-spinner.loading::after {
    display: inline-block;
}
span.ld-spinner.loading {
    display: flex;
    align-items: center;
}
.ranks-loader, .achievements-loader {
    display: flex;
}

.bb-template-v2 .header-aside .user-wrap.user-wrap-container {
    margin-left: 0px !important;
}

div#header-aside {
    margin-right: 30px;
}

.gamipress-frontend-reports-graph-period-wrapper{
    margin-bottom: 20px;
}

.campaign-social-icons{
    display:flex;
    gap:5px;
}
.campaign-icon i{
    font-size: 18px;
    margin-right: 10px;
}
.campaign-age-badge img {
    transition: transform 0.2s ease;
}
.campaign-age-badge img:hover {
    transform: scale(1.1);
}
.gamipress-daily-login-popup .gamipress-calendar-reward.user-has-earned .reward-stamp img {
    margin-top: 30px;
}

.wpProQuiz_button, #quiz_continue_link {
  background: #7a4ecc !important;
  color: #fff !important;
  border: 1px solid #7a4ecc !important;
  border-radius: 16px !important;
  font-size: 16px !important;
  padding: 10px 15px !important;
}
.wpProQuiz_button:hover, #quiz_continue_link:hover {
    background: #fff !important;
    border-color: #7a4ecc !important;
    color: #7a4ecc !important;
}
body .learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .bb-button-wrap .learndash_join_button .btn-advance {
    border-bottom: 1px solid !important;
}
.bb-about-instructor, .lms-course-members-list {
    display: none;
}
.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .learndash_mark_complete_button {
    background: #7a4ecc !important;
    color: #fff !important;
    border: 1px solid #7a4ecc !important;
    border-radius: 16px !important;
    padding: 10px 15px !important;
}
.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .learndash_mark_complete_button:hover {
    background: #fff !important;
    border-color: #7a4ecc !important;
    color: #7a4ecc !important;
}

.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .sfwd-mark-complete:hover::after {
    color: #7a4ecc !important;
}

#page .footer-bottom {
    padding:10px 30px;
   
}

#page .footer-bottom .container {
    width: 100%;
    margin: 0;
}

.bb-course-type.bb-course-type-free {
    display: none!important;
}
.bb-course-banner-inner .bb-course-category {
    display: none!important;
}

@media (min-width: 1024px) {
    .learndash-wrapper .bb-lms-header .lms-header-instructor, .learndash-wrapper .bb-lms-header .lms-header-title {
        width: 100%;
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
    .learndash-wrapper .learndash_content_wrap {
        width: 100%;
        max-width: 1180px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media(max-width:1200px) {

    .dashboard-profile,
    .elementor-499 .elementor-element.elementor-element-16d5dd2d {
        width: 50% !important;
    }

    .dashboard-profile .bb-dash .flex {
        display: block;
        text-align: center;
    }
}



@media(max-width:767px) {
    .campagin-detail-section .elementor-container {
        flex-direction: column-reverse;
    }

    .bb-template-v2 .side-panel-menu li {
        margin-bottom: 0 !important;
    }

    /* .bb-mobile-panel-inner .side-panel-menu .sub-menu a,
    .bb-mobile-panel-inner .side-panel-menu a {
        font-size: 16px;
    } */

    .elementor-shortcode {
        overflow-x: auto;
    }

    .e-con-inner {
        padding: 0 !important;
    }

    .bb-mobile-header .header-aside>:last-child {
        padding: 0 !important;
    }

    .dashboard-profile,
    .elementor-499 .elementor-element.elementor-element-16d5dd2d {
        width: 100% !important;
    }

    .dashboard-border {
        margin-bottom: 10px;
    }

    .dashboard-border div {
        margin: 0 !important;
    }

    .dashboard-reward {
        padding-top: 100px;
    }
#content.site-content,
.site-content {

  padding:15px 0;
}
}

@media(max-width:400px) {
    #startButton img {
        width: 14px;
    }

    .site-header .header-aside .notification-dropdown i,
    .site-header .header-search-wrap i,
    .site-header .notification-dropdown i,
    .site-header i {
        font-size: 24px;
    }
}

@media(max-width:320px) {
    .daily-rewards-section .gamipress-rewards-calendar-rewards.gamipress-rewards-calendar-col-1 {
        justify-content: space-between !important;

    }
}