diff --git a/frontend/dashboard.html b/frontend/dashboard.html
index 9e64590..b5e796c 100644
--- a/frontend/dashboard.html
+++ b/frontend/dashboard.html
@@ -154,9 +154,9 @@
grid-template-columns: repeat(3, 1fr);
gap: 22px;
margin-bottom: 22px;
- align-items: start;
+ align-items: stretch;
}
- .bottom-grid > * { margin-bottom: 0; }
+ .bottom-grid > * { margin-bottom: 0; height: 100%; }
.qa-btn {
display: flex; align-items: center; gap: 8px;
@@ -3309,10 +3309,10 @@
/* ══ WIDGET: Activity heatmap (redesigned) ══════════════════════════ */
function loadActivityWidget(rows) {
- _activityRows = rows;
+ _activityRows = rows || [];
const w = document.getElementById('w-activity');
- if (!w || !rows || !rows.length) { if (w) w.style.display = 'none'; return; }
- w.style.display = '';
+ if (!w) return;
+ showWidget('w-activity'); // показываем всегда (пустое состояние рисует renderHeatmap)
renderHeatmap();
}
@@ -4061,7 +4061,7 @@
loadActivityWidget(rows);
loadSubjProgressWidget(rows);
renderStreakCalendar(rows);
- } catch {}
+ } catch { loadActivityWidget([]); }
const heroRow = document.getElementById('hero-row');
if (heroRow) heroRow.style.display = '';
loadContinueWidget();