Dashboard
The sidebar uses height: stretch — it fills the available space in the flex row without 100vh or explicit height calculations. Resize the window or change the topbar height and it still works.
v138 · css
height: stretch fills the remaining space in the parent container accounting for margins — no need for 100vh, calc(100% - Npx), or flexbox hacks. This is the canonical use case: a sidebar that fills from below the topbar to the bottom of the viewport without magic numbers.
The sidebar uses height: stretch — it fills the available space in the flex row without 100vh or explicit height calculations. Resize the window or change the topbar height and it still works.
/* 3 approaches for a sidebar that fills the remaining height */
/* ❌ 100% — often broken: only works if parent has explicit height */
.sidebar { height: 100%; }
/* ⚠ calc() — fragile: breaks when topbar height changes */
.sidebar { height: calc(100vh - 40px); }
/* ✅ stretch — fills available space, respects margins, no magic numbers */
.sidebar { height: stretch; }
/* stretch also applies to width — fills inline available space */
input { width: stretch; } /* vs: width: calc(100% - margin-left - margin-right) */
/* Browser prefix history:
-webkit-fill-available (old Chrome/Safari)
stretch (standardised, Chrome 138+) */