/*
 * Cashdo (domain 0) modern look: header, cards, hover effects, store / all-stores / login pages.
 * Loaded from common/head.vm only when $domainType == 0; every rule is scoped under body.cd-modern
 * so white labels and other domains are not affected. Cosmetic only (colours, radii, shadows, motion).
 */

body.cd-modern {
    --cdm-green: #52a36a;
    --cdm-green-dark: #3a7f50;
    --cdm-teal: #52a36a;
    --cdm-blue: #52a36a;
    --cdm-yellow: #ffd54a;
    --cdm-ink: #14261b;
    --cdm-radius: 16px;
    --cdm-shadow: 0 6px 20px rgba(20, 38, 27, .07);
    --cdm-shadow-hover: 0 16px 36px rgba(82, 163, 106, .2);
    --cdm-ease: cubic-bezier(.2, .7, .2, 1);
}

/* =========================================================
   Header
   ========================================================= */
.cd-modern .header-main6 {
    background: var(--cdm-green);
    box-shadow: 0 2px 14px rgba(20, 60, 30, .18);
    position: relative;
}

/* Search box (header + all-stores): the .advanced-search wrapper is the visible field */
.cd-modern .advanced-search.box-radius {
    border-radius: 999px !important;
    border: 2px solid transparent;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .12);
    transition: box-shadow .25s ease, border-color .25s ease;
}

.cd-modern .advanced-search.box-radius:focus-within {
    border-color: var(--cdm-yellow);
    box-shadow: 0 0 0 4px rgba(255, 213, 74, .35), 0 6px 18px rgba(0, 0, 0, .15);
}

.cd-modern .advanced-search .search-input input {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: none;
}

.cd-modern .advanced-search .btn-search {
    top: 50% !important;
    transform: translateY(-50%);
    left: 6px !important;
    right: auto !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    transition: background-color .2s ease;
}

.cd-modern .advanced-search .btn-search:hover {
    background: #eaf5ee !important;
}

.cd-modern .advanced-search .btn-search .fa {
    color: var(--cdm-green) !important;
}

.cd-modern .advanced-search .ac_results {
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(20, 38, 27, .16);
}

.cd-modern .header-main6 .btn-custom,
.cd-modern .header-main6 .btn-custom-login {
    border-radius: 999px;
    padding-left: 18px;
    padding-right: 18px;
    font-weight: 700;
    transition: transform .25s var(--cdm-ease), box-shadow .25s ease, background-color .25s ease, color .25s ease !important;
}

/* Register = primary yellow, like the home hero CTA */
.cd-modern .header-main6 .btn-custom:not(.dropdown-toggle) {
    background: var(--cdm-yellow);
    border-color: var(--cdm-yellow);
    color: #1b2a12 !important;
}

.cd-modern .header-main6 .btn-custom:not(.dropdown-toggle):hover {
    background: #ffe07a;
    color: #1b2a12 !important;
}

.cd-modern .header-main6 .btn-custom:hover,
.cd-modern .header-main6 .btn-custom-login:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .18) !important;
}

.cd-modern .header-main6 .yourgain {
    transition: transform .25s var(--cdm-ease);
    display: inline-block;
}

.cd-modern .header-main6 .yourgain:hover {
    transform: scale(1.08);
}

.cd-modern #userdropdownmenu,
.cd-modern .header-menu6 .dropdown-menu {
    border: 0;
    border-radius: 14px;
    box-shadow: 0 16px 40px rgba(20, 38, 27, .16);
    overflow: hidden;
    animation: cdm-drop .2s var(--cdm-ease);
}

/* Navigation bar */
.cd-modern .header-menu6 .main-menu {
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 4px 18px rgba(20, 38, 27, .06);
}

.cd-modern.option9 .main-menu .navbar-nav > li > a {
    position: relative;
    background-color: transparent !important;
    transition: color .2s ease;
}

.cd-modern.option9 .main-menu .navbar-nav > li > a::after {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 10px;
    height: 3px;
    border-radius: 3px;
    background: linear-gradient(90deg, var(--cdm-green), var(--cdm-teal));
    transform: scaleX(0);
    transition: transform .3s var(--cdm-ease);
}

.cd-modern.option9 .main-menu .navbar-nav > li > a:hover,
.cd-modern.option9 .main-menu .navbar-nav > li > a:focus,
.cd-modern.option9 .main-menu .navbar-nav > li > a.active,
.cd-modern.option9 .main-menu .navbar-nav > li.active > a {
    color: var(--cdm-green) !important;
}

.cd-modern.option9 .main-menu .navbar-nav > li > a:hover::after,
.cd-modern.option9 .main-menu .navbar-nav > li > a:focus::after,
.cd-modern.option9 .main-menu .navbar-nav > li > a.active::after,
.cd-modern.option9 .main-menu .navbar-nav > li.active > a::after {
    transform: scaleX(1);
}

.cd-modern .menu-drop-down-item {
    transition: background-color .2s ease, padding .2s ease, color .2s ease;
}

.cd-modern .menu-drop-down-item:hover {
    background-color: #eef8f0 !important;
    color: var(--cdm-green);
}

/* =========================================================
   Generic buttons & section titles
   ========================================================= */
.cd-modern .primary2 {
    color: var(--cdm-green) !important;
    border-color: var(--cdm-green) !important;
}

.cd-modern .primary2:hover {
    background: var(--cdm-green) !important;
    color: #fff !important;
}

.cd-modern #buyDiv .cashBack {
    border-color: var(--cdm-green) !important;
    color: var(--cdm-green-dark) !important;
}

.cd-modern .btn.primary2 {
    border-radius: 999px;
    transition: transform .25s var(--cdm-ease), box-shadow .25s ease, background-color .25s ease, color .25s ease;
}

.cd-modern .btn.primary2:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(82, 163, 106, .28) !important;
}

.cd-modern .block-title-text {
    font-weight: 800;
}

/* =========================================================
   Cards with hover effects
   ========================================================= */

/* Benefits (promo) cards */
.cd-modern .promo-item {
    border-radius: var(--cdm-radius);
    overflow: hidden;
    background: #fff;
    box-shadow: var(--cdm-shadow);
    transition: transform .35s var(--cdm-ease), box-shadow .35s ease;
}

.cd-modern .promo-item:hover {
    transform: translateY(-6px);
    box-shadow: var(--cdm-shadow-hover);
}

.cd-modern .promo-item .main-promo-img {
    transition: transform .6s var(--cdm-ease);
    cursor: pointer;
}

.cd-modern .promo-item:hover .main-promo-img {
    transform: scale(1.06);
}

.cd-modern .promo-item picture {
    display: block;
    overflow: hidden;
}

/* Coupon cards: ticket look */
.cd-modern .coupon-div {
    border-radius: var(--cdm-radius);
    background: #fff;
    border: 2px dashed #cfe6d4 !important;
    box-shadow: var(--cdm-shadow);
    transition: transform .3s var(--cdm-ease), box-shadow .3s ease, border-color .3s ease;
}

.cd-modern .coupon-div:hover {
    transform: translateY(-5px);
    border-color: var(--cdm-green) !important;
    box-shadow: var(--cdm-shadow-hover);
}

.cd-modern .coupon-div .couponImage {
    transition: transform .35s var(--cdm-ease);
}

.cd-modern .coupon-div:hover .couponImage {
    transform: scale(1.06);
}

/* Store tiles: all-stores, categories, home grid, similar stores */
.cd-modern .product-container,
.cd-modern .storeDiv .storeBlock {
    border-radius: var(--cdm-radius);
    background: #fff;
    transition: transform .3s var(--cdm-ease), box-shadow .3s ease;
}

.cd-modern .product-container:hover,
.cd-modern .storeDiv:hover .storeBlock {
    transform: translateY(-6px);
    box-shadow: var(--cdm-shadow-hover);
}

.cd-modern .product-container img,
.cd-modern .storeDiv .storeBlock img {
    transition: transform .35s var(--cdm-ease);
}

.cd-modern .product-container:hover img,
.cd-modern .storeDiv:hover .storeBlock img {
    transform: scale(1.06);
}

.cd-modern .product-container .promo {
    font-weight: 800;
    color: var(--cdm-green-dark);
}

/* Category side menu (home + all stores) */
.cd-modern .vertical-menu-list > li > a,
.cd-modern .all-categories-list li a {
    transition: color .2s ease, background-color .2s ease, padding .2s ease;
    border-radius: 10px;
}

.cd-modern .vertical-menu-list > li:hover > a,
.cd-modern .all-categories-list li a:hover {
    color: var(--cdm-green) !important;
    background-color: #eef8f0;
    padding-inline-start: 6px;
}

/* =========================================================
   Store page
   ========================================================= */
.cd-modern #storeMenu > div:first-child {
    border-radius: 20px !important;
    box-shadow: var(--cdm-shadow);
    transition: box-shadow .3s ease;
}

.cd-modern #storeMenu > div:first-child:hover {
    box-shadow: 0 14px 34px rgba(20, 38, 27, .1);
}

.cd-modern .storeImageDiv img {
    transition: transform .4s var(--cdm-ease);
}

.cd-modern .storeImageDiv:hover img {
    transform: scale(1.04);
}

.cd-modern .buyAtShop {
    border-radius: 999px !important;
    background: linear-gradient(100deg, var(--cdm-green), var(--cdm-teal)) !important;
    border: 0 !important;
    box-shadow: 0 10px 22px rgba(82, 163, 106, .3);
    position: relative;
    overflow: hidden;
    transition: transform .25s var(--cdm-ease), box-shadow .25s ease;
}

.cd-modern .buyAtShop::after {
    content: "";
    position: absolute;
    top: 0;
    left: -60%;
    width: 40%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .45), transparent);
    transform: skewX(-20deg);
    animation: cdm-shine 3.6s ease-in-out infinite;
    pointer-events: none;
}

.cd-modern .buyAtShop:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(82, 163, 106, .4);
    color: #fff !important;
}

.cd-modern #buyDiv .cashBack {
    border-radius: 999px !important;
}

.cd-modern #buyDiv .cashBack.bold {
    background: #eef8f0;
    border-color: #bfe3c6 !important;
    color: var(--cdm-green-dark);
    font-weight: 800;
}

.cd-modern .shop-details .divWhite {
    border-radius: 20px;
    box-shadow: var(--cdm-shadow);
}

/* Banner + white content card read as one card: banner rounds the top, content rounds the bottom */
.cd-modern .inner-store-promo {
    border-radius: 20px 20px 0 0;
    overflow: hidden;
    line-height: 0;
    box-shadow: var(--cdm-shadow);
}

.cd-modern .inner-store-promo img {
    display: block;
    width: 100%;
    border-radius: 0;
}

.cd-modern .inner-store-promo + .divWhite {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.cd-modern .shop-details .nav-tabs {
    border-bottom: 0;
}

.cd-modern .shop-details .nav-tabs > li > a {
    border-radius: 999px !important;
    border: 1px solid #e3efe6 !important;
    margin: 0 4px;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.cd-modern .shop-details .nav-tabs > li > a:hover {
    background: #eef8f0;
    transform: translateY(-1px);
}

.cd-modern .shop-details .nav-tabs > li.active > a,
.cd-modern .shop-details .nav-tabs > li.active > a:hover,
.cd-modern .shop-details .nav-tabs > li.active > a:focus {
    background: var(--cdm-green);
    color: #fff !important;
    border-color: var(--cdm-green) !important;
}

.cd-modern .dedicate-coupon-block {
    border-radius: 18px;
    overflow: hidden;
}

/* =========================================================
   All stores page
   ========================================================= */
/* Category sidebar card */
.cd-modern #categoriesHeader {
    background: transparent !important;
    border-bottom: 0 !important;
    padding: 16px 18px 8px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
}

.cd-modern div:has(> #categoriesHeader) {
    border: 0 !important;
    background: #fff;
    border-radius: 20px;
    box-shadow: var(--cdm-shadow);
    overflow: hidden;
}

@media (min-width: 992px) {
    .cd-modern div:has(> div > div > #categoriesHeader) {
        position: sticky;
        top: 80px;
    }
}

.cd-modern .all-categories-list {
    padding: 4px 10px 12px !important;
    margin: 0;
    max-height: none;
}

.cd-modern .all-categories-list li {
    border-radius: 12px;
    padding: 8px 12px !important;
    margin: 2px 0;
    cursor: pointer;
    background: transparent !important;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.cd-modern .all-categories-list li:hover {
    background: #eef6f1 !important;
    color: var(--cdm-green) !important;
    transform: translateX(-3px);
}

.cd-modern .all-categories-list li.selectedCategory {
    background: var(--cdm-green) !important;
    color: #fff !important;
    font-weight: 700;
}

/* Search + sort controls */
.cd-modern #allStoresContainer {
    clear: both;
}

.cd-modern .search-all-categories {
    border: 0 !important;
    background: transparent !important;
    outline: none;
    padding-inline-start: 18px !important;
}

.cd-modern .advanced-search:has(.search-all-categories) {
    border: 2px solid transparent !important;
    border-radius: 999px;
    background: #fff;
    height: 48px !important;
    box-shadow: var(--cdm-shadow);
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-modern .advanced-search:has(.search-all-categories):focus-within {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15);
}

.cd-modern .advanced-search:has(.search-all-categories) .search-all-categories {
    height: 44px !important;
}

.cd-modern #sortStoresBy {
    height: 48px;
    border: 0;
    border-radius: 999px;
    /* custom chevron inside the pill instead of the native arrow on the edge */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0 18px 0 46px;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2352a36a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: left 20px center;
    background-size: 12px 8px;
    box-shadow: var(--cdm-shadow);
    font-size: 16px;
    cursor: pointer;
}

[dir="ltr"] .cd-modern #sortStoresBy,
.cd-modern[dir="ltr"] #sortStoresBy {
    padding: 0 46px 0 18px;
    background-position: right 20px center;
}

.cd-modern #sortStoresBy:focus {
    outline: none;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15), var(--cdm-shadow);
}

.cd-modern #sortStoresBy::-ms-expand {
    display: none;
}

.cd-modern .all-categories-ac-results {
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(20, 38, 27, .16);
}

/* Store cards in the listing */
.cd-modern #allStoresContainer .products {
    padding: 0;
}

.cd-modern #allStoresContainer .product {
    padding: 8px !important;
    animation: cdm-rise .45s var(--cdm-ease) both;
}

.cd-modern #allStoresContainer .product:nth-child(3n+2) { animation-delay: .05s; }
.cd-modern #allStoresContainer .product:nth-child(3n) { animation-delay: .1s; }

.cd-modern #allStoresContainer .product-container {
    border: 1px solid #e6efe9 !important;
    border-radius: 20px;
    padding: 18px 12px 16px !important;
    box-shadow: var(--cdm-shadow);
    position: relative;
    overflow: hidden;
}

/* Same look as the home page store tiles (home/store.vm) */
.cd-modern #allStoresContainer .product-thumb img {
    object-fit: contain;
}

.cd-modern #allStoresContainer .product-name {
    font-size: 14px;
    margin-top: 10px !important;
}

.cd-modern #allStoresContainer .product-name a {
    color: #8a948e;
    font-weight: 400;
}

.cd-modern #allStoresContainer .cd-store-details {
    font-size: 14px;
    margin-top: 2px;
}

.cd-modern #allStoresContainer .cd-store-details a {
    color: var(--cdm-ink);
    text-decoration: underline;
}

.cd-modern #allStoresContainer .cd-store-details a:hover {
    color: var(--cdm-green);
}

.cd-modern #allStoresContainer .product-container .promo {
    float: none;
    width: 100%;
    margin: 6px 0 4px;
    padding: 0;
    background: transparent;
    color: var(--cdm-green-dark);
    font-size: 16px;
    font-weight: 800;
    text-align: center;
}

.cd-modern #allStoresContainer .btn.primary2 {
    margin-top: 6px;
    padding-left: 22px;
    padding-right: 22px;
    font-size: 16px !important;
}

/* =========================================================
   Login / registration
   ========================================================= */
/* Login page background (the page sets a flat radial gradient inline; :has() keeps it page-specific) */
body.cd-modern:has(.mainLogin) {
    background: linear-gradient(150deg, #74c08c 0%, #52a36a 45%, #3c8455 100%) fixed;
    min-height: 100vh;
    overflow-x: hidden;
}

.cd-modern .mainLogin {
    position: relative;
    z-index: 1;
    padding-bottom: 40px;
}

body.cd-modern .cashdoHeaderWraper {
    background: #fff !important;
}

/* Login logo: static */
.cd-modern #cashdoHeaderLogo {
    position: relative;
    z-index: 1;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .3));
}

@keyframes cdm-gradient {
    0% { background-position: 0 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0 50%; }
}

body.cd-modern .cashdoHeaderWraper {
    border-radius: 22px !important;
    box-shadow: 0 30px 60px rgba(10, 60, 30, .25) !important;
    overflow: hidden;
    animation: cdm-rise .5s var(--cdm-ease);
}

.cd-modern .loginBox .form-control,
.cd-modern .registerBox .form-control,
.cd-modern .passwordForgot .form-control,
.cd-modern .login .form-control {
    border-radius: 12px !important;
    height: 46px;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-modern .login .form-control:focus,
.cd-modern .loginBox .form-control:focus,
.cd-modern .registerBox .form-control:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15) !important;
}

.cd-modern .btn-login,
.cd-modern .btn-register {
    border-radius: 999px !important;
    background: linear-gradient(100deg, var(--cdm-green), var(--cdm-teal)) !important;
    border: 0 !important;
    font-weight: 700;
    box-shadow: 0 10px 22px rgba(82, 163, 106, .3);
    transition: transform .25s var(--cdm-ease), box-shadow .25s ease;
}

.cd-modern .btn-login:hover,
.cd-modern .btn-register:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(82, 163, 106, .4);
}

.cd-modern .login .btn-social,
.cd-modern .cashdoHeaderWraper .btn-social,
.cd-modern .cashdoHeaderWraper .social a,
.cd-modern .cashdoHeaderWraper .social button {
    border-radius: 12px !important;
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
}

.cd-modern .cashdoHeaderWraper .btn-social:hover,
.cd-modern .cashdoHeaderWraper .social a:hover,
.cd-modern .login .btn-social:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .15);
}

/* =========================================================
   Footer
   ========================================================= */
.cd-modern .list-link li a {
    transition: color .2s ease, padding .2s ease;
}

.cd-modern .list-link li:not(.head) a:hover {
    color: #ffd54a !important;
    padding-inline-start: 4px;
}

.cd-modern .list-link li a img {
    transition: transform .25s var(--cdm-ease);
}

.cd-modern .list-link li a:hover img {
    transform: translateY(-3px);
}

.cd-modern .socialfollow {
    transition: transform .25s var(--cdm-ease), background-color .25s ease;
}

.cd-modern .socialfollow:hover {
    transform: translateY(-3px) scale(1.08);
}

/* =========================================================
   Keyframes & reduced motion
   ========================================================= */
@keyframes cdm-shine {
    0%, 60% { left: -60%; }
    100% { left: 130%; }
}

@keyframes cdm-drop {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: none; }
}

@keyframes cdm-rise {
    from { opacity: 0; transform: translateY(16px); }
    to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    body.cd-modern *,
    body.cd-modern *::before,
    body.cd-modern *::after {
        animation: none !important;
        transition: none !important;
    }
}

/* =========================================================
   Coupon code + copy button (promo/coupon_code.vm)
   ========================================================= */
.cd-coupon-code {
    display: inline-flex;
    align-items: stretch;
    max-width: 100%;
    margin: 6px auto 8px;
    border: 2px dashed var(--cdm-green);
    border-radius: 12px;
    background: #f3faf5;
    overflow: hidden;
    direction: ltr;
}

.cd-coupon-code__text {
    display: flex;
    align-items: center;
    padding: 6px 12px;
    font-family: Consolas, "Courier New", monospace;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .5px;
    color: var(--cdm-ink);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    user-select: all;
}

.cd-modern .copy-button.cd-coupon-copy {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    border: 0;
    border-radius: 0;
    background: var(--cdm-green);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    cursor: pointer;
    direction: rtl;
    transition: background-color .2s ease;
}

.cd-modern .copy-button.cd-coupon-copy:hover,
.cd-modern .copy-button.cd-coupon-copy:focus-visible {
    background: var(--cdm-green-dark);
    color: #fff;
    opacity: 1;
}

.cd-modern .copy-button.cd-coupon-copy:focus-visible {
    outline: 3px solid var(--cdm-yellow);
    outline-offset: -3px;
}

.cd-coupon-copy__done {
    display: none;
}

.cd-coupon-copy.is-copied .cd-coupon-copy__idle {
    display: none;
}

.cd-coupon-copy.is-copied .cd-coupon-copy__done {
    display: inline;
    animation: cdm-pop .3s var(--cdm-ease);
}

@keyframes cdm-pop {
    0% { transform: scale(.7); opacity: 0; }
    100% { transform: none; opacity: 1; }
}

@media (max-width: 767px) {
    .cd-coupon-code__text {
        font-size: 14px;
        padding: 5px 8px;
    }

    .cd-modern .copy-button.cd-coupon-copy {
        padding: 5px 8px;
        font-size: 13px;
    }
}
.cd-coupon-label {
    font-size: 13px;
    color: #6b7a71;
    margin-top: 4px;
}
/* =========================================================
   Store page: "check cashback" (commission check) + other green action buttons
   ========================================================= */
.cd-modern .copy-button:not(.cd-coupon-copy),
.cd-modern .check-commission-btn {
    background: var(--cdm-green) !important;
    color: #fff !important;
    border-radius: 999px !important;
    padding-left: 22px;
    padding-right: 22px;
    transition: background-color .2s ease, transform .2s var(--cdm-ease), box-shadow .2s ease !important;
}

.cd-modern .copy-button:not(.cd-coupon-copy):hover,
.cd-modern .copy-button:not(.cd-coupon-copy):focus-visible,
.cd-modern .check-commission-btn:hover {
    background: var(--cdm-green-dark) !important;
    color: #fff !important;
    opacity: 1;
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(82, 163, 106, .3) !important;
}

.cd-modern .check-commission #validationLink {
    height: 42px;
    border-radius: 999px !important;
    padding-inline: 18px;
    border: 1px solid #d9e8de;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-modern .check-commission #validationLink:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15) !important;
    outline: none;
}

/* =========================================================
   All stores: categories as a chip row above the stores (Cashdo layout)
   ========================================================= */
.cd-modern .cd-cats-top {
    position: static !important;
    margin-bottom: 6px;
}

.cd-modern .cd-cats-top #categoriesHeader {
    display: none;
}

.cd-modern .cd-cats-top div:has(> #categoriesHeader) {
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    overflow: visible;
    margin-bottom: 14px !important;
}

.cd-modern .cd-cats-top #categoriesList {
    display: block !important;
}

.cd-modern .cd-cats-top .all-categories-list {
    background: transparent !important;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    padding: 0 !important;
    list-style: none;
}

.cd-modern .cd-cats-top .all-categories-list li {
    margin: 0;
    padding: 8px 16px !important;
    border: 1px solid #dfe9e2;
    border-radius: 999px;
    background: #fff !important;
    color: var(--cdm-ink);
    font-size: 15px;
    white-space: nowrap;
    box-shadow: 0 2px 6px rgba(20, 38, 27, .04);
}

.cd-modern .cd-cats-top .all-categories-list li:hover {
    transform: translateY(-2px);
    border-color: var(--cdm-green);
    background: #f1f8f3 !important;
    color: var(--cdm-green-dark) !important;
}

.cd-modern .cd-cats-top .all-categories-list li.selectedCategory {
    background: var(--cdm-green) !important;
    border-color: var(--cdm-green);
    color: #fff !important;
    box-shadow: 0 6px 14px rgba(82, 163, 106, .3);
}

/* Full-width grid: 4 stores per row on desktop */
@media (min-width: 992px) {
    .cd-modern .cd-stores-main #allStoresContainer .product {
        width: 25%;
    }
}

/* Phones: one swipeable row of chips */
@media (max-width: 767px) {
    .cd-modern .cd-cats-top .all-categories-list {
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
        padding: 2px 2px 8px !important;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .cd-modern .cd-cats-top .all-categories-list::-webkit-scrollbar {
        display: none;
    }

    .cd-modern .cd-cats-top .all-categories-list li {
        flex: 0 0 auto;
    }
}

/* =========================================================
   Content pages: contact, help (about), questions, tutorial
   body gets cd-page-<pageId> from common/head.vm
   ========================================================= */
.cd-page-contactUs #content,
.cd-page-help #content,
.cd-page-questions #content,
.cd-page-tutorial #content {
    padding-bottom: 40px;
}

/* Page title (the H1 block) becomes a solid header band, like all-stores */
.cd-page-contactUs .product-tab-header:has(h1),
.cd-page-help .product-tab-header:has(h1),
.cd-page-questions #content > .product-box9 .product-tab-header,
.cd-page-tutorial .product-tab-header:has(h1) {
    background: var(--cdm-green);
    border-radius: 24px;
    padding: 34px 24px 30px;
    margin: 18px 0 22px;
    box-shadow: 0 18px 40px rgba(82, 163, 106, .25);
    position: relative;
    overflow: hidden;
}

.cd-page-contactUs .product-tab-header:has(h1)::before,
.cd-page-help .product-tab-header:has(h1)::before,
.cd-page-questions #content > .product-box9 .product-tab-header::before,
.cd-page-tutorial .product-tab-header:has(h1)::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    top: -200px;
    left: -100px;
    border-radius: 50%;
    background: #fff;
    opacity: .08;
}

.cd-page-contactUs .product-tab-header:has(h1) .block-title-text,
.cd-page-contactUs .product-tab-header:has(h1) h1,
.cd-page-help .product-tab-header:has(h1) .block-title-text,
.cd-page-help .product-tab-header:has(h1) h1,
.cd-page-questions #content > .product-box9 .product-tab-header .block-title-text,
.cd-page-questions #content > .product-box9 .product-tab-header h1,
.cd-page-questions #content > .product-box9 .product-tab-header h2,
.cd-page-tutorial .product-tab-header:has(h1) .block-title-text,
.cd-page-tutorial .product-tab-header:has(h1) h1 {
    color: #fff !important;
    font-size: 34px;
    font-weight: 800;
    margin: 0;
    position: relative;
}

/* Section titles (h2) keep the page background, with an accent bar */
.cd-page-help .product-tab-header:not(:has(h1)) .block-title-text,
.cd-page-contactUs .product-tab-header:not(:has(h1)) .block-title-text {
    font-size: 26px;
    font-weight: 800;
    color: var(--cdm-ink);
}

.cd-page-help .product-tab-header:not(:has(h1)) .block-title-text::after,
.cd-page-contactUs .product-tab-header:not(:has(h1)) .block-title-text::after {
    content: "";
    display: block;
    width: 56px;
    height: 4px;
    margin: 10px auto 0;
    border-radius: 4px;
    background: var(--cdm-green);
}

/* White content boxes -> rounded cards */
.cd-page-contactUs .divWhite,
.cd-page-help .divWhite,
.cd-page-questions .divWhite,
.cd-page-tutorial .divWhite {
    border-radius: 22px;
    box-shadow: var(--cdm-shadow);
    padding: 28px 30px !important;
    border: 0;
    line-height: 1.8;
    font-size: 17px;
}

/* FAQ accordion */
.cd-modern #faqAccordion .panel {
    border: 1px solid #e3efe6 !important;
    border-radius: 16px !important;
    box-shadow: none;
    margin-bottom: 12px !important;
    overflow: hidden;
    transition: box-shadow .25s ease, border-color .25s ease;
}

.cd-modern #faqAccordion .panel:hover {
    border-color: #c7e2cf !important;
    box-shadow: 0 8px 20px rgba(20, 38, 27, .06);
}

.cd-modern #faqAccordion .panel-heading {
    background: #fff !important;
    border: 0 !important;
    padding: 16px 20px;
    cursor: pointer;
    transition: background-color .2s ease;
}

.cd-modern #faqAccordion .panel-heading:hover {
    background: #f4faf6 !important;
}

.cd-modern #faqAccordion .panel-title,
.cd-modern #faqAccordion .panel-title a {
    font-size: 17px;
    font-weight: 600;
    color: var(--cdm-ink);
    text-decoration: none;
}

.cd-modern #faqAccordion .panel-heading:not(.collapsed) {
    background: #eef6f1 !important;
}

.cd-modern #faqAccordion .panel-heading:not(.collapsed) .panel-title a {
    color: var(--cdm-green-dark);
}

.cd-modern #faqAccordion .tab-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    margin-inline-end: 8px;
    border-radius: 50%;
    background: #eef6f1;
    color: var(--cdm-green);
    font-size: 16px;
    transition: transform .25s ease, background-color .2s ease, color .2s ease;
}

.cd-modern #faqAccordion .panel-heading:not(.collapsed) .tab-arrow {
    background: var(--cdm-green);
    color: #fff;
    transform: rotate(180deg);
}

.cd-modern #faqAccordion .panel-body {
    border-top: 1px solid #e3efe6 !important;
    padding: 18px 22px;
    font-size: 16px;
    line-height: 1.8;
    color: #33433a;
}

/* Contact form */
.cd-modern #contactUsForm .form-control,
.cd-modern #contactUsForm textarea,
.cd-modern #contactUsForm input[type="text"],
.cd-modern #contactUsForm input[type="email"],
.cd-modern #contactUsForm input[type="tel"] {
    border-radius: 12px !important;
    border: 1px solid #d9e8de !important;
    min-height: 46px;
    padding: 10px 14px;
    width: 100%;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-modern #contactUsForm .form-control:focus,
.cd-modern #contactUsForm textarea:focus,
.cd-modern #contactUsForm input:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15) !important;
    outline: none;
}

.cd-modern #contactUsForm label {
    font-weight: 700;
    color: var(--cdm-ink);
    padding-top: 12px;
}

.cd-modern #submitContact {
    border-radius: 999px !important;
    background: var(--cdm-green) !important;
    border: 0 !important;
    padding: 12px 34px;
    font-size: 17px;
    font-weight: 700;
    box-shadow: 0 10px 22px rgba(82, 163, 106, .3);
    transition: transform .2s var(--cdm-ease), box-shadow .2s ease, background-color .2s ease;
}

.cd-modern #submitContact:hover {
    background: var(--cdm-green-dark) !important;
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(82, 163, 106, .4);
}

/* Tutorial steps */
.cd-page-tutorial #totorial .divWhite p {
    font-size: 18px;
    font-weight: 400;
    color: var(--cdm-ink);
    margin-top: 28px;
}

.cd-page-tutorial #totorial .divWhite p:first-child {
    margin-top: 0;
}

.cd-page-tutorial #totorial img.grow {
    max-width: 100%;
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(20, 38, 27, .12);
    transition: transform .35s var(--cdm-ease), box-shadow .35s ease;
}

.cd-page-tutorial #totorial img.grow:hover {
    transform: translateY(-4px) scale(1.01);
    box-shadow: 0 20px 44px rgba(20, 38, 27, .16);
}

@media (max-width: 767px) {
    .cd-page-contactUs .product-tab-header:has(h1),
    .cd-page-help .product-tab-header:has(h1),
    .cd-page-questions #content > .product-box9 .product-tab-header,
    .cd-page-tutorial .product-tab-header:has(h1) {
        padding: 24px 16px 22px;
        border-radius: 18px;
    }

    .cd-page-contactUs .product-tab-header:has(h1) h1,
    .cd-page-help .product-tab-header:has(h1) h1,
    .cd-page-questions #content > .product-box9 .product-tab-header h2,
    .cd-page-tutorial .product-tab-header:has(h1) h1 {
        font-size: 26px;
    }

    .cd-page-contactUs .divWhite,
    .cd-page-help .divWhite,
    .cd-page-questions .divWhite,
    .cd-page-tutorial .divWhite {
        padding: 20px 16px !important;
        border-radius: 18px;
    }
}
/* =========================================================
   Affiliate program (cd-page-affiliate) + missing orders (cd-page-missingOrder)
   ========================================================= */
.cd-page-affiliate #content,
.cd-page-missingOrder #content {
    padding-bottom: 40px;
}

/* Title band */
.cd-page-affiliate .product-tab-header:has(h1),
.cd-page-missingOrder .product-tab-header:has(h1),
.cd-page-missingOrder #content > .product-box9:first-of-type .product-tab-header {
    background: var(--cdm-green);
    border-radius: 24px;
    padding: 34px 24px 30px;
    margin: 18px 0 22px;
    box-shadow: 0 18px 40px rgba(82, 163, 106, .25);
    position: relative;
    overflow: hidden;
}

.cd-page-affiliate .product-tab-header:has(h1)::before,
.cd-page-missingOrder .product-tab-header:has(h1)::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    top: -200px;
    left: -100px;
    border-radius: 50%;
    background: #fff;
    opacity: .08;
}

.cd-page-affiliate .product-tab-header:has(h1) .block-title-text,
.cd-page-affiliate .product-tab-header:has(h1) h1,
.cd-page-missingOrder .product-tab-header:has(h1) .block-title-text,
.cd-page-missingOrder .product-tab-header:has(h1) h1 {
    color: #fff !important;
    font-size: 34px;
    font-weight: 800;
    margin: 0;
    position: relative;
}

/* Section titles with an accent bar */
.cd-page-affiliate .product-tab-header:not(:has(h1)) .block-title-text,
.cd-page-missingOrder .product-tab-header:not(:has(h1)) .block-title-text {
    font-size: 26px;
    font-weight: 800;
    color: var(--cdm-ink);
}

.cd-page-affiliate .product-tab-header:not(:has(h1)) .block-title-text::after,
.cd-page-missingOrder .product-tab-header:not(:has(h1)) .block-title-text::after {
    content: "";
    display: block;
    width: 56px;
    height: 4px;
    margin: 10px auto 0;
    border-radius: 4px;
    background: var(--cdm-green);
}

/* Cards */
.cd-page-affiliate .divWhite,
.cd-page-missingOrder .divWhite {
    border-radius: 22px;
    box-shadow: var(--cdm-shadow);
    padding: 28px 30px !important;
    border: 0;
    line-height: 1.8;
}

/* --- Affiliate: plan card --- */
.cd-page-affiliate #generic_price_table .generic_content {
    border: 0 !important;
    border-radius: 22px !important;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 14px 34px rgba(20, 38, 27, .1);
    transition: transform .3s var(--cdm-ease), box-shadow .3s ease;
}

.cd-page-affiliate #generic_price_table .generic_content:hover {
    transform: translateY(-4px);
    box-shadow: var(--cdm-shadow-hover);
}

.cd-page-affiliate #generic_price_table .generic_head_price {
    background: var(--cdm-green) !important;
    padding: 22px 16px !important;
}

.cd-page-affiliate #generic_price_table .generic_head_price .head,
.cd-page-affiliate #generic_price_table .generic_head_price .head span {
    color: #fff !important;
    font-size: 26px;
    font-weight: 800;
}

.cd-page-affiliate #generic_price_table .generic_head_price .head div {
    color: rgba(255, 255, 255, .85) !important;
}

.cd-page-affiliate #generic_price_table .generic_feature_list ul {
    padding: 18px 22px 6px;
    margin: 0;
    list-style: none;
}

.cd-page-affiliate #generic_price_table .generic_feature_list li {
    position: relative;
    padding: 10px 0;
    padding-inline-start: 30px;
    border-bottom: 1px solid #eef4f0;
    font-size: 16px;
    text-align: start;
}

.cd-page-affiliate #generic_price_table .generic_feature_list li:last-child {
    border-bottom: 0;
}

.cd-page-affiliate #generic_price_table .generic_feature_list li::before {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    top: 50%;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    border-radius: 50%;
    background: #eef6f1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='10' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='%2352a36a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / 11px 9px;
}

.cd-page-affiliate #generic_price_table .generic_price_btn {
    padding: 8px 22px 24px;
    text-align: center;
}

.cd-page-affiliate #generic_price_table .generic_price_btn a {
    display: inline-block;
    padding: 12px 30px;
    border-radius: 999px !important;
    border: 0 !important;
    background: var(--cdm-green) !important;
    color: #fff !important;
    font-size: 17px;
    font-weight: 700;
    box-shadow: 0 10px 22px rgba(82, 163, 106, .3);
    transition: transform .2s var(--cdm-ease), box-shadow .2s ease, background-color .2s ease;
}

.cd-page-affiliate #generic_price_table .generic_price_btn a:hover {
    background: var(--cdm-green-dark) !important;
    transform: translateY(-2px);
}

/* --- Affiliate: earnings calculator --- */
.cd-page-affiliate #affiliateCalculator {
    margin-top: 34px;
    padding: 26px 24px 20px;
    border: 0 !important;
    border-radius: 22px;
    background: #f4faf6;
    box-shadow: inset 0 0 0 1px #e1efe5;
}

.cd-page-affiliate #affiliateCalculator > .text-center label {
    font-size: 20px;
    font-weight: 800;
    color: var(--cdm-ink);
}

.cd-page-affiliate #affiliateCalculator p {
    font-size: 17px !important;
    font-weight: 600;
    color: var(--cdm-ink);
}

.cd-page-affiliate .noUi-target {
    border: 0;
    border-radius: 999px;
    background: #dcebe1;
    box-shadow: none;
    height: 10px;
}

.cd-page-affiliate .noUi-connect {
    background: var(--cdm-green) !important;
    border-radius: 999px;
}

.cd-page-affiliate .noUi-handle {
    width: 26px !important;
    height: 26px !important;
    top: -9px !important;
    border-radius: 50% !important;
    border: 3px solid var(--cdm-green) !important;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .15);
    cursor: grab;
}

.cd-page-affiliate .noUi-handle::before,
.cd-page-affiliate .noUi-handle::after {
    display: none;
}

.cd-page-affiliate .noUi-handle .noUi-tooltip-cash-back {
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--cdm-ink) !important;
    color: #fff;
    padding: 2px 10px !important;
    font-weight: 700;
}

.cd-page-affiliate .affiliateStatsCommissions {
    margin-top: 26px;
    padding: 16px 10px 6px;
    border-radius: 16px;
    background: #fff;
    box-shadow: var(--cdm-shadow);
}

.cd-page-affiliate #monthlyEarnings,
.cd-page-affiliate #yearlyEarnings {
    color: var(--cdm-green-dark) !important;
    font-size: 22px;
    font-weight: 800 !important;
    direction: ltr;
    text-align: left;
}

.cd-page-affiliate .terms {
    line-height: 1.9;
}

/* --- Missing orders: form card --- */
.cd-page-missingOrder #missingOrderContent {
    background: #f6fbf8 !important;
    border-radius: 22px !important;
    padding: 26px 10px 10px !important;
    box-shadow: inset 0 0 0 1px #e1efe5;
}

.cd-page-missingOrder #form-missing-rebate .col-form-label {
    font-weight: 700;
    color: var(--cdm-ink);
    padding-top: 12px;
}

.cd-page-missingOrder #form-missing-rebate .form-control,
.cd-page-missingOrder #form-missing-rebate textarea,
.cd-page-missingOrder #form-missing-rebate select,
.cd-page-missingOrder .select2-container .select2-selection {
    border-radius: 12px !important;
    border: 1px solid #d9e8de !important;
    min-height: 46px;
    background-color: #fff !important;
    box-shadow: none !important;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-page-missingOrder .select2-container .select2-selection__rendered {
    line-height: 44px !important;
}

.cd-page-missingOrder .select2-container .select2-selection__arrow {
    height: 44px !important;
}

.cd-page-missingOrder #form-missing-rebate .form-control:focus,
.cd-page-missingOrder #form-missing-rebate textarea:focus,
.cd-page-missingOrder .select2-container--open .select2-selection {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15) !important;
    outline: none;
}

.cd-page-missingOrder #datetimepicker2 .form-control {
    border-start-end-radius: 0 !important;
    border-end-end-radius: 0 !important;
}

.cd-page-missingOrder #datetimepicker2 .input-group-addon {
    border-radius: 12px !important;
    border-start-start-radius: 0 !important;
    border-end-start-radius: 0 !important;
    border: 1px solid #d9e8de;
    background: #eef6f1;
    color: var(--cdm-green);
}

.cd-page-missingOrder .missing-order-btn {
    border-radius: 999px !important;
    background: var(--cdm-green) !important;
    border: 0 !important;
    color: #fff !important;
    padding: 12px 34px !important;
    font-size: 17px;
    font-weight: 700;
    box-shadow: 0 10px 22px rgba(82, 163, 106, .3);
    transition: transform .2s var(--cdm-ease), box-shadow .2s ease, background-color .2s ease;
}

.cd-page-missingOrder .missing-order-btn:hover {
    background: var(--cdm-green-dark) !important;
    transform: translateY(-2px);
}

.cd-page-missingOrder #dropZoneContainer,
.cd-page-missingOrder .dropzone {
    border-radius: 14px;
}

/* --- Missing orders: results table (DataTables) --- */
.cd-page-missingOrder #missingOrderTable {
    border-collapse: separate;
    border-spacing: 0;
}

.cd-page-missingOrder #missingOrderTable thead th {
    border-bottom: 2px solid var(--cdm-green) !important;
    color: var(--cdm-ink);
    font-weight: 700;
}

.cd-page-missingOrder #missingOrderTable tbody tr {
    transition: background-color .15s ease;
}

.cd-page-missingOrder #missingOrderTable tbody tr:hover {
    background: #f4faf6;
}

.cd-page-missingOrder .dataTables_filter input,
.cd-page-missingOrder .dataTables_length select {
    border-radius: 999px !important;
    border: 1px solid #d9e8de !important;
    padding: 8px 16px !important;
    min-height: 40px;
}

.cd-page-missingOrder .dataTables_paginate .paginate_button {
    border-radius: 999px !important;
}

.cd-page-missingOrder .dataTables_paginate .paginate_button.current {
    background: var(--cdm-green) !important;
    border-color: var(--cdm-green) !important;
    color: #fff !important;
}

@media (max-width: 767px) {
    .cd-page-affiliate .product-tab-header:has(h1),
    .cd-page-missingOrder .product-tab-header:has(h1) {
        padding: 24px 16px 22px;
        border-radius: 18px;
    }

    .cd-page-affiliate .product-tab-header:has(h1) h1,
    .cd-page-missingOrder .product-tab-header:has(h1) h1 {
        font-size: 26px;
    }

    .cd-page-affiliate .divWhite,
    .cd-page-missingOrder .divWhite {
        padding: 20px 14px !important;
        border-radius: 18px;
    }
}
/* Fixes: native search box inside the DataTables pill; feature check icons in the text flow */
.cd-page-missingOrder .dataTables_filter input[type="search"] {
    -webkit-appearance: none;
    appearance: none;
    background: #fff;
    outline: none;
    width: 260px;
    max-width: 100%;
}

.cd-page-missingOrder .dataTables_filter input[type="search"]:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15);
}

.cd-page-affiliate #generic_price_table .generic_feature_list li {
    padding: 12px 0 !important;
    text-align: center;
}

.cd-page-affiliate #generic_price_table .generic_feature_list li::before {
    position: static;
    display: inline-block;
    vertical-align: middle;
    margin: 0;
    margin-inline-end: 10px;
}
.cd-page-missingOrder .dataTables_filter,
.cd-page-missingOrder .dataTables_filter label {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    outline: none !important;
}

.cd-page-affiliate .affiliateStatsCommissions {
    clear: both;
    float: none !important;
    width: auto !important;
    margin: 26px 15px 0 !important;
}
/* custom-style.css forces -webkit-appearance: textfield !important and an id-level width on this filter */
.cd-page-missingOrder #missingOrderTable_filter input[type="search"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 260px !important;
    max-width: 100%;
    height: 42px;
}

.cd-page-missingOrder #missingOrderTable_filter {
    border: 0 !important;
    width: auto !important;
}
/* Coupons page: same title band as the other content pages */
.cd-page-coupons .product-tab-header:has(h1) {
    background: var(--cdm-green);
    border-radius: 24px;
    padding: 34px 24px 30px;
    margin: 18px 0 8px;
    box-shadow: 0 18px 40px rgba(82, 163, 106, .25);
    position: relative;
    overflow: hidden;
}

.cd-page-coupons .product-tab-header:has(h1)::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    top: -200px;
    left: -100px;
    border-radius: 50%;
    background: #fff;
    opacity: .08;
}

.cd-page-coupons .product-tab-header:has(h1) .block-title-text,
.cd-page-coupons .product-tab-header:has(h1) h1 {
    color: #fff !important;
    font-size: 34px;
    font-weight: 800;
    margin: 0;
    position: relative;
}

@media (max-width: 767px) {
    .cd-page-coupons .product-tab-header:has(h1) {
        padding: 24px 16px 22px;
        border-radius: 18px;
    }

    .cd-page-coupons .product-tab-header:has(h1) h1 {
        font-size: 26px;
    }
}

/* =========================================================
   My account (cd-page-userAccount) + settings (cd-page-settings)
   ========================================================= */
.cd-page-userAccount #content,
.cd-page-settings #content {
    padding-bottom: 40px;
}

/* Title band */
.cd-page-userAccount .cd-account-title,
.cd-page-settings .product-tab-header {
    background: var(--cdm-green);
    border-radius: 24px;
    padding: 30px 24px 26px !important;
    margin: 18px 0 22px !important;
    box-shadow: 0 18px 40px rgba(82, 163, 106, .25);
    position: relative;
    overflow: hidden;
    float: none;
}

.cd-page-userAccount .cd-account-title > .col-md-12 {
    margin-bottom: 0 !important;
    float: none;
}

.cd-page-userAccount .cd-account-title::before,
.cd-page-settings .product-tab-header::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    top: -200px;
    left: -100px;
    border-radius: 50%;
    background: #fff;
    opacity: .08;
}

.cd-page-userAccount .cd-account-title h2,
.cd-page-settings .product-tab-header .block-title-text {
    color: #fff !important;
    font-size: 34px;
    font-weight: 800;
    margin: 0;
    position: relative;
}

/* Main card */
.cd-page-userAccount .divWhite,
.cd-page-settings .divWhite {
    border-radius: 22px;
    box-shadow: var(--cdm-shadow);
    padding: 26px 28px !important;
    border: 0;
}

/* Tabs -> pills */
.cd-page-userAccount .nav-tabs,
.cd-page-settings .nav-tabs {
    border-bottom: 0 !important;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.cd-page-userAccount .nav-tabs > li,
.cd-page-settings .nav-tabs > li {
    float: none;
    margin: 0;
}

.cd-page-userAccount .nav-tabs > li > a,
.cd-page-settings .nav-tabs > li > a {
    border-radius: 999px !important;
    border: 1px solid #dfe9e2 !important;
    margin: 0 !important;
    padding: 9px 20px;
    color: var(--cdm-ink) !important;
    background: #fff;
    font-weight: 600;
    transition: background-color .2s ease, color .2s ease, transform .2s ease, border-color .2s ease;
}

.cd-page-userAccount .nav-tabs > li > a:hover,
.cd-page-settings .nav-tabs > li > a:hover {
    background: #f1f8f3;
    border-color: var(--cdm-green) !important;
    transform: translateY(-1px);
}

.cd-page-userAccount .nav-tabs > li.active > a,
.cd-page-userAccount .nav-tabs > li.active > a:hover,
.cd-page-userAccount .nav-tabs > li.active > a:focus,
.cd-page-settings .nav-tabs > li.active > a,
.cd-page-settings .nav-tabs > li.active > a:hover,
.cd-page-settings .nav-tabs > li.active > a:focus {
    background: var(--cdm-green) !important;
    border-color: var(--cdm-green) !important;
    color: #fff !important;
    box-shadow: 0 6px 14px rgba(82, 163, 106, .3);
}

.cd-page-userAccount .nav-pills > li > a {
    border-radius: 999px;
    font-weight: 600;
}

.cd-page-userAccount .nav-pills > li.active > a {
    background: var(--cdm-green) !important;
}

/* Balance tiles: available (solid), pending (soft), withdrawn (outline) */
.cd-page-userAccount .available-box {
    padding: 0 8px !important;
}

.cd-page-userAccount .available-service {
    border-radius: 20px !important;
    padding: 22px 12px !important;
    min-height: 0 !important;
    transition: transform .25s var(--cdm-ease), box-shadow .25s ease;
}

.cd-page-userAccount .available-service:hover {
    transform: translateY(-3px);
}

.cd-page-userAccount .available-box:nth-child(1) .available-service {
    background: var(--cdm-green) !important;
    box-shadow: 0 14px 30px rgba(82, 163, 106, .3);
}

.cd-page-userAccount .available-box:nth-child(2) .available-service {
    background: #eef6f1 !important;
    box-shadow: inset 0 0 0 1px #d9eadf;
}

.cd-page-userAccount .available-box:nth-child(3) .available-service {
    background: #fff !important;
    box-shadow: inset 0 0 0 2px var(--cdm-green);
}

.cd-page-userAccount .available-info h3 {
    margin: 0 0 4px;
    font-size: 30px;
    font-weight: 800;
    direction: ltr;
    unicode-bidi: isolate;
}

.cd-page-userAccount .available-info p {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
}

.cd-page-userAccount .available-box:nth-child(1) .available-info h3,
.cd-page-userAccount .available-box:nth-child(1) .available-info p {
    color: #fff !important;
}

.cd-page-userAccount .available-box:nth-child(2) .available-info h3,
.cd-page-userAccount .available-box:nth-child(2) .available-info p,
.cd-page-userAccount .available-box:nth-child(3) .available-info h3,
.cd-page-userAccount .available-box:nth-child(3) .available-info p {
    color: var(--cdm-green-dark) !important;
}

/* Tables (DataTables) */
.cd-page-userAccount table.cart_summary thead th {
    border-bottom: 2px solid var(--cdm-green) !important;
    color: var(--cdm-ink);
    font-weight: 700;
    background: transparent;
}

.cd-page-userAccount table.cart_summary tbody tr {
    transition: background-color .15s ease;
}

.cd-page-userAccount table.cart_summary tbody tr:hover {
    background: #f4faf6 !important;
}

.cd-page-userAccount .dataTables_filter,
.cd-page-userAccount .dataTables_filter label {
    border: 0 !important;
    box-shadow: none !important;
}

.cd-page-userAccount .dataTables_filter input[type="search"],
.cd-page-userAccount .dataTables_length select {
    -webkit-appearance: none !important;
    appearance: none !important;
    border-radius: 999px !important;
    border: 1px solid #d9e8de !important;
    padding: 8px 16px !important;
    min-height: 40px;
    background-color: #fff;
}

.cd-page-userAccount .dataTables_filter input[type="search"]:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15);
    outline: none;
}

.cd-page-userAccount .dataTables_paginate .paginate_button {
    border-radius: 999px !important;
}

.cd-page-userAccount .dataTables_paginate .paginate_button.current {
    background: var(--cdm-green) !important;
    border-color: var(--cdm-green) !important;
    color: #fff !important;
}

/* Buttons */
.cd-page-userAccount .btn-blue,
.cd-page-userAccount .btn-success,
.cd-page-settings .btn-success {
    border-radius: 999px !important;
    background: var(--cdm-green) !important;
    border: 0 !important;
    color: #fff !important;
    padding: 10px 26px !important;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(82, 163, 106, .28);
    transition: transform .2s var(--cdm-ease), background-color .2s ease, box-shadow .2s ease;
}

.cd-page-userAccount .btn-blue:hover,
.cd-page-userAccount .btn-success:hover,
.cd-page-settings .btn-success:hover {
    background: var(--cdm-green-dark) !important;
    transform: translateY(-2px);
}

.cd-page-userAccount .btn-gray {
    border-radius: 999px !important;
    background: #fff !important;
    border: 1px solid #cfd8d2 !important;
    color: #5b6b62 !important;
    padding: 10px 26px !important;
    font-weight: 700;
}

.cd-page-userAccount .btn-gray:hover {
    border-color: #9fb0a6 !important;
}

.cd-page-settings .btn-danger {
    border-radius: 999px !important;
    padding: 8px 22px;
    font-weight: 700;
}

/* Forms (settings, payment settings modal) */
.cd-page-settings .form-control,
.cd-page-userAccount .modal .form-control {
    border-radius: 12px !important;
    border: 1px solid #d9e8de !important;
    min-height: 44px;
    box-shadow: none !important;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-page-settings .form-control:focus,
.cd-page-userAccount .modal .form-control:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15) !important;
    outline: none;
}

.cd-page-settings .col-form-label {
    font-weight: 700;
    color: var(--cdm-ink);
    padding-top: 12px;
}

.cd-page-settings input[type="checkbox"],
.cd-page-settings input[type="radio"] {
    accent-color: var(--cdm-green);
}

/* Gift-card promo strip above the account */
.cd-page-userAccount #content > .alert-info {
    border-radius: 16px;
    border: 1px solid #d9eadf;
    background: #f4faf6;
    color: var(--cdm-ink);
}

.cd-page-userAccount #content > .alert-info .label-success {
    background: var(--cdm-green);
    border-radius: 999px;
}

@media (max-width: 767px) {
    .cd-page-userAccount .cd-account-title,
    .cd-page-settings .product-tab-header {
        padding: 22px 16px 20px !important;
        border-radius: 18px;
    }

    .cd-page-userAccount .cd-account-title h2,
    .cd-page-settings .product-tab-header .block-title-text {
        font-size: 26px;
    }

    .cd-page-userAccount .available-box {
        padding: 0 4px !important;
    }

    .cd-page-userAccount .available-info h3 {
        font-size: 20px;
    }

    .cd-page-userAccount .available-info p {
        font-size: 12px;
    }

    .cd-page-userAccount .divWhite,
    .cd-page-settings .divWhite {
        padding: 18px 12px !important;
    }
}
/* User account: table search box (custom-style.css forces a 550px label + tall input) */
.cd-page-userAccount .dataTables_wrapper .dataTables_filter {
    width: auto !important;
    margin: 0 0 14px !important;
}

.cd-page-userAccount .dataTables_wrapper .dataTables_filter label {
    width: auto !important;
    margin: 0 !important;
    font-size: 15px !important;
}

.cd-page-userAccount .dataTables_wrapper .dataTables_filter input[type="search"] {
    width: 300px !important;
    max-width: 100%;
    height: 42px !important;
    min-height: 0 !important;
    line-height: normal !important;
    margin: 0 !important;
    padding: 0 16px !important;
}

.cd-page-userAccount table.dataTable {
    clear: both;
    margin-top: 10px !important;
}

/* "כל הקאשבק שלי" status filter */
.cd-page-userAccount #selectStatus,
.cd-page-userAccount #selectAffiliateStatus,
.cd-page-userAccount #selectAffiliateCpaStatus {
    height: 42px;
    border: 1px solid #d9e8de !important;
    border-radius: 999px !important;
    padding: 0 16px;
    background-color: #fff;
    cursor: pointer;
}

/* Status legend under the table: soft badges in the site palette (colors come inline from status.tooltip.content) */
.cd-status-legend p {
    margin: 0 0 10px;
}

.cd-status-legend span[style*="background-color"] {
    display: inline-block;
    padding: 3px 14px !important;
    border-radius: 999px !important;
    font-weight: 700;
    line-height: 1.6;
    margin-inline-end: 4px;
}

.cd-status-legend span[style*="background-color"],
.cd-status-legend span[style*="background-color"] * {
    color: inherit !important;
}

.cd-status-legend span[style*="#f0ad4e"] {
    background-color: #fff3d6 !important;
    color: #9a6400 !important;
    box-shadow: inset 0 0 0 1px #f3d98f;
}

.cd-status-legend span[style*="#d9534f"] {
    background-color: #fdeceb !important;
    color: #b3372f !important;
    box-shadow: inset 0 0 0 1px #f2c3bf;
}

.cd-status-legend span[style*="#5cb85c"] {
    background-color: #eaf5ee !important;
    color: var(--cdm-green-dark) !important;
    box-shadow: inset 0 0 0 1px #c7e2cf;
}

@media (max-width: 767px) {
    .cd-page-userAccount .dataTables_wrapper .dataTables_filter,
    .cd-page-userAccount .dataTables_wrapper .dataTables_filter label,
    .cd-page-userAccount .dataTables_wrapper .dataTables_filter input[type="search"] {
        width: 100% !important;
    }
}
/* Header: same soft light-circle accent as the page title bands.
   Painted as a background layer (no overflow:hidden) so the user menu and search suggestions are never clipped. */
.cd-modern .header-main6::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: radial-gradient(circle at 14% -120%, rgba(255, 255, 255, .1) 0, rgba(255, 255, 255, .1) 210px, transparent 211px);
}

.cd-modern .header-main6 > .container {
    position: relative;
    z-index: 1;
}
/* =========================================================
   Data tables (user account, missing orders, any DataTables on Cashdo)
   ========================================================= */
.cd-modern .dataTables_wrapper .dataTables_filter,
.cd-modern .dataTables_wrapper .dataTables_filter label,
.cd-modern .dataTables_wrapper .dataTables_length,
.cd-modern .dataTables_wrapper .dataTables_length label,
.cd-modern .dataTableSelectDropBox {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.cd-modern .dataTables_wrapper .dataTables_filter input[type="search"] {
    background-color: #fff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2352a36a' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4-4'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: left 14px center !important;
    background-size: 16px 16px !important;
    padding-left: 40px !important;
}

.cd-modern table.dataTable,
.cd-modern table.cart_summary {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    width: 100% !important;
    border: 0 !important;
}

.cd-modern table.dataTable thead th,
.cd-modern table.cart_summary thead th {
    background-color: #f4faf6 !important;
    color: var(--cdm-ink) !important;
    font-size: 14px;
    font-weight: 700;
    padding: 14px 16px !important;
    border: 0 !important;
    border-bottom: 2px solid var(--cdm-green) !important;
    white-space: nowrap;
    vertical-align: middle;
}

.cd-modern table.dataTable thead th:first-child,
.cd-modern table.cart_summary thead th:first-child {
    border-start-start-radius: 14px;
}

.cd-modern table.dataTable thead th:last-child,
.cd-modern table.cart_summary thead th:last-child {
    border-start-end-radius: 14px;
}

.cd-modern table.dataTable tbody td,
.cd-modern table.cart_summary tbody td {
    padding: 14px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid #edf3ef !important;
    vertical-align: middle;
    font-size: 15px;
    color: #2b3a31;
    background: transparent !important;
}

.cd-modern table.dataTable tbody tr,
.cd-modern table.dataTable.stripe tbody tr.odd,
.cd-modern table.dataTable.display tbody tr.odd,
.cd-modern table.dataTable.display tbody tr.even {
    background-color: #fff !important;
    transition: background-color .15s ease;
}

.cd-modern table.dataTable tbody tr:hover,
.cd-modern table.dataTable.display tbody tr:hover {
    background-color: #f4faf6 !important;
}

.cd-modern table.dataTable tbody td.dataTables_empty {
    padding: 34px 16px !important;
    color: #8a948e;
    font-size: 15px;
    text-align: center;
}

.cd-modern table.dataTable tbody td a {
    color: var(--cdm-green-dark);
    font-weight: 600;
}

/* Sorting arrows tinted green */
.cd-modern table.dataTable thead .sorting_asc,
.cd-modern table.dataTable thead .sorting_desc {
    color: var(--cdm-green-dark) !important;
}

/* Responsive "+" toggle */
.cd-modern table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child::before,
.cd-modern table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child::before {
    background-color: var(--cdm-green) !important;
    border: 0 !important;
    box-shadow: 0 2px 6px rgba(82, 163, 106, .35) !important;
}

/* Status badges in table cells (label-warning / -danger / -success from the server) */
.cd-modern table .label {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}

.cd-modern table .label-warning {
    background: #fff3d6 !important;
    color: #9a6400 !important;
    box-shadow: inset 0 0 0 1px #f3d98f;
}

.cd-modern table .label-danger {
    background: #fdeceb !important;
    color: #b3372f !important;
    box-shadow: inset 0 0 0 1px #f2c3bf;
}

.cd-modern table .label-success {
    background: #eaf5ee !important;
    color: var(--cdm-green-dark) !important;
    box-shadow: inset 0 0 0 1px #c7e2cf;
}

/* Info + pagination */
.cd-modern .dataTables_wrapper .dataTables_info {
    color: #6b7a71 !important;
    font-size: 14px;
    padding-top: 16px !important;
}

.cd-modern .dataTables_wrapper .dataTables_paginate {
    padding-top: 12px !important;
}

.cd-modern .dataTables_wrapper .dataTables_paginate .paginate_button {
    border-radius: 999px !important;
    border: 1px solid #dfe9e2 !important;
    background: #fff !important;
    color: var(--cdm-ink) !important;
    margin: 0 3px !important;
    padding: 6px 14px !important;
    min-width: 38px;
    transition: background-color .15s ease, border-color .15s ease;
}

.cd-modern .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: #f1f8f3 !important;
    border-color: var(--cdm-green) !important;
    color: var(--cdm-green-dark) !important;
}

.cd-modern .dataTables_wrapper .dataTables_paginate .paginate_button.current,
.cd-modern .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: var(--cdm-green) !important;
    border-color: var(--cdm-green) !important;
    color: #fff !important;
}

.cd-modern .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.cd-modern .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
    opacity: .45;
    background: #fff !important;
    border-color: #e6ece8 !important;
    color: #8a948e !important;
    cursor: default;
}

.cd-modern .dataTables_wrapper .dataTables_processing {
    border-radius: 14px;
    border: 0;
    box-shadow: var(--cdm-shadow);
    background: #fff;
    color: var(--cdm-green-dark);
    font-weight: 700;
}

@media (max-width: 767px) {
    .cd-modern table.dataTable thead th,
    .cd-modern table.dataTable tbody td {
        padding: 10px 8px !important;
        font-size: 13px;
    }
}
/* =========================================================
   Popups (Bootstrap modals) + payment settings comparison table
   ========================================================= */
.cd-modern .modal-content {
    border: 0 !important;
    border-radius: 22px !important;
    overflow: hidden;
    box-shadow: 0 30px 70px rgba(10, 40, 20, .25) !important;
}

.cd-modern .modal-header {
    background: var(--cdm-green) !important;
    border-bottom: 0 !important;
    padding: 18px 24px !important;
    position: relative;
}

.cd-modern .modal-header .modal-title {
    color: #fff !important;
    font-weight: 800;
}

.cd-modern .modal-header .closeButton,
.cd-modern .modal-header .close {
    width: 34px;
    height: 34px;
    line-height: 30px;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .18) !important;
    color: #fff !important;
    font-size: 18px;
    opacity: 1;
    text-shadow: none;
    transition: background-color .2s ease;
}

.cd-modern .modal-header .closeButton:hover,
.cd-modern .modal-header .close:hover {
    background: rgba(255, 255, 255, .32) !important;
}

.cd-modern .modal-body {
    padding: 24px 26px !important;
}

.cd-modern .modal .form-control {
    border-radius: 12px !important;
    border: 1px solid #d9e8de !important;
    min-height: 46px;
    box-shadow: none !important;
}

.cd-modern .modal .form-control:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15) !important;
}

.cd-modern .modal .btn-blue,
.cd-modern .modal .btn-success {
    border-radius: 999px !important;
    background: var(--cdm-green) !important;
    border: 0 !important;
    color: #fff !important;
    padding: 10px 30px !important;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(82, 163, 106, .28);
}

.cd-modern .modal .btn-blue:hover,
.cd-modern .modal .btn-success:hover {
    background: var(--cdm-green-dark) !important;
}

/* Comparison table */
.cd-modern #paymentTypeTable {
    border-collapse: separate !important;
    border-spacing: 0;
    border: 1px solid #e3efe6 !important;
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 8px;
}

.cd-modern #paymentTypeTable > thead > tr > th,
.cd-modern #paymentTypeTable > tbody > tr > td {
    border: 0 !important;
    border-bottom: 1px solid #edf3ef !important;
    border-inline-start: 1px solid #edf3ef !important;
    padding: 14px 12px !important;
    vertical-align: middle;
    text-align: center;
    background-color: #fff;
    transition: background-color .15s ease;
}

.cd-modern #paymentTypeTable > thead > tr > th:first-child,
.cd-modern #paymentTypeTable > tbody > tr > td:first-child {
    border-inline-start: 0 !important;
    color: #5b6b62;
    font-weight: 600;
}

.cd-modern #paymentTypeTable > tbody > tr:last-child > td {
    border-bottom: 0 !important;
}

.cd-modern #paymentTypeTable > thead > tr > th {
    background-color: #f4faf6 !important;
    color: var(--cdm-ink) !important;
    font-size: 16px;
    font-weight: 800;
}

/* Selected method column (was aliceblue) */
.cd-modern #paymentTypeTable .activePayment,
.cd-modern #paymentTypeTable th.activePayment,
.cd-modern #paymentTypeTable td.activePayment {
    background-color: #eaf5ee !important;
}

.cd-modern #paymentTypeTable th.activePayment {
    background-color: var(--cdm-green) !important;
    color: #fff !important;
}

.cd-modern #paymentTypeTable .btn-primary {
    border-radius: 999px !important;
    background: #fff !important;
    border: 1.5px solid var(--cdm-green) !important;
    color: var(--cdm-green-dark) !important;
    font-weight: 700;
    padding: 6px 20px !important;
    box-shadow: none !important;
    transition: background-color .15s ease, color .15s ease, transform .15s ease;
}

.cd-modern #paymentTypeTable .btn-primary:hover,
.cd-modern #paymentTypeTable .activePayment .btn-primary {
    background: var(--cdm-green) !important;
    color: #fff !important;
}

.cd-modern #paymentTypeTable .btn-primary:hover {
    transform: translateY(-1px);
}

@media (max-width: 767px) {
    .cd-modern .modal-body {
        padding: 18px 14px !important;
    }

    .cd-modern #paymentTypeTable > thead > tr > th,
    .cd-modern #paymentTypeTable > tbody > tr > td {
        padding: 10px 6px !important;
        font-size: 13px;
    }

    .cd-modern #paymentTypeTable .btn-primary {
        padding: 5px 12px !important;
    }
}
/* Modal header: custom-style.css makes it position:absolute / 50px high and pushes the body down 59px; use normal flow instead */
.cd-modern .modal-header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    height: auto !important;
    min-height: 64px;
    line-height: 1.3 !important;
    padding: 16px 64px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0 !important;
}

.cd-modern .modal-header .modal-title {
    margin: 0 !important;
    line-height: 1.3;
}

.cd-modern .modal-header .closeButton {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    line-height: 34px !important;
    text-align: center;
    float: none;
}

.cd-modern .modal-body {
    margin-top: 0 !important;
}
/* =========================================================
   Login page: logo, background circles, shine buttons, perk chips
   ========================================================= */
body.cd-modern:has(.mainLogin) {
    background:
        radial-gradient(circle at 8% 12%, rgba(255, 255, 255, .12) 0, rgba(255, 255, 255, .12) 220px, transparent 221px),
        radial-gradient(circle at 92% 88%, rgba(255, 255, 255, .09) 0, rgba(255, 255, 255, .09) 300px, transparent 301px),
        radial-gradient(circle at 85% 18%, rgba(255, 213, 74, .14) 0, rgba(255, 213, 74, .14) 90px, transparent 91px),
        linear-gradient(150deg, #74c08c 0%, #52a36a 45%, #3c8455 100%) !important;
    background-attachment: fixed !important;
}

.cd-modern #cashdoHeaderLogo.cd-login-logo {
    display: block;
    width: 100%;
    max-width: 320px;
    height: auto;
    margin: 18px auto 26px;
}

/* Shine sweep, same as the yellow "הרשמה" hero button */
.cd-modern .btn-login,
.cd-modern .btn-register {
    position: relative;
    overflow: hidden;
}

.cd-modern .btn-login::after,
.cd-modern .btn-register::after {
    content: "";
    position: absolute;
    top: 0;
    left: -60%;
    width: 40%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .55), transparent);
    transform: skewX(-20deg);
    animation: cdm-shine 3.6s ease-in-out infinite;
    pointer-events: none;
}

@media (max-width: 767px) {
    .cd-modern #cashdoHeaderLogo.cd-login-logo {
        max-width: 240px;
        margin: 10px auto 18px;
    }

}
/* =========================================================
   Header top bar: logo on the right, search in the middle, buttons on the left (flex instead of floats)
   ========================================================= */
.cd-modern .header-main6 > .container {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.cd-modern .header-main6 > .container::before,
.cd-modern .header-main6 > .container::after {
    display: none;
}

.cd-modern .header-main6 .admin_user_logged_in {
    order: 0;
    flex: 0 0 100%;
}

.cd-modern .header-main6 .logo {
    order: 1;
    float: none !important;
    text-align: right !important;
}

.cd-modern .header-main6 .logo h1 {
    margin: 0;
    line-height: 0;
}

.cd-modern .header-main6 .cd-header-logo {
    height: 46px;
    width: auto;
    max-width: 100%;
}

.cd-modern .header-main6 .mainSearch {
    order: 2;
    float: none !important;
    margin-top: 0 !important;
}

.cd-modern .header-main6 .navigateButtons {
    order: 3;
    float: none !important;
    margin-inline-start: auto;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    text-align: left !important;
}

.cd-modern .header-main6 .navigateButtons .btn-custom,
.cd-modern .header-main6 .navigateButtons .btn-custom-login {
    margin: 0 !important;
}

.cd-modern .header-main6 .navigateButtons .menuDropDown {
    float: none;
    width: auto;
}

@media (max-width: 991px) {
    .cd-modern .header-main6 .cd-header-logo {
        height: 38px;
    }
}

@media (max-width: 767px) {
    .cd-modern .header-main6 .cd-header-logo {
        height: 32px;
    }

    .cd-modern .header-main6 .navigateButtons {
        gap: 6px;
    }
}
/* =========================================================
   Install-extension popup (common/install_extension_popup.vm, inline styles paint it navy)
   ========================================================= */
.cd-modern #installExtensionModal .modal-dialog {
    max-width: 680px;
}

.cd-modern #installExtensionModal .modal-header {
    background: var(--cdm-green) !important;
    min-height: 56px;
}

.cd-modern #installExtensionModal .modal-body.bg-cashdo-green,
.cd-modern #installExtensionModal .modal-body {
    background: #fff !important;
    margin-top: 0 !important;
    padding: 30px 30px 26px !important;
}

.cd-modern #installExtensionModal .modal-body div[style*="font-size: 29px"] {
    color: var(--cdm-ink) !important;
    font-size: 26px !important;
    font-weight: 800;
    line-height: 1.45 !important;
}

.cd-modern #installExtensionModal .modal-body p {
    margin: 0;
}

/* Primary: yellow pill with shine (same as the hero "הרשמה") */
.cd-modern #installExtensionModal .btn.bt {
    position: relative;
    overflow: hidden;
    border-radius: 999px !important;
    background: var(--cdm-yellow) !important;
    color: #1b2a12 !important;
    font-weight: 800;
    font-size: 17px;
    padding: 12px 28px !important;
    box-shadow: 0 10px 24px rgba(255, 213, 74, .45) !important;
    transition: transform .2s var(--cdm-ease), box-shadow .2s ease;
}

.cd-modern #installExtensionModal .btn.bt::after {
    content: "";
    position: absolute;
    top: 0;
    left: -60%;
    width: 40%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .7), transparent);
    transform: skewX(-20deg);
    animation: cdm-shine 3.6s ease-in-out infinite;
    pointer-events: none;
}

.cd-modern #installExtensionModal .btn.bt:hover {
    transform: translateY(-2px);
    opacity: 1;
    color: #1b2a12 !important;
}

/* Secondary: outline pill */
.cd-modern #installExtensionModal #installExtensionModalRedirectButton {
    border-radius: 999px !important;
    border: 1.5px solid var(--cdm-green) !important;
    color: var(--cdm-green-dark) !important;
    background: #fff !important;
    font-weight: 700;
    font-size: 16px !important;
    padding: 11px 26px !important;
    transition: background-color .2s ease, color .2s ease;
}

.cd-modern #installExtensionModal #installExtensionModalRedirectButton:hover {
    background: var(--cdm-green) !important;
    color: #fff !important;
}

/* Browser cards */
.cd-modern #installExtensionModal .no-gutter[style*="background: white"] {
    background: transparent !important;
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-top: 6px !important;
    float: none;
}

.cd-modern #installExtensionModal .no-gutter[style*="background: white"] > div {
    float: none;
    width: auto;
    padding: 0 !important;
}

.cd-modern #installExtensionModal .similarStore a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 84px;
    border-radius: 18px;
    background: #f4faf6;
    box-shadow: inset 0 0 0 1px #e1efe5;
    transition: transform .2s var(--cdm-ease), box-shadow .2s ease;
}

.cd-modern #installExtensionModal .similarStore a:hover {
    transform: translateY(-3px);
    box-shadow: inset 0 0 0 1px var(--cdm-green), 0 10px 22px rgba(82, 163, 106, .2);
}

.cd-modern #installExtensionModal .similarStore img {
    max-height: 52px;
    width: auto;
}

@media (max-width: 767px) {
    .cd-modern #installExtensionModal .modal-body div[style*="font-size: 29px"] {
        font-size: 20px !important;
    }

    .cd-modern #installExtensionModal .modal-body {
        padding: 22px 16px 20px !important;
    }

    .cd-modern #installExtensionModal .btn.bt,
    .cd-modern #installExtensionModal #installExtensionModalRedirectButton {
        display: block;
        margin: 0 0 10px !important;
    }
}
/* Header: keep the search exactly centred whatever is on either side (logged in: name + balance) */
@media (min-width: 992px) {
    .cd-modern .header-main6 .logo {
        flex: 1 1 0;
        width: auto !important;
        min-width: 0;
    }

    .cd-modern .header-main6 .mainSearch {
        flex: 0 1 620px;
        width: auto !important;
        min-width: 0;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .cd-modern .header-main6 .navigateButtons {
        flex: 1 1 0;
        width: auto !important;
        min-width: 0;
        margin-inline-start: 0;
    }
}

/* Any other block injected into the bar (e.g. admin debug info) goes on its own row instead of shifting the layout */
.cd-modern .header-main6 > .container > *:not(.logo):not(.mainSearch):not(.navigateButtons):not(.admin_user_logged_in) {
    order: 4;
    flex: 0 0 100%;
}

.cd-modern .header-main6 .navigateButtons .yourgain {
    color: #fff !important;
    font-weight: 700;
    white-space: nowrap;
}
/* =========================================================
   Top-of-page notices (activation email, phone verification, success) in #content
   ========================================================= */
.cd-modern #content > .alert {
    display: flex;
    align-items: center;
    gap: 14px;
    border-radius: 18px !important;
    border: 1px solid #d9eadf !important;
    background: #f4faf6 !important;
    color: var(--cdm-ink) !important;
    padding: 14px 18px !important;
    box-shadow: var(--cdm-shadow);
    font-size: 15px;
}

.cd-modern #content > .alert::before {
    content: "";
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: var(--cdm-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E") no-repeat center / 20px 20px;
}

.cd-modern #content > .alert-success::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E");
}

.cd-modern #content > .alert::after {
    display: none;
}

.cd-modern #content > .alert > p {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    margin: 0;
    flex: 1 1 auto;
}

.cd-modern #content > .alert .sendAgain {
    margin-inline-start: auto;
    padding: 7px 18px;
    border-radius: 999px;
    border: 1.5px solid var(--cdm-green);
    color: var(--cdm-green-dark) !important;
    background: #fff;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none !important;
    white-space: nowrap;
    transition: background-color .2s ease, color .2s ease;
}

.cd-modern #content > .alert .sendAgain:hover {
    background: var(--cdm-green);
    color: #fff !important;
}

.cd-modern #content > .alert .label-success {
    background: var(--cdm-green);
    border-radius: 999px;
}

@media (max-width: 767px) {
    .cd-modern #content > .alert {
        align-items: flex-start;
    }

    .cd-modern #content > .alert .sendAgain {
        margin-inline-start: 0;
    }
}
/* =========================================================
   Tooltips (Bootstrap, e.g. header balance "how much you gain", status help)
   ========================================================= */
.cd-modern .tooltip.in {
    opacity: 1 !important;
}

.cd-modern .ttip + .tooltip > .tooltip-inner,
.cd-modern .tooltip > .tooltip-inner {
    background: #fff !important;
    color: var(--cdm-ink) !important;
    border: 1px solid #e3efe6 !important;
    border-radius: 16px !important;
    box-shadow: 0 18px 40px rgba(20, 38, 27, .16) !important;
    padding: 12px 16px !important;
    font-size: 14px;
    line-height: 1.8;
    text-align: right;
    direction: rtl;
    max-width: 320px;
}

.cd-modern .tooltip > .tooltip-inner u {
    display: block;
    text-decoration: none;
    color: var(--cdm-green-dark);
    font-weight: 800;
    font-size: 13px;
    margin-bottom: 2px;
    padding-bottom: 4px;
    border-bottom: 1px solid #e3efe6;
}

.cd-modern .tooltip.bottom > .tooltip-arrow,
.cd-modern .ttip + .tooltipbar.bottom > .tooltip-arrow {
    border-bottom-color: #fff !important;
}

.cd-modern .tooltip.top > .tooltip-arrow,
.cd-modern .ttip + .tooltip.top > .tooltip-arrow {
    border-top-color: #fff !important;
}

/* Header balance tooltip: a little roomier */
.cd-modern .yourgain + .tooltip > .tooltip-inner {
    min-width: 250px;
    padding: 16px 20px !important;
    font-size: 15px;
}
.cd-modern .tooltip > .tooltip-inner u + br {
    display: none;
}

/* =========================================================
   "עושה קניות באינטרנט? עצור!" popup (common/cashdo_ad_popup.vm, #product_view)
   ========================================================= */
.cd-modern #product_view .modal-dialog {
    max-width: 720px;
}

.cd-modern #product_view .modal-header {
    background: var(--cdm-green) !important;
    min-height: 56px;
}

.cd-modern #product_view .modal-body,
.cd-modern #product_view .modal-content {
    background: #fff !important;
}

.cd-modern #product_view .modal-body {
    margin-top: 0 !important;
    padding: 28px 28px 24px !important;
}

.cd-modern #product_view .modal-body div[style*="font-size: 29px"],
.cd-modern #product_view .modal-body div[style*="font-size: 29px"] * {
    color: var(--cdm-ink) !important;
}

.cd-modern #product_view .modal-body div[style*="font-size: 29px"] {
    font-size: 26px !important;
    font-weight: 800;
    line-height: 1.45 !important;
}

.cd-modern #product_view .btn.bt {
    position: relative;
    overflow: hidden;
    border-radius: 999px !important;
    background: var(--cdm-yellow) !important;
    color: #1b2a12 !important;
    font-weight: 800;
    font-size: 17px;
    padding: 12px 30px !important;
    box-shadow: 0 10px 24px rgba(255, 213, 74, .45) !important;
}

.cd-modern #product_view .btn.bt::after {
    content: "";
    position: absolute;
    top: 0;
    left: -60%;
    width: 40%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .7), transparent);
    transform: skewX(-20deg);
    animation: cdm-shine 3.6s ease-in-out infinite;
    pointer-events: none;
}

.cd-modern #product_view .no-gutter[style*="background"] {
    background: transparent !important;
}

.cd-modern #product_view .similarStore a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 78px;
    border-radius: 16px;
    background: #fff;
    box-shadow: inset 0 0 0 1px #e1efe5;
    padding: 10px;
    transition: transform .2s var(--cdm-ease), box-shadow .2s ease;
}

.cd-modern #product_view .similarStore a:hover {
    transform: translateY(-3px);
    box-shadow: inset 0 0 0 1px var(--cdm-green), 0 10px 22px rgba(82, 163, 106, .2);
}

.cd-modern #product_view .similarStore img {
    max-height: 50px;
    max-width: 100%;
    width: auto;
}

/* =========================================================
   "עושים קניות באליאקספרס…" store-card block (common/cashdo_ad.vm)
   ========================================================= */
.cd-modern .similarStoreDiv {
    background: #fff;
    border-radius: 20px !important;
    box-shadow: var(--cdm-shadow);
    padding: 18px 12px 14px !important;
    transition: transform .3s var(--cdm-ease), box-shadow .3s ease;
}

.cd-modern .similarStoreDiv:hover {
    transform: translateY(-6px);
    box-shadow: var(--cdm-shadow-hover);
}

.cd-modern .similarStoreDiv .similarImage {
    transition: transform .35s var(--cdm-ease);
}

.cd-modern .similarStoreDiv:hover .similarImage {
    transform: scale(1.05);
}

.cd-modern .similarStoreDiv .title {
    font-weight: 700;
    color: var(--cdm-green-dark);
    margin-top: 8px;
}

.cd-modern .similarStoreDiv .buy.btn {
    width: 100%;
    border-radius: 999px !important;
    background: var(--cdm-green) !important;
    border: 0 !important;
    color: #fff !important;
    font-weight: 700;
    padding: 10px 14px !important;
    box-shadow: 0 8px 18px rgba(82, 163, 106, .28) !important;
    transition: background-color .2s ease, transform .2s var(--cdm-ease);
}

.cd-modern .similarStoreDiv .buy.btn:hover {
    background: var(--cdm-green-dark) !important;
    transform: translateY(-2px);
}

/* =========================================================
   Tax / VAT calculators (cd-page-taxCalculator, cd-page-vatCalculator)
   ========================================================= */
.cd-page-taxCalculator .product-tab-header:has(h1),
.cd-page-vatCalculator .product-tab-header:has(h1) {
    background: var(--cdm-green);
    border-radius: 24px;
    padding: 34px 24px 30px;
    margin: 18px 0 22px;
    box-shadow: 0 18px 40px rgba(82, 163, 106, .25);
    position: relative;
    overflow: hidden;
}

.cd-page-taxCalculator .product-tab-header:has(h1)::before,
.cd-page-vatCalculator .product-tab-header:has(h1)::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    top: -200px;
    left: -100px;
    border-radius: 50%;
    background: #fff;
    opacity: .08;
}

.cd-page-taxCalculator .product-tab-header:has(h1) h1,
.cd-page-vatCalculator .product-tab-header:has(h1) h1,
.cd-page-taxCalculator .product-tab-header:has(h1) .block-title-text,
.cd-page-vatCalculator .product-tab-header:has(h1) .block-title-text {
    color: #fff !important;
    font-size: 34px;
    font-weight: 800;
    position: relative;
}

.cd-page-taxCalculator .divWhite,
.cd-page-vatCalculator .divWhite {
    border-radius: 22px;
    box-shadow: var(--cdm-shadow);
    padding: 28px 30px !important;
    border: 0;
    line-height: 1.8;
}

.cd-page-taxCalculator .form-control,
.cd-page-vatCalculator .form-control {
    border-radius: 12px !important;
    border: 1px solid #d9e8de !important;
    min-height: 46px;
    box-shadow: none !important;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-page-taxCalculator .form-control:focus,
.cd-page-vatCalculator .form-control:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15) !important;
}

.cd-page-taxCalculator .control-label,
.cd-page-vatCalculator .control-label {
    font-weight: 700;
    color: var(--cdm-ink);
    padding-top: 12px;
}

.cd-page-vatCalculator input[type="radio"],
.cd-page-taxCalculator input[type="radio"] {
    accent-color: var(--cdm-green);
}

/* Result tables */
.cd-page-taxCalculator .table-bordered,
.cd-page-vatCalculator .table-bordered,
.cd-page-taxCalculator #categoriesTaxTable {
    border: 1px solid #e3efe6 !important;
    border-collapse: separate !important;
    border-spacing: 0;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
}

.cd-page-taxCalculator .table-bordered > tbody > tr > td,
.cd-page-taxCalculator .table-bordered > thead > tr > th,
.cd-page-vatCalculator .table-bordered > tbody > tr > td,
.cd-page-vatCalculator .table-bordered > thead > tr > th,
.cd-page-taxCalculator #categoriesTaxTable td,
.cd-page-taxCalculator #categoriesTaxTable th {
    border: 0 !important;
    border-bottom: 1px solid #edf3ef !important;
    padding: 14px 16px !important;
    vertical-align: middle;
}

.cd-page-taxCalculator .table-bordered > tbody > tr:last-child > td,
.cd-page-vatCalculator .table-bordered > tbody > tr:last-child > td {
    border-bottom: 0 !important;
    background: #eaf5ee;
    font-weight: 800;
    color: var(--cdm-green-dark);
}

.cd-page-taxCalculator .table-bordered > tbody > tr > td:first-child,
.cd-page-vatCalculator .table-bordered > tbody > tr > td:first-child {
    color: #5b6b62;
    font-weight: 600;
}

.cd-page-taxCalculator .divWhite .alert,
.cd-page-vatCalculator .alert {
    border-radius: 16px !important;
    border: 1px solid #d9eadf !important;
    background: #f4faf6 !important;
    color: var(--cdm-ink) !important;
}

@media (max-width: 767px) {
    .cd-page-taxCalculator .product-tab-header:has(h1),
    .cd-page-vatCalculator .product-tab-header:has(h1) {
        padding: 24px 16px 22px;
        border-radius: 18px;
    }

    .cd-page-taxCalculator .product-tab-header:has(h1) h1,
    .cd-page-vatCalculator .product-tab-header:has(h1) h1 {
        font-size: 26px;
    }

    .cd-page-taxCalculator .divWhite,
    .cd-page-vatCalculator .divWhite {
        padding: 20px 14px !important;
    }
}
/* =========================================================
   Footer
   ========================================================= */
.cd-modern #footer {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: #17291e !important;
    margin-top: 30px;
}

.cd-modern #footer::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        radial-gradient(circle at 92% -10%, rgba(82, 163, 106, .22) 0, rgba(82, 163, 106, .22) 260px, transparent 261px),
        radial-gradient(circle at 4% 110%, rgba(255, 255, 255, .05) 0, rgba(255, 255, 255, .05) 220px, transparent 221px);
}

.cd-modern #footer::after {
    /* thin brand line on top */
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--cdm-green);
}

.cd-modern #footer .footer-middle {
    background: transparent !important;
    padding: 48px 0 20px;
}

.cd-modern #footer .list-link li.head {
    color: #fff !important;
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 12px;
    padding-bottom: 8px;
    position: relative;
}

.cd-modern #footer .list-link li.head::after {
    content: "";
    position: absolute;
    bottom: 0;
    inset-inline-start: 0;
    width: 28px;
    height: 3px;
    border-radius: 3px;
    background: var(--cdm-green);
}

.cd-modern #footer .list-link li {
    margin-bottom: 6px;
}

.cd-modern #footer .list-link li:not(.head) a {
    color: rgba(255, 255, 255, .72) !important;
    font-size: 15px;
}

.cd-modern #footer .list-link li:not(.head) a:hover {
    color: var(--cdm-yellow) !important;
}

/* App badges + QR */
.cd-modern #footer .list-link li a img[data-src*="google-play"],
.cd-modern #footer .list-link li a img[data-src*="apple-store"],
.cd-modern #footer .list-link li a img[src*="google-play"],
.cd-modern #footer .list-link li a img[src*="apple-store"] {
    border-radius: 12px;
    transition: transform .2s var(--cdm-ease), box-shadow .2s ease;
}

.cd-modern #footer .list-link li a:hover img {
    transform: translateY(-3px);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .3);
}

.cd-modern #footer .footer-app-qr a {
    border-radius: 16px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .25);
}

/* Social icons */
.cd-modern #footer .socialfollow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .1) !important;
    color: #fff !important;
    font-size: 17px;
    border: 1px solid rgba(255, 255, 255, .18);
    transition: background-color .2s ease, transform .2s var(--cdm-ease), border-color .2s ease;
}

.cd-modern #footer a:hover .socialfollow,
.cd-modern #footer .socialfollow:hover {
    background: var(--cdm-green) !important;
    border-color: var(--cdm-green);
    transform: translateY(-3px);
}

/* Language picker */
.cd-modern #footer .dropdown .btn.language {
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(255, 255, 255, .2) !important;
    color: #fff !important;
    border-radius: 999px !important;
    box-shadow: none !important;
}

.cd-modern #footer .dropdown .btn.language span,
.cd-modern #footer .dropdown .btn.language .caret {
    color: #fff !important;
}

.cd-modern #footer .dropdown-menu-language {
    border-radius: 14px;
    overflow: hidden;
    border: 0;
}

.cd-modern #footer .dropdown-menu-language a {
    color: var(--cdm-ink) !important;
}

/* Bottom strip */
.cd-modern #footer .footer-bottom {
    background: rgba(0, 0, 0, .18) !important;
    border-top: 1px solid rgba(255, 255, 255, .08) !important;
    padding: 24px 0 18px !important;
}

.cd-modern #footer .footer-disclaimer,
.cd-modern #footer .footer-disclaimer strong {
    color: rgba(255, 255, 255, .55) !important;
    font-size: 12.5px !important;
}

.cd-modern #footer .footer-disclaimer strong {
    color: rgba(255, 255, 255, .8) !important;
}

.cd-modern #footer .footer-disclaimer a {
    color: rgba(255, 255, 255, .8) !important;
    font-size: inherit !important;
}

.cd-modern #footer .block-coppyright,
.cd-modern #footer .block-coppyright a {
    color: rgba(255, 255, 255, .6) !important;
    font-size: 14px !important;
}

.cd-modern #footer .block-coppyright a:hover {
    color: var(--cdm-yellow) !important;
}
/* Header balance: no dotted underline */
.cd-modern .header-main6 .yourgain,
.cd-modern .header-main6 .yourgain:hover,
.cd-modern .header-main6 .yourgain:focus {
    border-bottom: 0 !important;
    text-decoration: none !important;
}
/* Footer social: the <a> was the white 32px disc; the icon itself is now the circle */
.cd-modern #footer .block-social {
    max-width: none !important;
}

.cd-modern #footer .block-social .list-social {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: 6px 0 0;
}

.cd-modern #footer .block-social .list-social li {
    float: none;
    padding: 0;
}

.cd-modern #footer .block-social .list-social li > a {
    width: auto;
    height: auto;
    border: 0 !important;
    background: transparent !important;
    line-height: normal;
    border-radius: 0;
}
/* Affiliate plan card header: bold title, small pill subtitle, tighter (old rules use a 5-level id selector) */
.cd-page-affiliate #generic_price_table .generic_content .generic_head_price {
    padding: 22px 16px 20px !important;
    position: relative;
    overflow: hidden;
}

.cd-page-affiliate #generic_price_table .generic_content .generic_head_price::before {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    top: -120px;
    left: -60px;
    border-radius: 50%;
    background: #fff;
    opacity: .1;
}

.cd-page-affiliate #generic_price_table .generic_content .generic_head_price .generic_head_content {
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
}

.cd-page-affiliate #generic_price_table .generic_content .generic_head_price .generic_head_content .head {
    padding: 0 !important;
    margin: 0 !important;
}

.cd-page-affiliate #generic_price_table .generic_content .generic_head_price .generic_head_content .head span {
    color: #fff !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    letter-spacing: .5px !important;
    line-height: 1.2;
}

.cd-page-affiliate #generic_price_table .generic_content .generic_head_price .generic_head_content .head br {
    display: none;
}

.cd-page-affiliate #generic_price_table .generic_content .generic_head_price .generic_head_content .head div {
    display: inline-block;
    margin-top: 10px !important;
    padding: 4px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .18);
    border: 1px solid rgba(255, 255, 255, .3);
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

.cd-page-affiliate #generic_price_table .generic_content .generic_head_price .generic_head_content .head > span::after {
    content: "";
    display: block;
}
/* =========================================================
   Buttons never move on hover/focus (cards/containers may still lift)
   ========================================================= */
.cd-modern .btn:hover, .cd-modern .btn:focus, .cd-modern .btn:active,
.cd-modern button:hover, .cd-modern button:focus,
.cd-modern .cd-btn:hover, .cd-modern .cd-btn:focus-visible,
.cd-modern .buyAtShop:hover,
.cd-modern .btn-login:hover, .cd-modern .btn-register:hover,
.cd-modern .btn.primary2:hover,
.cd-modern .cd-cat-chip:hover, .cd-modern .cd-cat-chip:focus-visible,
.cd-modern .cd-modern .all-categories-list li:hover,
.cd-modern .cd-cats-top .all-categories-list li:hover,
.cd-modern .nav-tabs > li > a:hover,
.cd-modern .shop-details .nav-tabs > li > a:hover,
.cd-modern .dataTables_paginate .paginate_button:hover,
.cd-modern #generic_price_table .generic_price_btn a:hover,
.cd-modern #paymentTypeTable .btn-primary:hover,
.cd-modern .copy-button:hover,
.cd-modern .cd-coupon-copy:hover,
.cd-modern .sendAgain:hover,
.cd-modern #submitContact:hover,
.cd-modern .missing-order-btn:hover,
.cd-modern .similarStoreDiv .buy.btn:hover,
.cd-modern .header-main6 .btn-custom:hover,
.cd-modern .header-main6 .btn-custom-login:hover,
.cd-modern .header-main6 .yourgain:hover,
.cd-modern #installExtensionModal .btn.bt:hover,
.cd-modern #product_view .btn.bt:hover,
.cd-modern #installExtensionModalRedirectButton:hover,
.cd-modern .socialfollow:hover,
.cd-modern #footer a:hover .socialfollow,
.cd-modern .login .btn-social:hover,
.cd-modern .cashdoHeaderWraper .btn-social:hover,
.cd-modern .cashdoHeaderWraper .social a:hover {
    transform: none !important;
}

/* Buttons whose transform is positioning, not motion */
.cd-modern .advanced-search .btn-search,
.cd-modern .advanced-search .btn-search:hover,
.cd-modern .advanced-search .btn-search:focus {
    transform: translateY(-50%) !important;
}

.cd-modern .modal-header .closeButton,
.cd-modern .modal-header .closeButton:hover,
.cd-modern .modal-header .closeButton:focus {
    transform: translateY(-50%) !important;
}
/* =========================================================
   Store cards hover: green border only (no lift, no logo zoom)
   Home grid (.storeDiv .storeBlock), all-stores / category results (.product-container), store-card block (.similarStoreDiv)
   ========================================================= */
.cd-modern .storeDiv .storeBlock,
.cd-modern .product-container,
.cd-modern .similarStoreDiv {
    border: 1.5px solid #e6efe9 !important;
    transition: border-color .2s ease, box-shadow .2s ease !important;
}

.cd-modern .storeDiv:hover .storeBlock,
.cd-modern .product-container:hover,
.cd-modern #allStoresContainer .product-container:hover,
.cd-modern .similarStoreDiv:hover {
    transform: none !important;
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 1px var(--cdm-green), var(--cdm-shadow) !important;
}

.cd-modern .storeDiv .storeBlock img,
.cd-modern .storeDiv:hover .storeBlock img,
.cd-modern .product-container img,
.cd-modern .product-container:hover img,
.cd-modern .similarStoreDiv .similarImage,
.cd-modern .similarStoreDiv:hover .similarImage {
    transform: none !important;
    transition: none !important;
}
/* Admin "logged in as user" notice: own compact row above the bar (custom-style.css makes it position:absolute over the logo) */
.cd-modern .header-main6 .admin_user_logged_in {
    position: static !important;
    order: 0;
    flex: 0 0 100%;
    width: 100%;
    margin: 0 0 6px;
    padding: 3px 12px;
    border-radius: 999px;
    background: rgba(179, 55, 47, .9);
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700;
    text-align: center;
    line-height: 1.6;
}
/* Tooltips: long content (e.g. product names in the cashback table) wraps inside the card */
.cd-modern .tooltip > .tooltip-inner,
.cd-modern .tooltip > .tooltip-inner * {
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.cd-modern .tooltip > .tooltip-inner {
    max-width: 380px !important;
    width: max-content;
}

.cd-modern .tooltip {
    max-width: 400px;
}
/* Logo/buttons need a real minimum width: with flex-basis 0 the logo could collapse onto the admin-notice row */
@media (min-width: 992px) {
    .cd-modern .header-main6 .logo,
    .cd-modern .header-main6 .navigateButtons {
        min-width: 230px !important;
    }
}
/* Header: vertical centring of logo, search and buttons on one line */
.cd-modern .header-main6 {
    padding: 10px 0 !important;
}

.cd-modern .header-main6 > .container {
    min-height: 48px;
}

.cd-modern .header-main6 .logo {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    align-self: center;
    line-height: 0;
    margin: 0 !important;
}

.cd-modern .header-main6 .logo h1 {
    display: flex;
    align-items: center;
}

.cd-modern .header-main6 .cd-header-logo {
    display: block;
    margin: 0 !important;
}

.cd-modern .header-main6 .mainSearch {
    align-self: center;
}

.cd-modern .header-main6 .mainSearch .advanced-search {
    margin: 0 !important;
}

.cd-modern .header-main6 .navigateButtons {
    align-self: center;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.cd-modern .header-main6 .navigateButtons > *,
.cd-modern .header-main6 .navigateButtons .yourgain,
.cd-modern .header-main6 .navigateButtons .menuDropDown,
.cd-modern .header-main6 .navigateButtons .menuDropDown > .btn,
.cd-modern .header-main6 .navigateButtons .btn {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    float: none !important;
    vertical-align: middle;
}

.cd-modern .header-main6 .navigateButtons .yourgain {
    line-height: 1;
    display: inline-flex;
    align-items: center;
}
/* Login / registration card: breathing room around the title and between the social buttons */
.cd-modern .cashdoHeaderWraper .title-h1 {
    padding-top: 26px;
    margin-bottom: 22px !important;
    line-height: 1.3;
}

.cd-modern .cashdoHeaderWraper .social #signInGoogle1,
.cd-modern .cashdoHeaderWraper .social #signInGoogle2 {
    margin-top: 12px;
}

.cd-modern .cashdoHeaderWraper .division {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}
/* Coupon cards: hover = border colour only (no lift, no shadow change, no logo zoom) */
.cd-modern .coupon-div {
    transition: border-color .2s ease !important;
}

.cd-modern .coupon-div:hover {
    transform: none !important;
    border-color: var(--cdm-green) !important;
    box-shadow: var(--cdm-shadow) !important;
}

.cd-modern .coupon-div .couponImage,
.cd-modern .coupon-div:hover .couponImage {
    transform: none !important;
    transition: none !important;
}
/* Footer language button: gap between the language name and the arrow */
.cd-modern #footer .dropdown .btn.language .caret {
    margin-inline-start: 8px;
    margin-left: 0;
    margin-right: 0;
    margin-inline-start: 8px;
}

.cd-modern #footer .dropdown .btn.language img {
    margin-inline-end: 6px;
}
/* Search icon follows the text direction (Hebrew: icon left / LTR e.g. Russian: icon right); text never runs under it */
body.cd-modern[dir="rtl"] .advanced-search .search-input input {
    padding-left: 46px !important;
}

body.cd-modern:not([dir="rtl"]) .advanced-search .btn-search {
    left: auto !important;
    right: 6px !important;
}

body.cd-modern:not([dir="rtl"]) .advanced-search .search-input input {
    padding-right: 46px !important;
    padding-left: 18px !important;
    text-align: left;
}

body.cd-modern:not([dir="rtl"]) .dataTables_wrapper .dataTables_filter input[type="search"] {
    background-position: right 14px center !important;
    padding-right: 40px !important;
    padding-left: 16px !important;
}

/* Sort dropdown chevron on the correct side in LTR */
body.cd-modern:not([dir="rtl"]) #sortStoresBy {
    padding: 0 46px 0 18px;
    background-position: right 20px center;
}
/* Footer QR code: no hover effect */
.cd-modern #footer .footer-app-qr a,
.cd-modern #footer .footer-app-qr a:hover,
.cd-modern #footer .footer-app-qr a img,
.cd-modern #footer .footer-app-qr a:hover img {
    transform: none !important;
    transition: none !important;
}

.cd-modern #footer .footer-app-qr a:hover img {
    box-shadow: none !important;
}

.cd-modern #footer .footer-app-qr a:hover {
    box-shadow: 0 10px 24px rgba(0, 0, 0, .25) !important;
}
/* Footer app-store badges: no hover effect */
.cd-modern #footer .list-link li a img[data-src*="google-play"],
.cd-modern #footer .list-link li a img[data-src*="apple-store"],
.cd-modern #footer .list-link li a img[src*="google-play"],
.cd-modern #footer .list-link li a img[src*="apple-store"],
.cd-modern #footer .list-link li a:hover img[data-src*="google-play"],
.cd-modern #footer .list-link li a:hover img[data-src*="apple-store"],
.cd-modern #footer .list-link li a:hover img[src*="google-play"],
.cd-modern #footer .list-link li a:hover img[src*="apple-store"] {
    transform: none !important;
    box-shadow: none !important;
    transition: none !important;
}
/* =========================================================
   Rate-store popup (common/popup_rate_store.vm)
   ========================================================= */
.cd-modern #rateStorePopup .modal-dialog {
    max-width: 560px;
}

.cd-modern #rateStorePopup .modal-body {
    padding: 22px 28px 26px !important;
}

.cd-modern #rateStorePopup [id^="reviewDiv"] {
    padding-top: 0 !important;
}

.cd-modern #rateStorePopup h4 {
    color: var(--cdm-ink);
}

.cd-modern #rateStorePopup [id^="reviewDiv"] > h4 {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.5;
    margin: 0 0 16px;
}

/* Store logo in a framed card */
.cd-modern #rateStorePopup [id^="reviewImg"] {
    display: block;
    margin: 0 auto !important;
    max-width: 260px;
    max-height: 96px;
    width: auto !important;
    padding: 14px 22px;
    border-radius: 18px;
    background: #fff;
    box-shadow: inset 0 0 0 1px #e3efe6;
    object-fit: contain;
}

.cd-modern #rateStorePopup .comment-form {
    background: transparent !important;
    margin-top: 6px;
}

/* Rating row: label + stars, centred */
.cd-modern #rateStorePopup .comment-form > div[style*="table-row"] {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 6px 0 14px;
}

.cd-modern #rateStorePopup .comment-reply-title {
    margin: 0 !important;
    font-size: 16px;
    font-weight: 700;
}

.cd-modern #rateStorePopup .br-theme-css-stars {
    display: block !important;
}

.cd-modern #rateStorePopup .br-theme-css-stars .br-widget a {
    width: 34px !important;
    height: 34px !important;
    margin: 0 2px !important;
    font-size: 30px !important;
    line-height: 34px;
}

.cd-modern #rateStorePopup .br-theme-css-stars .br-widget a:after {
    font-size: 30px !important;
    color: #e3e6e4 !important;
    transition: color .15s ease;
}

.cd-modern #rateStorePopup .br-theme-css-stars .br-widget a.br-active:after,
.cd-modern #rateStorePopup .br-theme-css-stars .br-widget a.br-selected:after {
    color: #f5b400 !important;
}

/* Comment */
.cd-modern #rateStorePopup .comment-form > h4 {
    margin: 0 0 6px !important;
    font-size: 15px;
    font-weight: 700;
}

.cd-modern #rateStorePopup textarea {
    width: 100%;
    min-height: 110px;
    border-radius: 14px;
    border: 1px solid #d9e8de !important;
    background: #fff !important;
    padding: 12px 14px;
    font-size: 15px;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-modern #rateStorePopup textarea:focus {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 4px rgba(82, 163, 106, .15);
    outline: none;
}

/* Buttons: two pills side by side */
.cd-modern #rateStorePopup .comment-form > div[style*="height: 55px"] {
    display: flex !important;
    flex-direction: row;
    gap: 10px;
    height: auto !important;
    float: none !important;
    justify-content: flex-start;
    margin-top: 4px;
}

.cd-modern #rateStorePopup .comment-form > div[style*="height: 55px"] > div {
    padding: 0 !important;
}

.cd-modern #rateStorePopup .btn-blue,
.cd-modern #rateStorePopup .btn-white {
    float: none !important;
    min-width: 120px;
    border-radius: 999px !important;
    padding: 10px 26px !important;
    font-weight: 700 !important;
}

.cd-modern #rateStorePopup .btn-white {
    background: #fff !important;
    color: #5b6b62 !important;
    border: 1px solid #cfd8d2 !important;
    box-shadow: none !important;
}

.cd-modern #rateStorePopup .btn-white:hover {
    border-color: #9fb0a6 !important;
    color: var(--cdm-ink) !important;
}
/* Tooltips: green accent line on top, a bit more room */
.cd-modern .tooltip > .tooltip-inner {
    border-top: 3px solid var(--cdm-green) !important;
    padding: 14px 18px !important;
}
/* Order-details tooltip (cashback table): muted labels, darker values */
.cd-modern .tooltip > .tooltip-inner b {
    color: #6b7a71;
    font-size: 13px;
    font-weight: 700;
}

.cd-modern .tooltip > .tooltip-inner span[style*="font-weight: 400"] {
    color: var(--cdm-ink);
    font-weight: 600 !important;
}
/* =========================================================
   Mobile "install the app" smart banner (smartbanner.js)
   ========================================================= */
body.cd-modern .smartbanner {
    background: #fff !important;
    box-shadow: 0 6px 20px rgba(20, 38, 27, .12) !important;
    border-bottom: 3px solid var(--cdm-green);
}

body.cd-modern .smartbanner__icon {
    border-radius: 14px !important;
    background-color: #f4faf6 !important;
    box-shadow: inset 0 0 0 1px #e1efe5;
    background-size: 78% !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

body.cd-modern .smartbanner__info__title {
    color: var(--cdm-ink) !important;
    font-weight: 800 !important;
    font-size: 15px !important;
}

body.cd-modern .smartbanner__info__author,
body.cd-modern .smartbanner__info__price {
    color: #6b7a71 !important;
    font-size: 12px !important;
}

body.cd-modern .smartbanner .smartbanner__button {
    background: var(--cdm-green) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0 18px !important;
    font-weight: 800;
    box-shadow: 0 6px 14px rgba(82, 163, 106, .3) !important;
}

body.cd-modern .smartbanner .smartbanner__button__label {
    color: #fff !important;
    background: transparent !important;
}

body.cd-modern .smartbanner__exit {
    border-radius: 50%;
    background: #f1f4f2 !important;
    opacity: .9;
}

/* =========================================================
   Mobile navigation menu
   ========================================================= */
@media (max-width: 767px) {
    .cd-modern .header-menu6 .navbar-header {
        display: flex !important;
        align-items: center;
        gap: 10px;
        float: none !important;
        width: 100%;
        box-sizing: border-box;
        margin: 0 !important;
        padding: 10px 14px !important;
    }

    .cd-modern .header-menu6 .main-menu > .container,
    .cd-modern .header-menu6 #main-menu,
    .cd-modern .header-menu6 #main-menu > .container-fluid {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .cd-modern .header-menu6 .navbar-header::before,
    .cd-modern .header-menu6 .navbar-header::after {
        display: none !important;
    }

    .cd-modern .header-menu6 .navbar-header .searchMobile {
        flex: 1 1 auto;
        min-width: 0;
        position: static !important;
        order: 1;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        width: auto !important;
    }

    .cd-modern .header-menu6 .navbar-toggle {
        flex: 0 0 44px;
        order: 2;
        width: 44px;
        height: 44px;
        float: none !important;
        position: static !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 50% !important;
        background: var(--cdm-green) !important;
        color: #fff !important;
        box-shadow: 0 4px 10px rgba(82, 163, 106, .28);
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
    }

    .cd-modern .header-menu6 .navbar-toggle .fa {
        color: #fff !important;
        font-size: 20px;
    }

    .cd-modern .header-menu6 #navbar.in,
    .cd-modern .header-menu6 #navbar.collapsing {
        margin: 8px 0 12px;
        border: 0;
        border-radius: 18px;
        background: #fff;
        box-shadow: 0 16px 36px rgba(20, 38, 27, .12);
        overflow: hidden;
    }

    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav {
        margin: 0;
    }

    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav > li {
        border-bottom: 1px solid #eef3f0 !important;
    }

    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav > li:last-child {
        border-bottom: 0 !important;
    }

    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav > li > a {
        height: auto !important;
        padding: 14px 22px !important;
        line-height: 1.4 !important;
        text-align: right;
        font-size: 17px;
        font-weight: 600;
        color: var(--cdm-ink) !important;
    }

    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav > li > a::after {
        display: none;
    }

    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav > li > a:hover,
    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav > li > a:focus {
        background: #f1f8f3 !important;
        color: var(--cdm-green-dark) !important;
    }

    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav > li.active > a,
    .cd-modern.option9 .header-menu6 .main-menu .navbar-nav > li > a.active {
        background: #eaf5ee !important;
        color: var(--cdm-green-dark) !important;
        box-shadow: inset -4px 0 0 var(--cdm-green);
    }

    .cd-modern .header-menu6 .navbar-nav .glyphicon,
    .cd-modern .header-menu6 .navbar-nav .fa-angle-down {
        color: var(--cdm-green) !important;
        float: left;
        line-height: 24px !important;
    }

    .cd-modern .header-menu6 .navbar-nav .dropdown-menu {
        position: static;
        float: none;
        width: 100%;
        box-shadow: none !important;
        border-radius: 0 !important;
        background: #f7fbf8 !important;
        animation: none;
    }
}
@media (max-width: 767px) {
    /* footer column headings are centered on mobile: center their underline too */
    .cd-modern #footer .list-link li.head::after {
        inset-inline-start: auto;
        right: auto;
        left: 50%;
        transform: translateX(-50%);
    }
}
/* Coupon copy button: icon only */
.cd-modern .copy-button.cd-coupon-copy {
    justify-content: center;
    min-width: 42px;
    padding: 6px 12px !important;
    font-size: 16px !important;
}

/* Tooltips (e.g. header balance): site font everywhere, Bootstrap's Helvetica stack falls back to serif on some devices */
.cd-modern .tooltip,
.cd-modern .tooltip * {
    font-family: 'Open Sans Hebrew', 'Open Sans', Arial, sans-serif !important;
}

.cd-modern .tooltip > .tooltip-inner u {
    font-size: 14px;
}

/* All stores (mobile): search + sort aligned with the store cards, with a gap between them */
@media (max-width: 767px) {
    .cd-modern .cd-stores-main > .side-padding-5 {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .cd-modern .cd-stores-main > .side-padding-5:first-child {
        margin-bottom: 10px;
    }

    .cd-modern #allStoresContainer .block-inner {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .cd-modern #allStoresContainer .btn.primary2 {
        display: block;
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding-left: 8px !important;
        padding-right: 8px !important;
        font-size: 15px !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}
/* "Shopping at AliExpress, ASOS...?" Cashdo ad block (common/cashdo_ad.vm) on mobile: readable text, two compact cards per row */
@media (max-width: 767px) {
    .cd-modern .cd-ad-block {
        padding: 20px 12px 0 !important;
    }

    .cd-modern .cd-ad-block > .text-center p,
    .cd-modern .cd-ad-block > .text-center span {
        font-size: 15px !important;
        line-height: 1.6;
    }

    .cd-modern .cd-ad-block > .text-center p:first-child span {
        font-size: 17px !important;
    }

    .cd-modern .cd-ad-block > .col-xs-12 {
        width: 50%;
        padding: 6px !important;
    }

    .cd-modern .cd-ad-block .similarStoreDiv {
        padding: 0 !important;
    }

    .cd-modern .cd-ad-block .similarStore {
        padding: 12px 8px !important;
    }

    .cd-modern .cd-ad-block .similarImage {
        width: auto !important;
        max-width: 100% !important;
        height: 54px !important;
        object-fit: contain;
    }

    .cd-modern .cd-ad-block .similarStore .title {
        font-size: 13px !important;
        line-height: 1.4;
        min-height: 36px;
        padding: 0 4px;
    }

    .cd-modern .cd-ad-block .similarStore .buy.btn {
        width: 100%;
        padding: 6px 8px !important;
        font-size: 14px !important;
    }
}
/* Store page: title + rating at the top of the page */
.cd-modern .cd-store-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 20px;
    margin-top: 18px;
}

.cd-modern .cd-store-head__title {
    margin: 0;
    font-size: 30px;
    font-weight: 800;
    color: var(--cdm-ink);
    line-height: 1.25;
}

.cd-modern .cd-store-head + #storeMenuLimit {
    margin-top: 14px !important;
}


@media (max-width: 767px) {
    .cd-modern .cd-store-head {
        justify-content: center;
        text-align: center;
    }

    .cd-modern .cd-store-head__title {
        font-size: 22px;
        width: 100%;
    }
}
/* Tutorial page: new 2x mockup images, shown at their design size */
.cd-modern #totorial img.grow {
    width: 100%;
    max-width: 740px;
    height: auto;
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(20, 38, 27, .1);
    margin: 4px auto 10px;
}
/* Store page title: centered, with the green underline accent used for section headings */
.cd-modern .cd-store-head {
    flex-direction: column;
    justify-content: center;
    text-align: center;
    gap: 10px;
}

.cd-modern .cd-store-head__title {
    position: relative;
    padding-bottom: 14px;
}

.cd-modern .cd-store-head__title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 56px;
    height: 4px;
    margin-left: -28px;
    border-radius: 4px;
    background: var(--cdm-green);
}
.cd-modern .cd-store-head .cd-store-head__rating,
.cd-modern .cd-store-head .cd-store-head__rating .br-widget {
    position: static !important;
    float: none !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center;
    direction: ltr;
}
/* Header user menu (logged in): compact card anchored under the name button, green icons, roomy rows */
.cd-modern #userdropdownmenu {
    right: 0 !important;
    left: auto !important;
    min-width: 230px;
    max-width: calc(100vw - 24px);
    margin-top: 8px;
    padding: 6px !important;
    background: #fff;
    text-align: right;
}

.cd-modern #userdropdownmenu > li > p {
    margin: 6px 10px 4px !important;
    font-size: 15px;
    font-weight: 800 !important;
    color: var(--cdm-ink);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cd-modern #userdropdownmenu > li.divider {
    margin: 6px 4px;
    background: #eef3f0;
}

.cd-modern #userdropdownmenu > li > a {
    display: flex !important;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
    padding: 9px 10px !important;
    border-radius: 10px;
    font-size: 15px;
    color: var(--cdm-ink) !important;
    white-space: nowrap;
}

.cd-modern #userdropdownmenu > li > a .fa {
    float: none !important;
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    margin: 0 !important;
    border-radius: 50%;
    background: #eaf5ee;
    color: var(--cdm-green-dark) !important;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.cd-modern #userdropdownmenu > li > a:hover,
.cd-modern #userdropdownmenu > li > a:focus {
    background: #f1f8f3 !important;
    color: var(--cdm-green-dark) !important;
}

.cd-modern #userdropdownmenu > li > a[href="/logout"] .fa {
    background: #fdecec;
    color: #c0392b !important;
}
/* User menu: on desktop the name button sits at the left edge, so open the menu to the right */
@media (min-width: 768px) {
    .cd-modern #userdropdownmenu {
        left: 0 !important;
        right: auto !important;
    }
}

/* Mobile header: long balances (e.g. 25000.10) and names must not run into the logo */
@media (max-width: 767px) {
    .cd-modern .header-main6 .navigateButtons {
        min-width: 0 !important;
        flex: 0 1 auto;
        flex-wrap: nowrap;
    }

    .cd-modern .header-main6 .navigateButtons .yourgain {
        font-size: 14px !important;
        flex: 0 0 auto;
    }

    .cd-modern .header-main6 #dropdownMenu1 {
        max-width: 116px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

@media (max-width: 400px) {
    .cd-modern .header-main6 .cd-header-logo {
        height: 26px;
    }
}
/* Mobile: the user menu hangs from the header row (not the name button), so it can never overflow the screen
   and widen the page (which used to cut off the logo) */
@media (max-width: 767px) {
    .cd-modern .header-main6 > .container,
    .cd-modern .header-main6 .container:has(#userdropdownmenu) {
        position: relative;
    }

    .cd-modern .header-main6 .navigateButtons,
    .cd-modern .header-main6 .navigateButtons .dropdown,
    .cd-modern .header-main6 .navigateButtons .menuDropDown,
    .cd-modern .header-main6 .navigateButtons :has(> #userdropdownmenu) {
        position: static !important;
    }

    .cd-modern #userdropdownmenu {
        position: absolute !important;
        top: 100% !important;
        left: 12px !important;
        right: auto !important;
        width: min(300px, calc(100vw - 24px));
        min-width: 0;
        max-width: calc(100vw - 24px);
        margin-top: 6px;
    }
}
/* Account button shows the cashback balance; the approved / pending breakdown lives in the menu */
.cd-modern #dropdownMenu1 .cd-balance-btn {
    font-weight: 800;
    direction: ltr;
    unicode-bidi: isolate;
}

.cd-modern #userdropdownmenu .cd-menu-balance {
    margin: 2px 4px;
    padding: 10px 12px;
    border-radius: 12px;
    background: #f4faf6;
    font-size: 13.5px;
    line-height: 1.75;
    color: var(--cdm-ink);
    white-space: nowrap;
}

.cd-modern #userdropdownmenu .cd-menu-balance u {
    display: block;
    text-decoration: none;
    font-weight: 800;
    color: var(--cdm-green-dark);
}

.cd-modern #userdropdownmenu .cd-menu-balance u ~ br:first-of-type,
.cd-modern #userdropdownmenu .cd-menu-balance u + br {
    display: none;
}
/* Mobile header (logged in): balance button on the left edge, logo on the right */
@media (max-width: 767px) {
    .cd-modern .header-main6 .navigateButtons:has(#dropdownMenu1) {
        margin-right: auto !important;
        margin-left: 0 !important;
        justify-content: flex-end !important;
        padding-left: 0 !important;
    }

    .cd-modern .header-main6 .navigateButtons .menuDropDown:has(#dropdownMenu1) {
        width: auto !important;
        margin: 0 !important;
    }
}
/* =========================================================
   Category page (/categories/<name>/<id>, cd-page-category): green title band + store cards like all-stores
   ========================================================= */
.cd-page-category .product-tab-header:has(h1) {
    position: relative;
    overflow: hidden;
    margin: 18px 0 22px;
    padding: 34px 24px 30px;
    border-radius: 24px;
    background: var(--cdm-green);
    box-shadow: 0 18px 40px rgba(82, 163, 106, .25);
}

.cd-page-category .product-tab-header:has(h1)::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    top: -200px;
    left: -100px;
    border-radius: 50%;
    background: #fff;
    opacity: .08;
}

.cd-page-category .product-tab-header:has(h1) .block-title-text,
.cd-page-category .product-tab-header:has(h1) h1 {
    position: relative;
    margin: 0;
    color: #fff !important;
    font-size: 34px;
    font-weight: 800;
}

.cd-page-category .category-products .products {
    padding: 0;
    margin: 0;
}

.cd-page-category .category-products .product {
    padding: 8px !important;
    border: 0 !important;
    animation: cdm-rise .45s var(--cdm-ease) both;
}

.cd-page-category .category-products .product-container {
    height: 100%;
    padding: 18px 12px 16px !important;
    border: 1px solid #e6efe9 !important;
    border-radius: 20px;
    background: #fff;
    box-shadow: var(--cdm-shadow);
    transition: border-color .2s ease, box-shadow .2s ease;
}

.cd-page-category .category-products .product-container:hover {
    border-color: var(--cdm-green) !important;
    box-shadow: 0 0 0 1px var(--cdm-green), var(--cdm-shadow);
}

.cd-page-category .category-products .product-thumb img {
    object-fit: contain;
}

.cd-page-category .category-products .product-name {
    margin-top: 10px !important;
}

.cd-page-category .category-products .product-name h4 {
    margin: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cd-page-category .category-products .product-name a,
.cd-page-category .category-products .product-name a span {
    color: #8a948e !important;
}

.cd-page-category .category-products .promo {
    float: none;
    width: 100%;
    margin: 8px 0 4px;
    padding: 0;
    background: transparent !important;
    color: var(--cdm-green-dark) !important;
    font-size: 16px;
    font-weight: 800;
    text-align: center;
}

.cd-page-category .category-products .block-inner {
    float: none;
    width: 100%;
    padding: 0 !important;
}

.cd-page-category .category-products .btn.primary2 {
    margin-top: 6px;
    padding: 7px 22px !important;
    font-size: 16px !important;
}

@media (max-width: 767px) {
    .cd-page-category .product-tab-header:has(h1) {
        padding: 24px 16px 22px;
        border-radius: 18px;
    }

    .cd-page-category .product-tab-header:has(h1) h1 {
        font-size: 26px;
    }


    .cd-page-category .category-products .product {
        padding: 6px !important;
    }

    .cd-page-category .category-products .product-container {
        padding: 14px 8px 12px !important;
        border-radius: 18px;
    }

    .cd-page-category .category-products .btn.primary2 {
        display: block;
        width: 100%;
        padding: 6px 8px !important;
        font-size: 15px !important;
    }
}
/* Store page: rating on the left side of the (centered) title row */
.cd-modern .cd-store-head {
    position: relative;
}

.cd-modern .cd-store-head .cd-store-head__rating {
    position: absolute !important;
    left: 15px;
    top: 0;
    height: 44px;
    align-items: center;
    margin: 0 !important;
}

@media (max-width: 767px) {
    .cd-modern .cd-store-head .cd-store-head__rating {
        position: static !important;
        height: auto;
        margin: 0 auto !important;
    }
}
/* Footer image links (app badges, QR): no hover effect at all - the text-link nudge must not move them */
.cd-modern #footer .list-link li a:has(img),
.cd-modern #footer .list-link li a:has(img):hover,
.cd-modern #footer .list-link li a:has(img) img,
.cd-modern #footer .list-link li a:has(img):hover img {
    padding-inline-start: 0 !important;
    transform: none !important;
    transition: none !important;
    opacity: 1 !important;
    filter: none !important;
}

.cd-modern #footer .list-link li a:has(img):hover img {
    box-shadow: none !important;
}