/* Fiji Tap — Dashboard themes (dark + light) for the Accounts overview.
   Scoped to #workspace so login/setup cards stay in the base theme.
   Toggle via data-theme="dark"|"light" on #workspace. Default: dark. */

/* ---- theme tokens ---- */
#workspace,#workspace[data-theme="dark"]{
 --dash-bg:#0a1628;--dash-card:#111d33;--dash-border:rgba(255,255,255,.08);
 --dash-text:#f0f2f5;--dash-dim:#8b95a5;--dash-accent:#68BFE5;
 --dash-green:#22c55e;--dash-red:#C8102E;
 --dash-gradient:linear-gradient(135deg,#68BFE5,#012169);
 --dash-input-bg:#0a1628;--dash-hover:rgba(104,191,229,.06);
 --dash-bar-grad:linear-gradient(180deg,#68BFE5,#012169);
 --dash-card-grad:linear-gradient(135deg,#68BFE5,#1a0533,#012169);
 --dash-icon-bg-accent:rgba(104,191,229,.12);--dash-icon-bg-red:rgba(200,16,46,.12);--dash-icon-bg-green:rgba(34,197,94,.12);
 --dash-status-pending-bg:rgba(251,191,36,.12);--dash-status-pending:#fbbf24;
 --dash-td-border:rgba(255,255,255,.04);
 --dash-sidebar-active-bg:var(--dash-accent);--dash-sidebar-active-text:var(--dash-bg);
 --dash-mono:'IBM Plex Mono',monospace;--dash-disp:'Space Grotesk',sans-serif;--dash-body:'Lexend',system-ui,sans-serif
}
#workspace[data-theme="light"]{
 --dash-bg:#f0f4f8;--dash-card:#ffffff;--dash-border:rgba(1,33,105,.1);
 --dash-text:#012169;--dash-dim:#4a5568;--dash-accent:#0057B8;
 --dash-green:#16a34a;--dash-red:#dc2626;
 --dash-gradient:linear-gradient(135deg,#0057B8,#012169);
 --dash-input-bg:#f0f4f8;--dash-hover:rgba(0,87,184,.06);
 --dash-bar-grad:linear-gradient(180deg,#68BFE5,#0057B8);
 --dash-card-grad:linear-gradient(135deg,#0057B8,#012169,#0a1628);
 --dash-icon-bg-accent:rgba(0,87,184,.1);--dash-icon-bg-red:rgba(220,38,38,.08);--dash-icon-bg-green:rgba(22,163,74,.08);
 --dash-status-pending-bg:rgba(245,158,11,.1);--dash-status-pending:#d97706;
 --dash-td-border:rgba(1,33,105,.06);
 --dash-sidebar-active-bg:var(--dash-accent);--dash-sidebar-active-text:#fff
}

#workspace{color:var(--dash-text);font-family:var(--dash-body)}

/* ---- theme toggle ---- */
.dash-theme-toggle{background:var(--dash-card);border:1px solid var(--dash-border);border-radius:12px;padding:4px;display:inline-flex;gap:2px;margin-left:auto}
.dash-theme-toggle button{background:none;border:none;border-radius:9px;padding:7px 14px;font-size:12px;font-weight:600;color:var(--dash-dim);cursor:pointer;font-family:var(--dash-body);transition:background .2s,color .2s;display:flex;align-items:center;gap:5px}
.dash-theme-toggle button.active{background:var(--dash-accent);color:var(--dash-sidebar-active-text)}
.dash-theme-toggle button span{font-size:14px}

/* ---- welcome banner ---- */
#workspace .welcome{background:var(--dash-card);border:1px solid var(--dash-border);color:var(--dash-text)}
#workspace .welcome .eyebrow{color:var(--dash-accent)}
#workspace .welcome .actions button{color:var(--dash-text);border-color:var(--dash-border)}
#workspace .welcome #lockAccount{background:transparent}
#workspace .welcome #editProfile{background:var(--dash-card)}

/* ---- account action bar ---- */
#workspace .account-actions button{background:var(--dash-card);color:var(--dash-dim);border:1px solid var(--dash-border)}
#workspace .account-actions button span{background:var(--dash-icon-bg-accent);color:var(--dash-accent)}
#workspace .account-actions button[aria-pressed=true]{border-color:var(--dash-accent);color:var(--dash-text);box-shadow:none}
#workspace .account-actions button[aria-pressed=true] span{background:var(--dash-accent);color:var(--dash-sidebar-active-text)}

/* ---- cards ---- */
#workspace .card{background:var(--dash-card);border:1px solid var(--dash-border);color:var(--dash-text);box-shadow:none}
#workspace .card h2{color:var(--dash-text)}
#workspace .card p{color:var(--dash-dim)}
#workspace .card .button,#workspace .card button:not(.secondary):not(.dash-theme-toggle button){background:var(--dash-gradient);border-color:transparent;color:#fff}
#workspace .card .small{color:var(--dash-dim)}
#workspace .card .eyebrow{color:var(--dash-accent)}

/* ---- balance row ---- */
.dash-balance-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}
.dash-bal{background:var(--dash-card);border:1px solid var(--dash-border);border-radius:18px;padding:22px;position:relative}
.dash-bal .bal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.dash-bal .bal-label{font-size:13px;color:var(--dash-dim);font-weight:500}
.dash-bal .bal-dots{color:var(--dash-dim);font-size:20px;cursor:pointer;line-height:1}
.dash-bal .bal-amount{font-family:var(--dash-mono);font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--dash-text)}
.dash-bal .bal-change{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:11px;color:var(--dash-dim)}
.dash-bal .bal-change .up{color:var(--dash-green)}
.dash-bal .bal-change .down{color:var(--dash-red)}
.dash-bal .bal-icon{position:absolute;right:18px;bottom:18px;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:18px}
.dash-bal .bal-icon.total{background:var(--dash-icon-bg-accent);color:var(--dash-accent)}
.dash-bal .bal-icon.debit{background:var(--dash-icon-bg-red);color:var(--dash-red)}
.dash-bal .bal-icon.credit{background:var(--dash-icon-bg-green);color:var(--dash-green)}
@media(max-width:700px){.dash-balance-row{grid-template-columns:1fr}.dash-bal .bal-amount{font-size:24px}}

/* ---- chart + cards side by side ---- */
.dash-main{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin-bottom:16px}
@media(max-width:880px){.dash-main{grid-template-columns:1fr}}

/* ---- transaction chart panel ---- */
.dash-chart-panel{background:var(--dash-card);border:1px solid var(--dash-border);border-radius:18px;padding:22px}
.dash-chart-panel .chart-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.dash-chart-panel h3{font-family:var(--dash-disp);font-size:16px;font-weight:600;margin:0;color:var(--dash-text)}
.dash-chart-panel .chart-sub{font-size:12px;color:var(--dash-dim);margin:0 0 18px}
.dash-chart-panel .period-select{background:var(--dash-input-bg);color:var(--dash-dim);border:1px solid var(--dash-border);border-radius:8px;padding:6px 10px;font-size:12px;font-family:var(--dash-body)}
.dash-bars{display:flex;align-items:flex-end;gap:8px;height:180px;padding-bottom:28px;position:relative}
.dash-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative}
.dash-bar{width:100%;border-radius:6px 6px 0 0;background:var(--dash-bar-grad);min-height:4px;transition:height .4s ease;position:relative}
.dash-bar:hover{opacity:.85}
.dash-bar-label{font-size:10px;color:var(--dash-dim);position:absolute;bottom:-22px;white-space:nowrap}
.dash-bar-tip{display:none;position:absolute;top:-28px;left:50%;transform:translateX(-50%);background:var(--dash-text);color:var(--dash-bg);font-family:var(--dash-mono);font-size:11px;padding:3px 8px;border-radius:6px;white-space:nowrap;pointer-events:none}
.dash-bar:hover .dash-bar-tip{display:block}
.dash-chart-line{position:absolute;left:0;right:0;border-top:1px dashed var(--dash-border)}
.dash-chart-axis{position:absolute;left:-36px;font-size:10px;color:var(--dash-dim);font-family:var(--dash-mono)}

/* ---- my cards panel ---- */
.dash-cards-panel{background:var(--dash-card);border:1px solid var(--dash-border);border-radius:18px;padding:22px;display:flex;flex-direction:column}
.dash-cards-panel .cards-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.dash-cards-panel h3{font-family:var(--dash-disp);font-size:16px;font-weight:600;margin:0;color:var(--dash-text)}
.dash-add-card{background:var(--dash-input-bg);border:1px solid var(--dash-border);border-radius:999px;padding:6px 14px;font-size:12px;color:var(--dash-dim);cursor:pointer;display:flex;align-items:center;gap:5px;font-family:var(--dash-body)}
.dash-virtual-card{background:var(--dash-card-grad);border-radius:16px;padding:22px;color:#fff;position:relative;overflow:hidden;min-height:180px;display:flex;flex-direction:column;justify-content:space-between}
.dash-virtual-card::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 70% 30%,rgba(255,255,255,.08),transparent 60%);pointer-events:none}
.dash-virtual-card .vc-top{display:flex;justify-content:space-between;align-items:center}
.dash-virtual-card .vc-chip{width:38px;height:28px;background:linear-gradient(135deg,#d4a853,#f0d080);border-radius:5px}
.dash-virtual-card .vc-brand{font-family:var(--dash-disp);font-size:15px;font-weight:700;letter-spacing:.02em}
.dash-virtual-card .vc-number{font-family:var(--dash-mono);font-size:17px;letter-spacing:.12em;margin:16px 0 10px}
.dash-virtual-card .vc-bottom{display:flex;justify-content:space-between;font-size:12px}
.dash-virtual-card .vc-name{font-weight:500}
.dash-virtual-card .vc-exp{color:rgba(255,255,255,.7)}
.dash-virtual-card .vc-logos{display:flex;gap:4px}
.dash-virtual-card .vc-logos span{width:26px;height:26px;border-radius:50%;opacity:.7}
.dash-virtual-card .vc-logos span:first-child{background:var(--dash-red)}
.dash-virtual-card .vc-logos span:last-child{background:#f79e1b;margin-left:-10px}
.dash-card-actions{display:flex;justify-content:center;gap:22px;margin-top:16px}
.dash-card-actions button{background:none;border:none;color:var(--dash-dim);font-size:11px;display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;font-family:var(--dash-body)}
.dash-card-actions button span{width:36px;height:36px;border-radius:50%;border:1px solid var(--dash-border);display:grid;place-items:center;font-size:18px}

/* ---- expenses + recent transactions row ---- */
.dash-bottom{display:grid;grid-template-columns:.9fr 1.1fr;gap:16px;margin-bottom:16px}
@media(max-width:880px){.dash-bottom{grid-template-columns:1fr}}

/* ---- expenses donut ---- */
.dash-expenses{background:var(--dash-card);border:1px solid var(--dash-border);border-radius:18px;padding:22px}
.dash-expenses .exp-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.dash-expenses h3{font-family:var(--dash-disp);font-size:16px;font-weight:600;margin:0;color:var(--dash-text)}
.dash-donut-wrap{display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:center}
.dash-donut{position:relative;width:160px;height:160px;flex:none}
.dash-donut svg{width:100%;height:100%;transform:rotate(-90deg)}
.dash-donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.dash-donut-center small{font-size:11px;color:var(--dash-dim)}
.dash-donut-center b{font-family:var(--dash-mono);font-size:22px;font-weight:700}
.dash-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.dash-legend-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--dash-dim)}
.dash-legend-item .dot{width:10px;height:10px;border-radius:3px;flex:none}
.dash-legend-item b{margin-left:auto;color:var(--dash-text);font-family:var(--dash-mono);font-size:12px}

/* ---- recent transactions table ---- */
.dash-recent{background:var(--dash-card);border:1px solid var(--dash-border);border-radius:18px;padding:22px}
.dash-recent .rec-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.dash-recent h3{font-family:var(--dash-disp);font-size:16px;font-weight:600;margin:0;color:var(--dash-text)}
.dash-recent table{width:100%;border-collapse:collapse}
.dash-recent th{text-align:left;font-size:11px;color:var(--dash-dim);text-transform:uppercase;letter-spacing:.06em;padding:10px 8px;border-bottom:1px solid var(--dash-border);font-weight:500}
.dash-recent td{padding:12px 8px;border-bottom:1px solid var(--dash-td-border);font-size:13px}
.dash-recent .tx-account{display:flex;align-items:center;gap:10px}
.dash-recent .tx-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;font-size:16px;flex:none}
.dash-recent .tx-icon.mpaisa{background:var(--dash-icon-bg-red);color:var(--dash-red)}
.dash-recent .tx-icon.mycash{background:var(--dash-icon-bg-accent);color:var(--dash-accent)}
.dash-recent .tx-icon.visa{background:var(--dash-icon-bg-green);color:var(--dash-green)}
.dash-recent .tx-name{font-weight:500;color:var(--dash-text)}
.dash-recent .tx-sub{font-size:11px;color:var(--dash-dim)}
.dash-recent .tx-amount{font-family:var(--dash-mono);font-weight:600}
.dash-recent .tx-amount.up{color:var(--dash-green)}
.dash-recent .tx-amount.down{color:var(--dash-red)}
.dash-recent .tx-date{color:var(--dash-dim);font-size:12px}
.dash-recent .tx-status{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px}
.dash-recent .tx-status.success{background:var(--dash-icon-bg-green);color:var(--dash-green)}
.dash-recent .tx-status.pending{background:var(--dash-status-pending-bg);color:var(--dash-status-pending)}
.dash-recent .tx-status.received{background:var(--dash-icon-bg-accent);color:var(--dash-accent)}
@media(max-width:600px){
 .dash-recent th:nth-child(3),.dash-recent td:nth-child(3),.dash-recent th:nth-child(5),.dash-recent td:nth-child(5){display:none}
}

/* ---- footer ---- */
#workspace~footer,#groupFooter{color:var(--dash-dim)}

/* ---- sidebar (desktop) ---- */
.dash-sidebar{display:none}
@media(min-width:1100px){
 .dash-sidebar{display:flex;flex-direction:column;gap:6px;width:210px;flex:none;background:var(--dash-card);border:1px solid var(--dash-border);border-radius:18px;padding:18px 14px;position:sticky;top:20px;align-self:start}
 .dash-sidebar .brand-mini{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--dash-border)}
 .dash-sidebar .brand-mini img{width:34px;background:#fff;padding:3px;border-radius:8px}
 .dash-sidebar .brand-mini strong{font-size:14px;color:var(--dash-text)}
 .dash-sidebar button{background:none;border:none;color:var(--dash-dim);font-family:var(--dash-body);font-size:13px;padding:10px 12px;border-radius:10px;cursor:pointer;text-align:left;display:flex;align-items:center;gap:10px;min-height:40px}
 .dash-sidebar button:hover{background:var(--dash-hover)}
 .dash-sidebar button[aria-pressed=true]{background:var(--dash-sidebar-active-bg);color:var(--dash-sidebar-active-text);font-weight:600}
 .dash-sidebar button span{width:20px;text-align:center;font-size:16px}
 .dash-sidebar .notify-dot{width:7px;height:7px;border-radius:50%;background:var(--dash-red);margin-left:auto}
 .dash-sidebar .sb-update{margin-top:auto;background:var(--dash-hover);border-radius:14px;padding:14px;text-align:center}
 .dash-sidebar .sb-update img{width:48px;margin-bottom:6px}
 .dash-sidebar .sb-update p{font-size:11px;color:var(--dash-dim);margin:4px 0 10px}
 .dash-sidebar .sb-update button{background:var(--dash-red);color:#fff;width:100%;justify-content:center;border-radius:10px;font-weight:600;font-size:12px}
 #workspace .account-actions{display:none}
 #workspace{display:grid;grid-template-columns:auto 1fr;gap:20px}
 #workspace .welcome,.dash-balance-row,.dash-main,.dash-bottom,#workspace .card,#workspace section{grid-column:2}
 .dash-sidebar{grid-column:1;grid-row:1/20}
}

/* ---- mobile ---- */
@media(max-width:600px){
 .dash-balance-row{gap:10px}
 .dash-bal{padding:16px}
 .dash-bal .bal-amount{font-size:20px}
 .dash-virtual-card{min-height:150px;padding:16px}
 .dash-virtual-card .vc-number{font-size:14px;letter-spacing:.08em}
 .dash-card-actions{gap:16px;margin-top:12px}
 .dash-donut{width:130px;height:130px}
 .dash-donut-center b{font-size:18px}
 .dash-legend{grid-template-columns:1fr;gap:6px}
 .dash-theme-toggle{width:100%;justify-content:center}
 .dash-theme-toggle button{flex:1;justify-content:center}
}

/* ---- light theme page background ---- */
#workspace[data-theme="light"]{background:var(--dash-bg)}
#workspace[data-theme="light"] .welcome{box-shadow:0 2px 12px rgba(1,33,105,.06)}
#workspace[data-theme="light"] .dash-bal,
#workspace[data-theme="light"] .dash-chart-panel,
#workspace[data-theme="light"] .dash-cards-panel,
#workspace[data-theme="light"] .dash-expenses,
#workspace[data-theme="light"] .dash-recent{box-shadow:0 2px 12px rgba(1,33,105,.06)}


/* Dimau metric design v1 — owner reference, 20 September 2026.
   Presentation only: amounts, scales, data sources and semantic statuses remain intact.
   Scoped to measured results; no network, storage or third-party dependencies. */
@media screen {
:is(#workspace:not([data-theme="light"]) .dash-bal){
 --metric-accent:#58d9f5;--metric-glow:#174565;
 --ink:#f2f6ff;--ink-soft:#bdcce0;--muted:#afbed4;--line:#2b3b54;
 --text-primary:#f2f6ff;--text-secondary:#c8d5e8;--text-muted:#afbed4;
 --surface-1:#101929;--surface-2:#19253a;--line-soft:#27354b;
 --paper:#101929;--paper2:#172338;--ink2:#c8d5e8;--ink3:#afbed4;
 --card:#101929;--green-dd:#eff7ff;--green-l:#70d9ed;
 color:#f2f6ff;color-scheme:dark;min-width:0;
 background:radial-gradient(ellipse at 100% 0,var(--metric-glow),transparent 75%),linear-gradient(145deg,#111b2c,#0a101e);
 border:1px solid #2b3b54;border-top-color:#45627c;border-radius:18px;
 box-shadow:0 12px 32px -18px #02061799,inset 0 1px 0 #ffffff06;
}
:is(#workspace:not([data-theme="light"]) .dash-bal):nth-child(3n+2){--metric-accent:#bca2ff;--metric-glow:#302947}
:is(#workspace:not([data-theme="light"]) .dash-bal):nth-child(3n){--metric-accent:#66e3ca;--metric-glow:#143d3d}
:is(#workspace:not([data-theme="light"]) .bal-amount){color:#f2f6ff;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.025em;font-weight:750;overflow-wrap:anywhere;line-height:1.2}
:is(#workspace:not([data-theme="light"]) .bal-label){color:#afbed4;line-height:1.5;letter-spacing:.01em;text-transform:none}
:is(#workspace:not([data-theme="light"]) .dash-bal):focus-visible,:is(#workspace:not([data-theme="light"]) .dash-bal) :focus-visible{outline:3px solid #78e3ff;outline-offset:4px}

 #workspace:not([data-theme="light"]){--dash-bg:#090f1c;--dash-card:#101929;--dash-border:#2b3b54;--dash-dim:#afbed4;--dash-accent:#58d9f5;--dash-red:#ff879e;--dash-bar-grad:linear-gradient(180deg,#65def5,#2978e5);--dash-card-grad:linear-gradient(125deg,#1768d8,#7552d1 58%,#ce61c8)}
 #workspace .dash-bal{border-top:2px solid var(--metric-accent,#58d9f5)}
 #workspace .dash-bal .bal-amount{font-family:var(--dash-body);padding-right:0;font-size:clamp(18px,1.8vw,26px);white-space:nowrap;overflow-wrap:normal}
 .dash-bar{border-radius:8px 8px 2px 2px}
 .dash-bar:focus-visible .dash-bar-tip,.dash-bar:active .dash-bar-tip{display:block}
 .dash-chart-panel,.dash-cards-panel,.dash-expenses,.dash-recent{min-width:0}
 .dash-recent{overflow-x:auto}
 .dash-chart-panel .period-select,.dash-expenses .period-select{width:auto;min-width:0;max-width:50%}
 @media(max-width:700px){.dash-balance-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dash-bal:first-child{grid-column:1/-1}.dash-bal{padding:16px}#workspace .dash-bal .bal-amount{font-size:clamp(17px,4.5vw,21px)}#workspace .dash-bal:first-child .bal-amount{font-size:26px}.dash-bal .bal-icon{opacity:.35;right:10px;bottom:8px}}

}
@media (prefers-reduced-motion:reduce){:is(#workspace:not([data-theme="light"]) .dash-bal),:is(#workspace:not([data-theme="light"]) .dash-bal) *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
