Timeout and rate-limit failures now show a warning message to the user.
Timeout increased to 10s.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
species_search.html has no form/csrf_token tag, so the cookie was
never set before the species select form was submitted.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds the dashboard view, template, URL routing, and tests. Also upgrades
Django from 5.1.15 to 5.2.1 to fix a Python 3.14 incompatibility in
template context copy that prevented view tests from running.