- Add database migrations for plans, subscriptions, notification preferences, and notification log tables - Implement DispatchUserNotificationJob to handle channel resolution, daily limits, and logging (sent/tier_restricted/daily_limit) - Add SendScheduledWhatsAppJob for scheduled notification delivery - Create PlanFeatures service to resolve tier capabilities, check daily limits, and validate fuel
- Move map pin icon to right side of input with adjusted spacing - Change button styling from accent to primary color
Enables stateful API via Sanctum so the Vue SPA can call /api/* routes using cookie auth, without requiring an X-Api-Key header. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds `VerifyApiKey` middleware to validate `X-Api-Key` header against `app.api_secret_key` config. Returns 403 if key is missing or invalid.