/* ===== Existing campaign-specific CSS ===== */
/* Campaign page custom styling */

.campaign-page{
    gap:28px;
}

.campaign-hero-text{
    animation:fadeUp .45s ease both;
}

.campaign-card{
    position:relative;
    overflow:hidden;
    border-radius:28px;
    animation:fadeUp .55s ease both;

    background:
        linear-gradient(
            160deg,
            rgba(255,255,255,.09),
            rgba(255,255,255,.04)
        );

    border:1px solid rgba(255,255,255,.12);

    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);

    box-shadow:
        0 14px 40px rgba(0,0,0,.28),
        inset 0 1px rgba(255,255,255,.08);

    transition:.35s ease;
}

.campaign-card:hover{
    transform:translateY(-4px);

    border-color:rgba(96,165,250,.25);

    box-shadow:
        0 20px 50px rgba(0,0,0,.35),
        0 0 25px rgba(59,130,246,.08),
        inset 0 1px rgba(255,255,255,.12);
}

.campaign-card::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.10),
            transparent 40%
        );

    pointer-events:none;
}

.campaign-card::after{
    content:"";
    position:absolute;

    width:180px;
    height:180px;

    top:-90px;
    right:-90px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(96,165,250,.10),
            transparent 70%
        );

    pointer-events:none;
}

.money-icon{
    font-size:42px;
    filter:drop-shadow(0 12px 20px rgba(34,197,94,.25));
}

.reward,
.reward-grid{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    margin:18px 0 !important;
}

.reward-box{
    width:100%;
    padding:18px;
    border-radius:22px;
    background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055));
    border:1px solid rgba(255,255,255,.13);
    box-shadow:
        inset 0 1px rgba(255,255,255,.12),
        0 12px 28px rgba(0,0,0,.12);
}

.reward-box small{
    display:block;
    color:rgba(255,255,255,.70);
    font-weight:900;
    margin-bottom:6px;
}

.reward-box .amount{
    font-size:30px;
    line-height:1.15;
    word-break:break-word;
}

.goal-text{
    font-size:20px !important;
    color:#bfdbfe !important;
    padding-top:3px;
}

.action-box{
    margin:14px 0 22px;
    padding:18px;
    border-radius:28px;
    background:linear-gradient(135deg,rgba(34,197,94,.15),rgba(6,182,212,.15));
    border:1px solid rgba(255,255,255,.14);
    box-shadow:
        0 18px 38px rgba(0,0,0,.18),
        inset 0 1px rgba(255,255,255,.08);
}

.input-label{
    display:block;
    margin-bottom:9px;
    color:#e5e7eb;
    font-size:13px;
    font-weight:900;
}

.input{
    width:100% !important;
    height:58px !important;
    padding:0 18px !important;
    background:#fff !important;
    color:#0f172a !important;
    border:2px solid transparent !important;
    border-radius:18px !important;
    font-size:16px !important;
    font-weight:800 !important;
    outline:none !important;
    box-shadow:0 12px 28px rgba(0,0,0,.16) !important;
}

.input::placeholder{
    color:#94a3b8 !important;
    font-weight:600;
}

.input:focus{
    border-color:#22c55e !important;
    box-shadow:
        0 0 0 4px rgba(34,197,94,.18),
        0 12px 28px rgba(0,0,0,.16) !important;
}

.action-buttons{
    display:grid;
    grid-template-columns:1.12fr .88fr;
    gap:12px;
    margin-top:14px;
    align-items:stretch;
}

.action-buttons form,
.action-buttons button{
    width:100%;
}

.start-campaign-btn{
    height:58px !important;
    box-shadow:0 16px 35px rgba(34,197,94,.30) !important;
}

button.track-card-btn{
    all:unset !important;
    box-sizing:border-box !important;
    width:100% !important;
    min-height:58px !important;
    padding:10px 14px !important;
    border-radius:18px !important;
    cursor:pointer !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
    color:#fff !important;
    background:linear-gradient(135deg,#2563eb,#06b6d4) !important;
    box-shadow:0 16px 35px rgba(37,99,235,.30) !important;
    font-family:inherit !important;
    transition:.25s !important;
}

button.track-card-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 20px 42px rgba(37,99,235,.42) !important;
}

button.track-card-btn b{
    display:block !important;
    font-size:14px !important;
    font-weight:900 !important;
    line-height:1.1 !important;
}

button.track-card-btn small{
    display:block !important;
    font-size:11px !important;
    color:rgba(255,255,255,.80) !important;
    margin-top:3px;
}

.track-icon-mini{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.18) !important;
    box-shadow:inset 0 1px rgba(255,255,255,.18);
}

.refer-earn-box{
    margin-top:14px !important;
    padding:14px !important;
    border-radius:22px !important;
    display:flex !important;
    align-items:center !important;
    gap:13px !important;
    text-decoration:none !important;
    color:#fff !important;
    background:linear-gradient(135deg,rgba(250,204,21,.17),rgba(34,197,94,.15)) !important;
    border:1px solid rgba(250,204,21,.26) !important;
    box-shadow:0 14px 30px rgba(0,0,0,.12);
    transition:.25s !important;
}

.refer-earn-box:hover{
    transform:translateY(-2px);
    background:linear-gradient(135deg,rgba(250,204,21,.23),rgba(34,197,94,.20)) !important;
}

.refer-icon{
    width:44px;
    height:44px;
    min-width:44px;
    display:grid;
    place-items:center;
    border-radius:16px;
    font-size:23px;
    background:rgba(255,255,255,.15);
}

.refer-earn-box b{
    display:block;
    font-size:15px;
    font-weight:900;
}

.refer-earn-box small{
    display:block;
    margin-top:3px;
    color:rgba(255,255,255,.74);
    font-size:12px;
    line-height:1.4;
}

.refer-earn-box > span{
    margin-left:auto;
    font-size:24px;
    font-weight:900;
    color:#fde68a;
}

.upi-error{
    display:none;
    margin-top:10px;
    padding:10px 12px;
    border-radius:14px;
    color:#fecaca;
    background:rgba(239,68,68,.14);
    border:1px solid rgba(239,68,68,.30);
    font-size:13px;
    font-weight:800;
}

.section-title{
    margin:0 0 15px;
    color:#fff;
}

.step-card{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:15px;
    margin-bottom:14px;
    background:rgba(255,255,255,.065);
    border:1px solid rgba(255,255,255,.11);
    border-radius:22px;
    transition:.25s;
}

.step-card:hover{
    transform:translateY(-2px);
    background:rgba(255,255,255,.095);
}

.step-icon{
    width:44px;
    height:44px;
    min-width:44px;
    border-radius:16px;
    display:grid;
    place-items:center;
    font-size:17px;
    font-weight:900;
    color:#fff;
    background:linear-gradient(135deg,#22c55e,#06b6d4);
    box-shadow:0 10px 25px rgba(34,197,94,.25);
}

.step-card b{
    color:#fff;
}

.step-card p{
    margin:5px 0 0;
    color:rgba(255,255,255,.74);
    line-height:1.55;
}

.soft-line{
    border:0;
    border-top:1px solid rgba(255,255,255,.12);
    margin:20px 0;
}

.terms{
    margin-top:18px;
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(12px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@media(max-width:850px){
    .campaign-page{
        gap:18px;
    }

    .reward,
    .reward-grid{
        grid-template-columns:1fr 1fr !important;
    }
}

@media(max-width:520px){
    .campaign-page{
        padding-top:34px;
    }

    .campaign-card{
        border-radius:26px;
    }

    .money-icon{
        font-size:36px;
    }

    .reward,
    .reward-grid{
        grid-template-columns:1fr 1fr !important;
        gap:10px !important;
    }

    .reward-box{
        padding:14px 10px;
        text-align:center;
        border-radius:19px;
    }

    .reward-box .amount{
        font-size:22px;
    }

    .goal-text{
        font-size:14px !important;
        line-height:1.25;
    }

    .action-box{
        padding:15px;
        border-radius:24px;
    }

    .action-buttons{
        grid-template-columns:1fr;
    }

    button.track-card-btn{
        justify-content:flex-start !important;
        padding-left:14px !important;
    }

    .refer-earn-box{
        padding:13px !important;
    }

    .refer-earn-box small{
        font-size:11px;
    }

    .step-card{
        padding:13px;
        border-radius:20px;
    }

    .step-icon{
        width:40px;
        height:40px;
        min-width:40px;
    }
}

/* Small circular dark/light toggle + clean light theme */
.theme-toggle,#themeBtn{
    position:fixed!important;
    top:12px!important;
    right:12px!important;
    z-index:2147483647!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:linear-gradient(135deg,#2563eb,#06b6d4)!important;
    color:#fff!important;
    font-size:18px!important;
    font-weight:900!important;
    line-height:1!important;
    cursor:pointer!important;
    box-shadow:0 8px 20px rgba(37,99,235,.28)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
}
body.light-theme{
    background:radial-gradient(circle at top left,rgba(37,99,235,.10),transparent 30%),radial-gradient(circle at bottom right,rgba(34,197,94,.08),transparent 34%),#f3f6fb!important;
    color:#0f172a!important;
}
body.light-theme *{text-shadow:none!important}
body.light-theme .orb{opacity:.12!important}
body.light-theme .card,
body.light-theme .campaign-card,
body.light-theme .theme-action-card,
body.light-theme .telegram-card,
body.light-theme .theme-terms-card,
body.light-theme .step-card,
body.light-theme .reward-box,
body.light-theme .terms-text-box{
    background:#fff!important;
    border-color:#dbe4ef!important;
    color:#0f172a!important;
    box-shadow:0 12px 28px rgba(15,23,42,.08)!important;
}
body.light-theme h1,
body.light-theme h2,
body.light-theme h3,
body.light-theme h4,
body.light-theme b,
body.light-theme strong,
body.light-theme label,
body.light-theme .title,
body.light-theme .card-head h2,
body.light-theme .section-title,
body.light-theme .input-label,
body.light-theme .theme-action-card b,
body.light-theme .telegram-content b,
body.light-theme .step-card b,
body.light-theme .reward-box small,
body.light-theme .terms-text-box b{
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
    background:none!important;
}
body.light-theme .title span,
body.light-theme .amount{
    color:#16a34a!important;
    -webkit-text-fill-color:#16a34a!important;
    background:none!important;
}
body.light-theme .goal-text{
    color:#2563eb!important;
    -webkit-text-fill-color:#2563eb!important;
}
body.light-theme p,
body.light-theme small,
body.light-theme .sub,
body.light-theme .theme-action-card small,
body.light-theme .telegram-content small,
body.light-theme .step-card p{
    color:#64748b!important;
    -webkit-text-fill-color:#64748b!important;
}
body.light-theme .brand-pill{
    background:#eff6ff!important;
    border:1px solid #bfdbfe!important;
    color:#1d4ed8!important;
    -webkit-text-fill-color:#1d4ed8!important;
}
body.light-theme .badge{
    background:#dcfce7!important;
    color:#166534!important;
    -webkit-text-fill-color:#166534!important;
}
body.light-theme .input,
body.light-theme input,
body.light-theme select,
body.light-theme textarea{
    background:#f8fafc!important;
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
    border-color:#dbe4ef!important;
}
body.light-theme input::placeholder,
body.light-theme textarea::placeholder{
    color:#94a3b8!important;
    -webkit-text-fill-color:#94a3b8!important;
}
body.light-theme .telegram-kicker,
body.light-theme .action-arrow,
body.light-theme .telegram-arrow{
    background:#eff6ff!important;
    border-color:#bfdbfe!important;
    color:#2563eb!important;
    -webkit-text-fill-color:#2563eb!important;
}
body.light-theme .telegram-status-pill{
    background:#dcfce7!important;
    border-color:#86efac!important;
    color:#15803d!important;
    -webkit-text-fill-color:#15803d!important;
}
body.light-theme .terms-text-box{
    background:#fffbeb!important;
    border-color:#fde68a!important;
    color:#92400e!important;
    -webkit-text-fill-color:#92400e!important;
}
body.light-theme .upi-error{
    color:#b91c1c!important;
    -webkit-text-fill-color:#b91c1c!important;
    background:#fee2e2!important;
    border:1px solid #fecaca!important;
}
body.light-theme .btn,
body.light-theme .error-home-btn,
body.light-theme .start-campaign-btn,
body.light-theme .telegram,
body.light-theme .theme-action-icon,
body.light-theme .telegram-avatar,
body.light-theme .step-icon,
body.light-theme .money-icon{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
}
@media(max-width:520px){
    .theme-toggle,#themeBtn{
        top:10px!important;
        right:10px!important;
        width:36px!important;
        min-width:36px!important;
        max-width:36px!important;
        height:36px!important;
        min-height:36px!important;
        max-height:36px!important;
        font-size:16px!important;
    }
}

/* Telegram button/card for campaign over / not found page */
.error-box .card{
    width:min(430px,92vw);
    padding:26px;
}
.error-action-stack{
    margin-top:20px;
    display:flex;
    flex-direction:column;
    gap:12px;
}
.error-telegram-card{
    margin-top:0;
}
.error-home-btn{
    width:100%;
    min-height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 18px;
    border-radius:18px;
    text-decoration:none;
    font-weight:1000;
    color:#fff;
    background:linear-gradient(135deg,#16a34a,#22c55e);
    box-shadow:0 12px 28px rgba(34,197,94,.22);
    border:1px solid rgba(255,255,255,.14);
}
.error-home-btn:hover{
    transform:translateY(-2px);
}
.telegram-card{
    position:relative;
    width:100%;
    min-height:92px;
    padding:15px;
    border-radius:26px;
    overflow:hidden;
    display:flex;
    align-items:center;
    gap:13px;
    text-decoration:none;
    color:#fff;
    isolation:isolate;
    border:1px solid rgba(255,255,255,.14);
    background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055));
    box-shadow:0 16px 38px rgba(0,0,0,.20), inset 0 1px rgba(255,255,255,.10);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    transition:.25s ease;
}
.telegram-card::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background:radial-gradient(circle at top left,rgba(34,158,217,.32),transparent 44%),radial-gradient(circle at bottom right,rgba(37,99,235,.18),transparent 42%);
}
.telegram-card::after{
    content:"";
    position:absolute;
    width:140px;
    height:140px;
    right:-70px;
    top:-74px;
    z-index:-1;
    border-radius:50%;
    background:rgba(255,255,255,.06);
}
.telegram-card:hover{
    transform:translateY(-2px);
    border-color:rgba(56,189,248,.32);
}
.telegram-enabled-card{
    cursor:default;
    min-height:104px;
    background:linear-gradient(145deg,rgba(34,158,217,.18),rgba(255,255,255,.06));
}
.telegram-avatar{
    width:52px;
    height:52px;
    min-width:52px;
    border-radius:19px;
    display:grid;
    place-items:center;
    font-size:24px;
    background:linear-gradient(135deg,#229ED9,#2563eb);
    box-shadow:0 12px 26px rgba(14,165,233,.25), inset 0 1px rgba(255,255,255,.22);
}
.telegram-content{flex:1;min-width:0;text-align:left}
.telegram-kicker{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-bottom:6px;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(56,189,248,.14);
    border:1px solid rgba(56,189,248,.20);
    color:#7dd3fc;
    font-size:10px;
    line-height:1;
    font-weight:1000;
    letter-spacing:.5px;
    text-transform:uppercase;
}
.telegram-content b{display:block;color:#fff;font-size:15px;line-height:1.2;font-weight:1000}
.telegram-content small{display:block;margin-top:5px;color:rgba(255,255,255,.74);font-size:12px;line-height:1.4;font-weight:750}
.telegram-status-pill{
    align-self:flex-start;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 10px;
    border-radius:999px;
    background:rgba(34,197,94,.12);
    border:1px solid rgba(34,197,94,.24);
    color:#86efac;
    font-size:11px;
    font-weight:1000;
    white-space:nowrap;
}
.telegram-arrow{
    margin-left:auto;
    width:34px;
    height:34px;
    min-width:34px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.13);
    color:#fff;
    font-size:20px;
    font-weight:1000;
}
@media(max-width:520px){
    .telegram-card{border-radius:22px;padding:14px;gap:11px}
    .telegram-avatar{width:48px;height:48px;min-width:48px;border-radius:17px}
    .telegram-status-pill{padding:7px 9px;font-size:10px}
}

/* ===== CashbackWala Premium Live Effects ===== */
html{scroll-behavior:smooth}
body{overflow-x:hidden}
#premiumEffectsLayer{
    position:fixed;
    inset:0;
    overflow:hidden;
    pointer-events:none;
    z-index:1;
}
.premium-scroll-progress{
    position:fixed;
    top:0;
    left:0;
    right:0;
    height:4px;
    z-index:2147483646;
    pointer-events:none;
    background:rgba(148,163,184,.10);
}
.premium-scroll-progress span{
    display:block;
    width:0;
    height:100%;
    border-radius:0 999px 999px 0;
    background:linear-gradient(90deg,#2563eb,#06b6d4,#22c55e);
    box-shadow:0 0 16px rgba(34,197,94,.55);
    transition:width .08s linear;
}
.campaign-page,.error-box{
    position:relative;
    z-index:5;
    animation:premiumPageEnter .75s cubic-bezier(.2,.8,.2,1) both;
}
.campaign-hero-text .brand-pill{
    position:relative;
    overflow:hidden;
    animation:premiumBadgeFloat 3.4s ease-in-out infinite;
}
.campaign-hero-text .brand-pill::after,
.badge::after,
.telegram-kicker::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(100deg,transparent,rgba(255,255,255,.62),transparent);
    transform:translateX(-130%);
    animation:premiumLabelShine 3.8s ease-in-out infinite;
}
.campaign-hero-text .title span{
    background-size:220% 220%!important;
    animation:premiumGradientText 4.5s ease infinite;
}
.campaign-card,
.theme-action-card,
.telegram-card,
.theme-terms-card,
.step-card,
.reward-box,
.error-box .card{
    transform-style:preserve-3d;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.campaign-card{
    position:relative;
    overflow:hidden;
}

.money-icon{
    animation:premiumMoneyFloat 3s ease-in-out infinite;
}
.reward-box{
    position:relative;
    overflow:hidden;
}
.reward-box::before{
    content:"";
    position:absolute;
    width:100px;
    height:100px;
    right:-52px;
    top:-58px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(34,197,94,.18),transparent 70%);
    animation:premiumOrbPulse 3s ease-in-out infinite;
}
.premium-reward-amount{
    position:relative;
    z-index:2;
    text-shadow:0 8px 24px rgba(34,197,94,.18);
}
.input{
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease!important;
}
.input:focus{
    transform:translateY(-1px);
    box-shadow:0 0 0 4px rgba(37,99,235,.12),0 12px 26px rgba(15,23,42,.08)!important;
}
.input.premium-valid{
    border-color:#22c55e!important;
    box-shadow:0 0 0 4px rgba(34,197,94,.11)!important;
}
.input.premium-invalid:not(:focus){
    border-color:#ef4444!important;
}
.premium-field-status{
    min-height:18px;
    margin-top:7px;
    font-size:12px;
    font-weight:900;
    opacity:0;
    transform:translateY(-3px);
    transition:.2s ease;
}
.premium-field-status.show{opacity:1;transform:none}
.premium-field-status.valid{color:#86efac}
.premium-field-status.invalid{color:#fca5a5}
body.light-theme .premium-field-status.valid{color:#15803d}
body.light-theme .premium-field-status.invalid{color:#b91c1c}
.start-campaign-btn,
.theme-action-card,
.telegram-card,
.error-home-btn,
.telegram-alert-btn,
.refer-alert-btn,
.telegram{
    position:relative;
    overflow:hidden;
}
.start-campaign-btn::before,
.error-home-btn::before,
.telegram-alert-btn::before,
.refer-alert-btn::before{
    content:"";
    position:absolute;
    top:-28%;
    left:-38%;
    width:28%;
    height:160%;
    transform:skewX(-22deg);
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.78),transparent);
    animation:premiumButtonShine 3.2s ease-in-out infinite;
    pointer-events:none;
}
.theme-action-card .theme-action-icon,
.telegram-avatar,
.step-icon{
    transition:transform .25s ease;
}
.theme-action-card:hover .theme-action-icon,
.telegram-card:hover .telegram-avatar{
    transform:translateY(-3px) rotate(5deg) scale(1.05);
}
.step-card{
    opacity:0;
    transform:translateY(18px);
}
.step-card.premium-reveal{
    opacity:1;
    transform:none;
    transition:opacity .5s ease,transform .5s cubic-bezier(.2,.8,.2,1);
}
.theme-action-card,
.telegram-card,
.theme-terms-card,
.campaign-card,
.error-box .card{
    opacity:0;
    transform:translateY(18px);
}
.premium-card-visible{
    opacity:1!important;
    transform:none;
    transition:opacity .58s ease,transform .58s cubic-bezier(.2,.8,.2,1);
}
.premium-particle{
    position:fixed;
    bottom:-60px;
    z-index:2;
    opacity:0;
    pointer-events:none;
    filter:drop-shadow(0 8px 14px rgba(0,0,0,.22));
    animation:premiumParticleFloat linear forwards;
}
.premium-ripple{
    position:absolute;
    border-radius:50%;
    transform:scale(0);
    background:rgba(255,255,255,.45);
    animation:premiumRipple .65s linear;
    pointer-events:none;
}
.premium-toast{
    position:fixed;
    left:50%;
    bottom:24px;
    transform:translate(-50%,22px);
    z-index:2147483647;
    min-width:240px;
    max-width:calc(100vw - 28px);
    padding:13px 18px;
    border-radius:16px;
    color:#fff;
    text-align:center;
    font-weight:950;
    background:linear-gradient(135deg,#2563eb,#06b6d4,#22c55e);
    box-shadow:0 18px 48px rgba(0,0,0,.30);
    opacity:0;
    transition:.25s ease;
}
.premium-toast.show{opacity:1;transform:translate(-50%,0)}
.loader-card{
    position:relative;
    overflow:hidden;
}
.loader-card::after{
    content:"";
    position:absolute;
    inset:0;
    padding:1px;
    border-radius:inherit;
    background:linear-gradient(120deg,#22c55e,#06b6d4,#2563eb,#22c55e);
    background-size:260% 260%;
    animation:premiumBorderFlow 4s linear infinite;
    -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    pointer-events:none;
}
.loader-ring{filter:drop-shadow(0 0 14px rgba(6,182,212,.30))}
.telegram-alert-box.showing,
.refer-alert-box.showing{
    animation:premiumModalPop .42s cubic-bezier(.2,.9,.3,1.15) both;
}
@keyframes premiumPageEnter{
    from{opacity:0;transform:translateY(25px) scale(.99)}
    to{opacity:1;transform:none}
}
@keyframes premiumBadgeFloat{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-4px)}
}
@keyframes premiumLabelShine{
    0%,58%{transform:translateX(-130%)}
    100%{transform:translateX(130%)}
}
@keyframes premiumGradientText{
    0%,100%{background-position:0% 50%}
    50%{background-position:100% 50%}
}
@keyframes premiumBorderFlow{
    0%{background-position:0% 50%}
    100%{background-position:300% 50%}
}
@keyframes premiumMoneyFloat{
    0%,100%{transform:translateY(0) rotate(0)}
    50%{transform:translateY(-6px) rotate(4deg)}
}
@keyframes premiumOrbPulse{
    0%,100%{transform:scale(.9);opacity:.65}
    50%{transform:scale(1.15);opacity:1}
}
@keyframes premiumButtonShine{
    0%,55%{left:-38%}
    82%,100%{left:125%}
}
@keyframes premiumParticleFloat{
    0%{opacity:0;transform:translateY(0) rotate(0deg) scale(.8)}
    12%{opacity:.9}
    100%{opacity:0;transform:translateY(-115vh) rotate(440deg) scale(1.15)}
}
@keyframes premiumRipple{
    to{transform:scale(4);opacity:0}
}
@keyframes premiumModalPop{
    from{opacity:0;transform:translateY(18px) scale(.94)}
    to{opacity:1;transform:none}
}
@media(max-width:520px){
    .campaign-page{padding-bottom:84px}
    .campaign-card,.theme-terms-card{border-radius:24px!important}
}
@media(prefers-reduced-motion:reduce){
    *,*::before,*::after{
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        scroll-behavior:auto!important;
    }
}

/* Keep original theme; only remove the unwanted inner heading box */
.campaign-card .card-head{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    padding:0!important;
    border-radius:0!important;
    overflow:visible!important;
}
.campaign-card .card-head::before,
.campaign-card .card-head::after{
    display:none!important;
    content:none!important;
}

/* Old-theme accordion: uses the same existing glass cards/colors */
.old-offer-accordion{
    width:100%;
    display:flex;
    flex-direction:column;
    gap:12px;
}
.old-offer-item{
    width:100%;
    overflow:hidden;
    border-radius:22px;
    background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06));
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 18px 45px rgba(0,0,0,.22);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
}
.old-offer-head{
    width:100%;
    min-height:58px;
    padding:0 17px;
    border:0;
    background:transparent;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    cursor:pointer;
    font:inherit;
    text-align:left;
}
.old-offer-title{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:14px;
    font-weight:1000;
}
.old-offer-arrow{
    font-size:18px;
    font-weight:1000;
    transition:transform .2s ease;
}
.old-offer-item.open .old-offer-arrow{
    transform:rotate(180deg);
}
.old-offer-content{
    padding:0 17px 15px;
    border-top:1px solid rgba(255,255,255,.10);
}
.old-offer-content .step-card{
    margin-top:12px;
}
.old-terms-text{
    padding-top:15px;
    color:rgba(255,255,255,.78);
    line-height:1.6;
    font-weight:700;
}
body.light-theme .old-offer-item{
    background:#fff!important;
    border-color:#dbe4ef!important;
    box-shadow:0 12px 28px rgba(15,23,42,.08)!important;
}
body.light-theme .old-offer-head{
    color:#0f172a!important;
}
body.light-theme .old-terms-text{
    color:#64748b!important;
}
@media(max-width:520px){
    .old-offer-item{border-radius:20px}
    .old-offer-head{padding:0 14px}
    .old-offer-content{padding:0 14px 14px}
}

/* Premium animated border ONLY for Campaign Card */
.campaign-card{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    border-radius:28px;
}


.campaign-card::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    padding:1.5px;
    background:linear-gradient(
        130deg,
        #2563eb,
        #06b6d4,
        #22c55e,
        #7c3aed,
        #2563eb
    );
    background-size:300% 300%;
    animation:campaignBorder 10s linear infinite;
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    pointer-events:none;
    z-index:5;
}




@keyframes campaignBorder{
    from{background-position:0% 50%;}
    to{background-position:300% 50%;}
}

/* Remove legacy overlay creating the vertical divider */
.campaign-card > .glass-overlay,
.campaign-card .glass-overlay{
    display:none !important;
}

.campaign-card::after{
    content:none !important;
    display:none !important;
    background:none !important;
    box-shadow:none !important;
    filter:none !important;
}

.start-campaign-btn:disabled,
.start-campaign-btn.campaign-btn-locked{
    cursor:not-allowed!important;
    opacity:.58!important;
    filter:saturate(.55)!important;
    transform:none!important;
    box-shadow:none!important;
}

.telegram-card{
    box-sizing:border-box;
    min-height:96px;
}

.telegram-card .telegram-content{
    min-width:0;
    padding-right:4px;
}

.telegram-card .telegram-content b,
.telegram-card .telegram-content small{
    overflow-wrap:anywhere;
}

.telegram-enabled-card{
    display:grid!important;
    grid-template-columns:52px minmax(0,1fr) auto;
    align-items:center;
}

.telegram-enabled-card .telegram-status-pill{
    align-self:center;
    margin-left:4px;
}

@media(max-width:520px){
    .telegram-card{
        padding:14px!important;
        gap:11px!important;
    }

    .telegram-enabled-card{
        grid-template-columns:48px minmax(0,1fr);
    }

    .telegram-enabled-card .telegram-status-pill{
        grid-column:2;
        justify-self:start;
        margin:8px 0 0;
    }

    .telegram-card:not(.telegram-enabled-card){
        display:grid;
        grid-template-columns:48px minmax(0,1fr) 32px;
        align-items:center;
    }

    .telegram-arrow{
        margin-left:0!important;
        justify-self:end;
    }
}

/* Clean dark campaign layout - only page-specific CSS */
.campaign-page{
    width:min(520px,92vw);
    margin:0 auto;
    padding:34px 0 100px;
    display:flex;
    flex-direction:column;
    gap:18px;
}

.campaign-hero-text{
    width:100%;
    text-align:center;
}

.campaign-hero-text .sub{
    margin-left:auto;
    margin-right:auto;
}

.campaign-card{
    width:100%;
    padding:22px;
}

.campaign-card .card-head{
    margin-bottom:16px;
}

.reward,
.reward-grid{
    margin:16px 0 18px !important;
}

.start-campaign-btn{
    width:100%;
    margin-top:15px;
}

.below-campaign-area{
    width:100%;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.quick-action-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    width:100%;
}

.quick-action-grid form{
    width:100%;
    margin:0;
}

.theme-action-card{
    position:relative;
    width:100%;
    min-height:112px;
    padding:16px 14px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:26px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    color:#fff;
    text-decoration:none;
    cursor:pointer;
    font-family:inherit;
    text-align:left;
    appearance:none;
    -webkit-appearance:none;
    isolation:isolate;
    background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055));
    box-shadow:0 16px 36px rgba(0,0,0,.20), inset 0 1px rgba(255,255,255,.10);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    transition:.25s ease;
}

.theme-action-card::before{
    content:"";
    position:absolute;
    width:130px;
    height:130px;
    right:-62px;
    top:-62px;
    z-index:-1;
    border-radius:50%;
    background:rgba(255,255,255,.07);
}

.theme-action-card:hover{
    transform:translateY(-3px);
    border-color:rgba(255,255,255,.28);
    box-shadow:0 22px 48px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.13);
}

.action-track{
    background:
        radial-gradient(circle at top left,rgba(14,165,233,.34),transparent 42%),
        linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055));
}

.action-refer{
    background:
        radial-gradient(circle at top left,rgba(34,197,94,.32),transparent 42%),
        linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055));
}

.theme-action-top{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
}

.theme-action-icon{
    width:46px;
    height:46px;
    min-width:46px;
    border-radius:17px;
    display:grid;
    place-items:center;
    font-size:21px;
    color:#fff;
}

.action-track .theme-action-icon{
    background:linear-gradient(135deg,#38bdf8,#2563eb);
    box-shadow:0 10px 22px rgba(14,165,233,.24);
}

.action-refer .theme-action-icon{
    background:linear-gradient(135deg,#22c55e,#16a34a);
    box-shadow:0 10px 22px rgba(34,197,94,.22);
}

.action-arrow{
    width:30px;
    height:30px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.13);
    color:rgba(255,255,255,.92);
    font-size:18px;
    font-weight:1000;
}

.theme-action-card b{
    display:block;
    font-size:15px;
    line-height:1.15;
    font-weight:1000;
    color:#fff;
}

.theme-action-card small{
    display:block;
    margin-top:6px;
    font-size:12px;
    line-height:1.35;
    font-weight:750;
    color:rgba(255,255,255,.76);
}

.telegram-card{
    position:relative;
    width:100%;
    min-height:92px;
    padding:15px;
    border-radius:26px;
    overflow:hidden;
    display:flex;
    align-items:center;
    gap:13px;
    text-decoration:none;
    color:#fff;
    isolation:isolate;
    border:1px solid rgba(255,255,255,.14);
    background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055));
    box-shadow:0 16px 38px rgba(0,0,0,.20), inset 0 1px rgba(255,255,255,.10);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    transition:.25s ease;
}

.telegram-card::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background:
        radial-gradient(circle at top left,rgba(34,158,217,.32),transparent 44%),
        radial-gradient(circle at bottom right,rgba(37,99,235,.18),transparent 42%);
}

.telegram-card::after{
    content:"";
    position:absolute;
    width:140px;
    height:140px;
    right:-70px;
    top:-74px;
    z-index:-1;
    border-radius:50%;
    background:rgba(255,255,255,.06);
}

.telegram-card:hover{
    transform:translateY(-2px);
    border-color:rgba(56,189,248,.32);
}

.telegram-enabled-card{
    cursor:default;
    min-height:104px;
    background:linear-gradient(145deg,rgba(34,158,217,.18),rgba(255,255,255,.06));
}

.telegram-avatar{
    width:52px;
    height:52px;
    min-width:52px;
    border-radius:19px;
    display:grid;
    place-items:center;
    font-size:24px;
    background:linear-gradient(135deg,#229ED9,#2563eb);
    box-shadow:0 12px 26px rgba(14,165,233,.25), inset 0 1px rgba(255,255,255,.22);
}

.telegram-content{
    flex:1;
    min-width:0;
}

.telegram-kicker{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-bottom:6px;
    padding:5px 9px;
    border-radius:999px;
    background:rgba(56,189,248,.14);
    border:1px solid rgba(56,189,248,.20);
    color:#7dd3fc;
    font-size:10px;
    line-height:1;
    font-weight:1000;
    letter-spacing:.5px;
    text-transform:uppercase;
}

.telegram-content b{
    display:block;
    color:#fff;
    font-size:15px;
    line-height:1.2;
    font-weight:1000;
}

.telegram-content small{
    display:block;
    margin-top:5px;
    color:rgba(255,255,255,.74);
    font-size:12px;
    line-height:1.4;
    font-weight:750;
}

.telegram-status-pill{
    align-self:flex-start;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 10px;
    border-radius:999px;
    background:rgba(34,197,94,.12);
    border:1px solid rgba(34,197,94,.24);
    color:#86efac;
    font-size:11px;
    font-weight:1000;
    white-space:nowrap;
}

.telegram-arrow{
    margin-left:auto;
    width:34px;
    height:34px;
    min-width:34px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:rgba(255,255,255,.13);
    color:#fff;
    font-size:20px;
    font-weight:1000;
}

.telegram-alert-overlay{
    position:fixed;
    inset:0;
    z-index:2147483000;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
    background:rgba(2,6,23,.62);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

.telegram-alert-overlay.show{
    display:flex;
}

.telegram-alert-box{
    position:relative;
    width:min(410px,100%);
    padding:18px;
    border-radius:28px;
    overflow:hidden;
    color:#fff;
    border:1px solid rgba(255,255,255,.16);
    background:linear-gradient(145deg,rgba(15,23,42,.94),rgba(30,41,59,.88));
    box-shadow:0 24px 70px rgba(0,0,0,.42), inset 0 1px rgba(255,255,255,.10);
    isolation:isolate;
}

.telegram-alert-box::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background:
        radial-gradient(circle at top left,rgba(34,158,217,.34),transparent 45%),
        radial-gradient(circle at bottom right,rgba(34,197,94,.15),transparent 42%);
}

.telegram-alert-top{
    display:flex;
    align-items:flex-start;
    gap:13px;
}

.telegram-alert-icon{
    width:54px;
    height:54px;
    min-width:54px;
    border-radius:19px;
    display:grid;
    place-items:center;
    font-size:25px;
    background:linear-gradient(135deg,#229ED9,#2563eb);
    box-shadow:0 12px 26px rgba(14,165,233,.27), inset 0 1px rgba(255,255,255,.24);
}

.telegram-alert-copy{
    min-width:0;
    flex:1;
}

.telegram-alert-copy b{
    display:block;
    margin-top:4px;
    color:#fff;
    font-size:18px;
    line-height:1.2;
    font-weight:1000;
}

.telegram-alert-copy small{
    display:block;
    margin-top:7px;
    color:rgba(255,255,255,.76);
    font-size:13px;
    line-height:1.45;
    font-weight:750;
}

.telegram-alert-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:18px;
}

.telegram-alert-btn{
    min-height:46px;
    border:0;
    border-radius:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    text-decoration:none;
    cursor:pointer;
    font-size:13px;
    line-height:1.1;
    font-weight:1000;
}

.telegram-alert-enable{
    color:#fff;
    background:linear-gradient(135deg,#229ED9,#2563eb);
    box-shadow:0 12px 24px rgba(37,99,235,.26);
}

.telegram-alert-later{
    color:#dbeafe;
    background:rgba(255,255,255,.11);
    border:1px solid rgba(255,255,255,.14);
}

.refer-alert-overlay{
    position:fixed;
    inset:0;
    z-index:2147483100;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
    background:rgba(2,6,23,.66);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

.refer-alert-overlay.show{
    display:flex;
}

.refer-alert-box{
    position:relative;
    width:min(430px,100%);
    padding:18px;
    border-radius:28px;
    overflow:hidden;
    color:#fff;
    border:1px solid rgba(255,255,255,.16);
    background:linear-gradient(145deg,rgba(15,23,42,.94),rgba(30,41,59,.88));
    box-shadow:0 24px 70px rgba(0,0,0,.42), inset 0 1px rgba(255,255,255,.10);
    isolation:isolate;
}

.refer-alert-box::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background:
        radial-gradient(circle at top left,rgba(34,197,94,.32),transparent 44%),
        radial-gradient(circle at bottom right,rgba(14,165,233,.18),transparent 42%);
}

.refer-alert-top{
    display:flex;
    align-items:flex-start;
    gap:13px;
}

.refer-alert-icon{
    width:54px;
    height:54px;
    min-width:54px;
    border-radius:19px;
    display:grid;
    place-items:center;
    font-size:25px;
    background:linear-gradient(135deg,#22c55e,#16a34a);
    box-shadow:0 12px 26px rgba(34,197,94,.24), inset 0 1px rgba(255,255,255,.24);
}

.refer-alert-copy{
    min-width:0;
    flex:1;
}

.refer-alert-copy b{
    display:block;
    margin-top:4px;
    color:#fff;
    font-size:18px;
    line-height:1.2;
    font-weight:1000;
}

.refer-alert-copy small{
    display:block;
    margin-top:7px;
    color:rgba(255,255,255,.76);
    font-size:13px;
    line-height:1.45;
    font-weight:750;
}

.refer-alert-link{
    width:100%;
    height:48px;
    margin-top:16px;
    padding:0 13px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.14);
    outline:none;
    color:#fff;
    background:rgba(2,6,23,.34);
    font-size:12px;
    font-weight:800;
}

.refer-alert-message{
    display:none;
    margin-top:10px;
    color:#86efac;
    font-size:12px;
    font-weight:900;
}

.refer-alert-message.error{
    color:#fca5a5;
}

.refer-alert-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:14px;
}

.refer-alert-btn{
    min-height:46px;
    border:0;
    border-radius:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    text-decoration:none;
    cursor:pointer;
    font-size:13px;
    line-height:1.1;
    font-weight:1000;
    font-family:inherit;
}

.refer-alert-copy-btn{
    color:#fff;
    background:linear-gradient(135deg,#22c55e,#06b6d4);
    box-shadow:0 12px 24px rgba(34,197,94,.22);
}


.refer-alert-check-btn{
    color:#fff;
    background:linear-gradient(135deg,#7c3aed,#2563eb);
    box-shadow:0 12px 24px rgba(37,99,235,.24);
}

.refer-alert-telegram-btn{
    color:#fff;
    background:linear-gradient(135deg,#38bdf8,#229ed9);
    box-shadow:0 12px 24px rgba(34,158,217,.26);
}

.refer-alert-close{
    color:#dbeafe;
    background:rgba(255,255,255,.11);
    border:1px solid rgba(255,255,255,.14);
}

.theme-terms-card{
    width:100%;
    padding:18px;
    border-radius:28px;
    background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06));
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 18px 45px rgba(0,0,0,.22);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
}

.theme-terms-card .section-title{
    margin:0 0 14px;
}

.theme-terms-card .step-card:last-of-type{
    margin-bottom:0;
}

.terms-text-box{
    margin-top:16px;
    padding:15px;
    border-radius:20px;
    background:rgba(250,204,21,.10);
    border:1px solid rgba(250,204,21,.20);
    color:rgba(255,255,255,.78);
    line-height:1.6;
    font-weight:700;
}

.terms-text-box b{
    color:#fff;
}

@media(max-width:520px){
    .campaign-page{
        width:min(430px,92vw);
        padding-top:28px;
        gap:14px;
    }

    .campaign-card{
        padding:18px;
        border-radius:26px;
    }

    .quick-action-grid{
        grid-template-columns:1fr 1fr;
        gap:10px;
    }

    .theme-action-card{
        min-height:104px;
        padding:14px 12px;
        border-radius:22px;
    }

    .theme-action-icon{
        width:42px;
        height:42px;
        min-width:42px;
        border-radius:15px;
        font-size:19px;
    }

    .theme-action-card b{
        font-size:14px;
    }

    .theme-action-card small{
        font-size:11px;
    }

    .telegram-card{
        min-height:90px;
        padding:14px;
        border-radius:22px;
    }

    .telegram-avatar{
        width:48px;
        height:48px;
        min-width:48px;
        border-radius:17px;
    }

    .telegram-status-pill{
        padding:7px 9px;
        font-size:10px;
    }

    .telegram-alert-box{
        border-radius:24px;
        padding:16px;
    }

    .telegram-alert-actions{
        grid-template-columns:1fr;
    }

    .refer-alert-box{
        border-radius:24px;
        padding:16px;
    }

    .refer-alert-actions{
        grid-template-columns:1fr;
    }
}


/* Small circular dark/light toggle + clean light theme */
.theme-toggle,#themeBtn{
    position:fixed!important;
    top:12px!important;
    right:12px!important;
    z-index:2147483647!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    padding:0!important;
    border:0!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:linear-gradient(135deg,#2563eb,#06b6d4)!important;
    color:#fff!important;
    font-size:18px!important;
    font-weight:900!important;
    line-height:1!important;
    cursor:pointer!important;
    box-shadow:0 8px 20px rgba(37,99,235,.28)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
}
body.light-theme{
    background:radial-gradient(circle at top left,rgba(37,99,235,.10),transparent 30%),radial-gradient(circle at bottom right,rgba(34,197,94,.08),transparent 34%),#f3f6fb!important;
    color:#0f172a!important;
}
body.light-theme *{text-shadow:none!important}
body.light-theme .orb{opacity:.12!important}
body.light-theme .card,
body.light-theme .campaign-card,
body.light-theme .theme-action-card,
body.light-theme .telegram-card,
body.light-theme .theme-terms-card,
body.light-theme .step-card,
body.light-theme .reward-box,
body.light-theme .terms-text-box{
    background:#fff!important;
    border-color:#dbe4ef!important;
    color:#0f172a!important;
    box-shadow:0 12px 28px rgba(15,23,42,.08)!important;
}
body.light-theme h1,
body.light-theme h2,
body.light-theme h3,
body.light-theme h4,
body.light-theme b,
body.light-theme strong,
body.light-theme label,
body.light-theme .title,
body.light-theme .card-head h2,
body.light-theme .section-title,
body.light-theme .input-label,
body.light-theme .theme-action-card b,
body.light-theme .telegram-content b,
body.light-theme .step-card b,
body.light-theme .reward-box small,
body.light-theme .terms-text-box b{
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
    background:none!important;
}
body.light-theme .title span,
body.light-theme .amount{
    color:#16a34a!important;
    -webkit-text-fill-color:#16a34a!important;
    background:none!important;
}
body.light-theme .goal-text{
    color:#2563eb!important;
    -webkit-text-fill-color:#2563eb!important;
}
body.light-theme p,
body.light-theme small,
body.light-theme .sub,
body.light-theme .theme-action-card small,
body.light-theme .telegram-content small,
body.light-theme .step-card p{
    color:#64748b!important;
    -webkit-text-fill-color:#64748b!important;
}
body.light-theme .brand-pill{
    background:#eff6ff!important;
    border:1px solid #bfdbfe!important;
    color:#1d4ed8!important;
    -webkit-text-fill-color:#1d4ed8!important;
}
body.light-theme .badge{
    background:#dcfce7!important;
    color:#166534!important;
    -webkit-text-fill-color:#166534!important;
}
body.light-theme .input,
body.light-theme input,
body.light-theme select,
body.light-theme textarea{
    background:#f8fafc!important;
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
    border-color:#dbe4ef!important;
}
body.light-theme input::placeholder,
body.light-theme textarea::placeholder{
    color:#94a3b8!important;
    -webkit-text-fill-color:#94a3b8!important;
}
body.light-theme .telegram-kicker,
body.light-theme .action-arrow,
body.light-theme .telegram-arrow{
    background:#eff6ff!important;
    border-color:#bfdbfe!important;
    color:#2563eb!important;
    -webkit-text-fill-color:#2563eb!important;
}
body.light-theme .telegram-status-pill{
    background:#dcfce7!important;
    border-color:#86efac!important;
    color:#15803d!important;
    -webkit-text-fill-color:#15803d!important;
}
body.light-theme .telegram-alert-overlay{
    background:rgba(15,23,42,.38)!important;
}
body.light-theme .telegram-alert-box{
    background:#fff!important;
    border-color:#dbe4ef!important;
    color:#0f172a!important;
    box-shadow:0 24px 70px rgba(15,23,42,.20)!important;
}
body.light-theme .telegram-alert-copy b{
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
}
body.light-theme .telegram-alert-copy small{
    color:#64748b!important;
    -webkit-text-fill-color:#64748b!important;
}
body.light-theme .telegram-alert-later{
    background:#eff6ff!important;
    border-color:#bfdbfe!important;
    color:#2563eb!important;
    -webkit-text-fill-color:#2563eb!important;
}
body.light-theme .refer-alert-overlay{
    background:rgba(15,23,42,.38)!important;
}
body.light-theme .refer-alert-box{
    background:#fff!important;
    border-color:#dbe4ef!important;
    color:#0f172a!important;
    box-shadow:0 24px 70px rgba(15,23,42,.20)!important;
}
body.light-theme .refer-alert-copy b{
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
}
body.light-theme .refer-alert-copy small{
    color:#64748b!important;
    -webkit-text-fill-color:#64748b!important;
}
body.light-theme .refer-alert-link{
    background:#f8fafc!important;
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
    border-color:#dbe4ef!important;
}
body.light-theme .refer-alert-copy-btn{
    color:#fff!important;
    background:linear-gradient(135deg,#16a34a,#0891b2)!important;
}
body.light-theme .refer-alert-check-btn{
    color:#fff!important;
    background:linear-gradient(135deg,#7c3aed,#2563eb)!important;
}
body.light-theme .refer-alert-telegram-btn{
    color:#fff!important;
    background:linear-gradient(135deg,#38bdf8,#229ed9)!important;
}
body.light-theme .refer-alert-close{
    background:#eff6ff!important;
    border-color:#bfdbfe!important;
    color:#2563eb!important;
    -webkit-text-fill-color:#2563eb!important;
}
body.light-theme .terms-text-box{
    background:#fffbeb!important;
    border-color:#fde68a!important;
    color:#92400e!important;
    -webkit-text-fill-color:#92400e!important;
}
body.light-theme .upi-error{
    color:#b91c1c!important;
    -webkit-text-fill-color:#b91c1c!important;
    background:#fee2e2!important;
    border:1px solid #fecaca!important;
}
body.light-theme .btn,
body.light-theme .error-home-btn,
body.light-theme .start-campaign-btn,
body.light-theme .telegram,
body.light-theme .theme-action-icon,
body.light-theme .telegram-avatar,
body.light-theme .step-icon,
body.light-theme .money-icon{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
}
@media(max-width:520px){
    .theme-toggle,#themeBtn{
        top:10px!important;
        right:10px!important;
        width:36px!important;
        min-width:36px!important;
        max-width:36px!important;
        height:36px!important;
        min-height:36px!important;
        max-height:36px!important;
        font-size:16px!important;
    }
}

/* Lightweight submit loader - added without changing page theme/style */
.campaign-submit-loader{
    position:fixed;
    inset:0;
    z-index:2147483000;
    display:none;
    align-items:center;
    justify-content:center;
    padding:22px;
    background:rgba(2,6,23,.76);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}
.campaign-submit-loader.show{display:flex}
.loader-card{
    width:min(360px,92vw);
    padding:24px;
    border-radius:28px;
    text-align:center;
    background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.07));
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 24px 70px rgba(0,0,0,.36);
}
.loader-ring{
    width:70px;
    height:70px;
    margin:0 auto 16px;
    border-radius:50%;
    border:5px solid rgba(255,255,255,.14);
    border-top-color:#22c55e;
    border-right-color:#06b6d4;
    animation:loaderSpin .85s linear infinite;
}
.loader-card b{
    display:block;
    color:#fff;
    font-size:18px;
    font-weight:1000;
}
.loader-card small{
    display:block;
    margin-top:7px;
    color:rgba(255,255,255,.72);
    font-size:13px;
    font-weight:750;
}
.loader-progress{
    position:relative;
    height:8px;
    margin-top:18px;
    border-radius:999px;
    overflow:hidden;
    background:rgba(255,255,255,.12);
}
.loader-progress::before{
    content:"";
    position:absolute;
    inset:0;
    width:40%;
    border-radius:inherit;
    background:linear-gradient(90deg,#22c55e,#06b6d4,#2563eb);
    animation:loaderBar 1.15s ease-in-out infinite;
}
body.light-theme .campaign-submit-loader{
    background:rgba(248,250,252,.78);
}
body.light-theme .loader-card{
    background:#fff;
    border-color:#dbe4ef;
    box-shadow:0 22px 60px rgba(15,23,42,.16);
}
body.light-theme .loader-card b{
    color:#0f172a;
    -webkit-text-fill-color:#0f172a;
}
body.light-theme .loader-card small{
    color:#64748b;
    -webkit-text-fill-color:#64748b;
}
body.light-theme .loader-progress{
    background:#e2e8f0;
}
@keyframes loaderSpin{to{transform:rotate(360deg)}}
@keyframes loaderBar{
    0%{transform:translateX(-105%)}
    55%{transform:translateX(125%)}
    100%{transform:translateX(250%)}
}

/* Premium animated border ONLY for Campaign Card */
.campaign-card{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    border-radius:28px;
}

.campaign-card::before{
    content:"";
    position:absolute;
    inset:0;
    padding:1.5px;
    border-radius:inherit;
    background:linear-gradient(
        130deg,
        #2563eb,
        #06b6d4,
        #22c55e,
        #7c3aed,
        #2563eb
    );
    background-size:300% 300%;
    animation:campaignBorder 10s linear infinite;
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    pointer-events:none;
    z-index:2;
}



@keyframes campaignBorder{
    from{background-position:0% 50%;}
    to{background-position:300% 50%;}
}

/* Track Status and Refer & Earn: exactly the same dimensions */
.quick-action-grid{
    align-items:stretch!important;
}
.quick-action-grid > form{
    display:flex!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
}
.quick-action-grid .theme-action-card{
    width:100%!important;
    height:126px!important;
    min-height:126px!important;
    max-height:126px!important;
    box-sizing:border-box!important;
    margin:0!important;
}
.quick-action-grid > form .theme-action-card{
    flex:1 1 auto!important;
}

/* Live validation shown below each input */
#upiError,
#emailError{
    display:none!important;
}
.premium-field-status{
    display:block!important;
    min-height:18px!important;
    margin:7px 2px 0!important;
    font-size:12px!important;
    line-height:1.35!important;
    font-weight:900!important;
    opacity:0;
    transform:translateY(-3px);
    transition:.2s ease;
}
.premium-field-status.show{
    opacity:1!important;
    transform:none!important;
}
.premium-field-status.valid{
    color:#86efac!important;
}
.premium-field-status.invalid{
    color:#fca5a5!important;
}
body.light-theme .premium-field-status.valid{
    color:#15803d!important;
}
body.light-theme .premium-field-status.invalid{
    color:#b91c1c!important;
}

/* Restore old Telegram active-card layout */
.telegram-enabled-card{
    display:flex!important;
    align-items:center!important;
    gap:13px!important;
    min-height:104px!important;
    padding:15px!important;
    cursor:default!important;
}
.telegram-enabled-card .telegram-avatar{
    flex:0 0 52px!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    margin:0!important;
    display:grid!important;
    place-items:center!important;
    line-height:1!important;
}
.telegram-enabled-card .telegram-content{
    flex:1 1 auto!important;
    min-width:0!important;
    padding:0!important;
}
.telegram-enabled-card .telegram-status-pill{
    flex:0 0 auto!important;
    align-self:flex-start!important;
    margin:0!important;
}

/* Properly center the floating aeroplane button */
a.telegram{
    position:fixed!important;
    right:18px!important;
    bottom:18px!important;
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    min-height:54px!important;
    padding:0!important;
    margin:0!important;
    border-radius:50%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:1!important;
    font-size:24px!important;
    text-decoration:none!important;
    z-index:2147482000!important;
    box-sizing:border-box!important;
}

@media(max-width:520px){
    .quick-action-grid .theme-action-card{
        height:120px!important;
        min-height:120px!important;
        max-height:120px!important;
    }

    .telegram-enabled-card{
        padding:14px!important;
        gap:11px!important;
    }

    .telegram-enabled-card .telegram-avatar{
        flex-basis:48px!important;
        width:48px!important;
        height:48px!important;
        min-width:48px!important;
    }

    .telegram-enabled-card .telegram-status-pill{
        padding:7px 9px!important;
        font-size:10px!important;
    }

    a.telegram{
        right:14px!important;
        bottom:14px!important;
        width:50px!important;
        height:50px!important;
        min-width:50px!important;
        min-height:50px!important;
        font-size:22px!important;
    }
}

.telegram-success-popup{
    width:min(92vw,430px)!important;
    border-radius:28px!important;
    padding:24px!important;
    color:#fff!important;
    background:
        radial-gradient(circle at top left,rgba(56,189,248,.22),transparent 36%),
        radial-gradient(circle at bottom right,rgba(34,197,94,.16),transparent 38%),
        linear-gradient(180deg,rgba(15,23,42,.98),rgba(15,23,42,.94))!important;
    border:1px solid rgba(255,255,255,.14)!important;
    box-shadow:0 28px 80px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.08)!important;
    backdrop-filter:blur(18px)!important;
}
.telegram-success-title{
    color:#fff!important;
    font-size:25px!important;
    font-weight:950!important;
    letter-spacing:-.3px!important;
    line-height:1.18!important;
}
.telegram-success-html{
    color:#cbd5e1!important;
    font-size:14px!important;
    line-height:1.55!important;
    margin:.4em 0 0!important;
}
.telegram-success-icon{
    width:72px!important;
    height:72px!important;
    margin:4px auto 14px!important;
    border:0!important;
    color:#fff!important;
    background:linear-gradient(135deg,#38bdf8,#229ed9)!important;
    box-shadow:0 18px 40px rgba(34,158,217,.35)!important;
}
.telegram-success-icon .swal2-icon-content{
    font-size:34px!important;
}
.telegram-success-confirm{
    min-width:150px!important;
    height:48px!important;
    border:0!important;
    border-radius:16px!important;
    padding:0 24px!important;
    color:#fff!important;
    font-size:14px!important;
    font-weight:950!important;
    background:linear-gradient(135deg,#229ed9,#2563eb)!important;
    box-shadow:0 14px 28px rgba(34,158,217,.28)!important;
}
.telegram-success-actions{
    margin-top:18px!important;
}
body.light-theme .telegram-success-popup{
    color:#0f172a!important;
    background:
        radial-gradient(circle at top left,rgba(37,99,235,.09),transparent 36%),
        radial-gradient(circle at bottom right,rgba(34,197,94,.08),transparent 38%),
        #ffffff!important;
    border-color:#dbe4ef!important;
    box-shadow:0 24px 70px rgba(15,23,42,.18)!important;
}
body.light-theme .telegram-success-title{
    color:#0f172a!important;
}
body.light-theme .telegram-success-html{
    color:#64748b!important;
}
