#!/usr/bin/env python3
from docx import Document
from docx.shared import Pt, RGBColor, Inches
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.enum.table import WD_TABLE_ALIGNMENT
from docx.oxml.ns import qn
from docx.oxml import OxmlElement

doc = Document()
section = doc.sections[0]
section.page_width = Inches(8.27)
section.page_height = Inches(11.69)
section.left_margin = Inches(1)
section.right_margin = Inches(1)
section.top_margin = Inches(1)
section.bottom_margin = Inches(0.9)

def add_para(doc, text='', bold=False, italic=False, size=11,
             align=WD_ALIGN_PARAGRAPH.JUSTIFY, sb=0, sa=6,
             color=None, indent=0):
    p = doc.add_paragraph()
    p.alignment = align
    p.paragraph_format.space_before = Pt(sb)
    p.paragraph_format.space_after = Pt(sa)
    if indent:
        p.paragraph_format.left_indent = Inches(indent)
    if text:
        r = p.add_run(text)
        r.bold = bold; r.italic = italic; r.font.size = Pt(size)
        if color:
            r.font.color.rgb = RGBColor(*color)
    return p

def add_h(doc, text, size=14):
    p = doc.add_paragraph()
    p.alignment = WD_ALIGN_PARAGRAPH.LEFT
    p.paragraph_format.space_before = Pt(0)
    p.paragraph_format.space_after = Pt(4)
    r = p.add_run(text)
    r.bold = True; r.font.size = Pt(size)
    r.font.color.rgb = RGBColor(22, 50, 61)
    return p

def add_sub(doc, text, size=12):
    p = doc.add_paragraph()
    p.alignment = WD_ALIGN_PARAGRAPH.LEFT
    p.paragraph_format.space_before = Pt(10)
    p.paragraph_format.space_after = Pt(4)
    r = p.add_run(text)
    r.bold = True; r.font.size = Pt(size)
    r.font.color.rgb = RGBColor(22, 50, 61)
    return p

def add_mini(doc, text, size=11):
    p = doc.add_paragraph()
    p.alignment = WD_ALIGN_PARAGRAPH.LEFT
    p.paragraph_format.space_before = Pt(8)
    p.paragraph_format.space_after = Pt(3)
    r = p.add_run(text)
    r.bold = True; r.font.size = Pt(size)
    r.font.color.rgb = RGBColor(22, 50, 61)
    return p

def cell_bg(cell, hex_color):
    tc = cell._tc
    tcPr = tc.get_or_add_tcPr()
    shd = OxmlElement('w:shd')
    shd.set(qn('w:val'), 'clear')
    shd.set(qn('w:color'), 'auto')
    shd.set(qn('w:fill'), hex_color)
    tcPr.append(shd)

def make_tbl(doc, headers, rows_data, hdr_bg='D9EAD3'):
    tbl = doc.add_table(rows=1+len(rows_data), cols=len(headers))
    tbl.style = 'Table Grid'
    tbl.alignment = WD_TABLE_ALIGNMENT.CENTER
    hr = tbl.rows[0]
    for i, h in enumerate(headers):
        c = hr.cells[i]
        c.text = h
        p = c.paragraphs[0]
        p.alignment = WD_ALIGN_PARAGRAPH.CENTER
        if p.runs:
            p.runs[0].bold = True; p.runs[0].font.size = Pt(10)
        cell_bg(c, hdr_bg)
    for ri, rvals in enumerate(rows_data):
        row = tbl.rows[ri+1]
        for ci, v in enumerate(rvals):
            row.cells[ci].text = v
            for para in row.cells[ci].paragraphs:
                for run in para.runs:
                    run.font.size = Pt(10)
    return tbl

def spc(doc, n=1):
    for _ in range(n):
        p = doc.add_paragraph()
        p.paragraph_format.space_before = Pt(0)
        p.paragraph_format.space_after = Pt(0)

# ============================================================
# COVER
# ============================================================
for _ in range(4): spc(doc)
for text, sz in [('LAPORAN KINERJA', 22), ('TAHUN 2026', 22)]:
    p = doc.add_paragraph(); p.alignment = WD_ALIGN_PARAGRAPH.CENTER
    p.paragraph_format.space_after = Pt(0)
    r = p.add_run(text); r.bold = True; r.font.size = Pt(sz)
    r.font.color.rgb = RGBColor(22, 50, 61)
spc(doc, 2)
p = doc.add_paragraph(); p.alignment = WD_ALIGN_PARAGRAPH.CENTER
p.paragraph_format.space_after = Pt(0)
r = p.add_run('TRIWULAN II')
r.bold = True; r.font.size = Pt(16); r.font.color.rgb = RGBColor(184, 135, 58)
spc(doc, 4)
for text in ['BIDANG PETERNAKAN DAN KESEHATAN HEWAN',
             'DINAS PERKEBUNAN DAN PETERNAKAN',
             'PROVINSI KALIMANTAN SELATAN']:
    p = doc.add_paragraph(); p.alignment = WD_ALIGN_PARAGRAPH.CENTER
    p.paragraph_format.space_after = Pt(4)
    r = p.add_run(text); r.bold = True; r.font.size = Pt(14)
    r.font.color.rgb = RGBColor(22, 50, 61)
doc.add_page_break()

# ============================================================
# KATA PENGANTAR
# ============================================================
p = doc.add_paragraph(); p.alignment = WD_ALIGN_PARAGRAPH.CENTER
p.paragraph_format.space_after = Pt(12)
r = p.add_run('KATA PENGANTAR')
r.bold = True; r.font.size = Pt(14); r.font.color.rgb = RGBColor(22, 50, 61)

kp = [
    'Segala puji dan syukur kami panjatkan kehadirat Allah SWT, atas limpahan rahmat dan karunia-Nya sehingga Laporan Kinerja Triwulan II Tahun 2026 Bidang Peternakan dan Kesehatan Hewan pada Dinas Perkebunan dan Peternakan Provinsi Kalimantan Selatan dapat diselesaikan tepat waktu. Laporan ini merupakan bagian integral dari Sistem Akuntabilitas Kinerja Instansi Pemerintah (SAKIP) sebagai wujud transparansi dan akuntabilitas dalam penyelenggaraan pemerintahan.',
    'Penyusunan laporan ini bertujuan untuk mengukur dan mengevaluasi tingkat keberhasilan pelaksanaan program dan kegiatan yang telah diamanahkan kepada Bidang Peternakan dan Kesehatan Hewan selama periode Triwulan II Tahun 2026, yang merupakan semester pertama tahun berjalan. Hasil evaluasi ini akan menjadi landasan strategis untuk perbaikan kinerja pada semester kedua, serta mendukung upaya Pemerintah Provinsi Kalimantan Selatan dalam mewujudkan tata kelola pemerintahan yang baik (Good Governance).',
    'Kami menyadari bahwa laporan ini masih memiliki kekurangan. Oleh karena itu, masukan dan saran yang membangun sangat kami harapkan demi penyempurnaan di masa yang akan datang. Semoga laporan ini dapat memberikan gambaran yang jelas mengenai kinerja yang telah dicapai dan bermanfaat bagi semua pihak.',
]
for t in kp:
    add_para(doc, t)
spc(doc)
add_para(doc, 'Banjarbaru, Juli 2026', align=WD_ALIGN_PARAGRAPH.LEFT, sa=20)
add_para(doc, 'Kepala Bidang Peternakan dan', align=WD_ALIGN_PARAGRAPH.LEFT)
add_para(doc, 'Kesehatan Hewan,', align=WD_ALIGN_PARAGRAPH.LEFT, sa=30)
spc(doc, 2)
add_para(doc, 'Drh. Edi Santosa', align=WD_ALIGN_PARAGRAPH.LEFT)
add_para(doc, 'NIP. 197409182008031001', align=WD_ALIGN_PARAGRAPH.LEFT)
doc.add_page_break()

# ============================================================
# BAB I - PENDAHULUAN
# ============================================================
add_h(doc, 'BAB I')
add_h(doc, 'PENDAHULUAN')

add_sub(doc, 'Latar Belakang')
lb = [
    'Memasuki semester kedua tahun 2026, pembangunan sektor peternakan di Provinsi Kalimantan Selatan terus menunjukkan akselerasi dan kemajuan yang signifikan. Pemerintah Provinsi, melalui Dinas Perkebunan dan Peternakan, secara konsisten mengoptimalkan potensi agroklimat dan lahan yang ekstensif—baik lahan rawa lebak maupun lahan kering—untuk memantapkan posisi daerah sebagai salah satu lumbung ternak terkemuka di Indonesia. Fokus pengembangan tidak hanya diarahkan pada peningkatan kuantitas populasi, tetapi juga pada peningkatan produktivitas dan efisiensi komoditas strategis seperti sapi potong, kambing, ayam ras, dan itik.',
    'Seiring dengan visi tersebut, adopsi dan difusi teknologi modern dalam seluruh rantai agribisnis peternakan menjadi agenda prioritas. Implementasi teknologi mencakup aspek hulu hingga hilir, mulai dari inovasi formulasi pakan berbasis sumber daya lokal yang efisien untuk menekan biaya produksi, penerapan sistem informasi (seperti ISIKHNAS) untuk manajemen kesehatan ternak yang presisi, hingga optimalisasi logistik dan rantai dingin untuk distribusi produk.',
    'Secara makro, pembangunan sektor peternakan telah memberikan dampak positif yang signifikan terhadap penguatan struktur ekonomi masyarakat. Terbukanya akses peternak terhadap pasar yang lebih luas dan lembaga pembiayaan yang kompetitif, yang didukung oleh kebijakan afirmatif pemerintah, telah mengubah wajah sektor ini. Peternakan kini tidak lagi hanya dipandang sebagai aktivitas subsisten, melainkan telah bertransformasi menjadi motor penggerak ekonomi kerakyatan yang vital.',
]
for t in lb:
    add_para(doc, t)

add_sub(doc, 'Maksud dan Tujuan')
add_para(doc, 'Maksud: Laporan ini disusun sebagai manifestasi pertanggungjawaban administratif dan operasional Bidang Peternakan dan Kesehatan Hewan atas pelaksanaan tugas pokok dan fungsi selama periode Triwulan II Tahun Anggaran 2026. Dokumen ini bertujuan untuk menyajikan analisis mendalam mengenai capaian kinerja, penyerapan anggaran, serta evaluasi efektivitas dan dampak dari implementasi program-program strategis yang telah direncanakan, sebagai bahan evaluasi dan pengambilan kebijakan lebih lanjut.')
add_para(doc, 'Tujuan: Pelaksanaan tugas dan fungsi Bidang Peternakan dan Kesehatan Hewan diarahkan untuk mencapai tujuan-tujuan strategis sebagai berikut:')

tujuan = [
    'Peningkatan Populasi dan Produktivitas Ternak: Melalui program perbibitan unggul, akselerasi teknologi reproduksi seperti Inseminasi Buatan (IB) dan Transfer Embrio (TE), serta perbaikan manajemen untuk mencapai swasembada daging dan susu.',
    'Penguatan Sistem Kesehatan Hewan: Melalui sistem pengawasan epidemiologis yang solid, program pencegahan penyakit yang proaktif, dan kesiapsiagaan dalam penanggulangan cepat terhadap Penyakit Hewan Menular Strategis (PHMS).',
    'Penjaminan Ketahanan Pangan: Dengan memastikan ketersediaan dan aksesibilitas produk peternakan yang memenuhi standar Aman, Sehat, Utuh, dan Halal (ASUH) secara merata dan berkelanjutan bagi seluruh lapisan masyarakat.',
    'Peningkatan Jaminan Keamanan Pangan: Dengan mengimplementasikan sistem pengawasan yang ketat di setiap mata rantai pasok, mulai dari tingkat peternakan (on-farm) hingga ke meja konsumen (off-farm), sesuai dengan standar nasional dan praktik terbaik internasional.',
]
for t in tujuan:
    p = doc.add_paragraph(style='List Bullet')
    p.paragraph_format.space_after = Pt(4)
    r = p.add_run(t); r.font.size = Pt(11)

doc.add_page_break()

# ============================================================
# BAB II - PERENCANAAN DAN REALISASI KINERJA
# ============================================================
add_h(doc, 'BAB II')
add_h(doc, 'PERENCANAAN DAN REALISASI KINERJA')

add_sub(doc, 'Perjanjian Kinerja Tahun 2026')
add_para(doc, 'Perjanjian Kinerja (PK) menjadi landasan fundamental yang memuat komitmen dan penugasan dari pimpinan instansi untuk melaksanakan program dan kegiatan yang terukur. Dokumen ini menjadi wujud akuntabilitas kinerja yang disepakati bersama, berdasarkan tugas, fungsi, wewenang, serta alokasi sumber daya yang tersedia.')

add_para(doc, 'Tabel 1. Perjanjian Kinerja Bidang Peternakan dan Kesehatan Hewan Tahun 2026', bold=True, sa=4)

make_tbl(doc,
    ['NO.', 'KINERJA UTAMA', 'INDIKATOR KINERJA UTAMA'],
    [
        ['1', 'Meningkatkan produksi peternakan',
         'Peningkatan Produksi Daging, Telur, dan Susu\nDaging: 141.147 Ton\nTelur: 157.752 Ton\nSusu: 97 Ton'],
        ['2', 'Pengendalian Kesehatan Hewan dan Kesmavet',
         '1. Persentase Penurunan Kasus PHMS (Target 85%)\n2. Persentase Unit Usaha Berstandar ASUH (Target 100%)'],
    ])

spc(doc, 2)
add_para(doc, 'Realisasi Kinerja s.d. Triwulan II Tahun 2026', bold=True, sa=4)
add_para(doc, 'Hingga akhir Triwulan II (semester pertama) tahun 2026, Bidang Peternakan dan Kesehatan Hewan terus menunjukkan komitmen tinggi dalam merealisasikan target kinerja. Fokus utama tetap pada pencapaian target produksi, pengendalian penyakit secara efektif, dan penjaminan mutu produk peternakan.')

add_para(doc, 'Tabel 2. Capaian Indikator Kinerja Utama s.d. Triwulan II Tahun 2026', bold=True, sa=4)

make_tbl(doc,
    ['NO.', 'KINERJA UTAMA', 'INDIKATOR KINERJA UTAMA', 'REALISASI S.D. TRIWULAN II'],
    [
        ['1', 'Meningkatkan produksi peternakan',
         'Peningkatan Produksi Daging, Telur, dan Susu\nTarget Annual:\nDaging: 141.147 Ton\nTelur: 157.752 Ton\nSusu: 97 Ton',
         'Capaian Produksi TW II (Akumulatif Jan-Jun):\nDaging: 70.574 Ton (50,0%)\nTelur: 78.876 Ton (50,0%)\nSusu: 49 Ton (50,5%)'],
        ['2', 'Pengendalian Kesehatan Hewan dan Kesmavet',
         '1. Penurunan Kasus PHMS (Target 85%)\n2. Unit Usaha Berstandar ASUH (Target 100%)',
         'Capaian Penurunan PHMS: 42,48% (Capaian thd target: 50,0%)\nUnit Usaha ASUH: 49,98% (Capaian thd target: 50,0%)'],
    ])

spc(doc, 2)
add_para(doc, 'Tabel 3. Realisasi Anggaran Bidang Peternakan dan Kesehatan Hewan s.d. Triwulan II Tahun 2026', bold=True, sa=4)

make_tbl(doc,
    ['URAIAN', 'PAGU (Rp)', 'REALISASI (Rp)', 'REALISASI (%)'],
    [
        ['Bidang Peternakan dan Kesehatan Hewan', '3.631.894.900', '1.665.339.108', '45,85%'],
    ])

spc(doc, 1)

make_tbl(doc,
    ['INDIKATOR', 'TARGET (%)', 'REALISASI (%)', 'CAPAIAN (%)'],
    [
        ['Realisasi Fisik', '100%', '54,73%', '54,73%'],
    ])

doc.add_page_break()

# ============================================================
# BAB III - AKUNTABILITAS KINERJA
# ============================================================
add_h(doc, 'BAB III')
add_h(doc, 'AKUNTABILITAS KINERJA')

add_sub(doc, 'Analisis dan Evaluasi Kinerja s.d. Triwulan II 2026')

add_mini(doc, '1. Analisis Capaian Produksi')
add_para(doc, 'Realisasi produksi pada Triwulan II 2026 (akumulatif semester pertama) menunjukkan trend yang positif. Capaian produksi daging sebesar 70.574 ton (50,0% dari target tahunan 141.147 ton), telur 78.876 ton (50,0% dari target 157.752 ton), dan susu 49 ton (50,5% dari target 97 ton) mengindikasikan bahwa laju pertumbuhan produksi berada pada пропорции yang sesuai ekspektasi untuk pencapaian target tahunan.')

add_para(doc, 'Keberhasilan ini tidak terlepas dari efektivitas program intensifikasi yang berjalan sinergis. Program SIKOMANDAN terus menunjukkan dampak positif dalam meningkatkan angka kelahiran (conception rate) dan mutu genetik sapi potong. Program SITI HAWA LARI berhasil mengoptimalkan lahan rawa untuk meningkatkan produktivitas itik melalui perbaikan manajemen pakan dan tatalaksana pemeliharaan. Di sisi lain, koordinasi perbibitan dengan Kabupaten Tanah Laut telah berjalan dengan baik, dimana dari 1 kegiatan koordinasi yang ditargetkan, realizasinya mencapai 1 laporan (100%).')

add_para(doc, 'Hambatan yang dihadapi meliputi: (1) penurunan populasi Sumber Daya Genetik (SDG) hewan lokal seperti Itik dan Ayam Murung Panggang pasca musibah banjir; (2) keterbatasan SDM teknis di bidang perbibitan dan petugas pendamping lapangan; (3) gangguan pada aplikasi Identik PKH yang menghambat pelaporan Inseminasi Buatan; serta (4) keterlambatan pelaporan dari tingkat Kabupaten/Kota. Upaya tindak lanjut yang dilakukan meliputi koordinasi lintas sektoral dengan BPTU-HPT Pelaihari dan BBIB, penyelenggaraan pelatihan Good Breeding Practice (GBP), serta optimalisasi pengadaan benih/bibit (straw/semen beku) yang telah terealisasi sebesar 68,62%.')

add_mini(doc, '2. Analisis Pengendalian Penyakit Hewan')
add_para(doc, 'Upaya pengendalian Penyakit Hewan Menular Strategis (PHMS) pada semester pertama menunjukkan hasil yang signifikan. Capaian penurunan kasus PHMS sebesar 42,48% terhadap target tahunan 85% (capaian terhadap target = 50,0%) mengindikasikan bahwa upaya pengendalian berada pada jalur yang benar untuk mencapai target tahunan.')

add_para(doc, 'Keberhasilan ini didorong oleh program vaksinasi PMK yang terjadwal dan koordinasi intensif dengan Kabupaten/Kota. Koordinasi vaksinasi PMK telah dilaksanakan dengan 1 laporan hasil dari 1 kegiatan yang ditargetkan. Penguatan kolaborasi dengan Balai Karantina Hewan, Ikan, dan Tumbuhan (BKHIT) Kalimantan Selatan dalam pengawasan pergerakan masuk dan keluar hewan turut mendukung keberhasilan ini.')

add_para(doc, 'Kendala yang dihadapi adalah belum optimalnya pelaporan kasus melalui sistem iSIKHNAS yang menyebabkan keterbatasan data evaluasi pengendalian penyakit. Selain itu, keterbatasan SDM tenaga medis veteriner dan paramedis veteriner membatasi cakupan surveilans dan deteksi dini. Upaya tindak lanjut meliputi pemantauan informasi secara digital proaktif, pengumpulan data lalu lintas ternak yang termonitor, serta evaluasi rutin terhadap laporan indikasi penyakit menular melalui iSIKHNAS.')

add_mini(doc, '3. Analisis Kesehatan Masyarakat Veteriner')
add_para(doc, 'Pada aspek kesehatan masyarakat veteriner (kesmavet), komitmen untuk menjamin produk ASUH terus diwujudkan secara nyata. Capaian sebesar 49,98% dari target 100% unit usaha berstandar ASUH (capaian terhadap target = 50,0%) menunjukkan bahwa kegiatan pengawasan dan pembinaan telah berjalan sesuai пропорции semester pertama.')

add_para(doc, 'Kendala yang dihadapi meliputi: (1) kegiatan surveilans di lapangan belum dapat berjalan optimal karena masih dalam proses penentuan wilayah sasaran; (2) kesiapan para pelaku unit usaha dalam melengkapi persyaratan administrasi dan teknis untuk sertifikasi NKV masih bervariasi; serta (3) terbatasnya jumlah SDM auditor NKV tingkat provinsi. Tindak lanjut difokuskan pada penyusunan jadwal surveilans dan audit secara sistematis bersama Dinas Kabupaten/Kota, pelaksanaan audit kelayakan unit usaha, serta pengetatan pemeriksaan pada checkpoint pintu masuk hewan.')

add_mini(doc, 'Target dan Realisasi Rencana Aksi Kinerja')
add_para(doc, 'Rencana aksi kinerja pada Triwulan II difokuskan pada dua hasil kerja utama. Pertama, "Meningkatkan Populasi Ternak" dengan target peningkatan produksi sebesar 9% per tahun. Kedua, "Menurunkan dan Mengendalikan Kasus Kejadian Penyakit Hewan Menular Strategis" dengan target penurunan 85% dan unit usaha ASUH 100%. Realisasi pada semester pertama menunjukkan proporsi yang sesuai ekspektasi, dimana capaian produksi dan pengendalian penyakit berada di kisaran 50% dari target tahunan.')

doc.add_page_break()

# ============================================================
# BAB IV - PENUTUP
# ============================================================
add_h(doc, 'BAB IV')
add_h(doc, 'PENUTUP')

add_sub(doc, 'Kesimpulan')
kesimpulan = [
    'Laporan kinerja hingga Triwulan II (semester pertama) Tahun 2026 ini merefleksikan sebuah pencapaian yang memuaskan dan menjadi landasan yang kokoh untuk sisa tahun berjalan. Pada aspek produksi, realizesi sebesar 50% dari target tahunan pada semester pertama menandakan efektivitas program, resiliensi sektor, dan dedikasi luar biasa dari seluruh pemangku kepentingan. Capaian ini menegaskan bahwa Kalimantan Selatan berada di jalur yang tepat untuk menjadi salah satu pilar ketahanan pangan nasional.',
    'Dalam pengendalian penyakit, keberhasilan menjaga trend penurunan kasus PHMS menunjukkan bahwa sistem pertahanan kesehatan hewan yang dibangun telah berfungsi dengan baik. Capaian sebesar 42,48% terhadap target penurunan 85% menjadi modal krusial untuk merealisasikan target tahunan, serta mempertahankan kepercayaan pasar terhadap produk asal Kalimantan Selatan.',
    'Secara finansial, penyerapan anggaran sebesar 45,85% dari pagu sebesar Rp3,63 Miliar dengan realizasi fisik sebesar 54,73% menunjukkan bahwa pelaksanaan program masih berjalan sesuai пропорции waktu semester pertama. Ke depan, diperlukan akselerasi penyerapan anggaran pada semester kedua untuk memastikan target tahunan tercapai.',
    'Memasuki semester kedua, kami berkomitmen untuk meningkatkan momentum positif ini. Fokus strategis akan diarahkan pada: (1) penguatan koordinasi teknis dengan Kabupaten/Kota untuk percepatan pencapaian target produksi; (2) peningkatan surveilans PHMS melalui optimalisasi sistem iSIKHNAS; (3) akselerasi sertifikasi NKV bagi unit usaha potensial; serta (4) penyerapan anggaran yang lebih optimal pada semester kedua. Terima kasih kami sampaikan kepada seluruh tim, petugas lapangan, dan mitra kerja atas kontribusi maksimalnya.',
]
for t in kesimpulan:
    add_para(doc, t)

spc(doc)
add_para(doc, 'Tanggapan Atasan Langsung:', bold=True)

tbl_t = doc.add_table(rows=6, cols=2)
tbl_t.style = 'Table Grid'
for i, label in enumerate(['Laporan kurang baik', 'Laporan sudah baik', 'Laporan diperbaiki',
                            'Realisasi diteliti ulang', 'Capaian diteliti ulang', 'Lain – lain']):
    tbl_t.rows[i].cells[0].text = label
    tbl_t.rows[i].cells[1].text = '......'
    tbl_t.rows[i].cells[1].paragraphs[0].alignment = WD_ALIGN_PARAGRAPH.CENTER

spc(doc, 3)

catatan = [
    ('Catatan Atasan Langsung:', 'Sudah baik dan agar lebih ditingkatkan.'),
    ('Rencana Tindak Lanjut:', 'Melaksanakan kegiatan-kegiatan untuk lebih mendukung perbibitan dan kesehatan hewan agar tercapai produksi peternakan yang optimal.'),
]
for judul, isi in catatan:
    add_para(doc, judul, bold=True, sa=2)
    add_para(doc, isi, sa=6)

spc(doc, 2)
for text in ['Mengetahui,', '', 'Kepala Dinas,', '', '', '', 'Drh. Suparmi, M.S', 'NIP. 196809111995032003']:
    add_para(doc, text, align=WD_ALIGN_PARAGRAPH.LEFT, sa=2 if text else 0)

spc(doc, 3)
add_para(doc, 'Banjarbaru, Juli 2026', align=WD_ALIGN_PARAGRAPH.LEFT)
spc(doc)
for text in ['Kepala Bidang Peternakan dan', 'Kesehatan Hewan,', '', '',
             'Drh. Edi Santosa', 'NIP. 197409182008031001']:
    add_para(doc, text, align=WD_ALIGN_PARAGRAPH.LEFT, sa=2 if text else 0)

output = '/home/ubuntu/kantor/LAPORAN KINERJA TW2 2026 - Bidang Peternakan dan Kesehatan Hewan.docx'
doc.save(output)
print(f'OK: {output}')
