diff --git a/frontend/dashboard.html b/frontend/dashboard.html
index 8e1ef88..932c737 100644
--- a/frontend/dashboard.html
+++ b/frontend/dashboard.html
@@ -16,17 +16,19 @@
/* ── ZONE 1: Compact Header (sticky) ── */
.dash-header {
display: flex; align-items: center; gap: 18px;
- height: 64px; padding: 0 28px;
- background: rgba(255,255,255,0.85); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
- border-bottom: 1px solid rgba(15,23,42,0.08);
+ height: 68px; padding: 0 28px;
+ background: rgba(255,255,255,0.93); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
+ border-bottom: 1px solid rgba(155,93,229,.1);
+ box-shadow: 0 2px 14px rgba(15,23,42,.05);
position: sticky; top: 0; z-index: 90;
}
.dh-avatar {
- width: 44px; height: 44px; border-radius: 50%;
+ width: 48px; height: 48px; border-radius: 50%;
background: var(--grad-1);
display: flex; align-items: center; justify-content: center;
- font-family: 'Unbounded', sans-serif; font-size: 0.9rem; font-weight: 800; color: #fff;
+ font-family: 'Unbounded', sans-serif; font-size: 0.92rem; font-weight: 800; color: #fff;
flex-shrink: 0;
+ box-shadow: 0 4px 16px rgba(155,93,229,.4);
}
.dh-text { flex: 1; min-width: 0; }
.dh-greeting {
@@ -35,9 +37,20 @@
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.dh-sub { font-size: 0.78rem; color: var(--text-3); font-weight: 500; margin-top: 2px; }
- .dh-stats { display: flex; gap: 14px; flex-shrink: 0; }
- .stat-ring { display: flex; flex-direction: column; align-items: center; gap: 2px; }
- .stat-ring .sr-label { font-size: 0.62rem; color: var(--text-3); font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; }
+ .dh-stats {
+ display: flex; gap: 0; flex-shrink: 0;
+ background: rgba(155,93,229,.05);
+ border: 1.5px solid rgba(155,93,229,.14);
+ border-radius: 16px; padding: 8px 4px;
+ }
+ .stat-ring {
+ display: flex; flex-direction: row; align-items: center; gap: 9px;
+ padding: 0 14px;
+ }
+ .stat-ring + .stat-ring { border-left: 1px solid rgba(155,93,229,.12); }
+ .stat-ring .sr-text { display: flex; flex-direction: column; gap: 1px; }
+ .stat-ring .sr-val { font-family: 'Unbounded', sans-serif; font-size: 0.82rem; font-weight: 800; line-height: 1.1; }
+ .stat-ring .sr-label { font-size: 0.56rem; color: var(--text-3); font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; }
/* ── ZONE 2: Action Banner + Cards ── */
.action-zone { margin-bottom: 22px; }
@@ -1396,8 +1409,8 @@
.lb-widget { padding: 14px; }
/* Header stats */
- .dh-stats { gap: 8px; }
- .stat-ring { min-width: 60px; }
+ .dh-stats { gap: 0; flex-wrap: wrap; padding: 6px 4px; }
+ .stat-ring { padding: 4px 10px; gap: 7px; }
.dh-greeting { font-size: 0.82rem; }
/* Admin quick actions: narrow */
@@ -2120,16 +2133,18 @@
/* ══ STAT RING SVG HELPER ════════════════════════════════════════════ */
function statRingSvg(value, max, color, label) {
const pct = max > 0 ? Math.min(100, Math.round(value / max * 100)) : 0;
- const r = 15, circ = 2 * Math.PI * r;
+ const r = 13, circ = 2 * Math.PI * r;
const dash = (pct / 100 * circ).toFixed(1);
- return `
- ${label}`;
+
+ ${value}
+ ${label}
+ `;
}
/* ══ STATS STRIP ═════════════════════════════════════════════════════ */