{"id":4624,"date":"2025-07-18T10:23:27","date_gmt":"2025-07-18T15:23:27","guid":{"rendered":"https:\/\/madlysane.com\/?page_id=4624"},"modified":"2026-02-21T17:45:25","modified_gmt":"2026-02-21T23:45:25","slug":"spirituality-mindfulness-hub","status":"publish","type":"page","link":"https:\/\/madlysane.site\/en\/spirituality-mindfulness-hub\/","title":{"rendered":"Spirituality &amp; Mindfulness Hub"},"content":{"rendered":"\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\" id=\"max-width-initial\">\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\"><\/div>\n\n\n<div class=\"entry-content wp-block-post-content has-global-padding is-layout-constrained wp-block-post-content-is-layout-constrained\">\n\n<!-- Show-Welcome Button (anywhere on the page) -->\n<button id=\"show-welcome-btn\" style=\"position:fixed;bottom:1rem;right:1rem;\n               padding:0.6em 1em;background:#08A0E9;color:#fff;\n               border:none;border-radius:4px;cursor:pointer;z-index:1000;\">\n  Show Welcome Info\n<\/button>\n\n<!-- 0) WELCOME MODAL -->\n<div id=\"welcome-modal\" style=\"display:none;position:fixed;top:0;left:0;\n            width:100%;height:100%;background:rgba(0,0,0,0.6);\n            align-items:center;justify-content:center;z-index:999;\">\n  <div style=\"background:#fff;padding:1.5em;border-radius:8px;\n              width:90%;max-width:400px;text-align:left;position:relative;\">\n    <div id=\"welcome-slides\">\n      <!-- Slide 1 -->\n      <div class=\"slide\">      <h2>Welcome to the Spirituality &amp; Mindfulness Hub<\/h2>\n      <p>\n        This is a user-built Spirituality Hub. You create and share the content. Explore Guided Practices, add to your Digital Altar,<br>\n        track your mindfulness journey, and more. Each section offers a unique way to engage.<\/p>\n        <h3>1. Guided Practices<\/h3>\n        <ul>\n          <li>Discover, share, and experience transformative rituals and techniques.<\/li>\n          <li>Submit a Practice: Use the form to share your favorite breathing exercise, meditation, mantra, or audio\/video ritual (2\u20135 minutes).<\/li>\n          <li>Browse the Library: Scroll through submitted practices to find what resonates.<\/li>\n          <li>Engage Daily: Try one practice each morning or evening.<\/li>\n        <\/ul>\n      <\/div>\n      <!-- Slide 2 -->\n      <div class=\"slide\">\n        <h3>2. Daily Inspirations<\/h3>\n        <ul>\n          <li>Refresh your spirit with bite-sized reflections.<\/li>\n          <li>Submit an Inspiration: Share a quote, prayer, affirmation, or journal prompt.<\/li>\n          <li>Read and Reflect: Browse community prompts to guide your day.<\/li>\n        <\/ul>\n      <\/div>\n      <!-- Slide 3 -->\n      <div class=\"slide\">\n        <h3>3. Digital Altar<\/h3>\n        <ul>\n          <li>A shared space for sacred expression.<\/li>\n          <li>Post Your Offering: Add image, poem, prayer, or audio clip.<\/li>\n          <li>Interact Freely: Drag, arrange, and explore others\u2019 contributions.<\/li>\n        <\/ul>\n      <\/div>\n      <!-- Slide 4 -->\n      <div class=\"slide\">\n        <h3>4. Select Your Track<\/h3>\n        <ul>\n          <li>Tailor the space to your approach.<\/li>\n          <li>Faith-Based or Secular Mindfulness.<\/li>\n          <li>Your selection may customize which practices appear.<\/li>\n        <\/ul>\n      <\/div>\n      <!-- Slide 5 -->\n      <div class=\"slide\">\n        <h3>5. SoulCircle Forum<\/h3>\n        <ul>\n          <li>Join thoughtful discussion and mutual support.<\/li>\n          <li>Browse Conversations &amp; Start a Thread.<\/li>\n          <li>Respect, openness, and curiosity guide us.<\/li>\n        <\/ul>\n      <\/div>\n      <!-- Slide 6 -->\n      <div class=\"slide\">\n        <h3>6. Your Badges<\/h3>\n        <ul>\n          <li>Celebrate your contribution and growth.<\/li>\n          <li>Earn XP: Every submission gives you points.<\/li>\n          <li>Unlock Badges at key thresholds.<\/li>\n        <\/ul>\n      <\/div>\n      <!-- Slide 7 -->\n      <div class=\"slide\">\n        <h3>7. Pulse Check<\/h3>\n        <ul>\n          <li>Tune into the collective energy.<\/li>\n          <li>Daily Poll: Answer one reflective question.<\/li>\n          <li>Live Chart: Track emotional and spiritual rhythms over time.<\/li>\n        <\/ul>\n      <\/div>\n      <!-- Slide 8 -->\n      <div class=\"slide\">\n        <h3>8. Path Spotlight<\/h3>\n        <ul>\n          <li>Try one curated experience each week.<\/li>\n          <li>This Week: \u201cSunrise Gratitude\u201d\u2014a breathwork practice.<\/li>\n          <li>New spotlights update weekly\u2014check back often.<\/li>\n        <\/ul>\n      <\/div>\n      <!-- Slide 9 -->\n      <div class=\"slide\">\n        <h3>9. 2-Minute Reflection Timer<\/h3>\n        <ul>\n          <li>Ground, breathe, and pause.<\/li>\n          <li>Click \u201cStart\u201d to launch a quiet 2-minute countdown.<\/li>\n          <li>Use before or after any hub activity.<\/li>\n        <\/ul>\n      <\/div>\n    <\/div>\n\n    <!-- Navigation -->\n    <div style=\"display:flex;justify-content:space-between;margin-top:1em;\">\n      <button id=\"welcome-prev\" style=\"padding:0.5em 1em;background:#ccc;border:none;border-radius:4px;cursor:pointer;\">\n        \u2190 Prev\n      <\/button>\n      <button id=\"welcome-next\" style=\"padding:0.5em 1em;background:#08A0E9;color:#fff;border:none;border-radius:4px;cursor:pointer;\">\n        Next \u2192\n      <\/button>\n      <button id=\"close-welcome\" style=\"padding:0.5em 1em;background:#e04e39;color:#fff;border:none;border-radius:4px;cursor:pointer;display:none;\">\n        Got It!\n      <\/button>\n    <\/div>\n  <\/div>\n<\/div>\n\n  <!-- \u2026your header, nav, and tabcontent divs follow here\u2026 -->\n\n  <header>\n    <h1>Spirituality &amp; Mindfulness Hub<\/h1>\n  <\/header>\n\n  <nav>\n    <button class=\"tablinks active\" onclick=\"openTab(event,'Guided')\" id=\"defaultOpen\">Guided<\/button>\n    <button class=\"tablinks\" onclick=\"openTab(event,'Inspirations')\">Inspirations<\/button>\n    <button class=\"tablinks\" onclick=\"openTab(event,'Altar')\">Digital Altar<\/button>\n    <button class=\"tablinks\" onclick=\"openTab(event,'Track')\">Select Track<\/button>\n    <button class=\"tablinks\" onclick=\"openTab(event,'Forum')\">Forum<\/button>\n    <button class=\"tablinks\" onclick=\"openTab(event,'Badges')\">Badges<\/button>\n    <button class=\"tablinks\" onclick=\"openTab(event,'Pulse')\">Pulse Check<\/button>\n    <button class=\"tablinks\" onclick=\"openTab(event,'Spotlight')\">Spotlight<\/button>\n    <button class=\"tablinks\" onclick=\"openTab(event,'Timer')\">Reflection Timer<\/button>\n  <\/nav>\n\n<!-- 1) Guided Practices -->\n<div id=\"Guided\" class=\"tabcontent\" style=\"display: block;\">\n<h2>Guided Practices<\/h2>\n    <div class=\"msgp-form-wrap\">\n        <form class=\"msgp-form\" data-action=\"madlysane_gp_submit_practice\" enctype=\"multipart\/form-data\" novalidate>\n                <fieldset class=\"msgp-field-group msgp-track-group\">\n        <legend class=\"msgp-label msgp-required\">Track<\/legend>\n        <p class=\"msgp-field-hint\">Choose the path that resonates with you today.<\/p>\n        <div class=\"msgp-radio-grid\">\n            <label class=\"msgp-radio-card\">\n                <input type=\"radio\" name=\"gp_track\" value=\"faith\" required>\n                <span class=\"msgp-radio-icon\">\ud83d\ude4f<\/span>\n                <span class=\"msgp-radio-label\">Faith<\/span>\n                <span class=\"msgp-radio-desc\">Spiritual or devotional focus<\/span>\n            <\/label>\n            <label class=\"msgp-radio-card\">\n                <input type=\"radio\" name=\"gp_track\" value=\"secular\">\n                <span class=\"msgp-radio-icon\">\ud83e\uddd8<\/span>\n                <span class=\"msgp-radio-label\">Secular<\/span>\n                <span class=\"msgp-radio-desc\">Mindfulness & wellness focus<\/span>\n            <\/label>\n        <\/div>\n        <div class=\"msgp-error\" id=\"error-track\" role=\"alert\"><\/div>\n    <\/fieldset>\n                <div class=\"msgp-field-group\">\n                <label class=\"msgp-label msgp-required\" for=\"gp_breathwork\">Morning Breathwork<\/label>\n                <p class=\"msgp-field-hint\">Describe your morning breathwork practice in detail.<\/p>\n                <textarea id=\"gp_breathwork\" name=\"gp_breathwork\" class=\"msgp-textarea\" rows=\"6\"\n                    placeholder=\"e.g. I started with 4-7-8 breathing for 5 minutes\u2026\" required><\/textarea>\n                <div class=\"msgp-error\" id=\"error-breathwork\" role=\"alert\"><\/div>\n            <\/div>\n            <div class=\"msgp-field-group\">\n                <label class=\"msgp-label msgp-required-conditional\" for=\"gp_video_url\">\n                    Audio\/Video URL <span class=\"msgp-label-hint\">(2\u20135 min)<\/span>\n                <\/label>\n                <p class=\"msgp-field-hint\">Paste a YouTube, Vimeo, or SoundCloud link.<\/p>\n                <input type=\"url\" id=\"gp_video_url\" name=\"gp_video_url\" class=\"msgp-input\" placeholder=\"https:\/\/www.youtube.com\/watch?v=\u2026\">\n                <div class=\"msgp-error\" id=\"error-video\" role=\"alert\"><\/div>\n            <\/div>\n            <div class=\"msgp-field-group\">\n                <label class=\"msgp-label\" for=\"gp_video_file\">\n                    Or upload a video \/ audio file <span class=\"msgp-optional\">(optional, max 64 MB)<\/span>\n                <\/label>\n                <p class=\"msgp-field-hint\">Accepted: MP4, MOV, WebM, MP3, OGG, WAV.<\/p>\n                <div class=\"msgp-upload-area\">\n                    <input type=\"file\" id=\"gp_video_file\" name=\"gp_video_file\" class=\"msgp-file-input\"\n                        accept=\"video\/mp4,video\/quicktime,video\/webm,audio\/mpeg,audio\/ogg,audio\/wav\">\n                    <label for=\"gp_video_file\" class=\"msgp-upload-label\">\n                        <span class=\"msgp-upload-icon\">\ud83d\udcce<\/span>\n                        <span class=\"msgp-upload-text\">Click to choose or drag & drop<\/span>\n                    <\/label>\n                    <div class=\"msgp-upload-preview\" style=\"display:none;\"><\/div>\n                <\/div>\n            <\/div>\n                <div class=\"msgp-submit-row\">\n        <button type=\"submit\" class=\"msgp-submit-btn\">\n            <span class=\"msgp-btn-text\">Share My Practice<\/span>\n            <span class=\"msgp-btn-spinner\" style=\"display:none;\" aria-hidden=\"true\">\u23f3<\/span>\n        <\/button>\n    <\/div>\n    <div class=\"msgp-response\" role=\"status\" aria-live=\"polite\"><\/div>\n            <\/form>\n    <\/div>\n    \n<div class=\"msgp-feed-wrap\" data-feed=\"guided_practice\"><div class=\"msgp-feed-grid\">            <article class=\"msgp-entry-card msgp-track-secular\" data-track=\"secular\">\n                <div class=\"msgp-entry-track\"><span class=\"msgp-track-tag msgp-track-secular\">\ud83e\uddd8 Secular<\/span><\/div>                <div class=\"msgp-entry-media\"><div class=\"msgp-oembed-wrap\"><iframe loading=\"lazy\" title=\"Mindful Breathing Exercise\" width=\"600\" height=\"338\" src=\"https:\/\/www.youtube.com\/embed\/wfDTp2GogaQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div><\/div>                                <div class=\"msgp-entry-body\">\n                    <h3 class=\"msgp-entry-label\">Morning Breathwork<\/h3>\n                    <p class=\"msgp-entry-text\">Morning Guided Practice: Sunrise Breath &amp; Intention I begin with 3 deep belly breaths, inhaling through the nose and exhaling through the mouth to reset my body. I then do a short pulse pattern: \u2022 Inhale for 4 counts \u2022\u2026<\/p>\n                                        <button class=\"msgp-read-more-btn\" data-full=\"Morning Guided Practice: Sunrise Breath &amp; Intention  I begin with 3 deep belly breaths, inhaling through the nose and exhaling through the mouth to reset my body.  I then do a short pulse pattern: \u2022 Inhale for 4 counts \u2022 Hold for 2 counts \u2022 Exhale for 6 counts I repeat that cycle for about a minute, letting my mind settle.  While breathing, I mentally say: \u201cI arrive in the morning. I meet what is.\u201d  I finish with one spoken word to set my intention\u2014like \u201csteady,\u201d \u201copen,\u201d or \u201cease\u201d\u2014and carry that tone into the rest of the day.\">Read more<\/button>\n                    <div class=\"msgp-read-more-full\" hidden>Morning Guided Practice: Sunrise Breath &amp; Intention  I begin with 3 deep belly breaths, inhaling through the nose and exhaling through the mouth to reset my body.  I then do a short pulse pattern: \u2022 Inhale for 4 counts \u2022 Hold for 2 counts \u2022 Exhale for 6 counts I repeat that cycle for about a minute, letting my mind settle.  While breathing, I mentally say: \u201cI arrive in the morning. I meet what is.\u201d  I finish with one spoken word to set my intention\u2014like \u201csteady,\u201d \u201copen,\u201d or \u201cease\u201d\u2014and carry that tone into the rest of the day.<\/div>\n                                    <\/div>\n                    <footer class=\"msgp-entry-footer\">\n        <time class=\"msgp-entry-time\" datetime=\"2026-02-21T20:56:31-06:00\">\n            February 21, 2026 \u00b7 8:56 pm        <\/time>\n                <div class=\"msgp-entry-badges\">\n            <span class=\"msgp-badge\">\ud83c\udf31 First Submission<\/span><span class=\"msgp-badge\">\ud83d\udd25 3 Submissions<\/span><span class=\"msgp-badge\">\ud83c\udfac First Media Share<\/span><span class=\"msgp-badge\">\ud83d\ude4f Faith Explorer<\/span><span class=\"msgp-badge\">\ud83e\uddd8 Secular Explorer<\/span><span class=\"msgp-badge\">\ud83c\udf00 Both Paths<\/span>        <\/div>\n                    <\/footer>\n                <\/article>\n                        <article class=\"msgp-entry-card msgp-track-faith\" data-track=\"faith\">\n                <div class=\"msgp-entry-track\"><span class=\"msgp-track-tag msgp-track-faith\">\ud83d\ude4f Faith<\/span><\/div>                <div class=\"msgp-entry-media\"><div class=\"msgp-oembed-wrap\"><iframe loading=\"lazy\" title=\"Mindful Breathing Exercise\" width=\"600\" height=\"338\" src=\"https:\/\/www.youtube.com\/embed\/wfDTp2GogaQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/div><\/div>                                <div class=\"msgp-entry-body\">\n                    <h3 class=\"msgp-entry-label\">Morning Breathwork<\/h3>\n                    <p class=\"msgp-entry-text\">test 1<\/p>\n                                    <\/div>\n                    <footer class=\"msgp-entry-footer\">\n        <time class=\"msgp-entry-time\" datetime=\"2026-02-18T13:01:19-06:00\">\n            February 18, 2026 \u00b7 1:01 pm        <\/time>\n                <div class=\"msgp-entry-badges\">\n            <span class=\"msgp-badge\">\ud83c\udf31 First Practice<\/span><span class=\"msgp-badge\">\ud83d\ude4f Faith Explorer<\/span>        <\/div>\n                    <\/footer>\n                <\/article>\n            <\/div><\/div>\n<\/div>\n\n<!-- 2) Daily Inspirations -->\n<div id=\"Inspirations\" class=\"tabcontent\" style=\"display: none;\">\n<h2>Daily Inspirations<\/h2>\n    <div class=\"msgp-form-wrap\">\n        <form class=\"msgp-form\" data-action=\"madlysane_gp_submit_inspiration\" novalidate>\n            <div class=\"msgp-field-group\">\n                <label class=\"msgp-label msgp-required\" for=\"gp_inspiration\">Inspiration + Prompt<\/label>\n                <p class=\"msgp-field-hint\">Share your inspiration, reflection, or response to today's prompt.<\/p>\n                <textarea id=\"gp_inspiration\" name=\"gp_inspiration\" class=\"msgp-textarea\" rows=\"6\"\n                    placeholder=\"What inspired you today? What are you reflecting on?\" required><\/textarea>\n                <div class=\"msgp-error\" id=\"error-inspiration\" role=\"alert\"><\/div>\n            <\/div>\n                <fieldset class=\"msgp-field-group msgp-track-group\">\n        <legend class=\"msgp-label msgp-required\">Track<\/legend>\n        <p class=\"msgp-field-hint\">Choose the path that resonates with you today.<\/p>\n        <div class=\"msgp-radio-grid\">\n            <label class=\"msgp-radio-card\">\n                <input type=\"radio\" name=\"gp_track\" value=\"faith\" required>\n                <span class=\"msgp-radio-icon\">\ud83d\ude4f<\/span>\n                <span class=\"msgp-radio-label\">Faith<\/span>\n                <span class=\"msgp-radio-desc\">Spiritual or devotional focus<\/span>\n            <\/label>\n            <label class=\"msgp-radio-card\">\n                <input type=\"radio\" name=\"gp_track\" value=\"secular\">\n                <span class=\"msgp-radio-icon\">\ud83e\uddd8<\/span>\n                <span class=\"msgp-radio-label\">Secular<\/span>\n                <span class=\"msgp-radio-desc\">Mindfulness & wellness focus<\/span>\n            <\/label>\n        <\/div>\n        <div class=\"msgp-error\" id=\"error-track\" role=\"alert\"><\/div>\n    <\/fieldset>\n                    <div class=\"msgp-submit-row\">\n        <button type=\"submit\" class=\"msgp-submit-btn\">\n            <span class=\"msgp-btn-text\">Share My Inspiration<\/span>\n            <span class=\"msgp-btn-spinner\" style=\"display:none;\" aria-hidden=\"true\">\u23f3<\/span>\n        <\/button>\n    <\/div>\n    <div class=\"msgp-response\" role=\"status\" aria-live=\"polite\"><\/div>\n            <\/form>\n    <\/div>\n    \n<div class=\"msgp-feed-wrap\" data-feed=\"daily_inspiration\"><div class=\"msgp-feed-grid\">            <article class=\"msgp-entry-card msgp-track-faith\" data-track=\"faith\">\n                <div class=\"msgp-entry-track\"><span class=\"msgp-track-tag msgp-track-faith\">\ud83d\ude4f Faith<\/span><\/div>                <div class=\"msgp-entry-body\">\n                    <h3 class=\"msgp-entry-label\">Inspiration<\/h3>\n                    <p class=\"msgp-entry-text\">Your smallest act of honesty today can outshine yesterday\u2019s<\/p>\n                                    <\/div>\n                    <footer class=\"msgp-entry-footer\">\n        <time class=\"msgp-entry-time\" datetime=\"2026-02-21T21:00:26-06:00\">\n            February 21, 2026 \u00b7 9:00 pm        <\/time>\n                <div class=\"msgp-entry-badges\">\n            <span class=\"msgp-badge\">\ud83c\udf31 First Submission<\/span><span class=\"msgp-badge\">\ud83d\udd25 3 Submissions<\/span><span class=\"msgp-badge\">\ud83d\ude4f Faith Explorer<\/span><span class=\"msgp-badge\">\ud83e\uddd8 Secular Explorer<\/span><span class=\"msgp-badge\">\ud83c\udf00 Both Paths<\/span>        <\/div>\n                    <\/footer>\n                <\/article>\n                        <article class=\"msgp-entry-card msgp-track-faith\" data-track=\"faith\">\n                <div class=\"msgp-entry-track\"><span class=\"msgp-track-tag msgp-track-faith\">\ud83d\ude4f Faith<\/span><\/div>                <div class=\"msgp-entry-body\">\n                    <h3 class=\"msgp-entry-label\">Inspiration<\/h3>\n                    <p class=\"msgp-entry-text\">There is a version of you that you haven\u2019t met yet \u2014 the one who breathes before reacting, who pauses before absorbing, who chooses softness even when life feels sharp. Every morning is a quiet invitation to meet that version. Not by force. Not by perfection. Just by returning to\u2026<\/p>\n                                        <button class=\"msgp-read-more-btn\" data-full=\"There is a version of you that you haven\u2019t met yet \u2014 the one who breathes before reacting, who pauses before absorbing, who chooses softness even when life feels sharp.\r\n\r\nEvery morning is a quiet invitation to meet that version.\r\n\r\nNot by force.\r\nNot by perfection.\r\nJust by returning to yourself.\r\n\r\nOne breath at a time.\r\nOne intention at a time.\r\nOne moment of honesty at a time.\r\n\r\nYou don\u2019t have to have everything figured out.\r\nYou just have to be willing to begin again.\r\n\r\nAnd beginning again is holy work.\">Read more<\/button>\n                    <div class=\"msgp-read-more-full\" hidden>There is a version of you that you haven\u2019t met yet \u2014 the one who breathes before reacting, who pauses before absorbing, who chooses softness even when life feels sharp.<br \/>\r\n<br \/>\r\nEvery morning is a quiet invitation to meet that version.<br \/>\r\n<br \/>\r\nNot by force.<br \/>\r\nNot by perfection.<br \/>\r\nJust by returning to yourself.<br \/>\r\n<br \/>\r\nOne breath at a time.<br \/>\r\nOne intention at a time.<br \/>\r\nOne moment of honesty at a time.<br \/>\r\n<br \/>\r\nYou don\u2019t have to have everything figured out.<br \/>\r\nYou just have to be willing to begin again.<br \/>\r\n<br \/>\r\nAnd beginning again is holy work.<\/div>\n                                    <\/div>\n                    <footer class=\"msgp-entry-footer\">\n        <time class=\"msgp-entry-time\" datetime=\"2026-02-18T17:17:23-06:00\">\n            February 18, 2026 \u00b7 5:17 pm        <\/time>\n                <div class=\"msgp-entry-badges\">\n            <span class=\"msgp-badge\">\ud83c\udf31 First Submission<\/span><span class=\"msgp-badge\">\ud83d\ude4f Faith Explorer<\/span>        <\/div>\n                    <\/footer>\n                <\/article>\n                        <article class=\"msgp-entry-card msgp-track-secular\" data-track=\"secular\">\n                <div class=\"msgp-entry-track\"><span class=\"msgp-track-tag msgp-track-secular\">\ud83e\uddd8 Secular<\/span><\/div>                <div class=\"msgp-entry-body\">\n                    <h3 class=\"msgp-entry-label\">Inspiration<\/h3>\n                    <p class=\"msgp-entry-text\">Inspiration \u201cEach morning we are born again. What we do today is what matters most.\u201d \u2014 Buddha Even if yesterday felt heavy, stale, or unfinished\u2014you get to begin again now. Breath by breath, choice by choice. Prompt What would it look like to start this day without dragging yesterday behind\u2026<\/p>\n                                        <button class=\"msgp-read-more-btn\" data-full=\"Inspiration \u201cEach morning we are born again. What we do today is what matters most.\u201d \u2014 Buddha Even if yesterday felt heavy, stale, or unfinished\u2014you get to begin again now. Breath by breath, choice by choice. Prompt What would it look like to start this day without dragging yesterday behind you? Name one thing you\u2019d like to feel more of today, and one thing you\u2019ll gently leave behind. You can write, speak it aloud, or breathe it into your intention word for the day.\">Read more<\/button>\n                    <div class=\"msgp-read-more-full\" hidden>Inspiration \u201cEach morning we are born again. What we do today is what matters most.\u201d \u2014 Buddha Even if yesterday felt heavy, stale, or unfinished\u2014you get to begin again now. Breath by breath, choice by choice. Prompt What would it look like to start this day without dragging yesterday behind you? Name one thing you\u2019d like to feel more of today, and one thing you\u2019ll gently leave behind. You can write, speak it aloud, or breathe it into your intention word for the day.<\/div>\n                                    <\/div>\n                    <footer class=\"msgp-entry-footer\">\n        <time class=\"msgp-entry-time\" datetime=\"2026-02-18T14:44:01-06:00\">\n            February 18, 2026 \u00b7 2:44 pm        <\/time>\n                <div class=\"msgp-entry-badges\">\n            <span class=\"msgp-badge\">\ud83c\udf31 First Submission<\/span><span class=\"msgp-badge\">\ud83d\ude4f Faith Explorer<\/span><span class=\"msgp-badge\">\ud83e\uddd8 Secular Explorer<\/span><span class=\"msgp-badge\">\ud83c\udf00 Both Paths<\/span>        <\/div>\n                    <\/footer>\n                <\/article>\n            <\/div><\/div> \n<\/div>\n\n  <!-- 3) Digital Altar -->\n  <div id=\"Altar\" class=\"tabcontent\" style=\"display: none;\">\n<h2>Digital Altar<\/h2>\n    <iframe src=\"https:\/\/padlet.com\/embed\/u8h3mxyqpkwn75x0\" height=\"500\" frameborder=\"0\" allow=\"camera;microphone;autoplay\" loading=\"lazy\">\n    <\/iframe>\n  <\/div>\n\n  <!-- 4) Select Your Track -->\n  <div id=\"Track\" class=\"tabcontent\" style=\"display: none;\">\n    <h2>Select Your Track<\/h2>\n\n    <div class=\"ms-track-filter\" id=\"ms-track-filter\" role=\"group\" aria-label=\"Select your track\">\n        <button class=\"ms-track-filter-btn is-active\" data-track=\"\" aria-pressed=\"true\">All<\/button>\n        <button class=\"ms-track-filter-btn\" data-track=\"faith\"   aria-pressed=\"false\">\ud83d\ude4f Faith<\/button>\n        <button class=\"ms-track-filter-btn\" data-track=\"secular\" aria-pressed=\"false\">\ud83e\uddd8 Secular<\/button>\n    <\/div>\n    \n\n    \n  <\/div>\n\n  <!-- 5) SoulCircle Forum -->\n  <div id=\"Forum\" class=\"tabcontent\" style=\"display: none;\">\n    <h2>SoulCircle Discussion<\/h2>\n    <a href=\"https:\/\/madlysane.com\/en\/forums\/forum\/soulcircle-discussions\/\/\" style=\"color:#08A0E9;font-weight:bold;\">\n      Go to Community Forum \u2192\n    <\/a>\n  <\/div>\n\n  <!-- 6) Your Badges -->\n  <div id=\"Badges\" class=\"tabcontent\" style=\"display: none;\">\n    <h2>Your Badges<\/h2>\n<div id=\"badges\">\n    <div class=\"ms-user-badges-wrap\">\n                <p class=\"ms-user-badges-empty\">You haven't earned any badges yet \u2014 start sharing! \ud83c\udf31<\/p>\n            <\/div>\n    \n<\/div>\n  <\/div>\n\n<!-- 7) Daily Pulse Check -->\n<div id=\"Pulse\" class=\"tabcontent\" style=\"display: none;\">\n  <h2>Daily Pulse Check<\/h2>\n\n    <div class=\"msgp-form-wrap\">\n        <form class=\"msgp-form\" data-action=\"madlysane_gp_submit_pulse\" novalidate>\n            <fieldset class=\"msgp-field-group\">\n                <legend class=\"msgp-label msgp-required\">How are you feeling today?<\/legend>\n                <div class=\"msgp-feeling-grid\">\n                                        <label class=\"msgp-feeling-card\">\n                        <input type=\"radio\" name=\"gp_feeling\" value=\"great\" required>\n                        <span class=\"msgp-feeling-display\">\ud83d\ude0a Great<\/span>\n                    <\/label>\n                                        <label class=\"msgp-feeling-card\">\n                        <input type=\"radio\" name=\"gp_feeling\" value=\"okay\" required>\n                        <span class=\"msgp-feeling-display\">\ud83d\ude10 Okay<\/span>\n                    <\/label>\n                                        <label class=\"msgp-feeling-card\">\n                        <input type=\"radio\" name=\"gp_feeling\" value=\"tough\" required>\n                        <span class=\"msgp-feeling-display\">\ud83d\ude14 Tough<\/span>\n                    <\/label>\n                                    <\/div>\n                <div class=\"msgp-error\" id=\"error-feeling\" role=\"alert\"><\/div>\n            <\/fieldset>\n            <div class=\"msgp-field-group\">\n                <label class=\"msgp-label msgp-required\" for=\"gp_date\">What's today's date where you are?<\/label>\n                <input type=\"date\" id=\"gp_date\" name=\"gp_date\" class=\"msgp-input\" required>\n                <div class=\"msgp-error\" id=\"error-date\" role=\"alert\"><\/div>\n            <\/div>\n                <fieldset class=\"msgp-field-group msgp-track-group\">\n        <legend class=\"msgp-label msgp-required\">Track<\/legend>\n        <p class=\"msgp-field-hint\">Choose the path that resonates with you today.<\/p>\n        <div class=\"msgp-radio-grid\">\n            <label class=\"msgp-radio-card\">\n                <input type=\"radio\" name=\"gp_track\" value=\"faith\" required>\n                <span class=\"msgp-radio-icon\">\ud83d\ude4f<\/span>\n                <span class=\"msgp-radio-label\">Faith<\/span>\n                <span class=\"msgp-radio-desc\">Spiritual or devotional focus<\/span>\n            <\/label>\n            <label class=\"msgp-radio-card\">\n                <input type=\"radio\" name=\"gp_track\" value=\"secular\">\n                <span class=\"msgp-radio-icon\">\ud83e\uddd8<\/span>\n                <span class=\"msgp-radio-label\">Secular<\/span>\n                <span class=\"msgp-radio-desc\">Mindfulness & wellness focus<\/span>\n            <\/label>\n        <\/div>\n        <div class=\"msgp-error\" id=\"error-track\" role=\"alert\"><\/div>\n    <\/fieldset>\n                    <div class=\"msgp-submit-row\">\n        <button type=\"submit\" class=\"msgp-submit-btn\">\n            <span class=\"msgp-btn-text\">Submit My Pulse Check<\/span>\n            <span class=\"msgp-btn-spinner\" style=\"display:none;\" aria-hidden=\"true\">\u23f3<\/span>\n        <\/button>\n    <\/div>\n    <div class=\"msgp-response\" role=\"status\" aria-live=\"polite\"><\/div>\n            <\/form>\n    <\/div>\n    \n<div class=\"msgp-feed-wrap\" data-feed=\"pulse_check\"><\/div>\n\n    <div class=\"msgp-chart-wrap\" id=\"msgp-chart-wrap-1\">\n        <div class=\"msgp-chart-canvas-wrap\">\n            <canvas id=\"msgp-pulse-chart-1\"\n                    data-chart-id=\"msgp-pulse-chart-1\"\n                    width=\"480\"\n                    aria-label=\"Pulse check results pie chart\"\n                    role=\"img\">\n            <\/canvas>\n            <div class=\"msgp-chart-loading\" id=\"msgp-pulse-chart-1-loading\">\n                <span>Loading chart\u2026<\/span>\n            <\/div>\n        <\/div>\n                <p class=\"msgp-chart-caption\">Here&#039;s how everyone felt today \u2013 this chart updates automatically with each new submission.<\/p>\n            <\/div>\n    \n\n<\/div>  \n\n  <!-- 8) Weekly Path Spotlight -->\n  <div id=\"Spotlight\" class=\"tabcontent\" style=\"display: none;\">\n    <h2>Path Spotlight of the Week<\/h2>\n    <h4 id=\"spot-title\">Sunrise Gratitude<\/h4>\n    <p id=\"spot-desc\">A 3-minute breathwork practice to set the day\u2019s intention.<\/p>\n    <a href=\"https:\/\/madlysane.com\/en\/sunrise-gratitude\/\" style=\"color:#08A0E9;font-weight:bold;\">\n      Explore this Path \u2192\n    <\/a>\n  <\/div>\n\n  <!-- 9) 2-Minute Reflection Timer -->\n  <div id=\"Timer\" class=\"tabcontent\" style=\"display: none;\">\n    <h2>2-Minute Reflection Timer<\/h2>\n    <div id=\"countdown\">02:00<\/div>\n    <button id=\"start-timer\">Start<\/button>\n  <\/div>\n\n<div id=\"refreshNotice\" style=\"display: block; position: fixed; top: 0px; left: 0px; right: 0px; background: rgb(255, 248, 225); border-bottom: 1px solid rgb(255, 213, 79); color: rgb(51, 51, 51); padding: 0.75em 1em; font-family: sans-serif; z-index: 10000; text-align: center; box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 5px;\">\n  <span>\n    <img decoding=\"async\" draggable=\"false\" role=\"img\" class=\"emoji\" alt=\"\u26a0\ufe0f\" src=\"https:\/\/s.w.org\/images\/core\/emoji\/17.0.2\/svg\/26a0.svg\"> If you\u2019re on an older Windows browser, you may need to refresh the page \n    to see the latest content.\n  <\/span>\n  <button onclick=\"window.location.reload()\" style=\"margin-left:1em;padding:.25em .75em;border:none;\n                 background:#FFD54F;color:#333;border-radius:3px;\n                 cursor:pointer;\">\n    Refresh\n  <\/button>\n  <button onclick=\"document.getElementById('refreshNotice').style.display='none'\" style=\"margin-left:.5em;padding:.25em .5em;border:none;\n                 background:transparent;color:#333;font-size:1.1em;\n                 line-height:1;cursor:pointer;\">\n    \u2715\n  <\/button>\n<\/div>\n\n<\/div>\n<\/div>\n\n\n\n\n\n<style>\n#max-width-initial\n{\n    max-width: initial !important;\n}\n\nbody {\n    font-family: Arial, sans-serif;\n    background: #f0f4f8;\n    margin: 0;\n    padding: 0;\n}\nmain header {\n    background: #ADD8e6;\n    color: #fff;\n    padding: 20px 40px;\n    text-align: center;\n}\n    main nav {\n      display: flex;\n      flex-wrap: wrap;\n      justify-content: center;\n      background: #ddd;\n    }\n    main nav button {\n      background: #ddd;\n      border: none;\n      padding: 10px 14px;\n      cursor: pointer;\n      font-size: 14px;\n      margin: 2px;\n      transition: background 0.3s;\n    }\n    main nav button:hover {\n      background: #ccc;\n    }\n    main nav button.active {\n      background: #bbb;\n      font-weight: bold;\n    }\n\n    \/* Tab Content *\/\n    main .tabcontent {\n      display: none;\n      padding: 20px;\n      animation: fadeIn 0.3s;\n      max-width: 720px;\n      margin: 1em auto;\n      background: #fff;\n      border-radius: 4px;\n      box-shadow: 0 2px 6px rgba(0,0,0,0.1);\n    }\n    @keyframes fadeIn {\n      from { opacity: 0; }\n      to   { opacity: 1; }\n    }\n\n    \/* Module-specific styles *\/\n    main iframe {\n      width: 100%;\n      border: 1px solid #ddd;\n      border-radius: 4px;\n      display: block;\n      margin-bottom: 1em;\n    }\n    main .badge {\n      display: inline-block;\n      margin: 0.3em;\n      padding: 0.4em 0.8em;\n      background: #08A0E9;\n      color: #fff;\n      border-radius: 4px;\n      font-size: 0.9em;\n    }\n    main #track-select {\n      width: 100%;\n      padding: 8px;\n      margin: 0.5em 0;\n      border: 1px solid #ccc;\n      border-radius: 4px;\n    }\n    main #track-choice {\n      font-style: italic;\n      color: #666;\n      margin-bottom: 1em;\n    }\n    main #countdown {\n      font-size: 2em;\n      color: #08A0E9;\n      margin: 0.5em 0;\n      text-align: center;\n    }\n    main #start-timer {\n      display: block;\n      margin: 0 auto;\n      padding: 0.5em 1em;\n      background: #08A0E9;\n      color: #fff;\n      border: none;\n      border-radius: 4px;\n      cursor: pointer;\n    }\n\nmain ul {\n    padding-left: 0;\n}\n  <\/style>\n\n\n\n<script>\n  (function(){\n    const modal       = document.getElementById('welcome-modal');\n    const slides      = Array.from(document.querySelectorAll('#welcome-slides .slide'));\n    const prevBtn     = document.getElementById('welcome-prev');\n    const nextBtn     = document.getElementById('welcome-next');\n    const closeBtn    = document.getElementById('close-welcome');\n    const showBtn     = document.getElementById('show-welcome-btn');\n    let currentIndex  = 0;\n\n    function showSlide(i) {\n      slides.forEach((s, idx) => s.style.display = idx === i ? 'block' : 'none');\n      prevBtn.style.visibility = i === 0 ? 'hidden' : 'visible';\n      nextBtn.style.display   = i === slides.length - 1 ? 'none' : 'inline-block';\n      closeBtn.style.display  = i === slides.length - 1 ? 'inline-block' : 'none';\n    }\n\n    function openModal(init=false) {\n      modal.style.display = 'flex';\n      currentIndex = 0;\n      showSlide(0);\n      if (!init) localStorage.removeItem('seenWelcome');\n    }\n\n    function closeModal() {\n      modal.style.display = 'none';\n      localStorage.setItem('seenWelcome', 'true');\n    }\n\n    \/\/ Event hookups\n    prevBtn.addEventListener('click', () => showSlide(--currentIndex));\n    nextBtn.addEventListener('click', () => showSlide(++currentIndex));\n    closeBtn.addEventListener('click', closeModal);\n    showBtn.addEventListener('click', openModal);\n\n    \/\/ Auto-show on first visit\n    document.addEventListener('DOMContentLoaded', () => {\n      if (!localStorage.getItem('seenWelcome')) openModal(true);\n    });\n  })();\n<\/script>\n\n<script>\n  \/**\n   * Fetch CSV, log headers, and render each row into UL.\n   * @param {string} url    CSV-published URL\n   * @param {string} listId UL ID to target\n   * @param {string} col1   First column header to display\n   * @param {string} col2   (optional) Second column header\n   *\/\n  function fetchAndRender(url, listId, col1, col2) {\n    fetch(url)\n      .then(r => r.text())\n      .then(csv => {\n        const rows    = csv.trim().split('\\n').map(r => r.split(','));\n        let headers   = rows.shift().map(h => h.trim());\n        console.log(`Headers for ${listId}:`, JSON.stringify(headers));\n\n        const ul = document.getElementById(listId);\n        ul.innerHTML = '';\n\n        rows.forEach(cols => {\n          if (!cols[0]) return; \/\/ skip blank\n          const entry = {};\n          headers.forEach((h,i) => entry[h] = (cols[i]||'').trim());\n\n          const li = document.createElement('li');\n          if (col2) {\n            li.textContent = `${entry[col1]} \u2014 ${entry[col2]}`;\n          } else {\n            li.textContent = entry[col1];\n          }\n          ul.appendChild(li);\n        });\n      })\n      .catch(err => console.error(`Error loading ${listId}:`, err));\n  }\n\n  document.addEventListener('DOMContentLoaded', () => {\n    fetchAndRender(\n      'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vQ6vLClksI5kHoThssyuCPv3oUoDA6dZfrxwc1hSW-Q-o1ox2I--Veg1wQqmjk82QPXRfXqKnT8OqST\/pub?gid=1001123498&single=true&output=csv',\n      'guidedList',\n      'Morning Breathwork',\n      'Audio\/Video URL (2\u20135 min)'\n    );\n\n    fetchAndRender(\n      'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vTc1Z90Jcy15SeWZKxGjUzIxKA529V6GGMKqURBDN8Z00QvEhu2P-ZJLY94X-9VaVzxYTi_4OmoyXPx\/pub?gid=463410242&single=true&output=csv',\n      'inspirationList',\n      'Inspiration + Prompt'\n    );\n\n    fetchAndRender(\n      'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vQmNKucjjU3inGFLL5TjfgRGslkKoIMa6p8hZLZLsyaPPJ9OrFtHzymXnwFZzj9LUvsFm30u4Wl9F0R\/pub?gid=1111998449&single=true&output=csv',\n      'pulseList',\n      'Tough'\n    );\n  });\n<\/script>\n\n<!-- ========== SCRIPTS ========== -->\n<script>\n  \/\/ Tab navigation\n  function openTab(evt, tabName) {\n    document.querySelectorAll('.tabcontent').forEach(tc => tc.style.display = 'none');\n    document.querySelectorAll('nav button').forEach(b => b.classList.remove('active'));\n    document.getElementById(tabName).style.display = 'block';\n    evt.currentTarget.classList.add('active');\n  }\n  \/\/ Default open\n  document.getElementById('defaultOpen').click();\n\n  \/\/ Track selection\n  (function(){\n    const sel    = document.getElementById('track-select'),\n          choice = document.getElementById('track-choice'),\n          stored = localStorage.getItem('hub_track');\n    if (stored) {\n      sel.value = stored;\n      choice.textContent = sel.options[sel.selectedIndex].text;\n      choice.style.fontStyle = 'normal';\n      choice.style.color = '#000';\n    }\n    sel.addEventListener('change', e => {\n      localStorage.setItem('hub_track', e.target.value);\n      if (e.target.value) {\n        choice.textContent = sel.options[sel.selectedIndex].text;\n        choice.style.fontStyle = 'normal';\n        choice.style.color = '#000';\n      } else {\n        choice.textContent = 'No track selected yet.';\n        choice.style.fontStyle = 'italic';\n        choice.style.color = '#666';\n      }\n    });\n  })();\n\n  \/\/ Badges (static thresholds)\n  (function(){\n    const xp = parseInt(localStorage.getItem('hub_xp')||'0', 10),\n          container = document.getElementById('badges');\n    if (xp >= 50)  container.innerHTML += '<span class=\"badge\">\ud83c\udfc5 Path Founder<\/span>';\n    if (xp >= 100) container.innerHTML += '<span class=\"badge\">\ud83c\udf1f Mindful Master<\/span>';\n    if (xp >= 200) container.innerHTML += '<span class=\"badge\">\ud83e\uddd8 Zen Hero<\/span>';\n  })();\n\n  \/\/ Reflection Timer\n  (function(){\n    const countdownEl = document.getElementById('countdown'),\n          startBtn    = document.getElementById('start-timer');\n    let timerInterval;\n    function formatTime(sec){\n      const m = String(Math.floor(sec\/60)).padStart(2,'0'),\n            s = String(sec%60).padStart(2,'0');\n      return `${m}:${s}`;\n    }\n    startBtn.addEventListener('click', () => {\n      let timeLeft = 120;\n      startBtn.disabled = true;\n      countdownEl.textContent = formatTime(timeLeft);\n      timerInterval = setInterval(() => {\n        timeLeft--;\n        countdownEl.textContent = formatTime(timeLeft);\n        if (timeLeft <= 0) {\n          clearInterval(timerInterval);\n          startBtn.disabled = false;\n        }\n      }, 1000);\n    });\n  })();\n<\/script>\n\n<!-- 2) WELCOME MODAL SCRIPT -->\n<script>\n  if (!localStorage.getItem('hub_welcomed')) {\n    document.getElementById('welcome-modal').style.display = 'flex';\n  }\n  document.getElementById('close-welcome').onclick = function() {\n    localStorage.setItem('hub_welcomed', '1');\n    document.getElementById('welcome-modal').style.display = 'none';\n  };\n<\/script>\n\n<!-- 1) Promise polyfill for legacy browsers -->\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/es6-promise\/dist\/es6-promise.auto.min.js\"><\/script>\n\n<!-- 2) fetch() polyfill for legacy browsers -->\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/fetch\/3.6.2\/fetch.min.js\"><\/script>\n\n<!-- 3) PapaParse CSV parser -->\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/PapaParse\/5.3.2\/papaparse.min.js\"><\/script>\n\n<!-- 4) Merged, track-aware CSV \u2192 render script -->\n<script>\n\/\/ Escape special HTML chars\nfunction escapeHTML(str = '') {\n  return str.replace(\/[&<>\"']\/g, tag => ({\n    '&': '&amp;',\n    '<': '&lt;',\n    '>': '&gt;',\n    '\"': '&quot;',\n    \"'\": '&#039;'\n  }[tag]));\n}\n\n\/\/ Wrapper around Papa.parse\nfunction fetchCSV(url, callback) {\n  Papa.parse(url, {\n    download: true,\n    header: true,\n    skipEmptyLines: true,\n    complete: results => callback(results.data),\n    error: err => console.error('CSV parse error:', err)\n  });\n}\n\n\/\/ Get currently selected track from localStorage\nfunction getSelectedTrack() {\n  return (localStorage.getItem('hub_track') || '').trim().toLowerCase();\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n  const selectedTrack = getSelectedTrack();\n\n  \/\/ === Guided Practices ===\n  fetchCSV(\n    'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vQ6vLClksI5kHoThssyuCPv3oUoDA6dZfrxwc1hSW-Q-o1ox2I--Veg1wQqmjk82QPXRfXqKnT8OqST\/pub?gid=1001123498&single=true&output=csv',\n    rows => {\n      const container = document.getElementById('guidedList');\n      container.innerHTML = '';\n\n      const filtered = selectedTrack\n        ? rows.filter(r => (r.track || '').trim().toLowerCase() === selectedTrack)\n        : rows;\n\n      filtered.forEach(row => {\n        const keys     = Object.keys(row);\n        const tsKey    = keys.find(k => k.toLowerCase().includes('timestamp'));\n        const bodyKey  = keys.find(k => k.toLowerCase().includes('morning'));\n        const mediaKey = keys.find(k => k.toLowerCase().includes('audio\/video'));\n\n        const ts    = escapeHTML(row[tsKey]    || '');\n        const body  = escapeHTML(row[bodyKey]  || '');\n        const media = escapeHTML(row[mediaKey] || '');\n\n        const card = document.createElement('div');\n        card.style = 'border:1px solid #ddd;padding:1em;margin:.5em 0;border-radius:4px;';\n        card.innerHTML = `\n          <p style=\"font-size:.8em;color:#666;margin-bottom:.5em;\">${ts}<\/p>\n          <pre style=\"white-space:pre-wrap;margin-bottom:.5em;\">${body}<\/pre>\n          ${media ? `<p><a href=\"${media}\" target=\"_blank\" style=\"color:#08A0E9;\">\u25b6\ufe0f View Media<\/a><\/p>` : ''}\n        `;\n        container.appendChild(card);\n      });\n    }\n  );\n\n  \/\/ === Daily Inspirations ===\n  fetchCSV(\n    'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vTc1Z90Jcy15SeWZKxGjUzIxKA529V6GGMKqURBDN8Z00QvEhu2P-ZJLY94X-9VaVzxYTi_4OmoyXPx\/pub?gid=463410242&single=true&output=csv',\n    rows => {\n      const container = document.getElementById('inspirationList');\n      container.innerHTML = '';\n\n      const filtered = selectedTrack\n        ? rows.filter(r => (r.track || '').trim().toLowerCase() === selectedTrack)\n        : rows;\n\n      filtered.forEach(row => {\n        const keys    = Object.keys(row);\n        const tsKey   = keys.find(k => k.toLowerCase().includes('timestamp'));\n        const textKey = keys.find(k => k.toLowerCase().includes('prompt'));\n\n        const ts   = escapeHTML(row[tsKey]   || '');\n        const text = escapeHTML(row[textKey] || '');\n\n        const card = document.createElement('div');\n        card.style = 'border:1px solid #ddd;padding:1em;margin:.5em 0;border-radius:4px;';\n        card.innerHTML = `\n          <p style=\"font-size:.8em;color:#666;margin-bottom:.5em;\">${ts}<\/p>\n          <blockquote style=\"margin:0;padding-left:1em;border-left:3px solid #08A0E9;\">${text}<\/blockquote>\n        `;\n        container.appendChild(card);\n      });\n    }\n  );\n});\n<\/script>\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n  const hash = window.location.hash;\n  if (!hash) return;\n\n  const target = document.querySelector(hash);\n  if (!target) return;\n\n  \/\/ If the target is inside a tab or accordion, open it\n  \/\/ Adjust selectors below to match your site's structure\n  const tabButton = document.querySelector(`[href=\"${hash}\"], [data-target=\"${hash}\"]`);\n  if (tabButton) {\n    tabButton.click(); \/\/ Simulate a click to open the tab\/accordion\n  }\n\n  \/\/ Give it a moment to open, then scroll into view\n  setTimeout(() => {\n    target.scrollIntoView({ behavior: 'smooth', block: 'start' });\n  }, 300);\n});\n<\/script>\n<script>\n  \/\/ Tab navigation with lazy-load for Digital Pulse chart\n  function openTab(evt, tabName) {\n    document.querySelectorAll('.tabcontent').forEach(tc => tc.style.display = 'none');\n    document.querySelectorAll('nav button').forEach(b => b.classList.remove('active'));\n    document.getElementById(tabName).style.display = 'block';\n    evt.currentTarget.classList.add('active');\n\n    \/\/ Lazy-load the Digital Pulse chart\n    if (tabName === 'Pulse') {\n      const iframe = document.querySelector('#pulseChartWrapper iframe');\n      if (iframe && !iframe.src) {\n        iframe.src = iframe.dataset.src;\n      }\n    }\n  }\n\n  \/\/ Default open\n  document.getElementById('defaultOpen').click();\n<\/script>\n\n<script>\n  \/\/ Keep this! Deep-link to tabs\/sections\n  document.addEventListener('DOMContentLoaded', function() {\n    const hash = window.location.hash;\n    if (!hash) return;\n\n    const target = document.querySelector(hash);\n    if (!target) return;\n\n    const tabButton = document.querySelector(`[href=\"${hash}\"], [data-target=\"${hash}\"]`);\n    if (tabButton) {\n      tabButton.click();\n    }\n\n    setTimeout(() => {\n      target.scrollIntoView({ behavior: 'smooth', block: 'start' });\n    }, 300);\n  });\n<\/script>\n\n<script>\n  (function(){\n    \/\/ Only show on Windows platforms\n    if (navigator.userAgent.indexOf('Windows NT') !== -1) {\n      document.getElementById('refreshNotice').style.display = 'block';\n    }\n  })();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Show Welcome Info Welcome to the Spirituality &amp; Mindfulness Hub This is a user-built Spirituality Hub. You create and share the content. Explore Guided Practices, add to your Digital Altar, track your mindfulness journey, and more. Each section offers a unique way to engage. 1. Guided Practices Discover, share, and experience transformative rituals and techniques. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"class_list":["post-4624","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/madlysane.site\/en\/wp-json\/wp\/v2\/pages\/4624","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/madlysane.site\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/madlysane.site\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/madlysane.site\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/madlysane.site\/en\/wp-json\/wp\/v2\/comments?post=4624"}],"version-history":[{"count":48,"href":"https:\/\/madlysane.site\/en\/wp-json\/wp\/v2\/pages\/4624\/revisions"}],"predecessor-version":[{"id":6431,"href":"https:\/\/madlysane.site\/en\/wp-json\/wp\/v2\/pages\/4624\/revisions\/6431"}],"wp:attachment":[{"href":"https:\/\/madlysane.site\/en\/wp-json\/wp\/v2\/media?parent=4624"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}