#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Re-render deck SEO item #68 (image_posting_queue) dengan ENGINE STANDAR 16 Sep 2026.

Kenapa di-render ulang: berkas asli `studiosoft_carousel/*.png` dibuat 19 Jul-1 Agu 2026,
SEBELUM standar desain 16 Sep 2026 difixir Bos. Cacat yang ditemukan (verifikasi visual
`vision_analyze`): garis separator putus-putus ("-----"), bullet glyph kotak rusak (☒),
footer "Swipe ☒" rusak, blok teks nempel ke atas -> void besar di bawah, dan warna teks
#1E40AF (navy lama yang DILARANG). Aturan Bos 16 Sep: "Gambar lama/arsip yang belum sesuai
standar ini JANGAN diposting - render ulang dulu dengan engine di atas."

Isi teks TIDAK diubah (only design) - kecuali:
  * "Anda" -> "kamu" (nada sosmed, perintah Bos 5 Okt 2026 menang atas naskah lama),
  * em dash "—" -> ":" / "," (pola AI, `cek_pola_ai.py`).
Slide 1 (cover) aslinya HILANG dari arsip (arsip hanya 02..05) -> dibuat cover baru yang
setia pada tema deck (APA ITU SEO / kenapa penting / 3 pilar / CTA).

Output: studiosoft_carousel_fixed_seo/01..05.png (1080x1350, bg #122B63, teks putih).
"""
import os
import sys

sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
from ss_carousel_lib import Slide, SKY, BIRU_TUA, WHITE

OUT = os.path.join(os.path.dirname(os.path.abspath(__file__)),
                   "studiosoft_carousel_fixed_seo")
TOTAL = 5


def main():
    s = Slide(1, TOTAL, tag="", bg=BIRU_TUA, fg=WHITE)
    s.title(["KENAPA BISNIS", "KAMU PERLU", "SEO?"], after=40)
    s.lead("Panduan singkat: apa itu SEO, kenapa penting, dan apa saja pilarnya.")
    s.gap(24)
    s.bullets([("Gratis & organik", "bukan iklan berbayar"),
               ("Hasil bertahan lama", "traffic konsisten tiap hari"),
               ("Lebih dipercaya", "posisi halaman 1 = kredibilitas")])
    print(s.render("01_cover.png", out_dir=OUT, quiet=False))

    s = Slide(2, TOTAL, tag="", bg=BIRU_TUA, fg=WHITE)
    s.title(["APA ITU SEO"], after=36)
    s.para("SEO adalah singkatan dari Search Engine Optimization: serangkaian "
           "strategi dan teknik untuk mengoptimalkan website agar muncul di "
           "peringkat teratas hasil pencarian Google, Bing, dan mesin pencari "
           "lainnya.", size=30)
    s.gap(20)
    s.para("Tujuannya sederhana: ketika calon pelanggan mencari produk atau "
           "layanan yang kamu tawarkan, website kamu yang pertama mereka lihat.",
           size=30)
    s.gap(24)
    s.bullets(["Bukan iklan: gratis & organik", "Hasil bertahan lama",
               "Bangun kredibilitas & trust"])
    print(s.render("02_apa_itu_seo.png", out_dir=OUT, quiet=False))

    s = Slide(3, TOTAL, tag="", bg=BIRU_TUA, fg=WHITE)
    s.title(["MENGAPA", "PENTING?"], after=36)
    s.para("68% pengalaman online dimulai dari mesin pencari. 75% pengguna tidak "
           "pernah scroll ke halaman 2 Google. Organic search menyumbang 53% "
           "traffic website rata-rata.", size=30)
    s.gap(24)
    s.bullets(["Traffic organik = hemat biaya iklan",
               "Visitasi konsisten setiap hari",
               "Kepercayaan lebih tinggi dari iklan"])
    print(s.render("03_mengapa_penting.png", out_dir=OUT, quiet=False))

    s = Slide(4, TOTAL, tag="", bg=BIRU_TUA, fg=WHITE)
    s.title(["3 PILAR", ("SEO", SKY)], after=40)
    s.bullets([("On-Page SEO", "Optimasi konten, judul, meta, heading di dalam website."),
               ("Off-Page SEO", "Membangun backlink & otoritas dari website lain."),
               ("Technical SEO", "Kecepatan, struktur data, sitemap, dan mobile-friendly.")])
    print(s.render("04_3_pilar_seo.png", out_dir=OUT, quiet=False))

    s = Slide(5, TOTAL, tag="", bg=WHITE, fg=BIRU_TUA, dot_color=BIRU_TUA)
    s.title(["SIAP", "OPTIMASI", "SEO?"], after=40)
    s.para("SEO bukan ilmu sihir. Ini strategi yang terukur. Dengan pendekatan "
           "yang tepat, website kamu bisa muncul di halaman pertama Google.", size=30)
    s.gap(24)
    s.bullets([("Konsultasi gratis", "kebutuhan SEO bisnis kamu"),
               ("Audit website tanpa biaya", "temuan teknis & peluang kata kunci"),
               ("Timeline & strategi jelas", "target, proses, dan laporan")])
    print(s.render("05_cta.png", out_dir=OUT, quiet=False))
    print("SELESAI ->", OUT)


if __name__ == "__main__":
    main()
