03e6d7287ea6751aabf2bb70a6aba2ccfe31061e
CUSTOM_PERIODS in report.py now drives _filtered/_period_label/ compute_period_stats for the 3 CTA phases (date ranges from the proposed plan), and the campaign-report title treatment applies to them the same way it does for July-September. Removed the app.py placeholder guards (reports tab + docx download) now that real period computation exists instead of an alert box, and fixed the docx filename label lookup to check all campaigns' periods, not just the old single flat list. Added Core Message (reused) and Roadmap (per-phase) abstracts to monthly_report_notes.py for the 3 phases - no executive_summary yet since the campaign hasn't run and isn't approved, so KPI/chart cards render on real, currently-empty data rather than fabricated findings.
Languages
Python
50.8%
HTML
48.9%
CSS
0.3%