Wrap text in nested spans using display: inline-table on outer
and display: table-cell with vertical-align: middle on inner.
This is a classic centering technique that html2canvas should handle.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Use height: 24px with line-height: 24px and no vertical padding.
This forces text to center vertically within the fixed height container.
Added box-sizing: border-box and vertical-align: middle for reliability.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Text was sitting too low, reducing top padding and increasing bottom
to push text upward for visual centering.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Text was sitting too high, so need 5px top / 4px bottom to push
the text downward for visual centering.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Use 4px top / 5px bottom padding to compensate for Arial font metrics
where the visual center differs from mathematical center. The extra
bottom padding pushes the text up to appear visually centered.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace flexbox-based centering (inline-flex, alignItems, justifyContent)
with explicit height + line-height matching (22px) for reliable rendering
in html2canvas. Flexbox properties don't render consistently when
converting HTML to canvas.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove Tone Agent (tone is now part of Brand specs)
- Split Channel Agent into Channel Best Practices Agent and Channel Tech Specs Agent
- Convert Legal Agent from stub to full Gemini-powered implementation
- Add new prompt files for channel_best_practices.md, channel_tech_specs.md, legal.md
- Update ReferenceDocsService with new methods for loading specs
- Update schemas and analysis service to use new agent structure
- Update all frontend components to use new agent names and properties
- Update mock data in Projects.tsx and Campaigns.tsx
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add lineHeight: 1 to RagStatusBadge component styling to ensure text
is tightly contained within its bounding box, allowing flexbox centering
to work correctly in PDF rendering engines.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>