# designer — Excel export design pass **Date:** 2026-08-27 · Task: review the ticket Excel export (column sizes, colours, styling). ## Before `utils/excel.utils.ts` had a bare schema — no widths, no header styling, no alignment, raw SNOW timestamps, no number formatting. Functional but ugly. ## After (FORGE-branded, token-derived colours) - **Header row**: indigo `#6366F1` (`--primary`) background, white **bold** centred text, row height 22, **frozen** (`stickyRowsCount: 1`) so it stays visible when scrolling. - **Column widths** tuned per field: Number 15, State 20, Assignee/Requester 22, Short description **46 + wrap**, Group 30, Brand/Market 14, Lifetime/In-state 12, Last activity 14, Jira 14, Jira key 12, Cost 11, Ccy 7, PO 15, Link 34. - **Alignment**: numeric columns (Lifetime, In state, Cost) right-aligned; dates + Ccy centred; text left. All vertically centred. - **Number format**: Cost `#,##0` (thousands separators). - **Dates**: `Last activity` rendered as a short local date (`25 Aug 26`) instead of the raw `2026-08-25 12:00:00` SNOW timestamp. - **Grid**: thin light-grey borders `#E2E8F0` (`--border`) on every cell. - **Font**: Calibri 11 (header) / 10 (body). - Columns reordered so the human-readable ones (desc, brand, market, requester) sit before the group/analytics fields. ## Evidence - client `tsc --noEmit` → clean; `vite build` → OK. - Node render (`write-excel-file/node`, all style options): produced a valid **"Microsoft Excel 2007+"** file (PK/zip header, 4 KB) — every styling option accepted, no throw. ## Next: done — export honours the FORGE palette + is readable. (Excel colour-coding by state/size intentionally skipped to keep it clean; can add if wanted.)