# Video Style Rules

## Core Principles

These are non-negotiable rules for all video generation.

### Animation Style

**Always flashy, never slideshow.**

- ✅ **DO:** Dynamic motion, kinetic typography, energetic transitions
- ✅ **DO:** Elements that move, scale, rotate, and transform continuously
- ✅ **DO:** Smooth easing with spring animations for natural feel
- ✅ **DO:** Parallax layers, particle effects, animated backgrounds
- ❌ **DON'T:** Static frames with simple fade transitions
- ❌ **DON'T:** Slideshow-style animations (image → fade → image)
- ❌ **DON'T:** Text that just appears without motion

### Content Rules

**Never use emojis in video content.**

- ❌ No emoji characters (🔥 ✨ 💡 etc.) in text overlays
- ❌ No emoji as bullet points or decorations
- ✅ Use icons, shapes, or custom graphics instead
- ✅ Use animated iconography if visual emphasis is needed

### Motion Hierarchy

Every video should have multiple layers of motion:

1. **Background layer** — Subtle gradient shifts, moving grids, particles (slowest)
2. **Content layer** — Main text/images with purposeful animation
3. **Accent layer** — Highlights, glows, emphasis effects (fastest)

### Transition Philosophy

Transitions should feel like choreographed movement, not PowerPoint:

```
❌ Bad: Fade in → hold → fade out
✅ Good: Slide in with overshoot → subtle float → zoom out with rotation
```

Use spring physics (`spring({ damping: 10-15 })`) for organic feel.

### Pacing

- Minimum 2 animated elements on screen at any time
- No frame should feel "static" — something should always be moving
- Text should have character-by-character or word-by-word reveals, not block appears

## Implementation Checklist

Before rendering any video, verify:

- [ ] Background has subtle animation (gradient shift, particles, or pattern movement)
- [ ] Text animates in with motion (not just fade)
- [ ] No emojis anywhere in the content
- [ ] At least 2 layers of motion depth
- [ ] Transitions use spring/easing, not linear
- [ ] Nothing feels like a slideshow
