#!/usr/bin/env python3
"""studiosoft_hc51_carousel_gen.py — StudioSoft Healthcare Carousel hc51 (RE-AIR/new-topic Threads).

Topik : "7 Aplikasi Mental Health Anak Usia 4-10 Tahun yang Harus Dicoba Orang Tua"
Artikel: https://studiosoft.id/7-aplikasi-mental-health-anak-usia-4-10-tahun-yang-harus-dicoba-orang-tua/
         (alive / HTTP 200, diverifikasi 30 Sep 2026, WP id 2765, publish 27 Sep 2025)

Konteks run 30 Sep 2026 (02:00 WIB / 29 Sep 19:00 UTC):
- Stok artikel healthcare BARU masih HABIS (WP REST 30 Sep: artikel terbaru 28 Sep
  `tools-ai-untuk-bisnis-pilih-sesuai-kebutuhan` = non-healthcare).
- AUDIT (hc51_audit.py, 30 Sep): 7 artikel HC seri ini masih DEAD/404 -> 11 artikel HC hidup.
- Threads: artikel ini jejaknya = 1x TEXT 14 Sep 2026 07:01Z -> BELUM PERNAH jadi carousel
  Threads & satu-satunya artikel HC hidup yang belum pernah jadi topik carousel seri hc.
  Slide BARU `ss_hc51_mentalanak_*`.
- Isi slide diambil dari artikel asli (WP REST id 2765): 7 aplikasi (Worry Dolls, Mindful
  Powers, Calm Kids, Smiling Mind, Breathe Think Do with Sesame, Headspace for Kids,
  Super Stretch Yoga) + peran pendampingan orang tua.

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).
"""
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_hc51_carousel")
TAG = "#mentalhealthanak"
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([("7 APLIKASI", SKY), "MENTAL HEALTH", "UNTUK ANAK"], after=44)
    s.lead("Menjaga kesehatan mental anak usia 4-10 tahun bukan hal yang bisa ditunda, dan "
           "teknologi bisa jadi salah satu pintu masuknya.", after=34)
    s.para("Ini tujuh aplikasi yang layak dicoba orang tua bersama anak.", size=30)
    return s.render("ss_hc51_mentalanak_01_cover.png", OUT_DIR)


def s2():
    s = mk(2)
    s.title([("KENAPA SEJAK", SKY), "USIA DINI?"], after=44)
    s.bullets([
        ("Usia 4-10 tahun", "anak masih belajar mengenali dan menamai emosinya sendiri, "
                            "belum selalu bisa bilang apa yang dia rasakan."),
        ("Kecemasan anak itu nyata", "muncul dari rutinitas sekolah, pertemanan, sampai "
                                     "perubahan suasana di rumah."),
        ("Teknologi sebagai jembatan", "aplikasi membantu anak bercerita dengan cara yang "
                                       "dia mengerti, bukan menggantikan pendampingan orang tua."),
    ], gap=26, name_size=38, desc_size=28)
    return s.render("ss_hc51_mentalanak_02_kenapa.png", OUT_DIR)


def s3():
    s = mk(3)
    s.title([("EMPAT APLIKASI", SKY), "PERTAMA"], after=44)
    s.bullets([
        ("1. Worry Dolls", "anak mencurahkan kekhawatirannya lewat boneka virtual supaya "
                           "merasa lebih tenang dan didengar."),
        ("2. Mindful Powers", "melatih kesadaran diri lewat permainan, fokus anak tumbuh "
                              "dan stres lebih terkelola."),
        ("3. Calm Kids", "meditasi singkat dan latihan pernapasan yang disesuaikan untuk "
                         "anak usia dini."),
        ("4. Smiling Mind", "program mindfulness dan meditasi yang dirancang psikolog, "
                            "sesinya dibagi per kelompok usia."),
    ], gap=24, name_size=38, desc_size=28)
    return s.render("ss_hc51_mentalanak_03_empat.png", OUT_DIR)


def s4():
    s = mk(4)
    s.title([("TIGA APLIKASI", SKY), "BERIKUTNYA"], after=44)
    s.bullets([
        ("5. Breathe, Think, Do", "dari Sesame Street: anak belajar memecahkan masalah "
                                  "dengan berpikir positif dan berempati."),
        ("6. Headspace for Kids", "panduan meditasi bersuara ramah dan cerita supaya anak "
                                  "merasa nyaman dan rileks."),
        ("7. Super Stretch Yoga", "menggabungkan yoga dan relaksasi untuk membangun "
                                  "kesadaran tubuh anak sejak dini."),
    ], gap=26, name_size=38, desc_size=28)
    return s.render("ss_hc51_mentalanak_04_tiga.png", OUT_DIR)


def s5():
    s = mk(5)
    s.title([("MULAI DARI", SKY), "SATU APLIKASI"], after=44)
    s.lead("Pilih satu aplikasi, dampingi anak 10-15 menit, lalu tanyakan bagaimana "
           "perasaannya setelah memakainya.", after=34)
    s.para("Yang membuat anak tumbuh sehat secara emosional bukan aplikasinya, melainkan "
           "kebiasaan orang tua menemaninya.", size=30, after=18)
    s.h2("www.studiosoft.id", size=40)
    return s.render("ss_hc51_mentalanak_05_cta.png", OUT_DIR)


if __name__ == "__main__":
    print("StudioSoft Healthcare Carousel hc51 \u2014 7 aplikasi mental health anak 4-10 tahun")
    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)
