{"id":708,"date":"2026-06-04T12:46:51","date_gmt":"2026-06-04T12:46:51","guid":{"rendered":"https:\/\/curiouslearneracademy.com\/newzealand\/?page_id=708"},"modified":"2026-06-10T06:15:28","modified_gmt":"2026-06-10T06:15:28","slug":"year-1-2-diagnostic-assessment","status":"publish","type":"page","link":"https:\/\/curiouslearneracademy.com\/newzealand\/year-1-2-diagnostic-assessment\/","title":{"rendered":"Year 1-2 Diagnostic Assessment"},"content":{"rendered":"\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\">\n    <title>Curious Learner Academy &#8211; Diagnostic Evaluation Hub<\/title>\n    <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.5.1\/css\/all.min.css\">\n    <style>\n        @import url('https:\/\/fonts.googleapis.com\/css2?family=Outfit:wght@300;400;600;700;900&display=swap');\n\n        :root {\n            --cl-teal: #14b8a6;\n            --cl-navy-dark: #020617;\n            --cl-navy-pure: #0c4a6e;\n            --cl-orange: #f97316;\n            --cl-white: #ffffff;\n            --cl-slate-50: #f8fafc;\n            --cl-slate-100: #f1f5f9;\n            --cl-slate-400: #94a3b8;\n            --cl-slate-700: #334155;\n            --border-soft: rgba(12, 74, 110, 0.12);\n        }\n\n        body {\n            background-color: var(--cl-white);\n            font-family: 'Outfit', sans-serif;\n            margin: 0; padding: 0;\n            color: var(--cl-slate-700);\n            -webkit-font-smoothing: antialiased;\n        }\n\n        #cl-quiz-portal {\n            padding: 40px 0;\n            display: flex; justify-content: center; align-items: center;\n            min-height: 100vh;\n            background: var(--cl-slate-50);\n        }\n\n        .quiz-wrapper {\n            max-width: 900px; width: 90%;\n            background: var(--cl-white);\n            border: 1px solid var(--border-soft);\n            border-radius: 40px; padding: 40px;\n            box-shadow: 0 25px 60px rgba(2, 6, 23, 0.05);\n            box-sizing: border-box; position: relative;\n            transition: all 0.5s ease-in-out;\n        }\n\n        .custom-assessment-header {\n            padding-bottom: 25px; \n            border-bottom: 2px solid var(--cl-slate-100);\n            margin-bottom: 35px;\n            display: block !important;\n            visibility: visible !important;\n            opacity: 1 !important;\n        }\n\n        .meta-top-row {\n            display: flex; \n            justify-content: space-between; \n            align-items: center;\n            margin-bottom: 20px;\n            width: 100%;\n        }\n\n        .progress-indicator {\n            font-size: 1.1rem; font-weight: 900; color: var(--cl-navy-pure);\n            text-transform: uppercase; letter-spacing: 1px;\n        }\n\n        .progress-indicator span { color: var(--cl-teal); }\n\n        .timer-badge {\n            background: var(--cl-navy-dark); color: var(--cl-white);\n            padding: 10px 22px; border-radius: 14px; font-weight: 700;\n            display: flex; align-items: center; gap: 10px; border: 1px solid rgba(255,255,255,0.1);\n        }\n\n        .timer-badge.warning-state {\n            background: #ef4444; border-color: #ef4444;\n            animation: panicPulse 1s infinite alternate;\n        }\n\n        @keyframes panicPulse {\n            0% { transform: scale(1); } 100% { transform: scale(1.05); box-shadow: 0 0 15px rgba(239, 68, 68, 0.4); }\n        }\n\n        .quiz-progress-track {\n            width: 100%; height: 8px; background: var(--cl-slate-100); border-radius: 10px; overflow: hidden;\n        }\n        .quiz-progress-fill {\n            width: 4%; height: 100%; background: linear-gradient(90deg, var(--cl-teal), #06b6d4);\n            border-radius: 10px; transition: width 0.4s ease-in-out;\n        }\n\n        \/* --- GRAPHIC ELEMENTS --- *\/\n        .tally-graphic-box {\n            display: flex; gap: 15px; margin: 15px 0; background: var(--cl-slate-50);\n            padding: 15px; border-radius: 12px; width: max-content;\n        }\n        .tally-bundle { position: relative; display: flex; gap: 4px; padding-right: 5px; }\n        .tally-line { width: 4px; height: 35px; background: var(--cl-navy-pure); border-radius: 2px; }\n        .tally-slash {\n            position: absolute; width: 4px; height: 42px; background: var(--cl-orange);\n            left: 10px; top: -3px; transform: rotate(-65deg); transform-origin: top left; border-radius: 2px;\n        }\n\n        \/* --- QUESTION WORKSPACE --- *\/\n        .question-node-box h3 {\n            font-size: 0.85rem; color: var(--cl-teal); font-weight: 900;\n            text-transform: uppercase; letter-spacing: 2px; margin: 0 0 10px 0;\n            display: block !important;\n        }\n\n        .question-node-box h2 {\n            font-size: 1.45rem; color: var(--cl-navy-dark); font-weight: 800;\n            line-height: 1.5; margin: 0 0 30px 0;\n        }\n\n        .options-matrix-stack {\n            display: flex; flex-direction: column; gap: 16px; margin-bottom: 40px;\n        }\n\n        .option-label-card {\n            background: var(--cl-white); border: 2px solid var(--cl-slate-100);\n            border-radius: 18px; padding: 20px 25px; display: flex; align-items: center;\n            gap: 15px; cursor: pointer; transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n            position: relative;\n        }\n\n        .option-label-card:hover { border-color: var(--cl-teal); background: var(--cl-slate-50); transform: translateX(4px); }\n        .option-label-card input[type=\"radio\"] { appearance: none; -webkit-appearance: none; margin: 0; position: absolute; }\n        .custom-indicator-dot { width: 22px; height: 22px; border: 2px solid var(--cl-slate-400); border-radius: 50%; display: inline-block; flex-shrink: 0; position: relative; transition: all 0.2s ease; }\n        .option-label-card.selected-active { border-color: var(--cl-teal); background: rgba(20, 184, 166, 0.03); }\n        .option-label-card.selected-active .custom-indicator-dot { border-color: var(--cl-teal); background: var(--cl-teal); }\n        .option-label-card.selected-active .custom-indicator-dot::after { content: ''; width: 8px; height: 8px; background: var(--cl-white); border-radius: 50%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }\n        .option-text-val { font-size: 1.05rem; font-weight: 600; color: var(--cl-slate-700); }\n\n        \/* --- FOOTER CTAS --- *\/\n        .quiz-action-footer { display: flex; justify-content: flex-end; padding-top: 25px; border-top: 2px solid var(--cl-slate-100); }\n        \n        .next-step-trigger-btn {\n            padding: 16px 40px; font-family: 'Outfit', sans-serif; font-size: 1.1rem;\n            font-weight: 900; text-transform: uppercase; letter-spacing: 1px;\n            border: none; border-radius: 16px; cursor: not-allowed;\n            display: flex; align-items: center; gap: 12px;\n            background: var(--cl-slate-400); color: rgba(255, 255, 255, 0.6); transition: all 0.3s ease;\n        }\n\n        .next-step-trigger-btn.unlocked-ready { background: var(--cl-orange); color: var(--cl-white); cursor: pointer; box-shadow: 0 10px 20px rgba(249, 115, 22, 0.2); }\n        .next-step-trigger-btn.unlocked-ready.submit-state { background: var(--cl-teal); box-shadow: 0 10px 20px rgba(20, 184, 166, 0.2); }\n        .next-step-trigger-btn.unlocked-ready:hover { transform: translateY(-2px); filter: brightness(1.05); }\n        .next-step-trigger-btn i { transition: transform 0.2s ease; }\n        .next-step-trigger-btn.unlocked-ready:hover i { transform: translateX(4px); }\n\n        \/* --- DIAGNOSTIC SCORECARD LAYOUT --- *\/\n        .success-display-card { animation: fadeInHub 0.6s ease-out forwards; text-align: center; }\n        @keyframes fadeInHub { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } }\n        \n        .success-badge-icon {\n            width: 80px; height: 80px; background: rgba(20, 184, 166, 0.1); color: var(--cl-teal);\n            border-radius: 50%; display: flex; align-items: center; justify-content: center;\n            font-size: 2.5rem; margin: 0 auto 20px;\n        }\n\n        .success-display-card h2 { font-size: 2.2rem; color: var(--cl-navy-dark); font-weight: 900; margin: 0 0 10px 0; }\n        .success-display-card p { font-size: 1.05rem; color: var(--cl-slate-700); max-width: 650px; margin: 0 auto 30px; line-height: 1.6; }\n\n        .master-score-container {\n            background: linear-gradient(135deg, var(--cl-navy-dark) 0%, var(--cl-navy-pure) 100%);\n            border-radius: 24px; padding: 30px; margin-bottom: 35px; color: var(--cl-white);\n            display: flex; align-items: center; justify-content: space-around; text-align: left;\n        }\n\n        .score-circle {\n            width: 110px; height: 110px; border: 6px solid var(--cl-teal); border-radius: 50%;\n            display: flex; flex-direction: column; align-items: center; justify-content: center;\n            background: rgba(255,255,255,0.05); box-shadow: 0 0 20px rgba(20, 184, 166, 0.2);\n        }\n        .score-circle .big-num { font-size: 2rem; font-weight: 900; color: var(--cl-white); line-height: 1; }\n        .score-circle .small-lbl { font-size: 0.75rem; text-transform: uppercase; color: var(--cl-slate-400); font-weight: 700; margin-top: 4px; }\n\n        .master-meta-info h4 { margin: 0 0 5px 0; font-size: 1.3rem; font-weight: 900; }\n        .master-meta-info p { margin: 0; color: var(--cl-slate-400); font-size: 0.95rem; }\n\n        .metrics-breakdown-box { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; margin-bottom: 35px; text-align: left; }\n        .metric-block-card { background: var(--cl-slate-50); border: 1px solid var(--cl-slate-100); padding: 25px; border-radius: 20px; }\n        .metric-block-card h3 { margin: 0 0 20px 0; font-size: 1rem; text-transform: uppercase; letter-spacing: 1px; color: var(--cl-navy-pure); font-weight: 900; border-bottom: 2px solid var(--cl-slate-100); padding-bottom: 8px; }\n\n        .score-row-item { margin-bottom: 15px; }\n        .score-row-item:last-child { margin-bottom: 0; }\n        .row-item-meta { display: flex; justify-content: space-between; font-size: 0.9rem; font-weight: 700; margin-bottom: 6px; color: var(--cl-slate-700); }\n        \n        .progress-track-bg { width: 100%; height: 8px; background: var(--cl-slate-100); border-radius: 10px; overflow: hidden; }\n        .progress-fill-bar { height: 100%; border-radius: 10px; width: 0%; transition: width 1s ease-in-out; }\n        .progress-fill-bar.sec-color { background: var(--cl-teal); }\n        .progress-fill-bar.topic-color { background: var(--cl-orange); }\n\n        .primary-result-cta {\n            display: block; width: 100%; max-width: 450px; margin: 0 auto 10px;\n            padding: 18px 30px; background: var(--cl-teal); color: var(--cl-white);\n            border-radius: 18px; font-size: 1.2rem; font-weight: 900; text-transform: uppercase;\n            letter-spacing: 1px; text-decoration: none; border: none; cursor: pointer;\n            box-shadow: 0 12px 24px rgba(20, 184, 166, 0.25); transition: all 0.3s ease;\n        }\n        .primary-result-cta:hover { background: var(--cl-navy-pure); transform: translateY(-3px); }\n\n        \/* \ud83d\udea8 STEP 6: HIDE EXPANSION NOTICE HUB PANEL BY DEFAULT VIA CSS PROPERTYS *\/\n        #deliveryNoticeBox { \n            display: none; \n            font-size: 0.9rem; font-weight: 700; color: var(--cl-orange); margin: 15px auto 25px; text-transform: uppercase; letter-spacing: 0.5px; \n        }\n\n        .conversion-split-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; max-width: 600px; margin: 15px auto 0; padding-top: 30px; border-top: 1px solid var(--cl-slate-100); }\n        .secondary-conversion-btn { padding: 16px 25px; border-radius: 14px; font-size: 1rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.5px; text-decoration: none; display: flex; align-items: center; justify-content: center; gap: 10px; transition: all 0.3s ease; }\n        .secondary-conversion-btn.mentor-btn { background: var(--cl-slate-100); color: var(--cl-navy-pure); }\n        .secondary-conversion-btn.mentor-btn:hover { background: var(--white); box-shadow: 0 0 0 2px var(--cl-navy-pure); transform: translateY(-2px); }\n        .secondary-conversion-btn.enroll-btn { background: var(--cl-orange); color: var(--cl-white); box-shadow: 0 8px 16px rgba(249, 115, 22, 0.2); }\n        .secondary-conversion-btn.enroll-btn:hover { background: var(--cl-navy-dark); transform: translateY(-2px); }\n\n        @media (max-width: 768px) {\n            .quiz-wrapper { padding: 30px 20px; border-radius: 30px; }\n            .custom-assessment-header { padding-bottom: 15px; margin-bottom: 25px; }\n            .meta-top-row { flex-direction: column; gap: 15px; align-items: flex-start; }\n            .timer-badge { width: 100%; justify-content: center; box-sizing: border-box; }\n            .metrics-breakdown-box { grid-template-columns: 1fr; gap: 20px; }\n            .master-score-container { flex-direction: column; text-align: center; gap: 20px; }\n            .conversion-split-row { grid-template-columns: 1fr; gap: 15px; }\n        }\n    <\/style>\n<\/head>\n<body>\n\n<section id=\"cl-quiz-portal\">\n    <div class=\"quiz-wrapper\" id=\"coreHubShell\">\n        \n        <div id=\"activeQuizStateLayer\">\n            <div class=\"custom-assessment-header\" id=\"masterHeaderContainer\">\n                <div class=\"meta-top-row\">\n                    <div class=\"progress-indicator\">Question <span id=\"currentQuestionNum\">1<\/span> of <span id=\"totalQuestionsNum\">25<\/span> \u2014 <span id=\"currentTopicNum\">Topic<\/span><\/div>\n                    <div class=\"timer-badge\" id=\"timerBadge\">\n                        <i class=\"fa-solid fa-clock-rotate-left\"><\/i> <span id=\"timeClockVal\">30:00<\/span>\n                    <\/div>\n                <\/div>\n                <div class=\"quiz-progress-track\">\n                    <div class=\"quiz-progress-fill\" id=\"visualProgressBarFill\"><\/div>\n                <\/div>\n            <\/div>\n\n            <main id=\"questionWorkspaceNode\">\n                <\/main>\n\n            <footer class=\"quiz-action-footer\">\n                <button type=\"button\" id=\"nextQuestionBtn\" class=\"next-step-trigger-btn\" disabled=\"\">\n                    <span id=\"ctaBtnText\">Next Question<\/span>\n                    <i class=\"fa-solid fa-arrow-right-long\" id=\"ctaBtnIcon\"><\/i>\n                <\/button>\n            <\/footer>\n        <\/div>\n\n    <\/div>\n<\/section>\n\n<script>\n    document.addEventListener('DOMContentLoaded', () => {\n\n        \/\/ --- \ud83d\udd12 GLOBAL MENU ISOLATION PROTECTION ENGINE ---\n        const GlobalNavigationSelectors = [\n            'header:not(.custom-assessment-header)', 'nav:not(.custom-assessment-header)', \n            '.site-header', '#site-navigation', '.nav-container', '#top-menu', \n            '.main-header', '.navbar'\n        ];\n\n        function isolateAssessmentWorkspaceView(shouldHide) {\n            GlobalNavigationSelectors.forEach(selector => {\n                const DOMElements = document.querySelectorAll(selector);\n                DOMElements.forEach(element => {\n                    if (shouldHide) {\n                        element.style.setProperty('display', 'none', 'important');\n                    } else {\n                        element.style.removeProperty('display');\n                    }\n                });\n            });\n        }\n\n        isolateAssessmentWorkspaceView(true);\n\n        \/\/ --- EVALUATION QUESTIONS DATA POOL MATRIX ---\n        const EVALUATION_QUESTIONS = [\n            { id: 1, section: 1, topic: \"Mathematics\", answer: \"9\", text: \"What number comes next when counting: 5, 6, 7, 8, ___?\", choices: [\"10\", \"9\", \"7\", \"11\"] },\n            { id: 2, section: 1, topic: \"Mathematics\", answer: \"5\", text: \"If you have 3 apples and you get 2 more, how many apples do you have in total?\", choices: [\"4\", \"5\", \"6\", \"2\"] },\n            { id: 3, section: 1, topic: \"Mathematics\", answer: \"Triangle\", text: \"Which shape has exactly 3 sides and 3 corners?\", choices: [\"Square\", \"Circle\", \"Triangle\", \"Rectangle\"] },\n            { id: 4, section: 1, topic: \"Mathematics\", answer: \"7\", text: \"Count backwards to fill in the blank: 10, 9, 8, ___, 6.\", choices: [\"5\", \"7\", \"11\", \"4\"] },\n            { id: 5, section: 1, topic: \"Mathematics\", answer: \"Red\", text: \"Look at this pattern: Red, Blue, Red, Blue, ___ . What color comes next?\", choices: [\"Green\", \"Yellow\", \"Blue\", \"Red\"] },\n            { id: 6, section: 1, topic: \"Mathematics\", answer: \"9\", text: \"Which number is \\\"nine\\\"?\", choices: [\"6\", \"9\", \"19\", \"90\"] },\n            { id: 7, section: 1, topic: \"Mathematics\", answer: \"4\", text: \"There were 5 birds on a fence. 1 bird flew away. How many are left?\", choices: [\"4\", \"5\", \"6\", \"3\"] },\n            { id: 8, section: 1, topic: \"Logical Reasoning\", answer: \"A swimming pool\", text: \"Which of these holds the MOST water?\", choices: [\"A tea cup\", \"A spoon\", \"A swimming pool\", \"A water bottle\"] },\n            { id: 9, section: 1, topic: \"Mathematics\", answer: \"3\", text: \"Which number is smaller than 4?\", choices: [\"5\", \"6\", \"3\", \"8\"] },\n            { id: 10, section: 1, topic: \"Mathematics\", answer: \"5\", text: \"What number is exactly halfway between 4 and 6?\", choices: [\"3\", \"5\", \"7\", \"2\"] },\n            { id: 11, section: 2, topic: \"Mathematics\", answer: \"40\", text: \"What is the missing number in this skip-counting pattern? 10, 20, 30, ___, 50.\", choices: [\"35\", \"40\", \"60\", \"100\"] },\n            { id: 12, section: 2, topic: \"Mathematics\", answer: \"24\", text: \"I have 2 tens and 4 ones. What number am I?\", choices: [\"6\", \"42\", \"24\", \"204\"] },\n            { id: 13, section: 2, topic: \"Mathematics\", answer: \"8\", text: \"Emma had 12 stickers. She gave 4 stickers to her friend. How many stickers does Emma have left?\", choices: [\"8\", \"9\", \"16\", \"7\"] },\n            { id: 14, section: 2, topic: \"Analytical Skill\", answer: \"14, 21, 35, 42\", text: \"Which list of numbers is in order from SMALLEST to LARGEST?\", choices: [\"12, 19, 15, 21\", \"10, 20, 15, 30\", \"14, 21, 35, 42\", \"40, 30, 20, 10\"] },\n            { id: 15, section: 2, topic: \"Analytical Skill\", answer: \"2\", text: \"If you cut a whole pizza exactly in half, how many equal pieces do you have?\", choices: [\"1\", \"2\", \"3\", \"4\"] },\n            { id: 16, section: 2, topic: \"Mathematics\", answer: \"3\", text: \"What number makes this number fact true? 7 + ___ = 10\", choices: [\"2\", \"4\", \"3\", \"5\"] },\n            { id: 17, section: 2, topic: \"Analytical Skill\", answer: \"3 blocks\", text: \"A pencil is 5 blocks long. A book is 8 blocks long. How much longer is the book than the pencil?\", choices: [\"2 blocks\", \"3 blocks\", \"13 blocks\", \"4 blocks\"] },\n            { id: 18, section: 2, topic: \"Logical Reasoning\", answer: \"3 o'clock\", text: \"On a clock, the long hand is pointing to the 12 and the short hand is pointing to the 3. What time is it?\", choices: [\"12 o'clock\", \"Half past 3\", \"3 o'clock\", \"Half past 12\"] },\n            { id: 19, section: 2, topic: \"Logical Reasoning\", answer: \"Sphere\", text: \"Which of these shapes can roll easily like a ball?\", choices: [\"Cube (Box)\", \"Pyramid\", \"Sphere\", \"Cylinder (standing on its flat end)\"] },\n            { id: 20, section: 2, topic: \"Analytical Skill\", isTally: true, answer: \"6\", text: \"Tally marks are used to count. What number does this group of tally marks show?\", choices: [\"5\", \"6\", \"7\", \"8\"] },\n            { id: 21, section: 3, topic: \"Analytical Skill\", answer: \"Mia\", text: \"Leo is taller than Mia. Sam is taller than Leo. Who is the shortest?\", choices: [\"Leo\", \"Mia\", \"Sam\", \"They are all the same height.\"] },\n            { id: 22, section: 3, topic: \"Logical Reasoning\", answer: \"6\", text: \"Follow the rule to find the secret number. Start at 5. Add 2. Then subtract 1. What is the final number?\", choices: [\"8\", \"4\", \"6\", \"7\"] },\n            { id: 23, section: 3, topic: \"Logical Reasoning\", answer: \"Wednesday\", text: \"Today is Tuesday. What day of the week will it be in exactly 8 days?\", choices: [\"Tuesday\", \"Wednesday\", \"Monday\", \"Thursday\"] },\n            { id: 24, section: 3, topic: \"Logical Reasoning\", answer: \"2\", text: \"There are 3 children riding bikes. Some are on normal bicycles (2 wheels) and some are on tricycles (3 wheels). You count 7 wheels in total. How many normal bicycles are there?\", choices: [\"1\", \"2\", \"3\", \"0\"] },\n            { id: 25, section: 3, topic: \"Analytical Skill\", answer: \"Blue\", text: \"There are 3 blocks stacked in a tower: a Red block on the bottom, a Blue block in the middle, and a Green block on top. You take the bottom block and place it exactly on top of the tower. Which block is now on the bottom?\", choices: [\"Red\", \"Blue\", \"Green\", \"None of them\"] }\n        ];\n\n        let currentQuestionIndex = 0;\n        let chosenResponsesLog = [];\n        let clockSecondsRemaining = 30 * 60;\n        let countdownTimerReference = null;\n\n        let s1Correct = 0, s2Correct = 0, s3Correct = 0;\n        let mathCorrect = 0, analyticalCorrect = 0, logicalCorrect = 0;\n\n        const shellBox = document.getElementById('coreHubShell');\n        const workspace = document.getElementById('questionWorkspaceNode');\n        \n        const currentQNumDisplay = document.getElementById('currentQuestionNum');\n        const totalQNumDisplay = document.getElementById('totalQuestionsNum');\n        const currentTopicDisplay = document.getElementById('currentTopicNum');\n        const visualBarFill = document.getElementById('visualProgressBarFill');\n        \n        const timeDisplay = document.getElementById('timeClockVal');\n        const nextCta = document.getElementById('nextQuestionBtn');\n        const ctaText = document.getElementById('ctaBtnText');\n        const ctaIcon = document.getElementById('ctaBtnIcon');\n\n        totalQNumDisplay.innerText = EVALUATION_QUESTIONS.length;\n\n        function startTimer() {\n            countdownTimerReference = setInterval(() => {\n                clockSecondsRemaining--;\n                let mins = Math.floor(clockSecondsRemaining \/ 60);\n                let secs = Math.floor(clockSecondsRemaining % 60);\n                \n                timeDisplay.innerText = `${mins < 10 ? '0' : ''}${mins}:${secs < 10 ? '0' : ''}${secs}`;\n                \n                if (clockSecondsRemaining <= 300) document.getElementById('timerBadge').classList.add('warning-state');\n                if (clockSecondsRemaining <= 0) { clearInterval(countdownTimerReference); submitQuiz(); }\n            }, 1000);\n        }\n\n        function renderQuestion() {\n            nextCta.setAttribute('disabled', 'true');\n            nextCta.classList.remove('unlocked-ready');\n\n            const qData = EVALUATION_QUESTIONS[currentQuestionIndex];\n            \n            currentQNumDisplay.innerText = currentQuestionIndex + 1;\n            currentTopicDisplay.innerText = qData.topic;\n\n            const liveProgressPercent = Math.round(((currentQuestionIndex + 1) \/ EVALUATION_QUESTIONS.length) * 100);\n            visualBarFill.style.width = `${liveProgressPercent}%`;\n\n            if (currentQuestionIndex === EVALUATION_QUESTIONS.length - 1) {\n                ctaText.innerText = \"Submit Assessment\";\n                nextCta.classList.add('submit-state');\n                ctaIcon.className = \"fa-solid fa-circle-check\";\n            } else {\n                ctaText.innerText = \"Next Question\";\n                nextCta.classList.remove('submit-state');\n                ctaIcon.className = \"fa-solid fa-arrow-right-long\";\n            }\n\n            let optionsHTML = '';\n            qData.choices.forEach(choice => {\n                optionsHTML += `\n                    <label class=\"option-label-card\">\n                        <input type=\"radio\" name=\"mcqOption\" value=\"${choice}\">\n                        <span class=\"custom-indicator-dot\"><\/span>\n                        <span class=\"option-text-val\">${choice}<\/span>\n                    <\/label>\n                `;\n            });\n\n            let assetHTML = '';\n            if (qData.isTally) {\n                assetHTML = `\n                    <div class=\"tally-graphic-box\">\n                        <div class=\"tally-bundle\"><div class=\"tally-line\"><\/div><div class=\"tally-line\"><\/div><div class=\"tally-line\"><\/div><div class=\"tally-line\"><\/div><div class=\"tally-slash\"><\/div><\/div>\n                        <div class=\"tally-bundle\"><div class=\"tally-line\"><\/div><div class=\"tally-line\"><\/div><\/div>\n                    <\/div>\n                `;\n            }\n\n            workspace.innerHTML = `\n                <div class=\"question-node-box\">\n                    <h3>Section ${qData.section}<\/h3>\n                    <h2>${qData.id}. ${qData.text}<\/h2>\n                    ${assetHTML}\n                    <div class=\"options-matrix-stack\">${optionsHTML}<\/div>\n                <\/div>\n            `;\n\n            const cards = workspace.querySelectorAll('.option-label-card');\n            cards.forEach(card => {\n                card.addEventListener('click', function() {\n                    cards.forEach(c => c.classList.remove('selected-active'));\n                    this.classList.add('selected-active');\n                    this.querySelector('input').checked = true;\n                    nextCta.removeAttribute('disabled');\n                    nextCta.classList.add('unlocked-ready');\n                });\n            });\n        }\n\n        nextCta.addEventListener('click', () => {\n            const checkedNode = workspace.querySelector('input[name=\"mcqOption\"]:checked');\n            const selectedVal = checkedNode.value;\n            const currentQ = EVALUATION_QUESTIONS[currentQuestionIndex];\n\n            if (selectedVal === currentQ.answer) {\n                if (currentQ.section === 1) s1Correct++;\n                else if (currentQ.section === 2) s2Correct++;\n                else if (currentQ.section === 3) s3Correct++;\n\n                if (currentQ.topic === \"Mathematics\") mathCorrect++;\n                else if (currentQ.topic === \"Analytical Skill\") analyticalCorrect++;\n                else if (currentQ.topic === \"Logical Reasoning\") logicalCorrect++;\n            }\n\n            chosenResponsesLog.push({ questionId: currentQ.id, selectedAnswer: selectedVal });\n\n            if (currentQuestionIndex < EVALUATION_QUESTIONS.length - 1) {\n                currentQuestionIndex++; renderQuestion();\n            } else {\n                submitQuiz();\n            }\n        });\n\n        async function submitQuiz() {\n            clearInterval(countdownTimerReference);\n            \n            document.getElementById('masterHeaderContainer').style.display = 'none';\n\n            workspace.innerHTML = `\n                <div style=\"text-align:center; padding: 50px 0;\">\n                    <i class=\"fa-solid fa-circle-notch fa-spin\" style=\"font-size:3.5rem; color:var(--cl-teal); margin-bottom:20px;\"><\/i>\n                    <h2 style=\"color:var(--cl-navy-dark); font-weight:900;\">Processing Assessment Analytics...<\/h2>\n                    <p style=\"color:var(--cl-slate-400);\">Please wait while our engine compiles performance scores and runs data diagnostics.<\/p>\n                <\/div>\n            `;\n            nextCta.style.display = 'none';\n\n            const BACKEND_API_URL = \"https:\/\/diagnostic-backend-jmsu.onrender.com\/api\/assessment-submit\";\n            const CONTACT_MENTOR_URL = \"https:\/\/wa.me\/919251230015\";\n            const ENROL_NOW_URL = \"\"; \n\n            const totalCorrect = s1Correct + s2Correct + s3Correct;\n            const overallPercent = Math.round((totalCorrect \/ 25) * 100);\n            \n            const s1Percent = Math.round((s1Correct \/ 10) * 100);\n            const s2Percent = Math.round((s2Correct \/ 10) * 100);\n            const s3Percent = Math.round((s3Correct \/ 5) * 100);\n\n            const mathPercent = Math.round((mathCorrect \/ 13) * 100);\n            const analyticalPercent = Math.round((analyticalCorrect \/ 6) * 100);\n            const logicalPercent = Math.round((logicalCorrect \/ 6) * 100);\n\n            try {\n                const studentId = localStorage.getItem(\"studentId\");\n                await fetch(BACKEND_API_URL, {\n                    method: 'POST',\n                    headers: { 'Content-Type': 'application\/json' },\n                    body: JSON.stringify({\n                        studentId: studentId,\n                        answers: chosenResponsesLog,\n                        gradeGroup: \"Year 1-2\"\n                    })\n                });\n                renderSuccessHubState();\n            } catch (err) {\n                console.error(\"API Error:\", err);\n                renderSuccessHubState();\n            }\n\n            function renderSuccessHubState() {\n                isolateAssessmentWorkspaceView(false);\n\n                \/\/ \ud83c\udf1f STEP 5: KEEPING CORE TARGET HTML WRAPPERS INTACT\n                shellBox.innerHTML = `\n                    <div class=\"success-display-card\">\n                        <div class=\"success-badge-icon\"><i class=\"fa-solid fa-trophy\"><\/i><\/div>\n                        <h2>Congratulations!<\/h2>\n                        <p>You have successfully completed the Diagnostic Evaluation. Your results have been computed across curriculum categories below.<\/p>\n                        \n                        <div class=\"master-score-container\" style=\"display: none;\">\n                            <div class=\"score-circle\">\n                                <span class=\"big-num\">${overallPercent}%<\/span>\n                                <span class=\"small-lbl\">Overall<\/span>\n                            <\/div>\n                            <div class=\"master-meta-info\">\n                                <h4>Diagnostic Scorecard<\/h4>\n                                <p>Total Correct Answers: ${totalCorrect} \/ 25<\/p>\n                                <p>Status: Analysis Confirmed & Saved<\/p>\n                            <\/div>\n                        <\/div>\n\n                        <div class=\"metrics-breakdown-box\" style=\"display: none;\">\n                            <div class=\"metric-block-card\">\n                                <h3>Section Performance<\/h3>\n                                <div class=\"score-row-item\">\n                                    <div class=\"row-item-meta\"><span>Section 1 (Foundational)<\/span><span>${s1Percent}%<\/span><\/div>\n                                    <div class=\"progress-track-bg\"><div class=\"progress-fill-bar sec-color\" style=\"width: ${s1Percent}%\"><\/div><\/div>\n                                <\/div>\n                                <div class=\"score-row-item\">\n                                    <div class=\"row-item-meta\"><span>Section 2 (Above Average)<\/span><span>${s2Percent}%<\/span><\/div>\n                                    <div class=\"progress-track-bg\"><div class=\"progress-fill-bar sec-color\" style=\"width: ${s2Percent}%\"><\/div><\/div>\n                                <\/div>\n                                <div class=\"score-row-item\">\n                                    <div class=\"row-item-meta\"><span>Section 3 (Exceptional)<\/span><span>${s3Percent}%<\/span><\/div>\n                                    <div class=\"progress-track-bg\"><div class=\"progress-fill-bar sec-color\" style=\"width: ${s3Percent}%\"><\/div><\/div>\n                                <\/div>\n                            <\/div>\n\n                            <div class=\"metric-block-card\">\n                                <h3>Topic Performance<\/h3>\n                                <div class=\"score-row-item\">\n                                    <div class=\"row-item-meta\"><span>Mathematics (Core Skills)<\/span><span>${mathPercent}%<\/span><\/div>\n                                    <div class=\"progress-track-bg\"><div class=\"progress-fill-bar topic-color\" style=\"width: ${mathPercent}%\"><\/div><\/div>\n                                <\/div>\n                                <div class=\"score-row-item\">\n                                    <div class=\"row-item-meta\"><span>Analytical Skill<\/span><span>${analyticalPercent}%<\/span><\/div>\n                                    <div class=\"progress-track-bg\"><div class=\"progress-fill-bar topic-color\" style=\"width: ${analyticalPercent}%\"><\/div><\/div>\n                                <\/div>\n                                <div class=\"score-row-item\">\n                                    <div class=\"row-item-meta\"><span>Logical Reasoning<\/span><span>${logicalPercent}%<\/span><\/div>\n                                    <div class=\"progress-track-bg\"><div class=\"progress-fill-bar topic-color\" style=\"width: ${logicalPercent}%\"><\/div><\/div>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n\n                        <button type=\"button\" id=\"getReportBtnTrigger\" class=\"primary-result-cta\">\n                            <i class=\"fa-solid fa-envelope-open-text\" style=\"margin-right:10px;\"><\/i> Get Report & AI Analysis\n                        <\/button>\n                        \n                        <div class=\"email-delivery-notice-msg\" id=\"deliveryNoticeBox\">\n                            <i class=\"fa-solid fa-bell\" style=\"margin-right:8px;\"><\/i> Your comprehensive analysis will arrive on your registered email within 6 hours.\n                        <\/div>\n                        \n                        <div class=\"conversion-split-row\">\n                            <a href=\"${CONTACT_MENTOR_URL}\" target=\"_blank\" class=\"secondary-conversion-btn mentor-btn\">\n                                <i class=\"fa-brands fa-whatsapp\" style=\"font-size:1.2rem; color:#25D366;\"><\/i> Contact Expert Mentor\n                            <\/a>\n                            <a href=\"${ENROL_NOW_URL !== \"\" ? ENROL_NOW_URL : '#'}\" class=\"secondary-conversion-btn enroll-btn\" id=\"enrollCtaNode\">\n                                <i class=\"fa-solid fa-graduation-cap\"><\/i> Enrol Now\n                            <\/a>\n                        <\/div>\n                    <\/div>\n                `;\n\n                \/\/ \ud83c\udf1f STEP 3: PASTE THE NEW SIMPLIFIED ENGINE HANDLER\n                document.getElementById('getReportBtnTrigger').addEventListener('click', async function () {\n\n                    const studentId = localStorage.getItem('studentId');\n\n                    console.log(\"Student ID:\", studentId);\n\n                    if (!studentId) {\n                        alert('Student ID not found. Please register again.');\n                        return;\n                    }\n\n                    try {\n\n                        this.innerHTML = 'Generating Report...';\n                        this.disabled = true;\n\n                        const response = await fetch(\n                            `https:\/\/diagnostic-backend-jmsu.onrender.com\/api\/assessment-latest-report?sessionId=${studentId}`\n                        );\n\n                        const result = await response.json();\n\n                        console.log(\"REPORT DATA:\", result);\n\n                        if (!result.success) {\n\n                            alert(result.message || 'Report not found');\n\n                            this.disabled = false;\n                            this.innerHTML = 'Get Report & AI Analysis';\n\n                            return;\n                        }\n\n                        document.getElementById('deliveryNoticeBox').style.display = 'block';\n\n                        this.innerHTML = 'REPORT REQUEST SENT';\n\n                    } catch (error) {\n\n                        console.error(error);\n\n                        alert('Failed to connect to report server.');\n\n                        this.disabled = false;\n                        this.innerHTML = 'Get Report & AI Analysis';\n                    }\n                });\n\n                document.getElementById('enrollCtaNode').addEventListener('click', function(e) {\n                    if (ENROL_NOW_URL === \"\") { e.preventDefault(); alert(\"Enrolment module placeholder activated. Configure the 'ENROL_NOW_URL' path later.\"); }\n                });\n            }\n        }\n\n        startTimer();\n        renderQuestion();\n    });\n<\/script>\n\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>Curious Learner Academy &#8211; Diagnostic Evaluation Hub Question 1 of 25 \u2014 Topic 30:00 Next Question<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-708","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"curiouslearneroffice@gmail.com","author_link":"https:\/\/curiouslearneracademy.com\/newzealand\/author\/curiouslearnerofficegmail-com\/"},"uagb_comment_info":0,"uagb_excerpt":"Curious Learner Academy &#8211; Diagnostic Evaluation Hub Question 1 of 25 \u2014 Topic 30:00 Next Question","_links":{"self":[{"href":"https:\/\/curiouslearneracademy.com\/newzealand\/wp-json\/wp\/v2\/pages\/708","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/curiouslearneracademy.com\/newzealand\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/curiouslearneracademy.com\/newzealand\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/curiouslearneracademy.com\/newzealand\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/curiouslearneracademy.com\/newzealand\/wp-json\/wp\/v2\/comments?post=708"}],"version-history":[{"count":14,"href":"https:\/\/curiouslearneracademy.com\/newzealand\/wp-json\/wp\/v2\/pages\/708\/revisions"}],"predecessor-version":[{"id":774,"href":"https:\/\/curiouslearneracademy.com\/newzealand\/wp-json\/wp\/v2\/pages\/708\/revisions\/774"}],"wp:attachment":[{"href":"https:\/\/curiouslearneracademy.com\/newzealand\/wp-json\/wp\/v2\/media?parent=708"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}