.stat-card { text-align: center; }
.stat-card .display-6 { font-weight: 700; }
.chart-container { position: relative; height: 300px; }
canvas { max-height: 300px; }
.nav-tabs .nav-link.low-data { opacity: 0.45; }
.badge-link:hover { background: var(--bs-border-color) !important; }

/* Activity heatmap styles */
.hl-heatmap-grid {
    display: grid;
    /* fixed column width for hours so cells are visible; allow horizontal scroll */
    grid-template-columns: 48px repeat(24, minmax(12px, 1fr));
    gap: 6px;
    align-items: center;
    overflow-x: auto;
    padding-bottom: 6px;
}
.hl-heatmap-label { font-size: 12px; color: var(--hl-chart-text, #3c3836); }
.hl-heatmap-hour-label { font-size: 10px; text-align: center; color: var(--hl-chart-text, #3c3836); }
.hl-heatmap-day-label { font-size: 12px; text-align: right; padding-right:6px; color: var(--hl-chart-text, #3c3836); }
.hl-heatmap-cell { width: 12px; min-width: 12px; height: 14px; border-radius: 3px; background-color: var(--hl-chart-neutral, #bdae93); }
