Add bcrypt user file auth, JWT middleware on all write routes, Pinia
authStore with localStorage persistence, login view with redirect
support, and v-if guards on all CRUD controls and admin nav link.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Full CRUD for publications; link fruits to publications; upload per-fruit
PDF descriptions and fruit images stored as BYTEA; fruit detail page shows
publication descriptions and images. ImageOverlayDrawer for cover thumbnail
full-size view.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>