Part of epic: #32
Depends on: #41 (core module skeleton must exist first)
Slide 1 — Cover
Full dark-blue (GS_BLUE) background. Elements:
- Company name in large white bold text (centre)
- Ticker + Exchange in smaller white text below
- Rating pill: coloured rectangle (BUY=green, HOLD=grey, SELL=red) with white text
- Target price:
TP: $XXX right-aligned
- Date + "Sellside Research Engine" watermark in footer
- Gold horizontal rule separating company from metadata
Slide 2 — Executive Summary
2x3 grid of 6 key fields (from issue #21):
- Rating | Target Price | Variant View
- Top Thesis Point | Top Risk | Next Catalyst
Each cell has: field label in small GS_BLUE text, value in larger black bold text. Rating cell background is colour-coded.
Acceptance Criteria
Part of epic: #32
Depends on: #41 (core module skeleton must exist first)
Slide 1 — Cover
Full dark-blue (GS_BLUE) background. Elements:
TP: $XXXright-alignedSlide 2 — Executive Summary
2x3 grid of 6 key fields (from issue #21):
Each cell has: field label in small GS_BLUE text, value in larger black bold text. Rating cell background is colour-coded.
Acceptance Criteria
_add_cover_slide()implemented with all elements listed above_add_exec_summary_slide()implemented with 2x3 gridtest_pptx_cover.pyasserts slide count >= 2 afterbuild()