{"id":116,"date":"2026-05-30T16:07:13","date_gmt":"2026-05-30T16:07:13","guid":{"rendered":"https:\/\/camp.wiserighteous.org\/?page_id=116"},"modified":"2026-05-31T16:19:22","modified_gmt":"2026-05-31T16:19:22","slug":"step-1-identify-unrighteous-behavior-patterns","status":"publish","type":"page","link":"https:\/\/camp.wiserighteous.org\/index.php\/step-1-identify-unrighteous-behavior-patterns\/","title":{"rendered":"Step 1 \u2013 Identify Unrighteous Behavior Patterns"},"content":{"rendered":"\n<h6 class=\"wp-block-heading\"><\/h6>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=yes\">\n    <title>Righteous Growth \u2013 Identify Unrighteous Patterns (Step 1)<\/title>\n    <style>\n        * { box-sizing: border-box; }\n        body {\n            font-family: 'Segoe UI', Roboto, Arial, sans-serif;\n            max-width: 1100px;\n            margin: 0 auto;\n            padding: 20px;\n            background: #f8fafc;\n            color: #0f172a;\n        }\n        h4 {\n            color: #1e293b;\n            border-bottom: 2px solid #3b82f6;\n            display: inline-block;\n            padding-bottom: 4px;\n            margin-top: 0;\n            font-size: 1.3rem;\n            text-align: center;\n            width: 100%;\n        }\n        .title-container {\n            text-align: center;\n            margin-bottom: 10px;\n        }\n        .subhead {\n            color: #334155;\n            margin-bottom: 30px;\n            font-size: 1rem;\n            text-align: center;\n        }\n        .step-card {\n            background: white;\n            border-radius: 24px;\n            box-shadow: 0 8px 20px rgba(0,0,0,0.05);\n            padding: 24px 30px;\n            margin-bottom: 30px;\n            border: 1px solid #e2e8f0;\n        }\n        .section {\n            margin-bottom: 32px;\n            border-top: 1px solid #e2e8f0;\n            padding-top: 16px;\n        }\n        .scale-note {\n            background: #eff6ff;\n            padding: 10px 14px;\n            margin: 12px 0;\n            border-left: 5px solid #3b82f6;\n            font-size: 0.85rem;\n            border-radius: 12px;\n        }\n        .question {\n            margin-bottom: 18px;\n            display: flex;\n            flex-wrap: wrap;\n            align-items: flex-start;\n            gap: 12px;\n            background: #ffffff;\n            padding: 10px 0;\n            border-bottom: 1px solid #eef2ff;\n        }\n        .question-text {\n            flex: 3;\n            min-width: 220px;\n            font-weight: 500;\n        }\n        .options {\n            flex: 2;\n            display: flex;\n            gap: 15px;\n            flex-wrap: wrap;\n        }\n        .options label {\n            display: inline-flex;\n            align-items: center;\n            gap: 4px;\n            font-size: 13px;\n        }\n        textarea, input[type=\"text\"] {\n            width: 100%;\n            padding: 12px;\n            font-family: inherit;\n            font-size: 14px;\n            border: 1px solid #cbd5e1;\n            border-radius: 16px;\n            resize: vertical;\n        }\n        button {\n            background: #3b82f6;\n            color: white;\n            padding: 12px 32px;\n            border: none;\n            border-radius: 40px;\n            cursor: pointer;\n            font-size: 1rem;\n            font-weight: 600;\n            margin-top: 15px;\n            transition: 0.2s;\n        }\n        button:hover { background: #2563eb; transform: scale(1.01); }\n        .report-container {\n            background: #f1f5f9;\n            border-radius: 28px;\n            padding: 25px;\n            margin-top: 30px;\n            box-shadow: 0 4px 12px rgba(0,0,0,0.1);\n        }\n        .domain-card {\n            background: white;\n            border-radius: 20px;\n            padding: 16px;\n            margin-bottom: 16px;\n            box-shadow: 0 1px 3px rgba(0,0,0,0.05);\n        }\n        .domain-header {\n            display: flex;\n            justify-content: space-between;\n            align-items: baseline;\n            flex-wrap: wrap;\n            margin-bottom: 8px;\n        }\n        .domain-name { font-weight: 800; font-size: 1.2rem; }\n        .risk-badge {\n            padding: 4px 12px;\n            border-radius: 40px;\n            font-size: 0.75rem;\n            font-weight: bold;\n        }\n        .risk-high { background: #fee2e2; color: #b91c1c; }\n        .risk-moderate { background: #fff3cd; color: #b45309; }\n        .risk-low { background: #dcfce7; color: #15803d; }\n        .bar-bg {\n            background: #e2e8f0;\n            border-radius: 20px;\n            height: 12px;\n            width: 100%;\n            overflow: hidden;\n            margin: 10px 0;\n        }\n        .bar-fill {\n            background: #3b82f6;\n            height: 100%;\n            width: 0%;\n            border-radius: 20px;\n            transition: width 0.3s;\n        }\n        .top-list { list-style: none; padding-left: 0; }\n        .top-list li {\n            background: #f8fafc;\n            margin: 8px 0;\n            padding: 8px 12px;\n            border-radius: 40px;\n            border-left: 4px solid #3b82f6;\n        }\n        .plan-box {\n            background: #fef9e6;\n            border-left: 6px solid #f59e0b;\n            padding: 18px;\n            border-radius: 20px;\n            margin-top: 20px;\n        }\n        .action-item {\n            margin: 12px 0;\n            padding-left: 20px;\n        }\n        .print-btn {\n            background: #475569;\n            margin-right: 12px;\n        }\n        .reset-btn {\n            background: #64748b;\n        }\n        .hidden { display: none; }\n        .flex-btns { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 20px; }\n        @media (max-width: 700px) {\n            .question { flex-direction: column; }\n            .step-card { padding: 16px; }\n        }\n    <\/style>\n<\/head>\n<body>\n\n<div class=\"title-container\">\n    <h4>\ud83d\udd0d Step 1 \u2013 Identify Unrighteous Behavior Patterns<\/h4>\n<\/div>\n<p class=\"subhead\">Self\u2011observation \u00b7 Pattern recognition \u00b7 Personal reflection<\/p>\n\n<!-- Questionnaire Card -->\n<div id=\"questionnaireCard\" class=\"step-card\">\n    <p>Answer honestly based on your typical behavior over the last <strong>2\u20133 months<\/strong>. <br>\ud83d\udccc All answers are auto\u2011saved as a draft \u2013 you won&#8217;t lose progress.<\/p>\n    <div id=\"autoSaveMsg\" style=\"font-size:0.8rem; color:#2563eb; margin-bottom:10px;\">\u2705 Draft auto\u2011saved<\/div>\n\n    <form id=\"quizForm\">\n        <!-- Section A -->\n        <div class=\"section\">\n            <h4>A. Inner Attitudes<\/h4>\n            <div class=\"scale-note\">\ud83d\udd35 1 = Never\/Rarely &nbsp; 2 = Occasionally &nbsp; 3 = Sometimes &nbsp; 4 = Often &nbsp; 5 = Almost always<\/div>\n            <div class=\"question\"><span class=\"question-text\">A1. I feel secretly annoyed when someone else succeeds or is praised.<\/span><span class=\"options\">1<input type=\"radio\" name=\"A1\" value=\"1\"> 2<input type=\"radio\" name=\"A1\" value=\"2\"> 3<input type=\"radio\" name=\"A1\" value=\"3\"> 4<input type=\"radio\" name=\"A1\" value=\"4\"> 5<input type=\"radio\" name=\"A1\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">A2. I hold onto anger or resentment longer than I should.<\/span><span class=\"options\">1<input type=\"radio\" name=\"A2\" value=\"1\"> 2<input type=\"radio\" name=\"A2\" value=\"2\"> 3<input type=\"radio\" name=\"A2\" value=\"3\"> 4<input type=\"radio\" name=\"A2\" value=\"4\"> 5<input type=\"radio\" name=\"A2\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">A3. I compare myself to others and feel that I deserve more than them.<\/span><span class=\"options\">1<input type=\"radio\" name=\"A3\" value=\"1\"> 2<input type=\"radio\" name=\"A3\" value=\"2\"> 3<input type=\"radio\" name=\"A3\" value=\"3\"> 4<input type=\"radio\" name=\"A3\" value=\"4\"> 5<input type=\"radio\" name=\"A3\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">A4. I look down on people who are different from me.<\/span><span class=\"options\">1<input type=\"radio\" name=\"A4\" value=\"1\"> 2<input type=\"radio\" name=\"A4\" value=\"2\"> 3<input type=\"radio\" name=\"A4\" value=\"3\"> 4<input type=\"radio\" name=\"A4\" value=\"4\"> 5<input type=\"radio\" name=\"A4\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">A5. I act humble on the outside but feel proud or superior inside.<\/span><span class=\"options\">1<input type=\"radio\" name=\"A5\" value=\"1\"> 2<input type=\"radio\" name=\"A5\" value=\"2\"> 3<input type=\"radio\" name=\"A5\" value=\"3\"> 4<input type=\"radio\" name=\"A5\" value=\"4\"> 5<input type=\"radio\" name=\"A5\" value=\"5\"><\/span><\/div>\n        <\/div>\n\n        <!-- Section B -->\n        <div class=\"section\">\n            <h4>B. Relationships &#038; Speech<\/h4>\n            <div class=\"scale-note\">\ud83d\udd35 1 = Never\/Rarely &nbsp; 2 = Occasionally &nbsp; 3 = Sometimes &nbsp; 4 = Often &nbsp; 5 = Almost always<\/div>\n            <div class=\"question\"><span class=\"question-text\">B1. I blame others for my mistakes instead of owning them.<\/span><span class=\"options\">1<input type=\"radio\" name=\"B1\" value=\"1\"> 2<input type=\"radio\" name=\"B1\" value=\"2\"> 3<input type=\"radio\" name=\"B1\" value=\"3\"> 4<input type=\"radio\" name=\"B1\" value=\"4\"> 5<input type=\"radio\" name=\"B1\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">B2. I lie or exaggerate to make myself look better or avoid trouble.<\/span><span class=\"options\">1<input type=\"radio\" name=\"B2\" value=\"1\"> 2<input type=\"radio\" name=\"B2\" value=\"2\"> 3<input type=\"radio\" name=\"B2\" value=\"3\"> 4<input type=\"radio\" name=\"B2\" value=\"4\"> 5<input type=\"radio\" name=\"B2\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">B3. I gossip or share negative things about someone when they are not present.<\/span><span class=\"options\">1<input type=\"radio\" name=\"B3\" value=\"1\"> 2<input type=\"radio\" name=\"B3\" value=\"2\"> 3<input type=\"radio\" name=\"B3\" value=\"3\"> 4<input type=\"radio\" name=\"B3\" value=\"4\"> 5<input type=\"radio\" name=\"B3\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">B4. I try to control or manipulate people to get what I want.<\/span><span class=\"options\">1<input type=\"radio\" name=\"B4\" value=\"1\"> 2<input type=\"radio\" name=\"B4\" value=\"2\"> 3<input type=\"radio\" name=\"B4\" value=\"3\"> 4<input type=\"radio\" name=\"B4\" value=\"4\"> 5<input type=\"radio\" name=\"B4\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">B5. I ignore or avoid someone who has hurt me, instead of speaking honestly with them.<\/span><span class=\"options\">1<input type=\"radio\" name=\"B5\" value=\"1\"> 2<input type=\"radio\" name=\"B5\" value=\"2\"> 3<input type=\"radio\" name=\"B5\" value=\"3\"> 4<input type=\"radio\" name=\"B5\" value=\"4\"> 5<input type=\"radio\" name=\"B5\" value=\"5\"><\/span><\/div>\n        <\/div>\n\n        <!-- Section C -->\n        <div class=\"section\">\n            <h4>C. Reactions to Stress or Conflict<\/h4>\n            <div class=\"scale-note\">\ud83d\udd35 1 = Never\/Rarely &nbsp; 2 = Occasionally &nbsp; 3 = Sometimes &nbsp; 4 = Often &nbsp; 5 = Almost always<\/div>\n            <div class=\"question\"><span class=\"question-text\">C1. When I am criticized, my first reaction is to get defensive or argue back.<\/span><span class=\"options\">1<input type=\"radio\" name=\"C1\" value=\"1\"> 2<input type=\"radio\" name=\"C1\" value=\"2\"> 3<input type=\"radio\" name=\"C1\" value=\"3\"> 4<input type=\"radio\" name=\"C1\" value=\"4\"> 5<input type=\"radio\" name=\"C1\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">C2. I react with anger, yelling, or sarcasm more quickly than I would like.<\/span><span class=\"options\">1<input type=\"radio\" name=\"C2\" value=\"1\"> 2<input type=\"radio\" name=\"C2\" value=\"2\"> 3<input type=\"radio\" name=\"C2\" value=\"3\"> 4<input type=\"radio\" name=\"C2\" value=\"4\"> 5<input type=\"radio\" name=\"C2\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">C3. I shut down, withdraw, or give the silent treatment when upset.<\/span><span class=\"options\">1<input type=\"radio\" name=\"C3\" value=\"1\"> 2<input type=\"radio\" name=\"C3\" value=\"2\"> 3<input type=\"radio\" name=\"C3\" value=\"3\"> 4<input type=\"radio\" name=\"C3\" value=\"4\"> 5<input type=\"radio\" name=\"C3\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">C4. I do something impulsive (spending, substances, revenge text) to escape bad feelings.<\/span><span class=\"options\">1<input type=\"radio\" name=\"C4\" value=\"1\"> 2<input type=\"radio\" name=\"C4\" value=\"2\"> 3<input type=\"radio\" name=\"C4\" value=\"3\"> 4<input type=\"radio\" name=\"C4\" value=\"4\"> 5<input type=\"radio\" name=\"C4\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">C5. I avoid difficult conversations or responsibilities by disappearing or procrastinating.<\/span><span class=\"options\">1<input type=\"radio\" name=\"C5\" value=\"1\"> 2<input type=\"radio\" name=\"C5\" value=\"2\"> 3<input type=\"radio\" name=\"C5\" value=\"3\"> 4<input type=\"radio\" name=\"C5\" value=\"4\"> 5<input type=\"radio\" name=\"C5\" value=\"5\"><\/span><\/div>\n        <\/div>\n\n        <!-- Section D -->\n        <div class=\"section\">\n            <h4>D. Accountability &#038; Integrity<\/h4>\n            <div class=\"scale-note\">\ud83d\udd35 1 = Never\/Rarely &nbsp; 2 = Occasionally &nbsp; 3 = Sometimes &nbsp; 4 = Often &nbsp; 5 = Almost always<\/div>\n            <div class=\"question\"><span class=\"question-text\">D1. I make excuses for my bad behavior (\u201cthat\u2019s just how I am\u201d, \u201cthey made me do it\u201d).<\/span><span class=\"options\">1<input type=\"radio\" name=\"D1\" value=\"1\"> 2<input type=\"radio\" name=\"D1\" value=\"2\"> 3<input type=\"radio\" name=\"D1\" value=\"3\"> 4<input type=\"radio\" name=\"D1\" value=\"4\"> 5<input type=\"radio\" name=\"D1\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">D2. I break promises or commitments without a good reason.<\/span><span class=\"options\">1<input type=\"radio\" name=\"D2\" value=\"1\"> 2<input type=\"radio\" name=\"D2\" value=\"2\"> 3<input type=\"radio\" name=\"D2\" value=\"3\"> 4<input type=\"radio\" name=\"D2\" value=\"4\"> 5<input type=\"radio\" name=\"D2\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">D3. I hide certain habits or actions from people who care about me (parents, friends, partner).<\/span><span class=\"options\">1<input type=\"radio\" name=\"D3\" value=\"1\"> 2<input type=\"radio\" name=\"D3\" value=\"2\"> 3<input type=\"radio\" name=\"D3\" value=\"3\"> 4<input type=\"radio\" name=\"D3\" value=\"4\"> 5<input type=\"radio\" name=\"D3\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">D4. I know the right thing to do, but I choose the easy or selfish thing instead.<\/span><span class=\"options\">1<input type=\"radio\" name=\"D4\" value=\"1\"> 2<input type=\"radio\" name=\"D4\" value=\"2\"> 3<input type=\"radio\" name=\"D4\" value=\"3\"> 4<input type=\"radio\" name=\"D4\" value=\"4\"> 5<input type=\"radio\" name=\"D4\" value=\"5\"><\/span><\/div>\n            <div class=\"question\"><span class=\"question-text\">D5. I avoid admitting I was wrong, even when I know I was.<\/span><span class=\"options\">1<input type=\"radio\" name=\"D5\" value=\"1\"> 2<input type=\"radio\" name=\"D5\" value=\"2\"> 3<input type=\"radio\" name=\"D5\" value=\"3\"> 4<input type=\"radio\" name=\"D5\" value=\"4\"> 5<input type=\"radio\" name=\"D5\" value=\"5\"><\/span><\/div>\n        <\/div>\n\n        <!-- Reflection prompts -->\n        <div class=\"section\">\n            <h4>\ud83d\udcdd Personal Reflection<\/h4>\n            <div class=\"reflection\"><label>R1 \u2013 Pattern naming<\/label><textarea name=\"reflection1\" rows=\"2\" placeholder=\"Look back at your highest\u2011rated items (4 or 5). What is the one most frequent unrighteous pattern? (e.g., 'blaming others', 'quick anger', 'avoiding hard conversations')\" required><\/textarea><\/div>\n            <div class=\"reflection\"><label>R2 \u2013 Trigger mapping<\/label><textarea name=\"reflection2\" rows=\"2\" placeholder=\"Describe a recent specific situation where you acted unrighteously. What happened right before? What were you feeling?\" required><\/textarea><\/div>\n            <div class=\"reflection\"><label>R3 \u2013 Desired change<\/label><textarea name=\"reflection3\" rows=\"2\" placeholder=\"If you could replace that unrighteous reaction with one better response, what would that better response look like?\" required><\/textarea><\/div>\n        <\/div>\n\n        <div class=\"flex-btns\">\n            <button type=\"submit\">\ud83d\udcca Generate My Statistical Report &#038; Plan<\/button>\n            <button type=\"button\" id=\"resetDraftBtn\" class=\"reset-btn\">\ud83d\uddd1\ufe0f Clear Draft<\/button>\n        <\/div>\n    <\/form>\n<\/div>\n\n<!-- Report Card (hidden initially) -->\n<div id=\"reportCard\" class=\"step-card hidden\">\n    <h4>\ud83d\udcc8 Your Unrighteous Patterns \u2013 Statistical Report<\/h4>\n    <div id=\"reportContent\"><\/div>\n    <div class=\"flex-btns\">\n        <button id=\"printReportBtn\" class=\"print-btn\">\ud83d\udda8\ufe0f Print \/ Save as PDF<\/button>\n        <button id=\"backToQuizBtn\" class=\"reset-btn\">\u270f\ufe0f Edit Answers<\/button>\n        <button id=\"resetAllBtn\" style=\"background:#dc2626;\">\ud83d\uddd1\ufe0f Reset &#038; Start Over<\/button>\n    <\/div>\n<\/div>\n\n<script>\n    \/\/ ========================\n    \/\/ DOM elements\n    const quizForm = document.getElementById('quizForm');\n    const questionnaireCard = document.getElementById('questionnaireCard');\n    const reportCard = document.getElementById('reportCard');\n    const reportContent = document.getElementById('reportContent');\n    const autoSaveMsg = document.getElementById('autoSaveMsg');\n    const resetDraftBtn = document.getElementById('resetDraftBtn');\n    const backToQuizBtn = document.getElementById('backToQuizBtn');\n    const resetAllBtn = document.getElementById('resetAllBtn');\n    const printReportBtn = document.getElementById('printReportBtn');\n\n    \/\/ Helper: get draft key (localStorage)\n    const DRAFT_KEY = 'righteous_step1_draft';\n\n    \/\/ Save current form state to localStorage\n    function saveDraft() {\n        const formData = new FormData(quizForm);\n        const draft = {};\n        for (let [key, value] of formData.entries()) {\n            draft[key] = value;\n        }\n        localStorage.setItem(DRAFT_KEY, JSON.stringify(draft));\n        autoSaveMsg.innerHTML = '\u2705 Draft auto\u2011saved ' + new Date().toLocaleTimeString();\n        setTimeout(() => { if (autoSaveMsg.innerHTML.includes('auto\u2011saved')) autoSaveMsg.innerHTML = '\u2705 Draft saved'; }, 1500);\n    }\n\n    \/\/ Restore draft from localStorage\n    function restoreDraft() {\n        const raw = localStorage.getItem(DRAFT_KEY);\n        if (!raw) return;\n        const draft = JSON.parse(raw);\n        for (let name in draft) {\n            const input = document.querySelector(`[name=\"${name}\"]`);\n            if (!input) continue;\n            if (input.tagName === 'INPUT' && input.type === 'radio') {\n                const radio = document.querySelector(`input[name=\"${name}\"][value=\"${draft[name]}\"]`);\n                if (radio) radio.checked = true;\n            } else if (input.tagName === 'TEXTAREA') {\n                input.value = draft[name];\n            }\n        }\n    }\n\n    \/\/ Clear draft\n    function clearDraft() {\n        localStorage.removeItem(DRAFT_KEY);\n        autoSaveMsg.innerHTML = '\ud83d\uddd1\ufe0f Draft cleared';\n    }\n\n    \/\/ Attach auto-save listeners\n    function attachAutoSave() {\n        const inputs = quizForm.querySelectorAll('input, textarea');\n        inputs.forEach(input => {\n            input.removeEventListener('change', saveDraft);\n            input.removeEventListener('input', saveDraft);\n            input.addEventListener('change', saveDraft);\n            input.addEventListener('input', saveDraft);\n        });\n    }\n\n    \/\/ Compute analysis from scores & reflections\n    function computeAnalysis(scores, reflections) {\n        const domainItems = { A: [], B: [], C: [], D: [] };\n        for (let key in scores) {\n            domainItems[key[0]].push(scores[key]);\n        }\n        const domainAvg = {};\n        for (let d in domainItems) {\n            const sum = domainItems[d].reduce((a,b)=>a+b,0);\n            domainAvg[d] = sum \/ 5;\n        }\n        const domainNames = { A:\"Inner Attitudes\", B:\"Relationships & Speech\", C:\"Reactions to Stress\", D:\"Accountability & Integrity\" };\n        \n        \/\/ Risk level function\n        const getRisk = (avg) => {\n            if (avg >= 4) return { text: \"High Risk\", class: \"risk-high\" };\n            if (avg >= 2.5) return { text: \"Moderate Risk\", class: \"risk-moderate\" };\n            return { text: \"Low Risk\", class: \"risk-low\" };\n        };\n\n        \/\/ Top 3 individual items\n        const itemText = {\n            A1:\"Annoyed when others succeed\", A2:\"Hold onto anger\", A3:\"Compare & feel deserving\", A4:\"Look down on others\", A5:\"Proud inside\",\n            B1:\"Blame others\", B2:\"Lie\/exaggerate\", B3:\"Gossip\", B4:\"Control\/manipulate\", B5:\"Avoid conflict\",\n            C1:\"Defensive when criticized\", C2:\"Anger\/yelling\", C3:\"Shut down\", C4:\"Impulsive escape\", C5:\"Avoid responsibilities\",\n            D1:\"Make excuses\", D2:\"Break promises\", D3:\"Hide habits\", D4:\"Choose easy path\", D5:\"Avoid admitting wrong\"\n        };\n        let itemScores = [];\n        for (let key in scores) itemScores.push({ key, text: itemText[key] || key, score: scores[key] });\n        itemScores.sort((a,b)=>b.score - a.score);\n        const top3 = itemScores.slice(0,3);\n        \n        \/\/ Highest domain\n        let highestDomain = Object.keys(domainAvg).reduce((a,b)=> domainAvg[a] > domainAvg[b] ? a : b);\n        \n        \/\/ Generate detailed plan & suggestions based on highest domain and top items\n        let detailedPlan = \"\";\n        let suggestionsList = [];\n        \n        if (highestDomain === 'A') {\n            detailedPlan = \"\ud83c\udfaf Focus on Inner Attitudes. Practice daily gratitude, celebrate others' successes, and consciously challenge prideful thoughts.\";\n            suggestionsList = [\n                \"Keep a 'humility journal' \u2013 write down three things you appreciate about others each day.\",\n                \"When you feel envy, pause and say: 'Their success does not diminish me.'\",\n                \"Volunteer or serve someone without expecting recognition.\"\n            ];\n        } else if (highestDomain === 'B') {\n            detailedPlan = \"\ud83c\udfaf Strengthen Relationships & Speech. Work on honest communication, owning mistakes, and avoiding gossip.\";\n            suggestionsList = [\n                \"Practice the '24-hour rule': before saying something negative, wait 24 hours.\",\n                \"When you blame someone, stop and rephrase: 'I own my part in this.'\",\n                \"Start each conversation with a genuine compliment or affirmation.\"\n            ];\n        } else if (highestDomain === 'C') {\n            detailedPlan = \"\ud83c\udfaf Manage Reactions to Stress. Learn to pause before reacting, use deep breathing, and name your emotion.\";\n            suggestionsList = [\n                \"Install a 'pause button' \u2013 take 3 deep breaths before responding to criticism.\",\n                \"Create a 'cool-down corner' at home where you step away for 2 minutes.\",\n                \"Practice 'I feel...' statements instead of yelling or withdrawing.\"\n            ];\n        } else { \/\/ D\n            detailedPlan = \"\ud83c\udfaf Build Accountability & Integrity. Start with small promises kept and transparent communication.\";\n            suggestionsList = [\n                \"Use a habit tracker: mark each day you keep a promise.\",\n                \"Find an accountability partner \u2013 share weekly wins and struggles.\",\n                \"When you hide something, write it down and confess to a safe person.\"\n            ];\n        }\n        \n        \/\/ Additional personalized tweaks based on top3\n        if (top3.some(i => i.key.startsWith('A'))) {\n            suggestionsList.push(\"\ud83e\udde0 Your top inner attitude issue: \" + top3.find(i=>i.key.startsWith('A'))?.text + \" \u2013 try a specific 'thought replacement' exercise.\");\n        }\n        if (top3.some(i => i.key.startsWith('B'))) {\n            suggestionsList.push(\"\ud83d\udcac Your relationship pattern: \" + top3.find(i=>i.key.startsWith('B'))?.text + \" \u2013 practice one honest statement today.\");\n        }\n        if (top3.some(i => i.key.startsWith('C'))) {\n            suggestionsList.push(\"\u26a1 Stress reaction: \" + top3.find(i=>i.key.startsWith('C'))?.text + \" \u2013 before reacting, count to 5 silently.\");\n        }\n        if (top3.some(i => i.key.startsWith('D'))) {\n            suggestionsList.push(\"\ud83d\udd10 Integrity challenge: \" + top3.find(i=>i.key.startsWith('D'))?.text + \" \u2013 make one small promise and keep it today.\");\n        }\n        \n        return { domainAvg, domainNames, getRisk, top3, highestDomain, detailedPlan, suggestionsList, reflections };\n    }\n\n    \/\/ Render fancy report\n    function renderReport(analysis) {\n        const { domainAvg, domainNames, getRisk, top3, highestDomain, detailedPlan, suggestionsList, reflections } = analysis;\n        \n        let html = `<div style=\"margin-bottom: 20px;\">`;\n        \/\/ Domain cards with bar\n        for (let d of ['A','B','C','D']) {\n            const avg = domainAvg[d];\n            const risk = getRisk(avg);\n            const percent = (avg\/5)*100;\n            html += `<div class=\"domain-card\">\n                        <div class=\"domain-header\">\n                            <span class=\"domain-name\">${domainNames[d]}<\/span>\n                            <span class=\"risk-badge ${risk.class}\">${risk.text}<\/span>\n                        <\/div>\n                        <div><strong>${avg.toFixed(1)} \/ 5<\/strong><\/div>\n                        <div class=\"bar-bg\"><div class=\"bar-fill\" style=\"width: ${percent}%;\"><\/div><\/div>\n                     <\/div>`;\n        }\n        html += `<\/div>`;\n        \n        html += `<h4>\ud83d\udd1d Top 3 Most Frequent Unrighteous Behaviors<\/h4><ul class=\"top-list\">`;\n        for (let item of top3) {\n            html += `<li><strong>${item.text}<\/strong> \u2013 score ${item.score}\/5 (${item.score === 1 ? \"Never\" : item.score === 2 ? \"Occasionally\" : item.score === 3 ? \"Sometimes\" : item.score === 4 ? \"Often\" : \"Almost always\"})<\/li>`;\n        }\n        html += `<\/ul>`;\n        \n        html += `<div class=\"plan-box\">\n                    <h4>\ud83d\udccc Detailed Action Plan & Suggestions<\/h4>\n                    <p><strong>${detailedPlan}<\/strong><\/p>\n                    <h4>\u2705 Step\u2011by\u2011step recommendations:<\/h4>\n                    <ul>`;\n        for (let sug of suggestionsList) {\n            html += `<li class=\"action-item\">${sug}<\/li>`;\n        }\n        html += `<\/ul>\n                    <h4>\ud83d\udcdd Your own reflections (to revisit):<\/h4>\n                    <p><strong>Pattern:<\/strong> ${reflections.reflection1 || \"\u2014\"}<\/p>\n                    <p><strong>Trigger situation:<\/strong> ${reflections.reflection2 || \"\u2014\"}<\/p>\n                    <p><strong>Desired change:<\/strong> ${reflections.reflection3 || \"\u2014\"}<\/p>\n                    <p><em>\ud83d\udca1 Use these insights to build your personal growth plan. Re\u2011take this questionnaire in 2\u20134 weeks to track progress.<\/em><\/p>\n                 <\/div>`;\n        return html;\n    }\n\n    \/\/ Submit handler\n    quizForm.addEventListener('submit', function(e) {\n        e.preventDefault();\n        \/\/ Collect all Likert answers\n        const questions = ['A1','A2','A3','A4','A5','B1','B2','B3','B4','B5','C1','C2','C3','C4','C5','D1','D2','D3','D4','D5'];\n        let scores = {};\n        let missing = [];\n        for (let q of questions) {\n            let val = document.querySelector(`input[name=\"${q}\"]:checked`);\n            if (val) scores[q] = parseInt(val.value);\n            else missing.push(q);\n        }\n        if (missing.length > 0) {\n            alert(`Please answer the following questions: ${missing.join(', ')}`);\n            return;\n        }\n        const reflection1 = document.querySelector('textarea[name=\"reflection1\"]').value;\n        const reflection2 = document.querySelector('textarea[name=\"reflection2\"]').value;\n        const reflection3 = document.querySelector('textarea[name=\"reflection3\"]').value;\n        if (!reflection1 || !reflection2 || !reflection3) {\n            alert(\"Please complete all three reflection questions.\");\n            return;\n        }\n        \n        const reflections = { reflection1, reflection2, reflection3 };\n        const analysis = computeAnalysis(scores, reflections);\n        const reportHtml = renderReport(analysis);\n        reportContent.innerHTML = reportHtml;\n        \n        \/\/ Hide questionnaire, show report\n        questionnaireCard.classList.add('hidden');\n        reportCard.classList.remove('hidden');\n        \/\/ Clear draft after successful submission\n        clearDraft();\n        window.scrollTo({ top: 0, behavior: 'smooth' });\n    });\n    \n    \/\/ Reset draft button\n    resetDraftBtn.addEventListener('click', () => {\n        clearDraft();\n        quizForm.reset();\n        autoSaveMsg.innerHTML = '\ud83d\uddd1\ufe0f Draft cleared, form reset';\n        setTimeout(() => autoSaveMsg.innerHTML = '\u2705 Draft auto\u2011saved', 2000);\n    });\n    \n    \/\/ Back to quiz from report (reload page to reset state)\n    backToQuizBtn.addEventListener('click', () => {\n        location.reload();\n    });\n    \n    \/\/ Reset all (clear storage and reload)\n    resetAllBtn.addEventListener('click', () => {\n        if(confirm(\"Delete all saved data and reset the questionnaire?\")) {\n            localStorage.removeItem(DRAFT_KEY);\n            location.reload();\n        }\n    });\n    \n    \/\/ Print report\n    printReportBtn.addEventListener('click', () => {\n        const originalTitle = document.title;\n        document.title = \"Righteous Growth Report\";\n        window.print();\n        document.title = originalTitle;\n    });\n    \n    \/\/ On load: restore draft, attach auto-save\n    window.addEventListener('load', () => {\n        restoreDraft();\n        attachAutoSave();\n        saveDraft(); \/\/ initial save to ensure draft exists if any fields filled\n    });\n<\/script>\n<\/body>\n<\/html>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Righteous Growth \u2013 Identify Unrighteous Patterns (Step 1) \ud83d\udd0d Step 1 \u2013 Identify Unrighteous Behavior Patterns Self\u2011observation \u00b7 Pattern recognition \u00b7 Personal reflection Answer honestly based on your typical behavior over the last 2\u20133 months. \ud83d\udccc All answers are auto\u2011saved as a draft \u2013 you won&#8217;t lose progress. \u2705 Draft auto\u2011saved A. Inner Attitudes \ud83d\udd35 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-116","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/camp.wiserighteous.org\/index.php\/wp-json\/wp\/v2\/pages\/116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/camp.wiserighteous.org\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/camp.wiserighteous.org\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/camp.wiserighteous.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/camp.wiserighteous.org\/index.php\/wp-json\/wp\/v2\/comments?post=116"}],"version-history":[{"count":10,"href":"https:\/\/camp.wiserighteous.org\/index.php\/wp-json\/wp\/v2\/pages\/116\/revisions"}],"predecessor-version":[{"id":141,"href":"https:\/\/camp.wiserighteous.org\/index.php\/wp-json\/wp\/v2\/pages\/116\/revisions\/141"}],"wp:attachment":[{"href":"https:\/\/camp.wiserighteous.org\/index.php\/wp-json\/wp\/v2\/media?parent=116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}