{"product_id":"sleep-apnea","title":"SLEEP APNEA MASK QUESTIONAIRE","description":"\u003cbody\u003e\n\n\n  \u003cmeta charset=\"UTF-8\"\u003e\n  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\n  \u003ctitle\u003eStellar Pharmacy | CPAP Mask \u0026amp; Setup Questionnaire\u003c\/title\u003e\n  \u003cstyle\u003e\n    :root {\n      --bg: #111111;\n      --panel: #1a1a1a;\n      --panel-2: #222222;\n      --text: #f4f1ea;\n      --muted: #c8b98f;\n      --line: #3a3324;\n      --accent: #d7b56d;\n      --accent-2: #9a7a34;\n      --ok: #d6c18b;\n      --warn: #f2d3a2;\n    }\n\n    * { box-sizing: border-box; }\n    body {\n      margin: 0;\n      font-family: Arial, Helvetica, sans-serif;\n      background: linear-gradient(180deg, #0f0f0f 0%, #171717 100%);\n      color: var(--text);\n      line-height: 1.5;\n    }\n    .wrap {\n      max-width: 980px;\n      margin: 0 auto;\n      padding: 32px 20px 60px;\n    }\n    .hero {\n      background: linear-gradient(135deg, #1b1b1b 0%, #121212 100%);\n      border: 1px solid var(--line);\n      border-radius: 20px;\n      padding: 28px;\n      box-shadow: 0 10px 30px rgba(0,0,0,.25);\n      margin-bottom: 22px;\n    }\n    h1, h2, h3 { margin: 0 0 10px; }\n    h1 { font-size: 2rem; color: #fff; }\n    h2 { font-size: 1.2rem; color: var(--accent); }\n    p.lead { color: #ddd2bb; margin: 0; }\n\n    form {\n      display: grid;\n      gap: 18px;\n    }\n    .card {\n      background: var(--panel);\n      border: 1px solid var(--line);\n      border-radius: 18px;\n      padding: 20px;\n    }\n    .question {\n      font-weight: 700;\n      margin-bottom: 10px;\n      color: #fff;\n    }\n    .help {\n      color: #d4c7a7;\n      font-size: 0.95rem;\n      margin-bottom: 12px;\n    }\n    .grid-2 {\n      display: grid;\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n      gap: 14px;\n    }\n    .grid-3 {\n      display: grid;\n      grid-template-columns: repeat(3, minmax(0, 1fr));\n      gap: 12px;\n    }\n    @media (max-width: 720px) {\n      .grid-2, .grid-3 { grid-template-columns: 1fr; }\n    }\n    label.opt {\n      display: flex;\n      align-items: flex-start;\n      gap: 10px;\n      background: #2a2a2a;\n      border: 1px solid #6b5729;\n      padding: 12px 14px;\n      border-radius: 12px;\n      cursor: pointer;\n      color: #ffffff;\n      font-weight: 600;\n    }\n    label.opt:hover { border-color: #d7b56d; background: #333333; }\n    label.opt input {\n      accent-color: #d7b56d;\n    }\n    label.opt:hover { border-color: var(--accent-2); }\n    input[type=\"text\"], input[type=\"email\"], textarea, select {\n      width: 100%;\n      background: #121212;\n      color: var(--text);\n      border: 1px solid #4b4330;\n      border-radius: 12px;\n      padding: 12px 14px;\n      font-size: 1rem;\n    }\n    textarea { min-height: 100px; resize: vertical; }\n    .actions {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 12px;\n      margin-top: 10px;\n    }\n    button {\n      background: var(--accent);\n      color: #111;\n      border: 0;\n      padding: 13px 18px;\n      border-radius: 12px;\n      font-weight: 700;\n      cursor: pointer;\n    }\n    button.secondary {\n      background: #ffffff;\n      color: #111111;\n      border: 2px solid #111111;\n      font-weight: 700;\n    }\n    button.secondary:hover {\n      background: #f2f2f2;\n    }\n    button.secondary:hover {\n      background: #333333;\n    }\n    .result, .note {\n      background: #2a2a2a;\n      border: 2px solid #d7b56d;\n      border-radius: 16px;\n      padding: 22px;\n      margin-top: 18px;\n      color: #ffffff;\n      box-shadow: 0 0 0 2px rgba(215,181,109,0.2);\n    }\n    .result h3 {\n      color: #d7b56d;\n      font-size: 1.4rem;\n      margin-bottom: 12px;\n    }\n    .result p {\n      font-size: 1.05rem;\n      margin: 8px 0;\n    }\n    .result p, .result li {\n      color: #ffffff;\n    }\n    .result strong {\n      color: #d7b56d;\n    }\n    .result h3 { color: var(--accent); }\n    .pill {\n      display: inline-block;\n      background: #2a2417;\n      border: 1px solid #6b5729;\n      color: #f5deb0;\n      padding: 6px 10px;\n      border-radius: 999px;\n      font-size: .9rem;\n      margin: 4px 8px 0 0;\n    }\n    .small { font-size: .92rem; color: #dccfb1; }\n    .hidden { display: none; }\n    .footer { color: #cbbf9f; margin-top: 22px; font-size: .92rem; }\n  \u003c\/style\u003e\n\n\n  \u003cdiv class=\"wrap\"\u003e\n    \u003csection class=\"hero\"\u003e\n      \u003ch1\u003eCPAP Mask \u0026amp; Setup Questionnaire\u003c\/h1\u003e\n      \u003ch2\u003eStellar Pharmacy\u003c\/h2\u003e\n      \u003cp class=\"lead\"\u003eComplete this form before your CPAP consultation. Your answers help us identify the most suitable mask style and prepare your setup in advance.\u003c\/p\u003e\n    \u003c\/section\u003e\n\n    \u003cform id=\"cpapForm\"\u003e\n      \u003cdiv class=\"card grid-2\"\u003e\n        \u003cdiv\u003e\n          \u003clabel for=\"fullName\" class=\"question\"\u003eFull name\u003c\/label\u003e\n          \u003cinput id=\"fullName\" name=\"fullName\" type=\"text\" placeholder=\"Enter your full name\"\u003e\n        \u003c\/div\u003e\n        \u003cdiv\u003e\n          \u003clabel for=\"email\" class=\"question\"\u003eEmail address\u003c\/label\u003e\n          \u003cinput id=\"email\" name=\"email\" type=\"email\" placeholder=\"Enter your email address\"\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e1. Have you been diagnosed with sleep apnoea by a doctor or sleep study?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"diagnosed\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"diagnosed\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"diagnosed\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e2. Have you been given CPAP pressure settings?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"pressureSettings\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"pressureSettings\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"pressureSettings\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n        \u003cdiv style=\"margin-top:12px;\"\u003e\n          \u003cinput id=\"pressureDetails\" name=\"pressureDetails\" type=\"text\" placeholder=\"If yes, enter pressure details here\"\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e3. Is this your first time using a CPAP machine?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"firstTime\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"firstTime\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"firstTime\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e4. When you sleep, do you mostly breathe through your:\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"breathing\" value=\"nose\"\u003e Nose\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"breathing\" value=\"mouth\"\u003e Mouth\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"breathing\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e5. Do you often experience a blocked or congested nose at night?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"congestion\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"congestion\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"congestion\" value=\"sometimes\"\u003e Sometimes\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e6. Do you wake up with a dry mouth?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"dryMouth\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"dryMouth\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"dryMouth\" value=\"sometimes\"\u003e Sometimes\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e7. Do you think your mouth opens while you sleep?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"mouthOpens\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"mouthOpens\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"mouthOpens\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e8. Which type of mask would you prefer?\u003c\/div\u003e\n        \u003cdiv class=\"grid-2\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"preference\" value=\"minimal\"\u003e Minimal and lightweight\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"preference\" value=\"nasal\"\u003e Moderate coverage (nose only)\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"preference\" value=\"full\"\u003e Full coverage (nose and mouth)\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"preference\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e9. Do you feel uncomfortable or claustrophobic with something covering your face?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"claustrophobic\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"claustrophobic\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"claustrophobic\" value=\"a_little\"\u003e A little\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e10. What is your usual sleeping position?\u003c\/div\u003e\n        \u003cdiv class=\"grid-2\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"position\" value=\"back\"\u003e Back\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"position\" value=\"side\"\u003e Side\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"position\" value=\"stomach\"\u003e Stomach\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"position\" value=\"moves\"\u003e I move around a lot\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e11. Have you used a CPAP mask before?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"priorMask\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"priorMask\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"priorMask\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n        \u003cdiv style=\"margin-top:12px;\"\u003e\n          \u003ctextarea id=\"priorIssues\" name=\"priorIssues\" placeholder=\"If yes, describe any issues or preferences\"\u003e\u003c\/textarea\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e12. Are you sensitive to strong airflow or pressure?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"pressureSensitive\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"pressureSensitive\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"pressureSensitive\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e13. Do you have any implanted medical devices or metal fragments near the head or chest?\u003c\/div\u003e\n        \u003cdiv class=\"help\"\u003eExamples: pacemaker, ICD, neurostimulator, insulin pump, cochlear implant, shunt, aneurysm clip, metallic eye fragment.\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"implants\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"implants\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"implants\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n        \u003cdiv style=\"margin-top:12px;\"\u003e\n          \u003cinput id=\"implantDetails\" name=\"implantDetails\" type=\"text\" placeholder=\"If yes, please specify\"\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e14. Do you have facial sensitivities, skin concerns, or previous mask-fit issues?\u003c\/div\u003e\n        \u003cdiv class=\"grid-3\"\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"skinIssues\" value=\"yes\"\u003e Yes\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"skinIssues\" value=\"no\"\u003e No\u003c\/label\u003e\n          \u003clabel class=\"opt\"\u003e\u003cinput type=\"radio\" name=\"skinIssues\" value=\"unsure\"\u003e Not sure\u003c\/label\u003e\n        \u003c\/div\u003e\n        \u003cdiv style=\"margin-top:12px;\"\u003e\n          \u003ctextarea id=\"skinDetails\" name=\"skinDetails\" placeholder=\"If yes, please describe\"\u003e\u003c\/textarea\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"card\"\u003e\n        \u003cdiv class=\"question\"\u003e15. Is there anything else you would like us to know to improve your comfort?\u003c\/div\u003e\n        \u003ctextarea id=\"anythingElse\" name=\"anythingElse\" placeholder=\"Additional notes\"\u003e\u003c\/textarea\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"actions\"\u003e\n        \u003cbutton type=\"button\" id=\"recommendBtn\"\u003eGet My Mask Recommendation\u003c\/button\u003e\n        \u003cbutton type=\"reset\" class=\"secondary\"\u003eReset Form\u003c\/button\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv id=\"result\" class=\"result hidden\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"note\"\u003e\n        \u003cstrong\u003eImportant:\u003c\/strong\u003e This recommendation is a pre-screening guide only. Final mask selection should always be confirmed by an in-person fitting with the machine running.\n      \u003c\/div\u003e\n    \u003c\/form\u003e\n\n    \u003cdiv class=\"footer\"\u003ePrepared for Stellar Pharmacy. This form can be embedded on a website or rebuilt in Google Forms using the same questions and logic.\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cscript\u003e\n    function val(name) {\n      const checked = document.querySelector(`input[name=\"${name}\"]:checked`);\n      return checked ? checked.value : \"\";\n    }\n\n    function scoreRecommendation() {\n      const scores = {\n        P10: 0,\n        N20: 0,\n        F20: 0,\n        F30i: 0\n      };\n      const notes = [];\n      const cautions = [];\n\n      const breathing = val('breathing');\n      const congestion = val('congestion');\n      const dryMouth = val('dryMouth');\n      const mouthOpens = val('mouthOpens');\n      const preference = val('preference');\n      const claustrophobic = val('claustrophobic');\n      const position = val('position');\n      const pressureSensitive = val('pressureSensitive');\n      const implants = val('implants');\n      const skinIssues = val('skinIssues');\n\n      if (breathing === 'nose') { scores.N20 += 3; scores.P10 += 3; }\n      if (breathing === 'mouth') { scores.F20 += 4; scores.F30i += 3; }\n      if (breathing === 'unsure') { scores.N20 += 1; scores.F20 += 1; }\n\n      if (congestion === 'yes') { scores.F20 += 4; scores.F30i += 3; scores.N20 -= 1; scores.P10 -= 2; }\n      if (congestion === 'sometimes') { scores.F20 += 2; scores.F30i += 1; }\n\n      if (dryMouth === 'yes') { scores.F20 += 3; scores.F30i += 2; }\n      if (dryMouth === 'sometimes') { scores.F20 += 1; }\n\n      if (mouthOpens === 'yes') { scores.F20 += 4; scores.F30i += 3; scores.P10 -= 2; }\n      if (mouthOpens === 'unsure') { scores.F20 += 1; }\n\n      if (preference === 'minimal') { scores.P10 += 4; scores.N20 += 2; scores.F20 -= 1; }\n      if (preference === 'nasal') { scores.N20 += 4; }\n      if (preference === 'full') { scores.F20 += 4; scores.F30i += 3; }\n\n      if (claustrophobic === 'yes') { scores.P10 += 4; scores.N20 += 2; scores.F20 -= 2; }\n      if (claustrophobic === 'a_little') { scores.N20 += 2; scores.P10 += 2; }\n\n      if (position === 'side' || position === 'moves') { scores.P10 += 2; scores.F30i += 3; scores.N20 += 1; }\n      if (position === 'back') { scores.N20 += 1; scores.F20 += 1; }\n      if (position === 'stomach') { scores.P10 += 3; scores.F30i += 1; }\n\n      if (pressureSensitive === 'yes') { scores.N20 += 2; scores.F20 += 1; scores.P10 -= 1; }\n\n      if (skinIssues === 'yes') { scores.P10 += 1; scores.N20 += 1; }\n\n      if (implants === 'yes' || implants === 'unsure') {\n        cautions.push('Use a non-magnetic mask version or confirm magnet safety before supply.');\n      }\n\n      const ranked = Object.entries(scores).sort((a, b) =\u003e b[1] - a[1]);\n      const top = ranked[0][0];\n      const second = ranked[1][0];\n\n      const productNames = {\n        P10: 'AirFit P10 nasal pillows mask',\n        N20: 'AirFit N20 nasal mask',\n        F20: 'AirFit F20 full-face mask',\n        F30i: 'AirFit F30i full-face mask'\n      };\n\n      const reasons = [];\n      if (top === 'P10') {\n        reasons.push('Best suited to customers who prefer a minimal, lightweight mask.');\n        reasons.push('Usually suitable for nose breathers and customers who dislike bulky masks.');\n      }\n      if (top === 'N20') {\n        reasons.push('Often the best all-round starting option for nose breathers.');\n        reasons.push('Provides more stability than pillows while remaining less bulky than full-face masks.');\n      }\n      if (top === 'F20') {\n        reasons.push('Usually the strongest option for mouth breathing, dry mouth, or frequent nasal congestion.');\n        reasons.push('Useful when the customer needs coverage of both nose and mouth.');\n      }\n      if (top === 'F30i') {\n        reasons.push('Good option for customers who move around in sleep and prefer a top-of-head hose position.');\n        reasons.push('Useful when full-face coverage is needed with a more open-feeling design.');\n      }\n\n      if (breathing === 'mouth' || mouthOpens === 'yes') {\n        notes.push('Mouth breathing strongly pushes the recommendation toward a full-face style.');\n      }\n      if (congestion === 'yes') {\n        notes.push('Frequent congestion reduces the suitability of nasal-only masks.');\n      }\n      if (claustrophobic === 'yes') {\n        notes.push('Claustrophobia increases the appeal of smaller, less bulky masks.');\n      }\n\n      return { top, second, productNames, reasons, notes, cautions, scores: ranked };\n    }\n\n    document.getElementById('recommendBtn').addEventListener('click', function () {\n      const result = scoreRecommendation();\n      const box = document.getElementById('result');\n      const scoreHtml = result.scores.map(([k, v]) =\u003e `\u003cspan class=\"pill\"\u003e${result.productNames[k]}: ${v}\u003c\/span\u003e`).join('');\n      const cautionHtml = result.cautions.length\n        ? `\u003cp\u003e\u003cstrong\u003eSafety note:\u003c\/strong\u003e ${result.cautions.join(' ')}\u003c\/p\u003e`\n        : '';\n      const notesHtml = result.notes.length\n        ? `\u003cul\u003e${result.notes.map(n =\u003e `\u003cli\u003e${n}\u003c\/li\u003e`).join('')}\u003c\/ul\u003e`\n        : '\u003cp class=\"small\"\u003eNo additional caution flags based on the submitted answers.\u003c\/p\u003e';\n\n      box.innerHTML = `\n        \u003ch3\u003eYour preliminary recommendation\u003c\/h3\u003e\n        \u003cp\u003e\u003cstrong\u003eBest match:\u003c\/strong\u003e ${result.productNames[result.top]}\u003c\/p\u003e\n        \u003cp\u003e\u003cstrong\u003eSecond option to trial in store:\u003c\/strong\u003e ${result.productNames[result.second]}\u003c\/p\u003e\n        \u003cp\u003e\u003cstrong\u003eWhy this was recommended:\u003c\/strong\u003e\u003c\/p\u003e\n        \u003cul\u003e${result.reasons.map(r =\u003e `\u003cli\u003e${r}\u003c\/li\u003e`).join('')}\u003c\/ul\u003e\n        \u003cp\u003e\u003cstrong\u003eDecision notes:\u003c\/strong\u003e\u003c\/p\u003e\n        ${notesHtml}\n        ${cautionHtml}\n        \u003cp\u003e\u003cstrong\u003eScoring summary:\u003c\/strong\u003e\u003c\/p\u003e\n        \u003cdiv\u003e${scoreHtml}\u003c\/div\u003e\n        \u003cp class=\"small\" style=\"margin-top:14px;\"\u003eFinal selection should still be confirmed with in-person sizing, fitting, and airflow testing.\u003c\/p\u003e\n      `;\n      box.classList.remove('hidden');\n      box.scrollIntoView({ behavior: 'smooth', block: 'start' });\n    });\n  \u003c\/script\u003e\n\n\n\u003c\/body\u003e","brand":"STELLAR PHARMACY","offers":[{"title":"Default Title","offer_id":52635233747236,"sku":null,"price":0.0,"currency_code":"AUD","in_stock":true}],"url":"https:\/\/stellarpharmacy.com.au\/products\/sleep-apnea","provider":"STELLAR PHARMACY","version":"1.0","type":"link"}