fix: store session json in url/base64 modes, scan disk for missing sessions, support url mode late joining, and display available sessions on select screen
- Added src/lib/cors.ts shared CORS helper with OPTIONS handler
- Exported OPTIONS from all 6 API routes (session, slide, poll, doubt, chat, events)
- Rewrote /api-docs as a full interactive API reference (dark theme, tabbed, collapsible cards with copy buttons)
- Updated layout metadata to SlideMap branding
- All API endpoints now work from ANY frontend (React, Vue, vanilla JS, Electron, etc.)
Fix: slides now broadcast imageBase64 to students; polls always work (auto-end previous); endPoll implemented