#!/usr/bin/env python3.12
"""
Prompt builder for design generation.
"""
from __future__ import annotations

from typing import Dict, List


def build_prompt(site: Dict, overused: List[str], underused: List[str]) -> str:
    domain = site.get("domain", "")
    title = site.get("title", "")
    desc = site.get("description", "")
    theme = site.get("theme", "default")
    return f"""
You are designing a unique visual language for {domain} ({title}).
Context: {desc}
Theme: {theme}

Avoid overused patterns: {', '.join(overused) if overused else 'none provided'}
Prefer underused patterns: {', '.join(underused) if underused else 'none provided'}

Output a concise design language covering:
- Aesthetics and tone
- Layout motifs and navigation
- Palette and typography
- Imagery and motifs
- Interactions and prompts for implementation
- Uniqueness notes (3+ differentiators)
"""
