- CsvParser._parseRow() now handles quoted fields: commas inside
double quotes are treated as literal, and "" is an escaped quote.
- Empty lines are filtered out during parsing.
- Each header cell gets a copy button (clipboard icon) that appears
on hover, right-aligned. Clicking it copies the entire column
(header + all data rows) joined by newlines to the clipboard.
- Styling: button is absolutely positioned, fades in on header hover,
uses Obsidian CSS variables for theming.
Co-authored-by: Shelley <shelley@exe.dev>