#!/usr/bin/env python3
"""27-kia-style production banner renderer — 1200x628 & 1200x1200"""

from pathlib import Path
from playwright.sync_api import sync_playwright

OUTPUT_DIR = Path("/home/jay/workspace/output/meta-ads/production-banners/27-kia-style")

SIZES = [
    ("c27-1200x628.html",  "c27-1200x628.png",  1200, 628),
    ("c27-1200x1200.html", "c27-1200x1200.png", 1200, 1200),
]


def render_all():
    with sync_playwright() as p:
        browser = p.chromium.launch()
        for html_name, png_name, w, h in SIZES:
            html_path = OUTPUT_DIR / html_name
            png_path  = OUTPUT_DIR / png_name
            page = browser.new_page(viewport={"width": w, "height": h})
            page.goto(f"file://{html_path.resolve()}", wait_until="networkidle")
            page.wait_for_timeout(2000)   # allow font + bg to load
            page.screenshot(path=str(png_path), type="png")
            page.close()
            size_kb = png_path.stat().st_size // 1024
            print(f"  [OK] {png_name}  ({w}x{h})  {size_kb} KB")
        browser.close()
    print("Done.")


if __name__ == "__main__":
    render_all()
