.gpma-widget{color:#162033;--gpma-primary:#5320e2;--gpma-secondary:#7c4ff5;--gpma-gradient:linear-gradient(135deg,#5320e2,#7c4ff5);--gpma-soft:#f5f3ff;--gpma-border:#e9e5ff;--gpma-text:#162033;--gpma-muted:#64748b;font-family:Inter,"Segoe UI",Arial,sans-serif}
.gpma-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.gpma-sort{height:44px;border:1px solid var(--gpma-border);border-radius:14px;background:#fff;padding:0 14px;font-weight:700}.gpma-found{font-weight:700;color:var(--gpma-muted)}
.gpma-layout{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:start}.gpma-sidebar{background:#fff;border:1px solid var(--gpma-border);border-radius:28px;padding:28px;box-shadow:0 18px 45px rgba(83,32,226,.08)}
.gpma-section{border-bottom:1px solid #ececf4;padding-bottom:23px;margin-bottom:23px}.gpma-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.gpma-title{font-size:19px;font-weight:900;line-height:1.2;color:var(--gpma-text);margin:0 0 15px}.gpma-head .gpma-title{margin:0}.gpma-toggle{width:36px;height:36px;border:0;border-radius:50%;background:#ede8ff;color:var(--gpma-primary);font-size:22px;font-weight:900;cursor:pointer}.gpma-note{font-size:13px;color:var(--gpma-muted)}
.gpma-search{display:flex;gap:8px;border:1px solid #dfe3ef;border-radius:16px;padding:5px;background:#fff}.gpma-search input{flex:1;border:0;outline:0;min-width:0;padding:0 12px;font-size:15px}.gpma-search button{width:48px;height:48px;border:0;border-radius:12px;background-color:var(--gpma-primary);color:#fff;font-size:22px;font-weight:900;cursor:pointer}
.gpma-filter-row{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:15px;font-weight:700;color:#2c3650;cursor:pointer}.gpma-filter-row input{width:18px;height:18px;margin:0;accent-color:var(--gpma-primary)}.gpma-filter-row span{line-height:1.3}.gpma-filter-row b{margin-left:auto;background:var(--gpma-soft);color:var(--gpma-primary);font-size:12px;font-weight:900;padding:5px 9px;border-radius:999px}.gpma-filter-row.is-active span{color:var(--gpma-primary)}
.gpma-brand-list{max-height:235px;overflow-y:auto;padding-right:8px}.gpma-category-list{max-height:260px;overflow-y:auto;padding-right:8px}.gpma-brand-list::-webkit-scrollbar,.gpma-category-list::-webkit-scrollbar{width:5px}.gpma-brand-list::-webkit-scrollbar-thumb,.gpma-category-list::-webkit-scrollbar-thumb{background:var(--gpma-primary);border-radius:999px}
.gpma-price{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gpma-price input{height:50px;border:1px solid #dfe3ef;border-radius:15px;padding:0 14px;outline:0}.gpma-price input:focus,.gpma-search:focus-within{border-color:var(--gpma-primary);box-shadow:0 0 0 3px rgba(83,32,226,.1)}
.gpma-stars{color:#f97316;letter-spacing:1.5px;font-size:18px}.gpma-rating-row{padding:8px 0}
.gpma-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gpma-products.is-loading{opacity:.45;pointer-events:none}.gpma-empty{grid-column:1/-1;background:#fff;border:1px solid var(--gpma-border);border-radius:20px;padding:30px;text-align:center;color:var(--gpma-muted);font-weight:800}
.gpma-product-card{background:#fff;border: var(--gpma-card-border-width, 1px) solid var(--gpma-card-border-color, #dde2ea);border-radius:14px;overflow:hidden;position:relative;transition:.25s}.gpma-product-card:hover{box-shadow:0 18px 45px rgba(83,32,226,.08);transform:translateY(-4px)}.gpma-wishlist{position:absolute;top:14px;right:16px;z-index:2;background:transparent;border:0;font-size:24px;line-height:1;color:#001225}.gpma-sale-badge{position:absolute;left:12px;top:12px;z-index:2;background-color:var(--gpma-primary);color:#fff;border-radius:99px;padding:6px 10px;font-size:12px;font-weight:900}.gpma-product-image{height:240px;display:flex;align-items:center;justify-content:center;padding:20px;background:#fff}.gpma-product-image img{max-width:100%;max-height:100%;object-fit:contain}.gpma-product-body{padding:0 18px 18px}.gpma-product-body h3{font-size:16px;line-height:1.3;margin:0 0 8px}.gpma-product-body h3 a{color:#001225;text-decoration:none}.gpma-product-rating{min-height:18px;margin-bottom:6px}.gpma-product-rating .star-rating{float:none;margin:0}.gpma-product-price{font-size:17px;font-weight:900;color:#001225;margin-bottom:15px}.gpma-product-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gpma-details,.gpma-cart,a.gpma-cart,button.gpma-cart{display:flex;align-items:center;justify-content:center;height:40px;border-radius:8px;font-weight:900;text-decoration:none!important}.gpma-details{background:#001225;color:#fff!important}.gpma-cart,a.gpma-cart,button.gpma-cart{border:1px solid #d1d5db}
.gpma-pagination{display:flex;justify-content:center;gap:8px;margin-top:25px;flex-wrap:wrap}.gpma-page{width:42px;height:42px;border:1px solid var(--gpma-border);background:#fff;border-radius:12px;font-weight:900;cursor:pointer}.gpma-page.active{background-color:var(--gpma-primary);color:#fff}.gpma-loop-item{min-width:0}
@media(max-width:1024px){.gpma-layout{grid-template-columns:1fr!important}.gpma-products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.gpma-sidebar{padding:22px;border-radius:22px}.gpma-toolbar{align-items:flex-start;flex-direction:column}.gpma-products{grid-template-columns:1fr}.gpma-price,.gpma-product-actions{grid-template-columns:1fr}.gpma-product-image{height:210px}}


/* Grovaity fixed brand defaults: avoid inheriting theme/global colors */
.gpma-widget,
.gpma-widget * {
    box-sizing: border-box;
}

:where(.gpma-widget) .gpma-sidebar {
    border-color: #e9e5ff;
}

:where(.gpma-widget) .gpma-title {
    color: #162033;
}

:where(.gpma-widget) .gpma-filter-row span {
    color: #2c3650;
}

:where(.gpma-widget) .gpma-filter-row input {
    accent-color: #5320e2;
}

:where(.gpma-widget) .gpma-filter-row b {
    background: #f5f3ff;
    color: #5320e2;
}

:where(.gpma-widget) .gpma-filter-row.is-active span {
    color: #5320e2;
}

:where(.gpma-widget) .gpma-search button,
:where(.gpma-widget) .gpma-page.active,
:where(.gpma-widget) .gpma-sale-badge {
    background-color: #5320e2;
    color: #ffffff;
}

:where(.gpma-widget) .gpma-toggle {
    background: #ede8ff;
    color: #5320e2;
}


/* v1.0.6 icon alignment fixes */
:where(.gpma-widget) .gpma-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    text-align: center !important;
    vertical-align: middle;
    transition: .22s ease;
}

:where(.gpma-widget) .gpma-search button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    text-align: center !important;
    padding: 0 !important;
    transition: .22s ease;
}

:where(.gpma-widget) .gpma-search button .gpma-search-icon {
    width: 18px;
    height: 18px;
    display: block;
    flex: 0 0 auto;
}

:where(.gpma-widget) .gpma-rating-row input:checked + .gpma-stars {
    color: #5320e2;
}


/* v1.0.7 content icons, scrollbar controls and alignment fixes */
:where(.gpma-widget) .gpma-toggle-icons {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

:where(.gpma-widget) .gpma-toggle-icon,
:where(.gpma-widget) .gpma-toggle-icon svg,
:where(.gpma-widget) .gpma-search-icon,
:where(.gpma-widget) .gpma-search-icon svg {
    width: 18px;
    height: 18px;
    display: block;
    line-height: 1;
    color: currentColor;
    fill: currentColor;
}

:where(.gpma-widget) .gpma-toggle .gpma-toggle-plus {
    display: none;
}

:where(.gpma-widget) .gpma-toggle .gpma-toggle-minus {
    display: block;
}

:where(.gpma-widget) .gpma-toggle.is-collapsed .gpma-toggle-plus {
    display: block;
}

:where(.gpma-widget) .gpma-toggle.is-collapsed .gpma-toggle-minus {
    display: none;
}

:where(.gpma-widget) .gpma-toggle svg,
:where(.gpma-widget) .gpma-search button svg {
    color: currentColor;
    fill: currentColor;
}



:where(.gpma-widget) .gpma-sort-wrap {
    display: flex;
    flex: 1;
    justify-content: flex-end;
    min-width: 0;
}

:where(.gpma-widget) .gpma-sort {
    outline: none;
}

:where(.gpma-widget) .gpma-stars {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: #f97316;
    letter-spacing: 0;
}

:where(.gpma-widget) .gpma-star-icon,
:where(.gpma-widget) .gpma-star-icon svg {
    width: 18px;
    height: 18px;
    display: block;
    fill: currentColor;
    color: currentColor;
}


/* v1.0.9 pagination and style control fixes */
:where(.gpma-widget) .gpma-page {
    background-color:#5320e2;
    color: #ffffff;
}

:where(.gpma-widget) .gpma-page:hover,
:where(.gpma-widget) .gpma-page.active {
    background-color:#FF7A00;
    color: #ffffff;
}

:where(.gpma-widget) .gpma-sort {
    color: #162033;
}


/* v1.1.0 cleanup: no duplicate Search Box section, fixed pagination padding, sort padding */
:where(.gpma-widget) .gpma-page {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    line-height: 1;
}

:where(.gpma-widget) .gpma-sort {
    min-height: 44px;
    box-sizing: border-box;
}

:where(.gpma-widget) .gpma-search button {
    min-width: 48px;
    min-height: 48px;
}


/* v1.1.1 Default product card section support */
:where(.gpma-widget) .gpma-details,
:where(.gpma-widget) .gpma-cart {
    transition: .22s ease;
}

:where(.gpma-widget) .gpma-search button {
    background-image: none;
}


/* v1.0.11 responsive offcanvas filter */
:where(.gpma-widget) .gpma-responsive-filter-bar {
    display: none;
    margin-bottom: 16px;
}

:where(.gpma-widget) .gpma-responsive-filter-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid transparent;
    border-radius: 12px;
    padding: 12px 18px;
    background-color:#5320e2;
    color: #ffffff;
    font-weight: 800;
    cursor: pointer;
    transition: .22s ease;
}

:where(.gpma-widget) .gpma-responsive-filter-icon,
:where(.gpma-widget) .gpma-responsive-filter-icon svg {
    width: 16px;
    height: 16px;
    display: block;
    fill: currentColor;
    color: currentColor;
}

:where(.gpma-widget) .gpma-offcanvas-overlay,
:where(.gpma-widget) .gpma-filter-close {
    display: none;
}

@media (max-width: 1024px) {
    :where(.gpma-widget) .gpma-responsive-filter-bar {
        display: flex;
    }

    :where(.gpma-widget) .gpma-layout {
        grid-template-columns: 1fr !important;
    }

    :where(.gpma-widget) .gpma-sidebar {
        position: fixed;
        top: 0;
        left: 0;
        width: min(88vw, 390px);
        height: 100vh;
        overflow-y: auto;
        z-index: 99999;
        transform: translateX(-105%);
        transition: transform .28s ease;
        border-radius: 0 24px 24px 0;
        padding-top: 64px;
    }

    .gpma-widget.gpma-filter-open .gpma-sidebar {
        transform: translateX(0);
    }

    :where(.gpma-widget) .gpma-offcanvas-overlay {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(2, 8, 23, .55);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        z-index: 99998;
        transition: .25s ease;
    }

    .gpma-widget.gpma-filter-open .gpma-offcanvas-overlay {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    :where(.gpma-widget) .gpma-filter-close {
        display: flex;
        position: absolute;
        top: 16px;
        right: 16px;
        width: 36px;
        height: 36px;
        align-items: center;
        justify-content: center;
        border: 0;
        border-radius: 50%;
        background: #ede8ff;
        color: #5320e2;
        font-size: 24px;
        line-height: 1;
        cursor: pointer;
    }
}

@media (max-width: 767px) {
    :where(.gpma-widget) .gpma-sidebar {
        width: min(92vw, 360px);
    }
}


/* v1.0.13 responsive button render fix */
:where(.gpma-widget) .gpma-responsive-filter-bar {
    display: none;
    margin-bottom: 16px;
}

@media (max-width: 1024px) {
    :where(.gpma-widget) .gpma-responsive-filter-bar {
        display: flex !important;
        width: 100%;
    }

    :where(.gpma-widget) .gpma-responsive-filter-btn {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 8px;
        border: 1px solid transparent;
        border-radius: 12px;
        padding: 12px 18px;
        background-color:#5320e2;
        color: #ffffff;
        font-weight: 800;
        cursor: pointer;
    }

    :where(.gpma-widget) .gpma-responsive-filter-icon,
    :where(.gpma-widget) .gpma-responsive-filter-icon svg {
        width: 16px;
        height: 16px;
        display: block;
        fill: currentColor;
        color: currentColor;
    }
}


/* v1.0.14 responsive sidebar full height fix */
@media (max-width: 1024px) {
    :where(.gpma-widget) .gpma-sidebar {
        height: 100vh;
        height: 100dvh;
        max-height: 100dvh;
        overflow-y: auto;
    }
}


/* v1.0.15 sidebar wrapper responsive width/unit fix */
@media (max-width: 1024px) {
    :where(.gpma-widget) .gpma-sidebar {
        height: 100vh;
        height: 100dvh;
        max-height: 100dvh;
    }
}


/* v1.0.16 default accordion state */
:where(.gpma-widget) .gpma-default-closed {
    display: none;
}


/* v1.0.17 Grovaity Product Search Widget */
.gpma-product-search-widget {
    --gpma-primary:#5320e2;
    --gpma-secondary:#7c4ff5;
    --gpma-gradient:linear-gradient(135deg,#5320e2,#7c4ff5);
    font-family: Inter,"Segoe UI",Arial,sans-serif;
}

.gpma-product-search-open {
    display: none;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 12px;
    width: 48px;
    height: 48px;
    background-color: var(--gpma-primary);
    color: #fff;
    cursor: pointer;
}

.gpma-product-search-open svg,
.gpma-product-search-submit svg,
.gpma-product-search-close svg {
    width: 18px;
    height: 18px;
    display: block;
    fill: currentColor;
    color: currentColor;
}

.gpma-product-search-panel {
    display: block;
}

.gpma-search-widget-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #e9e5ff;
    border-radius: 16px;
    padding: 6px;
    box-shadow: 0 12px 28px rgba(83,32,226,.08);
}

.gpma-product-search-input {
    flex: 1;
    min-width: 0;
    height: 48px;
    border: 1px solid transparent;
    border-radius: 12px;
    outline: none;
    padding: 0 14px;
    color: #162033;
}

.gpma-product-search-input:focus {
    border-color: #5320e2;
}

.gpma-product-search-submit,
.gpma-product-search-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0;
    border-radius: 12px;
    min-width: 48px;
    height: 48px;
    padding: 0 16px;
    cursor: pointer;
}

.gpma-product-search-submit {
    background-color: var(--gpma-primary);
    color: #fff;
}

.gpma-product-search-close {
    background: #ede8ff;
    color: #5320e2;
}

@media (max-width: 1024px) {
    .gpma-product-search-open {
        display: inline-flex;
    }

    .gpma-product-search-panel {
        display: none;
        margin-top: 12px;
    }

    .gpma-product-search-widget.is-search-open .gpma-product-search-panel {
        display: block;
    }

    .gpma-product-search-widget .gpma-search-widget-wrap {
        width: 100%;
    }
}

@media (min-width: 1025px) {
    .gpma-product-search-panel {
        display: block !important;
    }
}


/* v1.0.18 default product card equal height */
.gpma-widget.gpma-default-card-equal-height .gpma-products {
    align-items: stretch;
}

.gpma-widget.gpma-default-card-equal-height .gpma-product-card,
.gpma-equal-height-yes .gpma-product-card {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.gpma-widget.gpma-default-card-equal-height .gpma-product-body,
.gpma-equal-height-yes .gpma-product-body {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.gpma-widget.gpma-default-card-equal-height .gpma-product-actions,
.gpma-equal-height-yes .gpma-product-actions {
    margin-top: auto;
}


/* v1.0.19 Product Search desktop/responsive behavior fix */
@media (min-width: 1025px) {
    .gpma-product-search-widget .gpma-product-search-open {
        display: none !important;
    }

    .gpma-product-search-widget .gpma-product-search-panel {
        display: block !important;
        margin-top: 0;
    }

    .gpma-product-search-widget .gpma-search-widget-wrap {
        display: flex;
        align-items: center;
        gap: 6px;
        border: 1px solid #dfe3ef;
        border-radius: 16px;
        padding: 5px;
        background: #ffffff;
        box-shadow: none;
    }

    .gpma-product-search-widget .gpma-product-search-input {
        height: 48px;
        border: 0;
        outline: 0;
        box-shadow: none;
        background: transparent;
        padding: 0 14px;
    }

    .gpma-product-search-widget .gpma-product-search-submit {
        width: 48px;
        min-width: 48px;
        height: 48px;
        padding: 0;
        border-radius: 12px;
    }

    .gpma-product-search-widget .gpma-product-search-submit span {
        display: none;
    }

    .gpma-product-search-widget .gpma-product-search-close {
        display: none !important;
    }
}

@media (max-width: 1024px) {
    .gpma-product-search-widget .gpma-product-search-close {
        display: inline-flex;
    }

    .gpma-product-search-widget .gpma-product-search-submit span {
        display: inline;
    }
}


/* v1.0.21 responsive search slide from top */
@media (max-width: 1024px) {
    .gpma-product-search-widget .gpma-product-search-panel {
        display: block !important;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 999999;
        padding: 16px;
        background: #ffffff;
        transform: translateY(-120%);
        opacity: 0;
        visibility: hidden;
        transition: transform .28s ease, opacity .22s ease, visibility .22s ease;
        box-shadow: 0 18px 45px rgba(15, 23, 42, .16);
    }

    .gpma-product-search-widget.is-search-open .gpma-product-search-panel {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }

    .gpma-product-search-widget .gpma-search-widget-wrap {
        width: min(100%, 720px);
        margin: 0 auto;
    }

    .gpma-product-search-widget .gpma-product-search-open {
        display: inline-flex !important;
    }
}

@media (max-width: 767px) {
    .gpma-product-search-widget .gpma-product-search-panel {
        padding: 12px;
    }

    .gpma-product-search-widget .gpma-search-widget-wrap {
        gap: 8px;
    }
}


/* v1.0.50 Elementor Template Card Equal Height - outer wrapper only
   Do not touch Elementor Loop Item inner content/design. */
.gpma-widget.gpma-product-equal-height .gpma-products {
    align-items: stretch;
    grid-auto-rows: 1fr;
}

.gpma-widget.gpma-product-equal-height .gpma-products > .gpma-loop-item {
    min-width: 0;
    height: 100%;
    min-height: 100%;
}

.gpma-widget.gpma-product-equal-height .gpma-products > .gpma-loop-item > .elementor,
.gpma-widget.gpma-product-equal-height .gpma-products > .gpma-loop-item > .elementor > .elementor-element {
    height: 100%;
    min-height: 100%;
}

/* v1.0.23 remove unwanted title-to-price gap */
:where(.gpma-widget) .gpma-product-rating:empty {
    display: none !important;
    min-height: 0 !important;
    margin: 0 !important;
}

:where(.gpma-widget) .gpma-product-body h3 {
    margin-bottom: 8px;
}

:where(.gpma-widget) .gpma-product-price {
    margin-top: 0;
}


/* v1.0.25 variation popup */
.gpma-variation-popup {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
}

.gpma-variation-popup.is-open {
    display: block;
}

.gpma-variation-overlay {
    position: absolute;
    inset: 0;
    background: rgba(2, 8, 23, .62);
}

.gpma-variation-box {
    position: relative;
    z-index: 2;
    width: min(92vw, 460px);
    max-height: 88vh;
    overflow-y: auto;
    margin: 6vh auto 0;
    background: #fff;
    border-radius: 24px;
    padding: 24px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .24);
}

.gpma-variation-close {
    position: absolute;
    right: 16px;
    top: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: #ede8ff;
    color: #5320e2;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}

.gpma-variation-title {
    margin: 0 42px 16px 0;
    font-size: 20px;
    font-weight: 900;
    color: #162033;
}

.gpma-variation-product {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    color: #162033;
}

.gpma-variation-product img {
    width: 70px;
    height: 70px;
    object-fit: contain;
}

.gpma-variation-field {
    display: block;
    margin-bottom: 14px;
}

.gpma-variation-field span {
    display: block;
    margin-bottom: 7px;
    font-weight: 800;
    color: #162033;
}

.gpma-variation-field select,
.gpma-variation-field input {
    width: 100%;
    height: 46px;
    border: 1px solid #dfe3ef;
    border-radius: 12px;
    padding: 0 12px;
    outline: none;
}

.gpma-variation-field select:focus,
.gpma-variation-field input:focus {
    border-color: #5320e2;
}

.gpma-variation-notice {
    min-height: 18px;
    margin: 6px 0 12px;
    font-size: 13px;
    font-weight: 700;
}

.gpma-variation-notice.is-error {
    color: #ef233c;
}

.gpma-variation-submit {
    width: 100%;
    height: 52px;
    border: 0;
    border-radius: 999px;
    background-color:#5320e2;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}


/* v1.0.26 variation popup clipping/layout fix */
body.gpma-variation-open {
    overflow: hidden;
}

body > .gpma-variation-popup {
    position: fixed !important;
    inset: 0 !important;
    z-index: 9999999 !important;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
}

body > .gpma-variation-popup .gpma-variation-overlay {
    position: fixed !important;
    inset: 0 !important;
}

body > .gpma-variation-popup .gpma-variation-box {
    position: fixed !important;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: min(92vw, 460px);
    max-height: calc(100dvh - 40px);
    overflow-y: auto;
    margin: 0 !important;
    padding-bottom: 26px;
}

.gpma-variation-popup .gpma-variation-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    margin-top: 12px;
}

.gpma-variation-popup .gpma-variation-field select,
.gpma-variation-popup .gpma-variation-field input {
    box-sizing: border-box;
}

@media (max-width: 767px) {
    body > .gpma-variation-popup .gpma-variation-box {
        width: calc(100vw - 24px);
        max-height: calc(100dvh - 24px);
    }
}


/* v1.0.27 variation buttons and quantity control */
.gpma-variation-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.gpma-variation-option {
    min-height: 44px;
    padding: 8px 16px;
    border: 1px solid #dfe3ef;
    border-radius: 8px;
    background: #fff;
    color: #162033;
    font-weight: 700;
    cursor: pointer;
    transition: .2s ease;
}

.gpma-variation-option:hover,
.gpma-variation-option.is-selected {
    border-color: #5320e2;
    background: #f5f3ff;
    color: #5320e2;
}

.gpma-qty-field {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.gpma-qty-field > span {
    margin: 0;
    flex: 0 0 auto;
    text-transform: uppercase;
}

.gpma-qty-control {
    flex: 1;
    display: grid;
    grid-template-columns: 48px 1fr 48px;
    align-items: center;
    border: 1px solid #dfe3ef;
    border-radius: 8px;
    overflow: hidden;
    max-width: 190px;
    background: #fff;
}

.gpma-qty-control button {
    height: 44px;
    border: 0;
    background: transparent;
    color: #162033;
    font-size: 20px;
    font-weight: 900;
    cursor: pointer;
}

.gpma-qty-control input {
    height: 44px !important;
    border: 0 !important;
    border-left: 1px solid #f1f5f9 !important;
    border-right: 1px solid #f1f5f9 !important;
    border-radius: 0 !important;
    text-align: center;
    padding: 0 !important;
    -moz-appearance: textfield;
}

.gpma-qty-control input::-webkit-outer-spin-button,
.gpma-qty-control input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.gpma-variation-close {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center;
    padding: 0 !important;
}


/* v1.0.28 variation popup default Grovaity design + quantity icon center fix */
.gpma-variation-popup,
.gpma-variation-popup * {
    box-sizing: border-box;
}

.gpma-variation-box {
    background: #ffffff;
    color: #162033;
}

.gpma-variation-option {
    background: #ffffff;
    color: #162033;
    border: 1px solid #dfe3ef;
}

.gpma-variation-option:hover,
.gpma-variation-option.is-selected {
    background-color:#5320e2;
    color: #ffffff;
    border-color: #5320e2;
}

.gpma-qty-control {
    background: #ffffff;
    color: #162033;
    border-color: #dfe3ef;
}

.gpma-qty-control button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 44px !important;
    font-size: 20px !important;
    font-weight: 900 !important;
    border-radius: 0 !important;
}

.gpma-qty-control input {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 44px !important;
    font-weight: 700;
}

.gpma-variation-submit {
    background-color:#5320e2;
    color: #ffffff;
}

.gpma-variation-close {
    background-color:#5320e2;
    color: #ffffff;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}


/* v1.0.31 direct checkout: hide WooCommerce added-to-cart view cart link in GPMA cards */
:where(.gpma-widget) .gpma-default-product-card .added_to_cart,
:where(.gpma-widget) .gpma-default-product-card a.added_to_cart {
    display: none !important;
}


/* v1.0.32 safe scope for order/popup logic */
:where(.gpma-widget) .gpma-loop-item .gpma-variable-order,
:where(.gpma-widget) .gpma-loop-item .gpma-direct-checkout,
:where(.gpma-widget) .gpma-loop-item .gpma-cart {
    /* Elementor Loop Item custom buttons are not controlled by GPMA popup logic */
}


/* v1.0.33 clean checkout URL loading state */
.gpma-default-order-btn.is-loading,
.gpma-variation-form.is-loading .gpma-variation-submit {
    opacity: .7;
    pointer-events: none;
}


/* v1.0.34: GPMA order scripts are scoped only to .gpma-default-product-card */
:where(.gpma-widget) .gpma-loop-item a,
:where(.gpma-widget) .gpma-loop-item button {
    /* No interception by GPMA order popup/direct checkout script */
}


/* v1.0.37 product card hardcoded border fix */
.gpma-widget {
    --gpma-card-border-width: 1px;
    --gpma-card-border-color: #dde2ea;
}

:where(.gpma-widget) .gpma-product-card {
    border: var(--gpma-card-border-width) solid var(--gpma-card-border-color);
}

/* When Elementor Border control sets border: none, allow it to win */
:where(.gpma-widget) .gpma-product-card[style*="border-style: none"],
:where(.gpma-widget) .gpma-product-card[style*="border-style:none"] {
    border-width: 0 !important;
}


/* v1.0.38 full widget wrapper border fix */
.gpma-widget {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none;
}

:where(.gpma-widget) .gpma-layout,
:where(.gpma-widget) .gpma-main,
:where(.gpma-widget) .gpma-toolbar {
    border: 0 !important;
    outline: 0 !important;
}

/* Keep border editable only on actual product cards, not whole widget */
.gpma-widget > .gpma-products,
.gpma-widget > .gpma-layout {
    --gpma-card-border-width: initial;
    --gpma-card-border-color: initial;
}

:where(.gpma-widget) .gpma-product-card {
    border: var(--gpma-card-border-width, 1px) solid var(--gpma-card-border-color, #dde2ea);
}


/* v1.0.43 Safe Style Isolation
   Purpose: website global font/color/button styles won't control GPMA UI.
   Rule: no new input border/radius/background is added here; existing style + Style Tab remain unchanged.
*/
.gpma-widget,
.gpma-product-search-widget,
.gpma-variation-popup {
    --gpma-font: Inter, "Segoe UI", Arial, sans-serif;
    font-family: var(--gpma-font);
    color: #162033;
}

.gpma-widget *,
.gpma-product-search-widget *,
.gpma-variation-popup * {
    box-sizing: border-box;
}

/* Reset only plugin-owned buttons/links, not generic website or Elementor template buttons */
:where(.gpma-widget) .gpma-toggle,
:where(.gpma-widget) .gpma-details,
:where(.gpma-widget) .gpma-cart,
:where(.gpma-widget) .gpma-search button,
:where(.gpma-widget) .gpma-page,
:where(.gpma-widget) .gpma-wishlist,
:where(.gpma-widget) .gpma-responsive-filter-btn,
.gpma-product-search-widget .gpma-product-search-open,
.gpma-product-search-widget .gpma-product-search-submit,
.gpma-product-search-widget .gpma-product-search-close,
.gpma-variation-popup .gpma-variation-submit,
.gpma-variation-popup .gpma-variation-close,
.gpma-variation-popup .gpma-variation-option,
.gpma-variation-popup .gpma-qty-control button {
    font-family: var(--gpma-font);
    text-decoration: none;
    text-transform: none;
    letter-spacing: normal;
    appearance: none;
    -webkit-appearance: none;
    box-shadow: none;
    outline: none;
}

/* Reset text only on plugin-owned elements, not generic all tags */
:where(.gpma-widget) .gpma-title,
:where(.gpma-widget) .gpma-found,
:where(.gpma-widget) .gpma-filter-row,
:where(.gpma-widget) .gpma-count,
:where(.gpma-widget) .gpma-product-body h3,
:where(.gpma-widget) .gpma-product-body h3 a,
:where(.gpma-widget) .gpma-product-price,
.gpma-variation-popup .gpma-variation-title,
.gpma-variation-popup .gpma-variation-product,
.gpma-variation-popup .gpma-variation-field > span {
    font-family: var(--gpma-font);
}

/* Variation popup uses variables so Elementor style controls work even after popup moves to body */
.gpma-variation-popup {
    --gpma-vp-option-color: #162033;
    --gpma-vp-option-bg: #ffffff;
    --gpma-vp-option-border-color: #dfe3ef;
    --gpma-vp-option-active-color: #ffffff;
    --gpma-vp-option-active-bg: #5320e2;
    --gpma-vp-option-active-border-color: #5320e2;
    --gpma-vp-close-color: #ffffff;
    --gpma-vp-close-bg: #5320e2;
}

.gpma-variation-popup .gpma-variation-option {
    color: var(--gpma-vp-option-color);
    background: var(--gpma-vp-option-bg);
    background-image: none;
    border-color: var(--gpma-vp-option-border-color);
}

.gpma-variation-popup .gpma-variation-option:hover,
.gpma-variation-popup .gpma-variation-option.is-selected {
    color: var(--gpma-vp-option-active-color);
    background: var(--gpma-vp-option-active-bg);
    background-image: none;
    border-color: var(--gpma-vp-option-active-border-color);
}

.gpma-variation-popup .gpma-variation-close {
    color: var(--gpma-vp-close-color);
    background: var(--gpma-vp-close-bg);
    background-image: none;
}

/* Existing button sections get hover support without affecting search/input/sort styles */
:where(.gpma-widget) .gpma-details,
:where(.gpma-widget) .gpma-cart,
.gpma-variation-popup .gpma-variation-submit,
.gpma-variation-popup .gpma-variation-close,
.gpma-variation-popup .gpma-qty-control button {
    transition: all .25s ease;
}

/* Important: Elementor Loop Item template content is untouched */


/* v1.0.44 Clean popup style priority
   No hard !important on popup colors/backgrounds.
   Default style stays Grovaity, Style Tab can override.
*/
.gpma-variation-popup {
    --gpma-vp-option-color: #162033;
    --gpma-vp-option-bg: #ffffff;
    --gpma-vp-option-border-color: #dfe3ef;
    --gpma-vp-option-active-color: #ffffff;
    --gpma-vp-option-active-bg: #5320e2;
    --gpma-vp-option-active-border-color: #5320e2;
    --gpma-vp-close-color: #ffffff;
    --gpma-vp-close-bg: #5320e2;
}

.gpma-variation-popup .gpma-variation-option {
    color: var(--gpma-vp-option-color);
    background: var(--gpma-vp-option-bg);
    border-color: var(--gpma-vp-option-border-color);
}

.gpma-variation-popup .gpma-variation-option:hover,
.gpma-variation-popup .gpma-variation-option.is-selected {
    color: var(--gpma-vp-option-active-color);
    background: var(--gpma-vp-option-active-bg);
    border-color: var(--gpma-vp-option-active-border-color);
}

.gpma-variation-popup .gpma-variation-close {
    color: var(--gpma-vp-close-color);
    background: var(--gpma-vp-close-bg);
}

/* prevent theme button styles only by targeting plugin classes, but don't block Style Tab */
.gpma-variation-popup .gpma-variation-option,
.gpma-variation-popup .gpma-variation-submit,
.gpma-variation-popup .gpma-variation-close,
.gpma-variation-popup .gpma-qty-control button {
    font-family: var(--gpma-font);
    text-transform: none;
    letter-spacing: normal;
}


/* v1.0.45 Order button style-tab priority fix */
.gpma-cart,
a.gpma-cart,
button.gpma-cart{
    transition: all .25s ease;
}


/* v1.0.47 force same style source for simple + variable order buttons */
:where(.gpma-widget) .gpma-default-order-btn,
.gpma-widget a.gpma-cart.gpma-direct-checkout,
.gpma-widget button.gpma-cart.gpma-variable-order{
    font: inherit;
}

/* remove WooCommerce/theme visual differences */
.gpma-widget a.gpma-cart.gpma-direct-checkout,
.gpma-widget button.gpma-cart.gpma-variable-order{
    appearance:none;
    -webkit-appearance:none;
    text-decoration:none !important;
}

/* same hover source */
.gpma-widget a.gpma-cart.gpma-direct-checkout:hover,
.gpma-widget button.gpma-cart.gpma-variable-order:hover{
    text-decoration:none !important;
}


/* v1.0.48 variable product order button separate style support */
:where(.gpma-widget) .gpma-variable-order {
    transition: all .25s ease;
}


/* v1.0.51 default product card order button consistency
   Simple <a.gpma-direct-checkout> and variable <button.gpma-variable-order> use the same default style.
   Elementor Style Tab can override through .gpma-cart controls, and the Variable Product Order Button section can override only variable buttons.
*/
:where(.gpma-widget) .gpma-default-product-card .gpma-cart {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 40px;
    height: auto;
    padding: 10px 16px;
    margin: 0;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    background: #ffffff;
    color: #001225;
    font-family: var(--gpma-font);
    font-size: 14px;
    font-weight: 900;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    text-transform: none;
    letter-spacing: normal;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    box-shadow: none;
    outline: none;
}

:where(.gpma-widget) .gpma-default-product-card .gpma-cart:hover {
    background: #ffffff;
    color: #001225;
    border-color: #d1d5db;
    text-decoration: none;
}

:where(.gpma-widget) .gpma-default-product-card a.gpma-direct-checkout,
:where(.gpma-widget) .gpma-default-product-card button.gpma-variable-order {
    font: inherit;
}


/* v1.0.52 default card Order Now one-line consistency fix
   Keep Simple <a> and Variable <button> visually identical without changing Elementor Template Cards.
*/
:where(.gpma-widget) .gpma-default-product-card .gpma-product-actions {
    align-items: stretch;
}

:where(.gpma-widget) .gpma-default-product-card a.gpma-direct-checkout,
:where(.gpma-widget) .gpma-default-product-card button.gpma-variable-order {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 40px;
    box-sizing: border-box;
    white-space: nowrap !important;
    word-break: keep-all;
    overflow-wrap: normal;
    line-height: 1 !important;
}

/* GPMA Wishlist Widgets */
.gpma-wishlist-icon-widget,.gpma-wishlist-page,.gpma-wishlist-counter-link{font-family:var(--gpma-font,inherit);box-sizing:border-box}.gpma-wishlist-icon-widget *,.gpma-wishlist-page *,.gpma-wishlist-counter-link *{box-sizing:border-box}.gpma-wishlist-icon-button,.gpma-wishlist-counter-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:#001225;border:1px solid #d8dee8;border-radius:10px;padding:10px 14px;text-decoration:none!important;line-height:1;cursor:pointer;transition:.2s}.gpma-wishlist-icon-button:hover,.gpma-wishlist-counter-link:hover{background:#f6f8fb;color:#001225}.gpma-wishlist-icon-button.is-active,.gpma-wishlist.is-active{color:#ff2b55}.gpma-wishlist-count,.gpma-wishlist-counter-number{min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:99px;background:#001225;color:#fff;font-size:12px;font-weight:700}.gpma-wishlist-page{width:100%;background:#fff}.gpma-wishlist-head,.gpma-wishlist-row{display:grid;grid-template-columns:1.5fr .7fr .8fr;gap:18px;align-items:center}.gpma-wishlist-head{padding:16px 18px;border:1px solid #e6eaf0;font-weight:700}.gpma-wishlist-row{margin-top:14px;padding:16px 18px;border:1px solid #e6eaf0;background:#fff}.gpma-wishlist-product{display:flex;align-items:center;gap:16px}.gpma-wishlist-product-image{width:92px;height:92px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.gpma-wishlist-product-image img{width:100%;height:100%;object-fit:cover;border-radius:6px}.gpma-wishlist-product-title{font-weight:700;color:#001225;text-decoration:none!important}.gpma-wishlist-price{font-weight:500;color:#001225}.gpma-wishlist-actions{display:flex;gap:10px;flex-wrap:wrap}.gpma-wishlist-remove,.gpma-wishlist-cart{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:#15120d;color:#fff!important;padding:11px 16px;font-weight:700;text-decoration:none!important;line-height:1;cursor:pointer}.gpma-wishlist-remove:hover,.gpma-wishlist-cart:hover{background:#001225;color:#fff!important}.gpma-wishlist-empty,.gpma-wishlist-loading{padding:24px;border:1px solid #e6eaf0;margin-top:14px;text-align:center}.gpma-wishlist.is-loading,.gpma-wishlist-icon-button.is-loading,.gpma-wishlist-remove.is-loading{opacity:.65;pointer-events:none}@media(max-width:767px){.gpma-wishlist-head{display:none}.gpma-wishlist-row{grid-template-columns:1fr;gap:12px}.gpma-wishlist-product{align-items:flex-start}.gpma-wishlist-actions{justify-content:flex-start}.gpma-wishlist-product-image{width:78px;height:78px}}


/* v1.1.2 Wishlist icon height/padding fix */
:where(.gpma-widget) .gpma-product-card .gpma-wishlist,
.gpma-product-card .gpma-wishlist {
    width: var(--gpma-wishlist-width, 36px);
    height: var(--gpma-wishlist-height, 36px);
    min-width: var(--gpma-wishlist-width, 36px);
    min-height: var(--gpma-wishlist-height, 36px);
    max-width: var(--gpma-wishlist-width, 36px);
    max-height: var(--gpma-wishlist-height, 36px);
    padding: var(--gpma-wishlist-padding, 0) !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    border: var(--gpma-wishlist-border-width, 1px) solid var(--gpma-wishlist-border-color, #dfe5ee);
    color: var(--gpma-wishlist-color, #001225);
    border-radius: var(--gpma-wishlist-radius, 50%);
    background: var(--gpma-wishlist-bg, #ffffff);
    box-shadow: var(--gpma-wishlist-shadow, none);
    cursor: pointer;
}
:where(.gpma-widget) .gpma-product-card .gpma-wishlist:hover,
.gpma-product-card .gpma-wishlist:hover {
    color: var(--gpma-wishlist-hover-color, inherit);
    background: var(--gpma-wishlist-hover-bg, #ffffff);
    border-color: var(--gpma-wishlist-hover-border-color, var(--gpma-wishlist-border-color, #dfe5ee));
}
:where(.gpma-widget) .gpma-product-card .gpma-wishlist.is-active,
.gpma-product-card .gpma-wishlist.is-active {
    color: var(--gpma-wishlist-active-color, #ff2b55);
    background: var(--gpma-wishlist-active-bg, var(--gpma-wishlist-bg, #ffffff));
    border-color: var(--gpma-wishlist-active-border-color, var(--gpma-wishlist-border-color, #dfe5ee));
}
.gpma-wishlist-icon-button {
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto;
    box-sizing: border-box;
    white-space: nowrap;
}
.gpma-wishlist-icon-button .gpma-wishlist-heart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

/* v1.1.3 Wishlist icon content controls and add/remove notice */
.gpma-wishlist-notice{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);z-index:999999;background:#001225;color:#fff;padding:12px 18px;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.18);font-size:14px;font-weight:600;line-height:1.35;opacity:0;visibility:hidden;transition:.22s ease;pointer-events:none}.gpma-wishlist-notice.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0)}


/* v1.1.4 Wishlist Icon Elementor icon library + padding/height guard */
.gpma-wishlist-icon-widget{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:auto!important;line-height:1!important;vertical-align:middle!important;}
.gpma-wishlist-icon-button.gpma-wishlist-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;line-height:1!important;box-sizing:border-box!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;white-space:nowrap!important;vertical-align:middle!important;overflow:visible!important;}
.gpma-wishlist-icon-button .gpma-wishlist-heart{display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;width:1em!important;height:1em!important;flex:0 0 auto!important;}
.gpma-wishlist-icon-button .gpma-wishlist-heart svg,.gpma-wishlist-icon-button .gpma-wishlist-heart i{display:block!important;width:1em!important;height:1em!important;line-height:1!important;}
.gpma-wishlist-icon-button .gpma-wishlist-heart-active{display:none!important;}
.gpma-wishlist-icon-button.is-active .gpma-wishlist-heart-inactive{display:none!important;}
.gpma-wishlist-icon-button.is-active .gpma-wishlist-heart-active{display:inline-flex!important;}


/* v1.1.5 Grovaity default style isolation: Style Tab > Plugin Default > Theme Global */
.gpma-widget,
.gpma-widget *,
.gpma-wishlist-icon-widget,
.gpma-wishlist-icon-widget *,
.gpma-wishlist-page,
.gpma-wishlist-page *,
.gpma-wishlist-counter-link,
.gpma-wishlist-counter-link * {
    box-sizing: border-box;
}

.gpma-widget,
.gpma-wishlist-icon-widget,
.gpma-wishlist-page,
.gpma-wishlist-counter-link {
    font-family: var(--gpma-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif);
    color: var(--gpma-text-color, #001225);
    line-height: 1.4;
}

.gpma-widget a,
.gpma-widget button:not(.gpma-apply-btn):not(.gpma-reset-btn),
.gpma-wishlist-icon-widget a,
.gpma-wishlist-icon-widget button,
.gpma-wishlist-page a,
.gpma-wishlist-page button,
.gpma-wishlist-counter-link {
    font-family: inherit;
    text-decoration: none;
    box-shadow: none;
    outline: none;
    letter-spacing: normal;
    text-transform: none;
}

.gpma-wishlist-icon-button.gpma-wishlist-toggle {
    appearance: none;
    -webkit-appearance: none;
    background: var(--gpma-wishlist-icon-bg, #ffffff);
    color: var(--gpma-wishlist-icon-color, #001225);
    border: var(--gpma-wishlist-icon-border-width, 1px) solid var(--gpma-wishlist-icon-border-color, #d8dee8);
    border-radius: var(--gpma-wishlist-icon-radius, 50%);
    padding: var(--gpma-wishlist-icon-padding, 0);
    width: var(--gpma-wishlist-icon-width, 42px);
    height: var(--gpma-wishlist-icon-height, 42px);
    min-width: var(--gpma-wishlist-icon-width, 42px);
    min-height: var(--gpma-wishlist-icon-height, 42px);
    font-size: var(--gpma-wishlist-icon-size, 18px);
    font-weight: 600;
    cursor: pointer;
}

.gpma-wishlist-icon-button.gpma-wishlist-toggle:hover,
.gpma-wishlist-icon-button.gpma-wishlist-toggle:focus {
    background: var(--gpma-wishlist-icon-hover-bg, #ffffff);
    color: var(--gpma-wishlist-icon-hover-color, #ff7a00);
    border-color: var(--gpma-wishlist-icon-hover-border-color, #d8dee8);
}

.gpma-wishlist-icon-button.gpma-wishlist-toggle.is-active {
    background: var(--gpma-wishlist-icon-active-bg, #ffffff);
    color: var(--gpma-wishlist-icon-active-color, #ff7a00);
    border-color: var(--gpma-wishlist-icon-active-border-color, #d8dee8);
}

.gpma-product-card .gpma-wishlist,
:where(.gpma-widget) .gpma-product-card .gpma-wishlist {
    appearance: none;
    -webkit-appearance: none;
    font-family: inherit;
    text-decoration: none;
    text-transform: none;
    letter-spacing: normal;
    cursor: pointer;
}

.gpma-wishlist-page {
    background: var(--gpma-wishlist-page-bg, #ffffff);
    color: var(--gpma-wishlist-page-color, #001225);
}

.gpma-wishlist-head {
    background: var(--gpma-wishlist-head-bg, #ffffff);
    color: var(--gpma-wishlist-head-color, #001225);
    font-family: inherit;
}

.gpma-wishlist-row {
    background: var(--gpma-wishlist-row-bg, #ffffff);
    color: var(--gpma-wishlist-row-color, #001225);
    font-family: inherit;
}

.gpma-wishlist-product-title,
.gpma-wishlist-price {
    color: var(--gpma-wishlist-text-color, #001225);
    font-family: inherit;
}

.gpma-wishlist-remove,
.gpma-wishlist-cart {
    appearance: none;
    -webkit-appearance: none;
    background: var(--gpma-wishlist-button-bg, #15120d);
    color: var(--gpma-wishlist-button-color, #ffffff);
    border: var(--gpma-wishlist-button-border-width, 0) solid var(--gpma-wishlist-button-border-color, transparent);
    border-radius: var(--gpma-wishlist-button-radius, 6px);
    font-family: inherit;
    font-weight: 700;
    text-decoration: none;
    text-transform: none;
    letter-spacing: normal;
    box-shadow: none;
}

.gpma-wishlist-remove:hover,
.gpma-wishlist-cart:hover {
    background: var(--gpma-wishlist-button-hover-bg, #001225);
    color: var(--gpma-wishlist-button-hover-color, #ffffff);
    border-color: var(--gpma-wishlist-button-hover-border-color, transparent);
}

.gpma-wishlist-counter-link {
    appearance: none;
    -webkit-appearance: none;
    background: var(--gpma-wishlist-counter-bg, #ffffff);
    color: var(--gpma-wishlist-counter-color, #001225);
    border: var(--gpma-wishlist-counter-border-width, 1px) solid var(--gpma-wishlist-counter-border-color, #d8dee8);
    border-radius: var(--gpma-wishlist-counter-radius, 10px);
    font-weight: 700;
}

.gpma-wishlist-counter-link:hover {
    background: var(--gpma-wishlist-counter-hover-bg, #f6f8fb);
    color: var(--gpma-wishlist-counter-hover-color, #001225);
}

/* v1.1.7 Default Product Card wishlist icon library support */
.gpma-product-card .gpma-wishlist .gpma-wishlist-heart,
:where(.gpma-widget) .gpma-product-card .gpma-wishlist .gpma-wishlist-heart {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1em !important;
    height: 1em !important;
    line-height: 1 !important;
    flex: 0 0 auto !important;
    pointer-events: none !important;
}
.gpma-product-card .gpma-wishlist .gpma-wishlist-heart svg,
.gpma-product-card .gpma-wishlist .gpma-wishlist-heart i,
:where(.gpma-widget) .gpma-product-card .gpma-wishlist .gpma-wishlist-heart svg,
:where(.gpma-widget) .gpma-product-card .gpma-wishlist .gpma-wishlist-heart i {
    display: block !important;
    width: 1em !important;
    height: 1em !important;
    line-height: 1 !important;
    fill: currentColor !important;
}
.gpma-product-card .gpma-wishlist .gpma-wishlist-heart-active,
:where(.gpma-widget) .gpma-product-card .gpma-wishlist .gpma-wishlist-heart-active {
    display: none !important;
}
.gpma-product-card .gpma-wishlist.is-active .gpma-wishlist-heart-inactive,
:where(.gpma-widget) .gpma-product-card .gpma-wishlist.is-active .gpma-wishlist-heart-inactive {
    display: none !important;
}
.gpma-product-card .gpma-wishlist.is-active .gpma-wishlist-heart-active,
:where(.gpma-widget) .gpma-product-card .gpma-wishlist.is-active .gpma-wishlist-heart-active {
    display: inline-flex !important;
}


/* v1.1.11 Wishlist Icon Widget icon color fix: Normal / Hover / Active */
.gpma-wishlist-icon-button.gpma-wishlist-toggle .gpma-wishlist-heart,
.gpma-wishlist-icon-button.gpma-wishlist-toggle .gpma-wishlist-heart i,
.gpma-wishlist-icon-button.gpma-wishlist-toggle .gpma-wishlist-heart svg {
    color: var(--gpma-wishlist-icon-color, #001225) !important;
    fill: var(--gpma-wishlist-icon-color, #001225) !important;
    stroke: var(--gpma-wishlist-icon-color, #001225) !important;
}
.gpma-wishlist-icon-button.gpma-wishlist-toggle .gpma-wishlist-heart svg path {
    fill: var(--gpma-wishlist-icon-color, #001225) !important;
    stroke: var(--gpma-wishlist-icon-color, #001225) !important;
}
.gpma-wishlist-icon-button.gpma-wishlist-toggle:hover .gpma-wishlist-heart,
.gpma-wishlist-icon-button.gpma-wishlist-toggle:hover .gpma-wishlist-heart i,
.gpma-wishlist-icon-button.gpma-wishlist-toggle:hover .gpma-wishlist-heart svg,
.gpma-wishlist-icon-button.gpma-wishlist-toggle:focus .gpma-wishlist-heart,
.gpma-wishlist-icon-button.gpma-wishlist-toggle:focus .gpma-wishlist-heart i,
.gpma-wishlist-icon-button.gpma-wishlist-toggle:focus .gpma-wishlist-heart svg {
    color: var(--gpma-wishlist-icon-hover-color, var(--gpma-wishlist-icon-color, #ff7a00)) !important;
    fill: var(--gpma-wishlist-icon-hover-color, var(--gpma-wishlist-icon-color, #ff7a00)) !important;
    stroke: var(--gpma-wishlist-icon-hover-color, var(--gpma-wishlist-icon-color, #ff7a00)) !important;
}
.gpma-wishlist-icon-button.gpma-wishlist-toggle:hover .gpma-wishlist-heart svg path,
.gpma-wishlist-icon-button.gpma-wishlist-toggle:focus .gpma-wishlist-heart svg path {
    fill: var(--gpma-wishlist-icon-hover-color, var(--gpma-wishlist-icon-color, #ff7a00)) !important;
    stroke: var(--gpma-wishlist-icon-hover-color, var(--gpma-wishlist-icon-color, #ff7a00)) !important;
}
.gpma-wishlist-icon-button.gpma-wishlist-toggle.is-active .gpma-wishlist-heart,
.gpma-wishlist-icon-button.gpma-wishlist-toggle.is-active .gpma-wishlist-heart i,
.gpma-wishlist-icon-button.gpma-wishlist-toggle.is-active .gpma-wishlist-heart svg {
    color: var(--gpma-wishlist-icon-active-color, #ff7a00) !important;
    fill: var(--gpma-wishlist-icon-active-color, #ff7a00) !important;
    stroke: var(--gpma-wishlist-icon-active-color, #ff7a00) !important;
}
.gpma-wishlist-icon-button.gpma-wishlist-toggle.is-active .gpma-wishlist-heart svg path {
    fill: var(--gpma-wishlist-icon-active-color, #ff7a00) !important;
    stroke: var(--gpma-wishlist-icon-active-color, #ff7a00) !important;
}

/* v1.1.13 Wishlist Icon Widget count badge position controls */
.gpma-wishlist-icon-button.gpma-wishlist-toggle{
    position: relative !important;
}
.gpma-wishlist-icon-button.gpma-wishlist-toggle .gpma-wishlist-count{
    position: absolute !important;
    top: -7px;
    right: -7px;
    left: auto;
    bottom: auto;
    transform: translate(var(--gpma-wishlist-badge-x, 0), var(--gpma-wishlist-badge-y, 0));
    z-index: 5;
    min-width: 20px;
    width: auto;
    height: 20px;
    min-height: 20px;
    padding: 0 6px;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px;
    background: #001225;
    color: #ffffff;
    border: 0 solid transparent;
    font-size: 12px;
    font-weight: 700;
    line-height: 1 !important;
    pointer-events: none;
    box-sizing: border-box !important;
}


/* v1.1.15 Style architecture cleanup
   - Plugin defaults use solid background-color, no default background-image.
   - Elementor Style Tab classic color can override without old gradient covering it.
   - Elementor Style Tab gradient can add background-image normally.
   - :where() keeps default specificity lower than Elementor dynamic CSS. */
:where(.gpma-widget) .gpma-search button,
:where(.gpma-widget) .gpma-responsive-filter-btn,
:where(.gpma-widget) .gpma-page,
:where(.gpma-widget) .gpma-page.active,
:where(.gpma-widget) .gpma-sale-badge,
:where(.gpma-widget) .gpma-details,
:where(.gpma-widget) .gpma-cart,
:where(.gpma-widget) a.gpma-cart,
:where(.gpma-widget) button.gpma-cart,
.gpma-wishlist-icon-button.gpma-wishlist-toggle,
.gpma-wishlist-remove,
.gpma-wishlist-cart,
.gpma-wishlist-counter-link {
    background-image: none;
}

:where(.gpma-widget),
.gpma-wishlist-icon-widget,
.gpma-wishlist-page,
.gpma-wishlist-counter-link {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
}

:where(.gpma-widget) .gpma-search button,
:where(.gpma-widget) .gpma-responsive-filter-btn,
:where(.gpma-widget) .gpma-page.active { background-color: #5320e2; color: #ffffff; }
:where(.gpma-widget) .gpma-sale-badge { background-color: #5320e2; color: #ffffff; }

/* Theme/global button reset inside plugin UI only */
:where(.gpma-widget) button:not(.gpma-apply-btn):not(.gpma-reset-btn),
:where(.gpma-widget) a.gpma-cart,
:where(.gpma-widget) .gpma-details,
.gpma-wishlist-icon-button.gpma-wishlist-toggle,
.gpma-wishlist-remove,
.gpma-wishlist-cart,
.gpma-wishlist-counter-link {
    text-decoration: none;
    text-transform: none;
    letter-spacing: normal;
}


/* v1.1.24 Complete GPMA Website Global Style Isolation
   Blocks theme/website/Elementor global typography, button and link styles inside GPMA plugin UI. */
:where(.gpma-widget,
.gpma-product-search-widget,
.gpma-variation-popup,
.gpma-wishlist-icon-widget,
.gpma-wishlist-page,
.gpma-wishlist-counter-link) {
    isolation: isolate !important;
    --gpma-font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-family: var(--gpma-font-family) !important;
    color: #162033 !important;
    line-height: 1.4 !important;
    text-align: initial !important;
}

:where(.gpma-widget,
.gpma-product-search-widget,
.gpma-variation-popup,
.gpma-wishlist-icon-widget,
.gpma-wishlist-page,
.gpma-wishlist-counter-link) :where(*:not(.gpma-apply-btn):not(.gpma-reset-btn)) {
    box-sizing: border-box !important;
    font-family: inherit !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

:where(.gpma-widget,
.gpma-product-search-widget,
.gpma-variation-popup,
.gpma-wishlist-icon-widget,
.gpma-wishlist-page,
.gpma-wishlist-counter-link) :where(a) {
    text-decoration: none !important;
    box-shadow: none !important;
    outline: 0 !important;
}

:where(.gpma-widget,
.gpma-product-search-widget,
.gpma-variation-popup,
.gpma-wishlist-icon-widget,
.gpma-wishlist-page,
.gpma-wishlist-counter-link) :where(button:not(.gpma-apply-btn):not(.gpma-reset-btn), input, select, textarea) {
    font-family: inherit !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    box-shadow: none !important;
    outline: 0 !important;
}

:where(.gpma-widget,
.gpma-product-search-widget,
.gpma-variation-popup,
.gpma-wishlist-icon-widget,
.gpma-wishlist-page,
.gpma-wishlist-counter-link) :where(button) {
    appearance: none !important;
    -webkit-appearance: none !important;
    cursor: pointer !important;
}

/* Apply/Reset Button: plugin default style.
   Elementor Style Tab values use stronger selectors and final priority. */
:where(.gpma-widget) .gpma-filter-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-start;
    margin: 10px 0 0;
}

:where(.gpma-widget) .gpma-action-button-wrap {
    display: flex;
    align-items: center;
    flex: 1 1 0;
    min-width: 0;
}

:where(.gpma-widget) .gpma-apply-button-wrap,
:where(.gpma-widget) .gpma-reset-button-wrap {
    justify-content: flex-start;
}

:where(.gpma-widget) .gpma-apply-btn,
:where(.gpma-widget) .gpma-reset-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 0 18px;
    border: 0;
    border-radius: 14px;
    font-size: 15px;
    font-weight: 700;
    line-height: normal;
    text-align: center;
    text-decoration: none;
    box-shadow: none;
    outline: 0;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    transition: background-color .2s ease, background-image .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

/* Clean single-source defaults.
   Elementor Style Tab selectors override these defaults when the user selects a style. */
:where(.gpma-widget) .gpma-apply-btn {
    background-color: #5320e2;
    background-image: none;
    color: #ffffff;
    border-color: transparent;
}

:where(.gpma-widget) .gpma-apply-btn:hover,
:where(.gpma-widget) .gpma-apply-btn:focus {
    background-color: #4518c8;
    background-image: none;
    color: #ffffff;
}

:where(.gpma-widget) .gpma-reset-btn {
    background-color: #ffffff;
    background-image: none;
    color: #5320e2;
    border-color: #e9e5ff;
}

:where(.gpma-widget) .gpma-reset-btn:hover,
:where(.gpma-widget) .gpma-reset-btn:focus {
    background-color: #f5f3ff;
    background-image: none;
    color: #4518c8;
}



/* v1.1.26: isolate Product Navigation pagination from website/theme/Elementor global button styles */
.gpma-widget .gpma-pagination-wrap .gpma-pagination,
.gpma-widget .gpma-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 25px 0 0;
    padding: 0;
    flex-wrap: wrap;
    list-style: none;
}

.gpma-widget .gpma-pagination-wrap .gpma-pagination button.gpma-page,
.gpma-widget .gpma-pagination button.gpma-page {
    all: unset;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    min-width: 42px;
    min-height: 42px;
    margin: 0;
    padding: 0;
    border: 1px solid var(--gpma-border, #e9e5ff);
    border-radius: 12px;
    background: #ffffff;
    background-image: none;
    color: var(--gpma-text, #162033);
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    text-shadow: none;
    box-shadow: none;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}

.gpma-widget .gpma-pagination-wrap .gpma-pagination button.gpma-page:hover,
.gpma-widget .gpma-pagination-wrap .gpma-pagination button.gpma-page.active,
.gpma-widget .gpma-pagination button.gpma-page:hover,
.gpma-widget .gpma-pagination button.gpma-page.active {
    background-color: var(--gpma-primary, #5320e2);
    background-image: none;
    color: #ffffff;
    border-color: var(--gpma-primary, #5320e2);
    text-decoration: none;
    box-shadow: none;
}

.gpma-widget .gpma-pagination-wrap .gpma-pagination button.gpma-page:focus,
.gpma-widget .gpma-pagination button.gpma-page:focus {
    outline: none;
    box-shadow: none;
}


/* v1.1.49 Product Search Widget theme/global/Elementor default style isolation
   Default plugin design is scoped to the widget only. Elementor Style Tab selectors
   in class-gpma-search-widget.php use body {{WRAPPER}} so user controls override these defaults. */
.elementor-widget-gpma_product_search_widget .gpma-product-search-widget,
.elementor-widget-gpma_product_search_widget .gpma-product-search-widget * {
    box-sizing: border-box;
}

.elementor-widget-gpma_product_search_widget .gpma-product-search-form.woocommerce-product-search {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.elementor-widget-gpma_product_search_widget .gpma-search-widget-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    background: #ffffff;
    border: 1px solid #e9e5ff;
    border-radius: 16px;
    padding: 6px;
    box-shadow: 0 12px 28px rgba(83,32,226,.08);
}

.elementor-widget-gpma_product_search_widget .gpma-product-search-input.search-field {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    max-width: none;
    height: 48px;
    margin: 0;
    border: 1px solid transparent;
    border-radius: 12px;
    outline: none;
    padding: 0 14px;
    background: transparent;
    color: #162033;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

.elementor-widget-gpma_product_search_widget .gpma-product-search-input.search-field:focus {
    border-color: #5320e2;
    outline: none;
}

.elementor-widget-gpma_product_search_widget button.gpma-product-search-submit,
.elementor-widget-gpma_product_search_widget button.gpma-product-search-open,
.elementor-widget-gpma_product_search_widget button.gpma-product-search-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 48px;
    height: 48px;
    margin: 0;
    padding: 0 16px;
    border: 0;
    border-radius: 12px;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    box-shadow: none;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
}

.elementor-widget-gpma_product_search_widget button.gpma-product-search-submit {
    background: #5320e2;
    color: #ffffff;
}

.elementor-widget-gpma_product_search_widget button.gpma-product-search-open,
.elementor-widget-gpma_product_search_widget button.gpma-product-search-close {
    background: #ede8ff;
    color: #5320e2;
}

.elementor-widget-gpma_product_search_widget button.gpma-product-search-submit svg,
.elementor-widget-gpma_product_search_widget button.gpma-product-search-open svg,
.elementor-widget-gpma_product_search_widget button.gpma-product-search-close svg {
    width: 18px;
    height: 18px;
    display: block;
    fill: currentColor;
    color: currentColor;
}


/* v1.1.53 Search panel top-layer fix
   Keep the mobile/tablet product search bar above theme/menu icons. */
@media (max-width: 1024px) {
    .elementor-widget-gpma_product_search_widget,
    .elementor-widget-gpma_product_search_widget .gpma-product-search-widget {
        position: relative;
        z-index: 2147483645 !important;
    }

    .gpma-product-search-widget .gpma-product-search-panel,
    .elementor-widget-gpma_product_search_widget .gpma-product-search-panel {
        position: fixed !important;
        z-index: 2147483646 !important;
    }

    .gpma-product-search-widget .gpma-search-widget-wrap,
    .elementor-widget-gpma_product_search_widget .gpma-search-widget-wrap,
    .gpma-product-search-widget .gpma-product-search-input,
    .gpma-product-search-widget .gpma-product-search-submit,
    .gpma-product-search-widget .gpma-product-search-close {
        position: relative;
        z-index: 2147483647 !important;
    }
}


/* GPMA rating text visibility fix.
   Do not depend on WooCommerce star icon font because some themes disable/override it.
   This prevents the raw icon-font letters (SSSSS/sssss) from appearing on archive cards. */
.gpma-product-rating .star-rating{position:relative!important;display:inline-block!important;overflow:hidden!important;width:5.4em!important;height:1em!important;line-height:1!important;font-family:Arial,sans-serif!important;font-size:1em!important;float:none!important;margin:0!important;color:#f97316;}
.gpma-product-rating .star-rating:before{content:"★★★★★"!important;position:absolute!important;top:0!important;left:0!important;color:#d1d5db!important;}
.gpma-product-rating .star-rating span{position:absolute!important;top:0!important;left:0!important;overflow:hidden!important;height:1em!important;padding-top:1.5em!important;color:#f97316!important;}
.gpma-product-rating .star-rating span:before{content:"★★★★★"!important;position:absolute!important;top:0!important;left:0!important;color:inherit!important;}
.gpma-product-rating .star-rating .rating,
.gpma-product-rating .star-rating strong,
.gpma-product-rating .star-rating .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}

/* v1.1.57: Default card + filter UI isolation.
   Keep plugin defaults unless the user selects a value from the Elementor Style tab.
   Elementor generated widget CSS can still override these defaults. */
body .gpma-widget {
    color: #162033;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    line-height: 1.4;
}
body .gpma-widget .gpma-sidebar,
body .gpma-widget .gpma-product-card {
    background: #ffffff;
}
body .gpma-widget .gpma-title,
body .gpma-widget .gpma-head .gpma-title {
    color: #001225;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-weight: 900;
}
body .gpma-widget .gpma-filter-row,
body .gpma-widget .gpma-filter-row span,
body .gpma-widget .gpma-note,
body .gpma-widget .gpma-found,
body .gpma-widget .gpma-sort,
body .gpma-widget .gpma-search input,
body .gpma-widget .gpma-price input {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
}
body .gpma-widget .gpma-product-body h3,
body .gpma-widget .gpma-product-body h3 a {
    color: #001225;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
    text-decoration: none;
}
body .gpma-widget .gpma-product-price,
body .gpma-widget .gpma-product-price .amount,
body .gpma-widget .gpma-product-price ins,
body .gpma-widget .gpma-product-price del {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.25;
}
body .gpma-widget .gpma-product-price,
body .gpma-widget .gpma-product-price .amount,
body .gpma-widget .gpma-product-price ins,
body .gpma-widget .gpma-product-price ins .amount {
    color: #001225;
}
body .gpma-widget .gpma-product-price del,
body .gpma-widget .gpma-product-price del .amount {
    color: #001225;
    opacity: 1;
}
body .gpma-widget .gpma-details,
body .gpma-widget .gpma-cart,
body .gpma-widget a.gpma-cart,
body .gpma-widget button.gpma-cart {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
}
body .gpma-widget .gpma-details {
    background: #001225;
    color: #ffffff;
    border-color: #001225;
}
body .gpma-widget .gpma-cart,
body .gpma-widget a.gpma-cart,
body .gpma-widget button.gpma-cart {
    background: #ffffff;
    color: #001225;
    border-color: #d1d5db;
}
body .gpma-widget .gpma-apply-btn,
body .gpma-widget .gpma-reset-btn {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-weight: 900;
}
body .gpma-widget .gpma-product-rating .star-rating {
    float: none;
    overflow: hidden;
    position: relative;
    height: 1em;
    line-height: 1;
}
body .gpma-widget .gpma-product-rating .star-rating span {
    overflow: hidden;
}
body .gpma-widget .gpma-product-rating .star-rating .screen-reader-text,
body .gpma-widget .gpma-product-rating .screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal;
}


/* GPMA v1.1.61 - Plugin default style isolation
   Rule:
   1) Default design always comes from GPMA CSS.
   2) Elementor/Theme global kit CSS must not auto-style GPMA widgets.
   3) Elementor Style Tab CSS still wins when the user manually selects a value.
   No !important is used here, so user-selected Elementor generated CSS can override these defaults. */
body .elementor-widget .gpma-widget,
body .elementor-widget .gpma-search-widget-wrap,
body .elementor-widget .gpma-wishlist-icon-widget,
body .elementor-widget .gpma-wishlist-counter,
body .elementor-widget .gpma-wishlist-page {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    color: #162033;
    line-height: 1.4;
}

/* Filter widget default text/title isolation */
body .elementor-widget .gpma-widget .gpma-title,
body .elementor-widget .gpma-widget .gpma-section-title,
body .elementor-widget .gpma-widget .gpma-head .gpma-title {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    color: #001225;
    font-size: 19px;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: normal;
    text-transform: none;
}
body .elementor-widget .gpma-widget .gpma-filter-row,
body .elementor-widget .gpma-widget .gpma-filter-row span,
body .elementor-widget .gpma-widget .gpma-filter-row b,
body .elementor-widget .gpma-widget .gpma-note,
body .elementor-widget .gpma-widget .gpma-found,
body .elementor-widget .gpma-widget .gpma-sort,
body .elementor-widget .gpma-widget .gpma-search input,
body .elementor-widget .gpma-widget .gpma-price input,
body .elementor-widget .gpma-widget label,
body .elementor-widget .gpma-widget input,
body .elementor-widget .gpma-widget select {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    letter-spacing: normal;
    text-transform: none;
}

/* Filter apply/reset button default isolation against Elementor Kit button styles */
body .elementor-widget .gpma-widget button.gpma-apply-btn,
body .elementor-widget .gpma-widget .gpma-apply-btn {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    color: #ffffff;
    border-color: transparent;
    text-transform: none;
    letter-spacing: normal;
    text-decoration: none;
}
body .elementor-widget .gpma-widget button.gpma-reset-btn,
body .elementor-widget .gpma-widget .gpma-reset-btn {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    color: #5320e2;
    border-color: #e9e5ff;
    text-transform: none;
    letter-spacing: normal;
    text-decoration: none;
}

/* Product card default isolation */
body .elementor-widget .gpma-widget .gpma-product-card,
body .elementor-widget .gpma-widget .gpma-product-body {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    color: #162033;
}
body .elementor-widget .gpma-widget .gpma-product-body h1,
body .elementor-widget .gpma-widget .gpma-product-body h2,
body .elementor-widget .gpma-widget .gpma-product-body h3,
body .elementor-widget .gpma-widget .gpma-product-body h4,
body .elementor-widget .gpma-widget .gpma-product-body h5,
body .elementor-widget .gpma-widget .gpma-product-body h6,
body .elementor-widget .gpma-widget .gpma-product-body h3 a,
body .elementor-widget .gpma-widget .gpma-product-title,
body .elementor-widget .gpma-widget .gpma-product-title a {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    color: #001225;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: normal;
    text-transform: none;
    text-decoration: none;
}
body .elementor-widget .gpma-widget .gpma-product-price,
body .elementor-widget .gpma-widget .gpma-product-price .amount,
body .elementor-widget .gpma-widget .gpma-product-price ins,
body .elementor-widget .gpma-widget .gpma-product-price ins .amount,
body .elementor-widget .gpma-widget .gpma-product-price del,
body .elementor-widget .gpma-widget .gpma-product-price del .amount {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.25;
    color: #001225;
    text-decoration-thickness: auto;
}

/* Product card buttons default isolation */
body .elementor-widget .gpma-widget a.gpma-details,
body .elementor-widget .gpma-widget button.gpma-details,
body .elementor-widget .gpma-widget .gpma-details,
body .elementor-widget .gpma-widget a.gpma-cart,
body .elementor-widget .gpma-widget button.gpma-cart,
body .elementor-widget .gpma-widget .gpma-cart {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    text-decoration: none;
}
body .elementor-widget .gpma-widget a.gpma-details,
body .elementor-widget .gpma-widget button.gpma-details,
body .elementor-widget .gpma-widget .gpma-details {
    color: #ffffff;
    background: #001225;
    border-color: #001225;
}
body .elementor-widget .gpma-widget a.gpma-cart,
body .elementor-widget .gpma-widget button.gpma-cart,
body .elementor-widget .gpma-widget .gpma-cart {
    color: #001225;
    background: #ffffff;
    border-color: #d1d5db;
}

/* Search widget default isolation */
body .elementor-widget .gpma-search-widget-wrap,
body .elementor-widget .gpma-search-widget-wrap input,
body .elementor-widget .gpma-search-widget-wrap button,
body .elementor-widget .gpma-product-search-panel,
body .elementor-widget .gpma-product-search-panel input,
body .elementor-widget .gpma-product-search-panel button {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    letter-spacing: normal;
    text-transform: none;
}

/* Wishlist widget defaults */
body .elementor-widget .gpma-wishlist-icon-widget,
body .elementor-widget .gpma-wishlist-icon-widget button,
body .elementor-widget .gpma-wishlist-counter-link,
body .elementor-widget .gpma-wishlist-page,
body .elementor-widget .gpma-wishlist-page a,
body .elementor-widget .gpma-wishlist-page button {
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    letter-spacing: normal;
    text-transform: none;
}

/* WooCommerce star fallback: prevent raw SSSSS text when star font is missing. */
body .elementor-widget .gpma-widget .gpma-product-rating .star-rating::before,
body .elementor-widget .gpma-widget .gpma-product-rating .star-rating span::before {
    font-family: WooCommerce, star, Arial, sans-serif;
}
body .elementor-widget .gpma-widget .gpma-product-rating .screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal;
}

/* v1.1.62 Search box/button sizing and filter choice controls */
:where(.gpma-widget) .gpma-search {
    width: 100%;
    min-height: 58px;
    align-items: center;
}
:where(.gpma-widget) .gpma-search input {
    height: 100%;
}
:where(.gpma-widget) .gpma-search button {
    flex: 0 0 auto;
    padding: 0 !important;
}
:where(.gpma-widget) .gpma-filter-row input[type="checkbox"],
:where(.gpma-widget) .gpma-filter-row input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin: 0;
    border: 1px solid #9ca3af;
    background: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    color: #ffffff;
    cursor: pointer;
    accent-color: var(--gpma-primary);
}
:where(.gpma-widget) .gpma-filter-row input[type="checkbox"] {
    border-radius: 3px;
}
:where(.gpma-widget) .gpma-filter-row input[type="radio"] {
    border-radius: 999px;
}
:where(.gpma-widget) .gpma-filter-row input[type="checkbox"]::after {
    content: "";
    width: 38%;
    height: 62%;
    border: solid currentColor;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg) scale(0);
    transform-origin: center;
    transition: transform .16s ease;
}
:where(.gpma-widget) .gpma-filter-row input[type="radio"]::after {
    content: "";
    width: 45%;
    height: 45%;
    border-radius: 999px;
    background: currentColor;
    transform: scale(0);
    transition: transform .16s ease;
}
:where(.gpma-widget) .gpma-filter-row input[type="checkbox"]:checked,
:where(.gpma-widget) .gpma-filter-row input[type="radio"]:checked {
    background-color: var(--gpma-primary);
    border-color: var(--gpma-primary);
    color: #ffffff;
}
:where(.gpma-widget) .gpma-filter-row input[type="checkbox"]:checked::after,
:where(.gpma-widget) .gpma-filter-row input[type="radio"]:checked::after {
    transform: rotate(45deg) scale(1);
}
:where(.gpma-widget) .gpma-filter-row input[type="radio"]:checked::after {
    transform: scale(1);
}

/* v1.1.63 Product card image and rating controls */
body .gpma-widget .gpma-product-card,
body .gpma-widget .gpma-default-product-card {
    overflow: hidden;
    box-sizing: border-box;
}
body .gpma-widget .gpma-product-card *,
body .gpma-widget .gpma-default-product-card * {
    box-sizing: border-box;
    max-width: 100%;
}
body .gpma-widget .gpma-product-image {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    flex: 0 0 auto;
}
body .gpma-widget .gpma-product-image img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}
body .gpma-widget .gpma-product-body {
    overflow: hidden;
    min-width: 0;
}
body .gpma-widget .gpma-product-body h3,
body .gpma-widget .gpma-product-body h3 a,
body .gpma-widget .gpma-product-price,
body .gpma-widget .gpma-product-actions {
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
}
body .gpma-widget .gpma-product-actions {
    max-width: 100%;
    overflow: hidden;
}
body .gpma-widget .gpma-details,
body .gpma-widget .gpma-cart,
body .gpma-widget a.gpma-cart,
body .gpma-widget button.gpma-cart {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
body .gpma-widget .gpma-product-rating {
    --gpma-product-rating-size: 14px;
    --gpma-product-rating-gap: 5px;
    --gpma-product-rating-color: #f97316;
    --gpma-product-rating-empty-color: #d1d5db;
    --gpma-product-rating-average-color: #111827;
    display: flex;
    align-items: center;
    gap: var(--gpma-product-rating-gap);
    min-height: calc(var(--gpma-product-rating-size) + 4px);
    margin-bottom: 6px;
    line-height: 1;
}
body .gpma-widget .gpma-product-rating .gpma-rating-stars {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    flex: 0 0 auto;
}
body .gpma-widget .gpma-product-rating .gpma-rating-star {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--gpma-product-rating-size);
    height: var(--gpma-product-rating-size);
    font-size: var(--gpma-product-rating-size);
    line-height: 1;
}
body .gpma-widget .gpma-product-rating .gpma-rating-star svg {
    width: 1em;
    height: 1em;
    display: block;
    fill: currentColor;
}
body .gpma-widget .gpma-product-rating .gpma-rating-star.is-filled {
    color: var(--gpma-product-rating-color);
}
body .gpma-widget .gpma-product-rating .gpma-rating-star.is-empty {
    color: var(--gpma-product-rating-empty-color);
}
body .gpma-widget .gpma-product-rating .gpma-rating-average {
    color: var(--gpma-product-rating-average-color);
    font-size: calc(var(--gpma-product-rating-size) * .92);
    font-weight: 700;
    line-height: 1;
}


/* v1.1.64 - Always visible default product card rating + responsive filter top layer fix */
body .gpma-widget .gpma-product-rating {
    display: flex !important;
    align-items: center !important;
    gap: var(--gpma-product-rating-gap, 6px) !important;
    min-height: var(--gpma-product-rating-size, 16px) !important;
    margin-bottom: 8px !important;
    line-height: 1 !important;
}
body .gpma-widget .gpma-product-rating .gpma-rating-stars {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2px !important;
    line-height: 1 !important;
}
body .gpma-widget .gpma-product-rating .gpma-rating-star {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: var(--gpma-product-rating-size, 16px) !important;
    height: var(--gpma-product-rating-size, 16px) !important;
    font-size: var(--gpma-product-rating-size, 16px) !important;
    line-height: 1 !important;
}
body .gpma-widget .gpma-product-rating .gpma-rating-star.is-filled {
    color: var(--gpma-product-rating-color, #f97316) !important;
    fill: var(--gpma-product-rating-color, #f97316) !important;
}
body .gpma-widget .gpma-product-rating .gpma-rating-star.is-empty {
    color: var(--gpma-product-rating-empty-color, #d1d5db) !important;
    fill: var(--gpma-product-rating-empty-color, #d1d5db) !important;
}
body .gpma-widget .gpma-product-rating .gpma-rating-star svg,
body .gpma-widget .gpma-product-rating .gpma-rating-star i,
body .gpma-widget .gpma-product-rating .gpma-rating-icon-fallback {
    display: block !important;
    width: var(--gpma-product-rating-size, 16px) !important;
    height: var(--gpma-product-rating-size, 16px) !important;
    font-size: var(--gpma-product-rating-size, 16px) !important;
    line-height: 1 !important;
    color: inherit !important;
    fill: currentColor !important;
}
body .gpma-widget .gpma-product-rating .gpma-rating-average {
    color: var(--gpma-product-rating-average-color, #001225) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}
@media (max-width: 1024px) {
    body.gpma-filter-open,
    html.gpma-filter-open {
        overflow: hidden !important;
    }
    body .gpma-widget.gpma-filter-open {
        position: relative !important;
        z-index: 2147483644 !important;
    }
    body .gpma-widget.gpma-filter-open .gpma-offcanvas-overlay {
        z-index: 2147483645 !important;
    }
    body .gpma-widget.gpma-filter-open .gpma-sidebar {
        z-index: 2147483646 !important;
    }
    body .gpma-widget.gpma-filter-open .gpma-filter-close {
        z-index: 2147483647 !important;
    }
    body:has(.gpma-widget.gpma-filter-open) .elementor-widget-gpma_product_search_widget,
    body:has(.gpma-widget.gpma-filter-open) .gpma-product-search-widget {
        z-index: 1 !important;
    }
}


/* v1.1.65 - Default product card price controls + filter accordion spacing fix */
body .gpma-widget .gpma-product-price {
    --gpma-product-regular-price-color: #001225;
    --gpma-product-sale-price-color: #001225;
}
body .gpma-widget .gpma-product-price,
body .gpma-widget .gpma-product-price > .amount,
body .elementor-widget .gpma-widget .gpma-product-price,
body .elementor-widget .gpma-widget .gpma-product-price > .amount {
    color: var(--gpma-product-regular-price-color, #001225);
}
body .gpma-widget .gpma-product-price del,
body .gpma-widget .gpma-product-price del .amount,
body .elementor-widget .gpma-widget .gpma-product-price del,
body .elementor-widget .gpma-widget .gpma-product-price del .amount {
    color: var(--gpma-product-regular-price-color, #001225);
    opacity: 1;
}
body .gpma-widget .gpma-product-price ins,
body .gpma-widget .gpma-product-price ins .amount,
body .elementor-widget .gpma-widget .gpma-product-price ins,
body .elementor-widget .gpma-widget .gpma-product-price ins .amount {
    color: var(--gpma-product-sale-price-color, #001225);
    text-decoration: none;
}
body .gpma-widget .gpma-section {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid #ececf4;
}
body .gpma-widget .gpma-section:last-child {
    margin-bottom: 0;
}
body .gpma-widget .gpma-head {
    min-height: 36px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
body .gpma-widget .gpma-head .gpma-title {
    margin: 0;
    display: flex;
    align-items: center;
    min-height: 36px;
}
body .gpma-widget .gpma-toggle {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
body .gpma-widget .gpma-body {
    padding-top: 2px;
}
body .gpma-widget .gpma-body.gpma-default-closed {
    padding-top: 0;
}


/* v1.1.66 - Separate regular/sale price typography + sale regular price line color */
body .gpma-widget .gpma-product-price {
    --gpma-product-regular-price-color: #001225;
    --gpma-product-sale-price-color: #001225;
    --gpma-product-regular-decoration-color: var(--gpma-product-regular-price-color, #001225);
}
body .gpma-widget .gpma-product-price,
body .gpma-widget .gpma-product-price > .amount,
body .elementor-widget .gpma-widget .gpma-product-price,
body .elementor-widget .gpma-widget .gpma-product-price > .amount {
    color: var(--gpma-product-regular-price-color, #001225);
}
body .gpma-widget .gpma-product-price del,
body .gpma-widget .gpma-product-price del .amount,
body .elementor-widget .gpma-widget .gpma-product-price del,
body .elementor-widget .gpma-widget .gpma-product-price del .amount {
    color: var(--gpma-product-regular-price-color, #001225);
    opacity: 1;
    text-decoration-line: line-through;
    text-decoration-style: solid;
    text-decoration-color: var(--gpma-product-regular-decoration-color, var(--gpma-product-regular-price-color, #001225));
    text-decoration-thickness: 1.5px;
}
body .gpma-widget .gpma-product-price ins,
body .gpma-widget .gpma-product-price ins .amount,
body .elementor-widget .gpma-widget .gpma-product-price ins,
body .elementor-widget .gpma-widget .gpma-product-price ins .amount {
    color: var(--gpma-product-sale-price-color, #001225);
    text-decoration: none;
}

/* Grovaity My Account Widget - isolated gmaw prefix */
.gmaw-wrapper{--gmaw-primary:#5320e2;--gmaw-primary-2:#7c4ff5;--gmaw-dark:#18172b;--gmaw-border:#dddddd;--gmaw-muted:#f5f3f7;box-sizing:border-box;max-width:1180px;margin:0 auto;background:#fff;border:1px solid var(--gmaw-border);border-radius:16px;padding:28px;color:#07111f;font-family:Inter,"Segoe UI",Arial,sans-serif;}
.gmaw-wrapper *{box-sizing:border-box;}
.gmaw-notice{padding:12px 14px;border-radius:10px;margin:0 0 16px;font-weight:600}.gmaw-error{background:#fff0f0;color:#a40000;border:1px solid #ffd2d2}.gmaw-success{background:#ecfff3;color:#075c2a;border:1px solid #c9f5d8}
.gmaw-auth-card{max-width:460px;margin:0 auto;padding:28px;border:1px solid var(--gmaw-border);border-radius:14px;background:#fff}.gmaw-auth-title{text-align:center;margin:0 0 26px;color:var(--gmaw-primary);font-size:18px;font-weight:800}.gmaw-auth-tabs{display:flex;gap:8px;background:#f4f0e7;border:1px solid #e2dacd;border-radius:999px;padding:6px;margin-bottom:24px}.gmaw-auth-tab{flex:1;border:0;border-radius:999px;background:#fff;color:#171625;font-weight:800;padding:12px 16px;cursor:pointer}.gmaw-auth-tab.is-active{background-color:var(--gmaw-primary);background-image:none;color:#fff}.gmaw-auth-panel{display:none;border:1px solid var(--gmaw-border);border-radius:12px;padding:26px}.gmaw-auth-panel.is-active{display:block}.gmaw-form label{display:block;margin:14px 0 7px;font-weight:800;font-size:13px}.gmaw-form input[type="text"],.gmaw-form input[type="email"],.gmaw-form input[type="password"],.gmaw-form input[type="number"],.gmaw-form input:not([type]){width:100%;height:44px;border:1px solid var(--gmaw-border);border-radius:8px;padding:0 16px;background:#fff;color:#07111f}.gmaw-google-btn{width:100%;border:1px solid var(--gmaw-border);border-radius:999px;background:#fff;color:var(--gmaw-primary);height:42px;font-weight:800}.gmaw-divider{text-align:center;border-top:1px solid #ddd;margin:24px 0 16px}.gmaw-divider span{background:#fff;padding:0 12px;position:relative;top:-10px}.gmaw-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gmaw-password-wrap{display:flex;align-items:center;position:relative}.gmaw-password-wrap input{padding-right:44px}.gmaw-password-toggle{position:absolute;right:8px;width:32px;height:32px;border:0;background:transparent;cursor:pointer}.gmaw-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.gmaw-check{display:flex!important;align-items:center;gap:8px;font-weight:700!important}.gmaw-check input{width:16px;height:16px}.gmaw-privacy{line-height:1.55}.gmaw-captcha{display:flex;align-items:center;gap:12px;border:0;background:transparent;margin:14px 0;min-height:auto;padding:0;box-shadow:none}.gmaw-captcha-check{width:28px;height:28px;border:2px solid #555;background:#fff;display:inline-block}.gmaw-captcha small{margin-left:auto;font-size:11px}.gmaw-submit,.gmaw-small-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background-color:var(--gmaw-primary);background-image:none;color:#fff!important;font-weight:800;text-decoration:none;padding:12px 22px;cursor:pointer}.gmaw-submit{width:100%;margin-top:10px}.gmaw-auth-switch,.gmaw-auth-footer{text-align:center}.gmaw-auth-footer{display:flex;justify-content:center;gap:18px;font-size:12px;color:var(--gmaw-primary);margin-top:24px}.gmaw-auth-card a{color:var(--gmaw-primary);font-weight:800;text-decoration:none}
.gmaw-account-dashboard{display:grid;grid-template-columns:285px 1fr;gap:34px;min-height:680px}.gmaw-sidebar{border-right:1px solid #ddd;padding-right:22px}.gmaw-profile{display:flex;align-items:center;gap:14px;border-bottom:1px solid #ddd;padding-bottom:22px;margin-bottom:16px}.gmaw-avatar{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--gmaw-primary),var(--gmaw-primary-2));color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900}.gmaw-profile strong,.gmaw-profile span{display:block}.gmaw-profile span{font-size:13px;color:#566070}.gmaw-nav{display:grid;gap:10px}.gmaw-nav-item{display:flex;align-items:center;gap:12px;background-color:#7a43ee;background-image:none;color:#fff!important;border-radius:9px;padding:14px 16px;font-weight:800;text-decoration:none}.gmaw-nav-item.is-active{background-color:#4b1de8;background-image:none}.gmaw-mobile-menu{display:none;width:100%;padding:12px;border:0;border-radius:8px;background:var(--gmaw-dark);color:#fff;font-weight:800;margin-bottom:12px}.gmaw-content{min-width:0;padding:8px 0}.gmaw-content-title{margin:0 0 22px;font-size:26px;font-weight:900}.gmaw-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:28px}.gmaw-stat-grid>div{background:var(--gmaw-primary);color:#fff;border-radius:10px;padding:20px}.gmaw-stat-grid strong{display:block;font-size:22px}.gmaw-stat-grid span{font-weight:800}.gmaw-recent-orders>div{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:12px;align-items:center;border:1px solid #ddd;border-radius:8px;padding:14px 18px;margin-bottom:10px}.gmaw-status{background:#eee9ff;border-radius:999px;padding:6px 12px;display:inline-flex;align-items:center;justify-content:center}.gmaw-panel{background:#f4f2ee;border-radius:8px;padding:18px;margin:0 0 18px}.gmaw-panel input{display:block;width:100%;height:42px;margin:10px 0;border:1px solid #999;border-radius:2px;padding:0 14px}.gmaw-table-wrap{overflow:auto;border:1px solid #ddd;border-radius:6px}.gmaw-table{width:100%;border-collapse:collapse;background:#fff}.gmaw-table th,.gmaw-table td{border:1px solid #ccc;padding:16px;text-align:left;vertical-align:top}.gmaw-table th{font-weight:900}.gmaw-info{background:#f7f5f8;border-top:3px solid #1785d4;color:#653aff;padding:18px}.gmaw-wc-content .woocommerce-MyAccount-navigation{display:none}.gmaw-wc-content .woocommerce-MyAccount-content{width:100%!important;float:none!important}.gmaw-item-meta{font-size:13px;color:#4b5563;margin-top:6px}.gmaw-item-meta p,.gmaw-item-meta dl{margin:4px 0}
@media (max-width: 900px){.gmaw-account-dashboard{grid-template-columns:1fr}.gmaw-sidebar{border-right:0;border-bottom:1px solid #ddd;padding-right:0;padding-bottom:16px}.gmaw-mobile-menu{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px}.gmaw-mobile-overlay{position:fixed;inset:0;background:rgba(7,17,31,.52);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s ease;z-index:99980}.gmaw-account-dashboard.gmaw-menu-open .gmaw-mobile-overlay{opacity:1;visibility:visible;pointer-events:auto}.gmaw-nav{position:fixed;top:0;left:0;bottom:0;width:min(86vw,340px);max-width:340px;display:grid!important;align-content:start;gap:10px;background:#fff;padding:24px 18px;box-shadow:20px 0 50px rgba(7,17,31,.18);overflow-y:auto;transform:translateX(-105%);visibility:hidden;transition:transform .28s ease,visibility .28s ease;z-index:99990}.gmaw-nav.is-open{transform:translateX(0);visibility:visible}.gmaw-stat-grid{grid-template-columns:1fr}.gmaw-two{grid-template-columns:1fr}.gmaw-auth-footer{flex-wrap:wrap}.gmaw-recent-orders>div{grid-template-columns:1fr}}

/* GMAW account tab panels */
.gmaw-account-dashboard .gmaw-tab-panel{display:none}
.gmaw-account-dashboard .gmaw-tab-panel.is-active{display:block}
.gmaw-wrapper,
.gmaw-wrapper *{box-sizing:border-box}
.gmaw-wrapper{font-family:var(--gmaw-font-family, Inter, "Segoe UI", Arial, sans-serif);color:var(--gmaw-text-color,#07111f)}
.gmaw-wrapper button,
.gmaw-wrapper input,
.gmaw-wrapper select,
.gmaw-wrapper textarea{font-family:inherit}

/* v1.1.75 Grovaity My Account - stronger isolated defaults and icon support */
.gmaw-wrapper{--gmaw-font-family:Inter,"Segoe UI",Arial,sans-serif;--gmaw-text-color:#07111f;--gmaw-heading-color:#07111f;--gmaw-primary:#5320e2;--gmaw-primary-2:#7c4ff5;--gmaw-dark:#18172b;--gmaw-border:#dddddd;--gmaw-muted:#f5f3f7;font-family:var(--gmaw-font-family);color:var(--gmaw-text-color)}
.gmaw-wrapper h1,.gmaw-wrapper h2,.gmaw-wrapper h3,.gmaw-wrapper h4,.gmaw-wrapper h5,.gmaw-wrapper h6,.gmaw-wrapper p,.gmaw-wrapper a,.gmaw-wrapper button,.gmaw-wrapper input,.gmaw-wrapper label,.gmaw-wrapper table,.gmaw-wrapper th,.gmaw-wrapper td{font-family:var(--gmaw-font-family);}
.gmaw-wrapper h1,.gmaw-wrapper h2,.gmaw-wrapper h3,.gmaw-wrapper h4,.gmaw-wrapper h5,.gmaw-wrapper h6{color:var(--gmaw-heading-color);}
.gmaw-nav-item{line-height:1.2;transition:all .2s ease;}
.gmaw-nav-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;min-width:18px;line-height:1;color:currentColor;}
.gmaw-nav-icon i,.gmaw-nav-icon svg{display:block;width:1em;height:1em;color:currentColor;fill:currentColor;}
.gmaw-nav-label{display:inline-flex;align-items:center;}
.gmaw-auth-card,.gmaw-sidebar,.gmaw-content,.gmaw-panel,.gmaw-table,.gmaw-form{font-family:var(--gmaw-font-family);color:var(--gmaw-text-color);}
.gmaw-form input,.gmaw-panel input{font-family:var(--gmaw-font-family);box-shadow:none;outline:none;}
.gmaw-form input:focus,.gmaw-panel input:focus{box-shadow:none;outline:none;}
.gmaw-submit,.gmaw-small-btn,.gmaw-google-btn,.gmaw-auth-tab,.gmaw-mobile-menu{font-family:var(--gmaw-font-family);}


/* v1.1.78 My Account auth/style cleanup */
.gmaw-wrapper.gmaw-auth-mode{background:transparent;border:0;padding:0;box-shadow:none;}
.gmaw-google-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;line-height:1;}
.gmaw-auth-tabs{overflow:hidden;}
.gmaw-auth-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.2;}
.gmaw-auth-tab svg,.gmaw-nav-icon svg{width:1em;height:1em;display:block;fill:currentColor;}
.gmaw-wrapper .gmaw-privacy{display:none!important;}


/* v1.1.79 My Account address/account forms + endpoint URL cleanup support */
.gmaw-wc-content form,
.gmaw-wc-content .woocommerce-address-fields,
.gmaw-wc-content .woocommerce-EditAccountForm{width:100%;max-width:100%;}
.gmaw-wc-content .form-row{margin:0 0 16px;display:block;}
.gmaw-wc-content .form-row-first,
.gmaw-wc-content .form-row-last{width:48%;display:inline-block;vertical-align:top;}
.gmaw-wc-content .form-row-last{margin-left:4%;}
.gmaw-wc-content label,
.gmaw-wc-content legend{display:block;margin:0 0 7px;font-weight:700;color:var(--gmaw-text-color,#07111f);line-height:1.3;}
.gmaw-wc-content input.input-text,
.gmaw-wc-content input[type="text"],
.gmaw-wc-content input[type="email"],
.gmaw-wc-content input[type="password"],
.gmaw-wc-content input[type="tel"],
.gmaw-wc-content select,
.gmaw-wc-content textarea{width:100%;min-height:44px;border:1px solid var(--gmaw-border,#dddddd);border-radius:8px;background:#fff;color:var(--gmaw-text-color,#07111f);padding:10px 14px;box-shadow:none;outline:none;}
.gmaw-wc-content input:focus,
.gmaw-wc-content select:focus,
.gmaw-wc-content textarea:focus{border-color:var(--gmaw-primary,#5320e2);box-shadow:none;outline:none;}
.gmaw-wc-content fieldset{border:1px solid var(--gmaw-border,#dddddd);border-radius:10px;padding:16px;margin:20px 0;}
.gmaw-wc-content .button,
.gmaw-wc-content button[type="submit"]{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:linear-gradient(135deg,var(--gmaw-primary,#5320e2),var(--gmaw-primary-2,#7c4ff5));color:#fff!important;font-weight:800;text-decoration:none;padding:12px 22px;cursor:pointer;}
@media (max-width: 767px){.gmaw-wc-content .form-row-first,.gmaw-wc-content .form-row-last{width:100%;display:block;margin-left:0;}}

body.gmaw-mobile-menu-open{overflow:hidden}

/* v1.1.81 My Account mobile slide close + z-index isolation */
.gmaw-mobile-close{display:none;align-items:center;justify-content:center;border:0;background:var(--gmaw-dark,#18172b);color:#fff;width:38px;height:38px;border-radius:10px;font-size:28px;line-height:1;cursor:pointer;z-index:1000005;box-shadow:0 10px 25px rgba(7,17,31,.18)}
@media (max-width: 900px){
  .gmaw-account-dashboard.gmaw-menu-open{position:relative;z-index:1000000}
  .gmaw-account-dashboard .gmaw-mobile-overlay{z-index:1000001!important}
  .gmaw-account-dashboard .gmaw-nav{z-index:1000002!important;padding-top:68px!important}
  .gmaw-account-dashboard .gmaw-nav.is-open{z-index:1000002!important}
  .gmaw-mobile-close{display:flex;position:absolute;top:14px;right:14px}
  body.gmaw-mobile-menu-open .gpma-search-widget,
  body.gmaw-mobile-menu-open .gpma-search-trigger,
  body.gmaw-mobile-menu-open .gpma-search-toggle,
  body.gmaw-mobile-menu-open .gpma-product-search-widget,
  body.gmaw-mobile-menu-open .gpma-slide-panel,
  body.gmaw-mobile-menu-open .gpma-search-wrapper{z-index:1!important}
}

/* GPMA v1.1.84 - My Account style-control cleanup and scoped defaults */
.gmaw-wrapper :where(h1,h2,h3,h4,h5,h6,p,span,strong,label,legend,input,select,textarea,button,a,table,th,td){font-family:var(--gmaw-font-family);}
.gmaw-wrapper :where(input,select,textarea){box-sizing:border-box;max-width:100%;}
.gmaw-wrapper :where(.gmaw-nav-item){background-color:#7a43ee;background-image:none;color:#fff;text-decoration:none;}
.gmaw-wrapper :where(.gmaw-nav-item.is-active){background-color:#4b1de8;background-image:none;}
.gmaw-wrapper .gmaw-nav-icon svg{display:block;}
.gmaw-wrapper .gmaw-recent-orders>div{box-sizing:border-box;overflow:hidden;}
.gmaw-wrapper .gmaw-recent-orders>div>*{min-width:0;word-break:break-word;}
.gmaw-wrapper .gmaw-status{box-sizing:border-box;line-height:1.2;}
.gmaw-wrapper .gmaw-wc-content form .form-row{box-sizing:border-box;}
.gmaw-wrapper .gmaw-wc-content fieldset{box-sizing:border-box;min-width:0;}
.gmaw-wrapper .gmaw-wc-content .select2-container{width:100%!important;max-width:100%;}
.gmaw-wrapper .gmaw-wc-content .select2-selection{min-height:42px;display:flex;align-items:center;}


/* GPMA v1.1.90 - My Account Google button hover + password visibility icon fix */
.gmaw-google-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  text-align:center !important;
  line-height:1 !important;
  background-image:none;
}
.gmaw-password-wrap{position:relative;display:flex;align-items:center;}
.gmaw-password-wrap input{padding-right:52px;}
.gmaw-password-toggle{
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border:0;
  background:transparent;
  color:var(--gmaw-dark);
  padding:0;
  cursor:pointer;
  z-index:2;
  line-height:1;
}
.gmaw-password-toggle svg{width:1em;height:1em;display:block;}
.gmaw-password-toggle .gmaw-eye-hide{display:none;}
.gmaw-password-toggle.is-visible .gmaw-eye-show{display:none;}
.gmaw-password-toggle.is-visible .gmaw-eye-hide{display:inline-flex;}

/* GPMA v1.1.91 - My Account auth/google button control cleanup
   Default buttons use solid background-color, not hardcoded gradient, so Elementor Classic/Gradient controls can override cleanly. */


/* GPMA v1.1.92 - Auth button isolation and hover control fix */
.gmaw-wrapper .gmaw-auth-card button.gmaw-submit,
.gmaw-wrapper .gmaw-auth-card .gmaw-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  background-color:var(--gmaw-primary,#5320e2);
  background-image:none;
  color:#fff;
  border:0;
  box-shadow:none;
}
.gmaw-wrapper .gmaw-auth-card button.gmaw-submit:hover,
.gmaw-wrapper .gmaw-auth-card .gmaw-submit:hover{
  background-color:var(--gmaw-primary-2,#7c4ff5);
  background-image:none;
  color:#fff;
}
.gmaw-wrapper .gmaw-auth-card .gmaw-google-btn{
  background-color:#fff;
  background-image:none;
}
.gmaw-wrapper .gmaw-auth-card .gmaw-google-btn:hover{
  background-color:#f5f3ff;
  background-image:none;
}


/* GPMA v1.1.93 - My Account password hover + recent orders layout fix */
.gmaw-wrapper .gmaw-password-toggle:hover,
.gmaw-wrapper .gmaw-password-toggle:focus{
  color:var(--gmaw-primary,#5320e2);
}
.gmaw-wrapper .gmaw-password-toggle:hover svg,
.gmaw-wrapper .gmaw-password-toggle:focus svg{
  fill:currentColor;
}
.gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-recent-orders .gmaw-recent-order-row,
.gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-recent-orders > div{
  display:grid;
  grid-template-columns:minmax(74px,.8fr) minmax(120px,1fr) auto max-content;
  align-items:center;
  column-gap:16px;
  row-gap:8px;
  width:100%;
  box-sizing:border-box;
}
.gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-recent-order-status,
.gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-status{
  width:auto;
  min-width:82px;
  max-width:140px;
  padding:6px 14px;
  justify-self:center;
  white-space:nowrap;
}
.gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-recent-order-total{
  justify-self:end;
  text-align:right;
  white-space:nowrap;
}
@media (max-width: 640px){
  .gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-recent-orders .gmaw-recent-order-row,
  .gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-recent-orders > div{
    grid-template-columns:1fr 1fr;
  }
  .gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-recent-order-status{justify-self:start;}
  .gmaw-wrapper [data-gmaw-panel="dashboard"] .gmaw-recent-order-total{justify-self:end;}
}


/* GPMA v1.1.94 My Account button classic color conflict fix */
.gmaw-wrapper .gmaw-submit,
.gmaw-wrapper .gmaw-small-btn,
.gmaw-wrapper .gmaw-wc-content button,
.gmaw-wrapper .gmaw-wc-content .button,
.gmaw-wrapper .gmaw-wc-content input[type="submit"],
.gmaw-wrapper .gmaw-google-btn,
.gmaw-wrapper .gmaw-logout-link{
    background-image: none;
}
.gmaw-wrapper .gmaw-submit:hover,
.gmaw-wrapper .gmaw-small-btn:hover,
.gmaw-wrapper .gmaw-wc-content button:hover,
.gmaw-wrapper .gmaw-wc-content .button:hover,
.gmaw-wrapper .gmaw-wc-content input[type="submit"]:hover,
.gmaw-wrapper .gmaw-google-btn:hover,
.gmaw-wrapper .gmaw-logout-link:hover{
    background-image: none;
}


/* GPMA v1.1.95 - Google hover selector + password background cleanup */
.gmaw-wrapper .gmaw-password-toggle,
.gmaw-wrapper .gmaw-password-toggle:hover,
.gmaw-wrapper .gmaw-password-toggle:focus{
  background:transparent;
  background-color:transparent;
  background-image:none;
}
.gmaw-wrapper .gmaw-auth-card button.gmaw-google-btn:hover,
.gmaw-wrapper .gmaw-auth-card .gmaw-google-btn:hover,
.gmaw-wrapper .gmaw-auth-card button.gmaw-google-btn:focus,
.gmaw-wrapper .gmaw-auth-card .gmaw-google-btn:focus{
  background-image:none;
}

/* GPMA v1.1.96 - Referral dashboard stat box styling hooks */
.gmaw-wrapper [data-gmaw-panel="referral"] .gmaw-referral-stats{display:flex;flex-wrap:wrap;gap:12px;}
.gmaw-wrapper [data-gmaw-panel="referral"] .gmaw-referral-stat{background:#f5f4ef;border-radius:8px;padding:16px 18px;min-width:180px;box-sizing:border-box;}
.gmaw-wrapper [data-gmaw-panel="referral"] .gmaw-referral-stat strong{display:block;margin-bottom:8px;color:#07111f;font-weight:700;}
.gmaw-wrapper [data-gmaw-panel="referral"] .gmaw-referral-stat span{display:block;color:#07111f;font-size:13px;}

/* GPMA v1.1.97 - Referral coupon edit + stronger Google hover classic color support */
.gmaw-wrapper .gmaw-referral-coupon-form{display:flex;flex-direction:column;gap:12px;align-items:flex-start;}
.gmaw-wrapper .gmaw-referral-coupon-form input[name="gmaw_referral_coupon_code"]{width:100%;text-transform:uppercase;box-sizing:border-box;}
.gmaw-wrapper .gmaw-auth-card button.gmaw-google-btn:hover,
.gmaw-wrapper .gmaw-auth-card .gmaw-google-btn:hover,
.gmaw-wrapper .gmaw-auth-card button.gmaw-google-btn:focus,
.gmaw-wrapper .gmaw-auth-card .gmaw-google-btn:focus{background-image:none;}


/* v1.2.0 - GMAW responsive Account Menu icon/text controls */
.gmaw-mobile-menu{
    align-items:center;
    justify-content:center;
    gap:8px;
}
.gmaw-mobile-menu-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:1;
}
.gmaw-mobile-menu-icon svg{
    display:block;
    fill:currentColor;
}
.gmaw-mobile-menu-text{
    display:inline-block;
}
@media (max-width: 767px){
    .gmaw-mobile-menu{display:flex;}
}


/* v1.2.0 - GMAW mobile close hover background + account menu icon render support */
.gmaw-mobile-close:hover{
    text-decoration:none;
}
.gmaw-mobile-menu-icon i,
.gmaw-mobile-menu-icon svg{
    display:block;
    line-height:1;
}

/* GPMA v1.2.34 - Checkout Form Widget clean CSS architecture
   Default style = plugin CSS only.
   Elementor Style Tab CSS may override these defaults.
   No duplicate checkout patches, no !important, no global color dependency. */

.gcfw-wrapper,
.gcfw-wrapper *{
    box-sizing:border-box;
}

.gcfw-wrapper.gcfw-checkout-widget{
    --gcfw-text:#07111f;
    --gcfw-muted:#929aae;
    --gcfw-border:#e6e8f3;
    --gcfw-field:#fbfbfe;
    --gcfw-soft:#f3f1ff;
    --gcfw-primary:#6251ff;
    --gcfw-primary-hover:#4f3df0;
    width:100%;
    max-width:1120px;
    margin:0 auto;
    padding:0;
    color:var(--gcfw-text);
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
    overflow:visible;
    font-family:Inter, "Segoe UI", Arial, sans-serif;
}

.gcfw-wrapper.gcfw-checkout-widget form.checkout,
.gcfw-wrapper.gcfw-checkout-widget form.woocommerce-checkout{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);
    column-gap:28px;
    row-gap:0;
    width:100%;
    margin:0;
    padding:0;
    background:transparent;
    border:0;
    box-shadow:none;
    overflow:visible;
    align-items:start;
}

/* Cards */
.gcfw-wrapper.gcfw-checkout-widget #customer_details{
    grid-column:1;
    grid-row:1 / span 2;
    width:100%;
    margin:0;
    padding:30px;
    background:#fff;
    border:0;
    border-radius:22px;
    box-shadow:0 22px 55px rgba(99,87,255,.09);
    overflow:visible;
}

.gcfw-wrapper.gcfw-checkout-widget #order_review_heading{
    grid-column:2;
    grid-row:1;
    width:100%;
    margin:0;
    padding:30px 30px 12px;
    background:#fff;
    color:var(--gcfw-text);
    border:0;
    border-radius:22px 22px 0 0;
    box-shadow:none;
    font-size:26px;
    line-height:1.15;
    font-weight:800;
    letter-spacing:-.03em;
}

.gcfw-wrapper.gcfw-checkout-widget #order_review,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order{
    grid-column:2;
    grid-row:2;
    width:100%;
    margin:0;
    padding:0 30px 34px;
    background:#fff;
    border:0;
    border-radius:0 0 22px 22px;
    box-shadow:none;
    overflow:visible;
}

/* Hide shipping section when disabled */
.gcfw-wrapper.gpma-checkout-shipping-disabled .woocommerce-shipping-fields,
.gcfw-wrapper.gpma-checkout-shipping-disabled #ship-to-different-address,
.gcfw-wrapper.gpma-checkout-shipping-disabled .shipping_address{
    display:none;
}

/* Remove nested Woo wrappers/backgrounds */
.gcfw-wrapper.gcfw-checkout-widget .col2-set,
.gcfw-wrapper.gcfw-checkout-widget #customer_details .col-1,
.gcfw-wrapper.gcfw-checkout-widget #customer_details .col-2,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-billing-fields,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-shipping-fields,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-additional-fields,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-additional-fields__field-wrapper,
.gcfw-wrapper.gcfw-checkout-widget #payment,
.gcfw-wrapper.gcfw-checkout-widget #payment ul.payment_methods,
.gcfw-wrapper.gcfw-checkout-widget #payment div.payment_box{
    float:none;
    clear:both;
    width:100%;
    max-width:100%;
    margin:0;
    padding:0;
    background:transparent;
    background-image:none;
    border:0;
    border-radius:0;
    box-shadow:none;
    overflow:visible;
}

.gcfw-wrapper.gcfw-checkout-widget .col2-set .col-1,
.gcfw-wrapper.gcfw-checkout-widget .col2-set .col-2{
    width:100%;
    max-width:100%;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-additional-fields{
    margin-top:18px;
}
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-additional-fields > h3{
    display:none;
}

/* Headings */
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-billing-fields > h3,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-shipping-fields > h3{
    margin:0 0 24px;
    color:var(--gcfw-text);
    font-size:26px;
    line-height:1.15;
    font-weight:800;
    letter-spacing:-.03em;
}

/* Fields */
.gcfw-wrapper.gcfw-checkout-widget .form-row{
    display:block;
    float:none;
    clear:both;
    width:100%;
    max-width:100%;
    margin:0 0 18px;
    padding:0;
}

.gcfw-wrapper.gcfw-checkout-widget label{
    display:block;
    margin:0 0 8px;
    color:var(--gcfw-text);
    font-size:14px;
    line-height:1.3;
    font-weight:600;
}

.gcfw-wrapper.gcfw-checkout-widget .required{
    color:var(--gcfw-primary);
}

.gcfw-wrapper.gcfw-checkout-widget input.input-text,
.gcfw-wrapper.gcfw-checkout-widget textarea,
.gcfw-wrapper.gcfw-checkout-widget select,
.gcfw-wrapper.gcfw-checkout-widget .select2-container .select2-selection{
    width:100%;
    min-height:52px;
    padding:13px 16px;
    color:var(--gcfw-text);
    background:var(--gcfw-field);
    background-image:none;
    border:1px solid var(--gcfw-border);
    border-radius:13px;
    box-shadow:none;
    outline:none;
}

.gcfw-wrapper.gcfw-checkout-widget textarea{
    min-height:96px;
    resize:vertical;
}

.gcfw-wrapper.gcfw-checkout-widget input::placeholder,
.gcfw-wrapper.gcfw-checkout-widget textarea::placeholder{
    color:#c0c5d4;
}

.gcfw-wrapper.gcfw-checkout-widget input.input-text:focus,
.gcfw-wrapper.gcfw-checkout-widget textarea:focus,
.gcfw-wrapper.gcfw-checkout-widget select:focus,
.gcfw-wrapper.gcfw-checkout-widget .select2-container--open .select2-selection{
    border-color:#cfc8ff;
    box-shadow:0 0 0 3px rgba(98,81,255,.10);
}

/* Coupon inside billing */
.gcfw-wrapper.gcfw-checkout-widget > .woocommerce-form-coupon-toggle,
.gcfw-wrapper.gcfw-checkout-widget > form.checkout_coupon,
.gcfw-wrapper.gcfw-checkout-widget > form.woocommerce-form-coupon{
    display:none;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing{
    display:block;
    width:100%;
    margin:20px 0 0;
    padding:18px;
    background:var(--gcfw-soft);
    background-image:none;
    border:1px solid #e5e0ff;
    border-radius:16px;
    box-shadow:none;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing .woocommerce-form-coupon-toggle,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing .woocommerce-form-coupon-toggle .woocommerce-info{
    display:flex;
    align-items:center;
    gap:9px;
    margin:0 0 14px;
    padding:0;
    color:#263149;
    background:transparent;
    border:0;
    box-shadow:none;
    font-size:14px;
    line-height:1.35;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing .woocommerce-form-coupon-toggle .woocommerce-info:before{
    display:none;
    content:none;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing .woocommerce-form-coupon-toggle .woocommerce-info:after{
    content:"";
    order:-1;
    width:14px;
    height:14px;
    flex:0 0 14px;
    background:transparent;
    border:2px solid var(--gcfw-primary);
    border-radius:4px;
    transform:rotate(-25deg);
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing .showcoupon{
    color:var(--gcfw-primary);
    font-weight:700;
    pointer-events:none;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon,
.gcfw-wrapper.gcfw-checkout-widget form.checkout_coupon.gcfw-coupon-form-visible,
.gcfw-wrapper.gcfw-checkout-widget form.woocommerce-form-coupon.gcfw-coupon-form-visible{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    margin:0;
    padding:0;
    background:transparent;
    border:0;
    box-shadow:none;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon > p:not(.form-row),
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon > p:not(.form-row){
    display:none;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon .form-row,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon .form-row{
    float:none;
    clear:none;
    width:auto;
    margin:0;
    padding:0;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing input.input-text{
    min-height:48px;
    background:#fff;
    border-color:#d9d1ff;
    border-radius:10px;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing button.button{
    min-height:48px;
    padding:0 22px;
    color:#fff;
    background:var(--gcfw-primary);
    background-image:none;
    border:0;
    border-radius:10px;
    box-shadow:none;
    font-weight:800;
}

.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing button.button:hover{
    color:#fff;
    background:var(--gcfw-primary-hover);
    background-image:none;
}

/* Order summary */
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table{
    width:100%;
    margin:0 0 22px;
    padding:0;
    background:transparent;
    border:0;
    border-collapse:collapse;
    border-spacing:0;
    box-shadow:none;
    table-layout:fixed;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table thead th{
    padding:0 0 12px;
    color:#9ca3b8;
    background:transparent;
    border:0;
    border-bottom:1px solid #edf0f7;
    font-size:12px;
    letter-spacing:.07em;
    text-transform:uppercase;
    font-weight:800;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table th,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table td{
    padding:15px 0;
    color:var(--gcfw-text);
    background:transparent;
    border:0;
    border-bottom:1px solid #edf0f7;
    box-shadow:none;
    vertical-align:middle;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table thead th.product-name,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tbody td.product-name{
    width:74%;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table thead th.product-total,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tbody td.product-total,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table thead th:last-child,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tbody td:last-child,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tfoot td{
    width:26%;
    text-align:right;
    white-space:nowrap;
    font-weight:800;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tbody td.product-name{
    font-size:15px;
    line-height:1.35;
    font-weight:700;
    word-break:normal;
    overflow-wrap:break-word;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table .product-quantity{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:18px;
    min-width:auto;
    margin-left:6px;
    padding:0 7px;
    color:var(--gcfw-primary);
    background:#eee9ff;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
    vertical-align:middle;
}

/* Shipping row */
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping th{
    width:36%;
    color:#5b6478;
    text-align:left;
    vertical-align:top;
    font-weight:500;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping td{
    width:64%;
    text-align:right;
    vertical-align:top;
    font-weight:600;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping ul{
    display:inline-flex;
    flex-direction:column;
    align-items:flex-end;
    gap:10px;
    max-width:100%;
    margin:0;
    padding:0;
    list-style:none;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping li{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    margin:0;
    padding:0;
    list-style:none;
    white-space:nowrap;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping input[type="radio"]{
    flex:0 0 auto;
    width:16px;
    height:16px;
    margin:0;
    accent-color:var(--gcfw-primary);
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping label{
    display:inline-flex;
    align-items:center;
    justify-content:flex-end;
    margin:0;
    line-height:1.25;
    font-weight:600;
    white-space:nowrap;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.order-total th,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.order-total td{
    padding-top:18px;
    color:var(--gcfw-primary);
    border-bottom:0;
    font-size:19px;
    font-weight:900;
}

/* Payment methods */
.gcfw-wrapper.gcfw-checkout-widget #payment:before{
    content:"PAYMENT METHOD";
    display:block;
    margin:0 0 12px;
    color:#9ca3b8;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.06em;
}

.gcfw-wrapper.gcfw-checkout-widget #payment ul.payment_methods{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin:0 0 20px;
    padding:0;
}

.gcfw-wrapper.gcfw-checkout-widget #payment ul.payment_methods li{
    position:relative;
    display:grid;
    grid-template-columns:24px minmax(0,1fr) auto;
    align-items:center;
    column-gap:12px;
    min-height:74px;
    margin:0;
    padding:14px 16px;
    list-style:none;
    background:#fff;
    border:1px solid var(--gcfw-border);
    border-radius:15px;
    box-shadow:none;
}

.gcfw-wrapper.gcfw-checkout-widget #payment ul.payment_methods li:has(input:checked){
    border-color:var(--gcfw-primary);
}

.gcfw-wrapper.gcfw-checkout-widget #payment ul.payment_methods li input[type="radio"]{
    grid-column:1;
    grid-row:1 / span 2;
    width:18px;
    height:18px;
    margin:0;
    accent-color:var(--gcfw-primary);
}

.gcfw-wrapper.gcfw-checkout-widget #payment ul.payment_methods li label{
    grid-column:2 / 4;
    grid-row:1;
    display:flex;
    align-items:center;
    gap:10px;
    width:100%;
    margin:0;
    color:var(--gcfw-text);
    font-size:15px;
    line-height:1.2;
    font-weight:800;
}

.gcfw-wrapper.gcfw-checkout-widget #payment ul.payment_methods li label img,
.gcfw-wrapper.gcfw-checkout-widget #payment ul.payment_methods li img{
    display:block;
    max-width:32px;
    max-height:32px;
    width:auto;
    height:auto;
    object-fit:contain;
    margin:0 0 0 auto;
    float:none;
}

.gcfw-wrapper.gcfw-checkout-widget #payment div.payment_box,
.gcfw-wrapper.gcfw-checkout-widget #payment .payment_box{
    grid-column:2 / 4;
    grid-row:2;
    display:block;
    margin:0;
    padding:4px 0 0;
    color:#9ca3b8;
    background:transparent;
    border:0;
    box-shadow:none;
    font-size:13px;
    line-height:1.35;
}

.gcfw-wrapper.gcfw-checkout-widget #payment div.payment_box p,
.gcfw-wrapper.gcfw-checkout-widget #payment .payment_box p{
    margin:0;
    color:#9ca3b8;
}

.gcfw-wrapper.gcfw-checkout-widget #payment div.payment_box:before,
.gcfw-wrapper.gcfw-checkout-widget #payment .payment_box:before{
    display:none;
}

/* Policy/terms and place order */
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-privacy-policy-text,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-policy-text,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-terms-text{
    margin:20px 0 0;
    color:#929aae;
    font-size:14px;
    line-height:1.55;
}

.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .woocommerce-privacy-policy-text,
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .gcfw-policy-text,
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .gcfw-terms-text{
    margin:0 0 22px;
    padding:0;
}

.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .woocommerce-privacy-policy-text p,
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .gcfw-policy-text p,
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .gcfw-terms-text p{
    margin:0 0 10px;
}

.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .woocommerce-privacy-policy-text p:last-child,
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .gcfw-policy-text p:last-child,
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .gcfw-terms-text p:last-child{
    margin-bottom:22px;
}

.gcfw-wrapper.gcfw-checkout-widget .woocommerce-privacy-policy-text a,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-policy-text a,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-terms-text a{
    color:var(--gcfw-primary);
    font-weight:700;
}

.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order{
    margin:22px 0 0;
    padding:0 0 34px;
    overflow:visible;
}

.gcfw-wrapper.gcfw-checkout-widget #place_order{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:58px;
    margin:0;
    padding:0 22px;
    color:#fff;
    background:var(--gcfw-primary);
    background-image:none;
    border:0;
    border-radius:13px;
    box-shadow:none;
    font-size:16px;
    line-height:1.2;
    font-weight:800;
}

.gcfw-wrapper.gcfw-checkout-widget #place_order:hover{
    color:#fff;
    background:var(--gcfw-primary-hover);
    background-image:none;
    box-shadow:none;
}

/* Notices */
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-info,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-error,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-message{
    margin:0 0 18px;
    padding:14px 18px;
    color:var(--gcfw-text);
    background:#fff;
    border:1px solid var(--gcfw-border);
    border-left:4px solid var(--gcfw-primary);
    border-radius:14px;
    box-shadow:none;
}

/* Responsive */
@media (max-width: 900px){
    .gcfw-wrapper.gcfw-checkout-widget{
        max-width:430px;
    }
    .gcfw-wrapper.gcfw-checkout-widget form.checkout,
    .gcfw-wrapper.gcfw-checkout-widget form.woocommerce-checkout{
        display:flex;
        flex-direction:column;
        gap:22px;
    }
    .gcfw-wrapper.gcfw-checkout-widget #customer_details,
    .gcfw-wrapper.gcfw-checkout-widget #order_review_heading,
    .gcfw-wrapper.gcfw-checkout-widget #order_review,
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order{
        grid-column:auto;
        grid-row:auto;
        width:100%;
    }
    .gcfw-wrapper.gcfw-checkout-widget #customer_details{
        padding:24px;
        border-radius:20px;
    }
    .gcfw-wrapper.gcfw-checkout-widget #order_review_heading{
        padding:24px 24px 12px;
        border-radius:20px 20px 0 0;
    }
    .gcfw-wrapper.gcfw-checkout-widget #order_review,
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order{
        padding:0 24px 30px;
        border-radius:0 0 20px 20px;
    }
}

@media (max-width: 480px){
    .gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon,
    .gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon,
    .gcfw-wrapper.gcfw-checkout-widget form.checkout_coupon.gcfw-coupon-form-visible,
    .gcfw-wrapper.gcfw-checkout-widget form.woocommerce-form-coupon.gcfw-coupon-form-visible{
        grid-template-columns:minmax(0,1fr) auto;
        gap:10px;
    }
    .gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing button.button{
        padding:0 18px;
    }
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table thead th.product-name,
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tbody td.product-name{
        width:70%;
    }
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table thead th.product-total,
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tbody td.product-total,
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table thead th:last-child,
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tbody td:last-child{
        width:30%;
    }
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping th{
        width:34%;
    }
    .gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping td{
        width:66%;
    }
}


/* GPMA v1.2.35 - Place order policy spacing cleanup */
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-payment,
.gcfw-wrapper.gcfw-checkout-widget #payment,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-order-card,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-right,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-column-right{
    overflow:visible;
}

.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order{
    clear:both;
}

.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order #place_order{
    margin-top:0;
    margin-bottom:0;
    box-shadow:none;
}


/* GPMA v1.2.36 - Checkout coupon/shipment/style-control cleanup */
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon,
.gcfw-wrapper.gcfw-checkout-widget form.checkout_coupon.gcfw-coupon-form-visible,
.gcfw-wrapper.gcfw-checkout-widget form.woocommerce-form-coupon.gcfw-coupon-form-visible{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(118px,auto);
    align-items:center;
    gap:12px;
}
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon .form-row-first,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon .form-row-last,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon .form-row-first,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon .form-row-last{
    float:none;
    width:auto;
    max-width:none;
}
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon .form-row-first,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon .form-row-first{
    min-width:0;
}
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon .form-row-last,
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon .form-row-last{
    justify-self:stretch;
}
.gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing button.button{
    width:100%;
    white-space:nowrap;
}

/* Shipment options readable one-line layout */
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping th,
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping td{
    padding-top:16px;
    padding-bottom:16px;
}
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping td{
    text-align:right;
}
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping ul{
    display:inline-flex;
    flex-direction:column;
    align-items:flex-end;
    gap:8px;
}
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping li{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    white-space:nowrap;
}
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping label{
    display:inline-flex;
    align-items:center;
    justify-content:flex-end;
    gap:4px;
    white-space:nowrap;
    margin:0;
}
.gcfw-wrapper.gcfw-checkout-widget .woocommerce-checkout-review-order-table tr.shipping input[type="radio"]{
    margin:0;
}

/* Keep place order spacing clean */
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .woocommerce-privacy-policy-text p:last-child,
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .gcfw-policy-text p:last-child,
.gcfw-wrapper.gcfw-checkout-widget .form-row.place-order .gcfw-terms-text p:last-child{
    margin-bottom:22px;
}
.gcfw-wrapper.gcfw-checkout-widget #place_order{
    box-shadow:none;
}
@media (max-width: 480px){
    .gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.checkout_coupon,
    .gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing form.woocommerce-form-coupon,
    .gcfw-wrapper.gcfw-checkout-widget form.checkout_coupon.gcfw-coupon-form-visible,
    .gcfw-wrapper.gcfw-checkout-widget form.woocommerce-form-coupon.gcfw-coupon-form-visible{
        grid-template-columns:minmax(0,1fr) minmax(92px,auto);
        gap:10px;
    }
    .gcfw-wrapper.gcfw-checkout-widget .gcfw-coupon-inside-billing button.button{
        padding-left:14px;
        padding-right:14px;
    }
}

/* Grovaity My Account wallet top-up checkout modal */
.gmaw-topup-modal[hidden]{display:none!important;}
.gmaw-topup-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:24px;}
.gmaw-topup-modal-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55);}
.gmaw-topup-modal-content{position:relative;z-index:1;width:min(980px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:24px;box-shadow:0 18px 60px rgba(0,0,0,.25);}
.gmaw-topup-close{position:absolute;top:10px;right:12px;width:36px;height:36px;border:0;border-radius:50%;font-size:24px;line-height:1;background:#f4f4f4;cursor:pointer;}
.gmaw-topup-message{margin-top:10px;}
.gmaw-topup-panel .gmaw-topup-amount{margin-bottom:10px;}
.gmaw-orders-default .woocommerce-orders-table,
.gmaw-order-details-default table.shop_table{width:100%;}
.gmaw-orders-default .woocommerce-pagination{display:flex;gap:10px;margin-top:18px;}
.gmaw-orders-default .woocommerce-button,
.gmaw-order-details-default .woocommerce-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;}
@media (max-width:767px){.gmaw-topup-modal{padding:10px;align-items:flex-start}.gmaw-topup-modal-content{max-height:96vh;padding:18px;margin-top:10px}}

/* v1.0.5 - Grovaity My Account top-up popup checkout modern UI */
.gmaw-topup-modal{
    background:rgba(245,247,255,.72);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}
.gmaw-topup-modal-overlay{background:rgba(13,18,35,.28);}
.gmaw-topup-modal-content{
    width:min(520px,calc(100vw - 32px));
    max-height:94vh;
    padding:0;
    border-radius:18px;
    background:#fff;
    box-shadow:0 22px 70px rgba(44,38,94,.22);
    border:1px solid rgba(88,92,135,.12);
    overflow:auto;
}
.gmaw-topup-close{
    top:12px;
    right:12px;
    z-index:5;
    width:34px;
    height:34px;
    border-radius:10px;
    color:#0b1426;
    background:#f3f5ff;
    box-shadow:none;
}
.gmaw-topup-modern-checkout{
    padding:22px 22px 24px;
    background:linear-gradient(180deg,#ffffff 0%,#fbfaff 100%);
}
.gmaw-topup-modern-checkout .woocommerce-form-coupon-toggle,
.gmaw-topup-modern-checkout form.checkout_coupon,
.gmaw-topup-modern-checkout .woocommerce-info:has(.showcoupon){display:none!important;}
.gmaw-topup-modern-checkout .woocommerce-notices-wrapper .woocommerce-info{display:none!important;}
.gmaw-topup-modern-checkout form.checkout{margin:0;}
.gmaw-topup-modern-checkout .col2-set,
.gmaw-topup-modern-checkout .woocommerce-billing-fields,
.gmaw-topup-modern-checkout .woocommerce-checkout-review-order{
    float:none!important;
    width:100%!important;
}
.gmaw-topup-modern-checkout .col2-set .col-1,
.gmaw-topup-modern-checkout .col2-set .col-2{
    float:none!important;
    width:100%!important;
    max-width:100%!important;
}
.gmaw-topup-modern-checkout .woocommerce-shipping-fields,
.gmaw-topup-modern-checkout .woocommerce-additional-fields{display:none!important;}
.gmaw-topup-modern-checkout h3,
.gmaw-topup-modern-checkout #order_review_heading{
    margin:0 0 18px;
    color:#060b16;
    font-size:20px;
    font-weight:800;
    line-height:1.25;
}
.gmaw-topup-modern-checkout .form-row{margin:0 0 14px!important;padding:0!important;}
.gmaw-topup-modern-checkout label{
    display:block;
    margin:0 0 8px;
    color:#1f2a44;
    font-size:12px;
    font-weight:700;
}
.gmaw-topup-modern-checkout abbr.required{color:#635bff;text-decoration:none;}
.gmaw-topup-modern-checkout input.input-text,
.gmaw-topup-modern-checkout input[type="text"],
.gmaw-topup-modern-checkout input[type="email"],
.gmaw-topup-modern-checkout input[type="tel"],
.gmaw-topup-modern-checkout textarea,
.gmaw-topup-modern-checkout select,
.gmaw-topup-modern-checkout .select2-selection{
    width:100%;
    min-height:44px;
    border:1px solid #dde2f1;
    border-radius:10px;
    background:#fafbff;
    color:#0b1426;
    padding:10px 14px;
    box-shadow:none;
    outline:none;
}
.gmaw-topup-modern-checkout input::placeholder{color:#b7bdd4;}
.gmaw-topup-modern-checkout input:focus,
.gmaw-topup-modern-checkout textarea:focus,
.gmaw-topup-modern-checkout select:focus{
    border-color:#635bff;
    background:#fff;
}
.gmaw-topup-modern-checkout #order_review_heading{margin-top:20px;}
.gmaw-topup-modern-checkout table.shop_table{
    border:1px solid #e6e9f5!important;
    border-radius:12px!important;
    border-collapse:separate!important;
    border-spacing:0;
    overflow:hidden;
    margin:0 0 16px!important;
    background:#fff;
}
.gmaw-topup-modern-checkout table.shop_table th,
.gmaw-topup-modern-checkout table.shop_table td{
    padding:13px 16px!important;
    border:0!important;
    border-bottom:1px solid #eef1f8!important;
    color:#111827;
    font-size:13px;
}
.gmaw-topup-modern-checkout table.shop_table thead th{
    color:#9aa3ba;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:.06em;
    font-weight:800;
}
.gmaw-topup-modern-checkout table.shop_table tr:last-child th,
.gmaw-topup-modern-checkout table.shop_table tr:last-child td{border-bottom:0!important;}
.gmaw-topup-modern-checkout table.shop_table .order-total th,
.gmaw-topup-modern-checkout table.shop_table .order-total td,
.gmaw-topup-modern-checkout table.shop_table .order-total strong{
    color:#635bff;
    font-size:16px;
    font-weight:900;
}
.gmaw-topup-modern-checkout #payment{
    background:transparent!important;
    border-radius:0!important;
}
.gmaw-topup-modern-checkout #payment ul.payment_methods{
    padding:0!important;
    border:0!important;
    margin:0 0 18px!important;
}
.gmaw-topup-modern-checkout #payment ul.payment_methods li{
    position:relative;
    margin:0 0 10px!important;
    padding:14px 14px!important;
    border:1px solid #e3e7f5;
    border-radius:12px;
    background:#fff;
    color:#0b1426;
}
.gmaw-topup-modern-checkout #payment ul.payment_methods li input[type="radio"]{margin-right:10px;}
.gmaw-topup-modern-checkout #payment ul.payment_methods li:has(input:checked){border-color:#635bff;box-shadow:0 0 0 1px rgba(99,91,255,.18);}
.gmaw-topup-modern-checkout #payment div.payment_box{
    margin:8px 0 0!important;
    padding:0!important;
    background:transparent!important;
    color:#8a92a9;
    font-size:12px;
}
.gmaw-topup-modern-checkout #payment div.payment_box:before{display:none!important;}
.gmaw-topup-modern-checkout .woocommerce-privacy-policy-text,
.gmaw-topup-modern-checkout .woocommerce-terms-and-conditions-wrapper{
    color:#9aa3ba;
    font-size:11px;
    line-height:1.7;
}
.gmaw-topup-modern-checkout #place_order{
    width:100%;
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:10px;
    background:#081426;
    color:#fff;
    font-weight:800;
    box-shadow:0 12px 24px rgba(8,20,38,.22);
    margin-top:12px;
}
.gmaw-topup-modern-checkout #place_order:hover{filter:brightness(1.06);}
@media (max-width:767px){
    .gmaw-topup-modal{align-items:flex-start;padding:10px;}
    .gmaw-topup-modal-content{width:calc(100vw - 20px);max-height:96vh;margin-top:8px;border-radius:16px;}
    .gmaw-topup-modern-checkout{padding:18px;}
}
