feat(web): visual overhaul — polished UI, animations, empty states
- Redesign globals.css: richer color palette (bg-elevated, text-secondary,
info), glow shadow, custom scrollbar, selection color, new animations
(slide-up, slide-down, scale-in)
- Button: add loading spinner, outline variant, xs size, shadow
- Badge: add dot indicator, border styling per variant
- Modal: backdrop blur, scale-in animation, close button, body scroll lock
- Card: rounded-xl, transition-all for hover effects
- Input/Select/Textarea: bg-secondary, hover border, refined focus ring
- New components: EmptyState (icon + title + desc + action), PageHeader
- Login/Register: branded logo, background glow, labeled fields,
loading state, slide-up entry animation
- Sidebar: logo branding, user avatar circle, logout icon,
section label, active nav shadow, backdrop blur on mobile
- Dashboard: stat cards with colored icon boxes, arrow-up-right hover,
staggered slide-up animation, link to respective pages
- Machines: server icon per card, copy token button, dot badge
- Projects: folder icon, chevron-right on hover, description truncate
- Project detail: workspace icon, play terminal button
- Sessions: terminal icon per card, dot status badge
- Session detail: wifi indicator, info bar, rounded terminal container
- All pages: EmptyState with CTA on empty lists, staggered animations
Refs #158, #159, #160, #161, #162, #163, #165, #166
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>