Index: src/views/pages/admin-stats.ejs
===================================================================
--- src/views/pages/admin-stats.ejs	(revision e3a5aed2eb2a22b197079ec70b1163983eab4696)
+++ src/views/pages/admin-stats.ejs	(revision c867b7b644ca4de55b3a9138e1951f420cfc1d31)
@@ -64,5 +64,7 @@
             <span class="sc-vis" style="height: <%= visPct %>%"></span>
           </div>
-          <span class="sc-day"><%= (i % _step === 0) ? d.day.slice(8) : '' %></span>
+          <%# Unlabeled columns get an NBSP so every .sc-day keeps its text line: an empty
+              span collapses to 0 height and made the 30/90-day columns jump around. %>
+          <span class="sc-day"><%= (i % _step === 0) ? d.day.slice(8) : ' ' %></span>
         </div>
       <% }); %>
