@Kryptos: Clearly worded, unambiguous functional requirements and nothing more. Let the developer(s) figure out architecture, design, what the UI should look like, etc.

The actual document format doesn't really matter. Something as simple as a bulleted list would work, all the way to something full of workflows, charts, and images.