/* CashReclaim Banking Plugin CSS */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root{--crb-navy:#0d1b4b;--crb-blue:#1e3a8a;--crb-accent:#3b82f6;--crb-green:#10b981;--crb-red:#ef4444;--crb-yellow:#f59e0b;--crb-purple:#8b5cf6;--crb-bg:#f0f4f8;--crb-card:#fff;--crb-border:#e2e8f0;--crb-text:#1e293b;--crb-muted:#64748b;--crb-sidebar:230px;--crb-r:12px;}
*{box-sizing:border-box;}
#crb-banking-app,#crb-auth-wrap{font-family:'DM Sans',sans-serif;color:var(--crb-text);line-height:1.5;}
#crb-banking-app{display:flex;min-height:80vh;background:var(--crb-bg);}
#crb-banking-app *{box-sizing:border-box;}

/* AUTH */
.crb-auth-page{display:flex;justify-content:center;align-items:flex-start;padding:40px 16px;background:linear-gradient(135deg,#0d1b4b,#1e3a8a,#1d4ed8);min-height:80vh;}
.crb-auth-box{background:#fff;border-radius:18px;width:100%;max-width:440px;padding:40px;box-shadow:0 20px 60px rgba(0,0,0,.22);}
.crb-auth-box--wide{max-width:540px;}
.crb-auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:28px;}
.crb-logo-icon{width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,var(--crb-navy),var(--crb-accent));display:flex;align-items:center;justify-content:center;}
.crb-logo-text span{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1rem;color:var(--crb-navy);display:block;}
.crb-logo-text small{color:var(--crb-muted);font-size:.7rem;}
.crb-auth-box h2{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.5rem;color:var(--crb-navy);margin:0 0 4px;}
.crb-sub{color:var(--crb-muted);font-size:.88rem;margin:0 0 24px;}
.crb-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:.84rem;margin-bottom:14px;}
.crb-form-group,.crb-fg{margin-bottom:16px;}
.crb-form-group label,.crb-fg label{display:block;font-size:.82rem;font-weight:600;color:var(--crb-text);margin-bottom:5px;}
.crb-form-group input,.crb-form-group select,.crb-fg input,.crb-fg select,.crb-fg textarea{width:100%;padding:10px 13px;border:1.5px solid var(--crb-border);border-radius:8px;font-size:.9rem;font-family:'DM Sans',sans-serif;color:var(--crb-text);background:#fafafa;transition:border .2s;outline:none;}
.crb-form-group input:focus,.crb-fg input:focus,.crb-fg select:focus,.crb-fg textarea:focus{border-color:var(--crb-accent);background:#fff;}
.crb-fg textarea{resize:vertical;min-height:72px;}
.crb-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.crb-btn-primary{width:100%;padding:12px;background:linear-gradient(135deg,var(--crb-navy),var(--crb-blue));color:#fff;border:none;border-radius:9px;font-size:.92rem;font-weight:600;font-family:'DM Sans',sans-serif;cursor:pointer;transition:opacity .2s;}
.crb-btn-primary:hover{opacity:.88;}
.crb-auth-links{margin-top:16px;display:flex;flex-direction:column;gap:6px;font-size:.84rem;}
.crb-auth-links a{color:var(--crb-accent);text-decoration:none;font-weight:500;}
.crb-auth-links a:hover{text-decoration:underline;}

/* SIDEBAR */
.crb-sidebar{width:var(--crb-sidebar);background:var(--crb-navy);position:fixed;top:0;left:0;height:100vh;z-index:200;display:flex;flex-direction:column;overflow-y:auto;}
.crb-sb-logo{padding:18px 18px 14px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:10px;}
.crb-logo-icon-sm{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--crb-accent),#60a5fa);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.crb-bank-name{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.92rem;color:#fff;display:block;}
.crb-sb-logo small{font-size:.65rem;color:rgba(255,255,255,.45);}
.crb-sb-user{padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.crb-sb-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--crb-accent),var(--crb-purple));display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:.8rem;flex-shrink:0;}
.crb-sb-name{font-weight:600;color:#fff;font-size:.82rem;}
.crb-sb-id{font-size:.68rem;color:rgba(255,255,255,.4);}
.crb-kyc-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:.68rem;font-weight:700;cursor:pointer;background:rgba(239,68,68,.15);color:#fca5a5;border:1px solid rgba(239,68,68,.3);margin-top:4px;flex-shrink:0;}
.crb-kyc-badge.verified{background:rgba(16,185,129,.15);color:#6ee7b7;border-color:rgba(16,185,129,.3);}
.crb-kyc-badge.pending{background:rgba(245,158,11,.15);color:#fcd34d;border-color:rgba(245,158,11,.3);}
.crb-nav{flex:1;padding:8px 0;}
.crb-nav-label{font-size:.62rem;font-weight:700;letter-spacing:.1em;color:rgba(255,255,255,.3);padding:10px 18px 3px;text-transform:uppercase;}
.crb-nav-item{display:flex;align-items:center;gap:11px;padding:9px 18px;cursor:pointer;color:rgba(255,255,255,.55);font-size:.84rem;font-weight:500;transition:background .15s;position:relative;}
.crb-nav-item svg{width:16px;height:16px;stroke:currentColor;flex-shrink:0;}
.crb-nav-item:hover{background:rgba(255,255,255,.06);color:rgba(255,255,255,.85);}
.crb-nav-item.active{background:rgba(59,130,246,.18);color:#fff;}
.crb-nav-item.active::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--crb-accent);border-radius:0 3px 3px 0;}
.crb-sb-footer{padding:14px 18px;border-top:1px solid rgba(255,255,255,.08);}
.crb-btn-logout{width:100%;padding:8px;border-radius:8px;background:rgba(239,68,68,.15);color:#fca5a5;border:1px solid rgba(239,68,68,.25);font-size:.78rem;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;}
.crb-btn-logout:hover{background:rgba(239,68,68,.25);}
.crb-secure-badge{display:flex;align-items:center;gap:5px;margin-top:10px;color:rgba(255,255,255,.3);font-size:.67rem;}

/* MAIN */
.crb-main{margin-left:var(--crb-sidebar);flex:1;display:flex;flex-direction:column;min-height:80vh;}
.crb-topbar{background:#fff;border-bottom:1px solid var(--crb-border);padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;}
.crb-menu-toggle{display:none;background:none;border:none;font-size:1.4rem;cursor:pointer;color:var(--crb-navy);padding:4px;}
.crb-topbar-date{color:var(--crb-muted);font-size:.83rem;}
.crb-topbar-right{display:flex;align-items:center;gap:10px;}
.crb-topbar-bal{background:var(--crb-navy);color:#fff;padding:5px 14px;border-radius:999px;font-size:.8rem;font-weight:600;}
.crb-notif-btn{width:34px;height:34px;border-radius:50%;background:var(--crb-bg);border:1px solid var(--crb-border);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;}
.crb-notif-dot{width:8px;height:8px;background:var(--crb-red);border-radius:50%;position:absolute;top:5px;right:5px;border:2px solid #fff;}
.crb-topbar-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--crb-accent),var(--crb-purple));display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:.78rem;}

/* PAGES */
.crb-pages{padding:24px;flex:1;}
.crb-page{display:none;}
.crb-page.active{display:block;}
.crb-page-header{margin-bottom:22px;}
.crb-page-header h2{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.4rem;color:var(--crb-navy);margin:0 0 4px;}
.crb-page-header p{color:var(--crb-muted);font-size:.85rem;margin:0;}

/* STAT CARDS */
.crb-stat-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px;}
.crb-sc{background:#fff;border-radius:var(--crb-r);padding:16px 18px;border:1px solid var(--crb-border);display:flex;justify-content:space-between;align-items:center;}
.crb-sc--highlight{background:linear-gradient(135deg,#dbeafe,#eff6ff);border-color:#bfdbfe;}
.crb-sc-label{font-size:.73rem;color:var(--crb-muted);margin-bottom:4px;}
.crb-sc-val{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1.1rem;}
.crb-green{color:var(--crb-green);} .crb-red{color:var(--crb-red);} .crb-purple{color:var(--crb-purple);}
.crb-sc-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;}
.crb-sc-icon svg{width:18px;height:18px;stroke:currentColor;}
.crb-sc-icon--blue{background:#dbeafe;color:var(--crb-accent);}
.crb-sc-icon--green{background:#d1fae5;color:var(--crb-green);}
.crb-sc-icon--red{background:#fee2e2;color:var(--crb-red);}
.crb-sc-icon--purple{background:#ede9fe;color:var(--crb-purple);}

/* DASH GRID */
.crb-dash-grid{display:grid;grid-template-columns:1fr 300px;gap:18px;}
.crb-balance-card{background:linear-gradient(135deg,#0d1b4b,#1e3a8a,#1d4ed8);border-radius:var(--crb-r);padding:24px;color:#fff;position:relative;overflow:hidden;margin-bottom:18px;}
.crb-bc-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;}
.crb-bc-greeting{font-size:.8rem;opacity:.7;}
.crb-bc-name{font-size:.95rem;font-weight:600;}
.crb-clock{font-family:'Space Grotesk',sans-serif;font-size:1.3rem;font-weight:700;text-align:right;}
.crb-clock-date{font-size:.72rem;opacity:.6;text-align:right;}
.crb-bc-label{font-size:.76rem;opacity:.65;margin-bottom:5px;}
.crb-bc-amount{display:flex;align-items:center;gap:10px;font-family:'Space Grotesk',sans-serif;font-size:2rem;font-weight:700;margin-bottom:18px;}
.crb-eye{cursor:pointer;opacity:.6;transition:opacity .2s;}
.crb-eye:hover{opacity:1;}
.crb-bc-bottom{background:rgba(255,255,255,.1);border-radius:9px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.crb-bc-acc-label{font-size:.7rem;opacity:.65;display:flex;align-items:center;gap:6px;}
.crb-bc-acc-num{font-family:'Space Grotesk',sans-serif;font-size:.95rem;font-weight:600;margin-top:2px;}
.crb-status-dot{display:inline-flex;align-items:center;gap:3px;background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.4);color:#fca5a5;font-size:.67rem;padding:2px 7px;border-radius:999px;}
.crb-status-dot.active{background:rgba(16,185,129,.2);border-color:rgba(16,185,129,.4);color:#6ee7b7;}
.crb-bc-btns{display:flex;gap:8px;}
.crb-bc-btns button{display:flex;align-items:center;gap:5px;padding:7px 14px;border-radius:7px;border:1.5px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff;font-size:.78rem;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;transition:background .2s;}
.crb-bc-btns button:hover{background:rgba(255,255,255,.16);}

/* QUICK ACTIONS */
.crb-section-title{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.95rem;color:var(--crb-text);margin-bottom:4px;}
.crb-section-sub{font-size:.8rem;color:var(--crb-muted);margin-bottom:14px;}
.crb-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:20px;}
.crb-qa{background:#fff;border:1px solid var(--crb-border);border-radius:var(--crb-r);padding:16px 10px;text-align:center;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s;}
.crb-qa:hover{border-color:var(--crb-accent);box-shadow:0 4px 14px rgba(59,130,246,.1);}
.crb-qa--active{background:linear-gradient(135deg,var(--crb-blue),var(--crb-accent));color:#fff;border-color:transparent;}
.crb-qa-icon{font-size:1.5rem;margin-bottom:7px;}

/* CARD / TABLE */
.crb-card{background:#fff;border:1px solid var(--crb-border);border-radius:var(--crb-r);padding:18px;}
.crb-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;}
.crb-card-title{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.9rem;}
.crb-link{font-size:.8rem;color:var(--crb-accent);cursor:pointer;font-weight:600;}
.crb-txn-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--crb-border);}
.crb-txn-item:last-child{border-bottom:none;}
.crb-txn-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;}
.crb-txn-icon.credit{background:#d1fae5;}
.crb-txn-icon.debit{background:#fee2e2;}
.crb-txn-info{flex:1;}
.crb-txn-name{font-weight:600;font-size:.85rem;}
.crb-txn-date{font-size:.73rem;color:var(--crb-muted);}
.crb-txn-amt{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.88rem;text-align:right;}
.crb-txn-amt.credit{color:var(--crb-green);}
.crb-txn-amt.debit{color:var(--crb-red);}
.crb-txn-status{font-size:.68rem;padding:2px 7px;border-radius:999px;font-weight:600;}
.crb-txn-status.completed{background:#d1fae5;color:var(--crb-green);}
.crb-txn-status.pending{background:#fef3c7;color:var(--crb-yellow);}
.crb-txn-status.failed{background:#fee2e2;color:var(--crb-red);}

/* RIGHT PANEL */
.crb-stat-row{display:flex;align-items:center;gap:11px;margin-bottom:12px;}
.crb-stat-row:last-child{margin-bottom:0;}
.crb-sr-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.crb-sr-blue{background:#dbeafe;color:var(--crb-accent);}
.crb-sr-yellow{background:#fef3c7;color:var(--crb-yellow);}
.crb-sr-green{background:#d1fae5;color:var(--crb-green);}
.crb-sr-purple{background:#ede9fe;color:var(--crb-purple);}
.crb-sr-label{font-size:.72rem;color:var(--crb-muted);}
.crb-sr-val{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.88rem;}
.crb-qt-item{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid var(--crb-border);cursor:pointer;}
.crb-qt-item:last-child{border-bottom:none;}
.crb-qt-av{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--crb-accent),var(--crb-purple));color:#fff;font-weight:700;font-size:.78rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.crb-qt-name{font-weight:600;font-size:.84rem;}
.crb-qt-sub{font-size:.72rem;color:var(--crb-green);}

/* TRANSACTIONS TABLE */
.crb-filter-bar{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;}
.crb-filter{padding:6px 16px;border-radius:999px;font-size:.8rem;font-weight:600;cursor:pointer;border:1.5px solid var(--crb-border);background:#fff;color:var(--crb-muted);font-family:'DM Sans',sans-serif;transition:all .2s;}
.crb-filter.active,.crb-filter:hover{background:var(--crb-navy);color:#fff;border-color:var(--crb-navy);}
.crb-table-wrap{background:#fff;border:1px solid var(--crb-border);border-radius:var(--crb-r);overflow:auto;}
.crb-table{width:100%;border-collapse:collapse;font-size:.84rem;}
.crb-table thead tr{background:var(--crb-bg);}
.crb-table th{padding:12px 16px;text-align:left;font-size:.72rem;font-weight:700;color:var(--crb-muted);text-transform:uppercase;letter-spacing:.04em;}
.crb-table td{padding:12px 16px;border-top:1px solid var(--crb-border);}
.crb-table tr:hover td{background:#fafbfc;}
.crb-badge{display:inline-flex;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:700;}
.crb-badge.credit{background:#d1fae5;color:var(--crb-green);}
.crb-badge.debit{background:#fee2e2;color:var(--crb-red);}
.crb-badge.completed{background:#d1fae5;color:var(--crb-green);}
.crb-badge.pending{background:#fef3c7;color:var(--crb-yellow);}
.crb-badge.failed{background:#fee2e2;color:var(--crb-red);}

/* CARDS */
.crb-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,340px));gap:18px;}
.crb-vcard{border-radius:14px;padding:24px;color:#fff;position:relative;overflow:hidden;min-height:170px;cursor:pointer;}
.crb-vcard--blue{background:linear-gradient(135deg,#0d1b4b,#1d4ed8);}
.crb-chip{width:34px;height:26px;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:5px;margin-bottom:18px;}
.crb-card-num{font-family:'Space Grotesk',sans-serif;font-size:1rem;letter-spacing:.13em;margin-bottom:12px;opacity:.9;}
.crb-card-bottom{display:flex;justify-content:space-between;align-items:flex-end;}
.crb-card-holder{font-weight:600;font-size:.82rem;}
.crb-exp-label{font-size:.62rem;opacity:.6;}
.crb-card-brand{position:absolute;top:18px;right:18px;font-size:.55rem;letter-spacing:.08em;opacity:.7;}
.crb-detail-list{margin-top:14px;}
.crb-dl-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--crb-border);font-size:.85rem;}
.crb-dl-row:last-child{border-bottom:none;}
.crb-dl-row span:first-child{color:var(--crb-muted);}
.crb-dl-row--total{font-weight:700;font-size:.9rem;border-top:1px solid var(--crb-border);}

/* TRANSFER */
.crb-transfer-grid{display:grid;grid-template-columns:1fr 300px;gap:20px;}
.crb-form-card{background:#fff;border:1px solid var(--crb-border);border-radius:var(--crb-r);padding:24px;}
.crb-form-card h3{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:1rem;color:var(--crb-navy);margin:0 0 16px;}
.crb-summary-card{background:#fff;border:1px solid var(--crb-border);border-radius:var(--crb-r);padding:20px;}
.crb-bank-details{background:#f0f9ff;border:1px solid #bae6fd;border-radius:9px;padding:14px;margin-bottom:16px;font-size:.82rem;}
.crb-bank-details strong{font-size:.88rem;color:var(--crb-navy);display:block;margin-bottom:8px;}
.crb-bd-grid{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;color:var(--crb-muted);}
.crb-bd-grid strong{color:var(--crb-text);}
.crb-alert{padding:12px 14px;border-radius:9px;font-size:.82rem;margin-top:14px;}
.crb-alert--warn{background:#fef3c7;border:1px solid #fcd34d;color:#92400e;}

/* DEPOSIT METHODS */
.crb-dep-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:22px;}
.crb-dep-method{background:#fff;border:2px solid var(--crb-border);border-radius:var(--crb-r);padding:18px;text-align:center;cursor:pointer;transition:all .2s;}
.crb-dep-method:hover,.crb-dep-method.selected{border-color:var(--crb-accent);background:#eff6ff;}
.crb-dep-method h4{font-weight:700;font-size:.85rem;color:var(--crb-navy);margin:8px 0 3px;}
.crb-dep-method p{font-size:.75rem;color:var(--crb-muted);margin:0;}

/* LOANS */
.crb-loan-types{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px;}
.crb-loan-type{background:#fff;border:2px solid var(--crb-border);border-radius:var(--crb-r);padding:18px;cursor:pointer;transition:all .2s;}
.crb-loan-type:hover,.crb-loan-type.selected{border-color:var(--crb-accent);background:#eff6ff;}
.crb-lt-icon{font-size:1.8rem;margin-bottom:10px;}
.crb-loan-type h3{font-weight:700;font-size:.9rem;color:var(--crb-navy);margin:0 0 5px;}
.crb-loan-type p{font-size:.78rem;color:var(--crb-muted);margin:0 0 10px;}
.crb-lt-rate{font-family:'Space Grotesk',sans-serif;font-weight:700;color:var(--crb-green);font-size:1rem;}
.crb-loan-calc{background:#f0f9ff;border:1px solid #bae6fd;border-radius:9px;padding:14px;margin-bottom:16px;}

/* KYC */
.crb-kyc-status{padding:16px;border-radius:var(--crb-r);margin-bottom:18px;font-size:.9rem;}
.crb-kyc-status.none,.crb-kyc-status.empty{background:#fef3c7;border:1px solid #fcd34d;color:#92400e;}
.crb-kyc-status.pending{background:#dbeafe;border:1px solid #93c5fd;color:#1e3a8a;}
.crb-kyc-status.verified{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;}
.crb-kyc-status.rejected{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;}

/* SETTINGS */
.crb-settings-grid{display:grid;grid-template-columns:200px 1fr;gap:18px;}
.crb-settings-nav{background:#fff;border:1px solid var(--crb-border);border-radius:var(--crb-r);padding:8px;height:fit-content;}
.crb-sn{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;color:var(--crb-muted);transition:all .15s;}
.crb-sn:hover{background:var(--crb-bg);}
.crb-sn.active{background:#dbeafe;color:var(--crb-accent);}
.crb-settings-panel{background:#fff;border:1px solid var(--crb-border);border-radius:var(--crb-r);padding:24px;}
.crb-toggle-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--crb-border);}
.crb-toggle-row:last-child{border-bottom:none;}
.crb-toggle-row h4{font-size:.87rem;font-weight:600;margin:0 0 2px;}
.crb-toggle-row p{font-size:.76rem;color:var(--crb-muted);margin:0;}
.crb-toggle{width:42px;height:22px;border-radius:999px;background:#e2e8f0;position:relative;cursor:pointer;transition:background .2s;flex-shrink:0;}
.crb-toggle.on{background:var(--crb-accent);}
.crb-toggle::after{content:'';width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:3px;left:3px;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.2);}
.crb-toggle.on::after{transform:translateX(20px);}

/* SUPPORT */
.crb-support-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.crb-contact-list{margin-top:12px;font-size:.85rem;display:flex;flex-direction:column;gap:8px;color:var(--crb-muted);}
.crb-ticket-item{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid var(--crb-border);}
.crb-ticket-item:last-child{border-bottom:none;}
.crb-ticket-title{font-weight:600;font-size:.85rem;}
.crb-ticket-meta{font-size:.73rem;color:var(--crb-muted);}

/* NOTIFICATION */
.crb-notif-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--crb-border);}
.crb-notif-item:last-child{border-bottom:none;}
.crb-notif-item.unread{background:#f0f9ff;}
.crb-notif-dot2{width:8px;height:8px;border-radius:50%;background:var(--crb-accent);flex-shrink:0;margin-top:5px;}
.crb-notif-title{font-weight:600;font-size:.85rem;}
.crb-notif-msg{font-size:.8rem;color:var(--crb-muted);}
.crb-notif-time{font-size:.72rem;color:var(--crb-muted);margin-top:2px;}

/* TOAST */
.crb-toast{position:fixed;bottom:22px;right:22px;padding:11px 18px;border-radius:10px;font-size:.86rem;font-weight:500;z-index:9999;transform:translateY(60px);opacity:0;transition:all .3s;pointer-events:none;background:var(--crb-navy);color:#fff;}
.crb-toast.show{transform:translateY(0);opacity:1;}
.crb-toast.success{background:var(--crb-green);}
.crb-toast.error{background:var(--crb-red);}

/* FOOTER */
.crb-footer{background:#fff;border-top:1px solid var(--crb-border);padding:12px 24px;display:flex;justify-content:space-between;font-size:.76rem;color:var(--crb-muted);}
.crb-footer a{color:var(--crb-muted);text-decoration:none;}
.crb-footer a:hover{color:var(--crb-accent);}

/* SPINNER */
.crb-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:crb-spin .7s linear infinite;vertical-align:middle;margin-right:6px;}
@keyframes crb-spin{to{transform:rotate(360deg)}}

/* EMPTY STATE */
.crb-empty{text-align:center;padding:36px;color:var(--crb-muted);font-size:.88rem;}
.crb-empty-icon{font-size:2.5rem;margin-bottom:10px;}

/* RESPONSIVE */
@media(max-width:900px){
  .crb-stat-cards{grid-template-columns:repeat(2,1fr);}
  .crb-dash-grid{grid-template-columns:1fr;}
  .crb-dash-right{display:none;}
  .crb-transfer-grid{grid-template-columns:1fr;}
  .crb-loan-types{grid-template-columns:repeat(2,1fr);}
  .crb-support-grid{grid-template-columns:1fr;}
}
@media(max-width:700px){
  .crb-sidebar{transform:translateX(-100%);transition:transform .3s;}
  .crb-sidebar.open{transform:translateX(0);}
  .crb-main{margin-left:0;}
  .crb-menu-toggle{display:block;}
  .crb-stat-cards{grid-template-columns:1fr 1fr;}
  .crb-quick-actions{grid-template-columns:repeat(2,1fr);}
  .crb-form-row{grid-template-columns:1fr;}
  .crb-settings-grid{grid-template-columns:1fr;}
  .crb-dep-methods{grid-template-columns:1fr 1fr;}
  .crb-loan-types{grid-template-columns:1fr 1fr;}
}

/* ═══════════════════════════════════════════════
   STANDALONE APP MODE — overrides for full-page
   ═══════════════════════════════════════════════ */
body.crb-standalone-body {
    background: #f0f4f8;
    min-height: 100vh;
    overflow-x: hidden;
}

/* Auth pages — centered full-screen */
body.crb-standalone-body .crb-auth-page {
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px 16px;
    background: linear-gradient(135deg, #0d1b4b 0%, #1e3a8a 50%, #1d4ed8 100%);
}

/* Banking app — full height */
body.crb-standalone-body #crb-banking-app {
    min-height: 100vh;
}

/* Sidebar fixed to full viewport height */
body.crb-standalone-body .crb-sidebar {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    z-index: 200;
}

/* Topbar sticks to top of main area */
body.crb-standalone-body .crb-topbar {
    position: sticky;
    top: 0;
    z-index: 100;
}

/* ── Brand watermark at auth bottom ── */
.crb-auth-brand {
    text-align: center;
    margin-top: 24px;
    color: rgba(255,255,255,0.35);
    font-size: .72rem;
    letter-spacing: .04em;
}
