{"id":2977,"date":"2025-08-19T22:04:41","date_gmt":"2025-08-19T22:04:41","guid":{"rendered":"https:\/\/eliteservicesenegal.com\/?page_id=2977"},"modified":"2025-08-19T22:11:06","modified_gmt":"2025-08-19T22:11:06","slug":"simulateur-de-salaire","status":"publish","type":"page","link":"https:\/\/eliteservicesenegal.com\/index.php\/simulateur-de-salaire\/","title":{"rendered":"SIMULATEUR DE SALAIRE"},"content":{"rendered":"    <style>\n        \/* Design align\u00e9 sur le style du site (rouge \/ blanc \/ gris) *\/\n        .simu-container {\n            --simu-red: #D8483C;\n            --simu-red-dark: #B33A30;\n            --simu-red-tint: #F6E2DF;\n            --simu-charcoal: #241F1C;\n            --simu-gray: #756E68;\n            --simu-offwhite: #FAF8F7;\n            --simu-line: #E7E2DF;\n            max-width: 640px;\n            margin: 32px auto;\n            font-family: \"Public Sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n            color: var(--simu-charcoal);\n        }\n\n        .simu-wrap {\n            background: #fff;\n            border: 1px solid var(--simu-line);\n            border-radius: 14px;\n            padding: 36px 32px;\n        }\n\n        .simu-header { text-align: center; margin-bottom: 32px; }\n\n        .simu-title {\n            font-family: \"Fraunces\", Georgia, serif;\n            font-weight: 500;\n            font-size: 28px;\n            margin: 0 0 8px;\n            color: var(--simu-charcoal);\n        }\n\n        .simu-subtitle { font-size: 15px; color: var(--simu-gray); margin: 0; }\n\n        .simu-form-card {\n            background: var(--simu-offwhite);\n            border: 1px solid var(--simu-line);\n            border-radius: 12px;\n            padding: 26px 24px;\n            margin-bottom: 28px;\n        }\n\n        .simu-field { margin-bottom: 22px; }\n\n        .simu-label {\n            font-size: 14px;\n            font-weight: 600;\n            color: var(--simu-charcoal);\n            margin-bottom: 8px;\n            display: block;\n        }\n\n        .simu-input {\n            width: 100%;\n            padding: 13px 16px;\n            border: 1px solid var(--simu-line);\n            border-radius: 8px;\n            font-size: 16px;\n            font-family: inherit;\n            background: #fff;\n            outline: none;\n            transition: border-color .15s ease;\n            box-sizing: border-box;\n        }\n        .simu-input:focus { border-color: var(--simu-red); }\n        .simu-input::placeholder { color: #A79F9A; }\n\n        .simu-checkbox-group {\n            background: #fff;\n            border: 1px solid var(--simu-line);\n            border-radius: 10px;\n            padding: 18px;\n        }\n\n        .simu-checkbox-wrapper { display: flex; align-items: flex-start; gap: 14px; cursor: pointer; }\n\n        .simu-checkbox { width: 20px; height: 20px; border: 2px solid var(--simu-red); border-radius: 5px; position: relative; flex-shrink: 0; margin-top: 2px; }\n        .simu-checkbox input { position: absolute; opacity: 0; cursor: pointer; width: 100%; height: 100%; margin: 0; }\n        .simu-checkbox input:checked + .simu-checkmark { background: var(--simu-red); border-color: var(--simu-red); }\n        .simu-checkbox input:checked + .simu-checkmark::after { display: block; }\n        .simu-checkmark { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 3px; }\n        .simu-checkmark::after {\n            content: \"\"; position: absolute; display: none; left: 6px; top: 2px;\n            width: 5px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg);\n        }\n\n        .simu-checkbox-content { flex: 1; }\n        .simu-checkbox-label { font-size: 15px; font-weight: 600; color: var(--simu-charcoal); margin-bottom: 6px; display: block; }\n        .simu-checkbox-info {\n            font-size: 13.5px; color: var(--simu-gray); line-height: 1.5; margin-top: 8px;\n            padding: 12px 14px; background: var(--simu-offwhite); border-left: 3px solid var(--simu-red); border-radius: 6px;\n        }\n\n        .simu-btn {\n            background: var(--simu-red); color: #fff; border: none; padding: 14px 28px;\n            border-radius: 8px; font-size: 16px; font-weight: 600; cursor: pointer;\n            transition: background-color .15s ease; width: 100%; font-family: inherit;\n        }\n        .simu-btn:hover { background: var(--simu-red-dark); }\n        .simu-btn:disabled { opacity: .6; cursor: not-allowed; }\n\n        .simu-result {\n            background: #fff; border: 1px solid var(--simu-line); border-radius: 12px; padding: 28px 24px;\n        }\n\n        .simu-result-header { text-align: center; margin-bottom: 22px; padding-bottom: 16px; border-bottom: 1px solid var(--simu-line); }\n        .simu-result-title { font-size: 20px; font-weight: 600; color: var(--simu-charcoal); margin: 0; }\n\n        .simu-result-grid { display: grid; gap: 10px; margin-bottom: 16px; }\n\n        .simu-line {\n            display: flex; justify-content: space-between; align-items: center;\n            padding: 13px 16px; background: var(--simu-offwhite); border: 1px solid var(--simu-line); border-radius: 8px;\n        }\n        .simu-line-label { font-size: 14px; color: var(--simu-gray); font-weight: 500; }\n        .simu-line-value { font-size: 15px; font-weight: 700; color: var(--simu-charcoal); }\n\n        .simu-total-line { background: var(--simu-red); border: none; padding: 16px; margin-top: 6px; }\n        .simu-total-line .simu-line-label, .simu-total-line .simu-line-value { color: #fff; font-size: 16px; }\n\n        .simu-note {\n            margin-top: 20px; padding: 16px 18px; background: var(--simu-offwhite);\n            border-left: 3px solid var(--simu-red); border-radius: 8px; font-size: 13.5px; color: var(--simu-gray); line-height: 1.6;\n        }\n\n        @media (max-width: 640px) {\n            .simu-container { margin: 12px; }\n            .simu-wrap { padding: 24px 18px; }\n            .simu-title { font-size: 23px; }\n            .simu-form-card, .simu-result { padding: 20px 16px; }\n            .simu-line { flex-direction: column; align-items: flex-start; gap: 4px; }\n            .simu-line-value { align-self: flex-end; }\n        }\n    <\/style>\n\n    <div class=\"simu-container\">\n        <div class=\"simu-wrap\">\n            <div class=\"simu-header\">\n                <h1 class=\"simu-title\">Simulateur de salaire<\/h1>\n                <p class=\"simu-subtitle\">Calculez votre salaire brut et les charges sociales<\/p>\n            <\/div>\n\n            <div class=\"simu-form-card\">\n                <form id=\"simu-form\">\n                    <div class=\"simu-field\">\n                        <label class=\"simu-label\" for=\"net\">Salaire net souhait\u00e9 (FCFA)<\/label>\n                        <input\n                            type=\"number\"\n                            id=\"net\"\n                            class=\"simu-input\"\n                            placeholder=\"Ex : 76 470\"\n                            required\n                            min=\"1\"\n                            step=\"1\"\n                        >\n                    <\/div>\n\n                    <div class=\"simu-field\">\n                        <div class=\"simu-checkbox-group\">\n                            <label class=\"simu-checkbox-wrapper\">\n                                <div class=\"simu-checkbox\">\n                                    <input type=\"checkbox\" id=\"prime\">\n                                    <span class=\"simu-checkmark\"><\/span>\n                                <\/div>\n                                <div class=\"simu-checkbox-content\">\n                                    <span class=\"simu-checkbox-label\">Ajouter la prime de transport (26 000 FCFA)<\/span>\n                                    <div class=\"simu-checkbox-info\">\n                                        <strong>Information importante :<\/strong> la prime de transport est due si le salari\u00e9 habite \u00e0 plus de trois (3) kilom\u00e8tres, \u00e0 vol d'oiseau, de son lieu de travail.\n                                    <\/div>\n                                <\/div>\n                            <\/label>\n                        <\/div>\n                    <\/div>\n\n                    <button type=\"submit\" class=\"simu-btn\" id=\"simu-btn\">\u00c9valuer le co\u00fbt de revient salarial<\/button>\n                <\/form>\n            <\/div>\n\n            <div class=\"simu-result\" id=\"simu-result\" style=\"display:none;\">\n                <div class=\"simu-result-header\">\n                    <h2 class=\"simu-result-title\">D\u00e9tail de votre simulation<\/h2>\n                <\/div>\n\n                <div class=\"simu-result-grid\">\n                    <div class=\"simu-line\">\n                        <span class=\"simu-line-label\">Salaire net<\/span>\n                        <span class=\"simu-line-value\" id=\"res-net\"><\/span>\n                    <\/div>\n                    <div class=\"simu-line\">\n                        <span class=\"simu-line-label\">Salaire brut<\/span>\n                        <span class=\"simu-line-value\" id=\"res-brut\"><\/span>\n                    <\/div>\n                    <div class=\"simu-line\">\n                        <span class=\"simu-line-label\">Cotisations salariales (5,6 %)<\/span>\n                        <span class=\"simu-line-value\" id=\"res-salarial\"><\/span>\n                    <\/div>\n                    <div class=\"simu-line\">\n                        <span class=\"simu-line-label\">Charges employeur (20 %)<\/span>\n                        <span class=\"simu-line-value\" id=\"res-employeur\"><\/span>\n                    <\/div>\n                    <div class=\"simu-line\" id=\"res-prime-wrap\" style=\"display:none;\">\n                        <span class=\"simu-line-label\">Prime de transport<\/span>\n                        <span class=\"simu-line-value\" id=\"res-prime\"><\/span>\n                    <\/div>\n                <\/div>\n\n                <div class=\"simu-line simu-total-line\">\n                    <span class=\"simu-line-label\">Co\u00fbt total pour l'employeur<\/span>\n                    <span class=\"simu-line-value\" id=\"res-total\"><\/span>\n                <\/div>\n\n                <div class=\"simu-note\">\n                    <strong>Avertissement :<\/strong> cette simulation est une estimation bas\u00e9e sur les taux de cotisations standards. Pour un calcul pr\u00e9cis adapt\u00e9 \u00e0 votre situation (convention collective, cat\u00e9gorie professionnelle, etc.), contactez-nous.\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <script>\n        document.getElementById('simu-form').addEventListener('submit', async function(e){\n            e.preventDefault();\n\n            const netInput = document.getElementById('net');\n            const primeCheckbox = document.getElementById('prime');\n            const submitBtn = document.getElementById('simu-btn');\n\n            const net = parseFloat(netInput.value);\n            const primeChecked = primeCheckbox.checked;\n            const prime = 26000;\n\n            if (!net || net <= 0) {\n                alert(\"Veuillez entrer un salaire net valide.\");\n                netInput.focus();\n                return;\n            }\n\n            submitBtn.disabled = true;\n            submitBtn.textContent = 'Calcul en cours\u2026';\n\n            await new Promise(resolve => setTimeout(resolve, 300));\n\n            \/\/ Conversion net -> brut\n            const brut = Math.round(net \/ 0.9294);\n            const partSalariale = Math.round(brut * 0.056);\n            const partEmployeur = Math.round(brut * 0.20);\n\n            let total = brut + partEmployeur;\n            if (primeChecked) total += prime;\n\n            function formatNumber(num) {\n                return num.toLocaleString('fr-FR') + ' FCFA';\n            }\n\n            document.getElementById('res-net').textContent = formatNumber(net);\n            document.getElementById('res-brut').textContent = formatNumber(brut);\n            document.getElementById('res-salarial').textContent = formatNumber(partSalariale);\n            document.getElementById('res-employeur').textContent = formatNumber(partEmployeur);\n            document.getElementById('res-total').textContent = formatNumber(total);\n\n            const primeWrap = document.getElementById('res-prime-wrap');\n            if (primeChecked) {\n                document.getElementById('res-prime').textContent = formatNumber(prime);\n                primeWrap.style.display = '';\n            } else {\n                primeWrap.style.display = 'none';\n            }\n\n            document.getElementById('simu-result').style.display = '';\n            document.getElementById('simu-result').scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n\n            submitBtn.disabled = false;\n            submitBtn.textContent = '\u00c9valuer le co\u00fbt de revient salarial';\n\n            try {\n                const formData = new FormData();\n                formData.append('action','simu_save_log');\n                formData.append('_ajax_nonce','83b5b2a197');\n                formData.append('net', net);\n                formData.append('brut', brut);\n                formData.append('charges_employeur', partEmployeur);\n                formData.append('prime', primeChecked ? prime : 0);\n                formData.append('total', total);\n\n                await fetch('https:\/\/eliteservicesenegal.com\/wp-admin\/admin-ajax.php', {\n                    method: 'POST',\n                    body: formData\n                });\n            } catch (error) {\n                console.warn('Erreur lors de l\\'enregistrement du log:', error);\n            }\n        });\n\n        document.getElementById('net').addEventListener('input', function(e) {\n            e.target.value = e.target.value.replace(\/[^\\d]\/g, '');\n        });\n    <\/script>\n    \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_glsr_average":0,"_glsr_ranking":0,"_glsr_reviews":0,"footnotes":""},"class_list":["post-2977","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/eliteservicesenegal.com\/index.php\/wp-json\/wp\/v2\/pages\/2977","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eliteservicesenegal.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/eliteservicesenegal.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/eliteservicesenegal.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/eliteservicesenegal.com\/index.php\/wp-json\/wp\/v2\/comments?post=2977"}],"version-history":[{"count":4,"href":"https:\/\/eliteservicesenegal.com\/index.php\/wp-json\/wp\/v2\/pages\/2977\/revisions"}],"predecessor-version":[{"id":2983,"href":"https:\/\/eliteservicesenegal.com\/index.php\/wp-json\/wp\/v2\/pages\/2977\/revisions\/2983"}],"wp:attachment":[{"href":"https:\/\/eliteservicesenegal.com\/index.php\/wp-json\/wp\/v2\/media?parent=2977"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}