/* Dashboard review adjustments */
body { font-weight: 500; }
.kpi span, .panel header h2, .step span, .liquidity dt, .alert-row b, .commitment-row span { font-weight: 700; }
.kpi em, .step em, .alert-row span, .alert-row time, .legend, .gauge b, .gauge em, footer { font-weight: 600; }
.step.done b { font-size: 0; }
.step.done b svg { width: 17px; height: 17px; stroke-width: 3; }
.gauge { grid-template-columns: 1fr 190px 1fr; gap: 10px; padding-top: 10px; min-height: 150px; direction: rtl; }
.transfer-visual { position: relative; width: 188px; height: 132px; }
.gauge .arc { left: 0; top: 0; transform: none; width: 188px; height: 94px; border: 0; border-radius: 188px 188px 0 0; background: conic-gradient(from 270deg, #5824eb 0deg 48deg, #14c7ff 48deg 180deg, transparent 180deg); mask: radial-gradient(closest-side at 50% 100%, transparent 0 68%, #000 69%); -webkit-mask: radial-gradient(closest-side at 50% 100%, transparent 0 68%, #000 69%); }
.gauge .arc::after { display: none; }
.gauge-center { top: 62px; background: #f2f5fa; color: #18223e; }
.gauge-center svg { width: 22px; height: 22px; }
.gauge strong { font-size: 20px; line-height: 1.4; }
.gauge b { color: #3e4970; }
.gauge em { display: block; margin-top: 4px; }
.transfer-stat { align-self: end; padding-bottom: 8px; }
.payroll-transfer { text-align: right; }
.external-transfer { text-align: left; }
.plain-icon svg { display: block; }
.panel > a { white-space: nowrap; }
.commitment-row b, .legend b, .liquidity dd, .transfer-stat strong { font-variant-numeric: tabular-nums; }
.transfer-chart { display: grid; gap: 13px; padding-top: 7px; }
.horizontal-transfer-bar { height: 16px; display: flex; overflow: hidden; border-radius: 999px; background: #eef1f7; direction: ltr; }
.horizontal-transfer-bar span { display: block; height: 100%; }
.payroll-segment { background: linear-gradient(90deg, #14c7ff, #198deb); }
.instapay-segment { background: linear-gradient(90deg, #7042f5, #5723e8); }
.wallet-segment { background: linear-gradient(90deg, #a31fa9, #c348bd); }
.transfer-row { display: grid; grid-template-columns: 12px 1fr auto auto; align-items: center; gap: 9px; font-size: 13px; }
.transfer-row i { width: 9px; height: 9px; border-radius: 50%; }
.transfer-row span { font-weight: 700; color: #3e4970; }
.transfer-row b { font-weight: 700; font-variant-numeric: tabular-nums; direction: ltr; }
.transfer-row em { min-width: 42px; color: #637494; font-style: normal; font-weight: 700; direction: ltr; text-align: left; }
.payroll-dot { background: #159fea; }.instapay-dot { background: #5d28ec; }.wallet-dot { background: #b135aa; }
.user-tools .month-picker { margin-left: 8px; }

/* A consistent action footer aligns every dashboard card action. */
.panel { display: flex; flex-direction: column; }
.panel > a { margin-top: auto; padding-top: 14px; }
.logout { display: flex; align-items: center; justify-content: center; gap: 9px; direction: rtl; }
.logout svg { width: 20px; height: 20px; flex: 0 0 auto; }
/* Route sections must remain hidden even when their component class defines display. */
[hidden]{display:none !important}
