/* STOP WALLET 3.5 — profile page */
.sw-profile-layout{display:grid;grid-template-columns:1.5fr .7fr;gap:15px}.sw-profile-card{background:#fff;border:1px solid var(--sw-line);border-radius:22px;overflow:hidden;box-shadow:var(--sw-shadow)}.sw-profile-cover{height:125px;background:linear-gradient(120deg,#0a695b,#116f93 48%,#5b2fe2);position:relative}.sw-profile-cover:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-70px;top:-150px;background:rgba(255,255,255,.08)}.sw-profile-body{padding:0 25px 25px;position:relative}.sw-profile-avatar{position:relative;width:92px;height:92px;border-radius:50%;margin-top:-46px;border:5px solid #fff;background:#f3d25a;box-shadow:0 10px 25px rgba(19,43,75,.16)}.sw-profile-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.sw-profile-avatar i{position:absolute;right:1px;bottom:5px;width:15px;height:15px;background:#1bc879;border:3px solid #fff;border-radius:50%}.sw-profile-name{margin-top:10px}.sw-profile-name h2{margin:0;font-size:22px;color:#18324f}.sw-profile-name span{font-size:10px;color:#16a873;font-weight:800}.sw-profile-edit{position:absolute;right:24px;top:15px;padding:9px 13px;border:1px solid #dfe7f0;border-radius:10px;font-size:10px;font-weight:750;color:#3a5574!important}.sw-profile-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}.sw-profile-fields>div{padding:13px;border:1px solid #edf1f5;border-radius:13px}.sw-profile-fields span{display:block;color:#92a0b0;font-size:9px}.sw-profile-fields strong{display:block;color:#263d5b;font-size:11px;margin-top:4px;overflow:hidden;text-overflow:ellipsis}.sw-profile-side{display:flex;flex-direction:column;gap:10px}.sw-profile-security{padding:19px;border-radius:20px;background:#fff;border:1px solid var(--sw-line);box-shadow:var(--sw-shadow)}.sw-profile-security>span{font-size:9px;color:#8998aa;font-weight:850;letter-spacing:1.3px}.sw-profile-security>strong{display:block;font-size:25px;color:#16a977;margin:6px 0}.sw-profile-security>div{height:7px;background:#edf2f6;border-radius:20px;overflow:hidden}.sw-profile-security>div i{display:block;height:100%;background:linear-gradient(90deg,#17b87e,#13aee7);border-radius:20px}.sw-profile-security small{display:block;color:#8997aa;font-size:9px;margin-top:10px}.sw-profile-side>a{display:flex;align-items:center;gap:11px;padding:15px;border:1px solid var(--sw-line);border-radius:16px;background:#fff}.sw-profile-side>a>span{width:37px;height:37px;border-radius:11px;background:#f3f6fa;display:grid;place-items:center}.sw-profile-side>a>div{display:flex;flex-direction:column;flex:1}.sw-profile-side>a strong{font-size:11px}.sw-profile-side>a small{font-size:9px;color:#8d9aac;margin-top:2px}.sw-profile-side>a b{font-size:19px;color:#9da9b8;font-weight:300}
@media(max-width:850px){.sw-profile-layout{grid-template-columns:1fr}.sw-profile-fields{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.sw-profile-body{padding:0 16px 18px}.sw-profile-fields{grid-template-columns:1fr}.sw-profile-edit{position:static;display:inline-flex;margin-top:14px}.sw-profile-cover{height:105px}}



/* ============================================================
   STOP_WALLET BSOFT — GLOBAL PREMIUM UI OVERRIDE
   VISUAL ONLY / NO FUNCTION OR LOGIC CHANGE
   ============================================================ */

:root{
    --sw-premium-primary:#087f5b;
    --sw-premium-primary-dark:#064d3a;
    --sw-premium-secondary:#12a978;
    --sw-premium-gold:#c9a43a;
    --sw-premium-ink:#17232c;
    --sw-premium-muted:#71808b;
    --sw-premium-line:#e1ebe7;
    --sw-premium-soft:#f3f9f6;
    --sw-premium-white:#fff;
    --sw-premium-shadow:0 14px 42px rgba(18,42,52,.075);
}

/* ---------- Centered application canvas ---------- */

#stop_wallet-bsoft-app-shell .sw-dashboard,
#stop_wallet-bsoft-app-shell .sw-main,
#stop_wallet-bsoft-app-shell .sw-content{
    box-sizing:border-box;
}

#stop_wallet-bsoft-app-shell .sw-content{
    width:100%;
}

/* ---------- Typography / first-letter capitalization ---------- */

#stop_wallet-bsoft-app-shell h1,
#stop_wallet-bsoft-app-shell h2,
#stop_wallet-bsoft-app-shell h3,
#stop_wallet-bsoft-app-shell h4,
#stop_wallet-bsoft-app-shell h5,
#stop_wallet-bsoft-app-shell button,
#stop_wallet-bsoft-app-shell label,
#stop_wallet-bsoft-app-shell th,
#stop_wallet-bsoft-app-shell .sw-status,
.sw-donation-wrap h1,
.sw-donation-wrap h2,
.sw-donation-wrap h3,
.sw-donation-wrap h4,
.sw-donation-wrap button,
.sw-donation-wrap label,
.sw-campaign-builder h1,
.sw-campaign-builder h2,
.sw-campaign-builder h3,
.sw-campaign-builder h4,
.sw-campaign-builder button,
.sw-campaign-builder label,
.sw-approved-campaigns h1,
.sw-approved-campaigns h2,
.sw-approved-campaigns h3,
.sw-approved-campaigns h4,
.sw-approved-campaigns button,
.sw-approved-campaigns label{
    text-transform:capitalize;
}

/* ---------- Universal premium controls ---------- */

#stop_wallet-bsoft-app-shell input,
#stop_wallet-bsoft-app-shell select,
#stop_wallet-bsoft-app-shell textarea,
.sw-donation-wrap input,
.sw-donation-wrap select,
.sw-donation-wrap textarea,
.sw-campaign-builder input,
.sw-campaign-builder select,
.sw-campaign-builder textarea{
    border-radius:11px;
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}

#stop_wallet-bsoft-app-shell input:focus,
#stop_wallet-bsoft-app-shell select:focus,
#stop_wallet-bsoft-app-shell textarea:focus,
.sw-donation-wrap input:focus,
.sw-donation-wrap select:focus,
.sw-donation-wrap textarea:focus,
.sw-campaign-builder input:focus,
.sw-campaign-builder select:focus,
.sw-campaign-builder textarea:focus{
    border-color:var(--sw-premium-primary) !important;
    box-shadow:0 0 0 4px rgba(8,127,91,.075) !important;
    outline:none;
}

#stop_wallet-bsoft-app-shell button,
.sw-donation-wrap button,
.sw-campaign-builder button{
    border-radius:10px;
}

/* ============================================================
   BASIC DASHBOARD
   ============================================================ */

#stop_wallet-bsoft-app-shell .sw-dashboard{
    --sw-dashboard-primary:var(--sw-premium-primary);
    --sw-dashboard-dark:var(--sw-premium-primary-dark);
}

#stop_wallet-bsoft-app-shell .sw-main{
    min-width:0;
}

#stop_wallet-bsoft-app-shell .sw-content{
    padding:24px;
}

#stop_wallet-bsoft-app-shell .sw-header{
    border-radius:18px;
    box-shadow:0 8px 28px rgba(18,42,52,.055);
}

#stop_wallet-bsoft-app-shell .sw-card,
#stop_wallet-bsoft-app-shell .sw-panel,
#stop_wallet-bsoft-app-shell .sw-section,
#stop_wallet-bsoft-app-shell .sw-overview-card,
#stop_wallet-bsoft-app-shell .sw-wallet-card,
#stop_wallet-bsoft-app-shell .sw-transaction-card,
#stop_wallet-bsoft-app-shell .sw-service-card{
    border-radius:17px;
    box-shadow:var(--sw-premium-shadow);
}

#stop_wallet-bsoft-app-shell .sw-menu a{
    border-radius:11px;
    transition:.2s ease;
}

#stop_wallet-bsoft-app-shell .sw-menu a:hover,
#stop_wallet-bsoft-app-shell .sw-menu li.active a{
    transform:translateX(2px);
}

/* Dashboard headings */
#stop_wallet-bsoft-app-shell .sw-page-title,
#stop_wallet-bsoft-app-shell .sw-content h1,
#stop_wallet-bsoft-app-shell .sw-content h2{
    font-weight:900;
}

/* Dashboard buttons */
#stop_wallet-bsoft-app-shell .sw-btn,
#stop_wallet-bsoft-app-shell .sw-button,
#stop_wallet-bsoft-app-shell button[type="submit"]{
    border:0;
    background:linear-gradient(135deg,var(--sw-premium-primary),var(--sw-premium-primary-dark));
    color:#fff;
    font-weight:850;
    box-shadow:0 8px 18px rgba(8,127,91,.14);
}

#stop_wallet-bsoft-app-shell .sw-btn:hover,
#stop_wallet-bsoft-app-shell .sw-button:hover,
#stop_wallet-bsoft-app-shell button[type="submit"]:hover{
    transform:translateY(-1px);
    filter:brightness(1.04);
}

/* ============================================================
   PREMIUM ACCOUNT
   ============================================================ */

.account-grid,
.active-accounts{
    width:min(1100px,100%);
    margin-left:auto !important;
    margin-right:auto !important;
}

.account-grid{
    gap:16px;
}

.account-card{
    border:1px solid var(--sw-premium-line) !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,#fff,#f9fcfb) !important;
    box-shadow:var(--sw-premium-shadow) !important;
    overflow:hidden;
}

.account-card:before{
    content:"";
    display:block;
    height:3px;
    background:linear-gradient(90deg,var(--sw-premium-primary),var(--sw-premium-gold));
}

.account-card .upgrade-btn{
    border-radius:10px !important;
    background:linear-gradient(135deg,var(--sw-premium-primary),var(--sw-premium-primary-dark)) !important;
    color:#fff !important;
    box-shadow:0 8px 18px rgba(8,127,91,.14);
}

/* ============================================================
   WALLET
   ============================================================ */

.sw-wallet-card,
.sw-wallet-form,
.sw-wallet-panel{
    border-radius:21px !important;
}

.sw-wallet-header{
    border-radius:20px !important;
    background:linear-gradient(135deg,var(--sw-premium-primary-dark),var(--sw-premium-primary),var(--sw-premium-secondary)) !important;
    box-shadow:0 18px 45px rgba(8,127,91,.16);
}

.sw-wallet-logo,
.sw-wallet-form-icon{
    border-radius:14px !important;
}

.sw-wallet-balance{
    border-radius:16px !important;
}

.sw-wallet-card button,
.sw-wallet-form button,
.sw-wallet-panel button{
    border-radius:10px !important;
}

/* ============================================================
   CHECKOUT
   ============================================================ */

.sw-checkout{
    width:min(1080px,100%);
    margin-left:auto !important;
    margin-right:auto !important;
    border-radius:23px !important;
}

.sw-checkout-head{
    border-radius:20px !important;
    background:linear-gradient(135deg,var(--sw-premium-primary-dark),var(--sw-premium-primary),var(--sw-premium-secondary)) !important;
    box-shadow:0 18px 45px rgba(8,127,91,.15);
}

.sw-checkout-section,
.sw-checkout-grid > *,
.sw-checkout-card{
    border-radius:15px !important;
}

.sw-step{
    border-radius:11px !important;
}

/* ============================================================
   PAYMENT METHOD
   ============================================================ */

.sw-pm,
.sw-pm-settings{
    width:min(1120px,100%);
    margin-left:auto !important;
    margin-right:auto !important;
}

.sw-pm-settings-hero,
.sw-pm-hero-main{
    border-radius:21px !important;
    background:linear-gradient(135deg,var(--sw-premium-primary-dark),var(--sw-premium-primary),var(--sw-premium-secondary)) !important;
    box-shadow:0 18px 45px rgba(8,127,91,.15);
}

.sw-pm-settings-form,
.sw-pm-card,
.sw-pm-section{
    border-radius:17px !important;
}

/* ============================================================
   PROFILE
   ============================================================ */

.sw-profile-container,
.sw-profile-wrapper{
    width:min(1120px,100%);
    margin-left:auto !important;
    margin-right:auto !important;
}

.sw-profile-header{
    border-radius:23px !important;
    background:linear-gradient(135deg,var(--sw-premium-primary-dark),var(--sw-premium-primary),var(--sw-premium-secondary)) !important;
    box-shadow:0 18px 48px rgba(8,127,91,.15);
}

.sw-profile-card,
.sw-profile-section,
.sw-profile-form-card{
    border-radius:17px !important;
    box-shadow:var(--sw-premium-shadow);
}

/* ============================================================
   AUTH — LOGIN / REGISTER / FORGOT
   ============================================================ */

.sw-login-wrapper,
.sw-register-wrapper,
.sw-auth-wrapper{
    width:100%;
}

.sw-login-card,
.sw-register-card,
.sw-auth-card{
    border-radius:24px !important;
    box-shadow:0 25px 70px rgba(18,42,52,.12) !important;
}

.sw-login-icon,
.sw-register-icon{
    border-radius:15px !important;
}

.sw-login-card button,
.sw-register-card button,
.sw-auth-card button,
.sw-auth-wrapper button{
    border-radius:11px !important;
    background:linear-gradient(135deg,var(--sw-premium-primary),var(--sw-premium-primary-dark)) !important;
    color:#fff !important;
    border:0 !important;
    box-shadow:0 9px 20px rgba(8,127,91,.15);
}

.sw-login-card input,
.sw-register-card input,
.sw-auth-card input{
    border-radius:11px !important;
}

/* ============================================================
   LEDGER
   ============================================================ */

.sw-ledger-wrapper{
    width:min(1120px,100%);
    margin-left:auto !important;
    margin-right:auto !important;
}

.sw-ledger-card{
    border-radius:21px !important;
    border:1px solid var(--sw-premium-line) !important;
    box-shadow:var(--sw-premium-shadow) !important;
}

.sw-ledger-header{
    border-radius:20px !important;
    background:linear-gradient(135deg,var(--sw-premium-primary-dark),var(--sw-premium-primary),var(--sw-premium-secondary)) !important;
}

.sw-ledger-icon{
    border-radius:13px !important;
}

/* ============================================================
   DONATION — ALL PAGES
   ============================================================ */

.sw-donation-wrap{
    width:min(1240px,100%);
    margin-left:auto !important;
    margin-right:auto !important;
}

.sw-donation-hero{
    border-radius:25px !important;
    background:
        radial-gradient(circle at 90% 15%,rgba(255,255,255,.14),transparent 27%),
        linear-gradient(135deg,var(--sw-premium-primary-dark),var(--sw-premium-primary),var(--sw-premium-secondary)) !important;
}

.sw-donation-stats{
    width:100%;
}

.sw-donation-stats > div,
.sw-donation-panel,
.sw-dashboard-campaign{
    border-radius:17px !important;
}

.sw-donation-panel{
    box-shadow:var(--sw-premium-shadow) !important;
}

.sw-dashboard-campaign{
    overflow:hidden;
}

.sw-dashboard-actions .sw-donation-btn,
.sw-donation-btn{
    border-radius:10px !important;
}

.sw-donation-table{
    border-radius:13px;
    overflow:hidden;
}

/* ============================================================
   APPROVED CAMPAIGNS
   ============================================================ */

.sw-approved-campaigns{
    width:min(1240px,100%);
    margin-left:auto !important;
    margin-right:auto !important;
}

.sw-approved-campaigns__header{
    border-radius:24px !important;
    background:
        radial-gradient(circle at 92% 12%,rgba(255,255,255,.14),transparent 24%),
        linear-gradient(135deg,var(--sw-premium-primary-dark),var(--sw-premium-primary),var(--sw-premium-secondary)) !important;
}

.sw-approved-campaign-card{
    border-radius:20px !important;
}

.sw-approved-campaign-view{
    border-radius:10px !important;
}

/* ============================================================
   CAMPAIGN BUILDER
   ============================================================ */

.sw-campaign-builder{
    width:min(1080px,100%);
    margin-left:auto !important;
    margin-right:auto !important;
}

.sw-campaign-builder__header{
    border-radius:24px !important;
    background:
        radial-gradient(circle at 90% 15%,rgba(255,255,255,.14),transparent 27%),
        linear-gradient(135deg,var(--sw-premium-primary-dark),var(--sw-premium-primary),var(--sw-premium-secondary)) !important;
}

.sw-campaign-form,
.sw-builder-field,
.sw-builder-section__header,
.sw-donation-verification-builder{
    border-radius:17px !important;
}

.sw-campaign-form__footer .sw-donation-submit{
    border-radius:13px !important;
    background:linear-gradient(135deg,var(--sw-premium-primary),var(--sw-premium-primary-dark)) !important;
}

/* ============================================================
   ADMIN
   ============================================================ */

.sw-dashboard,
.stop_wallet-admin-box,
.sw-dashboard-box,
.stop_wallet-module-card,
.sw-dashboard-card{
    border-radius:18px !important;
}

.sw-dashboard-card,
.stop_wallet-module-card{
    box-shadow:var(--sw-premium-shadow) !important;
}

.sw-dashboard h1,
.stop_wallet-admin-box h2,
.sw-dashboard-box h2{
    text-transform:capitalize;
}

.sw-dashboard .button,
.stop_wallet-admin-box .button,
.sw-dashboard-box .button{
    border-radius:10px !important;
}

/* ============================================================
   DEBUG
   ============================================================ */

.sw-debug-header,
.sw-debug-card,
.sw-debug-panel{
    border-radius:18px !important;
}

.sw-debug-button{
    border-radius:10px !important;
}

/* ============================================================
   RESPONSIVE CENTERING
   ============================================================ */

@media(max-width:900px){
    #stop_wallet-bsoft-app-shell .sw-content{
        padding:17px;
    }

    .sw-dashboard-campaign-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:680px){
    #stop_wallet-bsoft-app-shell .sw-content{
        padding:11px;
    }

    .sw-dashboard-campaign-grid{
        grid-template-columns:1fr;
    }

    .sw-donation-wrap,
    .sw-approved-campaigns,
    .sw-campaign-builder,
    .sw-checkout,
    .sw-pm,
    .sw-pm-settings,
    .sw-profile-container,
    .sw-profile-wrapper,
    .sw-ledger-wrapper,
    .account-grid,
    .active-accounts{
        padding-left:6px;
        padding-right:6px;
    }

    .sw-donation-stats{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:430px){
    .sw-donation-stats{
        grid-template-columns:1fr;
    }

    .sw-panel-head{
        align-items:flex-start;
        flex-direction:column;
    }

    .sw-edit-grid{
        grid-template-columns:1fr;
    }
}

@media(prefers-reduced-motion:reduce){
    #stop_wallet-bsoft-app-shell *,
    .sw-donation-wrap *,
    .sw-campaign-builder *,
    .sw-approved-campaigns *{
        transition-duration:.01ms !important;
        animation-duration:.01ms !important;
    }
}

/* ============================================================
   STOP WALLET — FINAL PREMIUM VISUAL SYSTEM
   RED + GREEN / CENTERED / BORDER / RADIUS / PADDING
   DESIGN + COLOR ONLY
   ============================================================ */

:root{
    --sw-premium-red:#e31837;
    --sw-premium-red-dark:#c8102e;
    --sw-premium-green:#079b63;
    --sw-premium-green-dark:#057a4f;

    --sw-premium-text:#172033;
    --sw-premium-soft:#526078;
    --sw-premium-muted:#718096;
    --sw-premium-border:#dce3ea;
    --sw-premium-border-strong:#c7d1db;

    --sw-premium-bg:#f6fbf9;
    --sw-premium-white:#fff;

    --sw-premium-shadow:
        0 16px 42px rgba(23,32,51,.075);
    --sw-premium-shadow-soft:
        0 8px 24px rgba(23,32,51,.05);
}

/* -----------------------------
   Centered page canvases
   ----------------------------- */

.sw-wallet-page,
.sw-family-page,
.sw-notification-page,
.sw-myqr-page,
.sw-checkout,
.sw-pm,
.sw-pm-settings,
.sw-payment-method,
.sw-transaction-history,
.sw-sb,
.sw-module-card,
.sw-auth-wrapper,
.sw-login-wrapper,
.sw-register-wrapper,
.sw-profile-wrapper{
    box-sizing:border-box;
}

/* -----------------------------
   Generic premium module card
   ----------------------------- */

.sw-module-card{
    position:relative;

    width:calc(100% - 20px);
    max-width:720px;

    margin:16px auto !important;
    padding:18px !important;

    border:1px solid var(--sw-premium-border) !important;
    border-radius:18px !important;

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #fffafb 48%,
            #f3fbf7 100%
        ) !important;

    box-shadow:var(--sw-premium-shadow) !important;

    color:var(--sw-premium-text);

    overflow:hidden;
}

.sw-module-card::before{
    content:"";

    position:absolute;
    top:0;
    left:0;
    right:0;

    height:3px;

    background:
        linear-gradient(
            90deg,
            var(--sw-premium-red),
            #c94b58 50%,
            var(--sw-premium-green)
        );
}

.sw-module-icon{
    border-radius:12px !important;

    color:#fff !important;
    -webkit-text-fill-color:#fff !important;

    background:
        linear-gradient(
            135deg,
            var(--sw-premium-red),
            #c84b58 48%,
            var(--sw-premium-green)
        ) !important;

    box-shadow:
        0 8px 18px rgba(227,24,55,.13);
}

.sw-module-card h2{
    color:var(--sw-premium-text) !important;
    -webkit-text-fill-color:var(--sw-premium-text) !important;
}

.sw-module-card p{
    color:var(--sw-premium-soft) !important;
    -webkit-text-fill-color:var(--sw-premium-soft) !important;
}

/* -----------------------------
   Shared module buttons
   ----------------------------- */

.sw-module-action,
.sw-primary-btn,
.sw-sb button.primary,
.sw-sb button.dark{
    border:0 !important;
    border-radius:11px !important;

    color:#fff !important;
    -webkit-text-fill-color:#fff !important;

    background:
        linear-gradient(
            105deg,
            var(--sw-premium-red) 0%,
            #df2a48 34%,
            #b64d58 50%,
            var(--sw-premium-green) 73%,
            var(--sw-premium-green-dark) 100%
        ) !important;

    box-shadow:
        0 9px 21px rgba(7,155,99,.13),
        0 5px 13px rgba(227,24,55,.08) !important;

    font:inherit;
    font-weight:850;

    cursor:pointer;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        filter .18s ease;
}

.sw-module-action:hover,
.sw-primary-btn:hover,
.sw-sb button.primary:hover,
.sw-sb button.dark:hover{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;

    transform:translateY(-1px);

    box-shadow:
        0 13px 27px rgba(7,155,99,.17) !important;

    filter:brightness(1.02);
}

/* -----------------------------
   Shared fields
   ----------------------------- */

.sw-wallet-page input,
.sw-wallet-page select,
.sw-wallet-page textarea,
.sw-family-page input,
.sw-family-page select,
.sw-family-page textarea,
.sw-sb input,
.sw-sb select,
.sw-sb textarea,
.sw-module-card input,
.sw-module-card select,
.sw-module-card textarea,
.sw-myqr-page input,
.sw-myqr-page select,
.sw-myqr-page textarea{
    border:1px solid var(--sw-premium-border-strong) !important;
    border-radius:11px !important;

    background:#fff !important;

    color:var(--sw-premium-text) !important;
    -webkit-text-fill-color:var(--sw-premium-text) !important;

    outline:0 !important;

    box-shadow:
        inset 0 1px 2px rgba(23,32,51,.018) !important;

    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}

.sw-wallet-page input:hover,
.sw-wallet-page select:hover,
.sw-wallet-page textarea:hover,
.sw-family-page input:hover,
.sw-family-page select:hover,
.sw-family-page textarea:hover,
.sw-sb input:hover,
.sw-sb select:hover,
.sw-sb textarea:hover,
.sw-module-card input:hover,
.sw-module-card select:hover,
.sw-module-card textarea:hover{
    border-color:#aebbc7 !important;
}

.sw-wallet-page input:focus,
.sw-wallet-page select:focus,
.sw-wallet-page textarea:focus,
.sw-family-page input:focus,
.sw-family-page select:focus,
.sw-family-page textarea:focus,
.sw-sb input:focus,
.sw-sb select:focus,
.sw-sb textarea:focus,
.sw-module-card input:focus,
.sw-module-card select:focus,
.sw-module-card textarea:focus{
    border-color:var(--sw-premium-green) !important;

    box-shadow:
        0 0 0 3px rgba(7,155,99,.09),
        0 7px 18px rgba(7,155,99,.04) !important;
}

.sw-wallet-page input::placeholder,
.sw-family-page input::placeholder,
.sw-sb input::placeholder,
.sw-module-card input::placeholder{
    color:#98a4b1 !important;
    -webkit-text-fill-color:#98a4b1 !important;
    opacity:1;
}

/* -----------------------------
   Savings / Qorjian / Welfare /
   Donation shared card
   ----------------------------- */

.sw-sb{
    width:calc(100% - 20px) !important;
    max-width:900px !important;

    margin:16px auto !important;
    padding:0 0 24px !important;

    box-sizing:border-box;

    color:var(--sw-premium-text);
}

.sw-sb-head{
    padding:17px 18px !important;

    margin-bottom:12px !important;

    border:1px solid var(--sw-premium-border) !important;
    border-radius:16px !important;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #fff9fa 52%,
            #f2fbf7
        ) !important;

    box-shadow:var(--sw-premium-shadow-soft) !important;
}

.sw-sb-head h2{
    margin:0 0 4px !important;

    color:var(--sw-premium-text) !important;
    -webkit-text-fill-color:var(--sw-premium-text) !important;

    font-size:22px !important;
    font-weight:900 !important;
}

.sw-sb-head p{
    margin:0 !important;

    color:var(--sw-premium-soft) !important;
    -webkit-text-fill-color:var(--sw-premium-soft) !important;

    font-size:11px !important;
    line-height:1.55 !important;
}

.sw-sb-card{
    position:relative !important;

    padding:18px !important;

    border:1px solid var(--sw-premium-border) !important;
    border-radius:18px !important;

    background:#fff !important;

    box-shadow:var(--sw-premium-shadow) !important;

    overflow:hidden;
}

.sw-sb-card::before{
    content:"";

    position:absolute;

    top:0;
    left:0;
    right:0;

    height:3px;

    background:
        linear-gradient(
            90deg,
            var(--sw-premium-red),
            var(--sw-premium-green)
        );
}

.sw-sb-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:9px !important;

    margin-bottom:14px !important;
}

.sw-sb-stat{
    padding:11px 12px !important;

    border:1px solid #e2e9ed !important;
    border-radius:12px !important;

    background:
        linear-gradient(
            145deg,
            #fff,
            #f5faf8
        ) !important;
}

.sw-sb-stat small{
    display:block !important;

    color:var(--sw-muted) !important;
    font-size:9px !important;
}

.sw-sb-stat strong{
    display:block !important;

    margin-top:3px !important;

    color:var(--sw-premium-text) !important;
    -webkit-text-fill-color:var(--sw-premium-text) !important;

    font-size:14px !important;
}

.sw-sb-card > label,
.sw-sb-pin label{
    display:block !important;

    margin:0 0 6px !important;

    color:var(--sw-premium-text) !important;
    -webkit-text-fill-color:var(--sw-premium-text) !important;

    font-size:11px !important;
    font-weight:850 !important;
}

.sw-sb-actions{
    gap:8px !important;
}

.sw-sb-msg{
    margin-top:12px !important;

    padding:10px 11px !important;

    border:1px solid #dce9e2 !important;
    border-radius:10px !important;

    background:#f5fbf8 !important;

    color:var(--sw-premium-soft) !important;
}

.sw-sb-pin{
    margin-top:12px !important;
    padding:12px !important;

    border:1px dashed #c9ded5 !important;
    border-radius:12px !important;

    background:#f8fcfa !important;
}

/* -----------------------------
   Notification
   ----------------------------- */

.sw-notification-page{
    width:calc(100% - 20px) !important;
    max-width:980px !important;

    margin:16px auto !important;
}

.sw-notification-head,
.sw-notification-item,
.sw-notification-toolbar,
.sw-notification-empty{
    border-color:var(--sw-premium-border) !important;
}

.sw-notification-head{
    border-radius:16px !important;

    background:
        linear-gradient(
            145deg,
            #fff,
            #fff9fa 50%,
            #f3fbf7
        ) !important;

    box-shadow:var(--sw-premium-shadow-soft) !important;
}

.sw-notification-head h2,
.sw-notification-title-row strong{
    color:var(--sw-premium-text) !important;
}

.sw-notification-head p,
.sw-notification-toolbar,
.sw-notification-body p,
.sw-notification-body time{
    color:var(--sw-premium-soft) !important;
}

.sw-notification-readall{
    color:#fff !important;

    background:
        linear-gradient(
            135deg,
            var(--sw-premium-red),
            var(--sw-premium-green)
        ) !important;
}

/* -----------------------------
   Payment Method
   ----------------------------- */

.sw-pm-settings{
    width:calc(100% - 20px) !important;
    max-width:1080px !important;
    margin:16px auto !important;
}

.sw-pm-settings-hero{
    border:1px solid #dce8e2 !important;
    border-radius:17px !important;

    background:
        linear-gradient(
            135deg,
            #ffffff,
            #fff9fa 48%,
            #eefaf5
        ) !important;

    color:var(--sw-premium-text) !important;
    box-shadow:var(--sw-premium-shadow-soft) !important;
}

.sw-pm-settings h2,
.sw-pm-settings h3{
    color:var(--sw-premium-text) !important;
}

.sw-pm-kicker,
.sw-pm-section-kicker{
    color:var(--sw-premium-green-dark) !important;
}

.sw-pm-card{
    border:1px solid var(--sw-premium-border) !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:var(--sw-premium-shadow-soft) !important;
}

.sw-pm-field input,
.sw-pm-field textarea,
.sw-pm-field select,
.sw-pm-grid input,
.sw-pm-grid textarea,
.sw-pm-grid select,
.sw-pm-bank-row input,
.sw-pm-bank-row textarea{
    border:1px solid var(--sw-premium-border-strong) !important;
}

.sw-pm-field input:focus,
.sw-pm-field textarea:focus,
.sw-pm-field select:focus,
.sw-pm-bank-row input:focus,
.sw-pm-bank-row textarea:focus{
    border-color:var(--sw-premium-green) !important;
    box-shadow:0 0 0 3px rgba(7,155,99,.09) !important;
}

.sw-pm-status.on{
    color:var(--sw-premium-green-dark) !important;
    background:#eaf9f3 !important;
}

/* -----------------------------
   Transaction history
   ----------------------------- */

.sw-transaction-history{
    width:calc(100% - 20px) !important;
    max-width:1000px !important;

    margin:16px auto !important;
    padding:18px !important;

    border:1px solid var(--sw-premium-border) !important;
    border-radius:17px !important;

    background:#fff !important;
    box-shadow:var(--sw-premium-shadow) !important;
}

.sw-payment-balance{
    border:1px solid #dce9e2 !important;
    background:
        linear-gradient(
            105deg,
            #f2fbf6,
            #fffafa
        ) !important;
}

.sw-payment-table-wrap{
    border-color:#dfe7eb !important;
    border-radius:12px !important;
}

.sw-payment-table th{
    background:#f4faf7 !important;
    color:#526078 !important;
}

.sw-payment-table td{
    color:#405267 !important;
}

/* -----------------------------
   My QR
   ----------------------------- */

.sw-myqr-page{
    width:calc(100% - 20px) !important;
    max-width:900px !important;
    margin:16px auto !important;
}

/* -----------------------------
   Shared status colors
   ----------------------------- */

.sw-status,
.sw-payment-status,
.sw-status-pill{
    opacity:1 !important;
}

.sw-status.sw-verified,
.sw-status-pill.is-success,
.sw-payment-status{
    color:var(--sw-premium-green-dark) !important;
    background:#eaf9f3 !important;
}

.sw-status.sw-pending,
.sw-status-pill.is-pending{
    color:#a16207 !important;
    background:#fff7df !important;
}

.sw-status.sw-rejected{
    color:var(--sw-premium-red-dark) !important;
    background:#fff0f3 !important;
}

/* -----------------------------
   Mobile
   ----------------------------- */

@media(max-width:680px){
    .sw-module-card,
    .sw-wallet-page,
    .sw-family-page,
    .sw-notification-page,
    .sw-checkout,
    .sw-pm-settings,
    .sw-transaction-history,
    .sw-myqr-page,
    .sw-sb{
        width:calc(100% - 10px) !important;
    }

    .sw-sb-grid{
        grid-template-columns:1fr !important;
    }

    .sw-sb-actions{
        display:flex !important;
        flex-direction:column !important;
    }

    .sw-sb-actions button{
        width:100% !important;
    }
}

@media(max-width:390px){
    .sw-module-card,
    .sw-wallet-page,
    .sw-family-page,
    .sw-notification-page,
    .sw-checkout,
    .sw-pm-settings,
    .sw-transaction-history,
    .sw-myqr-page,
    .sw-sb{
        width:calc(100% - 6px) !important;
    }
}
