:root{--fb-primary:#0066FF;--fb-primary-dark:#003B9A;--fb-primary-mid:#003B9A;--fb-primary-light:#E6F0FF;--fb-primary-border:#B3D1FF;--fb-accent:#B8860B;--fb-dark:#003B9A;--fb-radius:10px;--fb-gold-dark:#B8860B;--fb-gold:#FFD700;--fb-gold-light:#FFF2A6;--fb-blue-dark:#003B9A;--fb-blue:#0066FF;--fb-blue-cyan:#00D9FF;}

/* Fixes the "drag left/right reveals blank space" issue inside the Android
   app's WebView: Chromium's default elastic overscroll lets the whole page
   shift sideways past its own edges when swiped, exposing bare canvas behind
   it. Locking horizontal scroll/overscroll on the page root stops that
   without affecting normal vertical scrolling on the dashboard.
   v6.5.26: this was firing on EVERY page site-wide, including desktop
   browsers where it doesn't apply and was interacting with the theme's own
   layout to produce a double vertical scrollbar. Scoped to narrow/touch
   viewports (the app + mobile browsers) only — desktop now gets none of
   this rule. */
@media(max-width:820px){
  html,body{overflow-x:hidden;max-width:100%;overscroll-behavior-x:none;touch-action:pan-y;}
}


/* Base */
.fb-wrap{max-width:1100px;margin:30px auto;padding:24px;font-family:-apple-system,Arial,Helvetica,sans-serif;color:#1B2434;line-height:1.5}
.fb-wrap p,.fb-wrap label,.fb-wrap li,.fb-wrap td,.fb-wrap th,.fb-notice,.fb-notif-dropdown p,.fb-notif-dropdown label,.fb-profile-menu a{text-transform:none !important}
.fb-wrap small:not(.fb-brand small){text-transform:none !important}
.fb-wrap h1{font-size:28px;font-weight:800;margin:0 0 20px;color:var(--fb-dark);letter-spacing:-.3px}
.fb-wrap h2{font-size:18px;font-weight:700;margin:0 0 14px;color:var(--fb-dark)}
.fb-wrap p{margin:0 0 10px}

/* Brand / logo */
.fb-brand{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.fb-logo-img{height:52px;width:auto;display:block}
.fb-brand small{font-size:13px;font-weight:700;letter-spacing:1px;opacity:.5;text-transform:uppercase}
.fb-brand h1{margin:0;font-size:27px;line-height:1.2}
/* v6.5.35 — Dashboard brand row: logo+name on the left, bell button
   aligned on the same line, right-aligned (no separate stacked topbar) */
.fb-brand.fb-brand-row{justify-content:space-between;flex-wrap:wrap}
.fb-brand-left{display:flex;align-items:center;gap:12px}
.fb-brand-right{display:flex;align-items:center}

/* Layout rows */
.fb-titlerow{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:0 0 22px}
.fb-titlerow h1{margin:0}
.fb-topbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-bottom:14px}

/* Panels / cards */
.fb-panel,.fb-card{background:#fff;border:1px solid var(--fb-primary-border);border-radius:var(--fb-radius);padding:22px;margin:0 0 18px;box-shadow:0 4px 14px rgba(10,95,199,.06)}
.fb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.fb-card b{display:block;font-size:12.5px;font-weight:600;opacity:.6;text-transform:uppercase;letter-spacing:.3px}
.fb-card strong{display:block;font-size:24px;font-weight:800;margin-top:8px;color:var(--fb-primary)}

/* Forms */
.fb-form{max-width:560px}
.fb-form label{display:block;font-weight:700;font-size:13.5px;margin:0 0 16px;color:#333}
.fb-form input,.fb-form textarea{display:block;width:100%;box-sizing:border-box;padding:12px 14px;margin-top:6px;border:1px solid var(--fb-primary-border);border-radius:8px;font-size:14px;font-family:inherit}
.fb-form input:focus,.fb-form textarea:focus{outline:none;border-color:var(--fb-primary);box-shadow:0 0 0 3px rgba(10,95,199,.12)}
.fb-pass-wrap{position:relative}
.fb-pass-wrap input{padding-right:44px!important}
.fb-pass-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;cursor:pointer;padding:6px;margin:0;line-height:0;border-radius:6px}
.fb-pass-toggle:hover{background:var(--fb-primary-light)}

/* Copy box */
.fb-copy-box{display:flex;max-width:420px;border:1px solid var(--fb-primary-border);border-radius:8px;overflow:hidden;margin:6px 0 14px}
.fb-copy-box input{flex:1;border:0;padding:10px 12px;font-size:13px;background:var(--fb-primary-light);min-width:0}
.fb-copy-box input:focus{outline:none;box-shadow:none}
.fb-copy-box button{border-radius:0;margin:0;flex-shrink:0}

/* Buttons */
.fb-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--fb-primary);color:#fff!important;font-size:14px;font-weight:600;padding:11px 20px;border-radius:8px;text-decoration:none;border:0;cursor:pointer;margin:4px 8px 4px 0;transition:background .15s,transform .1s;line-height:1.2}
.fb-btn:hover{background:var(--fb-primary-dark)}
.fb-btn:active{transform:scale(.98)}
.fb-btn.alt{background:var(--fb-accent)}
.fb-btn.alt:hover{background:#146351}
.fb-btn.dark{background:var(--fb-dark)}
.fb-btn.dark:hover{background:#020e21}
.fb-actions{margin:18px 0;display:flex;flex-wrap:wrap;gap:4px}
.fb-actions-profile{justify-content:flex-end}

/* Notices */
.fb-notice{position:relative;padding:14px 18px 14px 46px;border-radius:10px;background:var(--fb-primary-light);color:var(--fb-primary-dark);margin:0 0 18px;font-size:14.5px;font-weight:500;line-height:1.55;border-left:4px solid var(--fb-primary);box-shadow:0 4px 14px rgba(10,95,199,.10);letter-spacing:.1px;text-transform:none!important}
.fb-notice::before{content:"\2713";position:absolute;left:17px;top:14px;font-size:15px;font-weight:800;color:var(--fb-primary)}
.fb-error{background:#fdecec;color:#9a2222;border-left-color:#c62828}
.fb-error::before{content:"!";color:#c62828;left:20px}

/* Modern styled tables — used across the whole site + admin panel */
.fb-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;margin:0 0 6px}
.fb-table th{text-align:left;padding:12px 16px;background:var(--fb-primary);color:#EAF2FC;font-weight:500;font-size:13px}
.fb-table th:first-child{border-radius:10px 0 0 0}
.fb-table th:last-child{border-radius:0 10px 0 0}
.fb-table td{padding:14px 16px;color:#1B2434;background:#fff;border-top:1px solid var(--fb-primary-light)}
.fb-table tbody tr:first-child td{border-top:none}
.fb-table tbody tr:nth-child(even) td{background:var(--fb-primary-light)}
.fb-table tbody tr:last-child td:first-child{border-radius:0 0 0 10px}
.fb-table tbody tr:last-child td:last-child{border-radius:0 0 10px 0}
.fb-table tfoot td{background:var(--fb-primary-light);font-weight:700;color:var(--fb-primary-dark);border-top:2px solid var(--fb-primary-border)}
.fb-table tfoot tr:last-child td:first-child{border-radius:0 0 0 10px}
.fb-table tfoot tr:last-child td:last-child{border-radius:0 0 10px 0}
.fb-table-summary{background:var(--fb-primary-light);border-radius:0 0 10px 10px;padding:14px 18px;margin-top:-6px;font-size:13.5px}
.fb-table-summary p{margin:0 0 6px}
.fb-table-summary p:last-child{margin-bottom:0}
.fb-qr{text-align:center;padding:14px}
.fb-qr img{width:180px;height:180px;display:block;margin:0 auto 10px;border-radius:8px}
.fb-qr small{display:block;opacity:.6;font-size:12px}

/* Payment method icons */
.fb-pay-icons{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}
.fb-pay-icon-btn{display:flex;flex-direction:column;align-items:center;gap:6px;background:#fff;border:2px solid var(--fb-primary-border);border-radius:10px;padding:12px 16px;cursor:pointer;min-width:90px;transition:border-color .15s,background .15s}
.fb-pay-icon-btn:hover{border-color:var(--fb-primary)}
.fb-pay-icon-btn.active{border-color:var(--fb-primary);background:var(--fb-primary-light)}
.fb-pay-icon-btn img{width:36px;height:36px;object-fit:contain;border-radius:6px}
.fb-pay-generic{width:36px;height:36px;border-radius:50%;background:var(--fb-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px}
.fb-pay-label{font-size:12px;font-weight:700;color:#333}
.fb-pay-detail{background:var(--fb-primary-light);border-radius:10px;padding:16px}
.fb-pay-detail p{margin:0 0 6px}
.fb-pay-qr{width:150px;height:150px;display:block;margin:0 auto 12px;border-radius:8px}

/* Progress bar */
.fb-progress{height:10px;background:var(--fb-primary-light);border-radius:20px;overflow:hidden;margin-top:14px}
.fb-progress span{display:block;height:100%;background:linear-gradient(90deg,#B8860B,#FFD700);border-radius:20px;box-shadow:0 0 8px rgba(255,215,0,.5)}

.fb-disclaimer{font-size:12px;opacity:.6;margin-top:20px}

/* Notifications */
.fb-bell-btn{display:inline-flex;align-items:center;gap:5px}
.fb-notif-badge{background:#d32f2f;color:#fff;border-radius:50%;padding:2px 7px;font-size:11px;font-weight:700}
.fb-modal-overlay{display:none;position:fixed;inset:0;background:rgba(4,27,64,.45);z-index:9999;align-items:flex-start;justify-content:flex-end;padding:70px 20px 20px}
.fb-modal-box{background:#fff;border-radius:12px;max-width:360px;width:100%;max-height:70vh;overflow-y:auto;box-shadow:0 10px 30px rgba(0,0,0,.25)}
/* v6.5.29 — Withdrawal receipt card (auto-popup + History "View Receipt") */
.fb-receipt{font-family:-apple-system,Arial,Helvetica,sans-serif;color:#1B2434;border-radius:14px;overflow:hidden;box-shadow:0 6px 20px rgba(0,59,154,.12);border:1px solid #E3ECFB;background:#fff}
.fb-receipt+.fb-receipt{margin-top:22px}
.fb-receipt-header{background:linear-gradient(135deg,var(--fb-blue-dark) 0%,var(--fb-blue) 55%,var(--fb-blue-cyan) 100%);padding:16px 18px 14px;position:relative;color:#fff}
.fb-receipt-header::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(135deg,var(--fb-gold-dark) 0%,var(--fb-gold) 35%,var(--fb-gold-light) 50%,var(--fb-gold) 65%,var(--fb-gold-dark) 100%)}
.fb-receipt-header-top{display:flex;align-items:center;gap:10px}
.fb-receipt-header-top .fb-logo-img{height:22px;width:auto;display:block}
.fb-receipt-title{font-weight:800;font-size:14.5px;letter-spacing:.2px;color:#fff}
.fb-receipt-status-pill{margin-top:10px;display:inline-block;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.4);color:#fff;font-weight:700;font-size:12px;padding:4px 12px;border-radius:20px}
.fb-receipt-body{padding:18px}
.fb-receipt-table{width:100%;border-collapse:collapse;table-layout:fixed}
.fb-receipt-table td{padding:7px 0;border-bottom:1px solid #EEF1F6;font-size:13px;word-break:break-word;overflow-wrap:anywhere;vertical-align:top}
.fb-receipt-table td:first-child{color:#6B7A90;width:38%;padding-right:10px}
.fb-receipt-table td:last-child{font-weight:700;text-align:right;width:62%}
.fb-receipt-remarks{font-size:12.5px;color:#5C6B84;margin-top:10px}
.fb-receipt-print{margin-top:14px;width:100%;text-align:center}
.fb-receipt-actions{display:flex;gap:8px;margin-top:14px}
.fb-receipt-actions .fb-btn{flex:1;margin:0;padding:10px 8px;font-size:13.5px}
.fb-receipt-footer{background:var(--fb-primary-light);padding:12px 18px;text-align:center;border-top:1px solid #E3ECFB}
.fb-receipt-footer p{margin:2px 0;font-size:11px;color:#6B7A90}
.fb-receipt-footer-brand{font-weight:700 !important;color:var(--fb-blue-dark) !important;font-size:12.5px !important}
.fb-modal-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff}
.fb-modal-close{background:none;border:none;font-size:22px;cursor:pointer;color:#666;line-height:1}
.fb-notif-item{border-bottom:1px solid #eee;padding:0}
.fb-notif-item summary{cursor:pointer;font-size:13.5px;padding:11px 18px;font-weight:700}
.fb-notif-item .fb-notif-detail{padding:0 18px 12px;font-size:12.5px;color:#555}

/* Nav bar (text links, used only where explicitly needed) */
.fb-nav{margin:0 0 20px;padding:12px 16px;background:var(--fb-primary-light);border-radius:10px;font-size:14px}
.fb-nav a{color:var(--fb-primary);text-decoration:none;font-weight:700;margin-right:16px}
.fb-nav a:hover{text-decoration:underline;color:var(--fb-primary-dark)}

@media(max-width:800px){.fb-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.fb-grid{grid-template-columns:1fr}.fb-wrap{padding:16px}}

/* ===== Currency converter ===== */
.fb-ccy-select{display:inline-flex;align-items:center;background:var(--fb-primary-light);color:var(--fb-primary-dark);font-size:13.5px;font-weight:700;padding:11px 32px 11px 16px;border-radius:8px;border:1px solid var(--fb-primary-border);cursor:pointer;margin:4px 0 4px 8px;font-family:inherit;line-height:1.2;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='14' height='14' fill='%230A5FC7'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .15s}
.fb-ccy-select:hover{border-color:var(--fb-primary)}
.fb-ccy-select:focus{outline:none;border-color:var(--fb-primary);box-shadow:0 0 0 3px rgba(10,95,199,.12)}

.fb-rate-row{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--fb-primary-light);color:var(--fb-primary-dark);border:1px solid var(--fb-primary-border);border-radius:var(--fb-radius);padding:14px;margin:0 0 18px;font-size:15px;font-weight:700;letter-spacing:.2px;transition:background .15s,color .15s,border-color .15s}
.fb-rate-row.fb-rate-error{background:#fdecec;color:#9a2222;border-color:#f3c8c8;font-weight:600}

.fb-ccy-sub{font-size:12.5px;font-weight:600;color:var(--fb-primary-mid);margin-top:6px;min-height:16px}
.fb-ccy-sub small{display:block;font-size:11px;font-weight:500;opacity:.65;margin-top:2px}
/* v6.5.26 — reserves room for the optional "(rate locked ...)" second
   line so its appearing/disappearing on the 20s poll never changes this
   card's height (that height change was the real page "jhatka" — the
   Loading-rate text flash was only part of it). */
#fbCapitalSub{min-height:32px}

@media(max-width:520px){.fb-ccy-select{margin-left:0;width:100%;margin-top:6px}}

/* ===== Maintenance / system-locked notice — rotating RGB glow border ===== */
.fb-maintenance-wrap{position:relative;max-width:640px;margin:20px auto;border-radius:22px;padding:6px;overflow:hidden;isolation:isolate}
.fb-maintenance-wrap::before{content:"";position:absolute;inset:-60%;z-index:-1;background:conic-gradient(from 0deg,#ff3b3b,#ff9d3b,#fff23b,#3bff6a,#3bd4ff,#5a3bff,#ff3bd4,#ff3b3b);filter:blur(4px);animation:fbMaintSpin 4s linear infinite}
.fb-maintenance-box{position:relative;background:linear-gradient(145deg,#ffffff,#f0f2f5);border-radius:18px;padding:22px 26px;text-align:center;box-shadow:0 14px 28px rgba(10,95,199,.16),0 4px 10px rgba(10,95,199,.08),inset 0 1px 0 rgba(255,255,255,.9),inset 0 -3px 6px rgba(11,31,58,.06)}
.fb-maintenance-box p{margin:0;font-size:16px;font-weight:800;color:#D4A72C;letter-spacing:.2px;line-height:1.6}
@keyframes fbMaintSpin{to{transform:rotate(360deg)}}
@media(max-width:520px){.fb-maintenance-box p{font-size:14px}.fb-maintenance-box{padding:18px 18px}}

/* ===== Admin panel (wp-admin) tables ===== */
.fb-scroll-wrap{overflow-x:auto;max-width:100%}
.fb-scroll-wrap table{width:100%}


/* =====================================================================
   ADDED (dashboard redesign, custom currency dropdown, copy buttons,
   profile dropdown, notifications dropdown, investment-plan stat grid)
   — appended below so nothing above this line was touched.
   ===================================================================== */

/* ===== Dashboard cards (charcoal/black + gold palette + 3D hover) =====
   v6.5.17: cards moved off the brand-blue gradient to a near-black one —
   gold (balance/rate figures) reads with far more contrast against black
   than it did against blue, and black+gold is the standard "premium
   finance" pairing. Blue stays in use elsewhere (buttons, bell, links)
   so it isn't lost, just no longer the card background. */
.fb-grid{display:grid;grid-template-columns:0.85fr 1fr 1fr 1.3fr;gap:20px;margin:20px 0}
@media(max-width:800px){.fb-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.fb-grid{grid-template-columns:1fr}}
/* ===== Show/Hide Balance toggle (v6.5.36) ===== */
/* ===== Show/Hide Balance toggle (v6.5.37) — now an icon-only button
   sitting right next to the Wallet card's own icon, instead of a
   separate row above the grid. ===== */
.fb-card-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.fb-card-topline .fb-card-icon{margin-bottom:0}
.fb-balance-eye-btn{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#FFD700;cursor:pointer;transition:background .15s ease;padding:0}
.fb-balance-eye-btn:hover{background:rgba(255,255,255,.16)}
.fb-balance-eye-btn svg{flex:0 0 auto}
.fb-card{border-radius:16px;padding:22px 22px 20px;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.32),0 2px 6px rgba(0,0,0,.20);position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease;min-width:0}
.fb-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(0,0,0,.42),0 4px 10px rgba(0,0,0,.24),0 0 0 1px rgba(255,215,0,.25)}
.fb-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:16px 16px 0 0;background:var(--finbox-gold-gradient,linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%));opacity:.9}
.fb-card::after{content:"";position:absolute;top:-40%;right:-30%;width:70%;height:140%;background:radial-gradient(circle,rgba(255,255,255,.06),transparent 65%);pointer-events:none}
.fb-card b{opacity:.85;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;font-weight:700;color:#D8D4C8}
.fb-card strong{display:block;font-size:26px;margin-top:6px;line-height:1.2;color:#FFD700;text-shadow:0 0 14px rgba(255,215,0,.25);overflow-wrap:anywhere;word-break:break-word}
.fb-card .fb-ccy-sub{color:rgba(255,255,255,.7);margin-top:4px;font-size:12.5px;overflow-wrap:anywhere;word-break:break-word}
.fb-card-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(255,215,0,.12);color:#FFD700;font-size:17px;margin-bottom:14px}
.fb-card-icon.fb-card-icon-gain{background:rgba(62,209,122,.14);color:#3ED17A}
.fb-card-1{background:linear-gradient(150deg,#242424 0%,#141414 55%,#050505 100%)}
.fb-card-2{background-image:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%),linear-gradient(150deg,#1c1c1c 0%,#101010 60%,#000 100%);background-size:100% 3px,100% 100%;background-repeat:no-repeat,no-repeat;background-position:top left,top left;position:relative;overflow:visible;z-index:5}
.fb-card-2::before{display:none}
.fb-card-3{background:linear-gradient(150deg,#202020 0%,#0c0c0c 100%)}
.fb-card-ccy{background:linear-gradient(145deg,#B8860B 0%,#5c3d09 60%,#2a1c04 100%)}
.fb-card-4{background:linear-gradient(150deg,#262626 0%,#121212 60%,#000 100%)}

.fb-dash-wrap{background:radial-gradient(circle at 15% 0%,rgba(255,215,0,.08),transparent 45%),radial-gradient(circle at 100% 10%,rgba(46,155,245,.10),transparent 40%),linear-gradient(180deg,#F6FAFE 0%,#ECF1F9 100%);border-radius:20px;padding:28px;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}
.fb-dash-wrap .fb-panel{background:rgba(255,255,255,.85);backdrop-filter:blur(6px)}
@media(max-width:600px){.fb-dash-wrap{padding:16px;border-radius:14px}}
.fb-topbar{position:sticky;top:0;z-index:60;padding:8px 4px;margin:-8px -4px 0}

/* ===== Earnings Summary card (3-column grid) — v6.5.17: renamed from
   "Today's Earnings" because Monthly 1% and Referrals Income are
   all-time SUM totals from the database, not today's figures — only
   Daily Returns is actually "today". Values here are money actually
   flowing IN, so they're green (gain) rather than gold (balance/rate).
   A -zero modifier (added server-side when the value is 0.00) falls
   back to neutral grey so a $0.00 row doesn't read as a fake gain. ===== */
.fb-earn-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;margin-top:12px;align-items:stretch}
.fb-earn-col{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;padding:4px 10px}
.fb-earn-col:first-child{padding-left:0}
.fb-earn-col:not(:last-child){border-right:1px solid rgba(255,255,255,.14)}
.fb-earn-label{font-size:11.5px;opacity:.75;text-transform:uppercase;letter-spacing:.03em;color:#D8D4C8}
.fb-earn-note{display:block;font-size:9px;font-weight:400;opacity:.6;text-transform:none;letter-spacing:0;margin-top:1px}
.fb-earn-val{font-size:20px;font-weight:700;color:#3ED17A;margin-top:4px;text-shadow:0 0 14px rgba(62,209,122,.2);overflow-wrap:anywhere;word-break:break-word}
.fb-earn-val.fb-earn-val-zero{color:#8a8a8a;text-shadow:none}
.fb-earn-levels{display:flex;flex-direction:column;gap:8px;justify-content:flex-start;width:100%;margin-top:6px}
.fb-earn-level-row{font-size:12.5px;display:flex;justify-content:space-between;gap:8px;width:100%}
.fb-earn-level-row b{opacity:.7;font-weight:600;color:#D8D4C8}
.fb-earn-level-row span{color:#3ED17A;font-weight:700}
.fb-earn-level-row span.fb-earn-level-zero{color:#8a8a8a}

/* ===== Investment Capital card's 2nd row (live currency converter) ===== */
.fb-rate-row2{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14);font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.fb-card-2.fb-rate-error .fb-rate-row2 span{color:#FFE0B2}

/* ===== Monthly Return card — cycle progress bar (real % of the current
   30-day accrual cycle elapsed, computed server-side — not decorative),
   and its 2nd row: Accrued This Cycle (gain — green) and Next Payout To
   Wallet (a date, not money, so it's off-white, not gold or green). ===== */
.fb-progress-mini{height:6px;border-radius:6px;background:rgba(255,255,255,.10);overflow:hidden;margin-top:10px}
.fb-progress-mini span{display:block;height:100%;background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%);border-radius:6px;transition:width .3s ease}
.fb-accrual-row{justify-content:space-between}
.fb-accrual-col{display:flex;flex-direction:column;gap:3px;min-width:90px;max-width:100%}
.fb-accrual-label{font-size:11px;text-transform:uppercase;letter-spacing:.03em;opacity:.75;font-weight:600;color:#D8D4C8}
.fb-accrual-val{font-size:15px;font-weight:800;overflow-wrap:anywhere;word-break:break-word}
.fb-accrual-val.fb-accrual-gain{color:#3ED17A;text-shadow:0 0 12px rgba(62,209,122,.2)}
.fb-accrual-val.fb-accrual-gain.fb-accrual-gain-zero{color:#8a8a8a;text-shadow:none}
.fb-accrual-val.fb-accrual-date{color:#F2F0EA}

/* ===== Investment Plan stat grid (mobile-responsive) ===== */
.fb-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-top:12px}
.fb-panel:has(.fb-stat-grid){position:relative;overflow:hidden}
.fb-panel:has(.fb-stat-grid)::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%)}
.fb-stat-item{background:linear-gradient(160deg,#F7FAFF,#EAF2FC);border:1px solid var(--fb-primary-border);border-radius:10px;padding:10px 14px;transition:transform .15s ease,box-shadow .15s ease}
.fb-stat-item:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(0,59,154,.12)}
.fb-stat-item .fb-stat-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.03em;color:#5C6B84;font-weight:600}
.fb-stat-item .fb-stat-value{font-size:16px;font-weight:700;color:#003B9A;margin-top:3px}
.fb-stat-item:nth-child(2) .fb-stat-value{display:inline-block;background:linear-gradient(135deg,#B8860B 0%,#FFD700 60%,#B8860B 100%);color:#1a1300;padding:2px 12px;border-radius:20px;font-size:12px;letter-spacing:.04em}

/* ===== Profile icon dropdown menu (Dashboard) ===== */
/* v6.5.12: failsafe so the site header can never need its own internal
   scrollbar because the injected profile item (avatar) is taller than
   the surrounding nav text. Safe alongside the open dropdown, which
   uses position:fixed (v6.5.10) and so escapes this clipping. Scoped
   to ConsultingGrove's own header wrapper ID; harmless if that ID is
   absent on another theme. */
#sticky-header{overflow:hidden}
.fb-profile-dd{position:relative;display:inline-block}
.fb-nav-profile-item{display:inline-flex;align-items:center;vertical-align:middle;margin-left:6px;list-style:none}
.fb-nav-profile-item .fb-profile-menu{top:44px}
.fb-profile-btn{background:none;border:0;padding:0;cursor:pointer;border-radius:50%;line-height:0;transition:box-shadow .15s ease}
.fb-profile-btn:hover{box-shadow:0 0 0 3px rgba(255,215,0,.35)}
.fb-profile-menu{opacity:0;visibility:hidden;transform:translateY(-8px) scale(.96);transform-origin:top right;transition:opacity .16s ease,transform .16s ease,visibility .16s;position:absolute;right:0;top:52px;background:linear-gradient(165deg,#04275C 0%,#001233 100%);border-radius:14px;box-shadow:0 14px 34px rgba(4,27,64,.35),0 2px 10px rgba(4,27,64,.15);min-width:230px;z-index:999;overflow:hidden;border:1px solid rgba(255,215,0,.18)}
.fb-profile-menu::before{content:"";display:block;height:3px;background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%)}
.fb-profile-menu.fb-dd-open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.fb-profile-menu a{display:flex;align-items:center;gap:10px;padding:11px 16px;color:#fff;text-decoration:none;font-size:14px;font-weight:600;transition:background .12s ease,padding-left .12s ease}
.fb-profile-menu a:not(:last-child){border-bottom:1px solid rgba(255,255,255,.08)}
.fb-profile-menu a:hover{background:rgba(255,215,0,.14);padding-left:20px}
.fb-profile-menu a.fb-dd-logout{color:#ff8a80}
.fb-profile-menu a.fb-dd-logout:hover{background:rgba(255,59,59,.14)}
.fb-dd-ic{font-size:16px;line-height:1;width:20px;text-align:center;flex-shrink:0}
@media(max-width:520px){.fb-profile-menu{position:fixed;right:12px;left:12px;top:92px;min-width:0}}

/* ===== Notifications dropdown (bell icon, Dashboard) — newer, smaller
   fixed-position dropdown; replaces the old full corner .fb-modal-overlay
   design above, which is no longer used anywhere in the plugin ===== */
.fb-notif-dropdown{display:none;position:fixed;top:64px;right:16px;width:330px;max-width:90vw;background:linear-gradient(165deg,#04275C 0%,#001233 100%);border-radius:14px;box-shadow:0 14px 34px rgba(4,27,64,.35),0 2px 10px rgba(4,27,64,.15);z-index:9999;overflow:hidden;border:1px solid rgba(255,215,0,.18)}
.fb-notif-dropdown::before{content:"";display:block;height:3px;background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%)}
.fb-notif-dropdown .fb-modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.1);color:#fff}
.fb-notif-dropdown .fb-modal-close{color:rgba(255,255,255,.7)}
.fb-notif-dropdown .fb-modal-close:hover{color:#FFD700}
.fb-notif-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.1)}
.fb-notif-tab{flex:1;text-align:center;padding:10px 0;font-size:12.5px;font-weight:700;cursor:pointer;color:rgba(255,255,255,.55);border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}
.fb-notif-tab.active{color:#FFD700;border-bottom-color:#FFD700}
.fb-notif-tab-count{background:rgba(255,215,0,.18);color:#FFD700;border-radius:10px;padding:1px 6px;font-size:10.5px;margin-left:3px}
.fb-notif-scroll{max-height:320px;overflow-y:auto}
.fb-notif-dropdown .fb-notif-item{padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.08);font-size:13px;color:#fff}
.fb-notif-dropdown .fb-notif-item summary{cursor:pointer;font-weight:600}
.fb-notif-dropdown .fb-notif-item .fb-notif-detail{color:rgba(255,255,255,.75)}
.fb-notif-unread{background:rgba(255,215,0,.08)}
.fb-notif-dropdown .fb-notif-badge{background:linear-gradient(135deg,#ff5252,#c62828);color:#fff;border-radius:10px;padding:1px 6px;font-size:11px;position:relative;top:-8px;box-shadow:0 0 6px rgba(198,40,40,.6)}
.fb-notif-markread{padding:10px 16px;border-top:1px solid rgba(255,255,255,.1)}
.fb-notif-markread .button{width:100%;background:linear-gradient(135deg,#B8860B 0%,#FFD700 60%,#B8860B 100%);color:#1a1300;border:none;font-weight:700}
@media(max-width:520px){.fb-notif-dropdown{top:92px;right:12px;left:12px;width:auto}}

/* ===== Copy buttons (deposit address / referral link) — icon-only pill,
   brand-blue gradient, turns green briefly on success. Replaces the old
   plain-text "Copy" button. ===== */
.fb-copy-box{display:flex;align-items:stretch;gap:8px}
.fb-copy-box input{min-width:0;flex:1;padding:14px 16px!important;font-size:14px!important}
.fb-copy-btn{background:linear-gradient(135deg,#2E9BF5,#0B4C8C);border:none;color:#fff;min-width:68px;padding:0 26px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:0 22px 22px 0;clip-path:polygon(16px 0,100% 0,100% 100%,0 100%);transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 3px 10px rgba(11,76,140,.4)}
.fb-copy-btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(11,76,140,.55)}
.fb-copy-btn.fb-copy-btn-done{background:linear-gradient(135deg,#66BB6A,#2E7D32);box-shadow:0 3px 10px rgba(46,125,50,.4)}

/* ===== Currency selector — now a custom JS dropdown, not a native
   <select>, so the OPEN list can be fully styled everywhere (mobile
   included). This intentionally overrides the older .fb-ccy-select rule
   above, which styled a native <select>. ===== */
.fb-ccy-dd{position:relative;display:inline-block}
.fb-ccy-select{background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%);color:#1a1300;font-weight:700;border:1px solid rgba(255,255,255,.6);border-radius:20px;padding:6px 14px;font-size:12.5px;max-width:190px;box-shadow:0 3px 10px rgba(255,215,0,.35);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;display:inline-flex;align-items:center;gap:8px;margin:0}
.fb-ccy-select:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(255,215,0,.5)}
.fb-ccy-select:focus{outline:none;box-shadow:0 0 0 3px rgba(255,215,0,.5)}
.fb-ccy-select#fbCcyBtn.fb-ccy-select-open{border-radius:14px 14px 0 0}
#fbCcyLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fb-ccy-arrow{font-size:10px;transition:transform .15s ease;flex-shrink:0}
.fb-ccy-select-open .fb-ccy-arrow{transform:rotate(180deg)}
.fb-ccy-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-radius:0 0 14px 14px;box-shadow:0 12px 28px rgba(4,27,64,.35);max-height:240px;overflow-y:auto;z-index:80;border:1px solid rgba(184,134,11,.4);border-top:none}
.fb-ccy-menu.fb-ccy-open{display:block}
.fb-ccy-item{padding:9px 14px;font-size:12.5px;font-weight:600;color:#1B2434;cursor:pointer;transition:background .1s ease;border-bottom:1px solid #F0F2F6}
.fb-ccy-item:last-child{border-bottom:none}
.fb-ccy-item:hover{background:#FFF7DE}
.fb-ccy-item.fb-ccy-item-active{background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%);color:#1a1300}
@media(max-width:520px){.fb-ccy-select{margin-left:0;width:100%;margin-top:6px}}

/* =====================================================================
   FRONTEND — Backend-matching brand polish (v6.5.15)
   Plain shortcode pages (Login/Signup/Deposit/Withdraw/Settings/
   History/Send Balance/Move to Capital/Contact/Forgot pw-username) all
   render through fb_head() and previously stayed flat/plain — no gold,
   no gradient — while wp-admin and the Dashboard already used the full
   GOLD (#B8860B/#FFD700/#FFF2A6) + BLUE (#003B9A/#0066FF/#00D9FF)
   brand treatment. This block brings those plain pages up to the same
   look, reusing the exact same gradients as finbox-admin.css.
   ===================================================================== */

/* Page-title banner — same blue gradient + gold accent line used on
   every wp-admin page title (see finbox-admin.css .wrap > h1) */
.fb-titlerow{
  background:linear-gradient(135deg,#003B9A 0%,#0066FF 50%,#00D9FF 100%);
  border-radius:12px;
  padding:16px 22px 14px;
  box-shadow:0 6px 18px rgba(0,59,154,.25);
  position:relative;
  overflow:hidden;
}
.fb-titlerow::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
  background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%);
}
.fb-titlerow h1{color:#fff;margin:0}

/* Bare page titles that don't use .fb-titlerow (e.g. Contact page) get
   the same banner treatment */
.fb-wrap > .fb-brand + h1{
  color:#fff;
  background:linear-gradient(135deg,#003B9A 0%,#0066FF 50%,#00D9FF 100%);
  margin:0 0 20px;
  padding:14px 20px 12px;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(0,59,154,.25);
  position:relative;
  overflow:hidden;
}
.fb-wrap > .fb-brand + h1::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
  background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%);
}

/* "INVESTOR PORTAL" / "CONTACT US" brand tag — gold pill instead of
   faded gray text, matches the gold accents used everywhere else */
.fb-brand small{
  background:linear-gradient(135deg,#B8860B 0%,#FFD700 60%,#B8860B 100%);
  color:#1a1300;
  padding:3px 10px;
  border-radius:20px;
  opacity:1;
}

/* Panels — thin gold top accent bar, same idea as the admin's
   .fb-admin-box, so every info/form card carries the brand mark */
.fb-panel{position:relative;overflow:hidden}
.fb-panel::before{
  content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%);
}
.fb-panel h2{border-left:4px solid #FFD700;padding-left:12px}

/* Primary buttons — blue gradient + gold glow on hover, matches
   wp-admin's .button-primary exactly */
.fb-btn{
  background:linear-gradient(135deg,#003B9A 0%,#0066FF 50%,#00D9FF 100%);
  box-shadow:0 3px 10px rgba(0,102,255,.35);
}
.fb-btn:hover{
  background:linear-gradient(135deg,#003B9A 0%,#0066FF 50%,#00D9FF 100%);
  box-shadow:0 4px 16px rgba(255,215,0,.45);
  transform:translateY(-1px);
}
.fb-btn:active{transform:scale(.98)}
.fb-btn:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #FFD700}

/* Secondary buttons ("alt") — gold-outline style, matches wp-admin's
   secondary .button; also fixes the old off-brand green hover color */
.fb-btn.alt{background:#FFF9E6;color:#8a6508!important;border:1px solid #B8860B}
.fb-btn.alt:hover{background:#FFF2A6;color:#5c4405!important;box-shadow:none;transform:none}

@media(max-width:520px){
  .fb-titlerow,.fb-wrap > .fb-brand + h1{padding:14px 16px 12px}
}

/* =====================================================================
   FRONTEND — v6.5.16: History page date-range filter alignment,
   Investor Portal badge → user's name, Dashboard name in gold
   ===================================================================== */

/* Date Range filter row (History page) — was unstyled inline flex with
   raw browser date inputs sitting next to tall gradient buttons.
   Now: labels + inputs + buttons all share one baseline. */
.fb-daterange{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;margin:0}
.fb-daterange label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:12.5px;color:#5C6B84;text-transform:uppercase;letter-spacing:.03em;margin:0}
.fb-daterange input[type=date]{box-sizing:border-box;height:42px;padding:0 12px;border:1px solid var(--fb-primary-border);border-radius:8px;font-size:14px;font-family:inherit;color:#1B2434;background:#fff;transition:border-color .15s,box-shadow .15s}
.fb-daterange input[type=date]:hover{border-color:var(--fb-primary)}
.fb-daterange input[type=date]:focus{outline:none;border-color:var(--fb-primary);box-shadow:0 0 0 3px rgba(10,95,199,.12)}
.fb-daterange .fb-btn{box-sizing:border-box;height:42px;padding:0 20px;margin:0;display:inline-flex;align-items:center}
@media(max-width:520px){
  .fb-daterange{flex-direction:column;align-items:stretch}
  .fb-daterange label,.fb-daterange input[type=date],.fb-daterange .fb-btn{width:100%}
}

/* Dashboard name — same gold gradient used on the "INVESTOR PORTAL"
   badge, instead of plain blue */
.fb-dash-wrap .fb-brand h1{
  background:linear-gradient(135deg,#B8860B 0%,#FFD700 35%,#FFF2A6 50%,#FFD700 65%,#B8860B 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  color:#B8860B;
}

/* v6.5.33 — Dual live clocks under the brand row (every investor page).
   v6.5.35: no boxed/bordered background anymore — sits directly on the
   page like the investor name — hours/min/sec in gold, date in blue. */
.fb-clocks{display:inline-flex;align-items:stretch;gap:0;width:auto;max-width:100%;background:transparent;border:0;padding:0;margin:0 0 20px;flex-wrap:wrap}
.fb-clock-box{display:flex;flex-direction:column;gap:1px;padding:2px 14px}
.fb-clock-box:first-child{padding-left:0}
.fb-clock-label{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--fb-primary-mid);opacity:.75;white-space:nowrap}
.fb-clock-time{font-size:17px;font-weight:800;color:var(--fb-gold-dark);font-variant-numeric:tabular-nums;letter-spacing:.2px;white-space:nowrap}
.fb-clock-date{font-size:11px;font-weight:700;color:var(--fb-primary);white-space:nowrap}
.fb-clock-sep{width:1px;background:var(--fb-primary-border);margin:2px 0;flex-shrink:0}
@media(max-width:520px){.fb-clocks{display:flex;width:100%}}

/* v6.5.33 — Profile page: avatar + pencil-icon button + popup modal for
   avatar upload / color choice (moved out of the default Profile view) */
.fb-avatar-wrap{position:relative;display:inline-block;margin-bottom:16px}
.fb-avatar-pencil{position:absolute;right:-4px;bottom:-4px;width:28px;height:28px;border-radius:50%;background:var(--fb-primary);border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.2);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.fb-avatar-pencil:hover{background:var(--fb-primary-dark)}
.fb-avatar-pencil svg{width:14px;height:14px}
.fb-modal-overlay{display:none;position:fixed;inset:0;background:rgba(9,20,40,.55);z-index:9999;align-items:center;justify-content:center;padding:20px}
.fb-modal-overlay.open{display:flex}
.fb-modal{background:#fff;border-radius:var(--fb-radius);padding:24px;max-width:380px;width:100%;box-shadow:0 12px 40px rgba(0,0,0,.25);position:relative;max-height:90vh;overflow-y:auto}
.fb-modal h3{margin:0 0 16px;font-size:16px;font-weight:800;color:var(--fb-dark)}
.fb-modal-close{position:absolute;top:14px;right:14px;width:30px;height:30px;border-radius:50%;border:0;background:var(--fb-primary-light);color:var(--fb-primary-dark);font-size:16px;font-weight:800;cursor:pointer;line-height:1}
.fb-modal-close:hover{background:var(--fb-primary-border)}

/* v6.5.33 — Fancy Region selector (Profile + Signup), matches the
   currency-select look instead of a plain native dropdown */
.fb-region-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;box-sizing:border-box;padding:12px 40px 12px 16px;margin-top:6px;border:1px solid var(--fb-primary-border);border-radius:8px;font-size:14px;font-weight:700;font-family:inherit;color:var(--fb-primary-dark);background-color:var(--fb-primary-light);background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='16' height='16' fill='%230A5FC7'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer;transition:border-color .15s,box-shadow .15s,background-color .15s}
.fb-region-select:hover{border-color:var(--fb-primary);background-color:#fff}
.fb-region-select:focus{outline:none;border-color:var(--fb-primary);background-color:#fff;box-shadow:0 0 0 3px rgba(10,95,199,.12)}

/* ===== v6.5.41 — Header quick-actions cluster: profile avatar only
   (the bell was removed from here — it's already rendered by the
   [Finbox_notifications_bell] shortcode placed by hand in the header
   template; having both was the real cause of the "2 bells" report).
   v6.5.44 — this is now a FALLBACK ONLY: normally the avatar is docked
   directly beside the real bell button in the header's own markup (see
   the wp_footer JS in the main plugin file), so this fixed-corner rule
   only ever applies on the rare page that has no bell button to dock
   next to. ===== */
.fb-header-quick-actions{
    position:fixed !important;top:calc(env(safe-area-inset-top,0px) + 10px) !important;right:12px !important;z-index:999990 !important;
    display:flex;align-items:center;gap:8px;left:auto !important;bottom:auto !important;margin:0 !important;transform:none !important
}
@media(max-width:600px){.fb-header-quick-actions{top:calc(env(safe-area-inset-top,0px) + 8px);right:8px;gap:6px}}
