POST/PUT/PATCH handlers were ignoring showFeaturedImageInHeader,
showBackgroundColorInHeader, and showLogoInHeader fields sent by
the form, so background colors weren't persisting.
- add AlbumPhoto, BlockContent, AppleMusicData types
- add ProjectCreateBody interface for request validation
- use Prisma.ProjectWhereInput for query filters
- use Prisma.JsonValue for JSON fields
- add proper type guards for content validation