.estatik-upgrade-v4 {
    display: block;
    color: #f5a623 !important;
    font-weight: 600 !important;
}

#adminmenu .opensub .wp-submenu li.current a:has(.estatik-upgrade-v4):hover,
#adminmenu .wp-submenu li.current a:has(.estatik-upgrade-v4),
#adminmenu .wp-submenu li.current a:has(.estatik-upgrade-v4):focus,
#adminmenu .wp-submenu li.current a:has(.estatik-upgrade-v4):hover,
#adminmenu a.wp-has-current-submenu:focus + .wp-submenu li.current a .estatik-upgrade-v4 {
    background: linear-gradient(90deg, rgba(245, 166, 35, 0.1) 0%, transparent 70%);
    color: #f5a623;
}

#adminmenu .wp-submenu a:has(.estatik-upgrade-v4):focus,
#adminmenu .wp-submenu a:has(.estatik-upgrade-v4):hover,
#adminmenu a:has(.estatik-upgrade-v4):hover,
#adminmenu li.menu-top > a:has(.estatik-upgrade-v4):focus {
    color: #f5a623;
}

.es-upgrade {
    padding: 32px 0 48px;
    max-width: 1200px;
    margin: auto;
    font-family: 'Heebo', sans-serif;

    &__top {
        margin-bottom: 32px;
        padding: 32px;
        background: #fff;
        border: 1px solid #dcdcde;
        border-radius: 12px;
        text-align: center;
    }

    .es-logo-wrap {
        span{
            display: none;
        }
        .es-logo {
            height: 24px;
        }
    }

    &__text {
        padding-top: 10px;
        color: #546E7A;
        font-size: 14px;
        max-width: 500px;
        margin: auto;
    }


    h1 {
        font-weight: 500;
        letter-spacing: 0%;
        text-align: center;
        vertical-align: middle;
        font-size: 26px;
        padding: 17px 0 4px;
    }

    &__stats {
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 32px auto 40px;
        overflow: hidden;
        max-width: 1060px;
        background: #f3f8f1;
        border: 1px solid #cfe2c8;
        border-radius: 10px;
    }

    &__stat {
        position: relative;
        display: flex;
        align-items: center;
        gap: 14px;
        padding: 22px 40px;
        font-size: 18px;
        color: #2c3338;

        strong {
            font-weight: 700;
        }

        &:not(:last-child) {
            &:after {
                content: "";
                position: absolute;
                top: 50%;
                right: 0;
                width: 1px;
                height: 36px;
                background: #d6e5d0;
                transform: translateY(-50%);
            }
        }
    }

    &__stat-icon {
        flex-shrink: 0;
        width: 22px;
        height: 22px;

        &:before {
            content: "✓";
            display: block;
            font-size: 22px;
            font-weight: 700;
            line-height: 1;
            color: #67b357;
        }
    }

    @media screen and (max-width: 767px) {
        &__stats {
            flex-direction: column;
        }

        &__stat {
            width: 100%;
            justify-content: center;
            padding: 18px 20px;
            text-align: center;

            &:not(:last-child) {
                &:after {
                    top: auto;
                    right: auto;
                    bottom: 0;
                    left: 50%;
                    width: calc(100% - 40px);
                    height: 1px;
                    transform: translateX(-50%);
                }
            }
        }
    }

    &__promo {
        display: inline-flex;
        align-items: stretch;
        overflow: hidden;
        border: 1px solid #dcdcde;
        border-radius: 10px;
        background: #fff;
        margin-top: 26px;
    }

    &__promo-badge {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 12px 18px;
        background: #fff7e8;
        border-right: 1px solid #dcdcde;
    }

    &__promo-percent {
        font-size: 18px;
        font-weight: 700;
        line-height: 1;
        color: #ff9f0a;
    }

    &__promo-label {
        margin-top: 4px;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        color: #7a7a7a;
    }

    &__promo-code {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 180px;
        padding: 0 24px;
        font-size: 16px;
        font-weight: 700;
        letter-spacing: 0.2em;
        color: #1d2327;
    }

    &__promo-copy {
        width: 52px;
        border: 0;
        border-left: 1px solid #dcdcde;
        background: #fff;
        cursor: pointer;
        transition: background 0.2s ease;

        &:hover {
            background: #f6f7f7;
        }
    }

    &__actions {
        margin-top: 24px;
        .es-btn {
            padding: 12px 36px;
        }
    }

    &__table-wrap {
        overflow: hidden;
        background: #fff;
        border: 1px solid #dcdcde;
        border-radius: 16px;
    }
}

.es-upgrade-table {
    &__head {
        display: flex;
        justify-content: space-between;
        gap: 32px;
        padding: 40px 20px;
        border-bottom: 1px solid #CDE3F0;
        background: #E8F4FC;
    }

    &__title {
        max-width: 280px;
        align-self: center;
        padding-left: 20px;

        h2 {
            margin: 0;
            font-size: 18px;
            line-height: 1.2;
        }
    }

    &__plans {
        display: flex;
        gap: 24px;
    }

    &__plan {
        position: relative;
        width: 180px;
        padding: 24px 20px;
        text-align: center;
        border-radius: 12px;

        &--pro {
            border-color: #2271b1;
            // box-shadow: 0 10px 24px rgba(34, 113, 177, 0.08);
        }

        .es-btn {
            background-color: #03A9F4;
            color: #fff;
        }
    }

    &__plan-badge {
        position: absolute;
        top: -10px;
        left: 50%;
        transform: translateX(-50%);
        padding: 4px 10px;
        font-size: 10px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        color: #fff;
        background: #46b450;
        border-radius: 30px;
    }

    &__plan-icon {
        display: flex;
        align-items: center;
        justify-content: center;
    
        width: 54px;
        height: 54px;
        margin: 0 auto 16px;
        border-radius: 50%;
        background: #f0f6fc;
    }

    &__plan-name {
        margin-bottom: 14px;
        font-size: 20px;
        font-weight: 700;
        color: #1d2327;
    }

    &__plan-label {
        font-size: 13px;
        color: #90A4AE;
    }

    &__body {
        display: block;
    }

    &__section {
        padding: 4px 28px;
        font-size: 9.5px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        color: #5B8EAA;
        background: #CCE5F5;
        border-top: 1px solid #CCE5F5;
        border-bottom: 1px solid #CCE5F5;
    }

    &__row {
        display: grid;
        grid-template-columns: 1fr 250px 250px;
        align-items: center;
        min-height: 64px;
        border-bottom: 1px solid #D4E9F5;
        background: #E8F4FC;

        &:last-child {
            border-bottom: 0;
        }
    }

    &__feature {
        padding: 16px 32px;
        font-size: 12px;
        color: #37474F;
    }

    &__value {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 16px;
        border-left: 1px solid #f0f0f1;
    }

    &__check,
    &__minus {
        position: relative;
        width: 18px;
        height: 18px;
    }

    &__check {
        &:before {
            content: "";
            position: absolute;
            top: 1px;
            left: 5px;
            width: 6px;
            height: 11px;
            border-right: 2px solid #46b450;
            border-bottom: 2px solid #46b450;
            transform: rotate(45deg);
        }
    }

    &__minus {
        &:before {
            content: "";
            position: absolute;
            top: 8px;
            left: 2px;
            width: 14px;
            height: 2px;
            background: #b8bcc2;
        }
    }

    &__muted {
        font-size: 13px;
        color: #8c8f94;
    }

    &__footer {
        display: grid;
        grid-template-columns: 1fr 250px 250px;
        border-top: 1px solid #CCE5F5;
        background: #F0F8FD;

        .es-btn {
            padding: 8px 40px;
            color: #fff;
            background: #03A9F4;
            text-transform: uppercase;
        }
    }

    &__price {
        padding: 32px 16px;
        text-align: center;

        &--current {
            grid-column: 2;
        }

        &--pro {
            grid-column: 3;
        }
    }

    &__price-title {
        display: block;
        margin-bottom: 8px;
        font-size: 22px;
        font-weight: 700;
        line-height: 1;
        color: #1d2327;
    }

    &__price-label {
        display: block;
        margin-bottom: 20px;
        font-size: 10px;
        color: #90A4AE;
    }

    &__note {
        display: flex;
        align-items: center;
        gap: 16px;
        padding: 12px 28px;
        border-top: 1px solid #CCE5F5;
        background: #f0f8fd;
    }

    &__note-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 13px;
        height: 13px;
        border: 2px solid #90A4AE;
        border-radius: 50%;
        color: #90A4AE;
        font-size: 11px;
        font-weight: 700;
        flex-shrink: 0;
    }

    &__note-content {
        color: #78909C;
        font-size: 11px;
        line-height: 1.5;

        strong {
            color: #90A4AE;
        }
    }

    &__note-link {
        color: #03A9F4;
        font-weight: 600;
        text-decoration: none;

        &:hover {
            text-decoration: underline;
        }
    }
}

.es-upgrade-help {
    margin-top: 32px;
    padding: 40px;
    background: #fff;
    border: 1px solid #dcdcde;
    border-radius: 16px;

    &__title {
        margin: 0 0 22px;
        font-size: 22px;
        text-align: center;
    }

    &__grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 24px;

        @media (max-width: 1200px) {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        @media (max-width: 640px) {
            grid-template-columns: 1fr;
        }
    }

    &__item {
        display: block;
        padding: 14px;
        height: 100%;
        border-radius: 12px;
    }

    &__icon {
        width: 52px;
        height: 52px;
        margin: 0 0 20px;
        border-radius: 50%;
        background: #E8F5E9;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    &__name {
        margin-bottom: 8px;
        font-size: 14px;
        font-weight: 600;
        color: #263238;
    }

    &__text {
        font-size: 12px;
        line-height: 1.5;
        color: #78909C;
    }
}

@media screen and (max-width: 991px) {
    .es-upgrade-table {
        &__head {
            flex-direction: column;
        }

        &__title {
            margin-bottom: 20px;


            h2 {
                font-size: 22px;
                line-height: 1.3;
                text-align: center;
            }
        }

        &__plans {
            width: 100%;
        }

        &__plan {
            flex: 1;
        }

        &__row,
        &__footer {
            grid-template-columns: 1fr 120px 200px;
        }
    }
}

@media screen and (max-width: 767px) {
    .es-upgrade {
        padding: 20px 12px 32px;

        &__top {
            padding: 24px 18px;
        }

        h1 {
            font-size: 22px;
            line-height: 1.3;
        }

        &__text {
            font-size: 13px;
            line-height: 1.6;
        }

        &__promo {
            width: 100%;
            flex-direction: column;
            margin-top: 22px;
        }

        &__promo-badge {
            padding: 14px;
            border-right: 0;
            border-bottom: 1px solid #dcdcde;
            text-align: center;
        }

        &__promo-code {
            min-width: 0;
            padding: 18px;
            font-size: 18px;
        }

        &__promo-copy {
            width: 100%;
            height: 52px;
            border-left: 0;
            border-top: 1px solid #dcdcde;
        }

        &__actions {
            margin-top: 20px;
        }
    }

    .es-upgrade-table {

        &__head {
            padding: 20px 16px;
        }

        &__title {
            margin-bottom: 20px;


            h2 {
                font-size: 22px;
                line-height: 1.3;
                text-align: center;
            }
        }

        &__plans {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 12px;
        }

        &__plan {
            min-width: 0;
            padding: 16px 12px;
            border-radius: 12px;
        }

        &__plan-name {
            font-size: 16px;
        }

        &__plan-label {
            font-size: 11px;
        }

        &__plan-badge {
            font-size: 10px;
        }

        &__body {
            overflow: hidden;
        }

        &__section {
            padding: 14px 16px;
            font-size: 13px;
        }

        &__row {
            display: grid;
            grid-template-columns: 1fr 70px 70px;
            align-items: stretch;
        }

        &__feature {
            padding: 14px 16px;
            font-size: 13px;
            line-height: 1.5;
            border-bottom: 1px solid #f0f0f1;
        }

        &__value {
            justify-content: center;
            padding: 14px 10px;
            border-left: 1px solid #f0f0f1;
            border-bottom: 1px solid #f0f0f1;
            text-align: center;
            font-size: 12px;
        }

        &__footer {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        &__price {
            padding: 20px 14px;
            min-width: 0;

            &-title {
                font-size: 24px;
            }

            &-label {
                font-size: 12px;
            }

            .es-btn {

                padding-left: 12px;
                padding-right: 12px;
            }
        }

        &__note {
            align-items: flex-start;
            padding: 18px 16px;
        }

        &__note-content {
            font-size: 13px;
            line-height: 1.6;
        }
    }

    .es-upgrade-help {
        padding: 28px 16px;
        border-radius: 12px;

        &__title {
            margin-bottom: 18px;
            font-size: 18px;
        }

        &__item {
            padding: 16px;
        }

        &__icon {
            width: 44px;
            height: 44px;
            margin-top: 8px;
        }

        &__content {
            flex: 1;
            min-width: 0;
        }

        &__name {
            margin-bottom: 4px;
            font-size: 16px;
        }

        &__text {
            font-size: 13px;
            line-height: 1.5;
        }
    }
    
}
