#!/usr/bin/env python3
"""studiosoft_hc58_carousel_gen.py — StudioSoft Healthcare Carousel hc58.

Topik : "Digital Marketing Rumah Sakit & Klinik: Panduan Lengkap 2026"
Artikel: https://studiosoft.id/rs-klinik-digital-marketing-2026/ (WP id 5970)
         RE-AIR Threads (jejak Threads terakhir 23 Sep 2026 = paling tua di seri hc
         setelah panduan-seo-klinik-rumah-sakit; artikel HTTP 200). Slide BARU ss_hc58_rsdigital_*.

Standar desain Bos 16 Sep 2026: engine ss_carousel_lib.py -> rata kiri, satu blok di tengah
vertikal, TANPA separator, bullet dot, bg BIRU TUA #122B63, judul Poppins-Bold 85 / body 36 /
sub 30, auto-fit. Resolusi 1080x1350 (4:5). 5 slide: cover + 3 isi + CTA.
"""
import os
import sys

from PIL import Image

sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
import ss_carousel_lib as L

WS = "/home/mantapman/.hermes/profiles/atun/workspace"   # JANGAN pakai expanduser("~")
OUT_DIR = os.path.join(WS, "studiosoft_hc58_carousel")
TAG = "#marketingrs"
BG = (18, 43, 99)      # #122B63
SKY = L.SKY


def mk(num, total=5):
    return L.Slide(num, total, TAG, bg=BG)


def s1():
    s = mk(1)
    s.title([("DIGITAL MARKETING", SKY), "RUMAH SAKIT", "& KLINIK"], after=44)
    s.lead("Promosi layanan kesehatan tidak sama dengan bisnis biasa. Ada aturan etik, dan "
           "pembacanya sedang cemas mencari jawaban.", after=30)
    s.para("Panduan 2026: konten edukasi, SEO lokal, Google Business Profile, sampai cara "
           "mengukur hasilnya dengan tenang.", size=30)
    return s.render("ss_hc58_rsdigital_01_cover.png", OUT_DIR)


def s2():
    s = mk(2)
    s.title([("TIGA ATURAN DASAR", SKY), "SEBELUM MULAI"], after=44)
    s.bullets([
        ("Etika", "jangan menjanjikan kesembuhan, jangan menakut-nakuti pembaca, dan jangan "
                  "merendahkan fasilitas lain."),
        ("Akurasi", "setiap klaim medis ditinjau dokter atau tenaga medis, dan cantumkan nama "
                    "peninjau."),
        ("Izin", "foto pasien, testimoni, dan data yang bisa mengidentifikasi seseorang hanya "
                 "dipakai dengan persetujuan tertulis."),
    ], gap=22, name_size=38, desc_size=26)
    return s.render("ss_hc58_rsdigital_02_aturan.png", OUT_DIR)


def s3():
    s = mk(3)
    s.title([("URUTAN ANGGARAN", SKY), "YANG WAJAR"], after=44)
    s.bullets([
        ("Google Business Profile", "optimalisasi gratis, dampaknya terasa paling cepat."),
        ("Halaman layanan", "website yang menjelaskan apa, untuk siapa, dan cara mendaftar."),
        ("Konten edukasi", "dua unggahan sepekan dari pertanyaan pasien yang paling sering masuk."),
        ("Iklan berbayar", "paling akhir, karena iklan ke halaman yang belum rapi hanya membuang "
                           "anggaran."),
    ], gap=18, name_size=34, desc_size=25)
    return s.render("ss_hc58_rsdigital_03_anggaran.png", OUT_DIR)


def s4():
    s = mk(4)
    s.title([("EMPAT TANDA PROGRAM", SKY), "BERJALAN BENAR"], after=44)
    s.bullets([
        ("Profil mulai diperhatikan", "muncul permintaan rute dan klik telepon dari Google."),
        ("Halaman layanan naik", "mulai muncul untuk pencarian bertema lokal."),
        ("Pasien menyebut website", "pertanyaan di layanan pelanggan mengacu informasi yang dibaca."),
        ("Ulasan bertambah", "bertambah secara alami tanpa diminta berulang."),
    ], gap=20, name_size=35, desc_size=25)
    s.para("Kalau tidak satu pun muncul dalam tiga bulan, periksa ulang sasaran wilayah dan isi "
           "kontennya.", size=28, after=0)
    return s.render("ss_hc58_rsdigital_04_tanda.png", OUT_DIR)


def s5():
    s = mk(5)
    s.title([("DARI PENCARIAN", SKY), "JADI KEPERCAYAAN"], after=44)
    s.lead("Digital marketing rumah sakit bukan soal ikut tren, tetapi cara melayani pasien "
           "lebih baik di era serba digital.", after=30)
    s.para("StudioSoft membantu rumah sakit dan klinik menyusun pemasaran digital yang etis, "
           "terukur, dan sesuai kebutuhan pasien.", size=30)
    s.h2("www.studiosoft.id", size=40)
    return s.render("ss_hc58_rsdigital_05_cta.png", OUT_DIR)


if __name__ == "__main__":
    print("StudioSoft Healthcare Carousel hc58 - digital marketing RS & klinik")
    print("=" * 70)
    for fn in (s1, s2, s3, s4, s5):
        p = fn()
        print("OK %s %s %d bytes" % (p, Image.open(p).size, os.path.getsize(p)))
    print("OK 5 slide -> %s" % OUT_DIR)
