Added users_messages schema with correct field naming (senderId, recipientId)
Implemented message count and recent message fetch via storage.GetMessageCount and GetRecentMessages
Fixed field mismatches in SQL queries (recipientId vs recipient_id)
Displayed unread message badge in topbar with truncation for body preview
Linked messages in dropdown to full view (/account/messages/read?id=...)
Added fallback handling for unauthorized/invalid message access
Cleaned up BuildTemplateData to support full message context
Ensured CSRF/session/user context remains intact throughout