Check public IP via api.ipify.org on mount and display
"Выключи VPN" fullscreen message if it doesn't match
the expected home IP. Gracefully falls through on fetch errors.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace flat text entries with project-based structure.
Each project has name, local/corp fields, content textarea,
and file upload (up to 100MB) stored in MinIO S3.
New API: CRUD projects + file download + content copy.
Frontend: two views (project list + project page).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Content is no longer returned in the entries list. A separate endpoint
returns plain text content for clipboard copying on demand.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>