{"id":106045,"date":"2025-10-27T16:23:24","date_gmt":"2025-10-27T09:23:24","guid":{"rendered":"https:\/\/evermos.com\/home\/?page_id=106045"},"modified":"2025-12-23T14:00:31","modified_gmt":"2025-12-23T07:00:31","slug":"zakat","status":"publish","type":"page","link":"https:\/\/evermos.com\/home\/zakat\/","title":{"rendered":"Zakat"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"106045\" class=\"elementor elementor-106045\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section data-particle_enable=\"false\" data-particle-mobile-disabled=\"false\" class=\"elementor-section elementor-top-section elementor-element elementor-element-4e4915c elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4e4915c\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3f100d9\" data-id=\"3f100d9\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-2accbab elementor-widget elementor-widget-html\" data-id=\"2accbab\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!doctype html>\r\n<html lang=\"id\">\r\n<head>\r\n  <meta charset=\"utf-8\" \/>\r\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/>\r\n  <title>Kalkulator Zakat<\/title>\r\n\r\n  <style>\r\n    \/* Container khusus agar tidak mengganggu style lain di situs *\/\r\n    .zakat-wrapper {\r\n      max-width: 540px;\r\n      margin: 28px auto;\r\n      background: #fdf7e7;\r\n      padding: 22px;\r\n      border-radius: 12px;\r\n      box-shadow: 0 2px 12px rgba(0,0,0,0.06);\r\n      font-family: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial;\r\n      color: #111;\r\n      box-sizing: border-box;\r\n    }\r\n\r\n    .zakat-wrapper h1 {\r\n      text-align: center;\r\n      font-size: 1.25rem;\r\n      margin: 0 0 14px;\r\n      line-height: 1.25;\r\n    }\r\n\r\n    label { display:block; font-weight:600; margin:8px 0 6px; font-size:0.95rem; }\r\n\r\n    \/* SELECT styling - clear text, padding, and custom arrow *\/\r\n    .zakat-select-wrap {\r\n      position: relative;\r\n    }\r\n\r\n    .zakat-wrapper select {\r\n      -webkit-appearance: none;\r\n      -moz-appearance: none;\r\n      appearance: none;\r\n      width: 100%;\r\n      padding: 10px 44px 10px 12px; \/* space for arrow on right *\/\r\n      font-size: 0.98rem;\r\n      line-height: 1.2;\r\n      border: 1px solid #cfcfcf;\r\n      border-radius: 8px;\r\n      background: #fff;\r\n      color: #222 !important;\r\n      box-sizing: border-box;\r\n      height: 44px; \/* ensure consistent vertical alignment *\/\r\n      vertical-align: middle;\r\n    }\r\n\r\n    \/* Arrow icon (SVG) \u2014 placed using background so native arrow still visible on some browsers *\/\r\n    .zakat-select-wrap::after {\r\n      content: \"\";\r\n      position: absolute;\r\n      right: 12px;\r\n      top: 50%;\r\n      width: 18px;\r\n      height: 18px;\r\n      pointer-events: none;\r\n      transform: translateY(-50%);\r\n      background-image: url('data:image\/svg+xml;utf8,<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%23222\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 15 18 9\"\/><\/svg>');\r\n      background-repeat: no-repeat;\r\n      background-position: center;\r\n      opacity: 0.95;\r\n    }\r\n\r\n    \/* option text *\/\r\n    .zakat-wrapper option {\r\n      color: #111;\r\n      background: #fff;\r\n      padding: 8px 12px;\r\n    }\r\n\r\n    input[type=\"text\"], input[type=\"number\"] {\r\n      width:100%;\r\n      padding:10px 12px;\r\n      border-radius:8px;\r\n      border:1px solid #cfcfcf;\r\n      font-size:0.98rem;\r\n      box-sizing: border-box;\r\n      height:44px;\r\n    }\r\n\r\n    .radio-group {\r\n      display:flex;\r\n      justify-content:center;\r\n      gap:18px;\r\n      margin-top:10px;\r\n    }\r\n    .radio-group label { font-weight:600; font-size:0.95rem; }\r\n\r\n    #hasil {\r\n      margin-top:16px;\r\n      text-align:center;\r\n      font-size:1.05rem;\r\n      font-weight:700;\r\n      color:#222;\r\n      min-height:1.4em;\r\n    }\r\n\r\n    \/* small info *\/\r\n    .zakat-info { margin-top:18px; font-size:0.9rem; line-height:1.45; color:#333; }\r\n    .zakat-info blockquote { background:#fff8dc; padding:10px 12px; border-left:4px solid #f4b400; margin:10px 0; font-style:italic; }\r\n\r\n    \/* Responsive *\/\r\n    @media (max-width:420px){\r\n      .zakat-wrapper { padding:14px; }\r\n      .zakat-select-wrap::after { right:8px; width:16px; height:16px; }\r\n    }\r\n  <\/style>\r\n<\/head>\r\n<body>\r\n  <div class=\"zakat-wrapper\" id=\"kalkulatorZakat\">\r\n    <h1>Kalkulator Zakat<\/h1>\r\n\r\n    <label for=\"jenisZakat\">Pilih Jenis Zakat:<\/label>\r\n    <div class=\"zakat-select-wrap\">\r\n      <select id=\"jenisZakat\" aria-label=\"Pilih jenis zakat\">\r\n        <option value=\"mal\">Zakat Mal (Penghasilan)<\/option>\r\n        <option value=\"fitrah\">Zakat Fitrah<\/option>\r\n      <\/select>\r\n    <\/div>\r\n\r\n    <!-- Zakat Mal -->\r\n    <div id=\"zakatMalSection\" class=\"section\" style=\"margin-top:12px;\">\r\n      <label for=\"gaji\">Masukkan Gaji \/ Penghasilan (contoh: Rp 4.500.000)<\/label>\r\n      <input type=\"text\" id=\"gaji\" placeholder=\"Contoh: Rp 4.500.000\" inputmode=\"numeric\" \/>\r\n      <div class=\"radio-group\" aria-label=\"Pilih periode\">\r\n        <label><input type=\"radio\" name=\"periode\" value=\"bulanan\" checked \/> Bulanan<\/label>\r\n        <label><input type=\"radio\" name=\"periode\" value=\"tahunan\" \/> Tahunan<\/label>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- Zakat Fitrah -->\r\n    <div id=\"zakatFitrahSection\" class=\"section\" style=\"display:none; margin-top:12px;\">\r\n      <label for=\"jumlahOrang\">Jumlah Orang<\/label>\r\n      <input type=\"number\" id=\"jumlahOrang\" min=\"1\" placeholder=\"Misal: 4\" \/>\r\n      <label for=\"hargaBeras\">Harga Beras per Kg (contoh: Rp 12.000)<\/label>\r\n      <input type=\"text\" id=\"hargaBeras\" placeholder=\"Contoh: Rp 12.000\" inputmode=\"numeric\" \/>\r\n    <\/div>\r\n\r\n    <div id=\"hasil\" aria-live=\"polite\"><\/div>\r\n\r\n    <div class=\"zakat-info\">\r\n      <h3 style=\"margin:14px 0 8px;\">Ketentuan singkat<\/h3>\r\n      <p><strong>Zakat Mal:<\/strong> Umumnya 2.5% dari penghasilan (bulanan) atau 2.5% dari total penghasilan tahunan (jika hitung tahunan).<\/p>\r\n      <p><strong>Zakat Fitrah:<\/strong> Wajib untuk setiap jiwa sebesar ~2.5 kg beras (atau setara uang).<\/p>\r\n      <blockquote>\u201cAmbillah zakat dari sebagian harta mereka, dengan zakat itu kamu membersihkan dan mensucikan mereka...\u201d (QS. At-Taubah: 103)<\/blockquote>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <script>\r\n    \/* Utility: format rupiah display and parse *\/\r\n    function formatRupiahDigits(value) {\r\n      if (!value) return '';\r\n      const s = String(value).replace(\/\\D\/g,'');\r\n      return s.replace(\/\\B(?=(\\d{3})+(?!\\d))\/g, '.');\r\n    }\r\n    function formatRupiahPrefix(value) {\r\n      const d = formatRupiahDigits(value);\r\n      return d ? 'Rp ' + d : '';\r\n    }\r\n    function parseNumberFromRupiah(str) {\r\n      if (!str) return 0;\r\n      return Number(String(str).replace(\/[^\\d]\/g,'')) || 0;\r\n    }\r\n\r\n    const jenisEl = document.getElementById('jenisZakat');\r\n    const gajiEl = document.getElementById('gaji');\r\n    const periodeEls = document.querySelectorAll('input[name=\"periode\"]');\r\n    const jumlahOrangEl = document.getElementById('jumlahOrang');\r\n    const hargaBerasEl = document.getElementById('hargaBeras');\r\n    const hasilEl = document.getElementById('hasil');\r\n    const malSection = document.getElementById('zakatMalSection');\r\n    const fitrahSection = document.getElementById('zakatFitrahSection');\r\n\r\n    \/* format input fields when typing (rupiah-like) *\/\r\n    gajiEl.addEventListener('input', function(e){\r\n      const raw = this.value.replace(\/[^\\d]\/g,'');\r\n      this.value = formatRupiahPrefix(raw);\r\n      calcAuto();\r\n    });\r\n    hargaBerasEl.addEventListener('input', function(e){\r\n      const raw = this.value.replace(\/[^\\d]\/g,'');\r\n      this.value = formatRupiahPrefix(raw);\r\n      calcAuto();\r\n    });\r\n\r\n    \/* radio period change triggers calc *\/\r\n    periodeEls.forEach(r => r.addEventListener('change', calcAuto));\r\n\r\n    \/* switch sections when jenis zakat changes *\/\r\n    jenisEl.addEventListener('change', function(){\r\n      if (this.value === 'mal') {\r\n        malSection.style.display = 'block';\r\n        fitrahSection.style.display = 'none';\r\n        \/\/ clear fitrah fields\r\n        jumlahOrangEl.value = '';\r\n        hargaBerasEl.value = '';\r\n      } else {\r\n        malSection.style.display = 'none';\r\n        fitrahSection.style.display = 'block';\r\n        \/\/ clear mal fields\r\n        gajiEl.value = '';\r\n      }\r\n      hasilEl.textContent = '';\r\n    });\r\n\r\n    \/* other inputs for fitrah *\/\r\n    jumlahOrangEl.addEventListener('input', calcAuto);\r\n\r\n    \/* main calculation routine *\/\r\n    function calcAuto(){\r\n      if (jenisEl.value === 'mal') {\r\n        const gaji = parseNumberFromRupiah(gajiEl.value); \/\/ per bulan\r\n        if (!gaji || gaji <= 0) {\r\n          hasilEl.textContent = '';\r\n          return;\r\n        }\r\n        const periode = document.querySelector('input[name=\"periode\"]:checked').value;\r\n        const zakat = periode === 'bulanan' ? gaji * 0.025 : gaji * 12 * 0.025;\r\n        hasilEl.innerHTML = `Zakat Mal: <span style=\"color:#0b6623\">${formatRupiahPrefix(String(Math.round(zakat)))}<\/span> ${periode === 'bulanan' ? '(per bulan)' : '(per tahun)'}`;\r\n      } else {\r\n        const orang = Number(jumlahOrangEl.value) || 0;\r\n        const hargaPerKg = parseNumberFromRupiah(hargaBerasEl.value); \/\/ per kg\r\n        if (!orang || orang <= 0 || !hargaPerKg || hargaPerKg <= 0) {\r\n          hasilEl.textContent = '';\r\n          return;\r\n        }\r\n        \/* zakat fitrah satu jiwa = 2.5 kg beras (pakai faktor 2.5) *\/\r\n        const total = orang * hargaPerKg * 2.5;\r\n        hasilEl.innerHTML = `Zakat Fitrah (uang setara): <span style=\"color:#0b6623\">${formatRupiahPrefix(String(Math.round(total)))}<\/span>`;\r\n      }\r\n    }\r\n\r\n    \/* initial calc (in case browser autocompletes) *\/\r\n    calcAuto();\r\n\r\n    \/* Accessibility: ensure keyboard focus shows selection clearly *\/\r\n    document.querySelectorAll('.zakat-wrapper input, .zakat-wrapper select').forEach(el => {\r\n      el.addEventListener('focus', () => el.classList.add('focus-ring'));\r\n      el.addEventListener('blur', () => el.classList.remove('focus-ring'));\r\n    });\r\n  <\/script>\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Kalkulator Zakat Kalkulator Zakat Pilih Jenis Zakat: Zakat Mal (Penghasilan)Zakat Fitrah Masukkan Gaji \/ Penghasilan (contoh: Rp 4.500.000) Bulanan Tahunan Jumlah Orang Harga Beras per Kg (contoh: Rp 12.000) Ketentuan singkat Zakat Mal: Umumnya 2.5% dari penghasilan (bulanan) atau 2.5% dari total penghasilan tahunan (jika hitung tahunan). Zakat Fitrah: Wajib untuk setiap jiwa sebesar ~2.5 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"categories":[],"tags":[],"class_list":["post-106045","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/pages\/106045","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/comments?post=106045"}],"version-history":[{"count":21,"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/pages\/106045\/revisions"}],"predecessor-version":[{"id":111620,"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/pages\/106045\/revisions\/111620"}],"wp:attachment":[{"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/media?parent=106045"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/categories?post=106045"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/evermos.com\/home\/wp-json\/wp\/v2\/tags?post=106045"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}