{"id":767,"date":"2026-06-19T13:37:00","date_gmt":"2026-06-19T13:37:00","guid":{"rendered":"https:\/\/silcom.io\/?page_id=767"},"modified":"2026-06-19T16:38:20","modified_gmt":"2026-06-19T16:38:20","slug":"tax-calculator","status":"publish","type":"page","link":"https:\/\/silcom.io\/tax-calculator\/","title":{"rendered":"Tax Calculator"},"content":{"rendered":"\t<section class=\"silcom-tax-tool\" data-silcom-tax-tool>\n\t\t<div class=\"silcom-tax-tool__inner\">\n\t\t\t<nav class=\"silcom-tax-tool__breadcrumb\" aria-label=\"Breadcrumb\">\n\t\t\t\t<a href=\"https:\/\/silcom.io\/\">Home<\/a>\n\t\t\t\t<span aria-hidden=\"true\">\/<\/span>\n\t\t\t\t<span>Tax Calculator<\/span>\n\t\t\t<\/nav>\n\n\t\t\t<div class=\"silcom-tax-tool__header\">\n\t\t\t\t<p>Silcom Tools<\/p>\n\t\t\t\t<h1>Tax Calculator<\/h1>\n\t\t\t\t<span>Estimate common tax amounts locally in your browser. No data is sent or stored.<\/span>\n\t\t\t<\/div>\n\n\t\t\t<div class=\"silcom-tax-tool__countries\" aria-label=\"Country selector\">\n\t\t\t\t<button class=\"is-active\" type=\"button\" data-country=\"au\" aria-label=\"Australia, AUD\"><span class=\"silcom-tax-flag\" aria-hidden=\"true\">\ud83c\udde6\ud83c\uddfa<\/span><span class=\"silcom-tax-code\">AUD<\/span><span class=\"silcom-tax-country-name\">Australia<\/span><\/button>\n\t\t\t\t<button type=\"button\" data-country=\"nz\" aria-label=\"New Zealand, NZD\"><span class=\"silcom-tax-flag\" aria-hidden=\"true\">\ud83c\uddf3\ud83c\uddff<\/span><span class=\"silcom-tax-code\">NZD<\/span><span class=\"silcom-tax-country-name\">New Zealand<\/span><\/button>\n\t\t\t\t<button type=\"button\" data-country=\"ca\" aria-label=\"Canada, CAD\"><span class=\"silcom-tax-flag\" aria-hidden=\"true\">\ud83c\udde8\ud83c\udde6<\/span><span class=\"silcom-tax-code\">CAD<\/span><span class=\"silcom-tax-country-name\">Canada<\/span><\/button>\n\t\t\t\t<button type=\"button\" data-country=\"us\" aria-label=\"United States, USD\"><span class=\"silcom-tax-flag\" aria-hidden=\"true\">\ud83c\uddfa\ud83c\uddf8<\/span><span class=\"silcom-tax-code\">USD<\/span><span class=\"silcom-tax-country-name\">United States<\/span><\/button>\n\t\t\t\t<button type=\"button\" data-country=\"uk\" aria-label=\"United Kingdom, GBP\"><span class=\"silcom-tax-flag\" aria-hidden=\"true\">\ud83c\uddec\ud83c\udde7<\/span><span class=\"silcom-tax-code\">GBP<\/span><span class=\"silcom-tax-country-name\">United Kingdom<\/span><\/button>\n\t\t\t\t<button type=\"button\" data-country=\"india\" aria-label=\"India, INR\"><span class=\"silcom-tax-flag\" aria-hidden=\"true\">\ud83c\uddee\ud83c\uddf3<\/span><span class=\"silcom-tax-code\">INR<\/span><span class=\"silcom-tax-country-name\">India<\/span><\/button>\n\t\t\t<\/div>\n\n\t\t\t<div class=\"silcom-tax-tool__notice\" data-country-note>\n\t\t\t\tAustralia is active first. Other country calculators are prepared for the same interface.\n\t\t\t<\/div>\n\n\t\t\t<div class=\"silcom-tax-tool__grid\">\n\t\t\t\t<form class=\"silcom-tax-panel\" data-tax-form>\n\t\t\t\t\t<div class=\"silcom-tax-field\">\n\t\t\t\t\t\t<label for=\"silcom-tax-profile\">Profile<\/label>\n\t\t\t\t\t\t<select id=\"silcom-tax-profile\" data-tax-profile>\n\t\t\t\t\t\t\t<option value=\"personal\">Personal<\/option>\n\t\t\t\t\t\t\t<option value=\"business\">Business<\/option>\n\t\t\t\t\t\t<\/select>\n\t\t\t\t\t<\/div>\n\n\t\t\t\t\t<div class=\"silcom-tax-field\">\n\t\t\t\t\t\t<label for=\"silcom-tax-type\">What are you calculating?<\/label>\n\t\t\t\t\t\t<select id=\"silcom-tax-type\" data-tax-type><\/select>\n\t\t\t\t\t<\/div>\n\n\t\t\t\t\t<div class=\"silcom-tax-dynamic\" data-tax-fields><\/div>\n\n\t\t\t\t\t<button class=\"silcom-tax-button\" type=\"submit\">Calculate<\/button>\n\t\t\t\t<\/form>\n\n\t\t\t\t<aside class=\"silcom-tax-result\" aria-live=\"polite\">\n\t\t\t\t\t<p data-tax-result-label>Estimated result<\/p>\n\t\t\t\t\t<strong data-tax-result-main>A$0.00<\/strong>\n\t\t\t\t\t<div data-tax-result-detail>Choose a calculator type and enter your numbers.<\/div>\n\t\t\t\t\t<div class=\"silcom-tax-net\" data-tax-net hidden>\n\t\t\t\t\t\t<span>Estimated net take-home<\/span>\n\t\t\t\t\t\t<strong data-tax-net-main>A$0.00<\/strong>\n\t\t\t\t\t\t<small data-tax-net-detail><\/small>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<ul data-tax-result-breakdown><\/ul>\n\t\t\t\t<\/aside>\n\t\t\t<\/div>\n\n\t\t\t<div class=\"silcom-tax-tool__disclaimer\">\n\t\t\t\tEstimates only. Tax rules change and personal circumstances matter. Use this as a quick guide, not tax advice.\n\t\t\t<\/div>\n\n\t\t\t<section class=\"silcom-tax-education\" aria-label=\"Tax brackets and terminology\" data-tax-education>\n\t\t\t\t<div class=\"silcom-tax-education__header\">\n\t\t\t\t\t<p data-tax-education-kicker>Tax brackets<\/p>\n\t\t\t\t\t<h2 data-tax-education-title>Australia tax brackets<\/h2>\n\t\t\t\t\t<span data-tax-education-summary>General education for the selected country.<\/span>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"silcom-tax-education__grid\">\n\t\t\t\t\t<div class=\"silcom-tax-education__card\">\n\t\t\t\t\t\t<h3 data-tax-bracket-title>Personal income tax brackets<\/h3>\n\t\t\t\t\t\t<div class=\"silcom-tax-brackets\" data-tax-brackets><\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"silcom-tax-education__card\">\n\t\t\t\t\t\t<h3>Useful tax terms<\/h3>\n\t\t\t\t\t\t<div class=\"silcom-tax-terms\" data-tax-terms><\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/section>\n\t\t<\/div>\n\t<\/section>\n\n\t<script>\n\t\t(function () {\n\t\t\tvar root = document.querySelector('[data-silcom-tax-tool]');\n\t\t\tif (!root) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar profile = root.querySelector('[data-tax-profile]');\n\t\t\tvar type = root.querySelector('[data-tax-type]');\n\t\t\tvar fields = root.querySelector('[data-tax-fields]');\n\t\t\tvar form = root.querySelector('[data-tax-form]');\n\t\t\t\tvar resultLabel = root.querySelector('[data-tax-result-label]');\n\t\t\t\tvar resultMain = root.querySelector('[data-tax-result-main]');\n\t\t\t\tvar resultDetail = root.querySelector('[data-tax-result-detail]');\n\t\t\t\tvar resultBreakdown = root.querySelector('[data-tax-result-breakdown]');\n\t\t\t\tvar netPanel = root.querySelector('[data-tax-net]');\n\t\t\t\tvar netMain = root.querySelector('[data-tax-net-main]');\n\t\t\t\tvar netDetail = root.querySelector('[data-tax-net-detail]');\n\t\t\t\tvar countryNote = root.querySelector('[data-country-note]');\n\t\t\t\tvar educationKicker = root.querySelector('[data-tax-education-kicker]');\n\t\t\t\tvar educationTitle = root.querySelector('[data-tax-education-title]');\n\t\t\t\tvar educationSummary = root.querySelector('[data-tax-education-summary]');\n\t\t\t\tvar bracketTitle = root.querySelector('[data-tax-bracket-title]');\n\t\t\t\tvar bracketList = root.querySelector('[data-tax-brackets]');\n\t\t\t\tvar termList = root.querySelector('[data-tax-terms]');\n\t\t\t\tvar taxMemoryKey = 'silcom.taxCalculator.v1';\n\t\t\t\tfunction readTaxMemory() { try { return JSON.parse(localStorage.getItem(taxMemoryKey) || '{}') || {}; } catch (e) { return {}; } }\n\t\t\t\tfunction writeTaxMemory(data) { try { localStorage.setItem(taxMemoryKey, JSON.stringify(Object.assign(readTaxMemory(), data))); } catch (e) {} }\n\t\t\t\tvar taxMemory = readTaxMemory();\n\t\t\t\tvar selectedCountry = taxMemory.country || 'au';\n\t\t\t\tvar superRate = 0.12;\n\t\t\t\tvar nzAccLevyRate = 0.0175;\n\t\t\t\tvar nzAccLevyCap = 156641;\n\n\t\t\tvar calculatorTypes = {\n\t\t\t\tau: {\n\t\t\t\t\tpersonal: [\n\t\t\t\t\t\t{ value: 'income', label: 'Income tax estimate' },\n\t\t\t\t\t\t{ value: 'medicare', label: 'Medicare levy' },\n\t\t\t\t\t\t{ value: 'mls', label: 'Medicare levy surcharge' },\n\t\t\t\t\t\t{ value: 'cgt', label: 'Capital gains tax estimate' }\n\t\t\t\t\t],\n\t\t\t\t\tbusiness: [\n\t\t\t\t\t\t{ value: 'gst', label: 'GST add\/remove' },\n\t\t\t\t\t\t{ value: 'bas', label: 'BAS GST estimate' },\n\t\t\t\t\t\t{ value: 'company', label: 'Company tax' },\n\t\t\t\t\t\t{ value: 'payroll', label: 'Payroll tax starter estimate' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tnz: {\n\t\t\t\t\tpersonal: [\n\t\t\t\t\t\t{ value: 'nz-income', label: 'Income tax estimate' },\n\t\t\t\t\t\t{ value: 'nz-paye', label: 'PAYE \/ take-home estimate' },\n\t\t\t\t\t\t{ value: 'nz-kiwisaver', label: 'KiwiSaver deduction' },\n\t\t\t\t\t\t{ value: 'nz-self-employed', label: 'Self-employed tax estimate' }\n\t\t\t\t\t],\n\t\t\t\t\tbusiness: [\n\t\t\t\t\t\t{ value: 'nz-gst', label: 'GST add\/remove' },\n\t\t\t\t\t\t{ value: 'nz-gst-return', label: 'GST return estimate' },\n\t\t\t\t\t\t{ value: 'nz-company', label: 'Company tax' },\n\t\t\t\t\t\t{ value: 'nz-provisional', label: 'Provisional tax starter estimate' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tca: {\n\t\t\t\t\tpersonal: [\n\t\t\t\t\t\t{ value: 'ca-income', label: 'Federal income tax estimate' },\n\t\t\t\t\t\t{ value: 'ca-payroll', label: 'Payroll \/ take-home estimate' },\n\t\t\t\t\t\t{ value: 'ca-cpp-ei', label: 'CPP \/ EI deductions' },\n\t\t\t\t\t\t{ value: 'ca-self-employed', label: 'Self-employed federal tax' }\n\t\t\t\t\t],\n\t\t\t\t\tbusiness: [\n\t\t\t\t\t\t{ value: 'ca-sales-tax', label: 'GST\/HST add\/remove' },\n\t\t\t\t\t\t{ value: 'ca-sales-tax-return', label: 'GST\/HST return estimate' },\n\t\t\t\t\t\t{ value: 'ca-corporate', label: 'Federal corporate tax' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tus: {\n\t\t\t\t\tpersonal: [\n\t\t\t\t\t\t{ value: 'us-coming-soon', label: 'US calculator coming soon' }\n\t\t\t\t\t],\n\t\t\t\t\tbusiness: [\n\t\t\t\t\t\t{ value: 'us-business-coming-soon', label: 'US business calculator coming soon' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tuk: {\n\t\t\t\t\tpersonal: [\n\t\t\t\t\t\t{ value: 'uk-income', label: 'Income tax estimate' },\n\t\t\t\t\t\t{ value: 'uk-paye', label: 'PAYE \/ take-home estimate' },\n\t\t\t\t\t\t{ value: 'uk-ni', label: 'National Insurance estimate' }\n\t\t\t\t\t],\n\t\t\t\t\tbusiness: [\n\t\t\t\t\t\t{ value: 'uk-vat', label: 'VAT add\/remove' },\n\t\t\t\t\t\t{ value: 'uk-vat-return', label: 'VAT return estimate' },\n\t\t\t\t\t\t{ value: 'uk-corporation', label: 'Corporation Tax estimate' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tindia: {\n\t\t\t\t\tpersonal: [\n\t\t\t\t\t\t{ value: 'india-income', label: 'New-regime income tax estimate' },\n\t\t\t\t\t\t{ value: 'india-coming-soon', label: 'Other India calculator coming soon' }\n\t\t\t\t\t],\n\t\t\t\t\tbusiness: [\n\t\t\t\t\t\t{ value: 'india-gst', label: 'GST add\/remove estimate' },\n\t\t\t\t\t\t{ value: 'india-business-coming-soon', label: 'Other India business calculator coming soon' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t};\n\n\t\t\tvar countrySettings = {\n\t\t\t\tau: {\n\t\t\t\t\tcurrency: 'AUD',\n\t\t\t\t\tlocale: 'en-AU',\n\t\t\t\t\tnote: 'Australia active: AUD, ATO, GST and Australian tax categories.'\n\t\t\t\t},\n\t\t\t\tnz: {\n\t\t\t\t\tcurrency: 'NZD',\n\t\t\t\t\tlocale: 'en-NZ',\n\t\t\t\t\tnote: 'New Zealand active: NZD, IRD, GST, PAYE, ACC levy and KiwiSaver starter estimates.'\n\t\t\t\t},\n\t\t\t\tca: {\n\t\t\t\t\tcurrency: 'CAD',\n\t\t\t\t\tlocale: 'en-CA',\n\t\t\t\t\tnote: 'Canada active: CAD, CRA, federal income tax, CPP, EI and GST\/HST starter estimates.'\n\t\t\t\t},\n\t\t\t\tus: {\n\t\t\t\t\tcurrency: 'USD',\n\t\t\t\t\tlocale: 'en-US',\n\t\t\t\t\tnote: 'United States active for education only. The calculator is marked coming soon while state and local tax rules are mapped.'\n\t\t\t\t},\n\t\t\t\tuk: {\n\t\t\t\t\tcurrency: 'GBP',\n\t\t\t\t\tlocale: 'en-GB',\n\t\t\t\t\tnote: 'United Kingdom active: GBP, HMRC, PAYE, National Insurance, VAT and Corporation Tax starter estimates.'\n\t\t\t\t},\n\t\t\t\tindia: {\n\t\t\t\t\tcurrency: 'INR',\n\t\t\t\t\tlocale: 'en-IN',\n\t\t\t\t\tnote: 'India prepared: INR and India-specific tax rules are being mapped before estimates are activated.'\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tvar taxEducation = {\n\t\t\t\tau: {\n\t\t\t\t\tkicker: 'ATO \/ AUD',\n\t\t\t\t\ttitle: 'Australia tax brackets',\n\t\t\t\t\tsummary: 'Resident personal income tax brackets for 2025-26. Medicare levy, offsets and special cases can change the final amount.',\n\t\t\t\t\tbracketTitle: 'Resident personal income tax brackets',\n\t\t\t\t\tbrackets: [\n\t\t\t\t\t\t{ range: '$0 - $18,200', rate: '0%' },\n\t\t\t\t\t\t{ range: '$18,201 - $45,000', rate: '16%' },\n\t\t\t\t\t\t{ range: '$45,001 - $135,000', rate: '30%' },\n\t\t\t\t\t\t{ range: '$135,001 - $190,000', rate: '37%' },\n\t\t\t\t\t\t{ range: '$190,001+', rate: '45%' }\n\t\t\t\t\t],\n\t\t\t\t\tterms: [\n\t\t\t\t\t\t{ key: 'ATO', value: 'Australian Taxation Office.' },\n\t\t\t\t\t\t{ key: 'TFN', value: 'Tax File Number, used to identify taxpayers.' },\n\t\t\t\t\t\t{ key: 'PAYG', value: 'Pay As You Go withholding or instalments.' },\n\t\t\t\t\t\t{ key: 'GST', value: 'Goods and Services Tax, generally 10%.' },\n\t\t\t\t\t\t{ key: 'Medicare levy', value: 'Common 2% levy for residents, subject to rules.' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tnz: {\n\t\t\t\t\tkicker: 'IRD \/ NZD',\n\t\t\t\t\ttitle: 'New Zealand tax brackets',\n\t\t\t\t\tsummary: 'Individual income tax brackets from 1 April 2025. PAYE can also include ACC earners levy and KiwiSaver deductions.',\n\t\t\t\t\tbracketTitle: 'Individual income tax brackets',\n\t\t\t\t\tbrackets: [\n\t\t\t\t\t\t{ range: '$0 - $15,600', rate: '10.5%' },\n\t\t\t\t\t\t{ range: '$15,601 - $53,500', rate: '17.5%' },\n\t\t\t\t\t\t{ range: '$53,501 - $78,100', rate: '30%' },\n\t\t\t\t\t\t{ range: '$78,101 - $180,000', rate: '33%' },\n\t\t\t\t\t\t{ range: '$180,001+', rate: '39%' }\n\t\t\t\t\t],\n\t\t\t\t\tterms: [\n\t\t\t\t\t\t{ key: 'IRD', value: 'Inland Revenue Department.' },\n\t\t\t\t\t\t{ key: 'IR number', value: 'New Zealand tax identification number.' },\n\t\t\t\t\t\t{ key: 'PAYE', value: 'Pay As You Earn tax deducted from salary or wages.' },\n\t\t\t\t\t\t{ key: 'ACC levy', value: 'Earners levy applied to salary\/wage income, subject to a cap.' },\n\t\t\t\t\t\t{ key: 'KiwiSaver', value: 'Retirement savings deductions from before-tax pay.' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tca: {\n\t\t\t\t\tkicker: 'CRA \/ CAD',\n\t\t\t\t\ttitle: 'Canada tax brackets and key terms',\n\t\t\t\t\tsummary: '2026 federal brackets are shown here. Canada also has provincial or territorial tax, credits and deductions, so final tax depends on where the resident lives.',\n\t\t\t\t\tbracketTitle: 'Federal personal income tax brackets',\n\t\t\t\t\tbrackets: [\n\t\t\t\t\t\t{ range: '$0 - $58,523', rate: '14%' },\n\t\t\t\t\t\t{ range: '$58,524 - $117,045', rate: '20.5%' },\n\t\t\t\t\t\t{ range: '$117,046 - $181,440', rate: '26%' },\n\t\t\t\t\t\t{ range: '$181,441 - $258,482', rate: '29%' },\n\t\t\t\t\t\t{ range: '$258,483+', rate: '33%' }\n\t\t\t\t\t],\n\t\t\t\t\tterms: [\n\t\t\t\t\t\t{ key: 'CRA', value: 'Canada Revenue Agency.' },\n\t\t\t\t\t\t{ key: 'SIN', value: 'Social Insurance Number, used for tax and payroll identification.' },\n\t\t\t\t\t\t{ key: 'T1', value: 'Individual income tax and benefit return.' },\n\t\t\t\t\t\t{ key: 'T4', value: 'Employment income slip issued by an employer.' },\n\t\t\t\t\t\t{ key: 'NOA', value: 'Notice of Assessment after CRA processes a return.' },\n\t\t\t\t\t\t{ key: 'CPP \/ QPP', value: 'Canada or Quebec Pension Plan payroll contributions.' },\n\t\t\t\t\t\t{ key: 'EI', value: 'Employment Insurance premiums deducted from insurable earnings.' },\n\t\t\t\t\t\t{ key: 'GST\/HST\/PST\/QST', value: 'Sales tax terms: federal GST, harmonized HST, provincial PST, Quebec QST.' },\n\t\t\t\t\t\t{ key: 'BPA', value: 'Basic Personal Amount, a non-refundable tax credit base.' },\n\t\t\t\t\t\t{ key: 'RRSP \/ TFSA', value: 'Registered savings accounts with different tax treatment.' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tus: {\n\t\t\t\t\tkicker: 'IRS \/ USD',\n\t\t\t\t\ttitle: 'United States tax brackets and key terms',\n\t\t\t\t\tsummary: '2026 federal brackets are shown for general education. A complete calculator needs filing status, standard deduction, FICA, state tax and sometimes local tax.',\n\t\t\t\t\tbracketTitle: '2026 federal marginal brackets - single filers',\n\t\t\t\t\tbrackets: [\n\t\t\t\t\t\t{ range: '$0 - $12,400', rate: '10%' },\n\t\t\t\t\t\t{ range: '$12,401 - $50,400', rate: '12%' },\n\t\t\t\t\t\t{ range: '$50,401 - $105,700', rate: '22%' },\n\t\t\t\t\t\t{ range: '$105,701 - $201,775', rate: '24%' },\n\t\t\t\t\t\t{ range: '$201,776 - $256,225', rate: '32%' },\n\t\t\t\t\t\t{ range: '$256,226 - $640,600', rate: '35%' },\n\t\t\t\t\t\t{ range: '$640,601+', rate: '37%' }\n\t\t\t\t\t],\n\t\t\t\t\tterms: [\n\t\t\t\t\t\t{ key: 'IRS', value: 'Internal Revenue Service.' },\n\t\t\t\t\t\t{ key: 'Filing status', value: 'Single, married filing jointly, married filing separately or head of household.' },\n\t\t\t\t\t\t{ key: 'Standard deduction', value: 'Basic 2026 amounts include $16,100 single, $32,200 married filing jointly and $24,150 head of household.' },\n\t\t\t\t\t\t{ key: 'W-2', value: 'Employee wage and withholding form.' },\n\t\t\t\t\t\t{ key: '1099', value: 'Common form family for contractor, interest, dividend or other income reporting.' },\n\t\t\t\t\t\t{ key: 'FICA', value: 'Payroll taxes for Social Security and Medicare.' },\n\t\t\t\t\t\t{ key: 'Social Security tax', value: 'Payroll tax on wages up to an annual wage base.' },\n\t\t\t\t\t\t{ key: 'Medicare tax', value: 'Payroll tax that can include an additional Medicare tax at higher incomes.' },\n\t\t\t\t\t\t{ key: 'State income tax', value: 'Separate state-level income tax rules; some states have no income tax.' },\n\t\t\t\t\t\t{ key: 'SALT', value: 'State and local taxes.' },\n\t\t\t\t\t\t{ key: 'AGI', value: 'Adjusted gross income.' },\n\t\t\t\t\t\t{ key: 'Taxable income', value: 'Income after deductions and adjustments used to apply brackets.' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tuk: {\n\t\t\t\t\tkicker: 'HMRC \/ GBP',\n\t\t\t\t\ttitle: 'United Kingdom tax brackets and key terms',\n\t\t\t\t\tsummary: '2026-27 UK personal allowance, income tax bands and National Insurance starter guidance. Scotland has different bands for earned income.',\n\t\t\t\t\tbracketTitle: 'Income tax brackets by region',\n\t\t\t\t\tbrackets: [\n\t\t\t\t\t\t{ range: 'Personal Allowance', rate: '\u00a312,570' },\n\t\t\t\t\t\t{ range: 'England\/Wales\/Northern Ireland basic rate', rate: '20% up to \u00a337,700 after allowance' },\n\t\t\t\t\t\t{ range: 'England\/Wales\/Northern Ireland higher rate', rate: '40% from \u00a337,701 to \u00a3125,140' },\n\t\t\t\t\t\t{ range: 'England\/Wales\/Northern Ireland additional rate', rate: '45% over \u00a3125,140' },\n\t\t\t\t\t\t{ range: 'Scotland starter rate', rate: '19% up to \u00a33,967 after allowance' },\n\t\t\t\t\t\t{ range: 'Scotland basic rate', rate: '20% from \u00a33,968 to \u00a316,956' },\n\t\t\t\t\t\t{ range: 'Scotland intermediate rate', rate: '21% from \u00a316,957 to \u00a331,092' },\n\t\t\t\t\t\t{ range: 'Scotland higher rate', rate: '42% from \u00a331,093 to \u00a362,430' },\n\t\t\t\t\t\t{ range: 'Scotland advanced\/top rates', rate: '45% to \u00a3125,140, then 48%' }\n\t\t\t\t\t],\n\t\t\t\t\tterms: [\n\t\t\t\t\t\t{ key: 'HMRC', value: 'His Majesty\u2019s Revenue and Customs.' },\n\t\t\t\t\t\t{ key: 'PAYE', value: 'Pay As You Earn withholding from salary or wages.' },\n\t\t\t\t\t\t{ key: 'National Insurance', value: 'Social security contribution; employee Class 1 is separate from income tax.' },\n\t\t\t\t\t\t{ key: 'Personal Allowance', value: 'Tax-free income allowance, reduced once income is above \u00a3100,000.' },\n\t\t\t\t\t\t{ key: 'Tax code', value: 'Payroll code used by employers to apply allowances and deductions.' },\n\t\t\t\t\t\t{ key: 'P45 \/ P60', value: 'Payroll documents showing leaving details or annual pay and tax.' },\n\t\t\t\t\t\t{ key: 'Self Assessment', value: 'Tax return process for people with income not fully handled through PAYE.' },\n\t\t\t\t\t\t{ key: 'VAT', value: 'Value Added Tax. Standard rate is generally 20%, with reduced and zero rates for some items.' },\n\t\t\t\t\t\t{ key: 'Corporation Tax', value: 'Company profit tax. Main rate is 25%, with small profits rate and marginal relief.' },\n\t\t\t\t\t\t{ key: 'Scotland', value: 'Scottish taxpayers have different non-savings, non-dividend income tax bands.' },\n\t\t\t\t\t\t{ key: 'Wales', value: 'Welsh rates can be devolved, but currently align with the main UK rates for this starter estimate.' }\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tindia: {\n\t\t\t\t\tkicker: 'INCOME TAX \/ INR',\n\t\t\t\t\ttitle: 'India tax reference',\n\t\t\t\t\tsummary: 'India-specific income-tax and GST guidance for the first calculator release. Special-rate income and detailed filing cases are not included.',\n\t\t\t\t\tbracketTitle: 'New-regime income tax bands, AY 2026-27',\n\t\t\t\t\tbrackets: [\n\t\t\t\t\t\t{ range: 'Up to \u20b94,00,000', rate: 'Nil' },\n\t\t\t\t\t\t{ range: '\u20b94,00,001 - \u20b98,00,000', rate: '5%' },\n\t\t\t\t\t\t{ range: '\u20b98,00,001 - \u20b912,00,000', rate: '10%' },\n\t\t\t\t\t\t{ range: '\u20b912,00,001 - \u20b916,00,000', rate: '15%' },\n\t\t\t\t\t\t{ range: '\u20b916,00,001 - \u20b920,00,000', rate: '20%' },\n\t\t\t\t\t\t{ range: '\u20b920,00,001 - \u20b924,00,000', rate: '25%' },\n\t\t\t\t\t\t{ range: 'Above \u20b924,00,000', rate: '30%' }\n\t\t\t\t\t],\n\t\t\t\t\tterms: [\n\t\t\t\t\t\t{ key: 'ITR', value: 'Income Tax Return; the correct form depends on taxpayer type and income sources.' },\n\t\t\t\t\t\t{ key: 'Income heads', value: 'Salary, house property, business or profession, capital gains, and other sources.' },\n\t\t\t\t\t\t{ key: '87A rebate', value: 'Resident individuals may qualify for a rebate up to \u20b960,000 where the new-regime conditions are met.' },\n\t\t\t\t\t\t{ key: 'Cess', value: 'Health and Education Cess is applied at 4% to income tax and surcharge where applicable.' },\n\t\t\t\t\t\t{ key: 'GST', value: 'Goods and Services Tax; rates depend on the supply and HSN\/SAC classification.' },\n\t\t\t\t\t\t{ key: 'CGST \/ SGST \/ IGST', value: 'GST components generally depend on whether a supply is intra-state or inter-state.' },\n\t\t\t\t\t\t{ key: 'TDS \/ TCS', value: 'Tax deducted or collected at source; these are not included in this first estimate.' }\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tfunction money(value) {\n\t\t\t\tvar settings = countrySettings[selectedCountry] || countrySettings.au;\n\t\t\t\treturn new Intl.NumberFormat(settings.locale, {\n\t\t\t\t\tstyle: 'currency',\n\t\t\t\t\tcurrency: settings.currency,\n\t\t\t\t\tmaximumFractionDigits: 2\n\t\t\t\t}).format(Number.isFinite(value) ? value : 0);\n\t\t\t}\n\n\t\t\tfunction numberValue(name) {\n\t\t\t\tvar input = fields.querySelector('[name=\"' + name + '\"]');\n\t\t\t\treturn input ? Math.max(0, parseFloat(input.value || '0')) : 0;\n\t\t\t}\n\n\t\t\tfunction fieldHtml() {\n\t\t\t\tif (selectedCountry === 'india') {\n\t\t\t\t\tif (type.value === 'india-income') {\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual gross income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"1000\" placeholder=\"1200000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Salary standard deduction<\/label><input name=\"standardDeduction\" type=\"number\" min=\"0\" max=\"75000\" step=\"1000\" value=\"75000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Residential status<\/label><select name=\"residency\"><option value=\"resident\">Resident<\/option><option value=\"non-resident\">Non-resident<\/option><\/select><\/div>';\n\t\t\t\t\t}\n\t\t\t\t\tif (type.value === 'india-gst') {\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Amount<\/label><input name=\"supply\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"10000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>GST rate<\/label><select name=\"gstRate\"><option value=\"0\">0%<\/option><option value=\"5\">5%<\/option><option value=\"12\">12%<\/option><option value=\"18\" selected>18%<\/option><option value=\"28\">28%<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Calculation mode<\/label><select name=\"gstMode\"><option value=\"add\">Add GST to amount<\/option><option value=\"remove\">Extract GST from total<\/option><\/select><\/div>';\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (selectedCountry === 'us') {\n\t\t\t\t\tvar comingSoonName = selectedCountry === 'india' ? 'India' : 'US';\n\t\t\t\t\treturn '' +\n\t\t\t\t\t\t'<div class=\"silcom-tax-coming-soon\"><strong>' + comingSoonName + ' calculator coming soon<\/strong><span>The education section below is active now. The calculator will be added once country-specific rules are mapped properly.<\/span><\/div>';\n\t\t\t\t}\n\n\t\t\t\tif (selectedCountry === 'uk') {\n\t\t\t\t\tswitch (type.value) {\n\t\t\t\t\t\tcase 'uk-income':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual taxable income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"65000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Region \/ country<\/label><select name=\"region\"><option value=\"england\">England<\/option><option value=\"wales\">Wales<\/option><option value=\"northern-ireland\">Northern Ireland<\/option><option value=\"scotland\">Scotland<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'uk-paye':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual gross salary \/ wages<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"65000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Region \/ country<\/label><select name=\"region\"><option value=\"england\">England<\/option><option value=\"wales\">Wales<\/option><option value=\"northern-ireland\">Northern Ireland<\/option><option value=\"scotland\">Scotland<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Include employee National Insurance?<\/label><select name=\"includeNi\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Student loan?<\/label><select name=\"studentLoan\"><option value=\"no\">No \/ not included<\/option><option value=\"yes\">Yes - show note only<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'uk-ni':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual employment income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"65000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Contribution type<\/label><select name=\"contribution\"><option value=\"employee\">Employee Class 1<\/option><option value=\"self-employed\">Self-employed Class 4 starter estimate<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'uk-vat':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Amount<\/label><input name=\"amount\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"1000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>VAT rate<\/label><select name=\"vatRate\"><option value=\"0.20\">Standard rate - 20%<\/option><option value=\"0.05\">Reduced rate - 5%<\/option><option value=\"0\">Zero rate - 0%<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Mode<\/label><select name=\"mode\"><option value=\"add\">Add VAT<\/option><option value=\"remove\">Remove VAT<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Taxable supply?<\/label><select name=\"taxable\"><option value=\"yes\">Yes<\/option><option value=\"no\">No \/ exempt<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'uk-vat-return':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>VATable sales before VAT<\/label><input name=\"sales\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"20000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Eligible purchases before VAT<\/label><input name=\"purchases\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"7000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>VAT rate<\/label><select name=\"vatRate\"><option value=\"0.20\">Standard rate - 20%<\/option><option value=\"0.05\">Reduced rate - 5%<\/option><option value=\"0\">Zero rate - 0%<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'uk-corporation':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Company taxable profit<\/label><input name=\"profit\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"250000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Associated companies?<\/label><select name=\"associated\"><option value=\"no\">No \/ use standard limits<\/option><option value=\"yes\">Yes - show note only<\/option><\/select><\/div>';\n\t\t\t\t\t}\n\t\t\t\t\treturn '';\n\t\t\t\t}\n\n\t\t\t\tif (selectedCountry === 'ca') {\n\t\t\t\t\tswitch (type.value) {\n\t\t\t\t\t\tcase 'ca-income':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual taxable income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"85000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Province \/ territory note<\/label><select name=\"province\"><option value=\"federal\">Federal only - province tax not included<\/option><option value=\"on\">Ontario note only<\/option><option value=\"bc\">British Columbia note only<\/option><option value=\"qc\">Quebec note only<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Student loan repayment?<\/label><select name=\"studentLoan\"><option value=\"no\">No \/ not included<\/option><option value=\"yes\">Yes - show note only<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'ca-payroll':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual employment income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"85000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Province<\/label><select name=\"province\"><option value=\"federal\">Outside Quebec<\/option><option value=\"qc\">Quebec<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Include CPP\/QPP?<\/label><select name=\"includeCpp\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Include EI?<\/label><select name=\"includeEi\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Student loan repayment?<\/label><select name=\"studentLoan\"><option value=\"no\">No \/ not included<\/option><option value=\"yes\">Yes - show note only<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'ca-cpp-ei':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual pensionable \/ insurable earnings<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"85000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Province<\/label><select name=\"province\"><option value=\"federal\">Outside Quebec<\/option><option value=\"qc\">Quebec<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Employment type<\/label><select name=\"employment\"><option value=\"employee\">Employee<\/option><option value=\"self\">Self-employed CPP estimate<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'ca-self-employed':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual net self-employed income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"95000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Include self-employed CPP?<\/label><select name=\"includeCpp\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'ca-sales-tax':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Amount<\/label><input name=\"amount\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"1000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Province \/ territory<\/label><select name=\"province\"><option value=\"ab\">Alberta \/ territories - 5%<\/option><option value=\"bc\">British Columbia - 5% GST + 7% PST<\/option><option value=\"mb\">Manitoba - 5% GST + 7% PST<\/option><option value=\"sk\">Saskatchewan - 5% GST + 6% PST<\/option><option value=\"on\">Ontario - 13% HST<\/option><option value=\"ns\">Nova Scotia - 14% HST<\/option><option value=\"nb\">New Brunswick - 15% HST<\/option><option value=\"nl\">Newfoundland and Labrador - 15% HST<\/option><option value=\"pe\">Prince Edward Island - 15% HST<\/option><option value=\"qc\">Quebec - 5% GST + 9.975% QST<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Mode<\/label><select name=\"mode\"><option value=\"add\">Add tax<\/option><option value=\"remove\">Remove tax<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Taxable supply?<\/label><select name=\"taxable\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'ca-sales-tax-return':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Taxable sales before tax<\/label><input name=\"sales\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"20000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Eligible purchases before tax<\/label><input name=\"purchases\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"7000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Province \/ territory<\/label><select name=\"province\"><option value=\"ab\">Alberta \/ territories - 5%<\/option><option value=\"on\">Ontario - 13% HST<\/option><option value=\"ns\">Nova Scotia - 14% HST<\/option><option value=\"nb\">HST provinces - 15%<\/option><option value=\"bc\">British Columbia - 5% GST only for return estimate<\/option><option value=\"qc\">Quebec - GST\/QST simple combined estimate<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'ca-corporate':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Federal taxable corporate income<\/label><input name=\"profit\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"250000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Federal rate type<\/label><select name=\"corpRate\"><option value=\"general\">General federal net rate - 15%<\/option><option value=\"small\">Small business federal rate - 9%<\/option><option value=\"basic\">Basic rate after federal abatement - 28%<\/option><\/select><\/div>';\n\t\t\t\t\t}\n\t\t\t\t\treturn '';\n\t\t\t\t}\n\n\t\t\t\tif (selectedCountry === 'nz') {\n\t\t\t\t\tswitch (type.value) {\n\t\t\t\t\t\tcase 'nz-income':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual taxable income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"85000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Income type<\/label><select name=\"incomeType\"><option value=\"salary\">Salary \/ wages<\/option><option value=\"other\">Other taxable income<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'nz-paye':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual gross salary \/ wages<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"85000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Include ACC earners levy?<\/label><select name=\"includeAcc\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>KiwiSaver employee rate<\/label><select name=\"kiwiRate\"><option value=\"0.035\">3.5%<\/option><option value=\"0\">0%<\/option><option value=\"0.04\">4%<\/option><option value=\"0.06\">6%<\/option><option value=\"0.08\">8%<\/option><option value=\"0.10\">10%<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Student loan?<\/label><select name=\"studentLoan\"><option value=\"no\">No<\/option><option value=\"yes\">Yes - show note only<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'nz-kiwisaver':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual gross pay<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"85000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>KiwiSaver employee rate<\/label><select name=\"kiwiRate\"><option value=\"0.035\">3.5%<\/option><option value=\"0.04\">4%<\/option><option value=\"0.06\">6%<\/option><option value=\"0.08\">8%<\/option><option value=\"0.10\">10%<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'nz-self-employed':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual net self-employed income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"95000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Show provisional tax split?<\/label><select name=\"split\"><option value=\"yes\">Yes - 3 instalments<\/option><option value=\"no\">No<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'nz-gst':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Amount<\/label><input name=\"amount\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"1000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Mode<\/label><select name=\"mode\"><option value=\"add\">Add GST<\/option><option value=\"remove\">Remove GST<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Taxable supply?<\/label><select name=\"taxable\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'nz-gst-return':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>GST-inclusive sales<\/label><input name=\"sales\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"23000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>GST-inclusive purchases<\/label><input name=\"purchases\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"8050\"><\/div>';\n\t\t\t\t\t\tcase 'nz-company':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Taxable company profit<\/label><input name=\"profit\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"250000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Entity type<\/label><select name=\"entity\"><option value=\"company\">Most companies - 28%<\/option><option value=\"maori\">M\u0101ori authority - 17.5%<\/option><\/select><\/div>';\n\t\t\t\t\t\tcase 'nz-provisional':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Estimated annual income tax<\/label><input name=\"tax\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"28000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Payment option<\/label><select name=\"payments\"><option value=\"3\">Standard estimate - 3 instalments<\/option><option value=\"6\">GST ratio-style reminder - 6 instalments<\/option><\/select><\/div>';\n\t\t\t\t\t}\n\t\t\t\t\treturn '';\n\t\t\t\t}\n\n\t\t\t\tswitch (type.value) {\n\t\t\t\t\t\tcase 'income':\n\t\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Salary \/ package amount<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"85000\"><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Does this include super?<\/label><select name=\"superMode\"><option value=\"exclusive\">No - salary excludes super<\/option><option value=\"inclusive\">Yes - package includes super<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Tax residency<\/label><select name=\"residency\"><option value=\"resident\">Australian resident<\/option><option value=\"foreign\">Foreign resident<\/option><option value=\"working-holiday\">Working holiday maker<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Include Medicare levy?<\/label><select name=\"includeMedicare\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>HELP \/ student loan?<\/label><select name=\"studentLoan\"><option value=\"no\">No \/ not included<\/option><option value=\"yes\">Yes - show note only<\/option><\/select><\/div>';\n\t\t\t\t\tcase 'medicare':\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Taxable income<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"85000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Medicare exempt?<\/label><select name=\"exempt\"><option value=\"no\">No<\/option><option value=\"yes\">Yes<\/option><\/select><\/div>';\n\t\t\t\t\tcase 'mls':\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Income for surcharge purposes<\/label><input name=\"income\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"125000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Family status<\/label><select name=\"family\"><option value=\"single\">Single<\/option><option value=\"family\">Family<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Private hospital cover?<\/label><select name=\"cover\"><option value=\"no\">No<\/option><option value=\"yes\">Yes<\/option><\/select><\/div>';\n\t\t\t\t\tcase 'cgt':\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Sale price<\/label><input name=\"sale\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"120000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Cost base<\/label><input name=\"cost\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"80000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Held more than 12 months?<\/label><select name=\"discount\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>';\n\t\t\t\t\tcase 'gst':\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Amount<\/label><input name=\"amount\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"1000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Mode<\/label><select name=\"mode\"><option value=\"add\">Add GST<\/option><option value=\"remove\">Remove GST<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Taxable supply?<\/label><select name=\"taxable\"><option value=\"yes\">Yes<\/option><option value=\"no\">No<\/option><\/select><\/div>';\n\t\t\t\t\tcase 'bas':\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>GST-inclusive sales<\/label><input name=\"sales\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"22000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>GST-inclusive purchases<\/label><input name=\"purchases\" type=\"number\" min=\"0\" step=\"1\" placeholder=\"7700\"><\/div>';\n\t\t\t\t\tcase 'company':\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Taxable company profit<\/label><input name=\"profit\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"250000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Base rate entity?<\/label><select name=\"baseRate\"><option value=\"yes\">Yes - 25%<\/option><option value=\"no\">No - 30%<\/option><\/select><\/div>';\n\t\t\t\t\tcase 'payroll':\n\t\t\t\t\t\treturn '' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>State<\/label><select name=\"state\"><option value=\"nsw\">NSW<\/option><option value=\"vic\">VIC<\/option><option value=\"qld\">QLD<\/option><\/select><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Annual taxable wages<\/label><input name=\"wages\" type=\"number\" min=\"0\" step=\"100\" placeholder=\"1600000\"><\/div>' +\n\t\t\t\t\t\t\t'<div class=\"silcom-tax-field\"><label>Regional employer?<\/label><select name=\"regional\"><option value=\"no\">No<\/option><option value=\"yes\">Yes<\/option><\/select><\/div>';\n\t\t\t\t}\n\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\tfunction residentTax(income) {\n\t\t\t\tif (income <= 18200) return 0;\n\t\t\t\tif (income <= 45000) return (income - 18200) * 0.16;\n\t\t\t\tif (income <= 135000) return 4288 + (income - 45000) * 0.30;\n\t\t\t\tif (income <= 190000) return 31288 + (income - 135000) * 0.37;\n\t\t\t\treturn 51638 + (income - 190000) * 0.45;\n\t\t\t}\n\n\t\t\tfunction foreignTax(income) {\n\t\t\t\tif (income <= 135000) return income * 0.30;\n\t\t\t\tif (income <= 190000) return 40500 + (income - 135000) * 0.37;\n\t\t\t\treturn 60850 + (income - 190000) * 0.45;\n\t\t\t}\n\n\t\t\tfunction workingHolidayTax(income) {\n\t\t\t\tif (income <= 45000) return income * 0.15;\n\t\t\t\tif (income <= 135000) return 6750 + (income - 45000) * 0.30;\n\t\t\t\tif (income <= 190000) return 33750 + (income - 135000) * 0.37;\n\t\t\t\treturn 54100 + (income - 190000) * 0.45;\n\t\t\t}\n\n\t\t\tfunction nzIncomeTax(income) {\n\t\t\t\tif (income <= 15600) return income * 0.105;\n\t\t\t\tif (income <= 53500) return 1638 + (income - 15600) * 0.175;\n\t\t\t\tif (income <= 78100) return 8270.50 + (income - 53500) * 0.30;\n\t\t\t\tif (income <= 180000) return 15650.50 + (income - 78100) * 0.33;\n\t\t\t\treturn 49277.50 + (income - 180000) * 0.39;\n\t\t\t}\n\n\t\t\tfunction nzAccLevy(income) {\n\t\t\t\treturn Math.min(income, nzAccLevyCap) * nzAccLevyRate;\n\t\t\t}\n\n\t\t\tfunction caFederalTax(income) {\n\t\t\t\tif (income <= 58523) return income * 0.14;\n\t\t\t\tif (income <= 117045) return 8193.22 + (income - 58523) * 0.205;\n\t\t\t\tif (income <= 181440) return 20190.23 + (income - 117045) * 0.26;\n\t\t\t\tif (income <= 258482) return 36932.93 + (income - 181440) * 0.29;\n\t\t\t\treturn 59275.11 + (income - 258482) * 0.33;\n\t\t\t}\n\n\t\t\tfunction caCpp(amount, selfEmployed) {\n\t\t\t\tvar base = Math.max(0, Math.min(amount, 74600) - 3500) * 0.0595;\n\t\t\t\tvar cpp2 = Math.max(0, Math.min(amount, 85000) - 74600) * 0.04;\n\t\t\t\tvar total = Math.min(base, 4230.45) + Math.min(cpp2, 416);\n\t\t\t\treturn selfEmployed ? total * 2 : total;\n\t\t\t}\n\n\t\t\tfunction caEi(amount, province) {\n\t\t\t\tvar rate = province === 'qc' ? 0.013 : 0.0163;\n\t\t\t\tvar max = province === 'qc' ? 895.70 : 1123.07;\n\t\t\t\treturn Math.min(amount * rate, max);\n\t\t\t}\n\n\t\t\tfunction caSalesRate(province) {\n\t\t\t\tvar rates = {\n\t\t\t\t\tab: { rate: 0.05, label: '5% GST' },\n\t\t\t\t\tbc: { rate: 0.12, label: '5% GST + 7% PST' },\n\t\t\t\t\tmb: { rate: 0.12, label: '5% GST + 7% PST' },\n\t\t\t\t\tsk: { rate: 0.11, label: '5% GST + 6% PST' },\n\t\t\t\t\ton: { rate: 0.13, label: '13% HST' },\n\t\t\t\t\tns: { rate: 0.14, label: '14% HST' },\n\t\t\t\t\tnb: { rate: 0.15, label: '15% HST' },\n\t\t\t\t\tnl: { rate: 0.15, label: '15% HST' },\n\t\t\t\t\tpe: { rate: 0.15, label: '15% HST' },\n\t\t\t\t\tqc: { rate: 0.14975, label: '5% GST + 9.975% QST' }\n\t\t\t\t};\n\t\t\t\treturn rates[province] || rates.ab;\n\t\t\t}\n\n\t\t\tfunction ukRegionName(region) {\n\t\t\t\tvar names = {\n\t\t\t\t\tengland: 'England',\n\t\t\t\t\twales: 'Wales',\n\t\t\t\t\t'northern-ireland': 'Northern Ireland',\n\t\t\t\t\tscotland: 'Scotland'\n\t\t\t\t};\n\t\t\t\treturn names[region] || 'England';\n\t\t\t}\n\n\t\t\tfunction ukPersonalAllowance(income) {\n\t\t\t\treturn Math.max(0, 12570 - Math.max(0, income - 100000) \/ 2);\n\t\t\t}\n\n\t\t\tfunction ukBandTax(taxable, bands) {\n\t\t\t\tvar remaining = Math.max(0, taxable);\n\t\t\t\tvar taxDue = 0;\n\t\t\t\tbands.forEach(function (band) {\n\t\t\t\t\tif (remaining <= 0) return;\n\t\t\t\t\tvar slice = band.limit === null ? remaining : Math.min(remaining, band.limit);\n\t\t\t\t\ttaxDue += slice * band.rate;\n\t\t\t\t\tremaining -= slice;\n\t\t\t\t});\n\t\t\t\treturn taxDue;\n\t\t\t}\n\n\t\t\tfunction ukIncomeTax(income, region) {\n\t\t\t\tvar allowance = ukPersonalAllowance(income);\n\t\t\t\tvar taxable = Math.max(0, income - allowance);\n\t\t\t\tif (region === 'scotland') {\n\t\t\t\t\treturn ukBandTax(taxable, [\n\t\t\t\t\t\t{ limit: 3967, rate: 0.19 },\n\t\t\t\t\t\t{ limit: 12989, rate: 0.20 },\n\t\t\t\t\t\t{ limit: 14136, rate: 0.21 },\n\t\t\t\t\t\t{ limit: 31338, rate: 0.42 },\n\t\t\t\t\t\t{ limit: 62710, rate: 0.45 },\n\t\t\t\t\t\t{ limit: null, rate: 0.48 }\n\t\t\t\t\t]);\n\t\t\t\t}\n\t\t\t\treturn ukBandTax(taxable, [\n\t\t\t\t\t{ limit: 37700, rate: 0.20 },\n\t\t\t\t\t{ limit: 87440, rate: 0.40 },\n\t\t\t\t\t{ limit: null, rate: 0.45 }\n\t\t\t\t]);\n\t\t\t}\n\n\t\t\tfunction ukEmployeeNi(income) {\n\t\t\t\tvar primaryThreshold = 12570;\n\t\t\t\tvar upperEarningsLimit = 50270;\n\t\t\t\tvar mainSlice = Math.max(0, Math.min(income, upperEarningsLimit) - primaryThreshold);\n\t\t\t\tvar upperSlice = Math.max(0, income - upperEarningsLimit);\n\t\t\t\treturn mainSlice * 0.08 + upperSlice * 0.02;\n\t\t\t}\n\n\t\t\tfunction ukSelfEmployedNi(profit) {\n\t\t\t\tvar lowerProfitsLimit = 12570;\n\t\t\t\tvar upperProfitsLimit = 50270;\n\t\t\t\tvar mainSlice = Math.max(0, Math.min(profit, upperProfitsLimit) - lowerProfitsLimit);\n\t\t\t\tvar upperSlice = Math.max(0, profit - upperProfitsLimit);\n\t\t\t\treturn mainSlice * 0.06 + upperSlice * 0.02;\n\t\t\t}\n\n\t\t\tfunction ukCorporationTax(profit) {\n\t\t\t\tif (profit <= 50000) return profit * 0.19;\n\t\t\t\tif (profit >= 250000) return profit * 0.25;\n\t\t\t\treturn profit * 0.25 - ((250000 - profit) * 3 \/ 200);\n\t\t\t}\n\n\t\t\tfunction percent(value) {\n\t\t\t\tif (value > 0 && value < 0.02) {\n\t\t\t\t\treturn (value * 100).toFixed(2) + '%';\n\t\t\t\t}\n\t\t\t\treturn (value * 100).toFixed(value < 0.1 ? 1 : 0) + '%';\n\t\t\t}\n\n\t\t\t\tfunction setResult(label, main, detail, items) {\n\t\t\t\t\tresultLabel.textContent = label;\n\t\t\t\t\tresultMain.textContent = money(main);\n\t\t\t\t\tresultDetail.textContent = detail;\n\t\t\t\t\tnetPanel.hidden = true;\n\t\t\t\t\tresultBreakdown.innerHTML = (items || []).map(function (item) {\n\t\t\t\t\t\treturn '<li>' + item + '<\/li>';\n\t\t\t\t\t}).join('');\n\t\t\t\t}\n\n\t\t\t\tfunction setNetResult(net, detail) {\n\t\t\t\t\tnetPanel.hidden = false;\n\t\t\t\t\tnetMain.textContent = money(net);\n\t\t\t\t\tnetDetail.textContent = detail;\n\t\t\t\t}\n\n\t\t\t\tfunction renderEducation() {\n\t\t\t\t\tvar info = taxEducation[selectedCountry] || taxEducation.au;\n\t\t\t\t\teducationKicker.textContent = info.kicker;\n\t\t\t\t\teducationTitle.textContent = info.title;\n\t\t\t\t\teducationSummary.textContent = info.summary;\n\t\t\t\t\tbracketTitle.textContent = info.bracketTitle;\n\t\t\t\t\tbracketList.innerHTML = info.brackets.map(function (item) {\n\t\t\t\t\t\treturn '<div class=\"silcom-tax-bracket-row\"><span>' + item.range + '<\/span><strong>' + item.rate + '<\/strong><\/div>';\n\t\t\t\t\t}).join('');\n\t\t\t\t\ttermList.innerHTML = info.terms.map(function (item) {\n\t\t\t\t\t\treturn '<div class=\"silcom-tax-term\"><strong>' + item.key + '<\/strong><span>' + item.value + '<\/span><\/div>';\n\t\t\t\t\t}).join('');\n\t\t\t\t}\n\n\t\t\tfunction selectValue(name) {\n\t\t\t\tvar input = fields.querySelector('[name=\"' + name + '\"]');\n\t\t\t\treturn input ? input.value : '';\n\t\t\t}\n\n\t\t\tfunction calculate() {\n\t\t\t\tvar amount;\n\t\t\t\tvar tax;\n\t\t\t\tvar total;\n\t\t\t\tvar rate;\n\n\t\t\t\tif (selectedCountry !== 'au' && selectedCountry !== 'nz' && selectedCountry !== 'ca' && selectedCountry !== 'uk' && selectedCountry !== 'india') {\n\t\t\t\t\tvar comingSoonCountry = countrySettings[selectedCountry] || countrySettings.au;\n\t\t\t\t\tsetResult('Calculator coming soon', 0, comingSoonCountry.currency + ' calculator is not active yet. Use the education panel below for general tax brackets and terminology.', [\n\t\t\t\t\t\t'Calculator status: coming soon',\n\t\t\t\t\t\t'Reason: this country needs country-specific rules before estimates should be trusted.'\n\t\t\t\t\t]);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (selectedCountry === 'india') {\n\t\t\t\t\tif (type.value === 'india-income') {\n\t\t\t\t\t\tvar indiaGross = numberValue('income');\n\t\t\t\t\t\tvar indiaStandardDeduction = Math.min(75000, numberValue('standardDeduction'));\n\t\t\t\t\t\tvar indiaTaxable = Math.max(0, indiaGross - indiaStandardDeduction);\n\t\t\t\t\t\tvar indiaTax = 0;\n\t\t\t\t\t\tvar indiaSlabs = [\n\t\t\t\t\t\t\t[400000, 0], [800000, 0.05], [1200000, 0.10], [1600000, 0.15],\n\t\t\t\t\t\t\t[2000000, 0.20], [2400000, 0.25], [Infinity, 0.30]\n\t\t\t\t\t\t];\n\t\t\t\t\t\tvar indiaPrevious = 0;\n\t\t\t\t\t\tindiaSlabs.forEach(function (slab) {\n\t\t\t\t\t\t\tvar indiaUpper = slab[0];\n\t\t\t\t\t\t\tvar indiaBand = Math.max(0, Math.min(indiaTaxable, indiaUpper) - indiaPrevious);\n\t\t\t\t\t\t\tindiaTax += indiaBand * slab[1];\n\t\t\t\t\t\t\tindiaPrevious = indiaUpper;\n\t\t\t\t\t\t});\n\t\t\t\t\t\tvar indiaResident = selectValue('residency') === 'resident';\n\t\t\t\t\t\tvar indiaRebate = indiaResident && indiaTaxable <= 1200000 ? Math.min(indiaTax, 60000) : 0;\n\t\t\t\t\t\tvar indiaTaxAfterRebate = Math.max(0, indiaTax - indiaRebate);\n\t\t\t\t\t\tvar indiaCess = indiaTaxAfterRebate * 0.04;\n\t\t\t\t\t\tvar indiaTotal = indiaTaxAfterRebate + indiaCess;\n\t\t\t\t\t\tsetResult('Estimated income tax', indiaTotal, 'India AY 2026-27 new-regime starter estimate in INR. It excludes special-rate income, surcharge, capital-gains rules and other adjustments.', [\n\t\t\t\t\t\t\t'Gross income: ' + money(indiaGross),\n\t\t\t\t\t\t\t'Standard deduction used: ' + money(indiaStandardDeduction),\n\t\t\t\t\t\t\t'Taxable income: ' + money(indiaTaxable),\n\t\t\t\t\t\t\t'87A rebate: ' + money(indiaRebate),\n\t\t\t\t\t\t\t'Health and Education Cess: ' + money(indiaCess) + ' (4%)',\n\t\t\t\t\t\t\t'Residential status: ' + (indiaResident ? 'Resident' : 'Non-resident')\n\t\t\t\t\t\t]);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (type.value === 'india-gst') {\n\t\t\t\t\t\tvar indiaSupply = numberValue('supply');\n\t\t\t\t\t\tvar indiaGstRate = parseFloat(selectValue('gstRate') || '18') \/ 100;\n\t\t\t\t\t\tvar indiaGstMode = selectValue('gstMode');\n\t\t\t\t\t\tvar indiaGst = indiaGstMode === 'remove' ? indiaSupply * indiaGstRate \/ (1 + indiaGstRate) : indiaSupply * indiaGstRate;\n\t\t\t\t\t\tvar indiaTotalWithGst = indiaGstMode === 'remove' ? indiaSupply : indiaSupply + indiaGst;\n\t\t\t\t\t\tsetResult(indiaGstMode === 'remove' ? 'GST included in amount' : 'Estimated GST', indiaGst, 'India GST starter estimate. Confirm the applicable HSN\/SAC classification and rate before relying on an invoice.', [\n\t\t\t\t\t\t\t'Amount entered: ' + money(indiaSupply),\n\t\t\t\t\t\t\t'GST rate: ' + (indiaGstRate * 100).toFixed(0) + '%',\n\t\t\t\t\t\t\t'GST amount: ' + money(indiaGst),\n\t\t\t\t\t\t\t'indicated total: ' + money(indiaTotalWithGst),\n\t\t\t\t\t\t\t'Intra-state supplies commonly split GST into CGST and SGST; inter-state supplies commonly use IGST.'\n\t\t\t\t\t\t]);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tsetResult('Calculator coming soon', 0, 'This India category is prepared for a future country-specific calculator.', [\n\t\t\t\t\t\t'Calculation status: coming soon',\n\t\t\t\t\t\t'India-specific rules need to be verified before activation.'\n\t\t\t\t\t]);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (selectedCountry === 'uk') {\n\t\t\t\t\tswitch (type.value) {\n\t\t\t\t\t\tcase 'uk-income':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\tvar ukRegion = selectValue('region');\n\t\t\t\t\t\t\ttax = ukIncomeTax(amount, ukRegion);\n\t\t\t\t\t\t\tsetResult('Estimated income tax', tax, 'United Kingdom 2026-27 estimate using GBP. Region selection changes the income tax bands for Scotland.', [\n\t\t\t\t\t\t\t\t'Annual taxable income: ' + money(amount),\n\t\t\t\t\t\t\t\t'Region \/ country: ' + ukRegionName(ukRegion),\n\t\t\t\t\t\t\t\t'Personal Allowance used: ' + money(ukPersonalAllowance(amount)),\n\t\t\t\t\t\t\t\tukRegion === 'scotland' ? 'Scottish income tax bands used for earned income.' : 'England\/Wales\/Northern Ireland bands used.',\n\t\t\t\t\t\t\t\t'National Insurance is not included in this income-tax-only result.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tsetNetResult(Math.max(0, amount - tax), 'Approximate amount after income tax only. National Insurance, pension, student loan and benefits are not included.');\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'uk-paye':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\tukRegion = selectValue('region');\n\t\t\t\t\t\t\tvar ukIncomeTaxAmount = ukIncomeTax(amount, ukRegion);\n\t\t\t\t\t\t\tvar ukNi = selectValue('includeNi') === 'yes' ? ukEmployeeNi(amount) : 0;\n\t\t\t\t\t\t\tvar ukDeductions = ukIncomeTaxAmount + ukNi;\n\t\t\t\t\t\t\tsetResult('Estimated PAYE deductions', ukDeductions, 'UK PAYE-style starter estimate using income tax and selected employee National Insurance.', [\n\t\t\t\t\t\t\t\t'Gross salary \/ wages: ' + money(amount),\n\t\t\t\t\t\t\t\t'Region \/ country: ' + ukRegionName(ukRegion),\n\t\t\t\t\t\t\t\t'Income tax: ' + money(ukIncomeTaxAmount),\n\t\t\t\t\t\t\t\t'Employee National Insurance: ' + money(ukNi),\n\t\t\t\t\t\t\t\t'Personal Allowance used: ' + money(ukPersonalAllowance(amount)),\n\t\t\t\t\t\t\t\t'Student loan: ' + (selectValue('studentLoan') === 'yes' ? 'Selected - repayment is not included in this estimate.' : 'No \/ not included'),\n\t\t\t\t\t\t\t\t'Pension contributions, benefits, tax code adjustments and student loan repayments are not included.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tsetNetResult(Math.max(0, amount - ukDeductions), 'Approximate annual take-home after income tax and selected employee National Insurance only.');\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'uk-ni':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\tvar contribution = selectValue('contribution');\n\t\t\t\t\t\t\ttax = contribution === 'self-employed' ? ukSelfEmployedNi(amount) : ukEmployeeNi(amount);\n\t\t\t\t\t\t\tsetResult('Estimated National Insurance', tax, contribution === 'self-employed' ? 'Class 4 self-employed starter estimate.' : 'Employee Class 1 National Insurance starter estimate.', [\n\t\t\t\t\t\t\t\t'Annual income\/profit: ' + money(amount),\n\t\t\t\t\t\t\t\t'Contribution type: ' + (contribution === 'self-employed' ? 'Self-employed Class 4' : 'Employee Class 1'),\n\t\t\t\t\t\t\t\t'Main threshold used: ' + money(12570),\n\t\t\t\t\t\t\t\t'Upper threshold used: ' + money(50270),\n\t\t\t\t\t\t\t\tcontribution === 'self-employed' ? 'Class 2 and detailed self-employed rules are not included.' : 'Employer National Insurance is not included.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'uk-vat':\n\t\t\t\t\t\t\tamount = numberValue('amount');\n\t\t\t\t\t\t\trate = parseFloat(selectValue('vatRate') || '0');\n\t\t\t\t\t\t\tif (selectValue('taxable') === 'no') {\n\t\t\t\t\t\t\t\tsetResult('VAT amount', 0, 'Marked as not taxable or exempt.', [ 'Entered amount: ' + money(amount) ]);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (selectValue('mode') === 'remove') {\n\t\t\t\t\t\t\t\ttax = rate === 0 ? 0 : amount - (amount \/ (1 + rate));\n\t\t\t\t\t\t\t\ttotal = amount - tax;\n\t\t\t\t\t\t\t\tsetResult('VAT portion', tax, 'UK VAT removal using selected rate.', [\n\t\t\t\t\t\t\t\t\t'VAT-inclusive amount: ' + money(amount),\n\t\t\t\t\t\t\t\t\t'Amount before VAT: ' + money(total),\n\t\t\t\t\t\t\t\t\t'Rate used: ' + percent(rate)\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\ttax = amount * rate;\n\t\t\t\t\t\t\t\ttotal = amount + tax;\n\t\t\t\t\t\t\t\tsetResult('VAT to add', tax, 'UK VAT addition using selected rate.', [\n\t\t\t\t\t\t\t\t\t'Amount before VAT: ' + money(amount),\n\t\t\t\t\t\t\t\t\t'VAT-inclusive amount: ' + money(total),\n\t\t\t\t\t\t\t\t\t'Rate used: ' + percent(rate)\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'uk-vat-return':\n\t\t\t\t\t\t\trate = parseFloat(selectValue('vatRate') || '0');\n\t\t\t\t\t\t\tvar outputVat = numberValue('sales') * rate;\n\t\t\t\t\t\t\tvar inputVat = numberValue('purchases') * rate;\n\t\t\t\t\t\t\ttax = outputVat - inputVat;\n\t\t\t\t\t\t\tsetResult(tax >= 0 ? 'Estimated VAT payable' : 'Estimated VAT refund', Math.abs(tax), 'Output VAT on sales minus input VAT on purchases.', [\n\t\t\t\t\t\t\t\t'Output VAT on sales: ' + money(outputVat),\n\t\t\t\t\t\t\t\t'Input VAT on purchases: ' + money(inputVat),\n\t\t\t\t\t\t\t\t'Rate used: ' + percent(rate),\n\t\t\t\t\t\t\t\t'Flat Rate Scheme, partial exemption and special schemes are not included.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'uk-corporation':\n\t\t\t\t\t\t\tamount = numberValue('profit');\n\t\t\t\t\t\t\ttax = ukCorporationTax(amount);\n\t\t\t\t\t\t\tvar effectiveRate = amount > 0 ? tax \/ amount : 0;\n\t\t\t\t\t\t\tsetResult('Estimated Corporation Tax', tax, 'UK Corporation Tax starter estimate using small profits, main rate and marginal relief thresholds.', [\n\t\t\t\t\t\t\t\t'Company taxable profit: ' + money(amount),\n\t\t\t\t\t\t\t\t'Effective rate: ' + percent(effectiveRate),\n\t\t\t\t\t\t\t\t'Small profits threshold: ' + money(50000),\n\t\t\t\t\t\t\t\t'Main rate threshold: ' + money(250000),\n\t\t\t\t\t\t\t\tselectValue('associated') === 'yes' ? 'Associated companies selected - thresholds may need apportionment.' : 'Standard limits used.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (selectedCountry === 'ca') {\n\t\t\t\t\tswitch (type.value) {\n\t\t\t\t\t\tcase 'ca-income':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\ttax = caFederalTax(amount);\n\t\t\t\t\t\t\tsetResult('Estimated federal income tax', tax, 'Canada 2026 federal estimate using CAD. Provincial or territorial tax is not included.', [\n\t\t\t\t\t\t\t\t'Taxable income: ' + money(amount),\n\t\t\t\t\t\t\t\t'Province\/territory selection: ' + selectValue('province'),\n\t\t\t\t\t\t\t\t'Student loan: ' + (selectValue('studentLoan') === 'yes' ? 'Selected - repayment is not included in this estimate.' : 'No \/ not included'),\n\t\t\t\t\t\t\t\t'Federal brackets only; credits, deductions and provincial tax can change the final amount.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tsetNetResult(Math.max(0, amount - tax), 'Approximate take-home after federal income tax only. Provincial tax, credits and student loan repayment are not included.');\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'ca-payroll':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\tvar caIncomeTax = caFederalTax(amount);\n\t\t\t\t\t\t\tvar caProvince = selectValue('province');\n\t\t\t\t\t\t\tvar cpp = selectValue('includeCpp') === 'yes' ? caCpp(amount, false) : 0;\n\t\t\t\t\t\t\tvar ei = selectValue('includeEi') === 'yes' ? caEi(amount, caProvince) : 0;\n\t\t\t\t\t\t\tvar deductions = caIncomeTax + cpp + ei;\n\t\t\t\t\t\t\tvar net = Math.max(0, amount - deductions);\n\t\t\t\t\t\t\tsetResult('Estimated federal payroll deductions', deductions, 'Federal income tax plus selected CPP\/QPP and EI. Provincial income tax is not included.', [\n\t\t\t\t\t\t\t\t'Employment income: ' + money(amount),\n\t\t\t\t\t\t\t\t'Federal income tax: ' + money(caIncomeTax),\n\t\t\t\t\t\t\t\t(caProvince === 'qc' ? 'QPP-style CPP estimate: ' : 'CPP + CPP2 estimate: ') + money(cpp),\n\t\t\t\t\t\t\t\t'EI estimate: ' + money(ei) + (caProvince === 'qc' ? ' at Quebec EI rate' : ''),\n\t\t\t\t\t\t\t\t'Student loan: ' + (selectValue('studentLoan') === 'yes' ? 'Selected - repayment is not included in this estimate.' : 'No \/ not included'),\n\t\t\t\t\t\t\t\t'Provincial or territorial income tax is not included.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tsetNetResult(net, 'Approximate annual take-home after federal tax and selected CPP\/EI deductions only. Student loan repayment is not included.');\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'ca-cpp-ei':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\tvar employment = selectValue('employment');\n\t\t\t\t\t\t\tvar deductionProvince = selectValue('province');\n\t\t\t\t\t\t\tcpp = caCpp(amount, employment === 'self');\n\t\t\t\t\t\t\tei = employment === 'self' ? 0 : caEi(amount, deductionProvince);\n\t\t\t\t\t\t\tsetResult('Estimated CPP\/EI deductions', cpp + ei, 'Canada payroll deduction starter estimate for 2026.', [\n\t\t\t\t\t\t\t\t'Annual earnings: ' + money(amount),\n\t\t\t\t\t\t\t\t(employment === 'self' ? 'Self-employed CPP estimate: ' : 'Employee CPP + CPP2 estimate: ') + money(cpp),\n\t\t\t\t\t\t\t\t'EI estimate: ' + money(ei),\n\t\t\t\t\t\t\t\t'CPP uses YMPE $74,600, basic exemption $3,500 and CPP2 up to $85,000.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'ca-self-employed':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\ttax = caFederalTax(amount);\n\t\t\t\t\t\t\tcpp = selectValue('includeCpp') === 'yes' ? caCpp(amount, true) : 0;\n\t\t\t\t\t\t\tsetResult('Estimated self-employed federal amount', tax + cpp, 'Federal income tax plus optional self-employed CPP estimate. Provincial tax is not included.', [\n\t\t\t\t\t\t\t\t'Net self-employed income: ' + money(amount),\n\t\t\t\t\t\t\t\t'Federal income tax: ' + money(tax),\n\t\t\t\t\t\t\t\t'Self-employed CPP estimate: ' + money(cpp),\n\t\t\t\t\t\t\t\t'Credits, expenses, instalments and province\/territory tax are not included.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tsetNetResult(Math.max(0, amount - tax - cpp), 'Approximate amount after federal income tax and selected CPP only. Provincial tax and other repayments are not included.');\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'ca-sales-tax':\n\t\t\t\t\t\t\tamount = numberValue('amount');\n\t\t\t\t\t\t\tvar sales = caSalesRate(selectValue('province'));\n\t\t\t\t\t\t\tif (selectValue('taxable') === 'no') {\n\t\t\t\t\t\t\t\tsetResult('Sales tax amount', 0, 'Marked as not taxable.', [ 'Entered amount: ' + money(amount) ]);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (selectValue('mode') === 'remove') {\n\t\t\t\t\t\t\t\ttax = amount - (amount \/ (1 + sales.rate));\n\t\t\t\t\t\t\t\ttotal = amount - tax;\n\t\t\t\t\t\t\t\tsetResult('Sales tax portion', tax, 'Canadian sales tax removal using ' + sales.label + '.', [\n\t\t\t\t\t\t\t\t\t'Tax-inclusive amount: ' + money(amount),\n\t\t\t\t\t\t\t\t\t'Amount before tax: ' + money(total),\n\t\t\t\t\t\t\t\t\t'Rate used: ' + sales.label\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\ttax = amount * sales.rate;\n\t\t\t\t\t\t\t\ttotal = amount + tax;\n\t\t\t\t\t\t\t\tsetResult('Sales tax to add', tax, 'Canadian GST\/HST\/PST\/QST estimate using selected province or territory.', [\n\t\t\t\t\t\t\t\t\t'Amount before tax: ' + money(amount),\n\t\t\t\t\t\t\t\t\t'Tax-inclusive amount: ' + money(total),\n\t\t\t\t\t\t\t\t\t'Rate used: ' + sales.label\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'ca-sales-tax-return':\n\t\t\t\t\t\t\tsales = caSalesRate(selectValue('province'));\n\t\t\t\t\t\t\tvar collected = numberValue('sales') * sales.rate;\n\t\t\t\t\t\t\tvar credits = numberValue('purchases') * sales.rate;\n\t\t\t\t\t\t\ttax = collected - credits;\n\t\t\t\t\t\t\tsetResult(tax >= 0 ? 'Estimated sales tax payable' : 'Estimated sales tax refund', Math.abs(tax), 'Sales tax collected minus input tax credits using a simplified selected rate.', [\n\t\t\t\t\t\t\t\t'Tax on sales: ' + money(collected),\n\t\t\t\t\t\t\t\t'Input tax credits estimate: ' + money(credits),\n\t\t\t\t\t\t\t\t'Rate used: ' + sales.label,\n\t\t\t\t\t\t\t\t'PST\/QST filing can have separate rules; this is a simple combined estimate.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'ca-corporate':\n\t\t\t\t\t\t\tamount = numberValue('profit');\n\t\t\t\t\t\t\tvar corpRate = selectValue('corpRate');\n\t\t\t\t\t\t\trate = corpRate === 'small' ? 0.09 : corpRate === 'basic' ? 0.28 : 0.15;\n\t\t\t\t\t\t\ttax = amount * rate;\n\t\t\t\t\t\t\tsetResult('Estimated federal corporate tax', tax, 'Canada federal corporate tax starter estimate. Provincial corporate tax is not included.', [\n\t\t\t\t\t\t\t\t'Federal taxable corporate income: ' + money(amount),\n\t\t\t\t\t\t\t\t'Federal rate used: ' + percent(rate),\n\t\t\t\t\t\t\t\t'Rate type: ' + (corpRate === 'small' ? 'Small business federal rate' : corpRate === 'basic' ? 'Basic rate after federal abatement' : 'General federal net rate')\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (selectedCountry === 'nz') {\n\t\t\t\t\tswitch (type.value) {\n\t\t\t\t\t\tcase 'nz-income':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\ttax = nzIncomeTax(amount);\n\t\t\t\t\t\t\tsetResult('Estimated income tax', tax, 'New Zealand 2025-26 estimate using NZD and IRD individual tax brackets.', [\n\t\t\t\t\t\t\t\t'Taxable income: ' + money(amount),\n\t\t\t\t\t\t\t\t'Income type: ' + (selectValue('incomeType') === 'salary' ? 'Salary \/ wages' : 'Other taxable income'),\n\t\t\t\t\t\t\t\t'ACC earners levy is not included in this income-tax-only result.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'nz-paye':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\tvar incomeTax = nzIncomeTax(amount);\n\t\t\t\t\t\t\tvar acc = selectValue('includeAcc') === 'yes' ? nzAccLevy(amount) : 0;\n\t\t\t\t\t\t\tvar kiwiRate = parseFloat(selectValue('kiwiRate') || '0');\n\t\t\t\t\t\t\tvar kiwiSaver = amount * kiwiRate;\n\t\t\t\t\t\t\tvar totalDeductions = incomeTax + acc + kiwiSaver;\n\t\t\t\t\t\t\tvar netPay = Math.max(0, amount - totalDeductions);\n\t\t\t\t\t\t\tsetResult('Estimated PAYE deductions', incomeTax + acc, 'New Zealand PAYE-style estimate using NZD. KiwiSaver is shown separately in the breakdown and net take-home.', [\n\t\t\t\t\t\t\t\t'Gross salary \/ wages: ' + money(amount),\n\t\t\t\t\t\t\t\t'Income tax: ' + money(incomeTax),\n\t\t\t\t\t\t\t\t'ACC earners levy: ' + money(acc) + ' (' + percent(nzAccLevyRate) + ' up to ' + money(nzAccLevyCap) + ')',\n\t\t\t\t\t\t\t\t'KiwiSaver employee deduction: ' + money(kiwiSaver) + ' at ' + percent(kiwiRate),\n\t\t\t\t\t\t\t\t'Student loan: ' + (selectValue('studentLoan') === 'yes' ? 'Selected - repayment rules need detailed threshold handling.' : 'No'),\n\t\t\t\t\t\t\t\t'Total estimated deductions shown: ' + money(totalDeductions)\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tsetNetResult(netPay, 'Approximate annual take-home after income tax, ACC levy and selected KiwiSaver deduction.');\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'nz-kiwisaver':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\trate = parseFloat(selectValue('kiwiRate') || '0');\n\t\t\t\t\t\t\ttax = amount * rate;\n\t\t\t\t\t\t\tsetResult('Estimated KiwiSaver deduction', tax, 'Employee KiwiSaver contribution estimate from gross pay.', [\n\t\t\t\t\t\t\t\t'Annual gross pay: ' + money(amount),\n\t\t\t\t\t\t\t\t'Employee rate: ' + percent(rate),\n\t\t\t\t\t\t\t\t'Default employee rate is 3.5% if no higher rate is chosen.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'nz-self-employed':\n\t\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\t\ttax = nzIncomeTax(amount);\n\t\t\t\t\t\t\tvar instalment = tax \/ 3;\n\t\t\t\t\t\t\tvar selfItems = [\n\t\t\t\t\t\t\t\t'Net self-employed income: ' + money(amount),\n\t\t\t\t\t\t\t\t'Individual tax brackets used.',\n\t\t\t\t\t\t\t\t'ACC, expenses, losses and tax credits are not included.'\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\tif (selectValue('split') === 'yes') {\n\t\t\t\t\t\t\t\tselfItems.push('Simple 3-instalment guide: about ' + money(instalment) + ' each.');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsetResult('Estimated self-employed income tax', tax, 'Starter estimate for New Zealand self-employed income.', selfItems);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'nz-gst':\n\t\t\t\t\t\t\tamount = numberValue('amount');\n\t\t\t\t\t\t\tif (selectValue('taxable') === 'no') {\n\t\t\t\t\t\t\t\tsetResult('GST amount', 0, 'Marked as not taxable.', [ 'Entered amount: ' + money(amount) ]);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (selectValue('mode') === 'remove') {\n\t\t\t\t\t\t\t\ttax = amount * 3 \/ 23;\n\t\t\t\t\t\t\t\ttotal = amount - tax;\n\t\t\t\t\t\t\t\tsetResult('GST portion', tax, 'NZ GST is 3\/23 of a GST-inclusive price at 15%.', [\n\t\t\t\t\t\t\t\t\t'GST-inclusive amount: ' + money(amount),\n\t\t\t\t\t\t\t\t\t'Amount excluding GST: ' + money(total)\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\ttax = amount * 0.15;\n\t\t\t\t\t\t\t\ttotal = amount + tax;\n\t\t\t\t\t\t\t\tsetResult('GST to add', tax, 'NZ GST is 15% on most taxable sales.', [\n\t\t\t\t\t\t\t\t\t'Amount excluding GST: ' + money(amount),\n\t\t\t\t\t\t\t\t\t'GST-inclusive amount: ' + money(total)\n\t\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'nz-gst-return':\n\t\t\t\t\t\t\tvar nzSalesGst = numberValue('sales') * 3 \/ 23;\n\t\t\t\t\t\t\tvar nzPurchaseCredits = numberValue('purchases') * 3 \/ 23;\n\t\t\t\t\t\t\ttax = nzSalesGst - nzPurchaseCredits;\n\t\t\t\t\t\t\tsetResult(tax >= 0 ? 'Estimated GST payable' : 'Estimated GST refund', Math.abs(tax), 'NZ GST collected minus GST credits at 15%.', [\n\t\t\t\t\t\t\t\t'GST on sales: ' + money(nzSalesGst),\n\t\t\t\t\t\t\t\t'GST credits on purchases: ' + money(nzPurchaseCredits)\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'nz-company':\n\t\t\t\t\t\t\tamount = numberValue('profit');\n\t\t\t\t\t\t\trate = selectValue('entity') === 'maori' ? 0.175 : 0.28;\n\t\t\t\t\t\t\ttax = amount * rate;\n\t\t\t\t\t\t\tsetResult('Estimated entity tax', tax, 'New Zealand business tax estimate.', [\n\t\t\t\t\t\t\t\t'Taxable profit: ' + money(amount),\n\t\t\t\t\t\t\t\t'Rate used: ' + percent(rate),\n\t\t\t\t\t\t\t\t'Most companies use 28%; M\u0101ori authorities use 17.5%.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase 'nz-provisional':\n\t\t\t\t\t\t\ttax = numberValue('tax');\n\t\t\t\t\t\t\tvar payments = parseInt(selectValue('payments') || '3', 10);\n\t\t\t\t\t\t\tsetResult('Estimated instalment amount', payments ? tax \/ payments : 0, 'Simple provisional tax planning estimate.', [\n\t\t\t\t\t\t\t\t'Estimated annual income tax: ' + money(tax),\n\t\t\t\t\t\t\t\t'Number of instalments: ' + payments,\n\t\t\t\t\t\t\t\t'This is a planning guide only; due dates and methods depend on IRD settings and GST registration.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t\tswitch (type.value) {\n\t\t\t\t\t\tcase 'income':\n\t\t\t\t\t\t\tvar packageAmount = numberValue('income');\n\t\t\t\t\t\t\tvar superMode = selectValue('superMode');\n\t\t\t\t\t\t\tvar superAmount;\n\t\t\t\t\t\t\tamount = superMode === 'inclusive' ? packageAmount \/ (1 + superRate) : packageAmount;\n\t\t\t\t\t\t\tsuperAmount = amount * superRate;\n\t\t\t\t\t\t\tif (selectValue('residency') === 'foreign') {\n\t\t\t\t\t\t\t\ttax = foreignTax(amount);\n\t\t\t\t\t\t\t} else if (selectValue('residency') === 'working-holiday') {\n\t\t\t\t\t\t\t\ttax = workingHolidayTax(amount);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttax = residentTax(amount);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (selectValue('includeMedicare') === 'yes' && selectValue('residency') === 'resident') {\n\t\t\t\t\t\t\t\ttax += amount * 0.02;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar netTakeHome = Math.max(0, amount - tax);\n\t\t\t\t\t\t\tsetResult('Estimated tax payable', tax, 'Australia 2025-26 estimate using AUD.', [\n\t\t\t\t\t\t\t\t'Entered amount: ' + money(packageAmount),\n\t\t\t\t\t\t\t\t'Taxable salary\/wages: ' + money(amount),\n\t\t\t\t\t\t\t\t'Estimated super at 12%: ' + money(superAmount),\n\t\t\t\t\t\t\t\t'Residency: ' + selectValue('residency'),\n\t\t\t\t\t\t\t\t'Super setting: ' + (superMode === 'inclusive' ? 'Package includes super' : 'Salary excludes super'),\n\t\t\t\t\t\t\t\t'HELP \/ student loan: ' + (selectValue('studentLoan') === 'yes' ? 'Selected - repayment is not included in this estimate.' : 'No \/ not included'),\n\t\t\t\t\t\t\t\t'Medicare levy included only for Australian residents when selected.'\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t\tsetNetResult(netTakeHome, 'Approximate annual take-home after income tax\/Medicare, excluding super paid into fund. HELP\/student loan repayment is not included.');\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'medicare':\n\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\ttax = selectValue('exempt') === 'yes' ? 0 : amount * 0.02;\n\t\t\t\t\t\tsetResult('Estimated Medicare levy', tax, 'Standard 2% estimate before low-income reductions.', [\n\t\t\t\t\t\t\t'Taxable income: ' + money(amount),\n\t\t\t\t\t\t\t'Exempt selected: ' + selectValue('exempt')\n\t\t\t\t\t\t]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'mls':\n\t\t\t\t\t\tamount = numberValue('income');\n\t\t\t\t\t\tif (selectValue('cover') === 'yes') {\n\t\t\t\t\t\t\trate = 0;\n\t\t\t\t\t\t} else if (selectValue('family') === 'family') {\n\t\t\t\t\t\t\trate = amount <= 202000 ? 0 : amount <= 236000 ? 0.01 : amount <= 316000 ? 0.0125 : 0.015;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\trate = amount <= 101000 ? 0 : amount <= 118000 ? 0.01 : amount <= 158000 ? 0.0125 : 0.015;\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttax = amount * rate;\n\t\t\t\t\t\tsetResult('Estimated surcharge', tax, 'Medicare levy surcharge estimate based on income tier.', [\n\t\t\t\t\t\t\t'Income: ' + money(amount),\n\t\t\t\t\t\t\t'Surcharge rate: ' + (rate * 100).toFixed(2) + '%',\n\t\t\t\t\t\t\t'Private hospital cover: ' + selectValue('cover')\n\t\t\t\t\t\t]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'cgt':\n\t\t\t\t\t\tvar sale = numberValue('sale');\n\t\t\t\t\t\tvar cost = numberValue('cost');\n\t\t\t\t\t\tvar gain = Math.max(0, sale - cost);\n\t\t\t\t\t\tvar taxableGain = selectValue('discount') === 'yes' ? gain * 0.5 : gain;\n\t\t\t\t\t\tsetResult('Taxable capital gain', taxableGain, 'This estimates the taxable gain, not final tax payable.', [\n\t\t\t\t\t\t\t'Sale price: ' + money(sale),\n\t\t\t\t\t\t\t'Cost base: ' + money(cost),\n\t\t\t\t\t\t\t'Gross gain: ' + money(gain)\n\t\t\t\t\t\t]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'gst':\n\t\t\t\t\t\tamount = numberValue('amount');\n\t\t\t\t\t\tif (selectValue('taxable') === 'no') {\n\t\t\t\t\t\t\tsetResult('GST amount', 0, 'Marked as not taxable.', [ 'Entered amount: ' + money(amount) ]);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (selectValue('mode') === 'remove') {\n\t\t\t\t\t\t\ttax = amount \/ 11;\n\t\t\t\t\t\t\ttotal = amount - tax;\n\t\t\t\t\t\t\tsetResult('GST portion', tax, 'GST is 1\/11th of a GST-inclusive Australian price.', [\n\t\t\t\t\t\t\t\t'GST-inclusive amount: ' + money(amount),\n\t\t\t\t\t\t\t\t'Amount excluding GST: ' + money(total)\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttax = amount * 0.10;\n\t\t\t\t\t\t\ttotal = amount + tax;\n\t\t\t\t\t\t\tsetResult('GST to add', tax, 'GST is 10% on most Australian taxable sales.', [\n\t\t\t\t\t\t\t\t'Amount excluding GST: ' + money(amount),\n\t\t\t\t\t\t\t\t'GST-inclusive amount: ' + money(total)\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'bas':\n\t\t\t\t\t\tvar salesGst = numberValue('sales') \/ 11;\n\t\t\t\t\t\tvar purchaseCredits = numberValue('purchases') \/ 11;\n\t\t\t\t\t\ttax = salesGst - purchaseCredits;\n\t\t\t\t\t\tsetResult(tax >= 0 ? 'Estimated GST payable' : 'Estimated GST refund', Math.abs(tax), 'GST collected minus GST credits.', [\n\t\t\t\t\t\t\t'GST on sales: ' + money(salesGst),\n\t\t\t\t\t\t\t'GST credits on purchases: ' + money(purchaseCredits)\n\t\t\t\t\t\t]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'company':\n\t\t\t\t\t\tamount = numberValue('profit');\n\t\t\t\t\t\trate = selectValue('baseRate') === 'yes' ? 0.25 : 0.30;\n\t\t\t\t\t\ttax = amount * rate;\n\t\t\t\t\t\tsetResult('Estimated company tax', tax, 'Australia company tax estimate.', [\n\t\t\t\t\t\t\t'Taxable profit: ' + money(amount),\n\t\t\t\t\t\t\t'Rate used: ' + (rate * 100).toFixed(0) + '%'\n\t\t\t\t\t\t]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'payroll':\n\t\t\t\t\t\tvar state = selectValue('state');\n\t\t\t\t\t\tvar wages = numberValue('wages');\n\t\t\t\t\t\tvar payroll = {\n\t\t\t\t\t\t\tnsw: { threshold: 1200000, rate: 0.0545, label: 'NSW' },\n\t\t\t\t\t\t\tvic: { threshold: 1000000, rate: selectValue('regional') === 'yes' ? 0.012125 : 0.0485, label: 'VIC' },\n\t\t\t\t\t\t\tqld: { threshold: 1300000, rate: wages > 6500000 ? 0.0495 : 0.0475, label: 'QLD' }\n\t\t\t\t\t\t}[state];\n\t\t\t\t\t\ttax = Math.max(0, wages - payroll.threshold) * payroll.rate;\n\t\t\t\t\t\tsetResult('Estimated payroll tax', tax, 'Starter estimate before grouping, deductions, surcharges or apportionment.', [\n\t\t\t\t\t\t\t'State: ' + payroll.label,\n\t\t\t\t\t\t\t'Annual taxable wages: ' + money(wages),\n\t\t\t\t\t\t\t'Threshold used: ' + money(payroll.threshold),\n\t\t\t\t\t\t\t'Rate used: ' + (payroll.rate * 100).toFixed(3) + '%'\n\t\t\t\t\t\t]);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction updateTypes(preferredType) {\n\t\t\t\tvar countryTypes = calculatorTypes[selectedCountry] || calculatorTypes.au;\n\t\t\t\ttype.innerHTML = countryTypes[profile.value].map(function (item) {\n\t\t\t\t\treturn '<option value=\"' + item.value + '\">' + item.label + '<\/option>';\n\t\t\t\t}).join('');\n\t\t\t\tif (preferredType && countryTypes[profile.value].some(function (item) { return item.value === preferredType; })) {\n\t\t\t\t\ttype.value = preferredType;\n\t\t\t\t}\n\t\t\t\tfields.innerHTML = fieldHtml();\n\t\t\t\tcalculate();\n\t\t\t}\n\n\t\t\tif (taxMemory.profile && profile.querySelector('[value=\"' + taxMemory.profile + '\"]')) {\n\t\t\t\tprofile.value = taxMemory.profile;\n\t\t\t}\n\t\t\troot.querySelectorAll('[data-country]').forEach(function (item) {\n\t\t\t\titem.classList.toggle('is-active', (item.getAttribute('data-country') || 'au') === selectedCountry);\n\t\t\t});\n\t\t\tcountryNote.textContent = (countrySettings[selectedCountry] || countrySettings.au).note;\n\n\t\t\troot.querySelectorAll('[data-country]').forEach(function (button) {\n\t\t\t\tbutton.addEventListener('click', function () {\n\t\t\t\t\tselectedCountry = button.getAttribute('data-country') || 'au';\n\t\t\t\t\troot.querySelectorAll('[data-country]').forEach(function (item) {\n\t\t\t\t\t\titem.classList.toggle('is-active', item === button);\n\t\t\t\t\t});\n\t\t\t\t\tcountryNote.textContent = (countrySettings[selectedCountry] || countrySettings.au).note;\n\t\t\t\t\trenderEducation();\n\t\t\t\t\tupdateTypes();\n\t\t\t\t\twriteTaxMemory({ country: selectedCountry, profile: profile.value, type: type.value });\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tprofile.addEventListener('change', function () {\n\t\t\t\tupdateTypes();\n\t\t\t\twriteTaxMemory({ country: selectedCountry, profile: profile.value, type: type.value });\n\t\t\t});\n\t\t\ttype.addEventListener('change', function () {\n\t\t\t\tfields.innerHTML = fieldHtml();\n\t\t\t\tcalculate();\n\t\t\t\twriteTaxMemory({ country: selectedCountry, profile: profile.value, type: type.value });\n\t\t\t});\n\t\t\tfields.addEventListener('input', calculate);\n\t\t\tfields.addEventListener('change', calculate);\n\t\t\tform.addEventListener('submit', function (event) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tcalculate();\n\t\t\t});\n\n\t\t\trenderEducation();\n\t\t\tupdateTypes(taxMemory.type);\n\t\t}());\n\t<\/script>\n\t\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-767","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"woocommerce_thumbnail":false,"woocommerce_single":false,"woocommerce_gallery_thumbnail":false,"dgwt-wcas-product-suggestion":false},"uagb_author_info":{"display_name":"","author_link":"https:\/\/silcom.io\/author\/"},"uagb_comment_info":0,"uagb_excerpt":null,"_links":{"self":[{"href":"https:\/\/silcom.io\/wp-json\/wp\/v2\/pages\/767","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/silcom.io\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/silcom.io\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/silcom.io\/wp-json\/wp\/v2\/comments?post=767"}],"version-history":[{"count":3,"href":"https:\/\/silcom.io\/wp-json\/wp\/v2\/pages\/767\/revisions"}],"predecessor-version":[{"id":773,"href":"https:\/\/silcom.io\/wp-json\/wp\/v2\/pages\/767\/revisions\/773"}],"wp:attachment":[{"href":"https:\/\/silcom.io\/wp-json\/wp\/v2\/media?parent=767"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}