/* STOP WALLET 3.5 — application shell */
.sw-main-shell{min-height:100vh;margin-left:292px;min-width:0}.sw-sidebar{position:fixed;left:0;top:0;bottom:0;width:292px;z-index:1000}.sw-sidebar-overlay{display:none}.sw-header{height:78px;background:rgba(255,255,255,.94);border-bottom:1px solid #edf1f6;position:sticky;top:0;z-index:800;backdrop-filter:blur(18px)}.sw-topbar{background:#fff;border-bottom:1px solid #eef2f7}.sw-header-shell{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;gap:20px}.sw-header-left,.sw-header-right{display:flex;align-items:center;gap:16px}.sw-header-center{display:flex;align-items:center;gap:10px;min-width:0}.sw-header-eyebrow{font-size:9px;font-weight:850;letter-spacing:1.6px;color:#99a6b9}.sw-header-center strong{font-size:14px;color:#203453}.sw-header-brand{display:flex;align-items:center;gap:11px}.sw-header-brand>span:last-child{display:flex;flex-direction:column}.sw-header-brand strong{font-size:16px;line-height:1.05;letter-spacing:.25px}.sw-header-brand small{font-size:10px;color:#71809a;margin-top:3px}.sw-header-logo,.sw-footer-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(140deg,#5b1ef3 0%,#3f4de8 48%,#11bd8a 100%);box-shadow:0 9px 22px rgba(75,52,232,.22);position:relative;overflow:hidden}.sw-header-logo:after,.sw-footer-mark:after{content:"";width:19px;height:22px;border:2px solid #fff;border-radius:8px 8px 10px 10px;transform:rotate(45deg);position:absolute}.sw-header-logo span{width:8px;height:8px;border:1px solid rgba(255,255,255,.8);border-radius:3px;position:absolute;right:7px;bottom:7px}.sw-header-notification{position:relative;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:#122442;border:1px solid #e5ebf2;background:#fff}.sw-header-notification svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sw-header-notification i{position:absolute;right:-3px;top:-5px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#ee334e;color:#fff;border:2px solid #fff;font-style:normal;font-size:9px;font-weight:800}.sw-header-profile{display:flex;align-items:center;gap:9px}.sw-header-avatar{position:relative;width:42px;height:42px;border-radius:50%;background:#f6d45b;overflow:visible}.sw-header-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.sw-header-avatar i{position:absolute;right:-1px;bottom:1px;width:10px;height:10px;background:#18c779;border:2px solid #fff;border-radius:50%}.sw-header-profile>span:nth-child(2){display:flex;flex-direction:column}.sw-header-profile strong{font-size:13px}.sw-header-profile small{font-size:9px;color:#8492a7}.sw-header-profile>b{font-size:18px;color:#697b96;font-weight:500}.sw-header-menu{display:none}.sw-topbar-shell{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 30px}.sw-breadcrumb{display:flex;align-items:center;gap:9px;font-size:11px}.sw-breadcrumb span{color:#a0aabd;font-weight:750;letter-spacing:.6px}.sw-breadcrumb b{color:#b7c1cf;font-size:16px;font-weight:400}.sw-breadcrumb strong{color:#38516f}.sw-topbar-date{font-size:10px;color:#7d8ca1;display:flex;align-items:center;gap:6px}.sw-live-dot,.sw-footer-status i{width:7px;height:7px;border-radius:50%;background:#16b878;box-shadow:0 0 0 4px rgba(22,184,120,.10)}.sw-footer-shell{padding:0 30px 24px}.sw-footer-inner{width:min(100%,1240px);margin:0 auto;border-top:1px solid #e8edf3;padding-top:17px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#7f8da2;font-size:10px}.sw-footer-brand{display:flex;align-items:center;gap:9px}.sw-footer-mark{width:28px;height:28px;border-radius:9px;box-shadow:none}.sw-footer-mark:after{width:12px;height:14px;border-width:1.4px}.sw-footer-brand>span:last-child{display:flex;flex-direction:column}.sw-footer-brand strong{font-size:10px;color:#4a5d78}.sw-footer-brand small{font-size:9px}.sw-footer-status{display:flex;align-items:center;gap:7px}.sw-footer-version{font-weight:800;color:#5b6e89}
@media(max-width:992px){.sw-main-shell{margin-left:0}.sw-sidebar{width:292px;transform:translateX(-102%);transition:transform .3s cubic-bezier(.2,.75,.25,1);box-shadow:20px 0 50px rgba(7,26,56,.2)}.sw-sidebar.is-open{transform:translateX(0)}.sw-sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(4,18,38,.44);backdrop-filter:blur(2px);opacity:0;visibility:hidden;z-index:900;transition:.25s}.sw-sidebar-overlay.is-active{opacity:1;visibility:visible}.sw-header{height:70px}.sw-header-shell{height:70px;padding:0 18px}.sw-header-menu{display:flex;width:42px;height:42px;border:1px solid #e3eaf3;border-radius:12px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:4px;cursor:pointer}.sw-header-menu span{display:block;width:18px;height:2px;border-radius:4px;background:#1a3560}.sw-header-center{display:none}.sw-header-brand strong{font-size:14px}.sw-header-brand small{font-size:9px}.sw-topbar-shell{padding:0 18px}.sw-footer-shell{padding:0 18px 82px}.sw-footer-inner{justify-content:center}.sw-footer-brand,.sw-footer-status{display:none}}
@media(max-width:560px){.sw-content{padding:22px 14px 28px}.sw-header-profile>span:nth-child(2),.sw-header-profile>b{display:none}.sw-header-notification{width:39px;height:39px}.sw-header-avatar,.sw-header-logo{width:39px;height:39px}.sw-topbar-date{display:none}.sw-topbar-shell{height:38px}.sw-page-heading{align-items:flex-start;flex-direction:column}.sw-page-heading .sw-outline-button{width:100%}}

/* Balligo BSoft — reference dashboard shell polish */
@media(min-width:993px){
  .sw-main-shell{margin-left:310px;background:#fff}
  .sw-sidebar{width:310px}
  .sw-header{height:82px;background:rgba(255,255,255,.97);border-bottom:1px solid #edf1f6}
  .sw-header-shell{height:82px;padding:0 30px}
  .sw-topbar{display:none}
  .sw-content{padding:28px 30px 42px}
  .sw-footer-shell{padding:0 30px 24px}
}


/* ==========================================================================
   Balligo BSoft — AUTHORITATIVE APP VIEW SHELL FIX
   - One sidebar only (sidebar.php)
   - Main content never sits underneath/after the sidebar
   - Mobile header always starts at viewport top
   - Toggle button is centered inside its hit area
   ========================================================================== */

#bbs-dashboard.sw-dashboard-shell{
    position:relative !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    min-height:100vh !important;
    margin:0 !important;
    padding:0 !important;
    overflow-x:hidden !important;
}

#bbs-dashboard.sw-dashboard-shell > .sw-sidebar{
    position:fixed !important;
    left:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:310px !important;
    height:100vh !important;
    margin:0 !important;
    z-index:1000 !important;
    box-sizing:border-box !important;
}

#bbs-dashboard.sw-dashboard-shell > .sw-main-shell{
    position:relative !important;
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    min-height:100vh !important;
    margin:0 0 0 310px !important;
    padding:0 !important;
    box-sizing:border-box !important;
}

#bbs-dashboard.sw-dashboard-shell > .sw-main-shell > .sw-header{
    position:sticky !important;
    top:0 !important;
    margin:0 !important;
    width:100% !important;
    box-sizing:border-box !important;
}

#bbs-dashboard.sw-dashboard-shell .sw-header-shell{
    box-sizing:border-box !important;
}

#bbs-dashboard.sw-dashboard-shell .sw-header-menu{
    align-items:center !important;
    justify-content:center !important;
    align-self:center !important;
    flex:0 0 42px !important;
    width:42px !important;
    height:42px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:0 !important;
}

#bbs-dashboard.sw-dashboard-shell .sw-header-menu span{
    flex:0 0 auto !important;
    margin:0 !important;
}

@media (max-width:992px){
    #bbs-dashboard.sw-dashboard-shell > .sw-sidebar{
        width:min(310px,88vw) !important;
        height:auto !important;
        max-height:none !important;
        top:0 !important;
        bottom:0 !important;
        left:0 !important;
        transform:translate3d(-105%,0,0) !important;
        visibility:hidden !important;
        opacity:1 !important;
        z-index:100000 !important;
        will-change:transform !important;
        backface-visibility:hidden !important;
        -webkit-backface-visibility:hidden !important;
        transform-style:preserve-3d !important;
        transition:transform .30s cubic-bezier(.2,.75,.25,1), visibility 0s linear .30s !important;
    }

    #bbs-dashboard.sw-dashboard-shell > .sw-sidebar.is-open{
        transform:translate3d(0,0,0) !important;
        visibility:visible !important;
    }

    #bbs-dashboard.sw-dashboard-shell > .sw-main-shell{
        width:100% !important;
        min-height:100vh !important;
        margin:0 !important;
        padding:0 !important;
    }

    #bbs-dashboard.sw-dashboard-shell > .sw-main-shell > .sw-header{
        position:sticky !important;
        top:0 !important;
        height:70px !important;
        margin:0 !important;
    }

    #bbs-dashboard.sw-dashboard-shell .sw-header-shell{
        height:70px !important;
        min-height:70px !important;
        padding:0 18px !important;
        display:flex !important;
        align-items:center !important;
        box-sizing:border-box !important;
    }

    #bbs-dashboard.sw-dashboard-shell .sw-header-left,
    #bbs-dashboard.sw-dashboard-shell .sw-header-right{
        align-items:center !important;
        height:100% !important;
    }

    #bbs-dashboard.sw-dashboard-shell .sw-header-menu{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        align-self:center !important;
        position:relative !important;
        top:auto !important;
        transform:none !important;
    }

    #bbs-dashboard.sw-dashboard-shell > .sw-main-shell > .sw-content{
        margin:0 !important;
        width:100% !important;
        box-sizing:border-box !important;
    }

    #bbs-dashboard.sw-dashboard-shell > .sw-sidebar-overlay{
        position:fixed !important;
        inset:0 !important;
        display:block !important;
        z-index:99999 !important;
        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;
    }

    #bbs-dashboard.sw-dashboard-shell > .sw-sidebar-overlay.is-active{
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }
}

@media (min-width:993px){
    #bbs-dashboard.sw-dashboard-shell > .sw-sidebar{
        transform:none !important;
        visibility:visible !important;
        opacity:1 !important;
    }

    #bbs-dashboard.sw-dashboard-shell > .sw-main-shell{
        margin-left:310px !important;
    }

    #bbs-dashboard.sw-dashboard-shell .sw-header-menu{
        display:none !important;
    }
}

/* Mobile sidebar stability: prevent viewport/scroll reflow while the drawer animates. */
@media (max-width:992px){
    body.bbs-sidebar-mobile-open{
        overflow:hidden !important;
        overscroll-behavior:none !important;
    }
    #bbs-dashboard.sw-dashboard-shell > .sw-sidebar{
        contain:layout paint style;
        touch-action:pan-y;
        overscroll-behavior:contain;
        -webkit-overflow-scrolling:touch;
    }
    #bbs-dashboard.sw-dashboard-shell > .sw-sidebar-overlay{
        touch-action:none;
    }
}



/* FINAL MOBILE DRAWER STABILITY FIX v2 */
@media (max-width:992px){
  html, body{
    overscroll-behavior-x:none !important;
  }
  body.bbs-sidebar-mobile-open{
    overflow:hidden !important;
    overscroll-behavior:none !important;
  }
  #bbs-dashboard.sw-dashboard-shell{
    overflow-x:hidden !important;
  }
  #bbs-dashboard.sw-dashboard-shell > .sw-sidebar{
    position:fixed !important;
    left:0 !important; top:0 !important; bottom:auto !important;
    width:min(310px,88vw) !important;
    height:100svh !important;
    max-height:100svh !important;
    margin:0 !important;
    transform:translateX(-105%) !important;
    visibility:hidden !important;
    opacity:1 !important;
    pointer-events:none !important;
    will-change:transform !important;
    backface-visibility:hidden !important;
    -webkit-backface-visibility:hidden !important;
    transform-style:flat !important;
    contain:layout paint !important;
    transition:transform .28s cubic-bezier(.22,.8,.25,1),visibility 0s linear .28s !important;
  }
  #bbs-dashboard.sw-dashboard-shell > .sw-sidebar.is-open{
    transform:translateX(0) !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transition:transform .28s cubic-bezier(.22,.8,.25,1),visibility 0s !important;
  }
  #bbs-dashboard.sw-dashboard-shell > .sw-sidebar-overlay{
    position:fixed !important; inset:0 !important;
    width:100vw !important; height:100svh !important;
    transform:none !important;
    z-index:99999 !important;
    touch-action:none !important;
    -webkit-tap-highlight-color:transparent !important;
  }
  #bbs-dashboard.sw-dashboard-shell > .sw-sidebar-overlay.is-active{
    pointer-events:auto !important;
  }
  #bbs-dashboard.sw-dashboard-shell > .sw-sidebar .sw-sidebar-nav{
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch !important;
  }
}



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

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

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

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

#balligo-bsoft-app-shell .bbs-content{
    width:100%;
}

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

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

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

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

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

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

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

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

#balligo-bsoft-app-shell .bbs-main{
    min-width:0;
}

#balligo-bsoft-app-shell .bbs-content{
    padding:24px;
}

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

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

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

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

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

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

#balligo-bsoft-app-shell .bbs-btn:hover,
#balligo-bsoft-app-shell .bbs-button:hover,
#balligo-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(--bbs-premium-line) !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,#fff,#f9fcfb) !important;
    box-shadow:var(--bbs-premium-shadow) !important;
    overflow:hidden;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.bbs-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(--bbs-premium-primary-dark),var(--bbs-premium-primary),var(--bbs-premium-secondary)) !important;
}

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

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

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

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

.bbs-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(--bbs-premium-primary-dark),var(--bbs-premium-primary),var(--bbs-premium-secondary)) !important;
}

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

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

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

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

.bbsoft-dashboard-card,
.balligo-module-card{
    box-shadow:var(--bbs-premium-shadow) !important;
}

.bbsoft-dashboard h1,
.balligo-admin-box h2,
.bbsoft-dashboard-box h2{
    text-transform:capitalize;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



/* ============================================================
   BALLIGO BSOFT — PREMIUM BLUE + PURPLE VISUAL SYSTEM
   VISUAL ONLY / NO FUNCTION OR LOGIC CHANGE
   ============================================================ */
:root{
    --bbs-premium-primary:#2563eb;
    --bbs-premium-primary-dark:#4338ca;
    --bbs-premium-secondary:#7c3aed;
    --bbs-premium-accent:#8b5cf6;
    --bbs-premium-soft:#f5f7ff;
    --bbs-premium-soft-2:#eef2ff;
    --bbs-premium-ink:#172033;
    --bbs-premium-muted:#68758a;
    --bbs-premium-line:#dfe4f2;
    --bbs-premium-white:#fff;
    --bbs-premium-shadow:0 14px 42px rgba(57,66,120,.10);
    --bbs-gradient:linear-gradient(135deg,#2563eb 0%,#4f46e5 48%,#7c3aed 100%);
    --bbs-gradient-soft:linear-gradient(135deg,#eef5ff 0%,#f4f0ff 100%);
}

/* Global canvas */
html.balligo-bsoft-app-mode,
body.balligo-bsoft-app-mode{background:#f6f7fc !important;}
#balligo-bsoft-app-shell{background:linear-gradient(145deg,#f7faff 0%,#f5f3ff 100%) !important;}
#balligo-bsoft-app-shell .bbs-dashboard,
#balligo-bsoft-app-shell .bbs-main,
#balligo-bsoft-app-shell .bbs-content{box-sizing:border-box;}
#balligo-bsoft-app-shell .bbs-content{width:100%;}

/* Shared shell/cards */
#balligo-bsoft-app-shell .bbs-header,
#balligo-bsoft-app-shell .bbs-card,
#balligo-bsoft-app-shell .bbs-panel,
#balligo-bsoft-app-shell .bbs-section,
#balligo-bsoft-app-shell .bbs-overview-card,
#balligo-bsoft-app-shell .bbs-wallet-card,
#balligo-bsoft-app-shell .bbs-transaction-card,
#balligo-bsoft-app-shell .bbs-service-card,
#balligo-bsoft-app-shell .bbs-wallet-form,
#balligo-bsoft-app-shell .bbs-wallet-panel,
#balligo-bsoft-app-shell .bbs-checkout,
#balligo-bsoft-app-shell .bbs-checkout-section,
#balligo-bsoft-app-shell .bbs-checkout-card,
#balligo-bsoft-app-shell .bbs-pm-settings-form,
#balligo-bsoft-app-shell .bbs-pm-card,
#balligo-bsoft-app-shell .bbs-pm-section,
#balligo-bsoft-app-shell .bbs-profile-card,
#balligo-bsoft-app-shell .bbs-profile-section,
#balligo-bsoft-app-shell .bbs-profile-form-card,
#balligo-bsoft-app-shell .bbs-ledger-card,
.bbs-donation-panel,
.bbs-dashboard-campaign,
.bbs-campaign-form,
.bbs-builder-field,
.bbs-builder-section__header,
.bbs-approved-campaign-card,
.account-card,
.bbsoft-dashboard-card,
.balligo-module-card{border:1px solid var(--bbs-premium-line) !important;border-radius:16px !important;box-shadow:var(--bbs-premium-shadow) !important;}

#balligo-bsoft-app-shell .bbs-header,
#balligo-bsoft-app-shell .bbs-wallet-header,
#balligo-bsoft-app-shell .bbs-checkout-head,
#balligo-bsoft-app-shell .bbs-pm-settings-hero,
#balligo-bsoft-app-shell .bbs-pm-hero-main,
#balligo-bsoft-app-shell .bbs-profile-header,
#balligo-bsoft-app-shell .bbs-ledger-header,
.bbs-donation-hero,
.bbs-approved-campaigns__header,
.bbs-campaign-builder__header{
    background:var(--bbs-gradient) !important;
    color:#fff !important;
    border-color:rgba(255,255,255,.18) !important;
    border-radius:16px !important;
    box-shadow:0 16px 42px rgba(79,70,229,.20) !important;
}

/* Forms */
#balligo-bsoft-app-shell input,
#balligo-bsoft-app-shell select,
#balligo-bsoft-app-shell textarea,
.bbs-donation-wrap input,
.bbs-donation-wrap select,
.bbs-donation-wrap textarea,
.bbs-campaign-builder input,
.bbs-campaign-builder select,
.bbs-campaign-builder textarea,
.bbs-form-control{
    border:1px solid #d9dfed !important;
    border-radius:12px !important;
    background:#fff !important;
    color:var(--bbs-premium-ink) !important;
    box-shadow:0 4px 14px rgba(57,66,120,.035) !important;
}
#balligo-bsoft-app-shell input:focus,
#balligo-bsoft-app-shell select:focus,
#balligo-bsoft-app-shell textarea:focus,
.bbs-donation-wrap input:focus,
.bbs-donation-wrap select:focus,
.bbs-donation-wrap textarea:focus,
.bbs-campaign-builder input:focus,
.bbs-campaign-builder select:focus,
.bbs-campaign-builder textarea:focus,
.bbs-form-control:focus{
    border-color:#6366f1 !important;
    box-shadow:0 0 0 4px rgba(99,102,241,.12) !important;
    outline:none !important;
}

/* Buttons */
#balligo-bsoft-app-shell button,
#balligo-bsoft-app-shell .bbs-btn,
#balligo-bsoft-app-shell .bbs-button,
#balligo-bsoft-app-shell button[type="submit"],
.bbs-login-card button,
.bbs-register-card button,
.bbs-auth-card button,
.bbs-auth-wrapper button,
.bbs-donation-wrap button,
.bbs-campaign-builder button,
.bbs-campaign-form__footer .bbs-donation-submit,
.bbsoft-dashboard .button,
.balligo-admin-box .button,
.bbsoft-dashboard-box .button{
    border-radius:11px !important;
    border:0 !important;
    background:var(--bbs-gradient) !important;
    color:#fff !important;
    font-weight:800 !important;
    box-shadow:0 8px 20px rgba(79,70,229,.18) !important;
    text-shadow:none !important;
    -webkit-text-fill-color:#fff !important;
}
#balligo-bsoft-app-shell button:hover,
#balligo-bsoft-app-shell .bbs-btn:hover,
#balligo-bsoft-app-shell .bbs-button:hover,
.bbs-login-card button:hover,
.bbs-register-card button:hover,
.bbs-auth-card button:hover,
.bbs-auth-wrapper button:hover,
.bbs-donation-wrap button:hover,
.bbs-campaign-builder button:hover,
.bbsoft-dashboard .button:hover,
.balligo-admin-box .button:hover,
.bbsoft-dashboard-box .button:hover{filter:brightness(1.04);transform:translateY(-1px);}

/* Dashboard / sidebar */
#bbs-dashboard.sw-dashboard-shell{background:linear-gradient(145deg,#f7faff 0%,#f6f3ff 100%) !important;color:var(--bbs-premium-ink) !important;}
.sw-sidebar-shell{background:linear-gradient(160deg,#111b4b 0%,#20205d 48%,#35166b 100%) !important;}
.sw-sidebar-item{color:#dce5ff !important;border-radius:11px !important;}
.sw-sidebar-item:hover{background:rgba(124,92,246,.16) !important;color:#fff !important;}
.sw-sidebar-item.is-active{background:var(--bbs-gradient) !important;color:#fff !important;box-shadow:0 10px 26px rgba(79,70,229,.25) !important;}
.sw-sidebar-item.is-active .sw-sidebar-icon{background:rgba(255,255,255,.16) !important;color:#fff !important;}
.sw-sidebar-icon{border-radius:9px !important;}
.sw-sidebar-section-label{color:#aebcf0 !important;}
.sw-sidebar-logout,.sw-sidebar-logout .sw-sidebar-icon{color:#c7b7ff !important;}
.sw-sidebar-logout:hover{background:rgba(124,92,246,.12) !important;color:#fff !important;}

/* Dashboard content */
#balligo-bsoft-app-shell .bbs-content{padding:24px !important;}
#balligo-bsoft-app-shell .bbs-page-title,
#balligo-bsoft-app-shell .bbs-content h1,
#balligo-bsoft-app-shell .bbs-content h2{color:#18213f !important;font-weight:900;}
#balligo-bsoft-app-shell .bbs-menu a{border-radius:10px !important;}
#balligo-bsoft-app-shell .bbs-menu li.active a{background:linear-gradient(135deg,rgba(37,99,235,.10),rgba(124,58,237,.12)) !important;color:#4338ca !important;}

/* Login / register / auth */
.bbs-login-wrapper,
.bbs-register-wrapper,
.bbs-auth-wrapper{
    background:
        radial-gradient(circle at 10% 10%,rgba(37,99,235,.16),transparent 32%),
        radial-gradient(circle at 90% 85%,rgba(124,58,237,.16),transparent 34%),
        linear-gradient(135deg,#f7faff 0%,#eef4ff 46%,#f7f1ff 100%) !important;
}
.bbs-login-card,
.bbs-register-card,
.bbs-auth-card{
    border:1px solid rgba(99,102,241,.14) !important;
    border-radius:20px !important;
    box-shadow:0 24px 65px rgba(55,65,130,.14) !important;
    background:rgba(255,255,255,.88) !important;
    backdrop-filter:blur(14px);
}
.bbs-login-card h1,.bbs-login-card h2,.bbs-register-card h1,.bbs-register-card h2,.bbs-auth-card h1,.bbs-auth-card h2{color:#1b2450 !important;}
.bbs-login-card input,.bbs-register-card input,.bbs-auth-card input{border-radius:12px !important;}

/* Account / profile / wallet */
.account-card{background:linear-gradient(180deg,#fff,#faf9ff) !important;}
.account-card:before{background:var(--bbs-gradient) !important;}
.account-card .upgrade-btn{background:var(--bbs-gradient) !important;color:#fff !important;}
.bbs-wallet-header,.bbs-checkout-head{background:var(--bbs-gradient) !important;}
.bbs-wallet-balance,.bbs-wallet-logo,.bbs-wallet-form-icon{border-radius:12px !important;}
.bbs-profile-container,.bbs-profile-wrapper,.bbs-ledger-wrapper{border-radius:16px !important;}

/* Donation / campaigns */
.bbs-donation-hero,.bbs-approved-campaigns__header,.bbs-campaign-builder__header{background:var(--bbs-gradient) !important;}
.bbs-donation-btn,.bbs-dashboard-actions .bbs-donation-btn,.bbs-approved-campaign-view{border-radius:11px !important;}
.bbs-campaign-form__footer .bbs-donation-submit{background:var(--bbs-gradient) !important;}
.bbs-option-card,.bbs-builder-section,.bbs-premium-taxonomy-field,.bbs-taxonomy-manager{border-radius:13px !important;border-color:var(--bbs-premium-line) !important;}

/* Status / accents */
.bbs-status-success,.sw-status-success{color:#0f8a62 !important;}
.bbs-status-primary,.sw-status-primary{color:#4f46e5 !important;}
.bbs-status-warning{color:#b7791f !important;}
.bbs-link,.bbs-section-head a,.bbs-section-link,.bbs-panel-head>a{color:#4f46e5 !important;}

/* Tables */
.bbs-donation-table,.bbs-ledger-table,.bbs-table,.bbsoft-dashboard table{border-radius:12px !important;overflow:hidden;border-color:var(--bbs-premium-line) !important;}
.bbs-donation-table th,.bbs-ledger-table th,.bbs-table th,.bbsoft-dashboard th{background:linear-gradient(135deg,#eef4ff,#f3efff) !important;color:#34406d !important;}

/* Admin */
.bbsoft-dashboard,
.balligo-admin-box,
.bbsoft-dashboard-box{max-width:1240px !important;margin:0 auto !important;}
.bbsoft-dashboard h1{color:#18213f !important;}
.bbsoft-dashboard-card,.balligo-module-card{background:#fff !important;border:1px solid var(--bbs-premium-line) !important;border-radius:16px !important;box-shadow:var(--bbs-premium-shadow) !important;}
.bbsoft-dashboard-card:hover,.balligo-module-card:hover{border-color:#c7cdf0 !important;box-shadow:0 20px 48px rgba(57,66,120,.13) !important;}
.bbsoft-dashboard .button-primary,.bbsoft-dashboard .button.button-primary,.balligo-admin-box .button-primary{background:var(--bbs-gradient) !important;border-color:transparent !important;color:#fff !important;}
.bbsoft-dashboard input,.bbsoft-dashboard select,.bbsoft-dashboard textarea,.balligo-admin-box input,.balligo-admin-box select,.balligo-admin-box textarea{border:1px solid #d9dfed !important;border-radius:10px !important;}
.bbsoft-dashboard input:focus,.bbsoft-dashboard select:focus,.bbsoft-dashboard textarea:focus,.balligo-admin-box input:focus,.balligo-admin-box select:focus,.balligo-admin-box textarea:focus{border-color:#6366f1 !important;box-shadow:0 0 0 3px rgba(99,102,241,.10) !important;outline:none !important;}

/* Hidden scrollbars, scrolling remains functional */
html,body,#balligo-bsoft-app-shell,#balligo-bsoft-app-shell *,#bbs-dashboard.sw-dashboard-shell,.sw-sidebar-shell,.sw-sidebar-nav{scrollbar-width:none !important;-ms-overflow-style:none !important;}
html::-webkit-scrollbar,body::-webkit-scrollbar,#balligo-bsoft-app-shell::-webkit-scrollbar,#balligo-bsoft-app-shell *::-webkit-scrollbar,#bbs-dashboard.sw-dashboard-shell::-webkit-scrollbar,.sw-sidebar-shell::-webkit-scrollbar,.sw-sidebar-nav::-webkit-scrollbar{width:0 !important;height:0 !important;display:none !important;}

@media(max-width:680px){
    #balligo-bsoft-app-shell .bbs-content{padding:12px !important;}
    #balligo-bsoft-app-shell .bbs-card,#balligo-bsoft-app-shell .bbs-panel,#balligo-bsoft-app-shell .bbs-service-card,.account-card,.bbs-approved-campaign-card,.bbs-dashboard-campaign{border-radius:14px !important;}
    .bbs-login-card,.bbs-register-card,.bbs-auth-card{border-radius:16px !important;}
}
