---
name: PDF Report Creation — Bilingual Polished Reports
priority: 5
keywords: pdf, تقرير pdf, report pdf, pdf report, اطبع, طبع, تقرير, مستند, polished report, executive summary, brief, نتائج, تقرير تنفيذي, monthly brief, weekly summary
---

# PDF Report Creation — تقارير PDF احترافية

## When to use
The user wants a polished, designed PDF — for an executive, a customer, a regulator, or a portfolio piece. Triggers: "اعمللي تقرير PDF عن X", "send me a polished PDF brief", "monthly report as a PDF". NOT triggered by "save this as a file" (use `write_file`) or "make me an Excel" (use `create_excel`).

## Iron Rules

1. **Use `create_pdf_report` or `html_to_pdf`** — NOT `write_file` (that creates a .txt). NOT `zatca_invoice` (that's regulated VAT output).

2. **Design quality is non-negotiable.** Apply the Impeccable Design skill rules: OKLCH colors, 250+ lines of actual content for a real report, 4+ sections (cover + summary + body + recommendations), typography pairing.

3. **Bilingual where the user is Saudi.** Default: Arabic body, English headings for technical terms. RTL layout. If the customer is non-Arab, English-only.

4. **Cite sources.** Any number / fact in the report MUST come from a tool call (research_topic / internal_knowledge_search / etc.) — never invent statistics. Inline citations look like `(المصدر: Counterpoint Research, 2025)`.

5. **Auto-display.** After tool succeeds, the file opens automatically. Don't call `open_file` manually.

## Procedure

1. Confirm scope: subject, audience, target length, format (executive 1-pager vs. detailed report).
2. Gather data: `internal_knowledge_search` + at most ONE `research_topic` call.
3. Outline sections (cover → summary → body → recommendations → appendix).
4. Either:
   - Call `create_pdf_report` with structured `{title, sections:[{heading, body, charts}]}`, OR
   - Build polished HTML + call `html_to_pdf` (preferred for high-design output — gives you full CSS).
5. One-sentence confirmation to user.

## Saudi-aware design defaults

- **Colors:** OKLCH palette — primary `oklch(72% 0.18 75)` (warm amber, plays well with Arabic), text `oklch(20% 0 0)` for body. Avoid pure black on white — too harsh.
- **Fonts:** "IBM Plex Sans Arabic" for body, "IBM Plex Serif" for headings. Both Google-hosted.
- **Hierarchy:** Cover page, then numbered sections — RTL pagination.
- **Charts:** Use real data tables; if you must chart, embed inline SVG, not JPEGs of charts.

## Examples

**User:** "اعمللي تقرير PDF عن أداء فريق المبيعات هذا الربع"
**You:** `internal_knowledge_search` for Q-to-date sales records → group by salesperson → `html_to_pdf` with sections [غلاف, ملخص تنفيذي, الأداء حسب الموظف, التوصيات]. 250+ lines of HTML with OKLCH colors and motion-free design. Reply: "التقرير جاهز ☝️"

**User:** "monthly competitive intelligence brief in PDF"
**You:** `internal_knowledge_search` for competitor entities → `research_topic` for recent news (one call) → `html_to_pdf` with sections [Cover, Executive Summary, Per-Competitor Analysis, Threats & Opportunities, Recommendations].

## Anti-patterns

- ❌ Calling `write_file` with `.pdf` extension — that writes a .txt with `.pdf` in the name, not a real PDF.
- ❌ Skipping design (no OKLCH, no real sections, <100 lines) — design quality gate will catch it and force a rewrite.
- ❌ Inventing citations like "(Source: Internal Research)" — must be a real tool call.
- ❌ Calling `zatca_invoice` for a non-invoice report.
