diff --git a/AGENTS.md b/AGENTS.md index b167ab1..b344c33 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -60,6 +60,15 @@ Before implementing new features, check: --- +## Development Environment + +This project runs in a **devcontainer** with the following services always available: + +- **PostgreSQL** is available at `localhost:5432`. The `DATABASE_URL` environment variable is pre-set (e.g., `postgresql://transparency:devpassword@localhost:5432/transparency_dev`). Do not attempt to install or start PostgreSQL — it is already running. +- **Playwright Chromium** must be installed before running E2E tests: `npx playwright install chromium` + +--- + ## When in Doubt 1. Search the codebase for similar patterns diff --git a/src/components/campaigns/PublicCampaignPage.tsx b/src/components/campaigns/PublicCampaignPage.tsx index 768d559..16d063c 100644 --- a/src/components/campaigns/PublicCampaignPage.tsx +++ b/src/components/campaigns/PublicCampaignPage.tsx @@ -68,7 +68,9 @@ export function PublicCampaignPage({ ? `${window.location.origin}/org/${organizationSlug}/donate/${campaign.id}` : `/org/${organizationSlug}/donate/${campaign.id}`; - const accentColor = primaryColor || '#16a34a'; + // Default green-700 (#15803d) passes WCAG AA contrast (4.79:1) with white text; + // green-600 (#16a34a) only achieves 3.14:1 which fails the 4.5:1 threshold. + const accentColor = primaryColor || '#15803d'; return (
diff --git a/src/lib/email/templates/campaign-invite-email.tsx b/src/lib/email/templates/campaign-invite-email.tsx index 94caf38..d9e511e 100644 --- a/src/lib/email/templates/campaign-invite-email.tsx +++ b/src/lib/email/templates/campaign-invite-email.tsx @@ -146,7 +146,7 @@ const campaignCard = { borderRadius: '8px', padding: '16px 20px', margin: '0 0 16px', - borderLeft: '4px solid #16a34a', + borderLeft: '4px solid #15803d', }; const campaignTitle = { @@ -191,7 +191,7 @@ const buttonContainer = { }; const button = { - backgroundColor: '#16a34a', + backgroundColor: '#15803d', borderRadius: '6px', color: '#ffffff', fontSize: '15px',