/* Syra Sage Child Theme Styles */
:root {
    --color-price: #F44A4A;
    --color-content: #333333;
    --color-border: #525252;
    --color-active: #178F4B;
}

body {
    background-color: transparent !important;
}

.tanimate,
.tanimate i,
a,
.btn,
.boxLanguageCurrency,
a.product-thumbnail img,
.tfancybox .dropdown-menu li,
.tanimate::before,
.tanimate::after {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
}

img {
    height: auto;
    aspect-ratio: attr(width) / attr(height);
}

.swiper, .swiper-container, .elementor-slides {
    min-height: 380px;
}
.elementor-element-deece66.elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide>.e-con{
    height: 100%;
}

@media (prefers-reduced-motion: reduce) {
    body .animated {
      animation: unset !important;
    }
  
    html body * {
      transition: 0.5s !important;
    }
}

.ct-header style{
    display: none !important; 
}

.lBlock {
    margin-bottom: 15px;
}

.tBox,
.tAccountPage .woocommerce-info,
.tAccountPage .woocommerce-error,
.tAccountPage .woocommerce-message,
.tAccountPage .woocommerce-thankyou-order-received,
.btnLogout,
.tFancybox .fancybox-slide>* {
    background: rgba(42, 42, 42, 0.53);
    position: relative !important;
    z-index: 1 !important;
}

.boxLanguageCurrency{
    background: rgba(255, 255, 255, 0.27);
    border-radius: 22px;
    height: 34px;
    font-size: 14px;
    display: flex;
    align-items: center;
    padding: 0 37px 0px 15px;
    justify-content: space-between;
    gap: 10px;
    position: relative;
    cursor: pointer;
    & span{
        display: inline-flex;
        position: relative;
        line-height: 14px;
        text-transform: uppercase;
        &.currency{
            border-left: 1px solid rgba(255, 255, 255, 0.8);
            padding-left: 10px;
        }
        &.language{
            gap: 5px;
            & span:first-child{
                width: 14px;
                height: 14px;
                border-radius: 100%;
                overflow: hidden;
                position: relative;
                & img{
                    position: absolute;
                    width: 30px;
                    height: 24px;
                    top: calc(50% - 12px);
                    left: calc(50% - 15px);
                    max-width: unset;
                }
            }
        }
    }
    & svg{
        position: absolute;
        right: 15px;
        top: calc(50% - 6px);
        fill: #fff;
    }
    &:hover{
        background: var(--theme-palette-color-3);
    }
}

.tAccountPage {
    font-family: 'Mona Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-white);
    box-sizing: border-box;
    width: 100%;
}

.bodyAccountPage [data-vertical-spacing*=top] {
    padding-top: 0px;
}

.bodyAccountPage .row .elementor-element,
.bodyAccountPage .row .elementor-element>.e-con-inner {
    padding: 0px;
}

.tBreadcrumb ul {
    list-style: none;
    padding: 15px 0px 20px 0px;
    margin: 0px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;

    & li {
        font-size: 14px;

        & a {
            color: #989898;
        }
    }

    & i {
        font-size: 8px;
        line-height: normal;
    }
}

.userDisplayName {
    text-transform: uppercase;
    font-weight: 700;
    margin: 10px 0px;
}

.tBoxUserInformation {
    text-align: center;
    padding: 20px;
}

.userAvatar {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto;
    background: rgba(122, 122, 122, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
}

.userAvatar img {
    width: 40px;
    height: 40px;
    object-fit: cover;
}

.tBoxAffiliateLevel {
    background: rgba(88, 88, 88, 0.5);
    padding: 5px 10px;
    border-radius: 100px;
    font-size: 14px;
    min-width: 125px;
    text-align: center;
    margin: 0 auto;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 5px;

    &.pastor::before,
    &.apostle::before,
    &.saint::before,
    &.disciple::before {
        content: '';
        width: 19px;
        height: 19px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        background-image: url(../img/disciple.png);
    }

    &.pastor::before {
        background-image: url(../img/pastor.png);
    }

    &.apostle::before {
        background-image: url(../img/apostle.png);
    }

    &.saint::before {
        background-image: url(../img/saint.png);
    }
}

.btnLogout {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50px;
    width: 100%;
    color: var(--bs-white);
}

ul.accountNavigation {
    list-style: none;
    padding: 10px;
    margin: 0px 0px 15px 0px;

    & li {
        padding: 15px;
        position: relative;

        &::before {
            content: '';
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0px;
            left: 0px;
            width: 0px;
            background: var(--account-nav-text-initial-color, var(--theme-palette-color-3));
        }

        & a {
            display: flex;
            justify-content: space-between;
            position: relative;
            align-items: center;

            &::after {
                font-family: "Font Awesome 5 Pro";
                content: "\f054";
                font-size: 10px;
                font-weight: normal;
            }

            & span {
                display: flex;
                align-items: center;
                gap: 15px;

                &::before {
                    content: '';
                    width: 16px;
                    height: 16px;
                    background-repeat: no-repeat;
                    background-size: cover;
                    background-position: center;
                    background-image: url(../img/icon-menu-edit-account.svg);
                }
            }

            &.orders span::before {
                background-image: url(../img/icon-menu-orders.svg);
            }

            &.coupons span::before {
                background-image: url(../img/icon-menu-coupons.svg);
            }

            &.affiliate span::before {
                background-image: url(../img/icon-menu-affiliate.svg);
            }

            &.membership span::before {
                background-image: url(../img/icon-menu-membership.svg);
            }
        }

        &:hover,
        &.is-active {
            &::before {
                width: 100%;
            }

            & a {
                color: var(--bs-white);
                font-weight: 700;
            }
        }
    }
}

.tBoxDashboard .userAvatar {
    margin-left: 0px;
    position: relative;
    overflow: unset;

    & a {
        position: absolute;
        display: flex;
        width: 28px;
        height: 28px;
        background: var(--bs-white);
        right: -5px;
        border-radius: 100%;
        border: 1px solid #898989;
        bottom: 5px;
        align-items: center;
        justify-content: center;

        &::before {
            content: '';
            width: 18px;
            height: 18px;
            mask: url(../img/icon-camera.svg) no-repeat center / cover;
            background-color: #494949;
        }
    }

    & input {
        visibility: hidden;
        display: none;
    }
}

.tBoxDashboard .woocommerce-Address {
    padding: 25px 30px;
    background: rgba(51, 51, 51, 0.64);

    & header {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;

        & a {
            display: inline-block;

            &::before {
                content: '';
                display: inline-block;
                width: 16px;
                height: 16px;
                mask: url(../img/icon-edit.svg) no-repeat center / cover;
                background-color: var(--bs-white);
            }
        }

        & h4 {
            font-size: 16px;
            line-height: normal;
        }
    }

    & address {
        font-size: 14px;
        line-height: 22px;
    }
}

.tBoxDashboard .formRowProfile {
    margin-top: 35px;
    margin-bottom: 75px;
}

.tBoxDashboard .formRowAddress {
    margin-bottom: 45px;

    & .addressTypeLabel {
        color: var(--bs-white);
        font-size: 14px;
        font-weight: 500;
        margin-bottom: 15px;
    }
}

.tBoxDashboard label {
    margin-bottom: 10px;
}

.tFancybox .fancybox-slide>* span.select2-container {
    height: 46px;
    & span {
        height: 100%;
        border-color: var(--color-border);
        align-items: center;
        & .select2-selection__placeholder{
            display: inline-flex;
        }
    }
}

.tFancybox .fancybox-slide>* span.select2-container.select2-container--open .select2-selection--single,
.tFancybox .fancybox-slide>* span.select2-container.select2-container--open .select2-selection--multiple {
    background: transparent;
    border-color: var(--color-border);
}

.tBoxDashboard .form-control:focus {
    box-shadow: none;
}

a.btnAddAddress,
a.btnLogout:hover {
    color: var(--account-nav-text-initial-color, var(--theme-palette-color-3));
}

a.btnAddAddress:hover {
    color: var(--bs-white);
}

.tBoxDashboard .userAvatar a:hover::before,
.tBoxDashboard .woocommerce-Address header a:hover::before {
    background-color: var(--account-nav-text-initial-color, var(--theme-palette-color-3));
}

.tFancybox .fancybox-slide>* {
    min-width: 500px;
    background: rgba(42, 42, 42, 1);
    & .form-row .iti{
        width: 100% !important;
        flex-direction: row-reverse;
        display: flex;
        border: 1px solid var(--color-border);
        & input[type="text"], & input[type="tel"]{
            padding-left: 15px !important;
            padding-right: 15px;
            border: none;
        }
        & .iti__flag-container{
            left: auto !important;
            right: 0px !important;
            z-index: 99999;
            position: static;
            display: flex;
            align-items: center;
            &::before{
                content: '';
                border-left: 1px solid var(--color-border);
                height: 60%;
            }
            & .iti__country-list{
                right: 0px;
                width: 100%;
                & li{
                    color: #000;
                    margin-bottom: 5px;
                }
            }
        }
    }
}

@media (max-width: 1023px) {
    .tFancybox .fancybox-slide>* {
        min-width: 350px;
    }
}

body.bodyAccountPage .select2-container {
    z-index: 99999;

    &>span {
        border-color: var(--color-border);
        background-color: #585858;
    }

    & span.select2-dropdown .select2-results__option.select2-results__option--highlighted[aria-selected],
    & span.select2-dropdown .select2-results__option.select2-results__option--highlighted[data-selected] {
        background: rgba(42, 42, 42, 1);
    }

    & span.select2-search.select2-search--dropdown {
        display: none;
    }
}

.affiliateRegisterWidget form {
    margin: 25px 0px 0px 0px;
}

/* Orders */
.woocommerce-EditOrder {
    &.view-order {
        border-bottom: 1px solid var(--color-border);
        margin-bottom: 30px;
        padding-bottom: 30px;

        & .product-order-item {
            margin-top: 20px;
        }
    }

    & .product-order-item {
        border-bottom: 1px solid var(--color-border);
        padding-bottom: 33px;
        margin-top: 33px;

        &:last-child {
            border: none;
        }
    }

    & .order-header {
        display: flex;
        justify-content: space-between;
        margin-bottom: 20px;
    }

    & .order-item {
        display: grid;
        grid-template-columns: 130px 1fr;
        gap: 20px;

        & .product-details {
            font-size: 14px;
            align-items: center;

            &>* {
                flex: 0 0 auto;
                display: block;
                width: 100%;
                margin-bottom: 20px;
            }

            & a {
                font-weight: bold;
            }
        }
    }

    & .order-right {
        height: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;

        & .order-status {
            align-items: center;
            display: flex;
            font-size: 14px;
        }

        & .product-actions {
            text-align: right;

            & .total-price {
                font-weight: 700;
                font-size: 18px;
                line-height: normal;
                margin-bottom: 16px;
            }
        }
    }

    & a.product-thumbnail {
        display: block;
        overflow: hidden;

        img {
            transform: scale(1);
        }

        &:hover img {
            transform: scale(1.05);
        }
    }

    & .order-status.pending {
        color: #FFA800;
    }

    & .order-status.completed {
        color: #178F4B;
    }

    & .order-status.refunded {
        color: #F44A4A;
    }
}

.tBoxProcessing {
    display: flex;
    flex-wrap: wrap;
    background: #2a2a2a;
    padding: 20px;
    align-items: center;

    & label {
        margin: 0px;
    }

    &>* {
        flex: 0 0 auto;
    }

    & .processBarContainer {
        margin-left: 10px;
        width: calc(100% - 230px);
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;

        & .processBar {
            width: calc(100% - 45px);
            margin-right: 10px;
        }
    }
}

.processBar {
    position: relative;
    display: inline-flex;
    background: #4f4f4f;
    height: 14px;
    border-radius: 100px;
    width: 100%;
    & span {
        position: absolute;
        top: 0px;
        left: 0px;
        height: 100%;
        background: var(--color-active);
        border-radius: 100px;
        max-width: 100%;
    }
}

.affiliateLevelList {
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
    justify-content: space-between;

    & li {
        flex: 0 0 auto;
        width: calc(25% - 50px);
        display: flex;
        justify-content: center;
        position: relative;
        padding-bottom: 20px;
        margin-left: 25px;
        margin-right: 25px;

        &::after {
            position: absolute;
            content: '';
            width: 100%;
            height: 60%;
            bottom: 0px;
            left: 0px;
            background: url(../img/lvl-backgound.png) no-repeat center / cover, linear-gradient(to right, #C4CBDB, #9DA8C0);
        }

        &::before {
            position: absolute;
            width: 36px;
            height: 6px;
            background: url(../img/icon-arrow-lvl.svg) no-repeat center;
            content: '';
            right: -50px;
            bottom: 30%
        }

        &:first-child {
            margin-left: 0px;
        }

        &:last-child {
            margin-right: 0px;

            &::before {
                display: none;
            }
        }

        & .step_current {
            position: absolute;
            right: -10px;
            top: calc(40% - 12.5px);
            width: 25px;
            height: 25px;
            background: var(--color-active);
            border: 1px solid var(--bs-white);
            border-radius: 100%;
            z-index: 2;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            visibility: hidden;
        }

        & .arrow {
            content: "";
            position: absolute;
            left: calc(50% - 5px);
            bottom: -21px;
            width: 0;
            height: 0;
            border-left: 10px solid transparent;
            border-right: 10px solid transparent;

            opacity: 0px;
            visibility: hidden;
        }

        & a {
            display: block;
            width: 96px;
            height: 96px;
            background: url(../img/disciple.png) no-repeat center / cover;
            position: relative;
            z-index: 1;

            & span {
                position: absolute;
                font-weight: 700;
                width: 100%;
                text-align: center;
                bottom: 23px;
                left: 0px;
                font-size: 14px;
                color: var(--bs-white);
            }
        }

        &.lvlpastor {
            &::after {
                background: url(../img/lvl-backgound.png) no-repeat center / cover, linear-gradient(to right, #E9CD81, #F7A55E);
            }

            & a {
                background: url(../img/pastor.png) no-repeat center / cover;
            }
        }

        &.lvlapostle {
            &::after {
                background: url(../img/lvl-backgound.png) no-repeat center / cover, linear-gradient(to right, #C2CEDF, #A2B9C5);
            }

            & a {
                background: url(../img/apostle.png) no-repeat center / cover;
            }
        }

        &.lvlsaint {
            &::after {
                background: url(../img/lvl-backgound.png) no-repeat center / cover, linear-gradient(to right, #E9CB61, #D1AB21);
            }

            & a {
                background: url(../img/saint.png) no-repeat center / cover;
            }
        }

        &.active {

            & .step_current,
            & .arrow {
                opacity: 1;
                visibility: visible;
            }
        }
    }
}

/* Mobile responsive for affiliate level list */
@media (max-width: 768px) {
    .affiliateLevelList {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-bottom: 10px;
        margin-left: -15px;
        margin-right: -15px;
        padding-left: 15px;
        padding-right: 15px;

        &::-webkit-scrollbar {
            display: none;
        }

        & li {
            min-width: 150px;
            width: 150px;
            flex-shrink: 0;
            margin-left: 15px;
            margin-right: 15px;

            &:first-child {
                margin-left: 0;
            }

            &:last-child {
                margin-right: 0;
            }

            &::before {
                right: -30px;
            }
        }
    }

    .affiliateLevelTabContent {
        padding-right: 0;
    }
}

.affiliateLevelTabContent {
    margin-top: 20px;

    & .title {
        margin-bottom: 20px;
    }

    padding-right: 25px;

}

.affiliateLevelTabItem:not(.active) {
    display: none;
}

.tTask {
    padding: 15px;
    background: rgba(54, 54, 54, 0.62);

    & .taskTitle {
        font-size: 16px;
        font-weight: 700;
        margin-bottom: 5px;
    }

    & .taskFooter {
        border-top: 1px solid var(--color-border);
        margin-top: 10px;
        padding-top: 10px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-size: 12px;
    }
}

.not-available .tTask, .not-available.tTask {
    pointer-events: none;
    position: relative;

    & * {
        color: gray;
    }

    & .btn {
        background: var(--color-border)
    }
}

/* Affiliate Level Locked State */
.affiliate-level-locked-wrapper {
    position: relative;
}

.affiliate-level-locked-wrapper .tBoxProcessing,
.affiliate-level-locked-wrapper .affiliateLevelList,
.affiliate-level-locked-wrapper .line-separator {
    pointer-events: none;
    user-select: none;
    opacity: 0.6;
    filter: grayscale(40%);
}

/* Membership promotion blocks for locked users */
.tMembershipPromo {
    background: linear-gradient(135deg, rgba(54, 54, 54, 0.9), rgba(42, 42, 42, 0.95));
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s ease;
}

.tMembershipPromo:hover {
    border-color: var(--color-active);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.tMembershipPromo .taskTitle {
    color: var(--color-active);
}

.tMembershipPromo .taskBody {
    min-height: 60px;
}

.tMembershipPromo .taskFooter {
    border-top: none;
    padding-top: 15px;
}

.tMembershipPromo .btn {
    pointer-events: auto;
}

.tBoxWithdraw {
    padding: 15px 20px;
    margin-bottom: 20px;
}

form.formWithdraw>.row {
    margin-bottom: 35px;

    & label {
        margin: 0px;
    }

    & .lineInput {
        display: flex;
        justify-content: space-between;
        border: 1px solid var(--color-border);
        padding-left: 15px;
        padding-right: 15px;
        color: #9E9E9E;
        flex-wrap: wrap;
        align-items: center;
        cursor: text;
        max-width: 50%;

        & input {
            border: none;
            text-align: right;
            max-width: 60%;
            padding: 0;
            -webkit-appearance: none;
            margin: 0;
            cursor: text;
        }

        & input::-webkit-outer-spin-button,
        & input::-webkit-inner-spin-button {
            -webkit-appearance: none;
            margin: 0;
        }

        & label {
            margin: 0px;
            cursor: text;
        }
    }
}

.withdraw-info {
    background: rgba(255, 200, 0, 0.20);
    padding: 10px 15px;
    font-size: 14px
}

/* Elementor */
.affiliateTopEarningWidget .table {
    margin-top: 25px;
}

.faqWidget .faq-accordion {
    margin-top: 25px;
}

.faqWidget .faq-item {
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid var(--color-border);

    &:last-child {
        padding: 0px;
        margin: 0px;
        border: none;
    }
}

.faqWidget .faq-question {
    cursor: pointer;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    transition: all 0.3s ease;
    font-size: 16px;
}

.faqWidget .faq-question:hover {
    opacity: 0.8;
}

.faqWidget .faq-question::before {
    content: "\f077";
    font-family: "Font Awesome 5 Pro";
    font-size: 10px;
    transform: rotate(0deg);
    margin-right: 10px;
}

.faqWidget .faq-question[aria-expanded="true"]::before {
    transform: rotate(180deg);
}

.faqWidget .faq-answer {
    overflow: hidden;
}

.faqWidget .faq-answer-content {
    padding: 15px;
    font-size: 14px;
    line-height: 35px;
    margin-left: 5px;
}

.tAffiliateArea .elementor-widget-container {
    background: linear-gradient(to right, #F4D45C, #FEF2BE);
    position: relative;
    padding: 40px;
    padding-right: 30%;

    & .elementor-image {
        position: absolute;
        right: 0px;
        bottom: 0px;
    }

    & .elementor-heading-title {
        font-size: 26px;
        line-height: normal;
    }

    & .elementor-content {
        margin-top: 10px;
    }
}

& .tAffiliateAreaDefaultLink {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 30px;

    & .form-control {
        max-width: 400px;
        background: rgba(59, 59, 59, 0.59);
    }

    & label {
        margin: 0px;
    }
}

.tAffiliatePromotional {
    & .elementor-heading-title {
        margin-bottom: 18px;
    }

    & ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;

        & li:last-child {
            border-left: 1px solid var(--color-border);
            padding-left: 20px;
        }
    }
}

.affiliateMembershipPackageWidget {
    & .package-body {
        background: rgba(42, 42, 42, 0.5);
        padding: 20px;

        & .package-top {
            display: flex;
            align-items: center;
            justify-content: space-between;

            & .package-price {
                font-size: 20px;
                font-weight: 700;
            }
        }

        & .elementor-content {
            margin-top: 20px;

            & ul {
                padding-left: 0px;
                list-style: none;

                & li::before {
                    font-family: "Font Awesome 5 Pro";
                    content: "\f111";
                    font-size: 8px;
                    color: var(--color-active);
                    display: inline-block;
                    margin-right: 10px;
                    transform: translateY(-2px);
                }
            }
        }
    }

    & .package-header {
        background: linear-gradient(to right, #C4CBDB, #9DA8C0);
        height: 87px;
        position: relative;

        & .package-title {
            position: absolute;
            width: 106px;
            height: 106px;
            background: url(../img/disciple.png) no-repeat center / cover;
            left: calc(50% - 53px);
            top: -40px;

            & span {
                position: absolute;
                text-align: center;
                width: 100%;
                bottom: 23px;
                font-weight: 700;
                font-size: 16px;
            }
        }

        &.pastor {
            background: linear-gradient(to right, #E9CD81, #F7A55E);

            & .package-title {
                background: url(../img/pastor.png) no-repeat center / cover;
            }
        }

        &.apostle {
            background: linear-gradient(to right, #C2CEDF, #A2B9C5);

            & .package-title {
                background: url(../img/apostle.png) no-repeat center / cover;
            }
        }

        &.saint {
            background: linear-gradient(to right, #E9CB61, #D1AB21);

            & .package-title {
                background: url(../img/saint.png) no-repeat center / cover;
            }
        }
    }
}

/* Coupon */
.couponItem {
    display: flex;
    flex-wrap: wrap;
    overflow: visible; /* 🔧 改为visible以显示半圆 */
    border-radius: 8px;
    position: relative;
    margin-bottom: 30px;
    &.expired,
    &.used {
        pointer-events: none;
        & * {
            color: #BCBCBC !important;
        }
        & .colRight, & .colLefts{
            background: #353535;
        }
        & .colLeft {
            background: #494949 !important;
        }
        & .btnSmaller {
            background: #5E5E5E !important;
        }
    }
    & .colRight, & .colLefts{
        background: #363233;
        border: none;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        width: 135px;
    }
    & .colLefts{
        padding: 6px 10px 6px 6px;
        justify-content: center;
        position: relative;
        border-radius: 8px 0 0 8px;
        /* 🎯 使用伪元素创建半圆效果（右侧） */
        &::before {
            position: absolute;
            content: '';
            width: 12px;
            height: 12px;
            background: #1A1A1A; /* 页面背景色，需要根据实际背景调整 */
            border-radius: 50%;
            right: -6px;
            top: -6px;
            z-index: 3;
        }
        &::after {
            position: absolute;
            content: '';
            width: 12px;
            height: 12px;
            background: #1A1A1A; /* 页面背景色，需要根据实际背景调整 */
            border-radius: 50%;
            right: -6px;
            bottom: -6px;
            z-index: 3;
        }
    }
    /* 虚线分隔 */
    & .colLeft::after {
        position: absolute;
        content: '';
        border-right: 1px dashed #706562;
        right: -6px;
        height: calc(100% - 20px);
        top: 10px;
        z-index: 2;
    }
    & .colRight {
        font-size: 12px;
        position: relative;
        flex: 0 0 auto;
        width: calc(100% - 135px);
        padding: 15px 20px 15px 10px;
      	flex-flow: row;
        border-radius: 0 8px 8px 0;
        /* 🎯 使用伪元素创建半圆效果（左侧） */
        &::before {
            position: absolute;
            content: '';
            width: 12px;
            height: 12px;
            background: #1A1A1A; /* 页面背景色，需要根据实际背景调整 */
            border-radius: 50%;
            left: -6px;
            top: -6px;
            z-index: 3;
        }
        &::after {
            position: absolute;
            content: '';
            width: 12px;
            height: 12px;
            background: #1A1A1A; /* 页面背景色，需要根据实际背景调整 */
            border-radius: 50%;
            left: -6px;
            bottom: -6px;
            z-index: 3;
        }
        & .couponInformation {
            display: flex;
            flex-flow: column;
            justify-content: space-between;
            flex: 0 0 auto;
            width: calc(100% - 68px);
            padding-right: 15px;
            min-height: 90px; /* 🔧 固定最小高度，确保所有优惠券高度统一 */
        }
        & .title {
            font-size: 14px;
            font-weight: 700;
            & span {
                display: block;
                font-size: 12px;
                font-weight: normal;
            }
        }
        & .description {
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            margin-top: 25px;
            min-height: 2.4em; /* 🔧 默认两行占位高度 (12px行高 * 1.2 * 2行) */
            line-height: 1.2;
            & span {
                color: #F44A4A
            }
        }
        & .couponButtons {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            width: 68px;
            gap: 10px;
            & form{
                width: 100%;
            }
        }
    }
    & .colLeft {
        position: relative;
        display: flex;
        flex-flow: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        font-size: 12px;
        border-radius: 8px;
        background: linear-gradient(180deg, #FDE3B5 0%, #DFBF89 100%);
        height: 100%;
        & > *{
            width: 100%;
        }
        & .title {
            font-size: 36px;
            font-weight: 700;
            color: #F44A4A;
            line-height: normal;

            & span {
                font-size: 16px;
            }

            & .usage-count {
                font-size: 14px;
                font-weight: 400;
                color: #F44A4A;
                margin-left: 5px;
                display: inline-block;
            }
        }
        & .MiniSpend {
            color: black;
        }
    }

    & .btnSmaller {
        background: linear-gradient(180deg, #FBE0B1 0%, #E2C38E 100%);
        color: #333333;
    }
}

.myacountCoupon .couponItem::after,
.myacountCoupon .couponItem::before {
    background: #D9D9D9;
}

.couponItem.color_1 {
    & .colLeft {
        background: linear-gradient(180deg, #FDE3B5 0%, #DFBF89 100%);

        & .title {
            color: #F44A4A;
        }
    }

    & .btnSmaller {
        background: linear-gradient(180deg, #FBE0B1 0%, #E2C38E 100%);
        color: #333333;
    }
}

.couponItem.color_2 {
    & .colLeft {
        background: #CFECD9;

        & .title {
            color: #178F4B;
        }
    }

    & .btnSmaller {
        background: var(--bs-success, #178F4B);
        color: #fff;
    }
}

.couponItem.color_3 {
    & .colLeft {
        background: #F9DACD;

        & .title {
            color: #F44A4A;
        }
    }

    & .btnSmaller {
        background: #F44A4A;
        color: #fff;
    }
}

.couponItem.color_4 {
    & .colLeft {
        background: #F6FBD7;

        & .title {
            color: #9AAE1B;
        }
    }

    & .btnSmaller {
        background: #9AAE1B;
        color: #fff;
    }
}

.couponItem.color_5 {
    & .colLeft {
        background: #CFF7F0;

        & .title {
            color: #19AC93;
        }
    }

    & .btnSmaller {
        background: #19AC93;
        color: #fff;
    }
}

.couponItem.color_6 {
    & .colLeft {
        background: #CFD6F7;

        & .title {
            color: #4E6BF5;
        }
    }

    & .btnSmaller {
        background: #4E6BF5;
        color: #fff;
    }
}

/* bbPress */
#bbp-container {
    margin-bottom: 60px;
}

.bbpressTop {
    margin: 20px 0px;

    .bbpress-search-form .form-control {
        border: none;
    }
}

.bbp-breadcrumb>p {
    margin: 0px;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 5px;

    & a {
        color: #989898;

        &:hover {
            color: var(--color-active);
        }
    }

    & i {
        font-size: 10px;
    }
}

.bbpress-search-form {
    position: relative;

    & button {
        position: absolute;
        top: 0px;
        height: 100%;
        background: none, url(../img/icon-search.svg) no-repeat center;
        right: 0px;
        width: 20px;
    }
}

.bbpress-nav-section {
    padding: 15px;
}

.bbpress-forum-stats,
.bbpress-popular-threads,
.bbpress-topics,
.bbpress-forum-item {
    padding: 15px 25px;
    font-size: 16px;
}

.bbpress-forum-stats {
    margin-bottom: 20px;
}

.bbpress-stats-info {
    display: grid;
    grid-template-columns: 50% 50%;
}

#bbpress-forums .bbpress-popular-list,
.bbpress-popular-list {
    & li {
        margin-bottom: 10px;
        position: relative;
        padding-left: 30px;

        & span {
            width: 20px;
            height: 20px;
            display: flex;
            justify-content: center;
            align-items: center;
            position: absolute;
            left: 0px;
            font-size: 14px;
            background: var(--color-border);
            top: 3px;
        }

        &:nth-child(1) span {
            background: #EFCB00;
        }

        &:nth-child(2) span {
            background: #8C9AA7;
        }

        &:nth-child(3) span {
            background: #B27B2D;
        }
    }
}

.bbpress-nav-section {
    height: 100%;
}

.bbpress-categories {
    border-top: 1px solid var(--color-border);
    padding-top: 15px;
    margin-top: 15px;
}

.bbpress-nav-section>a,
.bbpress-categories a {
    display: block;
    font-size: 16px;
    padding: 10px;
    position: relative;
    margin-bottom: 10px;

    & span {
        position: relative;
        z-index: 1;
        color: #fff;
    }

    &:after {
        position: absolute;
        width: 0;
        background: var(--color-active);
        content: '';
        height: 100%;
        left: 0px;
        top: 0px;
    }

    &.active::after,
    &:hover::after {
        width: 100%;
    }
}

.bbp-topic-title {
    display: grid;
    grid-template-columns: 50px 1fr;
    gap: 15px;
}

.bbp-forum-title {
    display: flex;
    padding: 10px 15px;
    background: rgba(228, 148, 0, 0.3);
    margin-bottom: 5px;
    justify-content: space-between;
    align-items: center;
    color: #fff !important;

    & i {
        font-size: 14px;
        transform: rotate(0deg);
    }

    &.active i {
        transform: rotate(180deg);
    }
}

.topic-item {
    padding: 20px 0px;
    border-bottom: 1px solid var(--color-border);
}

.bbp-topic-title {
    display: grid;
    grid-template-columns: 50px 1fr;
    gap: 15px;
    align-items: center;
    margin-bottom: 15px;
    & .avatar {
        background: #fff;
        width: 50px;
        height: 50px;
        border-radius: 8px;
        align-items: center;
        justify-content: center;
        display: flex;
    }
    & .author {
        text-transform: capitalize;

        & span {
            display: block;
            color: #B5B5B5;
            font-size: 14px;
            line-height: normal;
        }
    }
}

.bbp-topic-content,
.bbp-topic-footer {
    padding-left: 65px;
}

.bbp-topic-content .title {
    font-weight: 700;
    color: var(--color-active);
    margin-bottom: 10px;
    display: inline-block;

    &:hover {
        color: #fff;
    }
}

.bbp-topic-footer {
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.view-comment {
    display: inline-flex;

    & span {
        border-right: 1px solid var(--color-border);
        line-height: normal;
        margin-right: 10px;
        padding-right: 10px;
        display: inline-flex;
        align-items: center;

        & i {
            margin-right: 5px;
            font-size: 12px;
        }

        &:last-child {
            padding: 0px;
            margin: 0px;
            border: none;
        }
    }
}

.bbp-single-topic-header {
    padding: 15px 20px;
    border-bottom: 1px solid var(--color-border);
}

.bbp-single-topic-header .entry-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 32px;
    line-height: normal;

    & .btn {
        gap: 5px;
    }
}

#bbpress-forums .bbp-reply-form {
    border: none;
}

#bbpress-forums.bbpress-topic-single ul.bbp-replies {
    border: none;
    font-size: 16px;

    & .bbp-replies-list>li {
        background: rgba(42, 42, 42, 0.53);
        margin-bottom: 20px;
        padding-left: 168px;
        position: relative;
        padding-bottom: 30px;
        &>.bbp-reply-header {
            position: absolute;
            left: 0px;
            height: 100%;
            width: 168px;
            text-align: center;
            background: rgba(58, 58, 58, 0.5);
            border: none;

            & .avatar {
                width: 100px;
                height: 100px;
                border-radius: 8px;
                background: #fff;
                display: inline-flex;
                align-items: center;
                justify-content: center;
            }

            & .author {
                font-size: 18px;
                text-transform: capitalize;
                margin-top: 15px;
            }
        }

        &>.topic-author {
            padding: 20px 20px 0px 20px;

            &>.entry-title {
                display: flex;
                justify-content: space-between;
                align-items: center;
            }
        }

        &>.bbp-reply-body {
            background: rgba(42, 42, 42, 0.53);
            margin: 0 20px 20px 20px;
            padding: 15px;
        }

        &>.bbp-reply-form {
            margin: 20px;
            & form {
                padding-bottom: 15px;
                & .bbp-submit-wrapper {
                    float: none;
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    & button{
                        width: auto;
                    }
                }
            }
        }
    }

    & .bbp-reply-body ul {
        margin: 0px;
        padding: 0px;

        & li {
            margin-bottom: 25px;

            &:last-child {
                margin: 0px;
            }
        }

        & .bbp-reply-body {
            display: grid;
            grid-template-columns: 36px 1fr;
            gap: 15px;

            & [class*='loop-item'] {
                padding: 0px;
            }

            & .bbp-reply-content {
                padding: 0px;
                display: flex;
                flex-wrap: wrap;
                gap: 5px;

                & p {
                    margin: 0px;
                }
            }

            & .bbp-reply-post-date {
                margin-top: 5px;
            }

            & .avatar {
                width: 36px;
                height: 36px;
                background: #fff;
                display: flex;
                align-items: center;
                justify-content: center;
                border-radius: 6px;
            }
        }
    }

    & .bbp-reply-content {
        margin: 0px;
    }

    & .bbp-reply-to-link {
        gap: 5px;
        padding: 0.375rem 0.75rem;
    }

    & .bbp-reply-post-date {
        font-size: 14px;
        color: #b5b5b5;
    }
}
.bbp-reply-form{
    padding: 30px 25px;
    & form label[for="bbp_topic_tags"]{
        margin-top: 10px;
    }
    & form div.bbp-submit-wrapper{
        float: none;
        & button{
            width: 100%;
        }
    }
}
#bbpress-forums div.wp-editor-container{
    border-color: var(--color-border);
    & .quicktags-toolbar{
        background: #3B3B3B;
        border: none;
        & input[type="button"]{
            color: #fff;
        }
    }
}
/* Common */
.tBoxDashboard,
.tPadding30 {
    padding: 30px;
}

.formTitle {
    font-weight: 700;
    margin-bottom: 15px;
    font-size: 20px;
}

.formTitle18 {
    font-size: 18px;
}

span.price {
    display: block;
    color: var(--color-price);
    font-weight: bold;
    font-size: 30px;
}

.btn,
.bbp-reply-to-link {
    height: 46px;
    border-radius: 0px;
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    position: relative;
    color: var(--theme-button-text-initial-color);
    border: var(--theme-button-border);
    background-color: var(--theme-button-background-initial-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;

    &.btnBlocksy {
        width: 164px;
        height: 46px;
    }

    &:hover {
        color: var(--theme-button-text-hover-color);
        border-color: var(--theme-button-border-hover-color);
        background-color: var(--theme-button-background-hover-color);
    }

    &.btnSmaller {
        height: 36px;
        font-size: 14px;
    }
}

.bbp-reply-to-link {
    height: 36px;
    font-size: 14px;
}

.btn.btnWhite {
    background: var(--bs-white);
    color: var(--color-content);

    &:hover {
        background: var(--color-content);
        color: var(--bs-white);
    }
}

.btn.btnCustom {
    border: 1px solid var(--color-border);
    color: #9E9E9E;
    background-color: rgba(39, 39, 39, 0.48);

    &:hover {
        background: var(--color-border);
        color: var(--bs-white);
    }
}

.btn.btnDisabled,
a.btnDisabled {
    pointer-events: none;
    cursor: not-allowed !important;
}

form.formWithdraw .lineInput,
.bbpress-search-form .form-control,
.form-control,
.form-select,
.tBoxDashboard .form-control,
.tFancybox .fancybox-slide>* .form-control,
.bbp-reply-form,
.bbp-reply-form form textarea, 
.bbp-reply-form form #bbp_topic_tags{
    border-radius: 0px;
    border-color: var(--color-border);
    background-color: rgba(39, 39, 39, 0.48);
    color: var(--bs-white);
    &.form-control-smaller {
        height: 36px;
        font-size: 14px;
    }
}

.tFancybox .dropdown-menu{
    background-color: rgba(39, 39, 39, 1);
    width: 100%;
    color: var(--bs-white);
    border-radius: 0px;
    border: 1px solid var(--color-border);
    padding: 0px;
    margin: 0px;
    & li{
        display: block;
        padding: 15px 15px;
        border-bottom: 1px solid var(--color-border);
        font-size: 14px;
        line-height: 14px;
        cursor: pointer;
        &:last-child{
            border: none;
        }
        &:hover{
            background: var(--color-border);
        }
    }
}

#account_email {
    color: #9E9E9E;
}

.tBox table.table,
.tBox table.table tr td,
.tBox table.table tr th,
.tBox table.table tr:last-child td {
    border: none;
    color: var(--bs-white);
}

.tBox table.table tr td {
    border-bottom: 1px solid var(--color-border);
    padding: 10px 20px;
}

.tBox table.table tr th {
    background: #313131;
    font-weight: normal;
    padding: 8px 25px;
    min-height: 40px;
    font-size: 16px;
}

.tTabs {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;

    & a {
        font-size: 16px;


        &::after {
            content: '';
            display: block;
            margin-top: 5px;
            border-bottom: 2px solid var(--color-active);
            width: 0;
        }
    }

    & li.active a,
    & li:hover a {
        color: var(--color-active);
        font-weight: 700;

        &::after {
            width: 100%;
        }
    }
}

.woocommerce-EditOrder .tTabs a {
    font-size: 16px;
}

.tabContents .tabContent:not(.active) {
    display: none;
}

span.lbl,
span.value {
    display: block;
}

span.lbl {
    color: #9d9d9d;
    margin-bottom: 10px;
}

.not-loading {
    display: none;
}

.not-loading.loading {
    display: inline-block;
}

.font14 {
    font-size: 14px;
    line-height: normal;
}

.text-active {
    color: var(--color-active);
}

/* fit checkout page confilic bootstrap */
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
    width: 100%;
}

@media (min-width: 1600px) {
    .tAccountPage>.container>.row>.col-md-3 {
        width: 33%;
    }

    .tAccountPage>.container>.row>.col-md-9 {
        width: 67%;
    }
}

@media (min-width: 1400px) {
    .container {
        max-width: var(--theme-block-width);
    }

    body.bbpress .container {
        max-width: var(--theme-normal-container-max-width);
        padding-left: 0px;
        padding-right: 0px;
    }

    .tAccountPage .container {
        padding-left: 0px;
        padding-right: 0px;
    }
}

.line-separator {
    position: relative;
    width: 100%;
    margin-top: 15px;
    height: 12px;
}

.side-line {
    position: absolute;
    top: 50%;
    border-top: 1px solid var(--color-active);
    transform: translateY(-50%);
    height: 0;
}

.side-left {
    left: 0;
}

.side-right {
    right: 0;
}

.triangle {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 12px;
    height: 12px;
    border-top: 1px solid var(--color-active);
    border-left: 1px solid var(--color-active);
    background: #2A2A2A87;
}


.pagination {
    display: flex;
    justify-content: center;
    gap: 25px;
    margin-top: 52px;
    margin-bottom: 43px;
}

.pagination a.page-numbers,
.pagination span.page-numbers {
    font-weight: 400;
    font-size: 16px;
    line-height: 14px;
    text-align: right;
    position: relative;
    padding-bottom: 3px;
}

.pagination span.page-numbers.current::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 17px;
    height: 2px;
    background-color: var(--text-color);
}

.pagination .arrow {
    display: inline-block;
    width: 10px;
    height: 10px;
    background-size: contain;
}

.pagination .arrow-prev {
    background-image: url('../img/left_arrow.svg');
    margin-right: 2px;
}

.pagination .arrow-next {
    background-image: url('../img/right_arrow.svg');
    margin-left: 2px;
}

form.childFormRegister{
    & .form-row-relative{
        position: relative;
        & .not-loading{
            position: absolute;
            right: 10px;
            bottom: 7px;
        }
    }
    & button{
        width: 100%;
  
    }
}

.um .um-form form{
    & .um-field-label label {
        font-size: 16px !important;
        line-height: 1.2 !important;
        display: inline-block;
        margin: 0 0 18px;
        font-weight: 500;
        color: #fff;
    }
    & input[type=password],
    & input[type=search],
    & input[type=tel],
    & input[type=text],
    & textarea{
        height: 46px !important;
        line-height: 46px !important;
        font-size: 16px !important;
        border-radius: 0;
        border: 1px solid #9D9D9D !important;
        padding: 0 14px !important;
        background: transparent;
        box-shadow: none;
        color: #fff;
        &:focus{
            background: transparent;
        }
    }
    & input[type=submit].um-button, 
    & input[type=submit].um-button:focus{
        width: 100% !important;
        height: 46px !important;
        padding: 0 16px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 46px !important;
        border-radius: 0 !important;
        transform: translateY(-5px) !important;
        font-size: 16px;
        position: relative;
        color: var(--theme-button-text-initial-color);
        border: var(--theme-button-border);
        background-color: var(--theme-button-background-initial-color);
        &:hover{
            color: var(--theme-button-text-hover-color);
            border-color: var(--theme-button-border-hover-color);
            background-color: var(--theme-button-background-hover-color);
        }
    }
}
/* Registration Form - Send Code Button Styles */
.childFormRegister .verifycode-wrapper {
    display: flex !important;
    gap: 15px !important;
    position: relative;
    align-items: center;
}

.childFormRegister .verifycode-wrapper input[type="text"] {
    flex: 0 0 calc(75% - 7.5px) !important;
    width: calc(75% - 7.5px) !important;
    border-radius: 4px !important;
    border: 1px solid #ddd !important;
    padding: 8px 12px !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.childFormRegister .send-code-btn {
    flex: 0 0 calc(25% - 7.5px) !important;
    width: calc(25% - 7.5px) !important;
    background: #195C36 !important;
    color: #fff !important;
    border: 1px solid #195C36 !important;
    border-radius: 4px !important;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s ease;
    padding: 0 12px !important;
    margin: 0 !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    line-height: 1 !important;
    position: relative !important;
    transform: none !important;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box !important;
}

.childFormRegister .send-code-btn:hover {
    background: #178F4B !important;
    border-color: #178F4B !important;
    box-shadow: 0 4px 12px rgba(23, 143, 75, 0.4);
}

.childFormRegister .send-code-btn:disabled {
    background: #2a2a2a87 !important;
    border-color: #2a2a2a87 !important;
    cursor: not-allowed;
    opacity: 1;
}

.childFormRegister .send-code-btn .spinner {
    display: none;
    margin-right: 5px;
}

.childFormRegister .send-code-btn.loading .spinner {
    display: inline-block;
    animation: spin 1s linear infinite;
}

.childFormRegister .send-code-btn.loading .btn-text {
    display: none;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Registration Form - Error Messages */
.childFormRegister .error-message {
    display: block;
    color: #dc3232;
    font-size: 13px;
    margin-top: 5px;
    margin-bottom: 0;
    line-height: 1.4;
}

.childFormRegister .error-message:empty {
    display: none;
}

.childFormRegister input.error,
.childFormRegister input.woocommerce-invalid {
    border-color: #dc3232 !important;
}

.childFormRegister input.error:focus,
.childFormRegister input.woocommerce-invalid:focus {
    border-color: #dc3232 !important;
    box-shadow: 0 0 0 1px #dc3232 !important;
}

/* WooCommerce notices in registration form */
.childFormRegister .woocommerce-error,
.childFormRegister .woocommerce-message {
    margin-bottom: 20px;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .childFormRegister .verifycode-wrapper {
        gap: 10px !important;
    }
    
    .childFormRegister .verifycode-wrapper input[type="text"] {
        flex: 0 0 calc(70% - 5px) !important;
        width: calc(70% - 5px) !important;
        height: 42px !important;
        font-size: 14px;
    }
    
    .childFormRegister .send-code-btn {
        flex: 0 0 calc(30% - 5px) !important;
        width: calc(30% - 5px) !important;
        font-size: 12px;
        padding: 0 8px !important;
        height: 42px !important;
    }
}

/* Password Toggle Button Styles */
.childFormRegister .password-field-wrapper {
    position: relative;
}

.childFormRegister .password-input-wrapper {
    position: relative;
    display: block;
    width: 100%;
}

.childFormRegister .password-input-wrapper input[type="password"],
.childFormRegister .password-input-wrapper input[type="text"] {
    padding-right: 45px !important;
    width: 100% !important;
    display: block !important;
}

.childFormRegister .password-toggle-btn {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    padding: 5px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    transition: color 0.3s ease;
    z-index: 2;
    width: 30px;
    height: 30px;
}

.childFormRegister .password-toggle-btn:hover {
    color: #178F4B;
}

.childFormRegister .password-toggle-btn:focus {
    outline: none;
}

.childFormRegister .password-toggle-btn .eye-icon {
    display: block;
    width: 20px;
    height: 20px;
}

/* Hide Privacy Policy Text */
.childFormRegister .woocommerce-privacy-policy-text,
.woocommerce-privacy-policy-text {
    display: none !important;
}

/* reCAPTCHA Styles */
.childFormRegister .wpcaptcha-captcha-wrap,
.childFormRegister label[for="wpcaptcha_captcha"] {
    display: block;
    width: 100%;
}

.childFormRegister label[for="wpcaptcha_captcha"] {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 10px;
}

.childFormRegister .wpcaptcha-captcha-img {
    vertical-align: middle;
    margin: 0;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 5px;
    background: #fff;
    flex-shrink: 0;
}

.childFormRegister input[name*="wpcaptcha_captcha"] {
    flex: 1;
    min-width: 80px;
    display: inline-block !important;
    margin: 0 !important;
    padding: 8px 12px !important;
    height: 42px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
}

@media (max-width: 768px) {
    .childFormRegister label[for="wpcaptcha_captcha"] {
        font-size: 13px;
        gap: 8px;
    }
    
    .childFormRegister .wpcaptcha-captcha-img {
        padding: 3px;
    }
    
    .childFormRegister input[name*="wpcaptcha_captcha"] {
        min-width: 60px;
    }
}

/* Verification hint moved to JS - see script.js addTurnstileVerificationHint() */
/* .cf-turnstile.sct-woocommerce-login::after,
.cf-turnstile.sct-woocommerce-register::after {
    content: "";
    display: block;
    margin-top: 10px;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.5;
    padding-left: 24px;
    background-image: url('https://syrasage.com/wp-content/uploads/2025/12/14361765333911_.pic_hd.png');
    background-size: 14px 14px;
    background-repeat: no-repeat;
    background-position: left center;
}

.cf-turnstile.sct-woocommerce-login::after {
    content: "Please complete the verification first, then click Log in.";
}

.cf-turnstile.sct-woocommerce-register::after {
    content: "Please complete the verification first, then click Register.";
} */

/* Mobile: move Sign up next to Login heading and style the button */
@media (max-width: 1023px) {
    .elementor-14 {
        position: relative;
    }

    /* removed extra right padding so heading stays centered on mobile */

    .elementor-14 .wc-login-signup-anchor {
        position: absolute;
        top: -50px;
        right: 0;
        padding: 10px;
        background-color: #195c36;
        color: #ffffff !important;
        text-decoration: none;
        border-radius: 4px;
        font-size: 14px;
        line-height: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        z-index: 9999;
    }

    .elementor-14 .wc-login-signup-anchor:hover {
        background-color: #188f4b;
        color: #ffffff !important;
    }
}

.wc-block-components-checkbox.wc-block-components-payment-methods__save-card-info {
    margin-top: 20px;
}
