/* NavTX colorful member center refinement */

body .navtx-member-page.is-colorful {
    --member-blue: #2b6be8;
    --member-green: #14a77a;
    --member-ink: #172033;
    --member-muted: #667085;
    --member-line: #e7edf5;
    --member-shadow: 0 18px 44px rgba(31, 75, 128, .08);
    background: radial-gradient(circle at 8% 4%, rgba(43, 107, 232, .10), transparent 26%), radial-gradient(circle at 92% 8%, rgba(20, 167, 122, .10), transparent 24%), #f5f8fc;
}

body .navtx-member-page.is-colorful .navtx-member-hero {
    width: calc(100% - 32px);
    max-width: 1540px;
    height: 286px;
    min-height: 286px;
    margin-inline: auto;
    padding: 0;
    border-radius: 8px 8px 0 0;
    background-color: #2e78df;
    box-shadow: 0 18px 48px rgba(43, 107, 232, .14);
}

body .navtx-member-page.is-colorful .navtx-member-hero:before {
    background: linear-gradient(135deg, rgba(35, 99, 214, .92), rgba(21, 155, 164, .70)), radial-gradient(circle at 78% 4%, rgba(255, 255, 255, .30), transparent 22%);
    backdrop-filter: none;
}

body .navtx-member-page.is-colorful .navtx-member-hero-user {
    left: 0;
    right: 0;
    bottom: -74px;
    min-height: 136px;
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    align-items: center;
    gap: 20px;
    padding: 20px 28px;
    border: 1px solid rgba(226, 232, 240, .95);
    border-top: 0;
    border-radius: 0 0 8px 8px;
    background: rgba(255, 255, 255, .96);
    color: var(--member-ink);
    box-shadow: var(--member-shadow);
    backdrop-filter: blur(14px);
}

body .navtx-member-page.is-colorful .navtx-member-hero-user > img {
    width: 104px;
    height: 104px;
    margin: 0;
    transform: none;
    border-radius: 8px;
    box-shadow: 0 0 0 4px #fff, 0 14px 28px rgba(15, 23, 42, .13);
}

body .navtx-member-page.is-colorful .navtx-member-hero-user strong {
    flex-wrap: wrap;
    color: var(--member-ink);
    font-size: 22px;
    font-weight: 600;
    line-height: 1.25;
}

body .navtx-member-page.is-colorful .navtx-member-hero-user em {
    max-width: none;
    gap: 8px;
    margin-top: 12px;
}

body .navtx-member-page.is-colorful .navtx-member-quote {
    display: none;
}

body .navtx-member-page.is-colorful .navtx-member-layout {
    width: calc(100% - 32px);
    max-width: 1540px;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 18px;
    margin-top: 106px;
}

body .navtx-member-page.is-colorful .navtx-member-side {
    position: sticky;
    top: 86px;
    align-self: start;
    gap: 14px;
}

body .navtx-member-page.is-colorful .navtx-member-main {
    min-width: 0;
}

body .navtx-member-page.is-colorful .navtx-member-vip-strip,
body .navtx-member-page.is-colorful .navtx-member-status-card,
body .navtx-member-page.is-colorful .navtx-member-mini-stats a,
body .navtx-member-page.is-colorful .navtx-member-service-card,
body .navtx-member-page.is-colorful .navtx-member-ai-card,
body .navtx-member-page.is-colorful .navtx-member-checkin-card,
body .navtx-member-page.is-colorful .navtx-member-record-card,
body .navtx-member-page.is-colorful .navtx-member-vip-plans article {
    border: 1px solid var(--member-line);
    border-radius: 8px;
    box-shadow: var(--member-shadow);
}

body .navtx-member-page.is-colorful .navtx-member-vip-strip {
    height: 46px;
    justify-content: space-between;
    padding: 0 16px;
    background: linear-gradient(105deg, #18243c, #1f5fbf 56%, #14a77a);
    color: #fff;
}

body .navtx-member-page.is-colorful .navtx-member-status-card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 16px;
}

body .navtx-member-page.is-colorful .navtx-member-status-card button {
    height: 46px;
    display: flex;
    justify-content: flex-start;
    padding: 0 10px;
    background: #f7f9fc;
}

body .navtx-member-page.is-colorful .navtx-member-status-card button.is-active {
    border-color: rgba(43, 107, 232, .42);
    background: #edf5ff;
    color: var(--member-blue);
}

body .navtx-member-page.is-colorful .navtx-member-service-card a {
    min-height: 62px;
    align-content: center;
    border-radius: 8px;
}

body .navtx-member-page.is-colorful .navtx-member-service-card a:hover {
    background: #f4f8ff;
    color: var(--member-blue);
}

body .navtx-member-page.is-colorful .navtx-member-color-dashboard {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
}

body .navtx-member-page.is-colorful .navtx-member-ai-card,
body .navtx-member-page.is-colorful .navtx-member-checkin-card {
    min-height: 152px;
    padding: 22px;
}

body .navtx-member-page.is-colorful .navtx-member-ai-card b,
body .navtx-member-page.is-colorful .navtx-member-checkin-card b {
    color: var(--member-blue);
    font-size: 32px;
    font-weight: 600;
}

body .navtx-member-page.is-colorful .navtx-member-checkin-card b {
    color: var(--member-green);
}

body .navtx-member-page.is-colorful .navtx-member-ai-card button,
body .navtx-member-page.is-colorful .navtx-member-checkin-card a:last-child {
    height: 34px;
    min-width: 104px;
    border-radius: 999px;
    background: var(--member-blue);
}

body .navtx-member-page.is-colorful .navtx-member-checkin-card a:last-child {
    background: #e8f8f1;
    color: var(--member-green);
}

body .navtx-member-page.is-colorful .navtx-member-vip-plans {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 14px;
}

body .navtx-member-page.is-colorful .navtx-member-vip-plans article {
    min-height: 172px;
    padding: 20px;
    color: var(--member-ink);
    background: linear-gradient(135deg, rgba(255, 255, 255, .94), rgba(245, 250, 255, .96)), radial-gradient(circle at 92% 12%, rgba(43, 107, 232, .16), transparent 25%);
}

body .navtx-member-page.is-colorful .navtx-member-vip-plans .is-gold,
body .navtx-member-page.is-colorful .navtx-member-vip-plans .is-diamond,
body .navtx-member-page.is-colorful .navtx-member-vip-plans strong {
    color: var(--member-ink);
}

body .navtx-member-page.is-colorful .navtx-member-vip-plans span {
    color: var(--member-blue);
}

body .navtx-member-page.is-colorful .navtx-member-vip-plans p {
    color: var(--member-muted);
}

body .navtx-member-page.is-colorful .navtx-member-vip-plans button,
body .navtx-member-page.is-colorful .navtx-member-vip-plans .is-diamond button {
    height: 32px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--member-blue), #1d9ac8);
    color: #fff;
}

body .navtx-member-page.is-colorful .navtx-member-record-card {
    min-height: 286px;
    padding: 22px;
}

body .navtx-member-page.is-colorful .navtx-member-login-panel {
    min-height: 312px;
    display: grid;
    align-content: center;
    gap: 14px;
    padding: 44px 48px;
    border: 1px solid var(--member-line);
    border-radius: 8px;
    background:
        radial-gradient(circle at 92% 16%, rgba(43, 107, 232, .12), transparent 20%),
        linear-gradient(135deg, #fff, #f8fbff);
    box-shadow: var(--member-shadow);
    overflow: hidden;
}

body .navtx-member-page.is-colorful .navtx-member-login-panel h1 {
    font-size: 24px;
    font-weight: 600;
}

body .navtx-member-page.is-colorful .navtx-member-login-panel p {
    max-width: 420px;
    margin-bottom: 8px;
    line-height: 1.8;
}

body .navtx-member-page.is-colorful .navtx-member-login-panel a {
    min-width: 92px;
    height: 38px;
    border-radius: 8px;
}

@media (max-width: 1180px) {
    body .navtx-member-page.is-colorful .navtx-member-layout {
        grid-template-columns: 270px minmax(0, 1fr);
    }

    body .navtx-member-page.is-colorful .navtx-member-color-dashboard {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .navtx-ai-image-entry {
        left: 12px !important;
        bottom: 78px !important;
        width: 52px !important;
        height: 52px !important;
        border-radius: 14px !important;
    }

    .navtx-ai-image-entry img {
        width: 44px !important;
        height: 44px !important;
        max-width: 44px !important;
        max-height: 44px !important;
        border-radius: 12px !important;
    }

    body .navtx-member-page.is-colorful .navtx-member-hero {
        width: calc(100% - 24px);
        height: 214px;
        min-height: 214px;
    }

    body .navtx-member-page.is-colorful .navtx-member-hero-user {
        bottom: -124px;
        min-height: 142px;
        grid-template-columns: 74px minmax(0, 1fr);
        gap: 12px;
        padding: 14px;
    }

    body .navtx-member-page.is-colorful .navtx-member-hero-user > img {
        width: 72px;
        height: 72px;
    }

    body .navtx-member-page.is-colorful .navtx-member-hero-user strong {
        font-size: 18px;
    }

    body .navtx-member-page.is-colorful .navtx-member-hero-user em {
        max-height: 58px;
        overflow: hidden;
        gap: 5px;
    }

    body .navtx-member-page.is-colorful .navtx-member-checkin {
        right: 14px;
        bottom: -94px;
        height: 30px;
        padding: 0 10px;
        font-size: 12px;
    }

    body .navtx-member-page.is-colorful .navtx-member-layout {
        width: calc(100% - 24px);
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 150px;
    }

    body .navtx-member-page.is-colorful .navtx-member-side {
        position: static;
    }

    body .navtx-member-page.is-colorful .navtx-member-status-card,
    body .navtx-member-page.is-colorful .navtx-member-service-card {
        padding: 12px;
    }

    body .navtx-member-page.is-colorful .navtx-member-ai-card,
    body .navtx-member-page.is-colorful .navtx-member-checkin-card,
    body .navtx-member-page.is-colorful .navtx-member-record-card,
    body .navtx-member-page.is-colorful .navtx-member-vip-plans article {
        padding: 16px;
    }

    body:has(.navtx-member-page) .navtx-footer .navtx-wrap,
    body:has(.navtx-member-page) .footer-main {
        width: calc(100% - 24px);
        max-width: none;
    }

    body:has(.navtx-member-page) .footer-main {
        display: grid;
        grid-template-columns: 1fr;
        gap: 16px;
        text-align: left;
    }

    body:has(.navtx-member-page) .footer-brand,
    body:has(.navtx-member-page) .footer-center,
    body:has(.navtx-member-page) .footer-qrs {
        min-width: 0;
    }

    body:has(.navtx-member-page) .footer-links,
    body:has(.navtx-member-page) .footer-copy {
        display: flex;
        flex-wrap: wrap;
        gap: 8px 12px;
    }

    body:has(.navtx-member-page) .footer-notice {
        max-width: none;
        line-height: 1.8;
        word-break: break-word;
    }

    body:has(.navtx-member-page) .footer-qrs {
        justify-content: flex-start;
    }
}
