feat: add DR Capacity Planner, light/dark mode toggle, and PDF export

- Add zroc-planner UI page with VM selector, journal retention slider (1h-30d),
  WAN compression input, and live bandwidth/journal/mirror storage estimates
- Add CSV and PDF export for planning reports
- Add light/dark mode toggle in TopBar with localStorage persistence
- Wire theme via CSS custom properties for full Tailwind opacity support
- Add Planner route and sidebar entry

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Justin
2026-04-12 20:29:38 -04:00
parent 5a617fd550
commit b7b9f6191d
10 changed files with 592 additions and 10 deletions
+8 -8
View File
@@ -5,11 +5,11 @@ export default {
theme: {
extend: {
colors: {
canvas: '#080d1a',
surface: '#0d1526',
raised: '#131f35',
border: '#1e2d47',
'border-bright': '#2a4066',
canvas: 'rgb(var(--color-canvas) / <alpha-value>)',
surface: 'rgb(var(--color-surface) / <alpha-value>)',
raised: 'rgb(var(--color-raised) / <alpha-value>)',
border: 'rgb(var(--color-border) / <alpha-value>)',
'border-bright': 'rgb(var(--color-border-bright) / <alpha-value>)',
accent: {
DEFAULT: '#0ea5e9',
dim: '#0284c7',
@@ -20,9 +20,9 @@ export default {
warn: '#f59e0b',
crit: '#ef4444',
info: '#818cf8',
'text-primary': '#e2e8f0',
'text-secondary': '#7c93b5',
'text-muted': '#4a6080',
'text-primary': 'rgb(var(--color-text-primary) / <alpha-value>)',
'text-secondary': 'rgb(var(--color-text-secondary) / <alpha-value>)',
'text-muted': 'rgb(var(--color-text-muted) / <alpha-value>)',
},
fontFamily: {
mono: ['"IBM Plex Mono"', 'monospace'],