ROOT CAUSE: Frontend blocksToMarkdown outputs NEW syntax: - [card:type]...[/card] - [button:style](url)Text[/button] But backend EmailRenderer.php only had regex for OLD syntax: - [card type="..."]...[/card] - [button url="..."]Text[/button] FIXES: 1. parse_cards() now handles BOTH syntaxes: - NEW [card:type] regex first (extracts type from :type) - OLD [card type="..."] regex for backward compatibility 2. render_card() now handles BOTH button syntaxes: - NEW [button:style](url)Text[/button] regex - OLD [button url="..."] regex for backward compatibility 3. Card types properly styled with inline CSS: - hero: gradient background - success: green background + border - info: blue background + border - warning: yellow background + orange border 4. Buttons rendered with full inline styles + table wrapper for Gmail/email client compatibility
21 KiB
21 KiB