{"id":13159,"date":"2025-07-15T05:47:38","date_gmt":"2025-07-15T05:47:38","guid":{"rendered":"https:\/\/vbapartners.com\/?page_id=13159"},"modified":"2026-02-17T07:02:03","modified_gmt":"2026-02-17T07:02:03","slug":"thai-accounting-compliance-checker","status":"publish","type":"page","link":"https:\/\/vbapartners.com\/fr\/thai-accounting-compliance-checker\/","title":{"rendered":"Thai Accounting Compliance Checker"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"13159\" class=\"elementor elementor-13159\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5fc1e48 e-flex e-con-boxed e-con e-parent\" data-id=\"5fc1e48\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0f26283 elementor-widget elementor-widget-html\" data-id=\"0f26283\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t <style>\r\n\r\n\r\n        .vba-calculator {\r\n            max-width: 800px;\r\n            margin: 0 auto;\r\n            font-family: \"Open Sans\", sans-serif;\r\n            background: #ffffff;\r\n            border-radius: 12px;\r\n            box-shadow: 0 10px 30px rgba(15, 65, 96, 0.1);\r\n            overflow: hidden;\r\n            position: relative;\r\n        }\r\n\r\n        .vba-calculator h1, .vba-calculator h2, .vba-calculator h3 {\r\n            font-family: \"Inter\", sans-serif;\r\n            color: #0F4160;\r\n        }\r\n\r\n        .progress-bar-container {\r\n            background: #f8f9fa;\r\n            padding: 15px 30px;\r\n            border-bottom: 1px solid #e1e5e9;\r\n        }\r\n\r\n        .progress-bar {\r\n            height: 4px;\r\n            background: rgba(15, 65, 96, 0.1);\r\n            border-radius: 2px;\r\n            max-width: 800px;\r\n            margin: 0 auto;\r\n        }\r\n\r\n        .progress-fill {\r\n            height: 100%;\r\n            background: #35A692;\r\n            border-radius: 2px;\r\n            transition: width 0.3s ease;\r\n            width: 0%;\r\n        }\r\n\r\n        .step-container {\r\n            padding: 30px;\r\n            min-height: 280px;\r\n        }\r\n\r\n        .step {\r\n            display: none;\r\n        }\r\n\r\n        .step.active {\r\n            display: block;\r\n            animation: fadeInUp 0.4s ease;\r\n        }\r\n\r\n        @keyframes fadeInUp {\r\n            from {\r\n                opacity: 0;\r\n                transform: translateY(20px);\r\n            }\r\n            to {\r\n                opacity: 1;\r\n                transform: translateY(0);\r\n            }\r\n        }\r\n\r\n        .step h2 {\r\n            font-size: 20px;\r\n            margin-bottom: 6px;\r\n            font-weight: 600;\r\n        }\r\n\r\n        .step-description {\r\n            color: #666;\r\n            margin-bottom: 20px;\r\n            font-size: 14px;\r\n            line-height: 1.4;\r\n        }\r\n\r\n        .form-group {\r\n            margin-bottom: 18px;\r\n        }\r\n\r\n        .form-group label {\r\n            display: block;\r\n            margin-bottom: 6px;\r\n            font-weight: 500;\r\n            color: #0F4160;\r\n            font-size: 13px;\r\n        }\r\n\r\n        .form-control {\r\n            width: 100%;\r\n            padding: 10px 14px;\r\n            border: 2px solid #e1e5e9;\r\n            border-radius: 6px;\r\n            font-size: 14px;\r\n            font-family: \"Open Sans\", sans-serif;\r\n            transition: border-color 0.3s ease, box-shadow 0.3s ease;\r\n        }\r\n\r\n        .form-control:focus {\r\n            outline: none;\r\n            border-color: #35A692;\r\n            box-shadow: 0 0 0 3px rgba(53, 166, 146, 0.1);\r\n        }\r\n\r\n        .radio-group {\r\n            display: grid;\r\n            gap: 8px;\r\n        }\r\n\r\n        .radio-option {\r\n            position: relative;\r\n            cursor: pointer;\r\n        }\r\n\r\n        .radio-option input[type=\"radio\"] {\r\n            display: none;\r\n        }\r\n\r\n        .radio-option label {\r\n            display: flex;\r\n            align-items: center;\r\n            padding: 12px;\r\n            border: 2px solid #e1e5e9;\r\n            border-radius: 6px;\r\n            cursor: pointer;\r\n            transition: all 0.3s ease;\r\n            margin-bottom: 0;\r\n            font-weight: 400;\r\n            font-size: 14px;\r\n        }\r\n\r\n        .radio-option input[type=\"radio\"]:checked + label {\r\n            border-color: #35A692;\r\n            background: rgba(53, 166, 146, 0.05);\r\n        }\r\n\r\n        .radio-option label::before {\r\n            content: '';\r\n            width: 16px;\r\n            height: 16px;\r\n            border: 2px solid #ccc;\r\n            border-radius: 50%;\r\n            margin-right: 10px;\r\n            transition: all 0.3s ease;\r\n        }\r\n\r\n        .radio-option input[type=\"radio\"]:checked + label::before {\r\n            border-color: #35A692;\r\n            background: #35A692;\r\n            box-shadow: inset 0 0 0 3px white;\r\n        }\r\n\r\n        .button-group {\r\n            display: flex;\r\n            gap: 12px;\r\n            margin-top: 25px;\r\n            flex-wrap: wrap;\r\n            justify-content: flex-end;\r\n        }\r\n\r\n        .btn {\r\n            padding: 10px 20px;\r\n            border: none;\r\n            border-radius: 6px;\r\n            font-size: 14px;\r\n            font-weight: 500;\r\n            cursor: pointer;\r\n            transition: all 0.3s ease;\r\n            font-family: \"Inter\", sans-serif;\r\n            text-decoration: none;\r\n            display: inline-flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            min-height: 40px;\r\n            min-width: 100px;\r\n        }\r\n\r\n        .btn-primary {\r\n            background: #35A692;\r\n            color: white;\r\n            min-width: 120px;\r\n        }\r\n\r\n        .btn-primary:hover {\r\n            background: #2d8f7c;\r\n            transform: translateY(-1px);\r\n            box-shadow: 0 4px 12px rgba(53, 166, 146, 0.3);\r\n        }\r\n\r\n        .btn-secondary {\r\n            background: transparent;\r\n            color: #0F4160;\r\n            border: 2px solid #e1e5e9;\r\n        }\r\n\r\n        .btn-secondary:hover {\r\n            border-color: #0F4160;\r\n            background: rgba(15, 65, 96, 0.05);\r\n        }\r\n\r\n        .results-container {\r\n            background: linear-gradient(135deg, #f8fffe 0%, #f0faf8 100%);\r\n            padding: 15px;\r\n            border-radius: 8px;\r\n            margin: 10px 0;\r\n            border: 1px solid rgba(53, 166, 146, 0.2);\r\n        }\r\n\r\n        .score-highlight {\r\n            text-align: center;\r\n            padding: 10px;\r\n            background: white;\r\n            border-radius: 8px;\r\n            box-shadow: 0 2px 10px rgba(53, 166, 146, 0.1);\r\n            margin-bottom: 15px;\r\n        }\r\n\r\n        .score-amount {\r\n            font-size: 20px;\r\n            font-weight: 700;\r\n            font-family: \"Inter\", sans-serif;\r\n        }\r\n\r\n        .score-label {\r\n            font-size: 11px;\r\n            color: #666;\r\n            margin-top: 2px;\r\n        }\r\n\r\n        .compliance-status {\r\n            display: grid;\r\n            grid-template-columns: 1fr 1fr;\r\n            gap: 10px;\r\n            margin: 15px 0;\r\n        }\r\n\r\n        .status-card {\r\n            background: white;\r\n            padding: 10px;\r\n            border-radius: 5px;\r\n            border: 1px solid #e1e5e9;\r\n        }\r\n\r\n        .status-card h4 {\r\n            font-family: \"Inter\", sans-serif;\r\n            color: #0F4160;\r\n            margin-bottom: 8px;\r\n            font-size: 13px;\r\n        }\r\n\r\n        .status-item {\r\n            display: flex;\r\n            align-items: center;\r\n            margin-bottom: 4px;\r\n            font-size: 11px;\r\n        }\r\n\r\n        .status-icon {\r\n            width: 12px;\r\n            height: 12px;\r\n            border-radius: 50%;\r\n            margin-right: 6px;\r\n        }\r\n\r\n        .status-ok {\r\n            background: #28a745;\r\n        }\r\n\r\n        .status-warning {\r\n            background: #ffc107;\r\n        }\r\n\r\n        .status-error {\r\n            background: #dc3545;\r\n        }\r\n\r\n        .risk-assessment {\r\n            background: white;\r\n            padding: 10px;\r\n            border-radius: 6px;\r\n            border: 1px solid #e1e5e9;\r\n            margin: 10px 0;\r\n        }\r\n\r\n        .risk-level {\r\n            font-weight: 600;\r\n            padding: 4px 8px;\r\n            border-radius: 4px;\r\n            font-size: 11px;\r\n            display: inline-block;\r\n        }\r\n\r\n        .risk-low {\r\n            background: #d4edda;\r\n            color: #155724;\r\n        }\r\n\r\n        .risk-medium {\r\n            background: #fff3cd;\r\n            color: #856404;\r\n        }\r\n\r\n        .risk-high {\r\n            background: #f8d7da;\r\n            color: #721c24;\r\n        }\r\n\r\n        .error-message {\r\n            color: #e74c3c;\r\n            font-size: 13px;\r\n            margin-top: 5px;\r\n            display: none;\r\n        }\r\n\r\n        .loading {\r\n            display: none;\r\n            text-align: center;\r\n            padding: 40px;\r\n        }\r\n\r\n        .spinner {\r\n            width: 40px;\r\n            height: 40px;\r\n            border: 4px solid #f3f3f3;\r\n            border-top: 4px solid #35A692;\r\n            border-radius: 50%;\r\n            animation: spin 1s linear infinite;\r\n            margin: 0 auto 20px;\r\n        }\r\n\r\n        @keyframes spin {\r\n            0% { transform: rotate(0deg); }\r\n            100% { transform: rotate(360deg); }\r\n        }\r\n\r\n        .success-message {\r\n            background: #d4edda;\r\n            color: #155724;\r\n            padding: 15px;\r\n            border-radius: 8px;\r\n            margin-top: 20px;\r\n            display: none;\r\n        }\r\n\r\n        \/* Mobile Responsiveness *\/\r\n        @media (max-width: 768px) {\r\n            .vba-calculator {\r\n                margin: 10px;\r\n                border-radius: 8px;\r\n            }\r\n\r\n            .progress-bar-container {\r\n                padding: 10px 20px;\r\n            }\r\n\r\n            .step-container {\r\n                padding: 20px;\r\n            }\r\n\r\n            .step h2 {\r\n                font-size: 18px;\r\n            }\r\n\r\n            .compliance-status {\r\n                grid-template-columns: 1fr;\r\n                gap: 8px;\r\n            }\r\n\r\n            .button-group {\r\n                justify-content: center;\r\n            }\r\n\r\n            .btn {\r\n                min-width: 80px;\r\n            }\r\n\r\n            .score-amount {\r\n                font-size: 18px;\r\n            }\r\n\r\n            \/* Mobile: Stack form elements *\/\r\n            #step2 > div[style*=\"grid-template-columns\"],\r\n            #step3 > div[style*=\"grid-template-columns\"],\r\n            #step5 form > div[style*=\"grid-template-columns\"] {\r\n                grid-template-columns: 1fr !important;\r\n                gap: 15px !important;\r\n            }\r\n\r\n            \/* Mobile: Stack radio buttons *\/\r\n            .radio-group[style*=\"grid-template-columns\"] {\r\n                grid-template-columns: 1fr !important;\r\n                gap: 8px !important;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 480px) {\r\n            .step-container {\r\n                padding: 15px;\r\n            }\r\n\r\n            .step h2 {\r\n                font-size: 16px;\r\n            }\r\n\r\n            #step0 h1 {\r\n                font-size: 20px !important;\r\n            }\r\n\r\n            #step0 p {\r\n                font-size: 14px !important;\r\n            }\r\n        }\r\n    <\/style>\r\n\r\n    <div class=\"vba-calculator\" id=\"vbaCalculator\">\r\n        <div class=\"progress-bar-container\">\r\n            <div class=\"progress-bar\">\r\n                <div class=\"progress-fill\" id=\"progressFill\"><\/div>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"step-container\">\r\n            <!-- Step 0: Welcome\/Intro -->\r\n            <div class=\"step active\" id=\"step0\">\r\n                <div style=\"text-align: center; max-width: 600px; margin: 0 auto;\">\r\n                    <h1 style=\"font-family: 'Inter', sans-serif; font-size: 28px; font-weight: 700; color: #0F4160; margin-bottom: 12px; line-height: 1.2;\">\r\n                        Thai Accounting Compliance Checker\r\n                    <\/h1>\r\n                    <p style=\"font-size: 16px; color: #666; margin-bottom: 25px; line-height: 1.4;\">\r\n                        Assess your business compliance with Thai accounting regulations. Identify gaps, reduce risks, and ensure your company meets all legal requirements.\r\n                    <\/p>\r\n\r\n                    <div style=\"display: flex; align-items: center; justify-content: center; gap: 20px; margin-bottom: 25px; flex-wrap: wrap;\">\r\n                        <span style=\"display: flex; align-items: center; font-size: 13px; color: #666;\">\r\n                            <span style=\"color: #35A692; margin-right: 5px;\">\u2713<\/span> 15-question assessment\r\n                        <\/span>\r\n                        <span style=\"display: flex; align-items: center; font-size: 13px; color: #666;\">\r\n                            <span style=\"color: #35A692; margin-right: 5px;\">\u2713<\/span> Risk analysis included\r\n                        <\/span>\r\n                        <span style=\"display: flex; align-items: center; font-size: 13px; color: #666;\">\r\n                            <span style=\"color: #35A692; margin-right: 5px;\">\u2713<\/span> Action plan provided\r\n                        <\/span>\r\n                    <\/div>\r\n\r\n                    <button class=\"btn btn-primary\" onclick=\"startCalculator()\" style=\"font-size: 15px; padding: 12px 28px; min-width: 160px;\">\r\n                        Check Compliance \u2192\r\n                    <\/button>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Step 1: Company Information -->\r\n            <div class=\"step\" id=\"step1\">\r\n                <h2>Basic company information<\/h2>\r\n                <p class=\"step-description\">Tell us about your company structure and size to customize your compliance assessment.<\/p>\r\n                \r\n                <div style=\"display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px;\">\r\n                    <div class=\"form-group\">\r\n                        <label for=\"companyType\">Company Type<\/label>\r\n                        <select class=\"form-control\" id=\"companyType\">\r\n                            <option value=\"\">Select company type<\/option>\r\n                            <option value=\"limited\">Thai Limited Company<\/option>\r\n                            <option value=\"boi\">BOI Promoted Company<\/option>\r\n                            <option value=\"branch\">Branch Office<\/option>\r\n                            <option value=\"representative\">Bureau de Repr\u00e9sentation<\/option>\r\n                            <option value=\"partnership\">Partnership<\/option>\r\n                        <\/select>\r\n                    <\/div>\r\n\r\n                    <div class=\"form-group\">\r\n                        <label for=\"annualRevenue\">Annual Revenue (THB)<\/label>\r\n                        <select class=\"form-control\" id=\"annualRevenue\">\r\n                            <option value=\"\">Select revenue range<\/option>\r\n                            <option value=\"under2m\">Under 2 Million THB<\/option>\r\n                            <option value=\"2m-30m\">2 - 30 Million THB<\/option>\r\n                            <option value=\"30m-120m\">30 - 120 Million THB<\/option>\r\n                            <option value=\"120m-300m\">120 - 300 Million THB<\/option>\r\n                            <option value=\"over300m\">Over 300 Million THB<\/option>\r\n                        <\/select>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"form-group\">\r\n                    <label for=\"businessAge\">How long has your company been operating in Thailand?<\/label>\r\n                    <div class=\"radio-group\" style=\"grid-template-columns: 1fr 1fr; gap: 12px;\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"newBusiness\" name=\"businessAge\" value=\"new\">\r\n                            <label for=\"newBusiness\">Less than 1 year<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"establishedBusiness\" name=\"businessAge\" value=\"established\">\r\n                            <label for=\"establishedBusiness\">1+ years<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"button-group\">\r\n                    <button class=\"btn btn-primary\" onclick=\"nextStep()\" id=\"nextBtn1\" disabled>Continue<\/button>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Step 2: Accounting Practices -->\r\n            <div class=\"step\" id=\"step2\">\r\n                <h2>Current accounting practices<\/h2>\r\n                <p class=\"step-description\">Let's assess your current accounting setup and procedures.<\/p>\r\n                \r\n                <div class=\"form-group\">\r\n                    <label>Do you maintain proper books of accounts?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"books_yes\" name=\"booksOfAccounts\" value=\"yes\" data-score=\"20\">\r\n                            <label for=\"books_yes\">Yes, fully maintained with all transactions recorded<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"books_partial\" name=\"booksOfAccounts\" value=\"partial\" data-score=\"10\">\r\n                            <label for=\"books_partial\">Partially - some records missing or incomplete<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"books_no\" name=\"booksOfAccounts\" value=\"no\" data-score=\"0\">\r\n                            <label for=\"books_no\">No formal accounting records maintained<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"form-group\">\r\n                    <label>How often do you prepare financial statements?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"statements_monthly\" name=\"financialStatements\" value=\"monthly\" data-score=\"20\">\r\n                            <label for=\"statements_monthly\">Monthly<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"statements_quarterly\" name=\"financialStatements\" value=\"quarterly\" data-score=\"15\">\r\n                            <label for=\"statements_quarterly\">Quarterly<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"statements_annually\" name=\"financialStatements\" value=\"annually\" data-score=\"10\">\r\n                            <label for=\"statements_annually\">Annually only<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"statements_never\" name=\"financialStatements\" value=\"never\" data-score=\"0\">\r\n                            <label for=\"statements_never\">Never or irregularly<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"form-group\">\r\n                    <label>Do you use accounting software?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"software_professional\" name=\"accountingSoftware\" value=\"professional\" data-score=\"15\">\r\n                            <label for=\"software_professional\">Yes, professional accounting software (SAP, QuickBooks, etc.)<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"software_basic\" name=\"accountingSoftware\" value=\"basic\" data-score=\"10\">\r\n                            <label for=\"software_basic\">Yes, basic software or Excel templates<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"software_manual\" name=\"accountingSoftware\" value=\"manual\" data-score=\"5\">\r\n                            <label for=\"software_manual\">Manual records only<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"button-group\">\r\n                    <button class=\"btn btn-secondary\" onclick=\"previousStep()\">Back<\/button>\r\n                    <button class=\"btn btn-primary\" onclick=\"nextStep()\" id=\"nextBtn2\" disabled>Continue<\/button>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Step 3: Tax Compliance -->\r\n            <div class=\"step\" id=\"step3\">\r\n                <h2>Tax filing and compliance<\/h2>\r\n                <p class=\"step-description\">Review your tax compliance status and filing practices.<\/p>\r\n                \r\n                <div class=\"form-group\">\r\n                    <label>Do you file monthly VAT returns on time?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"vat_always\" name=\"vatFiling\" value=\"always\" data-score=\"20\">\r\n                            <label for=\"vat_always\">Always on time (by 15th of following month)<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"vat_sometimes\" name=\"vatFiling\" value=\"sometimes\" data-score=\"10\">\r\n                            <label for=\"vat_sometimes\">Sometimes late<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"vat_never\" name=\"vatFiling\" value=\"never\" data-score=\"0\">\r\n                            <label for=\"vat_never\">Often late or not filed<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"vat_na\" name=\"vatFiling\" value=\"na\" data-score=\"15\">\r\n                            <label for=\"vat_na\">Not VAT registered<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"form-group\">\r\n                    <label>Do you file annual corporate income tax returns?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"corporate_yes\" name=\"corporateTax\" value=\"yes\" data-score=\"20\">\r\n                            <label for=\"corporate_yes\">Yes, filed within 150 days of fiscal year-end<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"corporate_late\" name=\"corporateTax\" value=\"late\" data-score=\"5\">\r\n                            <label for=\"corporate_late\">Filed but often late<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"corporate_no\" name=\"corporateTax\" value=\"no\" data-score=\"0\">\r\n                            <label for=\"corporate_no\">Not filed or very late<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"form-group\">\r\n                    <label>Do you maintain proper supporting documents for all transactions?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"docs_complete\" name=\"supportingDocs\" value=\"complete\" data-score=\"15\">\r\n                            <label for=\"docs_complete\">Yes, all receipts and invoices properly filed<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"docs_partial\" name=\"supportingDocs\" value=\"partial\" data-score=\"8\">\r\n                            <label for=\"docs_partial\">Most documents, some missing<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"docs_poor\" name=\"supportingDocs\" value=\"poor\" data-score=\"0\">\r\n                            <label for=\"docs_poor\">Poor documentation, many missing receipts<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"button-group\">\r\n                    <button class=\"btn btn-secondary\" onclick=\"previousStep()\">Back<\/button>\r\n                    <button class=\"btn btn-primary\" onclick=\"nextStep()\" id=\"nextBtn3\" disabled>Continue<\/button>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Step 4: Regulatory Compliance -->\r\n            <div class=\"step\" id=\"step4\">\r\n                <h2>Regulatory and statutory compliance<\/h2>\r\n                <p class=\"step-description\">Final questions about statutory requirements and regulatory compliance.<\/p>\r\n                \r\n                <div class=\"form-group\">\r\n                    <label>Do you hold annual shareholder meetings and maintain proper minutes?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"meetings_yes\" name=\"shareholderMeetings\" value=\"yes\" data-score=\"10\">\r\n                            <label for=\"meetings_yes\">Yes, annual meetings held with proper documentation<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"meetings_irregular\" name=\"shareholderMeetings\" value=\"irregular\" data-score=\"5\">\r\n                            <label for=\"meetings_irregular\">Irregular or incomplete documentation<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"meetings_no\" name=\"shareholderMeetings\" value=\"no\" data-score=\"0\">\r\n                            <label for=\"meetings_no\">No formal meetings held<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"form-group\">\r\n                    <label>Are your accounting records stored and retained properly?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"storage_compliant\" name=\"recordStorage\" value=\"compliant\" data-score=\"10\">\r\n                            <label for=\"storage_compliant\">Yes, 5+ years retention in Thailand as required<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"storage_partial\" name=\"recordStorage\" value=\"partial\" data-score=\"5\">\r\n                            <label for=\"storage_partial\">Some records stored, not fully compliant<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"storage_poor\" name=\"recordStorage\" value=\"poor\" data-score=\"0\">\r\n                            <label for=\"storage_poor\">Poor record retention<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"form-group\">\r\n                    <label>Do you have qualified accounting personnel or external accountant?<\/label>\r\n                    <div class=\"radio-group\">\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"staff_qualified\" name=\"accountingStaff\" value=\"qualified\" data-score=\"15\">\r\n                            <label for=\"staff_qualified\">Yes, qualified Thai accountant or professional firm<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"staff_basic\" name=\"accountingStaff\" value=\"basic\" data-score=\"8\">\r\n                            <label for=\"staff_basic\">Basic accounting knowledge, no formal qualification<\/label>\r\n                        <\/div>\r\n                        <div class=\"radio-option\">\r\n                            <input type=\"radio\" id=\"staff_none\" name=\"accountingStaff\" value=\"none\" data-score=\"0\">\r\n                            <label for=\"staff_none\">No dedicated accounting support<\/label>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"button-group\">\r\n                    <button class=\"btn btn-secondary\" onclick=\"previousStep()\">Back<\/button>\r\n                    <button class=\"btn btn-primary\" onclick=\"calculateResults()\" id=\"calculateBtn\" disabled>Check Compliance<\/button>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Step 5: Results -->\r\n            <div class=\"step\" id=\"step5\">\r\n                <h2>Your Compliance Assessment Results<\/h2>\r\n                <p class=\"step-description\">Based on your responses, here's your compliance status and risk analysis:<\/p>\r\n                \r\n                <div class=\"results-container\">\r\n                    <div class=\"score-highlight\">\r\n                        <div class=\"score-amount\" id=\"complianceScore\">0%<\/div>\r\n                        <div class=\"score-label\">Compliance Score<\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"compliance-status\">\r\n                        <div class=\"status-card\">\r\n                            <h4>Accounting Standards<\/h4>\r\n                            <div id=\"accountingStatus\">\r\n                                <!-- Status items will be populated by JavaScript -->\r\n                            <\/div>\r\n                        <\/div>\r\n\r\n                        <div class=\"status-card\">\r\n                            <h4>Tax Compliance<\/h4>\r\n                            <div id=\"taxStatus\">\r\n                                <!-- Status items will be populated by JavaScript -->\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"risk-assessment\">\r\n                        <h4 style=\"font-family: 'Inter', sans-serif; color: #0F4160; margin-bottom: 8px; font-size: 13px;\">\r\n                            \u00c9valuation des risques : <span class=\"risk-level\" id=\"riskLevel\">Medium<\/span>\r\n                        <\/h4>\r\n                        <div id=\"riskDescription\" style=\"font-size: 12px; color: #666;\">\r\n                            <!-- Risk description will be populated by JavaScript -->\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div style=\"text-align: center; margin-top: 8px;\">\r\n                        <p style=\"color: #666; font-size: 10px; margin-bottom: 8px;\">\r\n                            *Assessment based on Thai accounting and tax regulations. Consult with professionals for detailed compliance review.\r\n                        <\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"button-group\">\r\n                    <button class=\"btn btn-secondary\" onclick=\"previousStep()\">Back<\/button>\r\n                    <button class=\"btn btn-primary\" onclick=\"showContactForm()\">Get Action Plan<\/button>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Step 6: Contact Form -->\r\n            <div class=\"step\" id=\"step6\">\r\n                <h2>Get Your Personalized Compliance Action Plan<\/h2>\r\n                <p class=\"step-description\">Receive a detailed compliance report and consultation with our accounting experts.<\/p>\r\n                \r\n                <form id=\"contactForm\" action=\"\">\r\n                    <div style=\"display: grid; grid-template-columns: 1fr 1fr; gap: 20px;\">\r\n                        <div class=\"form-group\">\r\n                            <label for=\"fullName\">Full Name *<\/label>\r\n                            <input type=\"text\" class=\"form-control\" id=\"fullName\" required>\r\n                            <div class=\"error-message\" id=\"nameError\">Please enter your full name<\/div>\r\n                        <\/div>\r\n\r\n                        <div class=\"form-group\">\r\n                            <label for=\"company\">Company Name *<\/label>\r\n                            <input type=\"text\" class=\"form-control\" id=\"company\" required>\r\n                            <div class=\"error-message\" id=\"companyError\">Please enter your company name<\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div style=\"display: grid; grid-template-columns: 1fr 1fr; gap: 20px;\">\r\n                        <div class=\"form-group\">\r\n                            <label for=\"email\">Email Address *<\/label>\r\n                            <input type=\"email\" class=\"form-control\" id=\"email\" required>\r\n                            <div class=\"error-message\" id=\"emailError\">Please enter a valid email address<\/div>\r\n                        <\/div>\r\n\r\n                        <div class=\"form-group\">\r\n                            <label for=\"phone\">Phone Number *<\/label>\r\n                            <input type=\"tel\" class=\"form-control\" id=\"phone\" required>\r\n                            <div class=\"error-message\" id=\"phoneError\">Please enter your phone number<\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"form-group\">\r\n                        <label for=\"urgency\">How urgent is resolving compliance issues?<\/label>\r\n                        <select class=\"form-control\" id=\"urgency\">\r\n                            <option value=\"\">Select urgency level<\/option>\r\n                            <option value=\"immediate\">Immediate - facing penalties\/audit<\/option>\r\n                            <option value=\"urgent\">Within 1 month<\/option>\r\n                            <option value=\"planned\">Within 3 months<\/option>\r\n                            <option value=\"preventive\">Preventive - no immediate issues<\/option>\r\n                        <\/select>\r\n                    <\/div>\r\n\r\n                    <div class=\"form-group\">\r\n                        <label for=\"message\">Specific Compliance Concerns <span style=\"color: #999; font-weight: normal;\">(max 300 characters)<\/span><\/label>\r\n                        <textarea class=\"form-control\" id=\"message\" rows=\"5\" maxlength=\"300\" placeholder=\"Describe any specific compliance issues, penalties received, or areas of concern...\" style=\"resize: none; font-family: 'Open Sans', sans-serif;\"><\/textarea>\r\n                        <div style=\"font-size: 11px; color: #999; text-align: right; margin-top: 4px;\">\r\n                            <span id=\"charCount\">0<\/span>\/300 characters\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"button-group\">\r\n                        <button class=\"btn btn-secondary\" type=\"button\" onclick=\"previousStep()\">Back<\/button>\r\n                        <button class=\"btn btn-primary\" type=\"submit\">Get Action Plan<\/button>\r\n                    <\/div>\r\n                <input type=\"hidden\" name=\"trp-form-language\" value=\"fr\"\/><\/form>\r\n\r\n                <div class=\"success-message\" id=\"successMessage\">\r\n                    <strong>Thank you!<\/strong> We've received your compliance assessment and will contact you within 24 hours with your personalized action plan.\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Loading state -->\r\n            <div class=\"loading\" id=\"loadingState\">\r\n                <div class=\"spinner\"><\/div>\r\n                <p>Analyzing your compliance status...<\/p>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n        \/\/ Namespace to avoid conflicts\r\n        const VBAComplianceChecker = {\r\n            currentStep: 0,\r\n            totalSteps: 7,\r\n            calculatorData: {},\r\n\r\n            init() {\r\n                this.setupEventListeners();\r\n                this.updateProgress();\r\n            },\r\n\r\n            setupEventListeners() {\r\n                \/\/ Select dropdown listeners\r\n                document.getElementById('companyType').addEventListener('change', () => {\r\n                    this.validateStep1();\r\n                });\r\n\r\n                document.getElementById('annualRevenue').addEventListener('change', () => {\r\n                    this.validateStep1();\r\n                });\r\n\r\n                \/\/ Radio button listeners for all steps\r\n                document.querySelectorAll('input[name=\"businessAge\"]').forEach(radio => {\r\n                    radio.addEventListener('change', () => {\r\n                        this.validateStep1();\r\n                    });\r\n                });\r\n\r\n                document.querySelectorAll('input[name=\"booksOfAccounts\"], input[name=\"financialStatements\"], input[name=\"accountingSoftware\"]').forEach(radio => {\r\n                    radio.addEventListener('change', () => {\r\n                        this.validateStep2();\r\n                    });\r\n                });\r\n\r\n                document.querySelectorAll('input[name=\"vatFiling\"], input[name=\"corporateTax\"], input[name=\"supportingDocs\"]').forEach(radio => {\r\n                    radio.addEventListener('change', () => {\r\n                        this.validateStep3();\r\n                    });\r\n                });\r\n\r\n                document.querySelectorAll('input[name=\"shareholderMeetings\"], input[name=\"recordStorage\"], input[name=\"accountingStaff\"]').forEach(radio => {\r\n                    radio.addEventListener('change', () => {\r\n                        this.validateStep4();\r\n                    });\r\n                });\r\n\r\n                \/\/ Form submission\r\n                document.getElementById('contactForm').addEventListener('submit', (e) => {\r\n                    e.preventDefault();\r\n                    this.submitForm();\r\n                });\r\n\r\n                \/\/ Character counter for textarea\r\n                document.getElementById('message').addEventListener('input', (e) => {\r\n                    const charCount = e.target.value.length;\r\n                    document.getElementById('charCount').textContent = charCount;\r\n                });\r\n            },\r\n\r\n            validateStep1() {\r\n                const companyType = document.getElementById('companyType').value;\r\n                const revenue = document.getElementById('annualRevenue').value;\r\n                const businessAge = document.querySelector('input[name=\"businessAge\"]:checked');\r\n                \r\n                document.getElementById('nextBtn1').disabled = !(companyType && revenue && businessAge);\r\n            },\r\n\r\n            validateStep2() {\r\n                const books = document.querySelector('input[name=\"booksOfAccounts\"]:checked');\r\n                const statements = document.querySelector('input[name=\"financialStatements\"]:checked');\r\n                const software = document.querySelector('input[name=\"accountingSoftware\"]:checked');\r\n                \r\n                document.getElementById('nextBtn2').disabled = !(books && statements && software);\r\n            },\r\n\r\n            validateStep3() {\r\n                const vat = document.querySelector('input[name=\"vatFiling\"]:checked');\r\n                const corporate = document.querySelector('input[name=\"corporateTax\"]:checked');\r\n                const docs = document.querySelector('input[name=\"supportingDocs\"]:checked');\r\n                \r\n                document.getElementById('nextBtn3').disabled = !(vat && corporate && docs);\r\n            },\r\n\r\n            validateStep4() {\r\n                const meetings = document.querySelector('input[name=\"shareholderMeetings\"]:checked');\r\n                const storage = document.querySelector('input[name=\"recordStorage\"]:checked');\r\n                const staff = document.querySelector('input[name=\"accountingStaff\"]:checked');\r\n                \r\n                document.getElementById('calculateBtn').disabled = !(meetings && storage && staff);\r\n            },\r\n\r\n            nextStep() {\r\n                if (this.currentStep < this.totalSteps) {\r\n                    this.hideStep(this.currentStep);\r\n                    this.currentStep++;\r\n                    this.showStep(this.currentStep);\r\n                    this.updateProgress();\r\n                }\r\n            },\r\n\r\n            previousStep() {\r\n                if (this.currentStep > 0) {\r\n                    this.hideStep(this.currentStep);\r\n                    this.currentStep--;\r\n                    this.showStep(this.currentStep);\r\n                    this.updateProgress();\r\n                }\r\n            },\r\n\r\n            showStep(step) {\r\n                document.getElementById(`step${step}`).classList.add('active');\r\n            },\r\n\r\n            hideStep(step) {\r\n                document.getElementById(`step${step}`).classList.remove('active');\r\n            },\r\n\r\n            updateProgress() {\r\n                const progress = this.currentStep === 0 ? 0 : ((this.currentStep - 1) \/ (this.totalSteps - 2)) * 100;\r\n                document.getElementById('progressFill').style.width = `${progress}%`;\r\n            },\r\n\r\n            startCalculator() {\r\n                this.nextStep();\r\n            },\r\n\r\n            calculateResults() {\r\n                \/\/ Show loading state\r\n                this.hideStep(this.currentStep);\r\n                document.getElementById('loadingState').style.display = 'block';\r\n\r\n                \/\/ Collect form data\r\n                this.collectFormData();\r\n\r\n                \/\/ Simulate calculation delay for better UX\r\n                setTimeout(() => {\r\n                    this.performCalculations();\r\n                    document.getElementById('loadingState').style.display = 'none';\r\n                    this.nextStep();\r\n                }, 2000);\r\n            },\r\n\r\n            collectFormData() {\r\n                this.calculatorData = {\r\n                    companyType: document.getElementById('companyType').value,\r\n                    annualRevenue: document.getElementById('annualRevenue').value,\r\n                    businessAge: document.querySelector('input[name=\"businessAge\"]:checked')?.value,\r\n                    booksOfAccounts: document.querySelector('input[name=\"booksOfAccounts\"]:checked')?.value,\r\n                    financialStatements: document.querySelector('input[name=\"financialStatements\"]:checked')?.value,\r\n                    accountingSoftware: document.querySelector('input[name=\"accountingSoftware\"]:checked')?.value,\r\n                    vatFiling: document.querySelector('input[name=\"vatFiling\"]:checked')?.value,\r\n                    corporateTax: document.querySelector('input[name=\"corporateTax\"]:checked')?.value,\r\n                    supportingDocs: document.querySelector('input[name=\"supportingDocs\"]:checked')?.value,\r\n                    shareholderMeetings: document.querySelector('input[name=\"shareholderMeetings\"]:checked')?.value,\r\n                    recordStorage: document.querySelector('input[name=\"recordStorage\"]:checked')?.value,\r\n                    accountingStaff: document.querySelector('input[name=\"accountingStaff\"]:checked')?.value\r\n                };\r\n            },\r\n\r\n            performCalculations() {\r\n                \/\/ Calculate compliance score based on selected answers\r\n                let totalScore = 0;\r\n                const maxScore = 145; \/\/ Maximum possible score\r\n\r\n                \/\/ Get all radio buttons with data-score attributes\r\n                const scoredInputs = document.querySelectorAll('input[type=\"radio\"]:checked[data-score]');\r\n                scoredInputs.forEach(input => {\r\n                    totalScore += parseInt(input.dataset.score);\r\n                });\r\n\r\n                const compliancePercentage = Math.round((totalScore \/ maxScore) * 100);\r\n                \r\n                \/\/ Determine risk level and color\r\n                let riskLevel, riskClass, riskDescription, scoreColor;\r\n                \r\n                if (compliancePercentage >= 80) {\r\n                    riskLevel = 'Low Risk';\r\n                    riskClass = 'risk-low';\r\n                    scoreColor = '#28a745';\r\n                    riskDescription = 'Your compliance practices are strong. Continue maintaining good records and filing requirements.';\r\n                } else if (compliancePercentage >= 60) {\r\n                    riskLevel = 'Medium Risk';\r\n                    riskClass = 'risk-medium';\r\n                    scoreColor = '#ffc107';\r\n                    riskDescription = 'Some compliance gaps identified. Recommended to address issues promptly to avoid penalties.';\r\n                } else {\r\n                    riskLevel = 'High Risk';\r\n                    riskClass = 'risk-high';\r\n                    scoreColor = '#dc3545';\r\n                    riskDescription = 'Significant compliance issues detected. Immediate action required to avoid penalties and legal issues.';\r\n                }\r\n\r\n                \/\/ Analyze specific areas\r\n                const accountingIssues = this.analyzeAccountingCompliance();\r\n                const taxIssues = this.analyzeTaxCompliance();\r\n\r\n                \/\/ Update display\r\n                this.updateResultsDisplay({\r\n                    score: compliancePercentage,\r\n                    scoreColor: scoreColor,\r\n                    riskLevel: riskLevel,\r\n                    riskClass: riskClass,\r\n                    riskDescription: riskDescription,\r\n                    accountingIssues: accountingIssues,\r\n                    taxIssues: taxIssues\r\n                });\r\n            },\r\n\r\n            analyzeAccountingCompliance() {\r\n                const issues = [];\r\n                const data = this.calculatorData;\r\n\r\n                if (data.booksOfAccounts === 'no' || data.booksOfAccounts === 'partial') {\r\n                    issues.push({ text: 'Books of accounts', status: 'error' });\r\n                } else {\r\n                    issues.push({ text: 'Books of accounts', status: 'ok' });\r\n                }\r\n\r\n                if (data.financialStatements === 'never' || data.financialStatements === 'annually') {\r\n                    issues.push({ text: 'Financial statements', status: 'warning' });\r\n                } else {\r\n                    issues.push({ text: 'Financial statements', status: 'ok' });\r\n                }\r\n\r\n                if (data.accountingSoftware === 'manual') {\r\n                    issues.push({ text: 'Accounting systems', status: 'warning' });\r\n                } else {\r\n                    issues.push({ text: 'Accounting systems', status: 'ok' });\r\n                }\r\n\r\n                if (data.recordStorage === 'poor' || data.recordStorage === 'partial') {\r\n                    issues.push({ text: 'Record retention', status: 'error' });\r\n                } else {\r\n                    issues.push({ text: 'Record retention', status: 'ok' });\r\n                }\r\n\r\n                return issues;\r\n            },\r\n\r\n            analyzeTaxCompliance() {\r\n                const issues = [];\r\n                const data = this.calculatorData;\r\n\r\n                if (data.vatFiling === 'never' || data.vatFiling === 'sometimes') {\r\n                    issues.push({ text: 'VAT filing', status: 'error' });\r\n                } else {\r\n                    issues.push({ text: 'VAT filing', status: 'ok' });\r\n                }\r\n\r\n                if (data.corporateTax === 'no' || data.corporateTax === 'late') {\r\n                    issues.push({ text: 'Corporate tax filing', status: 'error' });\r\n                } else {\r\n                    issues.push({ text: 'Corporate tax filing', status: 'ok' });\r\n                }\r\n\r\n                if (data.supportingDocs === 'poor') {\r\n                    issues.push({ text: 'Supporting documents', status: 'error' });\r\n                } else if (data.supportingDocs === 'partial') {\r\n                    issues.push({ text: 'Supporting documents', status: 'warning' });\r\n                } else {\r\n                    issues.push({ text: 'Supporting documents', status: 'ok' });\r\n                }\r\n\r\n                if (data.accountingStaff === 'none') {\r\n                    issues.push({ text: 'Qualified staff', status: 'error' });\r\n                } else if (data.accountingStaff === 'basic') {\r\n                    issues.push({ text: 'Qualified staff', status: 'warning' });\r\n                } else {\r\n                    issues.push({ text: 'Qualified staff', status: 'ok' });\r\n                }\r\n\r\n                return issues;\r\n            },\r\n\r\n            updateResultsDisplay(results) {\r\n                \/\/ Update score display\r\n                document.getElementById('complianceScore').textContent = results.score + '%';\r\n                document.getElementById('complianceScore').style.color = results.scoreColor;\r\n                \r\n                \/\/ Update risk level\r\n                const riskLevelElement = document.getElementById('riskLevel');\r\n                riskLevelElement.textContent = results.riskLevel;\r\n                riskLevelElement.className = 'risk-level ' + results.riskClass;\r\n                \r\n                \/\/ Update risk description\r\n                document.getElementById('riskDescription').textContent = results.riskDescription;\r\n\r\n                \/\/ Update accounting status\r\n                const accountingStatusElement = document.getElementById('accountingStatus');\r\n                accountingStatusElement.innerHTML = '';\r\n                results.accountingIssues.forEach(issue => {\r\n                    const statusItem = document.createElement('div');\r\n                    statusItem.className = 'status-item';\r\n                    statusItem.innerHTML = `\r\n                        <div class=\"status-icon status-${issue.status}\"><\/div>\r\n                        <span>${issue.text}<\/span>\r\n                    `;\r\n                    accountingStatusElement.appendChild(statusItem);\r\n                });\r\n\r\n                \/\/ Update tax status\r\n                const taxStatusElement = document.getElementById('taxStatus');\r\n                taxStatusElement.innerHTML = '';\r\n                results.taxIssues.forEach(issue => {\r\n                    const statusItem = document.createElement('div');\r\n                    statusItem.className = 'status-item';\r\n                    statusItem.innerHTML = `\r\n                        <div class=\"status-icon status-${issue.status}\"><\/div>\r\n                        <span>${issue.text}<\/span>\r\n                    `;\r\n                    taxStatusElement.appendChild(statusItem);\r\n                });\r\n\r\n                \/\/ Store results for form submission\r\n                this.calculatorData.results = results;\r\n            },\r\n\r\n            showContactForm() {\r\n                this.nextStep();\r\n            },\r\n\r\n            submitForm() {\r\n                if (!this.validateContactForm()) {\r\n                    return;\r\n                }\r\n\r\n                const formData = new FormData();\r\n                const contactData = {\r\n                    fullName: document.getElementById('fullName').value,\r\n                    email: document.getElementById('email').value,\r\n                    phone: document.getElementById('phone').value,\r\n                    company: document.getElementById('company').value,\r\n                    urgency: document.getElementById('urgency').value,\r\n                    message: document.getElementById('message').value,\r\n                    calculatorData: this.calculatorData\r\n                };\r\n\r\n                \/\/ Add all data to FormData for WordPress\r\n                formData.append('action', 'vba_compliance_checker_submission');\r\n                formData.append('calculator_data', JSON.stringify(contactData));\r\n\r\n                \/\/ Check if WordPress AJAX is available, otherwise use fallback\r\n                if (typeof window.ajaxurl !== 'undefined') {\r\n                    \/\/ WordPress AJAX is properly configured\r\n                    fetch(window.ajaxurl, {\r\n                        method: 'POST',\r\n                        body: formData\r\n                    })\r\n                    .then(response => response.json())\r\n                    .then(data => {\r\n                        if (data.success) {\r\n                            this.showSuccessMessage();\r\n                            this.sendToExternalService(contactData);\r\n                        } else {\r\n                            this.handleSubmissionError(contactData);\r\n                        }\r\n                    })\r\n                    .catch(error => {\r\n                        console.error('WordPress AJAX Error:', error);\r\n                        this.handleSubmissionError(contactData);\r\n                    });\r\n                } else {\r\n                    \/\/ Fallback: Try WordPress admin-ajax.php directly\r\n                    fetch('\/wp-admin\/admin-ajax.php', {\r\n                        method: 'POST',\r\n                        body: formData\r\n                    })\r\n                    .then(response => {\r\n                        if (response.ok) {\r\n                            return response.json();\r\n                        }\r\n                        throw new Error('WordPress AJAX not configured');\r\n                    })\r\n                    .then(data => {\r\n                        if (data.success) {\r\n                            this.showSuccessMessage();\r\n                            this.sendToExternalService(contactData);\r\n                        } else {\r\n                            this.handleSubmissionError(contactData);\r\n                        }\r\n                    })\r\n                    .catch(error => {\r\n                        console.error('Fallback Error:', error);\r\n                        \/\/ Still show success for testing purposes\r\n                        this.handleSubmissionError(contactData);\r\n                    });\r\n                }\r\n            },\r\n\r\n            showSuccessMessage() {\r\n                document.getElementById('contactForm').style.display = 'none';\r\n                document.getElementById('successMessage').style.display = 'block';\r\n            },\r\n\r\n            handleSubmissionError(contactData) {\r\n                \/\/ For testing purposes, still show success and send test email\r\n                console.log('WordPress AJAX not configured, using fallback...');\r\n                this.showSuccessMessage();\r\n                this.sendTestEmail(contactData);\r\n            },\r\n\r\n            validateContactForm() {\r\n                let isValid = true;\r\n                \r\n                const name = document.getElementById('fullName').value.trim();\r\n                const email = document.getElementById('email').value.trim();\r\n                const phone = document.getElementById('phone').value.trim();\r\n                const company = document.getElementById('company').value.trim();\r\n                \r\n                \/\/ Reset errors\r\n                document.querySelectorAll('.error-message').forEach(error => {\r\n                    error.style.display = 'none';\r\n                });\r\n\r\n                if (!name) {\r\n                    document.getElementById('nameError').style.display = 'block';\r\n                    isValid = false;\r\n                }\r\n\r\n                if (!email || !this.isValidEmail(email)) {\r\n                    document.getElementById('emailError').style.display = 'block';\r\n                    isValid = false;\r\n                }\r\n\r\n                if (!phone) {\r\n                    document.getElementById('phoneError').style.display = 'block';\r\n                    isValid = false;\r\n                }\r\n\r\n                if (!company) {\r\n                    document.getElementById('companyError').style.display = 'block';\r\n                    isValid = false;\r\n                }\r\n\r\n                return isValid;\r\n            },\r\n\r\n            isValidEmail(email) {\r\n                const emailRegex = \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/;\r\n                return emailRegex.test(email);\r\n            },\r\n\r\n            sendToExternalService(data) {\r\n                \/\/ Send test notification to lay@shiftcode.co.uk\r\n                this.sendTestEmail(data);\r\n            },\r\n\r\n            sendTestEmail(data) {\r\n                \/\/ Create email content for testing\r\n                const emailContent = {\r\n                    to: 'lay@shiftcode.co.uk',\r\n                    subject: `Compliance Checker Lead - ${data.fullName}`,\r\n                    message: `\r\n\ud83d\udcca NEW COMPLIANCE CHECKER LEAD - VBA PARTNERS\r\n\r\n\ud83d\udc64 Contact Information:\r\nName: ${data.fullName}\r\nEmail: ${data.email}\r\nPhone: ${data.phone}\r\nCompany: ${data.company}\r\nUrgency: ${data.urgency || 'Not specified'}\r\n\r\n\ud83d\udcbc Company Details:\r\nCompany Type: ${data.calculatorData.companyType}\r\nAnnual Revenue: ${data.calculatorData.annualRevenue}\r\nBusiness Age: ${data.calculatorData.businessAge}\r\n\r\n\ud83d\udccb Compliance Assessment Results:\r\nCompliance Score: ${data.calculatorData.results.score}%\r\nRisk Level: ${data.calculatorData.results.riskLevel}\r\nRisk Description: ${data.calculatorData.results.riskDescription}\r\n\r\n\ud83d\udd0d Detailed Assessment:\r\nBooks of Accounts: ${data.calculatorData.booksOfAccounts}\r\nFinancial Statements: ${data.calculatorData.financialStatements}\r\nAccounting Software: ${data.calculatorData.accountingSoftware}\r\nVAT Filing: ${data.calculatorData.vatFiling}\r\nCorporate Tax: ${data.calculatorData.corporateTax}\r\nSupporting Docs: ${data.calculatorData.supportingDocs}\r\nShareholder Meetings: ${data.calculatorData.shareholderMeetings}\r\nRecord Storage: ${data.calculatorData.recordStorage}\r\nAccounting Staff: ${data.calculatorData.accountingStaff}\r\n\r\n\ud83d\udcdd Specific Concerns:\r\n${data.message || 'No specific concerns mentioned'}\r\n\r\n\ud83d\ude80 Next Steps:\r\n- Send detailed compliance action plan\r\n- Schedule compliance consultation\r\n- Identify priority compliance issues\r\n- Provide cost estimate for fixes\r\n\r\n---\r\nGenerated by VBA Partners Compliance Checker\r\n${new Date().toLocaleString()}\r\n                    `\r\n                };\r\n\r\n                \/\/ For testing purposes, also log to console\r\n                console.log('Compliance Checker Email Content:', emailContent);\r\n                \r\n                \/\/ You can add actual email service integration here\r\n                \/\/ For now, we'll just show the data was captured\r\n                console.log('Compliance lead data captured for:', data.email);\r\n            }\r\n        };\r\n\r\n        \/\/ Initialize calculator when DOM is ready\r\n        document.addEventListener('DOMContentLoaded', () => {\r\n            VBAComplianceChecker.init();\r\n        });\r\n\r\n        \/\/ Global functions for button clicks (to avoid scope issues)\r\n        function startCalculator() {\r\n            VBAComplianceChecker.startCalculator();\r\n        }\r\n\r\n        function nextStep() {\r\n            VBAComplianceChecker.nextStep();\r\n        }\r\n\r\n        function previousStep() {\r\n            VBAComplianceChecker.previousStep();\r\n        }\r\n\r\n        function calculateResults() {\r\n            VBAComplianceChecker.calculateResults();\r\n        }\r\n\r\n        function showContactForm() {\r\n            VBAComplianceChecker.showContactForm();\r\n        }\r\n    <\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Thai Accounting Compliance Checker Assess your business compliance with Thai accounting regulations. Identify gaps, reduce risks, and ensure your company meets all legal requirements. \u2713 15-question assessment \u2713 Risk analysis included \u2713 Action plan provided Check Compliance \u2192 Basic company information Tell us about your company structure and size to customize your compliance assessment. Company [&hellip;]<\/p>","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-13159","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/vbapartners.com\/fr\/wp-json\/wp\/v2\/pages\/13159","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbapartners.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vbapartners.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vbapartners.com\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/vbapartners.com\/fr\/wp-json\/wp\/v2\/comments?post=13159"}],"version-history":[{"count":1,"href":"https:\/\/vbapartners.com\/fr\/wp-json\/wp\/v2\/pages\/13159\/revisions"}],"predecessor-version":[{"id":14062,"href":"https:\/\/vbapartners.com\/fr\/wp-json\/wp\/v2\/pages\/13159\/revisions\/14062"}],"wp:attachment":[{"href":"https:\/\/vbapartners.com\/fr\/wp-json\/wp\/v2\/media?parent=13159"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}