LST-67 (2.5) front. Completes the Mail module.
- New frontend/modules/mail/ layer (auto-detected): /mail page (3 columns),
7 components, mail service + DTO, mail store (folders/messages/unread polling).
- sanitizeMailHtml util and useSystemFolderLabel composable stay global;
AdminMailTab stays in /admin (service import repointed).
- Consumers repointed: AdminMailTab and PM TaskModal -> ~/modules/mail/...;
the store is auto-imported (Pinia storesDirs) so the layout badge/polling is
unchanged.
- /mail gated by the mail module: sidebar.php item with module=mail (so
SidebarFilter disables /mail when the module is off); the layout filters /mail
from the API sections to avoid a visual duplicate. ROLE_CLIENT exclusion kept.
- i18n key sidebar.general.mail added.
nuxt build passes; /mail and all other routes preserved.