{"id":225,"date":"2026-11-10T04:00:53","date_gmt":"2026-11-10T04:00:53","guid":{"rendered":"https:\/\/chielio.com\/?page_id=225"},"modified":"2026-11-10T22:47:32","modified_gmt":"2026-11-10T22:47:32","slug":"chielio-gedachten-carrousel","status":"publish","type":"page","link":"https:\/\/chielio.com\/?page_id=225","title":{"rendered":"Chielio&#8217;s Mentale Steunpilaar GPT beta 0.93"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"nl\" class=\"dark\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Chielio&#8217;s Mentale Steunpilaar GPT \u2014 Quantum Denken &#038; Liefdevolle Psychologie<\/title>\n    <!-- Tailwind CSS -->\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n    <!-- Google Fonts: Cormorant Garamond & Inter -->\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,400;1,600&#038;family=Inter:wght@300;400;500;600;700&#038;display=swap\" rel=\"stylesheet\">\n\n    <script>\n        tailwind.config = {\n            darkMode: 'class',\n            theme: {\n                extend: {\n                    colors: {\n                        obsidian: '#080C0A',\n                        anthracite: '#121815',\n                        forest: '#0F1C16',\n                        gold: {\n                            DEFAULT: '#D4AF37',\n                            light: '#E6C65A',\n                            dark: '#A68521'\n                        },\n                        ivory: '#F4F1EA',\n                        sage: '#9EAAA4'\n                    },\n                    fontFamily: {\n                        serif: ['\"Cormorant Garamond\"', 'Georgia', 'serif'],\n                        sans: ['\"Inter\"', 'system-ui', 'sans-serif']\n                    }\n                }\n            }\n        };\n    <\/script>\n\n    <style>\n        \/* Self-contained Studio Styling for Chielio.com compatibility *\/\n        :root {\n            color-scheme: dark;\n        }\n        body {\n            background-color: #080C0A;\n            color: #F4F1EA;\n            font-family: 'Inter', system-ui, -apple-system, sans-serif;\n            background-image: \n                radial-gradient(circle at 12% 15%, rgba(15, 28, 22, 0.85) 0%, transparent 45%),\n                radial-gradient(circle at 88% 82%, rgba(212, 175, 55, 0.08) 0%, transparent 50%),\n                radial-gradient(circle at 50% 0%, rgba(212, 175, 55, 0.06) 0%, transparent 40%);\n            background-attachment: fixed;\n            margin: 0;\n            padding: 0;\n            overflow-x: hidden;\n        }\n\n        .glass-panel {\n            background: rgba(18, 24, 21, 0.82);\n            backdrop-filter: blur(12px);\n            -webkit-backdrop-filter: blur(12px);\n            border: 1px solid rgba(212, 175, 55, 0.2);\n        }\n\n        .glass-panel-forest {\n            background: linear-gradient(145deg, rgba(15, 28, 22, 0.88), rgba(8, 12, 10, 0.94));\n            border: 1px solid rgba(212, 175, 55, 0.26);\n        }\n\n        .gold-border-glow {\n            box-shadow: 0 0 24px -6px rgba(212, 175, 55, 0.18);\n        }\n\n        ::-webkit-scrollbar {\n            width: 6px;\n            height: 6px;\n        }\n        ::-webkit-scrollbar-track {\n            background: #080C0A;\n        }\n        ::-webkit-scrollbar-thumb {\n            background: rgba(212, 175, 55, 0.32);\n            border-radius: 9999px;\n        }\n        ::-webkit-scrollbar-thumb:hover {\n            background: rgba(212, 175, 55, 0.58);\n        }\n\n        @keyframes spinSlow {\n            from { transform: rotate(0deg); }\n            to { transform: rotate(360deg); }\n        }\n        .spin-loader {\n            animation: spinSlow 1.1s linear infinite;\n        }\n\n        \/* Maximale Leesbaarheid Typografie Schalen voor het Antwoordenveld *\/\n        .answer-zoom-normal {\n            font-size: 1.05rem;\n            line-height: 1.78;\n        }\n        .answer-zoom-large {\n            font-size: 1.18rem;\n            line-height: 1.85;\n        }\n        .answer-zoom-xlarge {\n            font-size: 1.32rem;\n            line-height: 1.92;\n        }\n    <\/style>\n<\/head>\n<body class=\"min-h-screen flex flex-col selection:bg-gold selection:text-obsidian\">\n\n    <!-- 1. TOP-OF-PAGE MANDATORY BIG-PSYCHOLOOG DISCLAIMER BANNER -->\n    <div role=\"region\" aria-label=\"Medische en Psychologische Disclaimer\" class=\"bg-gradient-to-r from-amber-950\/95 via-[#1C140E] to-amber-950\/95 border-b border-amber-500\/45 px-3 sm:px-6 lg:px-8 py-2.5 text-xs text-ivory\/95\">\n        <div class=\"max-w-[1800px] mx-auto flex flex-col md:flex-row items-start md:items-center justify-between gap-2\">\n            <div class=\"flex items-start sm:items-center gap-2.5\">\n                <span class=\"px-2 py-0.5 rounded bg-amber-500\/20 border border-amber-400\/50 text-amber-300 font-semibold uppercase tracking-wider text-[10px] shrink-0 flex items-center gap-1 mt-0.5 sm:mt-0\">\n                    \u26a0\ufe0f BIG-Disclaimer\n                <\/span>\n                <p class=\"leading-snug text-[11px] sm:text-xs text-ivory\/90\">\n                    <strong class=\"text-amber-200\">Geen vervanging voor een echte BIG-geregistreerde psycholoog:<\/strong> Chielio&#8217;s Mentale Steunpilaar GPT biedt AI-zelfreflectie en filosofische inspiratie. De gegenereerde antwoorden kunnen <strong class=\"text-amber-200 underline decoration-amber-400\/60\">contraproductief zijn voor jouw specifieke situatie<\/strong>. Raadpleeg bij psychische klachten of twijfel altijd je huisarts of een BIG-geregistreerde zorgprofessional.\n                <\/p>\n            <\/div>\n            <div class=\"hidden sm:flex items-center gap-2 shrink-0 self-end md:self-center text-[11px]\">\n                <span class=\"text-amber-200\/80 hidden xl:inline\">Directe crisis? Bel <strong>113<\/strong> of <strong>0800-0113<\/strong><\/span>\n                <button type=\"button\" onclick=\"ChielioApp.endInteractionWithDisclaimer()\" class=\"px-2.5 py-1 rounded-lg bg-amber-500\/20 hover:bg-amber-500\/35 border border-amber-400\/45 text-amber-200 font-medium transition-all flex items-center gap-1\">\n                    <span>\ud83d\udee1\ufe0f Interactie Afronden<\/span>\n                <\/button>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <!-- 2. TOP STUDIO HEADER (GEEN ZWEVEND\/STICKY VLAK MEER OP MOBIEL VOOR MAXIMALE RUST & OVERZICHT) -->\n    <header class=\"relative glass-panel border-b border-gold\/25 px-3 sm:px-6 lg:px-8 py-3\">\n        <div class=\"max-w-[1800px] mx-auto flex flex-col lg:flex-row items-start lg:items-center justify-between gap-3\">\n            <!-- Brand Title & Logo -->\n            <div class=\"flex items-center gap-3 w-full lg:w-auto justify-between lg:justify-start\">\n                <div class=\"flex items-center gap-3\">\n                    <div class=\"w-9 h-9 sm:w-10 sm:h-10 rounded-xl bg-gradient-to-br from-gold\/30 via-forest to-obsidian border border-gold\/50 flex items-center justify-center shadow-lg gold-border-glow shrink-0 text-gold-light text-base sm:text-lg\">\n                        \ud83c\udfb6\n                    <\/div>\n                    <div>\n                        <div class=\"flex items-center gap-2 flex-wrap\">\n                            <h1 class=\"font-serif text-lg sm:text-2xl font-bold tracking-wide text-ivory leading-tight\">\n                                Chielio&#8217;s Mentale Steunpilaar <span class=\"text-gold font-normal italic\">GPT<\/span>\n                            <\/h1>\n                            <span class=\"hidden sm:inline-block text-[11px] uppercase tracking-widest px-2.5 py-0.5 rounded-full bg-gold\/15 text-gold-light border border-gold\/30 font-medium\">\n                                Chielio.Com Componist\n                            <\/span>\n                            <span id=\"status-health-badge\" class=\"hidden md:inline-block text-[10px] px-2 py-0.5 rounded-full bg-emerald-500\/15 text-emerald-300 border border-emerald-400\/30 font-medium\">\n                                \u25cf Zero-Freeze Actief\n                            <\/span>\n                        <\/div>\n                        <p class=\"text-[11px] sm:text-xs text-sage font-light italic font-serif tracking-wide\">\n                            Stap 1: Concrete Wereldse AI-Psycholoog \u2022 Stap 2: Quantum Denken &#038; Liefde\n                        <\/p>\n                    <\/div>\n                <\/div>\n\n                <!-- Mobiele Snelkoppeling naar Verplaatste Tools onderaan -->\n                <a href=\"#mobile-tools-dock\" class=\"lg:hidden px-2.5 py-1.5 rounded-xl bg-obsidian\/90 border border-gold\/35 text-[11px] text-gold-light font-medium shrink-0 flex items-center gap-1\">\n                    <span>\ud83e\udded Tools<\/span>\n                    <span>\u2193<\/span>\n                <\/a>\n            <\/div>\n\n            <!-- Desktop Quick Actions (Op mobiel verplaatst naar de rustige sectie onderaan de pagina) -->\n            <div class=\"hidden lg:flex items-center gap-2 self-end lg:self-center flex-wrap\">\n                <!-- Toggle Zijpanelen \/ Maximale Leesmodus -->\n                <button type=\"button\" onclick=\"ChielioApp.toggleMaxReadingMode()\" id=\"max-reading-btn\" class=\"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-gold\/20 hover:bg-gold\/30 border border-gold\/50 text-xs text-gold-light font-semibold transition-all shadow-sm\" title=\"Zijpanelen tonen of verbergen voor een maximaal antwoordenveld\">\n                    <span>\ud83d\udd0d Zijpanelen Tonen (Kompas &#038; Quantum Tools)<\/span>\n                <\/button>\n\n                <!-- Mode Switcher: 2-Staps vs Focus Praktisch -->\n                <div class=\"flex items-center bg-obsidian\/90 p-1 rounded-xl border border-gold\/30 text-xs\">\n                    <button type=\"button\" onclick=\"ChielioApp.setResponseMode('tweestaps')\" id=\"mode-btn-tweestaps\" class=\"px-2.5 py-1 rounded-lg bg-gold text-obsidian font-semibold transition-all flex items-center gap-1\">\n                        <span>\ud83e\udde0 + \u2728 2-Staps<\/span>\n                    <\/button>\n                    <button type=\"button\" onclick=\"ChielioApp.setResponseMode('praktisch')\" id=\"mode-btn-praktisch\" class=\"px-2.5 py-1 rounded-lg text-sage hover:text-ivory transition-all flex items-center gap-1\">\n                        <span>Focus Praktisch<\/span>\n                    <\/button>\n                <\/div>\n\n                <button type=\"button\" onclick=\"ChielioApp.openDebugModal()\" class=\"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-emerald-950\/80 hover:bg-emerald-900\/80 border border-emerald-400\/40 text-xs text-emerald-200 transition-all\" title=\"Chielio.com Debug &#038; Embed Console\">\n                    <span>\ud83d\udee0\ufe0f Debug &#038; Embed<\/span>\n                <\/button>\n\n                <button type=\"button\" onclick=\"ChielioApp.openKnowledgeModal()\" class=\"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-anthracite hover:bg-gold\/20 border border-gold\/30 text-xs text-gold-light transition-all\" title=\"Bekijk alle concepten uit de PDF\">\n                    <span>\ud83d\udcd6 Manifest<\/span>\n                <\/button>\n\n                <button type=\"button\" onclick=\"ChielioApp.exportLovingAgreement()\" class=\"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-gold text-obsidian font-semibold hover:bg-gold-light text-xs transition-all shadow-md\">\n                    <span>\ud83d\udc9b Samen Afspraak Maken<\/span>\n                <\/button>\n            <\/div>\n        <\/div>\n    <\/header>\n\n    <!-- 3. MAIN WORKSPACE: STANDAARD MAXIMAAL BREED VOOR OPTIMALE LEESBAARHEID -->\n    <main id=\"workspace-grid\" class=\"flex-1 max-w-[1800px] w-full mx-auto px-2.5 sm:px-6 lg:px-8 py-3 sm:py-4 grid grid-cols-1 lg:grid-cols-12 gap-4 sm:gap-5 items-start\">\n        <\/div>\n    <\/header>\n\n    <!-- 3. MAIN WORKSPACE: STANDAARD MAXIMAAL BREED VOOR OPTIMALE LEESBAARHEID -->\n    <main id=\"workspace-grid\" class=\"flex-1 max-w-[1800px] w-full mx-auto px-3 sm:px-6 lg:px-8 py-4 grid grid-cols-1 lg:grid-cols-12 gap-5 items-start\">\n\n        <!-- LEFT PANEL: INTERACTIEVE QUANTUM & PSYCHOLOGIE KOMPAS (STANDAARD INGEKLAPT VOOR MAXIMAAL ANTWOORDENVELD) -->\n        <aside id=\"panel-kompas\" class=\"hidden flex-col gap-4 lg:col-span-3\">\n            \n            <!-- 1. Plutchik's 8 Primaire Emoties Kiezer -->\n            <section class=\"glass-panel rounded-2xl p-4 gold-border-glow\">\n                <div class=\"flex items-center justify-between mb-2\">\n                    <h2 class=\"font-serif text-lg font-semibold text-gold-light flex items-center gap-2\">\n                        <span>\ud83d\udd25 Onze Emoties (Plutchik)<\/span>\n                    <\/h2>\n                    <span class=\"text-[11px] text-sage\">Kies 1 of 2<\/span>\n                <\/div>\n                <p class=\"text-xs text-sage mb-3 leading-relaxed\">\n                    Een emotie is een gevoel bij een gedachte. Combineer twee primaire emoties of ontdek hoe <strong class=\"text-gold-light\">Vreugde + Vertrouwen = Liefde<\/strong> vormt.\n                <\/p>\n\n                <!-- 8 Emotion Buttons Grid -->\n                <div class=\"grid grid-cols-2 gap-1.5 mb-3\" id=\"plutchik-grid\"><\/div>\n\n                <!-- Dynamic Emotion Blend Result Box -->\n                <div id=\"plutchik-result\" class=\"rounded-xl p-3 bg-forest\/70 border border-gold\/30 text-xs space-y-2\">\n                    <div class=\"flex items-center justify-between gap-2\">\n                        <span class=\"font-semibold text-gold-light\" id=\"blend-title\">Vreugde + Vertrouwen = Liefde \ud83d\udc9b<\/span>\n                        <button type=\"button\" onclick=\"ChielioApp.sendEmotionToChat()\" class=\"text-[11px] underline text-gold hover:text-ivory shrink-0 font-medium\">\n                            Bespreek in Chat \u2192\n                        <\/button>\n                    <\/div>\n                    <p id=\"blend-desc\" class=\"text-ivory\/90 text-[11px] leading-relaxed\"><\/p>\n                <\/div>\n            <\/section>\n\n            <!-- 2. Concrete Situaties & De 7 Uitvraag-Pijlers -->\n            <section class=\"glass-panel rounded-2xl p-4\">\n                <div class=\"flex items-center justify-between mb-2\">\n                    <h2 class=\"font-serif text-lg font-semibold text-gold-light flex items-center gap-2\">\n                        <span>\ud83e\udded Uitvraag-Kompas &#038; Situaties<\/span>\n                    <\/h2>\n                <\/div>\n                <p class=\"text-xs text-sage mb-2.5\">\n                    Kies een herkenbare dagelijkse vraag of pijler voor een <strong>Stap 1 (Werelds) + Stap 2 (Quantum)<\/strong> antwoord:\n                <\/p>\n                <div class=\"space-y-1.5\" id=\"pillars-list\"><\/div>\n            <\/section>\n\n            <!-- 3. Spreekwoorden & Universele Waarheden Carousel -->\n            <section class=\"glass-panel-forest rounded-2xl p-4 border border-gold\/25\">\n                <div class=\"flex items-center justify-between mb-1.5\">\n                    <span class=\"text-[11px] uppercase tracking-widest text-gold font-semibold\">Universele Waarheid<\/span>\n                    <button type=\"button\" onclick=\"ChielioApp.nextProverb()\" class=\"text-xs text-sage hover:text-gold transition-colors px-2 py-0.5 rounded border border-gold\/20\" title=\"Volgende wijsheid\">\n                        \u21bb Volgende\n                    <\/button>\n                <\/div>\n                <blockquote id=\"proverb-display\" class=\"font-serif italic text-base text-ivory leading-snug my-1\">\n                    &#8220;Wij zijn allemaal helderzienden als je helder kijkt.&#8221;\n                <\/blockquote>\n                <p id=\"proverb-sub\" class=\"text-[11px] text-sage mt-1\">\n                    In een wereld vol blinden regeert de koning die ziet \u2014 vertrouw jezelf en kies jouw meest verheven vorm van Liefde.\n                <\/p>\n            <\/section>\n        <\/aside>\n\n        <!-- CENTER PANEL: VRAGENVELD BOVENAAN + EXTRA GROOT ANTWOORDENVELD DAARONDER (STANDAARD 12 COLS VOLLEDIGE BREEDTE) -->\n        <section id=\"panel-chat\" class=\"col-span-1 lg:col-span-12 flex flex-col gap-4\">\n            \n            <!-- DEEL A (BOVENAAN): HET VRAGENVELD & DIRECTE KEUZE-PROMPTS -->\n            <div class=\"glass-panel rounded-2xl gold-border-glow overflow-hidden border border-gold\/35 shadow-xl\">\n                <div class=\"px-4 sm:px-6 py-2.5 bg-gradient-to-r from-forest\/95 via-anthracite to-forest\/95 border-b border-gold\/25 flex flex-wrap items-center justify-between gap-2\">\n                    <div class=\"flex items-center gap-2.5\">\n                        <span class=\"px-2.5 py-0.5 rounded-full bg-gold text-obsidian font-bold text-xs uppercase tracking-wider\">\n                            1. Jouw Vragenveld\n                        <\/span>\n                        <span class=\"text-xs sm:text-sm font-medium text-gold-light\">\n                            Stel hieronder je concrete vraag of kies een onderwerp \u2014 het uitgebreide antwoord verschijnt direct in het grote leesveld eronder\n                        <\/span>\n                    <\/div>\n                    <div class=\"flex items-center gap-2\">\n                        <span id=\"client-name-pill\" class=\"hidden text-xs px-2.5 py-0.5 rounded-full bg-gold\/15 border border-gold\/30 text-ivory\">\n                            Welkom, <strong id=\"client-name-text\">Reiziger<\/strong>\n                        <\/span>\n                        <button type=\"button\" onclick=\"ChielioApp.cycleReflectionChips()\" class=\"text-xs text-gold hover:underline flex items-center gap-1 font-medium\">\n                            Meer voorbeeldvragen \u21c4\n                        <\/button>\n                    <\/div>\n                <\/div>\n\n                <!-- Vragenformulier direct bovenaan -->\n                <form id=\"chat-form\" onsubmit=\"ChielioApp.handleChatSubmit(event)\" class=\"p-4 sm:p-5 bg-anthracite\/95 flex flex-col sm:flex-row items-stretch sm:items-end gap-3\">\n                    <div class=\"flex-1 relative\">\n                        <label for=\"chat-input\" class=\"sr-only\">Stel je vraag aan Chielio&#8217;s Mentale Steunpilaar GPT<\/label>\n                        <textarea \n                            id=\"chat-input\" \n                            rows=\"2\"\n                            placeholder=\"Typ hier je vraag of situatie (bijv. relatie, piekeren, grenzen aangeven, 'ja' zeggen terwijl je 'nee' voelt, loslaten of een liefdevol actieplan)...\"\n                            class=\"w-full rounded-xl bg-obsidian\/95 border border-gold\/40 focus:border-gold px-4 py-3 text-base text-ivory placeholder-sage\/65 focus:outline-none resize-y leading-relaxed shadow-inner\"\n                            onkeydown=\"if(event.key === 'Enter' &#038;&#038; !event.shiftKey) { event.preventDefault(); ChielioApp.handleChatSubmit(event); }\"\n                        ><\/textarea>\n                    <\/div>\n                    <button \n                        type=\"submit\" \n                        id=\"send-btn\"\n                        class=\"h-12 sm:h-14 px-6 rounded-xl bg-gradient-to-r from-gold to-gold-light text-obsidian font-bold text-sm sm:text-base hover:brightness-110 transition-all flex items-center justify-center gap-2 shrink-0 shadow-lg\"\n                    >\n                        <span>Stel Vraag &#038; Spiegel<\/span>\n                        <span>\u27a4<\/span>\n                    <\/button>\n                <\/form>\n\n                <!-- Snelkeuze Levensvragen & Snelle Tools Balk -->\n                <div class=\"px-4 sm:px-5 py-2.5 bg-obsidian\/85 border-t border-gold\/15 flex flex-col gap-2\">\n                    <div class=\"flex items-center justify-between gap-2 flex-wrap\">\n                        <span class=\"text-xs text-sage font-medium\">\n                            \ud83d\udca1 Of klik direct op een concrete levensvraag:\n                        <\/span>\n                        <div class=\"flex items-center gap-1.5 flex-wrap\">\n                            <button type=\"button\" onclick=\"ChielioApp.sendEmotionToChat()\" class=\"text-[11px] px-2.5 py-1 rounded-lg bg-forest\/90 hover:bg-gold\/25 border border-gold\/30 text-gold-light transition-all\">\n                                \ud83d\udd25 Bespreek Plutchik Emotie (Vreugde + Vertrouwen = Liefde)\n                            <\/button>\n                            <button type=\"button\" onclick=\"ChielioApp.askPlanInChat()\" class=\"text-[11px] px-2.5 py-1 rounded-lg bg-forest\/90 hover:bg-gold\/25 border border-gold\/30 text-gold-light transition-all\">\n                                \ud83d\udccb Maak Samen een Concreet &#038; Liefdevol Plan\n                            <\/button>\n                        <\/div>\n                    <\/div>\n                    <div id=\"quick-chips\" class=\"flex items-center gap-2 overflow-x-auto pb-1\"><\/div>\n                <\/div>\n            <\/div>\n\n            <!-- DEEL B (ONDER HET VRAGENVELD): HET EXTRA GROTE ANTWOORDENVELD VOOR MAXIMALE LEESBAARHEID -->\n            <div class=\"glass-panel rounded-2xl gold-border-glow overflow-hidden border border-gold\/35 flex flex-col min-h-[76vh]\">\n                \n                <!-- Leesbaarheid & Status Balk boven het Antwoordenveld -->\n                <div class=\"px-4 sm:px-6 py-3 bg-gradient-to-r from-forest\/95 via-anthracite to-forest\/95 border-b border-gold\/25 flex flex-wrap items-center justify-between gap-3\">\n                    <div class=\"flex items-center gap-2.5\">\n                        <span class=\"px-2.5 py-0.5 rounded-full bg-sky-500\/20 border border-sky-400\/40 text-sky-200 font-bold text-xs uppercase tracking-wider\">\n                            2. Groot Antwoordenveld\n                        <\/span>\n                        <div>\n                            <span class=\"text-xs sm:text-sm font-semibold text-gold-light block\" id=\"active-pillar-badge\">\n                                Nieuwste antwoord staat direct bovenaan \u2022 \ud83e\udde0 Stap 1 Wereldse Psychologie \u2192 \u2728 Stap 2 Quantum Visie\n                            <\/span>\n                            <p class=\"text-[11px] text-sage hidden md:block\" id=\"active-pillar-subtitle\">\n                                Optimaal leesformaat \u2022 Eerst een concrete, nuchtere psychologische spiegel; daarna aangevuld met Chielio&#8217;s liefdevolle pad\n                            <\/p>\n                        <\/div>\n                    <\/div>\n\n                    <!-- Lettergrootte & Gesprek Controls -->\n                    <div class=\"flex items-center gap-2 flex-wrap\">\n                        <div class=\"flex items-center bg-obsidian\/90 p-1 rounded-xl border border-gold\/30 text-xs\" title=\"Pas de tekstgrootte van het antwoordenveld aan\">\n                            <span class=\"text-[11px] text-sage px-2 hidden sm:inline\">Leesgrootte:<\/span>\n                            <button type=\"button\" onclick=\"ChielioApp.setAnswerFontSize('normal')\" id=\"font-btn-normal\" class=\"px-2 py-1 rounded-lg text-sage hover:text-ivory transition-all font-medium\">\n                                A\n                            <\/button>\n                            <button type=\"button\" onclick=\"ChielioApp.setAnswerFontSize('large')\" id=\"font-btn-large\" class=\"px-2.5 py-1 rounded-lg bg-gold text-obsidian font-bold transition-all\">\n                                A+ (Groot)\n                            <\/button>\n                            <button type=\"button\" onclick=\"ChielioApp.setAnswerFontSize('xlarge')\" id=\"font-btn-xlarge\" class=\"px-2.5 py-1 rounded-lg text-sage hover:text-ivory transition-all font-extrabold\">\n                                A++ (Extra Groot)\n                            <\/button>\n                        <\/div>\n\n                        <button type=\"button\" onclick=\"ChielioApp.endInteractionWithDisclaimer()\" class=\"text-xs text-amber-300 hover:text-amber-200 px-3 py-1.5 rounded-lg bg-amber-500\/15 hover:bg-amber-500\/25 border border-amber-400\/35 transition-colors flex items-center gap-1\" title=\"Rond het gesprek af met de slot-disclaimer\">\n                            <span>\u2713 Afronden<\/span>\n                        <\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.resetConversation()\" class=\"text-xs text-sage hover:text-gold-light px-3 py-1.5 rounded-lg bg-white\/5 hover:bg-white\/10 border border-white\/10 transition-colors flex items-center gap-1\" title=\"Antwoordenveld wissen en herstarten\">\n                            <span>\u21ba Wis &#038; Herstart<\/span>\n                        <\/button>\n                    <\/div>\n                <\/div>\n\n                <!-- Het Grote Leesbare Antwoordenveld (Op mobiel volledige natuurlijke pagina-scroll zonder dubbele scrollbalk; op desktop ruime container) -->\n                <div id=\"chat-container\" class=\"flex-1 lg:overflow-y-auto p-3.5 sm:p-7 lg:p-10 space-y-5 sm:space-y-6 answer-zoom-large lg:max-h-[82vh]\"><\/div>\n            <\/div>\n        <\/section>\n\n        <!-- RIGHT PANEL: CREATIE ALGORITME, ANGST->LIEFDE & QUANTUM VISIE (STANDAARD INGEKLAPT VOOR MAXIMAAL ANTWOORDENVELD) -->\n        <aside id=\"panel-creatie\" class=\"hidden flex-col gap-4 lg:col-span-3\">\n\n            <!-- 1. De Twee Fundamenten: Angst -> Liefde Transformatie -->\n            <section class=\"glass-panel rounded-2xl p-4 gold-border-glow\">\n                <div class=\"flex items-center justify-between mb-2\">\n                    <h2 class=\"font-serif text-lg font-semibold text-gold-light flex items-center gap-2\">\n                        <span>\u2696\ufe0f Keuze-opties: Angst \u2192 Liefde<\/span>\n                    <\/h2>\n                <\/div>\n                <p class=\"text-xs text-sage mb-3\">\n                    Klik op een kramp- of angstpatroon om het psychologisch \u00e9n quantum-energetisch te transformeren naar het Liefde-pad:\n                <\/p>\n                <div class=\"space-y-1.5\" id=\"duality-list\"><\/div>\n            <\/section>\n\n            <!-- 2. Het Creatie Algoritme: Het 'Niet' ombuigen naar het 'Wel' -->\n            <section class=\"glass-panel-forest rounded-2xl p-4\">\n                <div class=\"flex items-center justify-between mb-1.5\">\n                    <h2 class=\"font-serif text-lg font-semibold text-gold-light flex items-center gap-2\">\n                        <span>\ud83e\ude84 Het Creatie Algoritme<\/span>\n                    <\/h2>\n                    <span class=\"text-[10px] uppercase tracking-wider px-2 py-0.5 rounded bg-gold\/20 text-gold-light\">Alles is Nu<\/span>\n                <\/div>\n                <p class=\"text-xs text-sage mb-2.5 italic font-serif\">\n                    &#8220;Ik denk niet dat dat niet onmogelijk is \u2014 Ik denk wel dat \u00e0lles mogelijk is.&#8221;\n                <\/p>\n                \n                <div class=\"space-y-2\">\n                    <label for=\"niet-input\" class=\"block text-[11px] text-ivory\/80 font-medium\">\n                        Beperkende gedachte (&#8220;Het Niet&#8221; \/ Wat mij overkomt):\n                    <\/label>\n                    <input \n                        type=\"text\" \n                        id=\"niet-input\" \n                        placeholder=\"Bijv: Ik kan deze situatie niet loslaten...\"\n                        class=\"w-full rounded-lg bg-obsidian\/90 border border-gold\/30 px-3 py-2 text-xs text-ivory placeholder-sage\/50 focus:outline-none focus:border-gold\"\n                    >\n                    <div class=\"flex gap-1.5\">\n                        <button type=\"button\" onclick=\"ChielioApp.transformNietNaarWel()\" class=\"flex-1 py-2 px-3 rounded-lg bg-gold\/20 hover:bg-gold\/30 border border-gold\/40 text-gold-light text-xs font-medium transition-all flex items-center justify-center gap-1.5\">\n                            <span>\u21bb Buig om naar &#8216;Het Wel&#8217;<\/span>\n                        <\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.sendNietWelToChat()\" class=\"py-2 px-3 rounded-lg bg-gold text-obsidian hover:bg-gold-light text-xs font-semibold transition-all\" title=\"Stuur naar Chielio GPT\">\n                            <span>\ud83d\udcac Naar Chat<\/span>\n                        <\/button>\n                    <\/div>\n                    <div id=\"wel-output\" class=\"hidden rounded-xl p-2.5 bg-obsidian\/80 border border-gold\/35 text-xs text-ivory\/95 leading-relaxed\"><\/div>\n                <\/div>\n            <\/section>\n\n            <!-- 3. Het Observeren (8 Keuze-opties) & Quantum Visie (Projector vs Camera) -->\n            <section class=\"glass-panel rounded-2xl p-4\">\n                <div class=\"flex items-center justify-between mb-2\">\n                    <h2 class=\"font-serif text-lg font-semibold text-gold-light flex items-center gap-2\">\n                        <span>\ud83d\udc41\ufe0f Quantum Visie &#038; 8 Opties<\/span>\n                    <\/h2>\n                    <span class=\"text-[11px] text-gold\">\ud83c\udfb6 Energie &#038; Nu<\/span>\n                <\/div>\n\n                <!-- Projector vs Camera Toggle -->\n                <div class=\"p-2.5 rounded-xl bg-obsidian\/75 border border-gold\/20 mb-3\">\n                    <div class=\"flex items-center justify-between text-xs mb-1.5\">\n                        <span class=\"text-sage\">Zijn onze ogen projectoren of camera&#8217;s?<\/span>\n                        <button type=\"button\" onclick=\"ChielioApp.toggleVisionMode()\" id=\"vision-toggle-btn\" class=\"px-2 py-0.5 rounded bg-gold\/20 text-gold-light border border-gold\/35 text-[11px] font-medium\">\n                            Modus: Projector \ud83d\udcfd\ufe0f\n                        <\/button>\n                    <\/div>\n                    <p id=\"vision-mode-text\" class=\"text-[11px] text-ivory\/90 leading-relaxed\">\n                        <strong>Ogen als Projectoren (Zender):<\/strong> Je cre\u00ebert wat je observeert. Jouw gedachten zenden frequenties en resonanties uit \u2014 net als muziek \ud83c\udfb6. Kies je meest verheven vorm van Liefde!\n                    <\/p>\n                <\/div>\n\n                <!-- De 8 Keuze-opties van Het Observeren -->\n                <div class=\"space-y-1.5\">\n                    <span class=\"text-[11px] text-sage block\">\n                        Zie jij iets wat leuk of niet leuk is? Kies uit de 8 observatie-opties:\n                    <\/span>\n                    <div class=\"grid grid-cols-2 gap-1 text-[11px]\">\n                        <button type=\"button\" onclick=\"ChielioApp.askEightOption('1. Doe iets vanuit Liefde &#038; Positiviteit')\" class=\"p-1.5 rounded bg-forest\/60 hover:bg-gold\/20 border border-gold\/20 text-left text-ivory\/90 truncate\">1. Doe iets \u2022 Positief<\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.askEightOption('2. Doe niets (Pauze nemen &#038; Accepteren)')\" class=\"p-1.5 rounded bg-forest\/60 hover:bg-gold\/20 border border-gold\/20 text-left text-ivory\/90 truncate\">2. Doe niets \u2022 Pauze<\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.askEightOption('3. Wel veranderen wat binnen mijn macht ligt')\" class=\"p-1.5 rounded bg-forest\/60 hover:bg-gold\/20 border border-gold\/20 text-left text-ivory\/90 truncate\">3. Wel veranderen<\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.askEightOption('4. Niet veranderen wat ik nu nog niet kan veranderen')\" class=\"p-1.5 rounded bg-forest\/60 hover:bg-gold\/20 border border-gold\/20 text-left text-ivory\/90 truncate\">4. Niet veranderen<\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.askEightOption('5. Bekrachtigen wat goed en liefdevol is')\" class=\"p-1.5 rounded bg-forest\/60 hover:bg-gold\/20 border border-gold\/20 text-left text-ivory\/90 truncate\">5. Bekrachtigen (Liefde)<\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.askEightOption('6. Ontkennen &#038; angst-illusies doorzien')\" class=\"p-1.5 rounded bg-forest\/60 hover:bg-gold\/20 border border-gold\/20 text-left text-ivory\/90 truncate\">6. Ontkennen doorzien<\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.askEightOption('7. Ik zie \u00e9n jij ziet: samen vanuit Wij kijken')\" class=\"p-1.5 rounded bg-forest\/60 hover:bg-gold\/20 border border-gold\/20 text-left text-ivory\/90 truncate\">7. Ik zie &#038; Jij ziet (Wij)<\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.askEightOption('8. Doe iets \u00e9n doe niets: actie met innerlijke rust')\" class=\"p-1.5 rounded bg-forest\/60 hover:bg-gold\/20 border border-gold\/20 text-left text-ivory\/90 truncate\">8. Beide combineren<\/button>\n                    <\/div>\n                <\/div>\n            <\/section>\n        <\/aside>\n\n    <\/main>\n\n    <!-- 3B. VERPLAATSTE MOBIELE BEDIENINGS- & TOOLS BALK (ONDERAAN IN PLAATS VAN ZWEVEND BOVEN HET SCHERM) -->\n    <section id=\"mobile-tools-dock\" class=\"lg:hidden max-w-[1800px] w-full mx-auto px-2.5 sm:px-6 pb-4\">\n        <div class=\"glass-panel rounded-2xl p-4 border border-gold\/30 space-y-3 shadow-lg\">\n            <div class=\"flex items-center justify-between border-b border-gold\/20 pb-2\">\n                <span class=\"font-serif text-base font-semibold text-gold-light flex items-center gap-1.5\">\n                    <span>\ud83e\udded<\/span>\n                    <span>Extra Studio Tools &#038; Weergave<\/span>\n                <\/span>\n                <a href=\"#chat-form\" class=\"text-xs text-gold hover:underline font-medium\">\n                    \u2191 Naar Vragenveld\n                <\/a>\n            <\/div>\n\n            <!-- Wissel tussen Vraag\/Antwoord en de extra Kompas\/Creatie panelen -->\n            <div class=\"grid grid-cols-3 gap-1.5\">\n                <button type=\"button\" onclick=\"ChielioApp.switchMobileTab('chat')\" id=\"tab-btn-chat\" class=\"py-2 px-2 rounded-xl text-xs font-semibold bg-gold text-obsidian flex items-center justify-center gap-1 shadow\">\n                    \ud83d\udcac Vraag &#038; Antwoord\n                <\/button>\n                <button type=\"button\" onclick=\"ChielioApp.switchMobileTab('kompas')\" id=\"tab-btn-kompas\" class=\"py-2 px-2 rounded-xl text-xs font-medium bg-obsidian\/80 border border-gold\/25 text-sage hover:text-ivory flex items-center justify-center gap-1\">\n                    \ud83e\udded Emotie &#038; Pijlers\n                <\/button>\n                <button type=\"button\" onclick=\"ChielioApp.switchMobileTab('creatie')\" id=\"tab-btn-creatie\" class=\"py-2 px-2 rounded-xl text-xs font-medium bg-obsidian\/80 border border-gold\/25 text-sage hover:text-ivory flex items-center justify-center gap-1\">\n                    \u2728 Creatie &#038; Visie\n                <\/button>\n            <\/div>\n\n            <!-- Verplaatste Actieknoppen voor Mobiel -->\n            <div class=\"grid grid-cols-2 sm:grid-cols-4 gap-2 pt-1\">\n                <button type=\"button\" onclick=\"ChielioApp.exportLovingAgreement()\" class=\"py-2 px-3 rounded-xl bg-gold text-obsidian font-semibold text-xs flex items-center justify-center gap-1.5 shadow\">\n                    <span>\ud83d\udc9b Afspraak Maken<\/span>\n                <\/button>\n                <button type=\"button\" onclick=\"ChielioApp.openKnowledgeModal()\" class=\"py-2 px-3 rounded-xl bg-anthracite border border-gold\/30 text-gold-light text-xs flex items-center justify-center gap-1.5\">\n                    <span>\ud83d\udcd6 Manifest (PDF)<\/span>\n                <\/button>\n                <button type=\"button\" onclick=\"ChielioApp.endInteractionWithDisclaimer()\" class=\"py-2 px-3 rounded-xl bg-amber-500\/20 border border-amber-400\/40 text-amber-200 text-xs flex items-center justify-center gap-1.5\">\n                    <span>\ud83d\udee1\ufe0f Afronden<\/span>\n                <\/button>\n                <button type=\"button\" onclick=\"ChielioApp.openDebugModal()\" class=\"py-2 px-3 rounded-xl bg-emerald-950\/80 border border-emerald-400\/40 text-emerald-200 text-xs flex items-center justify-center gap-1.5\">\n                    <span>\ud83d\udee0\ufe0f Debug &#038; Embed<\/span>\n                <\/button>\n            <\/div>\n        <\/div>\n    <\/section>\n\n    <!-- 4. FOOTER \/ BRANDING BAR -->\n    <footer class=\"glass-panel border-t border-gold\/20 py-3 px-4 lg:px-8 text-center text-xs text-sage\">\n        <div class=\"max-w-[1600px] mx-auto flex flex-col md:flex-row items-center justify-between gap-2\">\n            <div class=\"flex items-center gap-2 flex-wrap justify-center\">\n                <span class=\"font-serif text-gold-light font-semibold text-sm\">Chielio.Com Componist<\/span>\n                <span>\u2022<\/span>\n                <span>Voor de mensen op het liefdevolle pad<\/span>\n                <span>\u2022<\/span>\n                <span class=\"italic text-ivory\/80\">&#8220;Tijd is een illusie, iets is nu \u2014 Neem de tijd!&#8221;<\/span>\n            <\/div>\n            <div class=\"flex items-center gap-3 flex-wrap justify-center text-[11px]\">\n                <span>Verwoord door: <strong class=\"text-ivory\">Michiel Wouter Reedijk<\/strong><\/span>\n                <span>\u2022<\/span>\n                <a href=\"mailto:Chielio72@gmail.com\" class=\"text-gold-light hover:underline\">Chielio72@gmail.com<\/a>\n                <span>\u2022<\/span>\n                <a href=\"tel:0654258842\" class=\"text-gold-light hover:underline\">0654258842<\/a>\n            <\/div>\n        <\/div>\n    <\/footer>\n\n    <!-- MODAL 1: VOLLEDIG QUANTUM DENKEN & GAMMAWETENSCHAPPEN MANIFEST (PDF NASLAG) -->\n    <div id=\"knowledge-modal\" class=\"fixed inset-0 z-50 hidden bg-obsidian\/85 backdrop-blur-md flex items-center justify-center p-4\">\n        <div class=\"glass-panel rounded-2xl max-w-4xl w-full max-h-[88vh] flex flex-col border border-gold\/40 shadow-2xl overflow-hidden\">\n            <div class=\"px-6 py-4 bg-forest\/90 border-b border-gold\/25 flex items-center justify-between\">\n                <div>\n                    <h3 class=\"font-serif text-2xl font-bold text-gold-light\">Quantum Denken &#038; Gammawetenschappen door Songwriter Chielio<\/h3>\n                    <p class=\"text-xs text-sage\">Alle fundamenten, vragen en disciplines die in deze mentale steunpilaar verweven zijn<\/p>\n                <\/div>\n                <button type=\"button\" onclick=\"ChielioApp.closeKnowledgeModal()\" class=\"px-3 py-1.5 rounded-lg text-sage hover:text-ivory hover:bg-white\/10 text-sm\">\n                    \u2715 Sluiten\n                <\/button>\n            <\/div>\n            <div class=\"p-6 overflow-y-auto space-y-6 text-sm leading-relaxed text-ivory\/90\">\n                <div class=\"p-4 rounded-xl bg-forest\/50 border border-gold\/30\">\n                    <h4 class=\"font-serif text-lg font-semibold text-gold-light mb-1\">Kernuitgangspunt<\/h4>\n                    <p class=\"text-xs sm:text-sm\">\n                        Het uitgangspunt is om altijd positieve en liefdevolle keuzes en gedachten te cre\u00ebren. <strong>In plaats van enkel te observeren: \u00e9cht luisteren naar wat de cli\u00ebnt te zeggen heeft.<\/strong> Eerst werelds en psychologisch spiegelen, daarna aanvullen met de Quantum Visie.\n                    <\/p>\n                <\/div>\n\n                <div class=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\n                    <div class=\"p-4 rounded-xl bg-obsidian\/70 border border-gold\/20 space-y-1.5\">\n                        <h5 class=\"font-serif text-base font-semibold text-gold\">1. Het Zijn, Het Denken &#038; Het Weten<\/h5>\n                        <p class=\"text-xs text-sage\">\n                            <em>Alles is mogelijk, onmogelijkheden bestaan. Ik ben, Ik denk, Ik voel, Ik cre\u00eber en verder. Jij bent, Wij zijn, Iedereen is.<\/em><br>\n                            Wat weet je nu? Wat wil je weten? Wat wil je niet weten? Is die gedachte ondersteunend aan jouw doel en jouw meest verheven vorm van liefde?\n                        <\/p>\n                    <\/div>\n                    <div class=\"p-4 rounded-xl bg-obsidian\/70 border border-gold\/20 space-y-1.5\">\n                        <h5 class=\"font-serif text-base font-semibold text-gold\">2. Het Geloof &#038; Waarheid<\/h5>\n                        <p class=\"text-xs text-sage\">\n                            Geloof je in iets (jezelf, een ander, liefde, universum, God, Allah, Boeddha, Jezus, je moeder\/vader\/zus\/broer, de mensheid) of geloof je in niets (wat betekent &#8216;niets&#8217; voor jou)? Wat is jouw waarheid en wat is jouw leugen?\n                        <\/p>\n                    <\/div>\n                    <div class=\"p-4 rounded-xl bg-obsidian\/70 border border-gold\/20 space-y-1.5\">\n                        <h5 class=\"font-serif text-base font-semibold text-gold\">3. Onze Emoties (Plutchik) &#038; Loslaten<\/h5>\n                        <p class=\"text-xs text-sage\">\n                            De 8 primaire emoties (vreugde, vertrouwen, angst, verrassing, verdriet, afkeer, woede en anticipatie) smelten samen tot secundaire emoties zoals <strong>Vreugde + Vertrouwen = Liefde<\/strong>. Een emotie is een gevoel bij een gedachte; wil je een ander gevoel, dan kun je anders denken. <strong>Loslaten is vergeven, accepteren, afscheid nemen en verder gaan.<\/strong>\n                        <\/p>\n                    <\/div>\n                    <div class=\"p-4 rounded-xl bg-obsidian\/70 border border-gold\/20 space-y-1.5\">\n                        <h5 class=\"font-serif text-base font-semibold text-gold\">4. Quantum Visie &#038; Muziek \ud83c\udfb6<\/h5>\n                        <p class=\"text-xs text-sage\">\n                            Je cre\u00ebert wat je observeert. Zijn onze ogen projectoren of camera&#8217;s? Zijn onze zintuigen receptoren of zenders? Het universum is energie: golven, frequenties en resonanties \u2014 dus wellicht ook muziek. Vertrouw jezelf en kies jouw meest verheven vorm van Liefde.\n                        <\/p>\n                    <\/div>\n                <\/div>\n\n                <div>\n                    <h4 class=\"font-serif text-xl font-semibold text-gold-light mb-2\">Gammawetenschappen als Zielsgereedschap (Songwriting &#038; Mensbeeld)<\/h4>\n                    <div class=\"overflow-x-auto rounded-xl border border-gold\/25\">\n                        <table class=\"w-full text-left text-xs\">\n                            <thead class=\"bg-forest\/80 text-gold-light uppercase\">\n                                <tr>\n                                    <th class=\"p-3 border-b border-gold\/20\">Discipline<\/th>\n                                    <th class=\"p-3 border-b border-gold\/20\">Directe waarde voor gesprek, tekst &#038; emotionele diepgang<\/th>\n                                <\/tr>\n                            <\/thead>\n                            <tbody class=\"divide-y divide-gold\/15 bg-obsidian\/80\">\n                                <tr>\n                                    <td class=\"p-3 font-semibold text-ivory\">1. Psychologie<\/td>\n                                    <td class=\"p-3 text-sage\">Gelaagde emoties, gedragsmotivaties (cognitieve dissonantie, hechtingstypen, copingmechanismen) en de onderstroom onder verdriet of boosheid blootleggen.<\/td>\n                                <\/tr>\n                                <tr>\n                                    <td class=\"p-3 font-semibold text-ivory\">2. Sociologie<\/td>\n                                    <td class=\"p-3 text-sage\">Universele herkenning, tijdsgeest en gedeelde ervaring: <em>&#8220;Dit overkomt niet alleen mij, dit is hoe onze omgeving ons vormt.&#8221;<\/em><\/td>\n                                <\/tr>\n                                <tr>\n                                    <td class=\"p-3 font-semibold text-ivory\">3. Communicatiewetenschap &#038; Semiotiek<\/td>\n                                    <td class=\"p-3 text-sage\">Subtekst (<em>&#8220;Show, don&#8217;t tell&#8221;<\/em> \u2014 twee koffiekopjes waarvan er \u00e9\u00e9n koud blijft) en liefdevolle <em>Framing<\/em> die een zware gedachte kantelt.<\/td>\n                                <\/tr>\n                                <tr>\n                                    <td class=\"p-3 font-semibold text-ivory\">4. Culturele Antropologie<\/td>\n                                    <td class=\"p-3 text-sage\">Moderne rituelen bij rouw of loslaten, en archetypische verhaallijnen zoals <em>de heldenreis<\/em>, <em>verlies van onschuld<\/em> en <em>thuiskomst<\/em>.<\/td>\n                                <\/tr>\n                            <\/tbody>\n                        <\/table>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <!-- MODAL 2: SAMEN GEMAAKTE LIEFDEVOLLE AFSPRAAK & PLAN EXPORT -->\n    <div id=\"agreement-modal\" class=\"fixed inset-0 z-50 hidden bg-obsidian\/85 backdrop-blur-md flex items-center justify-center p-4\">\n        <div class=\"glass-panel rounded-2xl max-w-2xl w-full flex flex-col border border-gold\/40 shadow-2xl overflow-hidden\">\n            <div class=\"px-6 py-4 bg-forest\/90 border-b border-gold\/25 flex items-center justify-between\">\n                <div class=\"flex items-center gap-2.5\">\n                    <span class=\"text-xl\">\ud83d\udc9b<\/span>\n                    <h3 class=\"font-serif text-2xl font-bold text-gold-light\">Onze Samen Gemaakte Liefdevolle Afspraak<\/h3>\n                <\/div>\n                <button type=\"button\" onclick=\"ChielioApp.closeAgreementModal()\" class=\"px-3 py-1.5 rounded-lg text-sage hover:text-ivory hover:bg-white\/10 text-sm\">\n                    \u2715 Sluiten\n                <\/button>\n            <\/div>\n            <div class=\"p-6 space-y-4 text-sm\">\n                <p class=\"text-xs text-sage\">\n                    <em>&#8220;Zullen we samen eens kijken naar een plan en samen beslissen dat we dit zo gaan aanpakken?&#8221;<\/em> Hieronder staat jouw persoonlijke samenvatting op het liefdevolle pad:\n                <\/p>\n                <div id=\"agreement-summary-box\" class=\"p-4 rounded-xl bg-obsidian\/90 border border-gold\/30 font-sans text-xs sm:text-sm text-ivory space-y-3 max-h-[50vh] overflow-y-auto whitespace-pre-wrap leading-relaxed\"><\/div>\n                <div class=\"flex items-center justify-between gap-3 pt-2\">\n                    <span id=\"copy-feedback\" class=\"text-xs text-gold-light opacity-0 transition-opacity\">\u2713 Gekopieerd naar klembord!<\/span>\n                    <div class=\"flex items-center gap-2\">\n                        <button type=\"button\" onclick=\"ChielioApp.copyAgreementText()\" class=\"px-4 py-2 rounded-xl bg-anthracite hover:bg-gold\/20 border border-gold\/35 text-xs text-gold-light font-medium\">\n                            \ud83d\udccb Kopieer Afspraak\n                        <\/button>\n                        <button type=\"button\" onclick=\"ChielioApp.askPlanInChat()\" class=\"px-4 py-2 rounded-xl bg-gold text-obsidian hover:bg-gold-light text-xs font-semibold\">\n                            \u2728 Maak Nieuw Plan in Chat\n                        <\/button>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <!-- MODAL 3: CHIELIO.COM DEBUG & EMBED CONSOLE -->\n    <div id=\"debug-modal\" class=\"fixed inset-0 z-50 hidden bg-obsidian\/85 backdrop-blur-md flex items-center justify-center p-4\">\n        <div class=\"glass-panel rounded-2xl max-w-3xl w-full max-h-[88vh] flex flex-col border border-emerald-400\/40 shadow-2xl overflow-hidden\">\n            <div class=\"px-6 py-4 bg-forest\/95 border-b border-emerald-400\/30 flex items-center justify-between\">\n                <div>\n                    <h3 class=\"font-serif text-2xl font-bold text-emerald-300\">\ud83d\udee0\ufe0f Chielio.com Diagnose, Debug &#038; Embed Console<\/h3>\n                    <p class=\"text-xs text-sage\">Speciaal gebouwd voor foutloze werking op Chielio.com (WordPress \/ Nginx \/ Cloudflare)<\/p>\n                <\/div>\n                <button type=\"button\" onclick=\"ChielioApp.closeDebugModal()\" class=\"px-3 py-1.5 rounded-lg text-sage hover:text-ivory hover:bg-white\/10 text-sm\">\n                    \u2715 Sluiten\n                <\/button>\n            <\/div>\n            <div class=\"p-6 overflow-y-auto space-y-4 text-xs sm:text-sm\">\n                <!-- Live Diagnostics -->\n                <div class=\"grid grid-cols-1 sm:grid-cols-3 gap-3\">\n                    <div class=\"p-3 rounded-xl bg-obsidian\/90 border border-emerald-400\/30\">\n                        <div class=\"text-[11px] text-sage uppercase\">DOM &#038; Syntax Status<\/div>\n                        <div class=\"text-emerald-300 font-semibold mt-1\" id=\"diag-dom\">\u2713 100%Gevalideerd (Geen duplicaten)<\/div>\n                    <\/div>\n                    <div class=\"p-3 rounded-xl bg-obsidian\/90 border border-emerald-400\/30\">\n                        <div class=\"text-[11px] text-sage uppercase\">Anti-Freeze Timeout Guard<\/div>\n                        <div class=\"text-emerald-300 font-semibold mt-1\" id=\"diag-timeout\">\u2713 AbortController (8.0s max)<\/div>\n                    <\/div>\n                    <div class=\"p-3 rounded-xl bg-obsidian\/90 border border-emerald-400\/30\">\n                        <div class=\"text-[11px] text-sage uppercase\">Laatste Engine Status<\/div>\n                        <div class=\"text-gold-light font-semibold mt-1\" id=\"diag-engine\">Gereed (AI + Lokale 2-Staps Engine)<\/div>\n                    <\/div>\n                <\/div>\n\n                <!-- Wat is er gefixt? -->\n                <div class=\"p-4 rounded-xl bg-forest\/60 border border-gold\/25 space-y-1.5 text-xs text-ivory\/90\">\n                    <div class=\"font-semibold text-gold-light\">Waarom liep de vorige versie vast en wat is er nu opgelost?<\/div>\n                    <ul class=\"list-disc ml-4 space-y-1 text-sage\">\n                        <li><strong class=\"text-ivory\">SyntaxError &#038; Dubbele ID&#8217;s verwijderd:<\/strong> In de vorige code zat een dubbele <code>#chat-container<\/code> en een extra sluit-accolade <code>}<\/code> bij <code>injectWelcomeMessage()<\/code> waardoor de browser-parser blokkeerde.<\/li>\n                        <li><strong class=\"text-ivory\">Geen externe Icon-loop meer:<\/strong> De externe <code>lucide.createIcons()<\/code> DOM-mutaties zijn vervangen door directe, nul-milliseconde inline symbolen.<\/li>\n                        <li><strong class=\"text-ivory\">8-Seconden AbortController &#038; Chielio.com Fallback:<\/strong> Als Chielio.com geen directe API-sleutel meestuurt of als een netwerkverzoek traag is, schakelt de chatbot zonder vastlopen direct over op de ingebouwde 2-staps Psychologie + Quantum Engine.<\/li>\n                    <\/ul>\n                <\/div>\n\n                <!-- Optionele eigen Gemini API Key voor op Chielio.com -->\n                <div class=\"p-4 rounded-xl bg-obsidian\/80 border border-gold\/25 space-y-2\">\n                    <label for=\"custom-api-key\" class=\"block font-semibold text-gold-light text-xs\">\n                        Optioneel voor op Chielio.com: Eigen Gemini API Key instellen (wordt veilig lokaal in jouw browser bewaard)\n                    <\/label>\n                    <p class=\"text-[11px] text-sage\">\n                        Zonder sleutel werkt de chatbot op Chielio.com \u00f3\u00f3k altijd 100% via de ingebouwde 2-Staps Psychologie &#038; Quantum Engine. Wil je live LLM-generatie op je eigen domein? Plak dan hier je Gemini API-sleutel:\n                    <\/p>\n                    <div class=\"flex gap-2\">\n                        <input type=\"password\" id=\"custom-api-key\" placeholder=\"AIzaSy... (optioneel, laat leeg voor automatische modus)\" class=\"flex-1 rounded-lg bg-obsidian border border-gold\/30 px-3 py-1.5 text-xs text-ivory focus:outline-none focus:border-gold\">\n                        <button type=\"button\" onclick=\"ChielioApp.saveCustomApiKey()\" class=\"px-3 py-1.5 rounded-lg bg-gold text-obsidian font-semibold text-xs hover:bg-gold-light\">\n                            Opslaan\n                        <\/button>\n                    <\/div>\n                    <span id=\"api-key-saved-msg\" class=\"text-[11px] text-emerald-300 hidden\">\u2713 Sleutel opgeslagen in localStorage!<\/span>\n                <\/div>\n\n                <!-- Test Knop -->\n                <div class=\"flex items-center justify-between gap-2 pt-1\">\n                    <button type=\"button\" onclick=\"ChielioApp.runSelfTest()\" class=\"px-4 py-2 rounded-xl bg-emerald-500\/20 hover:bg-emerald-500\/30 border border-emerald-400\/40 text-emerald-200 text-xs font-semibold\">\n                        \u26a1 Voer Snelle 2-Staps Stresstest Uit\n                    <\/button>\n                    <button type=\"button\" onclick=\"ChielioApp.closeDebugModal()\" class=\"px-4 py-2 rounded-xl bg-gold text-obsidian font-semibold text-xs\">\n                        Terug naar de Chatbot\n                    <\/button>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <!-- ============================================================================ -->\n    <!-- 5. ZERO-FREEZE APPLICATION ENGINE (ISOLATED NAMESPACE VOOR CHIELIO.COM)      -->\n    <!-- ============================================================================ -->\n    <script>\n        window.ChielioApp = (function() {\n            'use strict';\n\n            \/\/ 1. DATA: PLUTCHIK'S 8 PRIMAIRE EMOTIES\n            const PLUTCHIK_EMOTIONS = [\n                {\n                    id: 'vreugde',\n                    name: 'Vreugde',\n                    emoji: '\u2600\ufe0f',\n                    worldly: 'Psychologisch signaleert vreugde veiligheid, dopamine-beloning en verbondenheid met wat voor jou van waarde is.',\n                    loveBridge: 'Samen met Vertrouwen smelt Vreugde samen tot Liefde. Versterk dit door het te delen (Geven).'\n                },\n                {\n                    id: 'vertrouwen',\n                    name: 'Vertrouwen',\n                    emoji: '\ud83d\udee1\ufe0f',\n                    worldly: 'Vanuit de hechtingsleer betekent vertrouwen dat je zenuwstelsel tot rust komt en je niet continu op je hoede hoeft te zijn.',\n                    loveBridge: 'Vreugde + Vertrouwen = Liefde. Kies ervoor om controle een stukje los te laten.'\n                },\n                {\n                    id: 'angst',\n                    name: 'Angst',\n                    emoji: '\u26a1',\n                    worldly: 'Angst is een alarmreactie van je brein (amygdala) op onzekerheid of dreigend controleverlies. Vaak overschat het brein het gevaar en onderschat het je veerkracht.',\n                    loveBridge: 'Quantum-shift: wat kan je nu zelf doen, en wat kan je nu nog niet veranderen (en mag even op pauze)?'\n                },\n                {\n                    id: 'verrassing',\n                    name: 'Verrassing',\n                    emoji: '\u2728',\n                    worldly: 'Een korte ori\u00ebntatiereactie wanneer de werkelijkheid afwijkt van je verwachtingspatroon. Het dwingt je brein om nieuwe informatie te verwerken.',\n                    loveBridge: 'In het Creatie Algoritme opent het onverwachte ruimte om het \"niet\" om te buigen naar het \"wel\".'\n                },\n                {\n                    id: 'verdriet',\n                    name: 'Verdriet',\n                    emoji: '\ud83d\udca7',\n                    worldly: 'Emotiedynamiek: verdriet is zelden \u00e9\u00e9n enkele noot. Vaak zit er een onderstroom onder van rouw, teleurstelling, schaamte of onvervuld verlangen.',\n                    loveBridge: 'Loslaten is vergeven, accepteren, afscheid nemen en liefdevol verder gaan.'\n                },\n                {\n                    id: 'afkeer',\n                    name: 'Afkeer',\n                    emoji: '\ud83d\uded1',\n                    worldly: 'Psychologisch een gezonde grensbewaker: je systeem geeft aan dat een situatie of gedrag botst met jouw kernwaarden (cognitieve dissonantie).',\n                    loveBridge: 'Helder zien wat niet bij je past (\"Schoenmaker blijf bij je leest\") helpt je kiezen voor wat w\u00e9l jouw Liefde is.'\n                },\n                {\n                    id: 'woede',\n                    name: 'Woede',\n                    emoji: '\ud83d\udd25',\n                    worldly: 'Woede is vaak een secundaire beschermingsemotie (copingmechanisme). Onder boosheid schuilt bijna altijd pijn, machteloosheid of het gevoel niet gehoord te worden.',\n                    loveBridge: 'Beweeg van Aanvechten naar Accepteren & Helder Begrenzen vanuit zelfliefde.'\n                },\n                {\n                    id: 'anticipatie',\n                    name: 'Anticipatie',\n                    emoji: '\ud83e\udded',\n                    worldly: 'Je prefrontale cortex plant vooruit en zoekt grip op de toekomst. Als het doorslaat wordt het piekeren; in balans geeft het gezonde daadkracht.',\n                    loveBridge: 'Gebruik je ogen als projector in plaats van camera: cre\u00eber in het Nu al een liefdevolle frequentie.'\n                }\n            ];\n\n            \/\/ 2. DATA: DE 7 UITVRAAG-PIJLERS\n            const PILLARS = [\n                {\n                    id: 'relatie',\n                    title: '1. Verbroken Relatie & Loslaten',\n                    sub: 'Hechting, twee koffiekopjes & liefdevol verder gaan',\n                    prompt: 'Ik blijf maar malen over een relatie of iemand die ik moeilijk kan loslaten. Waarom doet mijn brein dit psychologisch gezien, wat kan ik hier concreet aan doen, en hoe kijk ik hiernaar vanuit Chielio\\'s Quantum Visie op loslaten en liefde?'\n                },\n                {\n                    id: 'grenzen',\n                    title: '2. \"Ja\" zeggen terwijl ik \"Nee\" voel',\n                    sub: 'Cognitieve dissonantie, pleasing & eigen waarheid',\n                    prompt: 'Waarom zeg ik zo vaak \"ja\" tegen anderen terwijl ik vanbinnen \"nee\" voel? Leg mij eerst nuchter en psychologisch uit hoe dit mechanisme werkt en geef concrete tips, en vul dit daarna aan met Chielio\\'s Quantum Visie op waarheid en eigenliefde.'\n                },\n                {\n                    id: 'piekeren',\n                    title: '3. Piekeren, Prestatiedruk & Controle',\n                    sub: 'Stress-systeem kalmeren & Pauze nemen in het Nu',\n                    prompt: 'Mijn hoofd staat niet stil door piekeren en het gevoel dat ik alles onder controle moet houden. Wat gebeurt er psychologisch in mijn hoofd, wat kan ik nu praktisch doen om rust te krijgen, en hoe helpt Chielio\\'s visie (\"Wat kan je nu nog niet veranderen \/ pauze nemen\")?'\n                },\n                {\n                    id: 'emoties',\n                    title: '4. Onze Emoties & Onderstroom',\n                    sub: 'Emotiedynamiek (Psychologie) + Plutchik (Liefde)',\n                    prompt: 'Ik voel een mix van emoties (verdriet, boosheid en onrust) die ik niet goed kan plaatsen. Kun je eerst als psycholoog de onderstroom onder deze gevoelens uitleggen, en daarna vanuit Plutchik en Chielio laten zien hoe gedachte en gevoel samenhangen richting Vreugde + Vertrouwen = Liefde?'\n                },\n                {\n                    id: 'creatie',\n                    title: '5. Vastzitten vs. Het Creatie Algoritme',\n                    sub: 'Aangeleerde hulpeloosheid \u2192 Het \"niet\" naar \"wel\"',\n                    prompt: 'Ik heb het gevoel dat alles mij maar overkomt en dat ik vastzit. Hoe doorbreek ik dit gevoel van machteloosheid vanuit de praktische psychologie, en hoe pas ik daarna Chielio\\'s Creatie Algoritme (\"het niet ombuigen naar het wel\") toe?'\n                },\n                {\n                    id: 'geloof',\n                    title: '6. Zingeving, Geloof & Waarheid',\n                    sub: 'Existenti\u00eble psychologie & Quantum resonantie \ud83c\udfb6',\n                    prompt: 'Ik ben zoekende naar wie ik ben, waar ik in geloof en wat mijn waarheid is in deze drukke tijdsgeest. Geef mij eerst een wereldse psychologische en sociologische spiegel, en neem mij daarna mee in Chielio\\'s vragen over Het Geloof, Het Zijn en Quantum Visie.'\n                },\n                {\n                    id: 'samenplan',\n                    title: '7. Samen een Concreet & Liefdevol Plan',\n                    sub: 'Haalbare gedragsstappen + Liefdevolle afspraak',\n                    prompt: 'Ik wil graag structuur en rust. Laten we samen een concreet psychologisch stappenplan maken (wat kan ik nu zelf doen, wat laat ik op pauze?) \u00e9n dat bezegelen met een liefdevolle Quantum-afspraak.'\n                }\n            ];\n\n            \/\/ 3. DATA: ANGST -> LIEFDE DUALITEITEN\n            const DUALITIES = [\n                { fear: 'Angst', love: 'Liefde', advice: 'Psychologisch: kalmeer eerst je zenuwstelsel. Quantum: kies de gedachte die je hart verwarmt in plaats van vernauwt.' },\n                { fear: 'Wantrouwen', love: 'Vertrouwen', advice: 'Psychologisch: bouw kleine ervaringen van veiligheid op. Quantum: Vreugde + Vertrouwen smelten samen tot Liefde.' },\n                { fear: 'Nemen', love: 'Geven', advice: 'Psychologisch: wederkerigheid versterkt sociale verbondenheid. Quantum: wie geeft vanuit resonantie, ontvangt verbinding.' },\n                { fear: 'Vasthouden', love: 'Loslaten', advice: 'Psychologisch: acceptatie stopt de uitputting van verzet. Quantum: loslaten is vergeven, accepteren, afscheid nemen en verder gaan.' },\n                { fear: 'Aanvechten', love: 'Accepteren', advice: 'Psychologisch: focus op je cirkel van invloed. Quantum: wat je nu niet kunt veranderen, gun je liefdevol een pauze.' }\n            ];\n\n            \/\/ 4. DATA: SPREEKWOORDEN\n            const PROVERBS = [\n                { quote: '\"Wij zijn allemaal helderzienden als je helder kijkt.\"', sub: 'In een wereld vol blinden regeert de koning die ziet \u2014 kijk met nuchtere helderheid \u00e9n de ogen van Liefde.' },\n                { quote: '\"Ik denk niet dat dat niet onmogelijk is \u2014 Ik denk wel dat \u00e0lles mogelijk is.\"', sub: 'Het Creatie Algoritme: erken de realiteit en buig het niet om naar het wel in het Nu.' },\n                { quote: '\"Een emotie is maar een gevoel wat je krijgt bij een gedachte.\"', sub: 'Cognitieve psychologie & Quantum Denken: wil je een ander gevoel, onderzoek en kies dan liefdevol een andere gedachte.' },\n                { quote: '\"Het universum is energie: golven, frequenties en resonanties \u2014 dus wellicht ook muziek \ud83c\udfb6\"', sub: 'Jouw ogen en zintuigen zijn projectoren en zenders. Kies jouw mooiste melodie.' },\n                { quote: '\"Schoenmaker blijf bij je leest \u2022 Wie weet wat een ander doet.\"', sub: 'Blijf bij jouw eigen invloedssfeer en waarheid. Neem de tijd \u2014 tijd is een illusie, alles is nu.' }\n            ];\n\n            const REFLECTION_CHIP_SETS = [\n                [\n                    \"Waarom blijf ik hangen in een verbroken relatie of oud verdriet?\",\n                    \"Ik zeg te vaak 'ja' terwijl ik 'nee' voel, hoe doorbreek ik dat?\",\n                    \"Mijn hoofd loopt over van piekeren: wat kan ik nu praktisch doen?\",\n                    \"Hoe laat ik wrok of boosheid jegens iemand echt los?\",\n                    \"Zullen we samen een concreet \u00e9n liefdevol actieplan maken?\"\n                ],\n                [\n                    \"Waarom voel ik me zo eenzaam of onbegrepen in deze tijd?\",\n                    \"Wat is het verschil tussen wat ik nu kan veranderen en wat op pauze mag?\",\n                    \"Ik ben bang om de verkeerde keuze te maken, hoe krijg ik helderheid?\",\n                    \"Hoe werken mijn ogen als projector in plaats van camera in het dagelijks leven?\",\n                    \"Ik voel verdriet, welke psychologische onderstroom zit daaronder?\"\n                ]\n            ];\n\n            \/\/ STATE\n            let selectedEmotions = ['vreugde', 'vertrouwen'];\n            let currentProverbIndex = 0;\n            let currentChipSetIndex = 0;\n            let isProjectorMode = true;\n            let responseMode = 'tweestaps';\n            let clientName = '';\n            let chatHistory = [];\n            let isProcessing = false;\n            let sidePanelsVisible = false; \/\/ Standaard maximale breedte voor het antwoordenveld\n            let currentFontSize = 'large';\n\n            const CHIELIO_SYSTEM_INSTRUCTION = `\nJe bent \"Chielio's Mentale Steunpilaar GPT\", een 2-staps reflectie-assistent die een nuchtere, wereldse psychologische benadering combineert met de \"Quantum Denken\"-filosofie van songwriter en componist Chielio (Michiel Wouter Reedijk \u2014 Chielio.Com Componist, \"Voor de mensen op het liefdevolle pad\").\n\nCRUCIALE ZORGVULDIGHEID & DISCLAIMER:\n- Je bent GEEN vervanging voor een echte BIG-geregistreerde psycholoog, psychotherapeut, psychiater of arts.\n- Je antwoorden zijn bedoeld als reflectie en inspiratie en kunnen contraproductief zijn voor iemands specifieke persoonlijke of medische situatie.\n\nVERPLICHTE TWEESTAPS-OPBOUW VAN ELK ANTWOORD:\nSplits je antwoord ALTIJD in twee duidelijke delen met exact het scheidingsteken \"---QUANTUM_SPLIT---\" ertussen:\n\nDEEL 1 (v\u00f3\u00f3r ---QUANTUM_SPLIT---): \ud83e\udde0 STAP 1: DE WERELDSE PSYCHOLOOG (Concrete & Nuchtere Spiegel)\n- Luister eerst \u00e9cht en beantwoord de vraag heel concreet, werelds, nuchter en menselijk volgens de gangbare psychologie en gammawetenschappen.\n- Leg helder en praktisch uit w\u00e1t er psychologisch speelt (bijv. cognitieve dissonantie, hechtingspatronen, copingmechanismen, stressregulatie, emotionele onderstroom onder verdriet\/boosheid, of sociologische druk).\n- Geef 2 concrete, aardse dagelijkse handvatten en stel 1 of 2 nuchtere psychologische vervolgvragen (uitvraag: Wat is er precies aan de hand? Hoe komt dat? Wat kan je er nu zelf aan doen en wat kan je nu nog niet veranderen? Is het een optie om daar een pauze in te nemen?).\n\n---QUANTUM_SPLIT---\n\nDEEL 2 (n\u00e1 ---QUANTUM_SPLIT---): \u2728 STAP 2: CHIELIO'S QUANTUM VISIE & HET LIEFDEVOLLE PAD\n- Vul het wereldse antwoord pas hierna liefdevol en po\u00ebtisch aan vanuit Chielio's document \"Quantum denken met songwriter Chielio\":\n  * Plutchik's emotiemodel: \"Een emotie is maar een gevoel wat je krijgt bij een gedachte. Wil je een ander gevoel dan kan je anders denken. Vasthouden aan een overtuiging is vasthouden aan een gevoel. Wil je dat? Loslaten is vergeven, accepteren, afscheid nemen en verder gaan.\" Laat zien hoe Vreugde + Vertrouwen samensmelten tot Liefde.\n  * Creatie Algoritme & Het Zijn: Buig het 'niet' om naar het 'wel' in het Nu (\"Ik denk niet dat dat niet onmogelijk is \u2014 Ik denk wel dat \u00e0lles mogelijk is\"). Ik ben, ik denk, ik voel, ik cre\u00eber en verder.\n  * Het Observeren (8 keuze-opties) & Quantum Visie: Zijn je ogen nu camera's (receptoren) of projectoren (zenders)? Het universum is energie, golven, frequenties en resonanties \u2014 dus wellicht ook muziek \ud83c\udfb6. Tijd is een illusie, iets is nu \u2014 Neem de tijd!\n  * Beweeg altijd van [Angst \u2022 Wantrouwen \u2022 Nemen \u2022 Vasthouden \u2022 Aanvechten] naar jouw meest verheven vorm van [Liefde \u2022 Vertrouwen \u2022 Geven \u2022 Loslaten \u2022 Accepteren].\n`;\n\n            \/\/ INITIALISATIE\n            function init() {\n                try {\n                    renderPlutchikGrid();\n                    updatePlutchikBlend();\n                    renderPillars();\n                    renderDualities();\n                    renderQuickChips();\n                    injectWelcomeMessage();\n\n                    const savedKey = localStorage.getItem('chielio_gemini_api_key') || '';\n                    const keyInput = document.getElementById('custom-api-key');\n                    if (keyInput && savedKey) {\n                        keyInput.value = savedKey;\n                    }\n                } catch (e) {\n                    console.error('ChielioApp Init Recovery:', e);\n                }\n            }\n\n            \/\/ DISCLAIMERS VOOR BEGIN EN EINDE INTERACTIE IN HET CHATVENSTER\n            function getChatStartDisclaimerHTML() {\n                return `\n                    <div class=\"p-3.5 rounded-xl bg-amber-950\/65 border border-amber-400\/45 text-[11px] sm:text-xs text-amber-100\/95 flex items-start gap-2.5 shadow-sm\">\n                        <span class=\"text-base shrink-0\">\u26a0\ufe0f<\/span>\n                        <div class=\"leading-relaxed\">\n                            <strong class=\"text-amber-200\">Disclaimer bij aanvang van het gesprek:<\/strong> Deze chatbot is <strong>geen vervanging voor een echte BIG-geregistreerde psycholoog<\/strong> of medisch specialist. De gegenereerde psychologische en filosofische antwoorden kunnen <strong>contraproductief zijn voor jouw specifieke situatie<\/strong>. Gebruik dit gesprek uitsluitend ter vrijblijvende zelfreflectie.\n                        <\/div>\n                    <\/div>\n                `;\n            }\n\n            function getChatEndDisclaimerHTML() {\n                return `\n                    <div class=\"mt-3 pt-2.5 border-t border-amber-400\/25 flex flex-col sm:flex-row sm:items-center justify-between gap-2 text-[11px] text-amber-200\/85\">\n                        <div class=\"flex items-start sm:items-center gap-1.5\">\n                            <span>\u2139\ufe0f<\/span>\n                            <span><strong>Disclaimer (Einde bericht):<\/strong> Geen vervanging voor een echte BIG-geregistreerde psycholoog; antwoorden kunnen contraproductief zijn voor jouw specifieke situatie.<\/span>\n                        <\/div>\n                        <button type=\"button\" onclick=\"ChielioApp.endInteractionWithDisclaimer()\" class=\"shrink-0 underline text-amber-300 hover:text-ivory text-[10px] self-end sm:self-center\">\n                            Gesprek formeel afronden\n                        <\/button>\n                    <\/div>\n                `;\n            }\n\n            function injectWelcomeMessage() {\n                const container = document.getElementById('chat-container');\n                if (!container) return;\n\n                const welcomeHTML = `\n                    <div class=\"space-y-4\">\n                        <!-- Stap 1: Wereldse Psychologische Welkomst -->\n                        <div class=\"p-5 sm:p-6 rounded-2xl bg-slate-900\/85 border border-sky-400\/40 space-y-2\">\n                            <div class=\"flex items-center justify-between flex-wrap gap-2\">\n                                <span class=\"text-xs sm:text-sm font-bold uppercase tracking-wider text-sky-300 flex items-center gap-1.5\">\n                                    \ud83e\udde0 Stap 1 \u2022 De Wereldse Psycholoog (Concrete Uitvraag & Praktische Spiegel)\n                                <\/span>\n                                <span class=\"text-xs px-2.5 py-0.5 rounded bg-sky-500\/15 text-sky-200 border border-sky-400\/30\">Gangbare Psychologie<\/span>\n                            <\/div>\n                            <p class=\"text-ivory\/95 leading-relaxed\">\n                                Welkom in het grote leesveld van <strong>Chielio's Mentale Steunpilaar GPT<\/strong>. In plaats van van een afstand te oordelen, luister ik eerst nuchter en concreet naar jouw verhaal. Typ je vraag in het <strong>Vragenveld hierboven<\/strong>: ik beantwoord deze altijd eerst <strong>werelds en praktisch<\/strong> vanuit de gangbare psychologie (emotionele onderstroom, stress- en copingmechanismen, hechting en haalbare dagelijkse stappen).\n                            <\/p>\n                        <\/div>\n\n                        <!-- Stap 2: Chielio's Quantum Visie Welkomst -->\n                        <div class=\"p-5 sm:p-6 rounded-2xl bg-forest\/85 border border-gold\/45 space-y-2\">\n                            <div class=\"flex items-center justify-between flex-wrap gap-2\">\n                                <span class=\"text-xs sm:text-sm font-bold uppercase tracking-wider text-gold-light flex items-center gap-1.5\">\n                                    \u2728 Stap 2 \u2022 Chielio's Quantum Visie & Het Liefdevolle Pad\n                                <\/span>\n                                <span class=\"text-xs px-2.5 py-0.5 rounded bg-gold\/15 text-gold-light border border-gold\/30 italic font-serif\">Vreugde + Vertrouwen = Liefde<\/span>\n                            <\/div>\n                            <p class=\"text-ivory\/95 leading-relaxed\">\n                                Pas n\u00e1 het aardse psychologische antwoord vul ik dit aan met <strong>Quantum Denken<\/strong>: hoe je het <em>'niet'<\/em> ombuigt naar het <em>'wel'<\/em>, hoe je met je ogen als projector kijkt en beweegt naar <strong>jouw meest verheven vorm van Liefde<\/strong>.\n                            <\/p>\n                            <p class=\"text-gold-light font-semibold pt-1\">\n                                \u2b06\ufe0f <strong>Stel je vraag in het Vragenveld hierboven:<\/strong> Wie ben je, wat is er concreet aan de hand, en waar loop je in het dagelijks leven nu tegenaan?\n                            <\/p>\n                        <\/div>\n                    <\/div>\n                `;\n                appendExchangeCard('Welkom \u2022 Start van het Gesprek', welcomeHTML, true);\n            }\n\n            function endInteractionWithDisclaimer() {\n                const closingHTML = `\n                    <div class=\"p-5 sm:p-6 rounded-2xl bg-amber-950\/80 border border-amber-400\/60 space-y-3 text-ivory\">\n                        <div class=\"flex items-center gap-2 text-amber-300 font-serif text-xl sm:text-2xl font-bold\">\n                            <span>\ud83d\udee1\ufe0f Afsluiting van deze Interactie & Zorgvuldigheids-Disclaimer<\/span>\n                        <\/div>\n                        <p class=\"leading-relaxed text-ivory\/95\">\n                            Dankjewel voor je openheid en het delen van je gedachten op het liefdevolle pad. Neem rustig de tijd om te voelen wat bij je past \u2014 <em>tijd is een illusie, iets is nu, neem de tijd!<\/em>\n                        <\/p>\n                        <div class=\"p-4 rounded-xl bg-obsidian\/90 border border-amber-400\/50 text-amber-100 leading-relaxed\">\n                            <strong>Belangrijke herinnering aan het einde van deze interactie:<\/strong><br>\n                            Chielio's Mentale Steunpilaar GPT is <strong>g\u00e9\u00e9n vervanging voor een echte BIG-geregistreerde psycholoog<\/strong>, psychotherapeut, psychiater of huisarts. Omdat een AI jouw volledige persoonlijke context en diagnostiek niet kent, kunnen de gegenereerde suggesties en antwoorden <strong>contraproductief zijn voor jouw specifieke situatie<\/strong>. Neem bij aanhoudende klachten, somberheid, angst of twijfel altijd contact op met je huisarts of een BIG-geregistreerde behandelaar (of bel bij acute nood <strong>113<\/strong> \/ <strong>0800-0113<\/strong>).\n                        <\/div>\n                    <\/div>\n                `;\n                appendExchangeCard('Gesprek Afgerond \u2022 Zorgvuldigheids-Disclaimer', closingHTML, false);\n            }\n\n            \/\/ MAXIMALE LEESMODUS & LETTERGROOTTE CONTROLS\n            function toggleMaxReadingMode() {\n                sidePanelsVisible = !sidePanelsVisible;\n                const kompas = document.getElementById('panel-kompas');\n                const creatie = document.getElementById('panel-creatie');\n                const chat = document.getElementById('panel-chat');\n                const btn = document.getElementById('max-reading-btn');\n\n                if (sidePanelsVisible) {\n                    if (kompas) {\n                        kompas.classList.remove('hidden');\n                        kompas.classList.add('flex');\n                    }\n                    if (creatie) {\n                        creatie.classList.remove('hidden');\n                        creatie.classList.add('flex');\n                    }\n                    if (chat) {\n                        chat.classList.remove('lg:col-span-12');\n                        chat.classList.add('lg:col-span-6');\n                    }\n                    if (btn) {\n                        btn.innerHTML = '<span>\ud83d\udcd6 Maximale Leesmodus (Zijpanelen Inklappen)<\/span>';\n                    }\n                } else {\n                    if (kompas) {\n                        kompas.classList.add('hidden');\n                        kompas.classList.remove('flex');\n                    }\n                    if (creatie) {\n                        creatie.classList.add('hidden');\n                        creatie.classList.remove('flex');\n                    }\n                    if (chat) {\n                        chat.classList.remove('lg:col-span-6');\n                        chat.classList.add('lg:col-span-12');\n                    }\n                    if (btn) {\n                        btn.innerHTML = '<span>\ud83d\udd0d Zijpanelen Tonen (Kompas & Quantum Tools)<\/span>';\n                    }\n                }\n            }\n\n            function setAnswerFontSize(size) {\n                currentFontSize = size;\n                const container = document.getElementById('chat-container');\n                if (!container) return;\n                container.classList.remove('answer-zoom-normal', 'answer-zoom-large', 'answer-zoom-xlarge');\n                container.classList.add('answer-zoom-' + size);\n\n                const btnNormal = document.getElementById('font-btn-normal');\n                const btnLarge = document.getElementById('font-btn-large');\n                const btnXlarge = document.getElementById('font-btn-xlarge');\n\n                [btnNormal, btnLarge, btnXlarge].forEach(b => {\n                    if (b) b.className = 'px-2.5 py-1 rounded-lg text-sage hover:text-ivory transition-all font-medium';\n                });\n\n                if (size === 'normal' && btnNormal) {\n                    btnNormal.className = 'px-2.5 py-1 rounded-lg bg-gold text-obsidian font-bold transition-all';\n                } else if (size === 'large' && btnLarge) {\n                    btnLarge.className = 'px-2.5 py-1 rounded-lg bg-gold text-obsidian font-bold transition-all';\n                } else if (size === 'xlarge' && btnXlarge) {\n                    btnXlarge.className = 'px-2.5 py-1 rounded-lg bg-gold text-obsidian font-extrabold transition-all';\n                }\n            }\n\n            \/\/ PLUTCHIK EMOTIES\n            function renderPlutchikGrid() {\n                const grid = document.getElementById('plutchik-grid');\n                if (!grid) return;\n                grid.innerHTML = PLUTCHIK_EMOTIONS.map(em => {\n                    const isSelected = selectedEmotions.includes(em.id);\n                    return `\n                        <button \n                            type=\"button\"\n                            onclick=\"ChielioApp.toggleEmotion('${em.id}')\"\n                            class=\"flex items-center gap-2 px-2.5 py-2 rounded-xl border text-xs font-medium transition-all text-left ${\n                                isSelected \n                                    ? 'bg-gold\/20 border-gold text-ivory shadow-sm' \n                                    : 'bg-obsidian\/70 border-gold\/15 text-sage hover:text-ivory hover:border-gold\/40'\n                            }\"\n                        >\n                            <span class=\"shrink-0\">${em.emoji}<\/span>\n                            <span class=\"truncate\">${em.name}<\/span>\n                        <\/button>\n                    `;\n                }).join('');\n            }\n\n            function toggleEmotion(id) {\n                if (selectedEmotions.includes(id)) {\n                    if (selectedEmotions.length > 1) {\n                        selectedEmotions = selectedEmotions.filter(e => e !== id);\n                    }\n                } else {\n                    if (selectedEmotions.length >= 2) {\n                        selectedEmotions.shift();\n                    }\n                    selectedEmotions.push(id);\n                }\n                renderPlutchikGrid();\n                updatePlutchikBlend();\n            }\n\n            function updatePlutchikBlend() {\n                const titleEl = document.getElementById('blend-title');\n                const descEl = document.getElementById('blend-desc');\n                if (!titleEl || !descEl) return;\n\n                const hasJoy = selectedEmotions.includes('vreugde');\n                const hasTrust = selectedEmotions.includes('vertrouwen');\n\n                if (hasJoy && hasTrust) {\n                    titleEl.innerHTML = `Vreugde + Vertrouwen = Liefde \ud83d\udc9b`;\n                    descEl.innerHTML = `\n                        <span class=\"text-sky-300 font-medium\">\ud83e\udde0 Werelds:<\/span> Veiligheid + positieve verbinding brengen je zenuwstelsel in harmonie.<br>\n                        <span class=\"text-gold-light font-medium\">\u2728 Quantum (Plutchik):<\/span> Vreugde en Vertrouwen smelten samen tot <strong>Liefde<\/strong> \u2014 kiezen voor geven, accepteren en loslaten.\n                    `;\n                    return;\n                }\n\n                const chosenObjs = selectedEmotions.map(id => PLUTCHIK_EMOTIONS.find(e => e.id === id)).filter(Boolean);\n                if (chosenObjs.length === 1) {\n                    const em = chosenObjs[0];\n                    titleEl.innerHTML = `Focus: ${em.emoji} ${em.name}`;\n                    descEl.innerHTML = `\n                        <span class=\"text-sky-300 font-medium\">\ud83e\udde0 Psychologie:<\/span> ${em.worldly}<br>\n                        <span class=\"text-gold-light font-medium\">\u2728 Quantum:<\/span> ${em.loveBridge}\n                    `;\n                } else if (chosenObjs.length === 2) {\n                    const [e1, e2] = chosenObjs;\n                    titleEl.innerHTML = `${e1.emoji} ${e1.name} + ${e2.emoji} ${e2.name}`;\n                    descEl.innerHTML = `\n                        <span class=\"text-sky-300 font-medium\">\ud83e\udde0 Emotiedynamiek:<\/span> Combinatie van <strong>${e1.name.toLowerCase()}<\/strong> en <strong>${e2.name.toLowerCase()}<\/strong>. Emotie is zelden \u00e9\u00e9n noot.<br>\n                        <span class=\"text-gold-light font-medium\">\u2728 Quantum-shift:<\/span> Onderzoek de gedachte achter dit gevoel en buig stap voor stap richting Liefde.\n                    `;\n                }\n            }\n\n            function sendEmotionToChat() {\n                const chosenNames = selectedEmotions\n                    .map(id => PLUTCHIK_EMOTIONS.find(e => e.id === id)?.name)\n                    .filter(Boolean)\n                    .join(' en ');\n                const prompt = `Ik ervaar op dit moment vooral ${chosenNames}. Kun je mij in Stap 1 eerst als wereldse psycholoog uitleggen hoe deze emotiedynamiek werkt en wat ik nu praktisch kan doen, en in Stap 2 vanuit Chielio's Quantum Visie & Plutchik laten zien hoe ik mijn gedachten liefdevol richting Vreugde + Vertrouwen = Liefde kan bewegen?`;\n                triggerUserMessage(prompt);\n                if (window.innerWidth < 1024) switchMobileTab('chat');\n            }\n\n            \/\/ PIJLERS &#038; DUALITEITEN\n            function renderPillars() {\n                const container = document.getElementById('pillars-list');\n                if (!container) return;\n                container.innerHTML = PILLARS.map(p => `\n                    <button \n                        type=\"button\"\n                        onclick=\"ChielioApp.selectPillar('${p.id}')\"\n                        class=\"w-full text-left p-2.5 rounded-xl bg-obsidian\/65 hover:bg-forest\/80 border border-gold\/15 hover:border-gold\/45 transition-all group\"\n                    >\n                        <div class=\"flex items-center justify-between\">\n                            <span class=\"text-xs font-semibold text-ivory group-hover:text-gold-light transition-colors\">${p.title}<\/span>\n                            <span class=\"text-sage group-hover:text-gold text-xs\">\u2192<\/span>\n                        <\/div>\n                        <p class=\"text-[11px] text-sage truncate mt-0.5\">${p.sub}<\/p>\n                    <\/button>\n                `).join('');\n            }\n\n            function selectPillar(pillarId) {\n                const pillar = PILLARS.find(p => p.id === pillarId);\n                if (!pillar) return;\n                const badge = document.getElementById('active-pillar-badge');\n                const sub = document.getElementById('active-pillar-subtitle');\n                if (badge) badge.textContent = `Actieve Pijler: ${pillar.title}`;\n                if (sub) sub.textContent = pillar.sub;\n                triggerUserMessage(pillar.prompt);\n                if (window.innerWidth < 1024) switchMobileTab('chat');\n            }\n\n            function renderDualities() {\n                const container = document.getElementById('duality-list');\n                if (!container) return;\n                container.innerHTML = DUALITIES.map((d, idx) => `\n                    <button \n                        type=\"button\"\n                        onclick=\"ChielioApp.exploreDuality(${idx})\"\n                        class=\"w-full p-2 rounded-xl bg-obsidian\/70 hover:bg-forest\/80 border border-gold\/20 transition-all text-left group\"\n                    >\n                        <div class=\"flex items-center justify-between text-xs font-medium\">\n                            <span class=\"text-rose-300\/90 line-through decoration-rose-400\/50\">${d.fear}<\/span>\n                            <span class=\"text-gold\">\u27f6<\/span>\n                            <span class=\"text-gold-light font-semibold\">\ud83d\udc9b ${d.love}<\/span>\n                        <\/div>\n                        <p class=\"text-[10px] text-sage mt-1\">${d.advice}<\/p>\n                    <\/button>\n                `).join('');\n            }\n\n            function exploreDuality(idx) {\n                const d = DUALITIES[idx];\n                if (!d) return;\n                const prompt = `Ik merk dat ik soms blijf hangen in '${d.fear}' in plaats van '${d.love}'. Kun je in Stap 1 psychologisch uitleggen waarom ik hierin schiet, en in Stap 2 vanuit Chielio's Quantum Visie laten zien hoe ik dit liefdevol ombuig naar '${d.love}'?`;\n                triggerUserMessage(prompt);\n                if (window.innerWidth < 1024) switchMobileTab('chat');\n            }\n\n            function nextProverb() {\n                currentProverbIndex = (currentProverbIndex + 1) % PROVERBS.length;\n                const q = document.getElementById('proverb-display');\n                const s = document.getElementById('proverb-sub');\n                if (q) q.textContent = PROVERBS[currentProverbIndex].quote;\n                if (s) s.textContent = PROVERBS[currentProverbIndex].sub;\n            }\n\n            \/\/ CREATIE ALGORITME &#038; QUANTUM VISIE\n            function transformNietNaarWel() {\n                const inputEl = document.getElementById('niet-input');\n                const outputEl = document.getElementById('wel-output');\n                if (!inputEl || !outputEl) return;\n                const raw = inputEl.value.trim();\n\n                outputEl.classList.remove('hidden');\n                if (!raw) {\n                    outputEl.innerHTML = `<span class=\"text-gold-light font-medium\">Tip:<\/span> Typ hierboven eerst een gedachte waar het woordje 'niet', angst of onmacht in zit (bijv. <em>\"Ik weet niet hoe ik dit moet oplossen\"<\/em>).`;\n                    return;\n                }\n\n                outputEl.innerHTML = `\n                    <div class=\"text-gold-light font-semibold mb-1\">\u2728 Omgebogen naar 'Het Wel' (Creatie in het Nu):<\/div>\n                    <p class=\"italic font-serif text-sm text-ivory\">\"Ik denk niet dat het onmogelijk is om met '${escapeHtml(raw)}' om te gaan \u2014 ik kies ervoor om te zien wat ik nu w\u00e9l zelf kan doen vanuit Liefde en Vertrouwen, en wat ik nog niet kan veranderen gun ik een rustige pauze.\"<\/p>\n                `;\n            }\n\n            function sendNietWelToChat() {\n                const inputEl = document.getElementById('niet-input');\n                const raw = (inputEl && inputEl.value.trim()) ? inputEl.value.trim() : \"Ik heb het gevoel dat dingen mij overkomen en dat ik vastzit in wat niet lukt.\";\n                const prompt = `Via het Creatie Algoritme wil ik deze beperkende gedachte onderzoeken en ombuigen van het 'niet' naar het 'wel': \"${raw}\". Geef mij eerst in Stap 1 een praktische psychologische herkadering, en neem mij in Stap 2 mee in Chielio's Creatie Algoritme vanuit Liefde.`;\n                triggerUserMessage(prompt);\n                if (window.innerWidth < 1024) switchMobileTab('chat');\n            }\n\n            function toggleVisionMode() {\n                isProjectorMode = !isProjectorMode;\n                const btn = document.getElementById('vision-toggle-btn');\n                const text = document.getElementById('vision-mode-text');\n                if (!btn || !text) return;\n\n                if (isProjectorMode) {\n                    btn.textContent = 'Modus: Projector \ud83d\udcfd\ufe0f';\n                    text.innerHTML = `<strong>Ogen als Projectoren (Zender):<\/strong> Je cre\u00ebert wat je observeert. Jouw gedachten zenden frequenties en resonanties uit \u2014 net als muziek \ud83c\udfb6. Kies je meest verheven vorm van Liefde!`;\n                } else {\n                    btn.textContent = 'Modus: Camera \ud83d\udcf7';\n                    text.innerHTML = `<strong>Ogen als Camera's (Receptor):<\/strong> Wanneer je enkel registreert, lijkt het alsof alles je overkomt en op zijn kop staat. Schakel terug naar Projector om bewust vanuit Liefde te cre\u00ebren.`;\n                }\n            }\n\n            function askEightOption(optionLabel) {\n                const prompt = `Binnen 'Het Observeren' (de 8 keuze-opties) kies ik nu voor: \"${optionLabel}\". Wat betekent deze keuze praktisch-psychologisch in Stap 1, en hoe bekrachtig ik dit als mijn meest verheven vorm van Liefde in Stap 2?`;\n                triggerUserMessage(prompt);\n                if (window.innerWidth < 1024) switchMobileTab('chat');\n            }\n\n            function setResponseMode(mode) {\n                responseMode = mode;\n                const btnTwo = document.getElementById('mode-btn-tweestaps');\n                const btnPrac = document.getElementById('mode-btn-praktisch');\n                const badge = document.getElementById('active-pillar-badge');\n\n                if (mode === 'tweestaps') {\n                    if (btnTwo) btnTwo.className = 'px-2.5 py-1 rounded-lg bg-gold text-obsidian font-semibold transition-all flex items-center gap-1';\n                    if (btnPrac) btnPrac.className = 'px-2.5 py-1 rounded-lg text-sage hover:text-ivory transition-all flex items-center gap-1';\n                    if (badge) badge.textContent = 'Actieve Modus: \ud83e\udde0 Stap 1 Wereldse Psychologie \u2192 \u2728 Stap 2 Quantum Visie';\n                } else {\n                    if (btnPrac) btnPrac.className = 'px-2.5 py-1 rounded-lg bg-gold text-obsidian font-semibold transition-all flex items-center gap-1';\n                    if (btnTwo) btnTwo.className = 'px-2.5 py-1 rounded-lg text-sage hover:text-ivory transition-all flex items-center gap-1';\n                    if (badge) badge.textContent = 'Actieve Modus: \ud83e\udde0 Focus Praktische Psychologie (+ beknopte Quantum spiegel)';\n                }\n            }\n\n            \/\/ QUICK CHIPS\n            function renderQuickChips() {\n                const container = document.getElementById('quick-chips');\n                if (!container) return;\n                const set = REFLECTION_CHIP_SETS[currentChipSetIndex];\n                container.innerHTML = set.map((text, idx) => `\n                    <button \n                        type=\"button\"\n                        onclick=\"ChielioApp.triggerChip(${idx})\"\n                        class=\"shrink-0 px-3 py-1.5 rounded-full bg-forest\/70 hover:bg-gold\/25 border border-gold\/25 hover:border-gold text-xs text-ivory\/90 transition-all\"\n                    >\n                        ${escapeHtml(text)}\n                    <\/button>\n                `).join('');\n            }\n\n            function triggerChip(idx) {\n                const text = REFLECTION_CHIP_SETS[currentChipSetIndex]?.[idx];\n                if (text) triggerUserMessage(text);\n            }\n\n            function cycleReflectionChips() {\n                currentChipSetIndex = (currentChipSetIndex + 1) % REFLECTION_CHIP_SETS.length;\n                renderQuickChips();\n            }\n\n            function detectClientName(text) {\n                const patterns = [\n                    \/\\bik heet\\s+([A-Z\u00c0-\u00ff][a-z\u00e0-\u00ff]+)\/i,\n                    \/\\bmijn naam is\\s+([A-Z\u00c0-\u00ff][a-z\u00e0-\u00ff]+)\/i,\n                    \/\\bik ben\\s+([A-Z\u00c0-\u00ff][a-z\u00e0-\u00ff]+)(?:\\s+en|\\s*,|\\s*\\.|$)\/i\n                ];\n                for (const regex of patterns) {\n                    const match = text.match(regex);\n                    if (match && match[1]) {\n                        const candidate = match[1];\n                        const ignoreWords = ['Bang', 'Verdrietig', 'Boos', 'Blij', 'Moe', 'Even', 'Hier', 'Nu', 'Op', 'In', 'Zoekende'];\n                        if (!ignoreWords.includes(candidate)) {\n                            clientName = candidate;\n                            const pill = document.getElementById('client-name-pill');\n                            const nameSpan = document.getElementById('client-name-text');\n                            if (nameSpan) nameSpan.textContent = clientName;\n                            if (pill) pill.classList.remove('hidden');\n                            break;\n                        }\n                    }\n                }\n            }\n\n            \/\/ ZERO-FREEZE CHAT HANDLER MET 8s ABORTCONTROLLER TIMEOUT\n            async function handleChatSubmit(e) {\n                if (e && typeof e.preventDefault === 'function') e.preventDefault();\n                const inputEl = document.getElementById('chat-input');\n                if (!inputEl) return;\n                const text = inputEl.value.trim();\n                if (!text || isProcessing) return;\n                inputEl.value = '';\n                await triggerUserMessage(text);\n            }\n\n            async function triggerUserMessage(userText) {\n                if (isProcessing) return;\n                isProcessing = true;\n\n                detectClientName(userText);\n                chatHistory.push({ role: 'user', parts: [{ text: userText }] });\n\n                const loadingId = appendLoadingIndicator(userText);\n                const sendBtn = document.getElementById('send-btn');\n                if (sendBtn) sendBtn.disabled = true;\n\n                try {\n                    const replyText = await callGeminiWithZeroFreezeTimeout(userText);\n                    removeLoadingIndicator(loadingId);\n                    const formattedHTML = formatTwoStepStudioHTML(replyText);\n                    appendExchangeCard(userText, formattedHTML, false);\n                    chatHistory.push({ role: 'model', parts: [{ text: replyText }] });\n                    updateDiagEngine('Live Gemini AI + 2-Staps Formatter (OK)');\n                } catch (err) {\n                    removeLoadingIndicator(loadingId);\n                    const fallbackRaw = generateRichChielioTwoStepText(userText);\n                    const fallbackHTML = formatTwoStepStudioHTML(fallbackRaw);\n                    appendExchangeCard(userText, fallbackHTML, false);\n                    chatHistory.push({ role: 'model', parts: [{ text: fallbackRaw }] });\n                    updateDiagEngine('Zero-Freeze Lokale 2-Staps Engine Actief (Stabiel)');\n                } finally {\n                    isProcessing = false;\n                    if (sendBtn) sendBtn.disabled = false;\n                }\n            }\n\n            async function callGeminiWithZeroFreezeTimeout(userText) {\n                const storedKey = localStorage.getItem('chielio_gemini_api_key') || \"\";\n                const apiKey = storedKey;\n                const apiUrl = `https:\/\/generativelanguage.googleapis.com\/v1beta\/models\/gemini-3-flash-preview:generateContent?key=${apiKey}`;\n\n                const modeInstruction = responseMode === 'praktisch'\n                    ? 'Focus extra uitgebreid op Stap 1 (concrete, wereldse psychologie en praktische handvatten) en houd Stap 2 (Quantum Visie) kort en krachtig.'\n                    : 'Geef een volwaardige, diepgaande Stap 1 (wereldse psychologie) \u00e9n een rijke Stap 2 (Chielio Quantum Visie).';\n\n                const contextNote = `[Cli\u00ebnt naam: ${clientName || 'onbekend'}. Actieve Plutchik emoties: ${selectedEmotions.join(', ')}. ${modeInstruction} Gebruik ALTIJD exact ---QUANTUM_SPLIT--- tussen Stap 1 en Stap 2.]\\n`;\n\n                const recentTurns = chatHistory.slice(-8).map((turn, idx, arr) => {\n                    if (idx === arr.length - 1 && turn.role === 'user') {\n                        return { role: 'user', parts: [{ text: contextNote + turn.parts[0].text }] };\n                    }\n                    return turn;\n                });\n\n                const payload = {\n                    contents: recentTurns,\n                    systemInstruction: {\n                        parts: [{ text: CHIELIO_SYSTEM_INSTRUCTION }]\n                    }\n                };\n\n                \/\/ Hard 7.5 second timeout per attempt so Chielio.com NEVER freezes\n                const controller = new AbortController();\n                const timeoutId = setTimeout(() => controller.abort(), 7500);\n\n                try {\n                    const response = await fetch(apiUrl, {\n                        method: 'POST',\n                        headers: { 'Content-Type': 'application\/json' },\n                        body: JSON.stringify(payload),\n                        signal: controller.signal\n                    });\n                    clearTimeout(timeoutId);\n\n                    if (!response.ok) {\n                        throw new Error('HTTP status ' + response.status);\n                    }\n                    const result = await response.json();\n                    const text = result?.candidates?.[0]?.content?.parts?.[0]?.text;\n                    if (text && text.trim().length > 10) {\n                        return text;\n                    }\n                    throw new Error('Empty candidate text');\n                } catch (err) {\n                    clearTimeout(timeoutId);\n                    throw err;\n                }\n            }\n\n            \/\/ RIJKE LOKALE 2-STAPS PSYCHOLOGIE + QUANTUM ENGINE (WERKT ALTIJD OP CHIELIO.COM)\n            function generateRichChielioTwoStepText(userText) {\n                const lower = userText.toLowerCase();\n                const greetingName = clientName ? `${clientName}, ` : ``;\n                const chosenEmotionNames = selectedEmotions\n                    .map(id => PLUTCHIK_EMOTIONS.find(e => e.id === id)?.name)\n                    .filter(Boolean)\n                    .join(' & ');\n\n                let step1Psych = '';\n                let step2Quantum = '';\n\n                if (lower.includes('loslaten') || lower.includes('verdriet') || lower.includes('ex') || lower.includes('gemis') || lower.includes('relatie') || lower.includes('wrok')) {\n                    step1Psych = `**1. Concrete psychologische duiding (Hechting, Rouw & Cognitieve Dissonantie):**\\n${greetingName}ik luister met volle aandacht naar je. Vanuit de gangbare psychologie is het heel verklaarbaar dat loslaten van een persoon of oude situatie zwaar voelt. Ons hechtingssysteem zoekt automatisch naar wat vertrouwd was, zelfs als je verstand weet dat de situatie voorbij of niet meer gezond is (*cognitieve dissonantie*). Onder het zichtbare verdriet of het malen zit bijna altijd een diepere emotionele onderstroom: onvervulde behoefte aan erkenning, rouw om wat had kunnen zijn, of het beeld van *twee koffiekopjes waarvan er \u00e9\u00e9n koud blijft*.\\n\\n**2. Praktische wereldse handvatten voor vandaag:**\\n- **Stop het gevecht tegen het gevoel:** Hoe harder je tegen jezelf zegt dat je ergens \"niet meer aan mag denken\", hoe actiever je brein het maakt. Erken het gemis 5 minuten bewust en richt je aandacht daarna op een fysieke activiteit.\\n- **Cirkel van Invloed:** Schrijf op wat je *nu zelf* kunt doen voor je eigen dagstructuur, en parkeer wat bij de ander ligt.\\n- **Psychologische uitvraag:** Aan welk specifiek moment of welke onuitgesproken verwachting merk je dat je gedachten steeds blijven haken?`;\n\n                    step2Quantum = `**1. Onze Emoties (Plutchik) & De Kunst van Loslaten:**\\nIn het Quantum Denken van Chielio geldt een bevrijdend inzicht: *een emotie is maar een gevoel wat je krijgt bij een gedachte. Wil je een ander gevoel, dan kan je anders denken. Vasthouden aan een overtuiging is vasthouden aan een gevoel \u2014 wil je dat?*\\n**Loslaten is vergeven, accepteren, afscheid nemen en verder gaan.**\\n\\n**2. Van Vasthouden & Angst naar Vreugde + Vertrouwen = Liefde:**\\nJe hoeft de liefde die je hebt gevoeld niet te ontkennen om vrij verder te gaan. Draai je innerlijke projector van *Angst \u2022 Vasthouden \u2022 Aanvechten* zachtjes naar *Liefde \u2022 Vertrouwen \u2022 Geven \u2022 Loslaten \u2022 Accepteren*. Wat zou je denken en voelen als je vandaag tegen jezelf zegt: *\"Ik bekrachtig wat mooi was, ik neem een liefdevolle pauze van wat ik nu niet kan veranderen, en ik kies mijn meest verheven vorm van Liefde in het Nu\"*?`;\n                } else if (lower.includes('ja') || lower.includes('nee') || lower.includes('grens') || lower.includes('grenzen') || lower.includes('pleas')) {\n                    step1Psych = `**1. Concrete psychologische duiding (Pleasing-coping & Sociale Conditionering):**\\n${greetingName}wanneer je \"ja\" zegt tegen een ander terwijl je vanbinnen \"nee\" voelt, ontstaat er direct innerlijke wrijving (*cognitieve dissonantie*). Psychologisch is dit vaak een aangeleerd *copingmechanisme*: je brein probeert afwijzing of conflict te voorkomen door harmonie op de eerste plaats te zetten. Het gevolg is echter dat je over je eigen grenzen gaat, waardoor er onderhuids vermoeidheid of stille boosheid opbouwt.\\n\\n**2. Praktische wereldse handvatten voor vandaag:**\\n- **De 24-uurs bufferzin:** Zeg bij een volgend verzoek niet direct \"ja\", maar gebruik de zin: *\"Ik kijk even in mijn planning en kom er straks op terug.\"* Dat geeft je zenuwstelsel tijd om te voelen wat je \u00e9cht wilt.\\n- **Klein oefenen:** Waar kun je deze week op een klein, veilig onderwerp eerlijk je voorkeur uitspreken?\\n- **Psychologische uitvraag:** Waar ben je precies bang voor dat er gebeurt als je eerlijk \"nee\" zegt tegen die persoon?`;\n\n                    step2Quantum = `**1. Het Geloof in Jezelf & Jouw Waarheid:**\\nVanuit Chielio's Quantum Denken vragen we: *Wat is jouw waarheid, en wat is jouw leugen? Is die gedachte ondersteunend aan jouw doel en jouw meest verheven vorm van liefde?* Een \"nee\" tegen wat niet bij je past, is in werkelijkheid het allergrootste **\"Ja\"** tegen jouw eigen integriteit en liefde.\\n\\n**2. Schoenmaker blijf bij je leest:**\\nIn het Creatie Algoritme buigen we *\"Ik durf geen nee te zeggen\"* om naar het **Wel**: *\"Ik kies ervoor om trouw te zijn aan mijn eigen energie en frequentie \ud83c\udfb6.\"* Je geeft pas echt zuiver (*Geven* in plaats van *Nemen*) wanneer jouw eigen beker gevuld is met **Vreugde + Vertrouwen = Liefde**.`;\n                } else if (lower.includes('pieker') || lower.includes('angst') || lower.includes('bang') || lower.includes('onrust') || lower.includes('controle') || lower.includes('stress')) {\n                    step1Psych = `**1. Concrete psychologische duiding (Overactief Stress-systeem & Schijncontrole):**\\n${greetingName}piekeren is een poging van je prefrontale cortex om via denken grip te krijgen op onzekerheid. Psychologisch gezien maakt je brein geen onderscheid tussen een echt gevaar nu en een ingebeeld scenario in de toekomst: je zenuwstelsel blijft daardoor in de paraatheidsstand staan.\\n\\n**2. Praktische wereldse handvatten voor vandaag:**\\n- **Splits je zorgen in twee kolommen:** Kolom A: *Wat kan ik vandaag binnen 15 minuten feitelijk doen?* Kolom B: *Wat ligt buiten mijn directe invloed?*\\n- **Fysieke verankering:** Verlaag eerst je ademhaling (4 tellen in, 6 tellen uit) voordat je een beslissing neemt.\\n- **Psychologische uitvraag:** Wat probeert je hoofd precies te voorkomen door hier zo hard over na te denken, en wat kan je op dit moment feitelijk nog niet veranderen?`;\n\n                    step2Quantum = `**1. Wat kan je nu nog niet veranderen? Neem een liefdevolle pauze:**\\nIn Chielio's filosofie stellen we de bevrijdende vraag: *Wat kan je nu nog niet veranderen, en is het een optie om daar een pauze in te nemen?* **Tijd is een illusie, iets is nu \u2014 Neem de tijd!**\\n\\n**2. Ogen als Projector in plaats van Camera:**\\nAngst projecteert schaduwen in de toekomst, terwijl Liefde cre\u00ebert in het Nu (*Ik ben, Ik denk, Ik voel, Ik cre\u00eber en verder*). Binnen de **8 keuze-opties van Het Observeren** mag je vandaag kiezen voor *Accepteren* en *Bekrachtigen wat goed is*. Welke ene liefdevolle gedachte geeft jouw lichaam op dit moment direct rust?`;\n                } else {\n                    step1Psych = `**1. Concrete psychologische spiegel & Emotionele onderstroom:**\\n${greetingName}dankjewel dat je dit zo open deelt. Als ik vanuit de gangbare psychologie en gammawetenschappen naar jouw vraag kijk (*\"${userText}\"*), zie ik een heel menselijke zoektocht naar rust, richting en betekenis. Vaak reageren we op de buitenkant van een situatie, terwijl er daaronder een gelaagde emotionele onderstroom meespeelt (momenteel resoneer je met **${chosenEmotionNames}**).\\n\\n**2. Praktische wereldse handvatten & Uitvraag:**\\n- **Stap voor stap ordenen:** Wat is er op dit moment het allerbelangrijkste dat aandacht vraagt, en wat mag wachten?\\n- **Concrete uitvraag:** Wat kan je hier vandaag *zelf* praktisch aan doen, hoe kunnen wij daarbij helpen, en welk stuk ligt nu buiten je macht?`;\n\n                    step2Quantum = `**1. Het Creatie Algoritme & Plutchik (${chosenEmotionNames} \u2192 Liefde):**\\nVanuit Chielio's Quantum Visie kijken we nu voorbij het probleem naar jouw creatiekracht: *Wie je bent is wie je ziet. Alles is creatie, alles is nu.* Een emotie is een gevoel bij een gedachte; wanneer je **Vreugde** en **Vertrouwen** samenbrengt, smelten ze samen tot **Liefde**.\\n\\n**2. Samen beslissen op het Liefdevolle Pad:**\\n*\"Ik denk niet dat dat niet onmogelijk is \u2014 Ik denk wel dat \u00e0lles mogelijk is.\"* Gebruik je ogen vandaag als **projector** (zender van jouw mooiste muzikale frequentie \ud83c\udfb6) en kies voor **Liefde, Vertrouwen, Geven, Loslaten en Accepteren**. Zullen we samen kijken naar een liefdevol plan om hier vandaag \u00e9\u00e9n lichte stap in te zetten?`;\n                }\n\n                return `${step1Psych}\\n\\n---QUANTUM_SPLIT---\\n\\n${step2Quantum}`;\n            }\n\n            \/\/ RENDERING NAAR TWEE GROTE VISUELE KAARTEN + START\/EIND DISCLAIMERS\n            function formatTwoStepStudioHTML(rawText) {\n                const cleanText = String(rawText || '');\n                if (cleanText.includes('---QUANTUM_SPLIT---')) {\n                    const parts = cleanText.split('---QUANTUM_SPLIT---');\n                    const step1 = formatMarkdownToStudioHTML(parts[0].trim());\n                    const step2 = formatMarkdownToStudioHTML(parts.slice(1).join('\\n').trim());\n\n                    return `\n                        <div class=\"grid grid-cols-1 xl:grid-cols-2 gap-5\">\n                            <!-- STAP 1 CARD: WERELDSE PSYCHOLOOG -->\n                            <div class=\"p-5 sm:p-6 rounded-2xl bg-slate-900\/90 border border-sky-400\/40 space-y-3 shadow-md\">\n                                <div class=\"flex items-center justify-between border-b border-sky-400\/25 pb-2.5 flex-wrap gap-2\">\n                                    <span class=\"text-sm sm:text-base font-bold uppercase tracking-wider text-sky-300 flex items-center gap-2\">\n                                        \ud83e\udde0 Stap 1 \u2022 De Wereldse Psycholoog\n                                    <\/span>\n                                    <span class=\"text-xs px-2.5 py-0.5 rounded bg-sky-500\/15 text-sky-200 border border-sky-400\/30\">Concrete & Nuchtere Spiegel<\/span>\n                                <\/div>\n                                <div class=\"text-ivory\/95 space-y-3\">${step1}<\/div>\n                            <\/div>\n\n                            <!-- STAP 2 CARD: CHIELIO'S QUANTUM VISIE -->\n                            <div class=\"p-5 sm:p-6 rounded-2xl bg-forest\/90 border border-gold\/45 space-y-3 shadow-md\">\n                                <div class=\"flex items-center justify-between border-b border-gold\/25 pb-2.5 flex-wrap gap-2\">\n                                    <span class=\"text-sm sm:text-base font-bold uppercase tracking-wider text-gold-light flex items-center gap-2\">\n                                        \u2728 Stap 2 \u2022 Chielio's Quantum Visie & Het Liefdevolle Pad\n                                    <\/span>\n                                    <span class=\"text-xs px-2.5 py-0.5 rounded bg-gold\/15 text-gold-light border border-gold\/30 font-serif italic\">Liefde \u2022 Creatie \u2022 Nu \ud83c\udfb6<\/span>\n                                <\/div>\n                                <div class=\"text-ivory\/95 space-y-3\">${step2}<\/div>\n                            <\/div>\n                        <\/div>\n                    `;\n                }\n                return formatMarkdownToStudioHTML(cleanText);\n            }\n\n            \/\/ Plaatst het nieuwste antwoord direct BOVENAAN in het grote antwoordenveld zodat het meteen optimaal leesbaar is\n            function appendExchangeCard(questionTitle, answerHTML, isWelcome) {\n                const container = document.getElementById('chat-container');\n                if (!container) return;\n                const wrapper = document.createElement('article');\n                wrapper.className = 'rounded-2xl p-5 sm:p-7 bg-obsidian\/95 border-2 border-gold\/35 text-ivory shadow-2xl space-y-4 transition-all';\n\n                const questionBadgeHTML = isWelcome\n                    ? `<div class=\"inline-flex items-center gap-2 px-3 py-1 rounded-full bg-gold\/15 border border-gold\/35 text-xs font-semibold text-gold-light\">\n                            <span>\ud83c\udfb6 ${escapeHtml(questionTitle)}<\/span>\n                       <\/div>`\n                    : `<div class=\"p-4 rounded-xl bg-gradient-to-r from-gold\/20 via-forest\/80 to-obsidian border border-gold\/45 flex flex-col sm:flex-row sm:items-center justify-between gap-2\">\n                            <div>\n                                <span class=\"text-[11px] uppercase tracking-wider text-gold-light font-bold block\">Jouw gestelde vraag (${escapeHtml(clientName || 'Jij')}):<\/span>\n                                <p class=\"font-semibold text-ivory mt-0.5\">${escapeHtml(questionTitle)}<\/p>\n                            <\/div>\n                            <span class=\"text-xs px-2.5 py-1 rounded-lg bg-gold text-obsidian font-bold shrink-0 self-start sm:self-center\">Nieuwste Antwoord<\/span>\n                       <\/div>`;\n\n                wrapper.innerHTML = `\n                    <!-- Begin-interactie Disclaimer bovenaan het antwoord -->\n                    ${getChatStartDisclaimerHTML()}\n\n                    <!-- Gestelde Vraag Samenvatting -->\n                    ${questionBadgeHTML}\n\n                    <!-- Antwoord Header -->\n                    <div class=\"flex flex-col sm:flex-row sm:items-center justify-between gap-2 border-b border-gold\/20 pb-2.5\">\n                        <div class=\"flex items-center gap-2.5\">\n                            <span class=\"w-7 h-7 rounded-full bg-gold\/20 border border-gold\/50 flex items-center justify-center text-gold-light shrink-0 text-sm\">\n                                \ud83c\udfb6\n                            <\/span>\n                            <span class=\"font-serif font-bold text-lg sm:text-xl text-gold-light\">Antwoord van Chielio's Mentale Steunpilaar GPT<\/span>\n                        <\/div>\n                        <span class=\"text-xs text-sage italic font-serif\">\n                            Voor de mensen op het liefdevolle pad\n                        <\/span>\n                    <\/div>\n\n                    <!-- Het Grote 2-Staps Antwoord -->\n                    <div class=\"space-y-4\">${answerHTML}<\/div>\n\n                    <!-- Einde-interactie Disclaimer onderaan het antwoord -->\n                    ${getChatEndDisclaimerHTML()}\n                `;\n\n                if (container.firstChild) {\n                    container.insertBefore(wrapper, container.firstChild);\n                } else {\n                    container.appendChild(wrapper);\n                }\n                container.scrollTop = 0;\n            }\n\n            function appendLoadingIndicator(userQuestion) {\n                const container = document.getElementById('chat-container');\n                const id = 'loading-' + Date.now();\n                if (!container) return id;\n                const wrapper = document.createElement('div');\n                wrapper.id = id;\n                wrapper.className = 'rounded-2xl p-6 bg-obsidian\/95 border-2 border-gold\/50 text-gold-light flex flex-col sm:flex-row items-start sm:items-center justify-between gap-4 shadow-xl';\n                wrapper.innerHTML = `\n                    <div class=\"flex items-center gap-3.5\">\n                        <span class=\"inline-block w-6 h-6 border-2 border-gold border-t-transparent rounded-full spin-loader shrink-0\"><\/span>\n                        <div>\n                            <div class=\"text-xs uppercase tracking-wider text-sage\">Bezig met spiegelen van jouw vraag: \"${escapeHtml(userQuestion || '')}\"<\/div>\n                            <div class=\"font-serif italic text-base sm:text-lg text-gold-light mt-0.5\">Stap 1: Wereldse psycholoog analyseert je vraag... Stap 2: Chielio stemt af op de Quantum Visie in Liefde...<\/div>\n                        <\/div>\n                    <\/div>\n                `;\n                if (container.firstChild) {\n                    container.insertBefore(wrapper, container.firstChild);\n                } else {\n                    container.appendChild(wrapper);\n                }\n                container.scrollTop = 0;\n                return id;\n            }\n\n            function removeLoadingIndicator(id) {\n                const el = document.getElementById(id);\n                if (el && el.parentNode) el.parentNode.removeChild(el);\n            }\n\n            function formatMarkdownToStudioHTML(md) {\n                let safe = escapeHtml(md);\n                safe = safe.replace(\/\\*\\*(.+?)\\*\\*\/g, '<strong class=\"text-gold-light font-semibold\">$1<\/strong>');\n                safe = safe.replace(\/\\*(.+?)\\*\/g, '<em class=\"font-serif text-ivory\/95 text-[15px]\">$1<\/em>');\n                safe = safe.replace(\/^- (.+)$\/gm, '<li class=\"ml-4 list-disc text-ivory\/90 marker:text-gold\">$1<\/li>');\n                safe = safe.replace(\/^(\\d+)\\. (.+)$\/gm, '<div class=\"flex items-start gap-2 my-1\"><span class=\"text-gold font-semibold\">$1.<\/span><span>$2<\/span><\/div>');\n                return safe.split(\/\\n\\n+\/).map(p => `<p class=\"leading-relaxed\">${p.replace(\/\\n\/g, '<br>')}<\/p>`).join('');\n            }\n\n            function escapeHtml(str) {\n                return String(str || '')\n                    .replace(\/&\/g, '&amp;')\n                    .replace(\/<\/g, '&lt;')\n                    .replace(\/>\/g, '&gt;')\n                    .replace(\/\"\/g, '&quot;');\n            }\n\n            \/\/ MODALS & DEBUG CONSOLE\n            function openKnowledgeModal() {\n                document.getElementById('knowledge-modal')?.classList.remove('hidden');\n            }\n            function closeKnowledgeModal() {\n                document.getElementById('knowledge-modal')?.classList.add('hidden');\n            }\n\n            function openDebugModal() {\n                document.getElementById('debug-modal')?.classList.remove('hidden');\n            }\n            function closeDebugModal() {\n                document.getElementById('debug-modal')?.classList.add('hidden');\n            }\n\n            function updateDiagEngine(statusText) {\n                const el = document.getElementById('diag-engine');\n                if (el) el.textContent = statusText;\n            }\n\n            function saveCustomApiKey() {\n                const input = document.getElementById('custom-api-key');\n                const msg = document.getElementById('api-key-saved-msg');\n                if (!input) return;\n                const val = input.value.trim();\n                if (val) {\n                    localStorage.setItem('chielio_gemini_api_key', val);\n                } else {\n                    localStorage.removeItem('chielio_gemini_api_key');\n                }\n                if (msg) {\n                    msg.classList.remove('hidden');\n                    setTimeout(() => msg.classList.add('hidden'), 2500);\n                }\n            }\n\n            function runSelfTest() {\n                closeDebugModal();\n                triggerUserMessage(\"Kun je mij kort laten zien hoe Stap 1 (De Wereldse Psycholoog) en Stap 2 (Chielio's Quantum Visie richting Liefde) samenwerken als ik twijfel of pieker?\");\n            }\n\n            function exportLovingAgreement() {\n                const modal = document.getElementById('agreement-modal');\n                const box = document.getElementById('agreement-summary-box');\n                if (!modal || !box) return;\n\n                const chosenEmotionNames = selectedEmotions.map(id => PLUTCHIK_EMOTIONS.find(e => e.id === id)?.name).join(' & ');\n                const lastAssistantTurns = chatHistory.filter(t => t.role === 'model').slice(-1).map(t => t.parts[0].text.replace(\/---QUANTUM_SPLIT---\/g, '\\n\\n')).join('\\n\\n');\n\n                const summaryText = \n`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\nCHIELIO'S MENTALE STEUNPILAAR \u2014 SAMEN GEMAAKTE LIEFDEVOLLE AFSPRAAK\nVoor de mensen op het liefdevolle pad \u2022 Chielio.Com Componist\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n\nDISCLAIMER: Geen vervanging voor een echte BIG-geregistreerde psycholoog.\nDe antwoorden kunnen contraproductief zijn voor jouw specifieke situatie.\n\nNaam reiziger: ${clientName || 'Liefdevol mens in het Nu'}\nGekozen emotie-focus (Plutchik): ${chosenEmotionNames} \u2192 Op weg naar Vreugde + Vertrouwen = Liefde\nQuantum Visie: Ik gebruik mijn ogen als projector en kies mijn meest verheven vorm van Liefde.\n\nKERNHERINNERINGEN VOOR VANDAAG:\n1. Een emotie is een gevoel bij een gedachte. Wil ik een ander gevoel, dan mag ik liefdevol anders denken.\n2. Wat ik nu nog niet kan veranderen, geef ik bewust een pauze (Accepteren in plaats van Aanvechten).\n3. Loslaten is vergeven, accepteren, afscheid nemen en verder gaan.\n4. \"Ik denk niet dat dat niet onmogelijk is \u2014 Ik denk wel dat \u00e0lles mogelijk is.\"\n5. Tijd is een illusie, iets is nu \u2014 Neem de tijd!\n\n${lastAssistantTurns ? `LAATSTE 2-STAPS INZICHT UIT ONS GESPREK:\\n${lastAssistantTurns}` : `STARTVRAAG OM MEE TE NEMEN:\\nWaar word ik vandaag blij van, en welke kleine liefdevolle stap zet ik voor mijzelf?`}\n\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\nVerwoord door: Michiel Wouter Reedijk \u2022 Chielio72@gmail.com \u2022 0654258842`;\n\n                box.textContent = summaryText;\n                modal.classList.remove('hidden');\n            }\n\n            function closeAgreementModal() {\n                document.getElementById('agreement-modal')?.classList.add('hidden');\n            }\n\n            function copyAgreementText() {\n                const box = document.getElementById('agreement-summary-box');\n                if (!box) return;\n                const temp = document.createElement('textarea');\n                temp.value = box.textContent;\n                document.body.appendChild(temp);\n                temp.select();\n                document.execCommand('copy');\n                document.body.removeChild(temp);\n\n                const feedback = document.getElementById('copy-feedback');\n                if (feedback) {\n                    feedback.classList.remove('opacity-0');\n                    setTimeout(() => feedback.classList.add('opacity-0'), 2500);\n                }\n            }\n\n            function askPlanInChat() {\n                closeAgreementModal();\n                triggerUserMessage(\"Zullen we samen kijken naar een concreet psychologisch \u00e9n liefdevol Quantum-plan voor mij? Wat kan ik nu zelf doen, waar neem ik een pauze in, en wat spreken we samen af?\");\n            }\n\n            function resetConversation() {\n                chatHistory = [];\n                isProcessing = false;\n                const container = document.getElementById('chat-container');\n                if (container) container.innerHTML = '';\n                injectWelcomeMessage();\n            }\n\n            function switchMobileTab(tab) {\n                const kompas = document.getElementById('panel-kompas');\n                const chat = document.getElementById('panel-chat');\n                const creatie = document.getElementById('panel-creatie');\n\n                const btnChat = document.getElementById('tab-btn-chat');\n                const btnKompas = document.getElementById('tab-btn-kompas');\n                const btnCreatie = document.getElementById('tab-btn-creatie');\n\n                if (kompas) kompas.classList.add('hidden');\n                if (chat) chat.classList.add('hidden');\n                if (creatie) creatie.classList.add('hidden');\n\n                const inactiveClass = 'py-2 px-2 rounded-xl text-xs font-medium bg-obsidian\/80 border border-gold\/25 text-sage hover:text-ivory flex items-center justify-center gap-1';\n                const activeClass = 'py-2 px-2 rounded-xl text-xs font-semibold bg-gold text-obsidian flex items-center justify-center gap-1 shadow';\n\n                [btnChat, btnKompas, btnCreatie].forEach(b => {\n                    if (b) b.className = inactiveClass;\n                });\n\n                if (tab === 'chat' && chat) {\n                    chat.classList.remove('hidden');\n                    if (btnChat) btnChat.className = activeClass;\n                } else if (tab === 'kompas' && kompas) {\n                    kompas.classList.remove('hidden');\n                    kompas.classList.add('flex');\n                    if (btnKompas) btnKompas.className = activeClass;\n                } else if (tab === 'creatie' && creatie) {\n                    creatie.classList.remove('hidden');\n                    creatie.classList.add('flex');\n                    if (btnCreatie) btnCreatie.className = activeClass;\n                }\n\n                const workspace = document.getElementById('workspace-grid');\n                if (workspace) {\n                    workspace.scrollIntoView({ behavior: 'smooth', block: 'start' });\n                }\n            }\n\n            return {\n                init,\n                toggleEmotion,\n                sendEmotionToChat,\n                selectPillar,\n                exploreDuality,\n                nextProverb,\n                transformNietNaarWel,\n                sendNietWelToChat,\n                toggleVisionMode,\n                askEightOption,\n                setResponseMode,\n                toggleMaxReadingMode,\n                setAnswerFontSize,\n                triggerChip,\n                cycleReflectionChips,\n                handleChatSubmit,\n                triggerUserMessage,\n                endInteractionWithDisclaimer,\n                openKnowledgeModal,\n                closeKnowledgeModal,\n                openDebugModal,\n                closeDebugModal,\n                saveCustomApiKey,\n                runSelfTest,\n                exportLovingAgreement,\n                closeAgreementModal,\n                copyAgreementText,\n                askPlanInChat,\n                resetConversation,\n                switchMobileTab\n            };\n        })();\n\n        if (document.readyState === 'loading') {\n            document.addEventListener('DOMContentLoaded', ChielioApp.init);\n        } else {\n            ChielioApp.init();\n        }\n    <\/script>\n<\/body>\n<\/html>\n","protected":false},"excerpt":{"rendered":"<p>Chielio&#8217;s Mentale Steunpilaar GPT \u2014 Quantum Denken &#038; Liefdevolle Psychologie \u26a0\ufe0f BIG-Disclaimer Geen vervanging voor een echte BIG-geregistreerde psycholoog: Chielio&#8217;s Mentale Steunpilaar GPT biedt AI-zelfreflectie en filosofische inspiratie. De gegenereerde antwoorden kunnen contraproductief zijn voor jouw specifieke situatie. Raadpleeg bij psychische klachten of twijfel altijd je huisarts of een BIG-geregistreerde zorgprofessional. Directe crisis? Bel 113&#8230;<\/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-225","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Chielio&#039;s Mentale Steunpilaar GPT beta 0.93 - Chielio.Com Componist<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/chielio.com\/?page_id=225\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Chielio&#039;s Mentale Steunpilaar GPT beta 0.93 - Chielio.Com Componist\" \/>\n<meta property=\"og:description\" content=\"Chielio&#8217;s Mentale Steunpilaar GPT \u2014 Quantum Denken &#038; Liefdevolle Psychologie \u26a0\ufe0f BIG-Disclaimer Geen vervanging voor een echte BIG-geregistreerde psycholoog: Chielio&#8217;s Mentale Steunpilaar GPT biedt AI-zelfreflectie en filosofische inspiratie. De gegenereerde antwoorden kunnen contraproductief zijn voor jouw specifieke situatie. Raadpleeg bij psychische klachten of twijfel altijd je huisarts of een BIG-geregistreerde zorgprofessional. Directe crisis? Bel 113...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/chielio.com\/?page_id=225\" \/>\n<meta property=\"og:site_name\" content=\"Chielio.Com Componist\" \/>\n<meta property=\"article:modified_time\" content=\"2026-11-10T22:47:32+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/chielio.com\/wp-content\/uploads\/2026\/09\/Logo-site-Chielio-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"504\" \/>\n\t<meta property=\"og:image:height\" content=\"498\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/chielio.com\/?page_id=225\",\"url\":\"https:\/\/chielio.com\/?page_id=225\",\"name\":\"Chielio's Mentale Steunpilaar GPT beta 0.93 - Chielio.Com Componist\",\"isPartOf\":{\"@id\":\"https:\/\/chielio.com\/#website\"},\"datePublished\":\"2026-11-10T04:00:53+00:00\",\"dateModified\":\"2026-11-10T22:47:32+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/chielio.com\/?page_id=225#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/chielio.com\/?page_id=225\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/chielio.com\/?page_id=225#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/chielio.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Chielio&#8217;s Mentale Steunpilaar GPT beta 0.93\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/chielio.com\/#website\",\"url\":\"https:\/\/chielio.com\/\",\"name\":\"Chielio.com\",\"description\":\"Songwriter Tekstdichter Componist Producer Kur op Muziek\",\"publisher\":{\"@id\":\"https:\/\/chielio.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/chielio.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/chielio.com\/#organization\",\"name\":\"K\u00fcr op muziek op en in de maat\",\"url\":\"https:\/\/chielio.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/chielio.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/chielio.com\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-29-at-08.01.08-1024x465.png\",\"contentUrl\":\"https:\/\/chielio.com\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-29-at-08.01.08-1024x465.png\",\"width\":1024,\"height\":465,\"caption\":\"K\u00fcr op muziek op en in de maat\"},\"image\":{\"@id\":\"https:\/\/chielio.com\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Chielio's Mentale Steunpilaar GPT beta 0.93 - Chielio.Com Componist","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/chielio.com\/?page_id=225","og_locale":"en_US","og_type":"article","og_title":"Chielio's Mentale Steunpilaar GPT beta 0.93 - Chielio.Com Componist","og_description":"Chielio&#8217;s Mentale Steunpilaar GPT \u2014 Quantum Denken &#038; Liefdevolle Psychologie \u26a0\ufe0f BIG-Disclaimer Geen vervanging voor een echte BIG-geregistreerde psycholoog: Chielio&#8217;s Mentale Steunpilaar GPT biedt AI-zelfreflectie en filosofische inspiratie. De gegenereerde antwoorden kunnen contraproductief zijn voor jouw specifieke situatie. Raadpleeg bij psychische klachten of twijfel altijd je huisarts of een BIG-geregistreerde zorgprofessional. Directe crisis? Bel 113...","og_url":"https:\/\/chielio.com\/?page_id=225","og_site_name":"Chielio.Com Componist","article_modified_time":"2026-11-10T22:47:32+00:00","og_image":[{"width":504,"height":498,"url":"https:\/\/chielio.com\/wp-content\/uploads\/2026\/09\/Logo-site-Chielio-1.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/chielio.com\/?page_id=225","url":"https:\/\/chielio.com\/?page_id=225","name":"Chielio's Mentale Steunpilaar GPT beta 0.93 - Chielio.Com Componist","isPartOf":{"@id":"https:\/\/chielio.com\/#website"},"datePublished":"2026-11-10T04:00:53+00:00","dateModified":"2026-11-10T22:47:32+00:00","breadcrumb":{"@id":"https:\/\/chielio.com\/?page_id=225#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/chielio.com\/?page_id=225"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/chielio.com\/?page_id=225#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/chielio.com\/"},{"@type":"ListItem","position":2,"name":"Chielio&#8217;s Mentale Steunpilaar GPT beta 0.93"}]},{"@type":"WebSite","@id":"https:\/\/chielio.com\/#website","url":"https:\/\/chielio.com\/","name":"Chielio.com","description":"Songwriter Tekstdichter Componist Producer Kur op Muziek","publisher":{"@id":"https:\/\/chielio.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/chielio.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/chielio.com\/#organization","name":"K\u00fcr op muziek op en in de maat","url":"https:\/\/chielio.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/chielio.com\/#\/schema\/logo\/image\/","url":"https:\/\/chielio.com\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-29-at-08.01.08-1024x465.png","contentUrl":"https:\/\/chielio.com\/wp-content\/uploads\/2024\/04\/Screenshot-2024-04-29-at-08.01.08-1024x465.png","width":1024,"height":465,"caption":"K\u00fcr op muziek op en in de maat"},"image":{"@id":"https:\/\/chielio.com\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/chielio.com\/index.php?rest_route=\/wp\/v2\/pages\/225","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chielio.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/chielio.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/chielio.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/chielio.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=225"}],"version-history":[{"count":12,"href":"https:\/\/chielio.com\/index.php?rest_route=\/wp\/v2\/pages\/225\/revisions"}],"predecessor-version":[{"id":244,"href":"https:\/\/chielio.com\/index.php?rest_route=\/wp\/v2\/pages\/225\/revisions\/244"}],"wp:attachment":[{"href":"https:\/\/chielio.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}