copd-school/index.html

678 lines
92 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Школа здоровья для пациентов с ХОБЛ · ХОБЛ Денсаулық мектебі</title>
<meta name="description" content="Учебный курс для пациентов с ХОБЛ для школ здоровья в ПМСП. 7 занятий. Оқу курсы — қазақ және орыс тілдерінде.">
<style>
:root{--ink:#0F1218;--cyan:#00E5FF;--cyan-50:#E8FCFF;--white:#fff;--gray-500:#5B6573;--gray-100:#F2F4F7;--gray-200:#E4E8EE;--green:#16C784;--green-50:#E6F9F0;--amber:#F5A623;--amber-50:#FDF3E2;--red:#EA3943;--red-50:#FCEAEC}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font:17px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,system-ui,sans-serif;color:var(--ink);background:#f7f8fa}
a{color:inherit}
.topbar{position:sticky;top:0;z-index:50;background:var(--ink);color:#fff;box-shadow:0 2px 12px rgba(0,0,0,.15)}
.topbar-inner{max-width:1040px;margin:0 auto;padding:13px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px}
.brand .mk{width:32px;height:32px;border-radius:8px;background:rgba(0,229,255,.14);display:grid;place-items:center;color:var(--cyan);font-size:17px;border:1px solid rgba(0,229,255,.3)}
.topbar-right{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.progress-wrap{display:flex;align-items:center;gap:12px;min-width:180px;flex:1}
.progress-track{flex:1;height:9px;background:#1a1f2a;border-radius:6px;overflow:hidden}
.progress-fill{height:100%;background:var(--cyan);width:0;transition:width .3s}
.progress-txt{font-size:13px;color:#9aa3b2;white-space:nowrap;font-weight:600}
.lang-switch{display:flex;background:#1a1f2a;border-radius:8px;padding:3px;gap:2px}
.lang-switch button{background:transparent;border:none;color:#9aa3b2;font-size:13px;font-weight:700;padding:6px 12px;border-radius:6px;cursor:pointer;font-family:inherit}
.lang-switch button.active{background:var(--cyan);color:var(--ink)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px 80px}
.hero{background:var(--ink);color:#fff;border-radius:20px;padding:48px 40px;margin:24px 0;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 320px at 85% -10%,rgba(0,229,255,.2),transparent 60%);pointer-events:none}
.hero>*{position:relative}
.hero .eyebrow{display:inline-block;background:rgba(0,229,255,.12);color:var(--cyan);padding:6px 13px;border-radius:999px;font-size:13px;font-weight:600;margin-bottom:18px;border:1px solid rgba(0,229,255,.25)}
.hero h1{font-size:38px;font-weight:800;line-height:1.1;letter-spacing:-.02em;margin-bottom:14px}
.hero p.lead{font-size:18px;color:#9aa3b2;max-width:620px;margin-bottom:24px}
.hero-stats{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:24px}
.hero-stats .s .n{font-size:30px;font-weight:800;color:var(--cyan);line-height:1}
.hero-stats .s .l{font-size:13px;color:#9aa3b2;margin-top:4px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--cyan);color:var(--ink);padding:13px 24px;border-radius:9px;font-weight:700;text-decoration:none;font-size:16px;border:none;cursor:pointer;font-family:inherit}
.btn:hover{background:#1bf0ff}
.btn.ghost{background:transparent;color:#fff;border:2px solid #3a4150}
.btn.ghost:hover{background:#1a1f2a}
.overview{background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:26px;margin-bottom:24px}
.overview h2{font-size:22px;font-weight:800;margin-bottom:14px}
.overview p{color:var(--gray-500);margin-bottom:16px}
.overview ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
.overview li{padding-left:24px;position:relative;color:var(--ink);font-size:15px}
.overview li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800}
.nav-card{background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:18px 22px;margin-bottom:24px}
.nav-card h3{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500);margin-bottom:12px}
.lessons-nav{display:flex;gap:8px;flex-wrap:wrap}
.lessons-nav a{text-decoration:none;background:var(--gray-100);padding:7px 12px;border-radius:8px;font-size:13px;font-weight:600;color:var(--gray-500)}
.lessons-nav a:hover{background:var(--cyan-50);color:var(--ink)}
.lesson{background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:30px;margin-bottom:22px;scroll-margin-top:90px}
.lesson.done{border-color:var(--green);box-shadow:0 0 0 3px var(--green-50)}
.lesson-head{display:flex;align-items:flex-start;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.lnum{flex:0 0 auto;width:46px;height:46px;border-radius:12px;background:var(--ink);color:var(--cyan);display:grid;place-items:center;font-weight:800;font-size:18px}
.lesson.done .lnum{background:var(--green);color:#fff}
.lesson-head h2{font-size:23px;font-weight:800;letter-spacing:-.01em;line-height:1.2}
.lmeta{font-size:14px;color:var(--gray-500);margin-top:3px}
.done-label{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--gray-500);cursor:pointer;user-select:none}
.done-label input{width:20px;height:20px;accent-color:var(--green);cursor:pointer}
.lesson.done .done-label{color:var(--green)}
.goal{background:var(--cyan-50);border-left:4px solid var(--cyan);padding:13px 16px;border-radius:8px;font-size:15px;margin-bottom:22px}
.goal b{color:var(--ink)}
.lesson h3{font-size:17px;font-weight:700;margin:22px 0 10px;display:flex;align-items:center;gap:8px}
.lesson p{margin-bottom:12px;color:var(--ink)}
.lesson ul{margin:0 0 14px;padding-left:4px;list-style:none}
.lesson ul li{position:relative;padding:5px 0 5px 26px;color:var(--gray-500);font-size:15.5px}
.lesson ul li::before{content:"•";position:absolute;left:8px;color:var(--cyan);font-weight:800;font-size:20px;line-height:1}
.lesson ul li b{color:var(--ink)}
.lesson ul li ul{margin:6px 0 2px}
.lesson ul li ul li{padding-left:22px;font-size:14.5px}
.lesson ul li ul li::before{content:"→";left:0;color:var(--gray-500);font-size:14px}
.tip{background:var(--green-50);border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:14.5px}
.tip.warn{background:var(--amber-50)}
.tip.danger{background:var(--red-50)}
.tip b{color:var(--ink)}
.checklist{list-style:none;display:grid;gap:8px}
.checklist label{display:flex;align-items:flex-start;gap:10px;background:var(--gray-100);padding:11px 14px;border-radius:9px;font-size:15px;cursor:pointer}
.checklist input{margin-top:3px;width:18px;height:18px;accent-color:var(--cyan)}
.checklist input:checked + span{text-decoration:line-through;color:var(--gray-500)}
.quiz details{border:1px solid var(--gray-200);border-radius:10px;padding:13px 16px;margin-bottom:8px;overflow:hidden}
.quiz details summary{font-weight:600;font-size:15px;cursor:pointer;list-style:none}
.quiz details summary::-webkit-details-marker{display:none}
.quiz details .ans{margin-top:10px;padding-top:10px;border-top:1px solid var(--gray-100);font-size:14.5px;color:var(--gray-500)}
.quiz details .ans b{color:var(--green)}
.hw{background:var(--ink);color:#fff;border-radius:12px;padding:16px 18px;font-size:15px}
.hw b{color:var(--cyan)}
.ztbl{width:100%;border-collapse:collapse;font-size:14px;margin-bottom:14px}
.ztbl th{text-align:left;background:var(--gray-100);padding:9px 11px;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--gray-500)}
.ztbl td{padding:10px 11px;border-bottom:1px solid var(--gray-100)}
.ztr-r td:first-child{border-left:4px solid var(--red)}
.ztr-y td:first-child{border-left:4px solid var(--amber)}
.ztr-g td:first-child{border-left:4px solid var(--green)}
.footer{padding:32px 0;border-top:1px solid var(--gray-200);color:var(--gray-500);font-size:14px;text-align:center}
.certificate{background:linear-gradient(135deg,#fff,var(--cyan-50));border:2px dashed var(--cyan);border-radius:16px;padding:30px;text-align:center;margin:24px 0}
.certificate h2{font-size:22px;font-weight:800;margin-bottom:8px}
.certificate p{color:var(--gray-500);font-size:15px}
.certificate.hidden{display:none}
.handouts{background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:26px;margin-bottom:24px}
.handouts h2{font-size:22px;font-weight:800;margin-bottom:6px}
.handouts>p{color:var(--gray-500);font-size:15px;margin-bottom:18px}
.handout-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.handout-card{border:1px solid var(--gray-200);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:10px}
.handout-card .hic{font-size:28px}
.handout-card h3{font-size:16px;font-weight:700;margin:0}
.handout-card p{font-size:13.5px;color:var(--gray-500);margin:0;flex:1}
.handout-card .btn{align-self:flex-start;font-size:14px;padding:9px 16px}
@media(max-width:760px){
.hero{padding:32px 22px}.hero h1{font-size:26px}
.overview ul{grid-template-columns:1fr}.lesson{padding:22px}.done-label{margin-left:0;width:100%}
.handout-grid{grid-template-columns:1fr}.topbar-right{flex:1 1 100%}
}
</style>
</head>
<body>
<header class="topbar">
<div class="topbar-inner">
<div class="brand" id="brand"><span class="mk"></span><span id="brandTxt"></span></div>
<div class="topbar-right">
<div class="progress-wrap">
<div class="progress-track"><div class="progress-fill" id="pfill"></div></div>
<div class="progress-txt" id="ptxt">0/7</div>
</div>
<div class="lang-switch">
<button id="langRu" class="active">РУ</button>
<button id="langKz">ҚЗ</button>
</div>
</div>
</div>
</header>
<div class="wrap" id="app"></div>
<script>
"use strict";
/* ============ ИНФОГРАФИКА-ХЕЛПЕРЫ (общие) ============ */
function stepsHtml(steps){
var s='<div class="steps">';
steps.forEach(function(st,i){ s+='<div class="step"><div class="sn">'+(i+1)+'</div><div class="si">'+st.ic+'</div><div class="st">'+st.t+'</div><div class="sd">'+st.d+'</div></div>'; });
return s+'</div>';
}
function flowHtml(a,b){ return '<div class="flow"><div class="flow-step">'+a+'</div><div class="flow-arrow">↓</div><div class="flow-step">'+b+'</div></div>'; }
function timelineHtml(rows){
var s='<div class="timeline">';
rows.forEach(function(r){ s+='<div class="tl"><div class="ttime">'+r.time+'</div><div class="titems">'+r.items.map(function(i){return '<span>'+i+'</span>';}).join('')+'</div></div>'; });
return s+'</div>';
}
function diaryRows(days){ var s=''; days.forEach(function(d){ s+='<tr><td>'+d+'</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr>'; }); return s; }
/* ============ ДАННЫЕ: РУССКИЙ ============ */
var RU={
ui:{brand:"Школа ХОБЛ",eyebrow:"🎓 Школа здоровья · ПМСП",heroTitle:"Школа здоровья для пациентов с ХОБЛ",
heroLead:"Учебный курс из 7 занятий по всем аспектам самоменеджмента. Помогает пациенту с хронической обструктивной болезнью лёгких контролировать болезнь, снижать обострения и сохранять качество жизни.",
sL:"занятий",sD:"на занятие",sF:"бесплатно",start:"Начать обучение",prog:"Программа курса",
ovTitle:"Чему вы научитесь",ovLead:"После курса вы сможете самостоятельно контролировать болезнь, правильно принимать лекарства, распознавать обострение и действовать по плану без паники.",
navTitle:"Программа · 7 занятий",lessonN:"Занятие ",goal:"Цель",content:"Содержание",check:"Чек-лист занятия",quiz:"Самопроверка",hw:"Домашнее задание",done:"Пройдено",
hTitle:"📄 Памятки и флаеры для раздачи пациентам",hLead:"Одностраничные памятки для печати (или сохранения в PDF). Раздавайте пациентам после соответствующих занятий.",
print:"Печать / PDF",hHdr:"Школа здоровья ХОБЛ · Памятка пациенту",
hFtr:"Памятка выдана в Школе здоровья ПМСП · материал носит ознакомительный характер и не заменяет консультацию врача",
certTitle:"🎓 Вы прошли Школу здоровья ХОБЛ!",certText:"Вы освоили основы самоменеджмента: контроль болезни, ингаляцию, реабилитацию, питание и план действий при обострении. Продолжайте вести дневник и действовать по «светофору».",
footer:"Школа здоровья для пациентов с ХОБЛ · ПМСП · учебный курс · материалы носят ознакомительный характер и не заменяют консультацию врача",
ovItems:["Понимать свою болезнь и стадии","Измерять показатели и вести дневник","Владеть техникой ингаляции","Делать дыхательную гимнастику","Питаться и бросить курить","Действовать при обострении по «светофору»","Сохранять активность и настроение"]},
lessons:[
{n:"01",id:"l1",title:"Знакомство с ХОБЛ: что происходит с лёгкими",meta:"45 мин · основы болезни",
goal:"понять природу ХОБЛ и причины её прогрессирования, чтобы осознанно участвовать в лечении.",
content:'<ul>'+
'<li><b>Что такое ХОБЛ.</b> Хроническое воспаление дыхательных путей приводит к необратимому сужению бронхов и разрушению альвеол (эмфиземе). Воздух проходит хуже, лёгкие «раздуваются», возникает одышка.</li>'+
'<li><b>Главные причины:</b><ul><li>Табакокурение — ≈ 8090% случаев (главный фактор!)</li><li>Пассивное курение, бытовой и уличный дым</li><li>Профессиональные вредности: пыль, химикаты, испарения</li><li>Загрязнение воздуха внутри помещений (биотопливо)</li><li>Генетика: дефицит α1-антитрипсина (редко)</li></ul></li>'+
'<li><b>Основные симптомы:</b> хронический кашель, мокрота, одышка (сначала при нагрузке, потом и в покое), свистящее дыхание, повышенная утомляемость.</li>'+
'<li><b>Чем ХОБЛ отличается от астмы:</b> при астме сужение бронхов обратимо, при ХОБЛ — преимущественно необратимо. Поэтому ХОБЛ нельзя «вылечить», но можно контролировать.</li>'+
'<li><b>Стадии и группы.</b> Стадии 14 определяют по ОФВ₁ при спирометрии. Группы AD — по выраженности симптомов (CAT, mMRC) и числу обострений.</li>'+
'<li><b>Почему болезнь прогрессирует</b> и как замедлить: отказ от курения, регулярная базисная терапия, вакцинация, реабилитация.</li></ul>'+
'<div class="tip">💡 <b>Главное:</b> ХОБЛ нельзя вылечить полностью, но правильное лечение и отказ от курения заметно замедляют её и улучшают жизнь.</div>',
check:["Я знаю, что такое ХОБЛ и почему возникла одышка","Я знаю свою стадию/группу (спросить у врача)","Я понимаю, что отказ от курения — главное лечение"],
quiz:[{q:"1. Главная причина ХОБЛ?",a:"<b>Табакокурение</b> — ответственно за 8090% случаев."},
{q:"2. Можно ли полностью вылечить ХОБЛ?",a:"Нет, изменения бронхов <b>необратимы</b>. Но болезнь можно контролировать и замедлить."},
{q:"3. Чем ХОБЛ отличается от астмы?",a:"При астме сужение бронхов <b>обратимо</b>, при ХОБЛ — преимущественно нет."}],
hw:"📔 Начать <b>дневник симптомов</b>: неделю записывайте кашель, мокроту, одышку и что её провоцирует. На следующем занятии обсудим с врачом."},
{n:"02",id:"l2",title:"Самоконтроль: измерения, шкалы, дневник",meta:"50 мин · как следить за болезнью",
goal:"научиться инструментально контролировать ХОБЛ и вовремя замечать ухудшения.",
content:'<ul>'+
'<li><b>Пульсоксиметрия (SpO₂).</b> Небольшой прибор на палец показывает насыщение крови кислородом.<ul><li>Норма ≥ 95%</li><li>9094% — зона внимания</li><li>&lt;90% — срочно</li></ul>Измеряйте в покое, тёплой рукой, без лака на ногте.</li>'+
'<li><b>Спирометрия (ОФВ₁) и пикфлоуметрия (ПСВ).</b> Оценивают функцию лёгких. Делаются в поликлинике; пикфлоуметр можно иметь дома.</li>'+
'<li><b>Шкала CAT</b> — 8 вопросов о влиянии ХОБЛ на жизнь. Сумма 040: ≤9 — низкое влияние, 1020 — среднее, &gt;20 — высокое. Рост на ≥2 балла — сигнал ухудшения.</li>'+
'<li><b>Шкала одышки mMRC</b> (04): от «одышки нет» до «не могу выйти из дома».</li>'+
'<li><b>Дневник пациента.</b> Что записывать: SpO₂, АД, ЧСС, ЧДД, одышка, мокрота, приём препаратов. Частота — 23 раза в день (утром и вечером).</li>'+
'<li><b>Зоны риска («светофор»):</b></li></ul>'+
'<table class="ztbl"><tr><th>Показатель</th><th>🟢 Зелёная</th><th>🟡 Жёлтая</th><th>🔴 Красная</th></tr>'+
'<tr class="ztr-g"><td>SpO₂</td><td>≥95%</td><td>—</td><td>—</td></tr>'+
'<tr class="ztr-y"><td>SpO₂</td><td>—</td><td>9094%</td><td>—</td></tr>'+
'<tr class="ztr-r"><td>SpO₂</td><td>—</td><td>—</td><td>&lt;90%</td></tr></table>'+
'<div class="tip warn">⚠️ <b>Когда бить тревогу:</b> SpO₂ &lt;90%, рост одышки в покое, гнойная мокрота, лихорадка — переход в красную зону.</div>',
check:["Умею правильно измерять SpO₂ пульсоксиметром","Знаю свою зону риска по «светофору»","Веду дневник 2 раза в день"],
quiz:[{q:"1. Какая SpO₂ считается нормой?",a:"<b>≥ 95%</b>. Ниже 90% — красная зона."},
{q:"2. Сколько баллов в анкете CAT и что значит рост?",a:"От 0 до 40. Рост на <b>≥2 балла</b> — возможное ухудшение."},
{q:"3. Как часто заполнять дневник?",a:"<b>23 раза в день</b> — утром и вечером, плюс при ухудшении."}],
hw:"📊 Заполняйте <b>дневник пациента</b> всю неделю. Запишите свои обычные значения SpO₂ и CAT — это ваша «базовая линия»."},
{n:"03",id:"l3",title:"Лекарства и правильная ингаляция",meta:"60 мин · терапия и техника",
goal:"понимать свою схему лечения и безошибочно пользоваться ингалятором.",
content:'<ul>'+
'<li><b>Классы препаратов:</b><ul><li><b>Бронхолитики</b> — расширяют бронхи. Короткие (сальбутамол, фенотерол, ипратропий) — для купирования. Длинные (ЛАМА — тиотропий и др.; ЛАБА — индакатерол и др.) — базис, регулярно.</li><li><b>ИГКС</b> — снимают воспаление, обычно в комбинации при тяжёлом течении.</li><li><b>Комбинированные:</b> ИГКС/ЛАБА, ЛАМА/ЛАБА, тройная терапия (ИГКС/ЛАБА/ЛАМА).</li><li><b>Прочие:</b> рофлумиласт (ФДЭ-4), муколитики (N-ацетилцистеин), при необходимости — О₂-терапия.</li></ul></li>'+
'<li><b>Базисная vs спасательная терапия.</b> Базис — каждый день, даже когда хорошо (не бросать!). Спасательная — по потребности при одышке.</li>'+
'<li><b>Виды ингаляторов:</b> ДАИ (дозированный аэрозоль), ДПИ (порошковый), SMI (мягкого тумана), небулайзер.</li>'+
'<li><b>Частые ошибки:</b> не встряхнул; вдохнул рывком; не задержал дыхание; не прополоскал рот (риск кандидоза); путает базис и спасатель.</li>'+
'<li><b>Спейсер</b> — насадка-камера для ДАИ: упрощает технику и снижает побочные эффекты.</li>'+
'<li><b>Adherence (приверженность).</b> Нельзя прекращать базис «потому что стало лучше» — это путь к обострению.</li></ul>'+
'<div class="tip">💡 <b>Важно:</b> принесите все свои ингаляторы на приём — медсестра проверит вашу технику.</div>',
check:["Знаю, какой ингалятор базисный, а какой спасательный","Проверил технику ингаляции с медсестрой","Не пропускаю базисную терапию","Полощу рот после ИГКС"],
quiz:[{q:"1. Какой препарат принимают регулярно, а какой по потребности?",a:"<b>Базисные (ЛАМА/ЛАБА/комбинации) — регулярно</b>, спасательные (сальбутамол) — по потребности."},
{q:"2. Зачем полоскать рот после ИГКС?",a:"Чтобы предотвратить <b>кандидоз полости рта</b> и осиплость."},
{q:"3. Можно ли бросить базис, если стало легче?",a:"<b>Нет.</b> Отмена базиса ведёт к возврату симптомов и обострению."}],
hw:"🎥 Снимите на телефон, как вы пользуетесь ингалятором, и покажите медсестре. Составьте список всех своих препаратов с временем приёма."},
{n:"04",id:"l4",title:"Дыхательная гимнастика и физическая активность",meta:"50 мин · реабилитация",
goal:"снизить одышку, укрепить дыхательные мышцы и повысить толерантность к нагрузке.",
content:'<ul>'+
'<li><b>Диафрагмальное дыхание.</b> Одна рука на животе, другая на груди. Вдох через нос — живот надувается; выдох через рот — живот втягивается.</li>'+
'<li><b>Дыхание через сжатые губы.</b> Вдох носом 2 сек, выдох через губы «трубочкой» 4 сек. Удлиняйте выдох. Метод №1 при одышке.</li>'+
'<li><b>Техники откашливания:</b> «хюффинг»; контролируемый кашель — 23 кашлевых толчка после глубокого вдоха.</li>'+
'<li><b>Положения для облегчения одышки:</b> сидя с наклоном вперёд с опорой на руки (ортопноэ); стоя, опираясь руками о стол.</li>'+
'<li><b>Физическая активность.</b> Ходьба — главное упражнение. Начинайте с комфортного темпа, увеличивайте постепенно.</li>'+
'<li><b>Дозирование нагрузки:</b><ul><li>«Разговорный тест»: если можете разговаривать во время нагрузки — темп подходящий.</li><li>Pacing: делайте перерывы, дробите задачу.</li></ul></li>'+
'<li><b>Лёгочная реабилитация</b> — программа 68 недель. Снижает одышку и госпитализации.</li></ul>'+
'<div class="tip">💡 Регулярность важнее интенсивности: <b>1520 минут гимнастики и 2030 минут ходьбы ежедневно</b>.</div>',
check:["Делаю дыхание через сжатые губы при одышке","Делаю гимнастику 34 раза в день","Гуляю каждый день минимум 20 минут","Использую «разговорный тест» для темпа"],
quiz:[{q:"1. Как дышать при одышке первым делом?",a:"<b>Дыхание через сжатые губы</b>: вдох носом 2 сек, выдох через губы 4 сек."},
{q:"2. Что такое «разговорный тест»?",a:"Если во время нагрузки <b>можете говорить</b> — темп нормальный; если задыхаетесь — снизьте."},
{q:"3. Сколько длится программа лёгочной реабилитации?",a:"<b>68 недель</b>."}],
hw:"🏃 Составьте <b>комплекс на день</b>: 3 подхода дыхательной гимнастики + одна прогулка с учётом разговорного теста."},
{n:"05",id:"l5",title:"Питание, отказ от курения, вакцинация, триггеры",meta:"50 мин · устранение факторов",
goal:"устранить модифицируемые факторы риска и укрепить организм.",
content:'<ul>'+
'<li><b>Питание при ХОБЛ.</b> Жевать и переваривать еду — работа, требующая кислорода.<ul><li>Ешьте <b>часто и небольшими порциями</b> (45 раз)</li><li>Достаточно <b>белка</b> (11,5 г/кг)</li><li>При снижении веса — калорийные перекусы</li><li>При отёках — меньше соли</li></ul></li>'+
'<li><b>Отказ от курения — главное вмешательство.</b> Замедляет болезнь на любой стадии.<ul><li>Никотинзаместительная терапия: пластырь, жвачка, леденцы</li><li>Лекарства: варениклин, бупропион</li></ul></li>'+
'<li><b>Вакцинация:</b><ul><li><b>Против гриппа</b> — ежегодно, осенью</li><li><b>Пневмококковая</b> — по схеме</li><li><b>COVID-19</b> — по календарю</li></ul></li>'+
'<li><b>Триггеры</b> — что усиливает одышку: табачный дым, пыль, резкие запахи, холодный воздух, выхлопы.</li>'+
'<li><b>Профилактика инфекций:</b> мытьё рук, избегать скоплений в сезон ОРВИ.</li></ul>'+
'<div class="tip danger">🚭 <b>Отказ от курения</b> — самое эффективное, что вы можете сделать.</div>',
check:["Назначена дата отказа от курения","Привит от гриппа и пневмококка","Ем 45 раз небольшими порциями, слежу за белком","Устранил домашние триггеры"],
quiz:[{q:"1. Самое эффективное лечение для замедления ХОБЛ?",a:"<b>Отказ от курения</b> — на любой стадии."},
{q:"2. Почему при ХОБЛ рекомендуют есть часто и понемногу?",a:"Потому что <b>приём пищи требует кислорода</b> и утомляет."},
{q:"3. Какие прививки нужны пациенту с ХОБЛ?",a:"<b>Грипп</b> (ежегодно), <b>пневмококк</b>, <b>COVID-19</b>."}],
hw:"🚭 Составьте <b>план отказа от курения</b> (дата, методы, поддержка). Ведите <b>дневник питания</b> 3 дня."},
{n:"06",id:"l6",title:"Обострения: ранние признаки, план действий, красные флаги",meta:"60 мин · самое важное занятие",
goal:"уметь распознать обострение и действовать по плану, не дожидаясь госпитализации.",
content:'<ul>'+
'<li><b>Что такое обострение.</b> Внезапное ухудшение симптомов. Главная причина — респираторные инфекции (≈7080%).</li>'+
'<li><b>Ранние признаки обострения:</b><ul><li>Рост одышки</li><li>Изменение мокроты: больше объём, гнойная/жёлто-зелёная</li><li>Усиление кашля, свистящее дыхание</li><li>Лихорадка, недомогание</li><li>Отёки ног, спутанность</li></ul></li>'+
'<li><b>План действий «светофор»:</b><ul><li><b>🟢 Зелёная:</b> как обычно — базис, дневник, активность.</li><li><b>🟡 Жёлтая:</b> SpO₂ 9094% — спасатель, контроль, связаться с медсестрой.</li><li><b>🔴 Красная:</b> SpO₂ &lt;90% — кислород, бронхолитик, положение, вызов скорой.</li></ul></li>'+
'<li><b>Спасательная терапия:</b> сальбутамол ± ипратропий через ДАИ (24 вдоха) или небулайзер. Всегда под рукой.</li>'+
'<li><b>Когда начинать системные ГКС и антибиотики</b> (по плану врача): при гнойной мокроте + увеличении её объёма и/или одышки.</li>'+
'<li><b>Кислородотерапия:</b> не превышайте целевой поток.</li>'+
'<li><b>Красные флаги — вызывайте скорую:</b><ul><li>SpO₂ &lt; 88% &gt;5 мин или нарастает одышка</li><li>Одышка в покое не уменьшается через 1520 мин после бронхолитика</li><li>Спутанность сознания, цианоз губ, загрудинные боли</li><li>Температура &gt; 38,5 °C с нарастающей одышкой</li></ul></li></ul>'+
'<div class="tip danger">🚑 <b>Не терпите ухудшение.</b> Раннее действие по плану снижает риск госпитализации.</div>',
check:["План действий «светофор» распечатан и на видном месте","Спасательный ингалятор всегда с собой","Знаю ранние признаки обострения","Знаю, когда вызывать скорую"],
quiz:[{q:"1. Главная причина обострений ХОБЛ?",a:"<b>Респираторные инфекции</b> — 7080%."},
{q:"2. При каких симптомах стартуют антибиотики по плану?",a:"При <b>гнойной мокроте</b> + увеличении её объёма и/или одышки. По назначению врача!"},
{q:"3. Когда вызывать скорую?",a:"При <b>SpO₂ &lt;88%</b> &gt;5 мин, одышке в покое без эффекта бронхолитика, спутанности сознания."}],
hw:"📝 Составьте с врачом <b>персональный план действий</b>: пороги зон, дозы спасателя, когда и какие ГКС/антибиотики начинать, телефоны. Повесьте на холодильник."},
{n:"07",id:"l7",title:"Жизнь с ХОБЛ: психология, близкие, путешествия, права",meta:"45 мин · качество жизни",
goal:"сохранить социальную активность, настроение и качество жизни с болезнью.",
content:'<ul>'+
'<li><b>Тревога, депрессия и паника при одышке.</b> Страх усиливает одышку. Разрывайте круг: дыхание через сжатые губы, положение ортопноэ, техники расслабления. При стойкой подавленности обратитесь к врачу.</li>'+
'<li><b>Поддержка близких и групп самопомощи.</b> Родные должны знать ваш план действий.</li>'+
'<li><b>Сон.</b> Приподнятое изголовье; О₂-терапия по схеме на ночь. При храпе и дневной сонливости обсудите СОАС.</li>'+
'<li><b>Сексуальная жизнь.</b> Выбирайте время и позиции с меньшей нагрузкой; используйте бронхолитик beforehand.</li>'+
'<li><b>Путешествия.</b><ul><li>На самолёте: обсудите, нужен ли кислород в полёте</li><li>Лекарства — в ручной клади, с запасом и рецептом</li><li>Кислород в дороге: портативные концентраторы</li></ul></li>'+
'<li><b>Сопутствующие болезни.</b> ХОБЛ часто идёт с ССЗ, остеопорозом, диабетом, саркопенией.</li>'+
'<li><b>Права пациента:</b> диспансерное наблюдение, льготные лекарства, направление на реабилитацию и МСЭ, паллиативная помощь.</li>'+
'<li><b>Итоги школы:</b> главный навык — не паниковать, а действовать по плану.</li></ul>'+
'<div class="tip">💚 ХОБЛ — не приговор. С планом действий, лечением и активностью жизнь остаётся полной.</div>',
check:["Знаю техники расслабления при тревоге/одышке","Родные знают мой план действий","Обсудил с врачом сопутствующие болезни и права","Составил личный план самопомощи на месяц"],
quiz:[{q:"1. Что делать при панике и нарастающей одышке?",a:"<b>Дыхание через сжатые губы, положение ортопноэ, расслабление</b>."},
{q:"2. Куда класть лекарства в поездке?",a:"<b>В ручную кладь</b>, с запасом и рецептом."},
{q:"3. Какие сопутствующие болезни часто идут с ХОБЛ?",a:"<b>ССС, остеопороз, диабет, саркопения</b>."}],
hw:"📅 Составьте <b>личный план самопомощи на месяц</b>: цели и контрольные даты. Поздравляем — вы прошли курс!"}
],
handouts:{
"h-plan":{title:"План действий при ХОБЛ (светофор)",html:function(){return ''+
'<p>Это ваш персональный план. Заполните пороги и телефоны вместе с врачом и держите на видном месте.</p>'+
flowHtml("📊 Измерьте SpO₂ пульсоксиметром","🚦 Определите зону")+
'<div class="zone g"><b>🟢 ЗЕЛЁНАЯ ЗОНА — стабилен</b><br>SpO₂ ≥ 95% · обычное самочувствие.<br>Действия: базисная терапия по схеме, дневник 23 раза/день, активность, гимнастика.</div>'+
'<div class="zone y"><b>🟡 ЖЁЛТАЯ ЗОНА — внимание</b><br>SpO₂ 9094% · рост одышки, изменение мокроты.<br>Действия: спасательный бронхолитик (сальбутамол 24 вдоха), контроль SpO₂ каждые 1530 мин, связаться с медсестрой.</div>'+
'<div class="zone r"><b>🔴 КРАСНАЯ ЗОНА — ухудшение</b><br>SpO₂ &lt; 90% · резкая одышка в покое, лихорадка, гнойная мокрота.<br>Действия: увеличить О₂ по схеме, бронхолитик через небулайзер, положение ортопноэ, вызов скорой.</div>'+
'<h2>🚑 Вызывайте скорую, если:</h2><ul><li>SpO₂ &lt; 88% держится более 5 минут или одышка нарастает</li><li>одышка в покое не уменьшается через 1520 минут после бронхолитика</li><li>спутанность сознания, синюшность губ, боли в груди</li><li>температура &gt; 38,5 °C с нарастающей одышкой</li></ul>'+
'<h2>📞 Мои контакты</h2><ul><li>Лечащий врач: ____________________</li><li>Медсестра: ____________________</li><li>Скорая: 103 / 112</li><li>Мой спасательный ингалятор: ____________________</li></ul>';}},
"h-inhal":{title:"Техника ингаляции",html:function(){return ''+
'<p>Правильная техника — половина успеха лечения. Проверяйте её у медсестры каждые 3 месяца.</p>'+
'<h2>Ингалятор ДАИ — пошагово</h2>'+
stepsHtml([{ic:"🤚",t:"Встряхнуть",d:"Снять колпачок, встряхнуть"},{ic:"😮‍💨",t:"Выдох",d:"Спокойно, мимо ингалятора"},{ic:"👄",t:"Обхватить",d:"Губы на мундштук"},{ic:"🌬",t:"Вдох + нажатие",d:"Медленный вдох, нажать"},{ic:"⏳",t:"Вдох 35 сек",d:"Продолжить глубокий вдох"},{ic:"🤍",t:"Задержать",d:"Дыхание на 10 секунд"},{ic:"😮‍💨",t:"Выдох",d:"Спокойно выдохнуть"},{ic:"💧",t:"Полоскать",d:"После ИГКС — рот водой"}])+
'<h2>⚠️ Частые ошибки</h2><ul><li>не встряхнул</li><li>вдохнул рывком</li><li>не задержал дыхание</li><li>не прополоскал рот после ИГКС (кандидоз)</li><li>путает базис и спасатель</li></ul>'+
'<div class="zone g"><b>💡 Спейсер</b> — насадка-камера для ДАИ. Упрощает вдох и снижает побочные эффекты.</div>'+
'<p><b>Базисный ингалятор:</b> ____________________ — каждый день.<br><b>Спасательный ингалятор:</b> ____________________ — по потребности.</p>';}},
"h-breath":{title:"Дыхательная гимнастика",html:function(){return ''+
'<p>Регулярность важнее интенсивности. Делайте комплекс 34 раза в день по 510 минут.</p>'+
'<h2>1. Дыхание через сжатые губы (при одышке)</h2>'+
stepsHtml([{ic:"👃",t:"Вдох носом",d:"2 секунды"},{ic:"👄",t:"Губы трубочкой",d:"Сложить губы"},{ic:"🌬",t:"Выдох 4 сек",d:"Удлинять выдох"},{ic:"🔁",t:"Повторять",d:"До спокойного дыхания"}])+
'<h2>2. Диафрагмальное дыхание</h2><ul><li>Одна рука на животе, другая на груди.</li><li>Вдох через нос — живот надувается.</li><li>Выдох через сжатые губы — живот втягивается.</li></ul>'+
'<h2>3. Положения для облегчения одышки</h2><ul><li>Сидя, наклонившись вперёд с опорой рук.</li><li>Стоя, опираясь руками о стол.</li></ul>'+
'<div class="zone y"><b>🏃 Нагрузка:</b> «разговорный тест» — если можете говорить во время ходьбы, темп подходящий. Гуляйте ежедневно минимум 20 минут.</div>';}},
"h-diary":{title:"Дневник пациента (шаблон на неделю)",html:function(){return ''+
'<p>Заполняйте 2 раза в день (утром и вечером) и при ухудшении. Приносите на приём.</p>'+
'<p><b>Пациент:</b> ____________________ &nbsp; <b>Неделя:</b> ______________</p>'+
'<table><tr><th>День</th><th>Время</th><th>SpO₂ %</th><th>АД</th><th>ЧСС</th><th>ЧДД</th><th>Одышка mMRC</th><th>Мокрота</th><th>Препараты</th><th>Заметка</th></tr>'+
diaryRows(["Понедельник — утро","Понедельник — вечер","Вторник — утро","Вторник — вечер","Среда — утро","Среда — вечер","Четверг — утро","Четверг — вечер","Пятница — утро","Пятница — вечер","Суббота — утро","Суббота — вечер","Воскресенье — утро","Воскресенье — вечер"])+'</table>'+
'<p style="font-size:13px;color:#5B6573">Одышка mMRC: 0 — нет, 1 — при быстрой ходьбе, 2 — иду медленнее, 3 — останавливаюсь ~100 м, 4 — не могу выйти из дома.</p>';}},
"h-life":{title:"Питание и отказ от курения",html:function(){return ''+
'<h2>🥗 Питание при ХОБЛ</h2><ul><li>Ешьте часто, небольшими порциями — 45 раз в день.</li><li>Достаточно белка (11,5 г/кг): мясо, рыба, яйца, молочное.</li><li>При снижении веса — калорийные перекусы: орехи, масло, сыр.</li><li>При отёках — меньше соли.</li></ul>'+
'<h2>🚫 Отказ от курения — главное лечение</h2>'+
stepsHtml([{ic:"📅",t:"Дата",d:"Назначьте день отказа"},{ic:"🗑",t:"Уберите",d:"Сигареты, пепельницы, триггеры"},{ic:"🩹",t:"НРТ",d:"Пластырь/жвачка от никотина"},{ic:"💊",t:"Лекарства",d:"Варениклин/бупропион по рецепту"},{ic:"🤝",t:"Поддержка",d:"Родные, врач, группа"}])+
'<div class="zone g"><b>Дата отказа от курения:</b> ________________</div>'+
'<h2>💉 Вакцинация</h2><ul><li>Грипп — ежегодно, осенью.</li><li>Пневмококк — по схеме врача.</li><li>COVID-19 — по календарю.</li></ul>';}},
"h-summary":{title:"Итоговая памятка выпускника Школы ХОБЛ",html:function(){return ''+
'<p>Поздравляем! Вы освоили основы самоменеджмента. Краткая шпаргалка:</p>'+
'<h2>📅 Мой день при ХОБЛ</h2>'+
timelineHtml([{time:"🌅 Утро",items:["Базисный ингалятор","SpO₂/АД/ЧСС","Дневник","Завтрак с белком"]},{time:"☀️ День",items:["Дыхательная гимнастика","Прогулка ≥20 мин","Обед + перекусы"]},{time:"🌙 Вечер",items:["Базисный ингалятор","Измерения + дневник","Гимнастика","Спасатель — рядом"]}])+
'<h2>🚦 «Светофор»</h2><ul><li>🟢 SpO₂ ≥95% — базис и дневник.</li><li>🟡 SpO₂ 9094% — спасатель, контроль, звоню медсестре.</li><li>🔴 SpO₂ &lt;90% — О₂, бронхолитик, положение, скорая.</li></ul>'+
'<h2>🚑 Скорая (103/112)</h2><ul><li>SpO₂ &lt;88% &gt;5 мин или нарастает одышка.</li><li>Одышка в покое не проходит 1520 мин после бронхолитика.</li><li>Спутанность, цианоз, боли в груди, t &gt;38,5 °C.</li></ul>'+
'<div class="zone g"><b>Главное:</b> не паниковать, а действовать по плану. Вы — главный участник своей команды лечения.</div>';}}
},
handoutCards:[
{ic:"🚦",t:"План действий «светофор»",d:"Зоны риска, что делать при ухудшении, красные флаги и когда вызывать скорую.",id:"h-plan"},
{ic:"💊",t:"Техника ингаляции",d:"Пошаговая техника ДАИ, частые ошибки, спейсер.",id:"h-inhal"},
{ic:"🌬",t:"Дыхательная гимнастика",d:"Диафрагмальное дыхание, дыхание через сжатые губы, положения, комплекс.",id:"h-breath"},
{ic:"📔",t:"Дневник пациента (шаблон)",d:"Таблица на неделю: SpO₂, АД, ЧСС, ЧДД, одышка, мокрота, препараты.",id:"h-diary"},
{ic:"🥗",t:"Питание и отказ от курения",d:"Принципы питания, план отказа от курения, вакцинация.",id:"h-life"},
{ic:"🎓",t:"Итоговая памятка выпускника",d:"Краткая шпаргалка по всем ключевым навыкам курса.",id:"h-summary"}
]
};
/* ============ ДАННЫЕ: ҚАЗАҚША ============ */
var KZ={
ui:{brand:"ХОБЛ мектебі",eyebrow:"🎓 Денсаулық мектебі · ПМСП",heroTitle:"ХОБЛ-мен науқастарға арналған Денсаулық мектебі",
heroLead:"Өзін-өзі басқарудың барлық аспектілері бойынша 7 сабақтан тұратын оқу курсы. Сырқаттық обструктивті өкпе ауруы (ХОБЛ) бар науқасқа ауруды бақылап, асқынуларды азайтып, өмір сапасын сақтауға көмектеседі.",
sL:"сабақ",sD:"әр сабақ",sF:"тегін",start:"Оқуды бастау",prog:"Курс бағдарламасы",
ovTitle:"Сіз не үйренесіз",ovLead:"Курстан кейін ауруды өзіңіз бақылай аласыз, дәрілерді дұрыс қабылдайсыз, асқынуды таниды және жоспар бойынша әрекет етесіз.",
navTitle:"Бағдарлама · 7 сабақ",lessonN:"",goal:"Мақсаты",content:"Мазмұны",check:"Тексеру тізімі",quiz:"Өзіндік тексеру",hw:"Үй тапсырмасы",done:"Өтілді",
hTitle:"📄 Науқастарға таратуға арналған ескертпі парақтар",hLead:"Басып шығаруға (немесе PDF сақтауға) арналған бір беттік ескертпі парақтар. Сәйкес сабақтардан кейін науқастарға таратыңыз.",
print:"Басып шығару / PDF",hHdr:"ХОБЛ Денсаулық мектебі · Науқасқа арналған ескертпі парақ",
hFtr:"Ескертпі парақ ПМСП Денсаулық мектебінде таратылды · материал танысу сипатында, дәрігердің кеңесін алмастырмайды",
certTitle:"🎓 Сіз ХОБЛ Денсаулық мектебін аяқтадыңыз!",certText:"Өзін-өзі басқару негіздерін меңгердіңіз: ауруды бақылау, ингаляция, реабилитация, тамақтану және асқыну кезіндегі әрекет жоспары. Күнделікті жүргізіп, «бақдаршам» бойынша әрекет етуді жалғастырыңыз.",
footer:"ХОБЛ-мен науқастарға арналған Денсаулық мектебі · ПМСП · оқу курсы · материалдар танысу сипатында және дәрігердің кеңесін алмастырмайды",
ovItems:["Ауруыңызды және сатыларын түсінесіз","Көрсеткіштерді өлшеп, күнделік жүргізесіз","Ингаляция техникасын меңгересіз","Тыныс алу гимнастикасын жасайсыз","Тамақтанып, темекіні тастайсыз","Асқыну кезінде «бақдаршам» бойынша әрекет етесіз","Белсенділік пен көңіл-күйді сақтайсыз"]},
lessons:[
{n:"01",id:"l1",title:"ХОБЛ-мен танысу: өкпеде не болады",meta:"45 мин · аурудың негіздері",
goal:"ХОБЛ-дің мәнін және асқыну себептерін түсініп, емге саналы түрде қатысу.",
content:'<ul>'+
'<li><b>ХОБЛ дегеніміз не.</b> Тыныс жолдарының созылмалы қабынуы бронхтардың қайтарылмас тарылуына және альвеолалардың бұзылуына (эмфизема) әкеледі. Ауа нашар өтеді, ентігу пайда болады.</li>'+
'<li><b>Негізгі себептері:</b><ul><li>Темекі шегу — ≈ 8090% (бас фактор!)</li><li>Пассивті шегу, тұрмыстық және көше түтіні</li><li>Кәсіби зияндылықтар: шаң, химикаттар, булар</li><li>Бөлме ішіндегі ауаның ластануы</li><li>Генетика: α1-антитрипсин тапшылығы (сирек)</li></ul></li>'+
'<li><b>Негізгі белгілері:</b> созылмалы жөтел, қақырық, ентігу (алдымен жүктемеде, кейін тыныштықта), ысқырықты тыныс, шаршағыштық.</li>'+
'<li><b>ХОБЛ астадан айырмашылығы:</b> астада бронх тарылуы қайтымды, ХОБЛ-де — негізінен қайтымсыз. Сондықтан ХОБЛ-ді «емдеп» болмайды, бірақ бақылап болады.</li>'+
'<li><b>Сатылары мен топтары.</b> 14 сатылары ОФВ₁ бойынша анықталады. AD топтары — белгілері (CAT, mMRC) және асқыну саны бойынша.</li>'+
'<li><b>Ауру неліктен үдеуде</b> және қалай баяулату: темекіні тастау, тұрақты негізгі ем, егілу, реабилитация.</li></ul>'+
'<div class="tip">💡 <b>Бастысы:</b> ХОБЛ-ді толық емдеуге болмайды, бірақ дұрыс ем және темекіні тастау оны анық баяулатып, өмірді жақсартады.</div>',
check:["ХОБЛ дегенді және ентігу неліктен пайда болғанын білемін","Өз сатымды/тобымды білемін (дәрігерден сұрау)","Темекіні тастау — басты ем екенін түсінемін"],
quiz:[{q:"1. ХОБЛ-нің басты себебі?",a:"<b>Темекі шегу</b> — жағдайлардың 8090%-ын құрайды."},
{q:"2. ХОБЛ-ді толық емдеп бола ма?",a:"Жоқ, бронх өзгерістері <b>қайтымсыз</b>. Бірақ ауруды бақылап, баяулатуға болады."},
{q:"3. ХОБЛ астадан айырмашылығы неде?",a:"Астада бронх тарылуы <b>қайтымды</b>, ХОБЛ-де — негізінен жоқ."}],
hw:"📔 <b>Белгілер күнделігін</b> бастаңыз: бір апта бойы жөтел, қақырық, ентігу және оны қоздыратындарды жазыңыз."},
{n:"02",id:"l2",title:"Өзіндік бақылау: өлшеу, шкалалар, күнделік",meta:"50 мин · ауруды қалай қадағалау",
goal:"ХОБЛ-ді аспаптық бақылап, нашарлауды дер кезінде байқауды үйрену.",
content:'<ul>'+
'<li><b>Пульсоксиметрия (SpO₂).</b> Саусаққа киілетін шағын аспап қандағы оттекті көрсетеді.<ul><li>Қалыпты ≥ 95%</li><li>9094% — назар аймағы</li><li>&lt;90% — жедел</li></ul>Тыныштықта, жылы қолмен, тырнақтағы лаксыз өлшеңіз.</li>'+
'<li><b>Спирометрия (ОФВ₁) және пикфлоуметрия (ПСВ).</b> Өкпе функциясын бағалайды.</li>'+
'<li><b>CAT сауалнамасы</b> — ХОБЛ-нің өмірге әсерін бағалайтын 8 сұрақ. Қорытынды 040: ≤9 — төмен, 1020 — орташа, &gt;20 — жоғары. ≥2 баллға өсу — нашарлау сигналы.</li>'+
'<li><b>Ентігу шкаласы mMRC</b> (04): «ентігу жоқ»-тан «үйден шыға алмаймын»-ға дейін.</li>'+
'<li><b>Науқас күнделігі.</b> Не жазу керек: SpO₂, АҚ, ЖЖС, тыныс жиілігі, ентігу, қақырық, дәрілерді қабылдау. Жиілігі — күніне 23 рет.</li>'+
'<li><b>Тәуекел аймақтары («бақдаршам»):</b></li></ul>'+
'<table class="ztbl"><tr><th>Көрсеткіш</th><th>🟢 Жасыл</th><th>🟡 Сары</th><th>🔴 Қызыл</th></tr>'+
'<tr class="ztr-g"><td>SpO₂</td><td>≥95%</td><td>—</td><td>—</td></tr>'+
'<tr class="ztr-y"><td>SpO₂</td><td>—</td><td>9094%</td><td>—</td></tr>'+
'<tr class="ztr-r"><td>SpO₂</td><td>—</td><td>—</td><td>&lt;90%</td></tr></table>'+
'<div class="tip warn">⚠️ <b>Қашан дабыл қағу:</b> SpO₂ &lt;90%, тыныштықта ентігудің күшеюі, іріңді қақырық, қызба — қызыл аймаққа өту.</div>',
check:["Пульсоксиметрмен SpO₂ дұрыс өлшей аламын","«Бақдаршам» бойынша өз аймағымды білемін","Күніне 2 рет күнделік жүргіземін"],
quiz:[{q:"1. Қалыпты SpO₂ қанша?",a:"<b>≥ 95%</b>. 90%-тан төмен — қызыл аймақ."},
{q:"2. CAT сауалнамасында қанша балл және өсу не білдіреді?",a:"0-ден 40-қа дейін. <b>≥2 баллға</b> өсу — мүмкін нашарлау."},
{q:"3. Күнделікті қанша жиі толтыру керек?",a:"<b>Күніне 23 рет</b> — таңертең және кешке."}],
hw:"📊 <b>Науқас күнделігін</b> бір апта толтырыңыз. Өзіңіздің қалыпты SpO₂ және CAT мәндерін жазыңыз — бұл «базалық сызығыңыз»."},
{n:"03",id:"l3",title:"Дәрілер және дұрыс ингаляция",meta:"60 мин · ем және техника",
goal:"ем схемасын түсініп, ингаляторды қателеспей пайдалануды меңгеру.",
content:'<ul>'+
'<li><b>Дәрі топтары:</b><ul><li><b>Бронхолитиктер</b> — бронхтарды кеңейтеді. Қысқа әсерлі (сальбутамол, фенотерол, ипратропий) — жедел көмек. Ұзақ әсерлі (ЛАМА, ЛАБА) — негізгі ем.</li><li><b>ИГКС</b> — қабынуды басады, әдетте ауыр ағымда қоспада.</li><li><b>Қоспалы:</b> ИГКС/ЛАБА, ЛАМА/ЛАБА, үштік терапия.</li><li><b>Басқалар:</b> рофлумиласт (ФДЭ-4), муколитиктер, О₂-терапия.</li></ul></li>'+
'<li><b>Негізгі vs құтқару терапиясы.</b> Негізгі — күн сайын, жақсы болғанда да (тастамау!). Құтқару — ентігу кезінде қажет бойынша.</li>'+
'<li><b>Ингалятор түрлері:</b> ДАИ, ДПИ, SMI, небулайзер.</li>'+
'<li><b>Жиі қателіктер:</b> шайқамады; дем алуды тартылып алды; тынысты ұстамады; ауызды шайқамады (кандидоз); негізгі мен құтқаруды шатастырды.</li>'+
'<li><b>Спейсер</b> — ДАИ-ға арналған камера-насадка: техниканы оңайлатып, жанама әсерлерін азайтады.</li>'+
'<li><b>Адгеренттілік.</b> «Жақсы болып жүр» деп негізгі емді тоқтатуға болмайды — бұл асқынуға апарыды.</li></ul>'+
'<div class="tip">💡 <b>Маңызды:</b> қабылдауға барлық ингаляторларыңызды әкеліңіз — медбике техникаңызды тексереді.</div>',
check:["Қай ингалятор негізгі, қайсысы құтқару екенін білемін","Ингаляция техникамды медбикемен тексердім","Негізгі емді өткізіп алмаймын","ИГКС-тен кейін ауызымды шайкам"],
quiz:[{q:"1. Қай дәріні тұрақты, қайсысын қажет бойынша қабылдайды?",a:"<b>Негізгі — тұрақты</b>, құтқарушы (сальбутамол) — қажет бойынша."},
{q:"2. ИГКС-тен кейін ауызды неге шайқайды?",a:"Ауыз қуысындағы <b>кандидозды</b> алдын алу үшін."},
{q:"3. Жеңілдегенде негізгі емді тоқтатуға бола ма?",a:"<b>Жоқ.</b> Негізгі емді тоқтату асқынуға әкеледі."}],
hw:"🎥 Ингаляторды қалай пайдаланатыныңызды телефонға түсіріп, медбикеге көрсетіңіз. Барлық дәрілеріңізді қабылдау уақытымен тізіңіз."},
{n:"04",id:"l4",title:"Тыныс алу гимнастикасы және дене белсенділігі",meta:"50 мин · реабилитация",
goal:"ентігуді азайтып, тыныс алу бұлшықеттерін мықтыландыру және жүктемеге төзімділікті арттыру.",
content:'<ul>'+
'<li><b>Көкбауырлық (диафрагмалық) тыныс алу.</b> Бір қол іште, бірі кеудеде. Мұрынмен дем алғанда — іш ұлғаяды; ауызбен дем шығарғанда — іш кіреді.</li>'+
'<li><b>Қысылған ерінмен тыныс алу.</b> Мұрынмен 2 сек дем алыңыз, ерінді «түтікше» жасап 4 сек дем шығарыңыз. Ентігу кезіндегі №1 әдіс.</li>'+
'<li><b>Жөтелу техникалары:</b> «хюффинг»; бақыланатын жөтел — терең дем алғаннан кейін 23 жөтел толқыны.</li>'+
'<li><b>Ентігуді жеңілдететін қалыптар:</b> алға иіліп, қолмен тіреліп отыру (ортопноэ); үстелге сүйеніп тұру.</li>'+
'<li><b>Дене белсенділігі.</b> Жүру — басты жаттығу. Ыңғайлы қарқыннан бастап, бірте-бірте арттырыңыз.</li>'+
'<li><b>Жүктемені дозалау:</b><ul><li>«Сөйлесу тесті»: жүктеме кезінде сөйлесе алсаңыз — қарқын лайықты.</li><li>Pacing: үзіліс жасаңыз, тапсырманы бөліңіз.</li></ul></li>'+
'<li><b>Өкпе реабилитациясы</b> — 68 апта. Ентігу мен госпитализацияны азайтады.</li></ul>'+
'<div class="tip">💡 Тұрақтылық интенсивтіліктен маңыздырақ: <b>күніне 1520 мин гимнастика және 2030 мин жүру</b>.</div>',
check:["Ентігу кезінде қысылған ерінмен тыныс аламын","Гимнастиканы күніне 34 рет жасаймын","Күн сайын кемінде 20 мин серуендеймін","Қарқын үшін «сөйлесу тестін» қолданамын"],
quiz:[{q:"1. Ентігу кезінде алдымен не істеу керек?",a:"<b>Қысылған ерінмен тыныс алу</b>: мұрынмен 2 сек, ерінмен 4 сек."},
{q:"2. «Сөйлесу тесті» дегеніміз не?",a:"Егер жүктеме кезінде <b>сөйлесе алсаңыз</b> — қарқын қалыпты."},
{q:"3. Өкпе реабилитациясы қанша уақытқа созылады?",a:"<b>68 апта</b>."}],
hw:"🏃 <b>Күндік кешенді</b> құрастырыңыз: 3 рет тыныс алу гимнастикасы + сөйлесу тесті бойынша бір серуен."},
{n:"05",id:"l5",title:"Тамақтану, темекіні тастау, егілу, триггерлер",meta:"50 мин · факторларды жою",
goal:"өзгертілуге болатын тәуекел факторларын жойып, организмді мықтыландыру.",
content:'<ul>'+
'<li><b>ХОБЛ кезіндегі тамақтану.</b> Тамақты шайнап қорыту — оттекті қажет ететін жұмыс.<ul><li><b>Жиі, шағын порциялармен</b> жеңіз (45 рет)</li><li>Жеткілікті <b>ақуыз</b> (11,5 г/кг)</li><li>Салмақ төмендегенде — калориялы тағамдар</li><li>Ісіктерде — тұзды азайтыңыз</li></ul></li>'+
'<li><b>Темекіні тастау — басты шаралардың бірі.</b> Кез келген сатыда ауруды баяулатады.<ul><li>Никотинді алмастыру терапиясы: жапсырма, сағыз</li><li>Дәрілер: варениклин, бупропион</li></ul></li>'+
'<li><b>Егілу:</b><ul><li><b>Тұмауға қарсы</b> — жыл сайын, күзде</li><li><b>Пневмококкқа қарсы</b> — схема бойынша</li><li><b>COVID-19</b> — күнтізбе бойынша</li></ul></li>'+
'<li><b>Триггерлер</b> — ентігуді күшейтетіндер: түтін, шаң, өткір иістер, суық ауа, түтін.</li>'+
'<li><b>Инфекциялардың алдын алу:</b> қолды жуу, ЖТВИ маусымында жиналыстардан аулақ болу.</li></ul>'+
'<div class="tip danger">🚭 <b>Темекіні тастау</b> — жасай алатын ең тиімді әрекетіңіз.</div>',
check:["Темекіні тастау күні тағайындалды","Тұмау және пневмококкқа қарсы егілдім","Күніне 45 рет шағын порциямен, ақуызға назар аударамын","Үйдегі триггерлерді жойдым"],
quiz:[{q:"1. ХОБЛ-ді баяулатудың ең тиімді емі?",a:"<b>Темекіні тастау</b> — кез келген сатыда."},
{q:"2. ХОБЛ-де неге жиі, аз порциямен жеуге кеңес береді?",a:"Өйткені <b>тамақ қабылдау оттекті қажет етеді</b> және шаршатады."},
{q:"3. ХОБЛ-мен науқасқа қандай егулер қажет?",a:"<b>Тұмау</b> (жыл сайын), <b>пневмококк</b>, <b>COVID-19</b>."}],
hw:"🚭 <b>Темекіні тастау жоспарын</b> құрыңыз (күні, әдістері, қолдау). 3 күн <b>тамақтану күнделігін</b> жүргізіңіз."},
{n:"06",id:"l6",title:"Асқынулар: ерте белгілер, әрекет жоспары, қызыл жалаулар",meta:"60 мин · ең маңызды сабақ",
goal:"асқынуды тани біліп, госпитализацияны күтпей-ақ жоспар бойынша әрекет ету.",
content:'<ul>'+
'<li><b>Асқыну дегеніміз не.</b> Белгілердің кенет нашарлауы. Басты себебі — тыныс алу инфекциялары (≈7080%).</li>'+
'<li><b>Асқынудың ерте белгілері:</b><ul><li>Ентігудің күшеюі</li><li>Қақырықтың өзгеруі: көлемі ұлғаю, іріңді/сары-жасыл</li><li>Жөтелдің күшеюі, ысқырықты тыныс</li><li>Қызба, әлсіздік</li><li>Аяқ ісігі, сананың шатасуы</li></ul></li>'+
'<li><b>«Бақдаршам» әрекет жоспары:</b><ul><li><b>🟢 Жасыл:</b> әдеттегідей — негізгі ем, күнделік, белсенділік.</li><li><b>🟡 Сары:</b> SpO₂ 9094% — құтқарушы, бақылау, медбикемен байланысу.</li><li><b>🔴 Қызыл:</b> SpO₂ &lt;90% — оттек, бронхолитик, қалып, жедел жәрдем.</li></ul></li>'+
'<li><b>Құтқару терапиясы:</b> сальбутамол ± ипратропий ДАИ (24 рет) немесе небулайзер. Әрқашан қолда.</li>'+
'<li><b>Жүйелі ГКС және антибиотиктерді қашан бастау</b> (жоспар бойынша): іріңді қақырық + көлемі және/немесе ентігу ұлғайғанда.</li>'+
'<li><b>Оттектік терапия:</b> мақсатты ағыннан аспаңыз.</li>'+
'<li><b>Қызыл жалаулар — жедел жәрдемді шақырыңыз:</b><ul><li>SpO₂ &lt; 88% &gt;5 мин немесе ентігу үдесе</li><li>Тыныштықта ентігу бронхолитиктен кейін 1520 мин азаймаса</li><li>Сананың шатасуы, ерін көгеруі, кеуде ауырсынуы</li><li>Температура &gt; 38,5 °C ентігудің үдеуімен</li></ul></li></ul>'+
'<div class="tip danger">🚑 <b>Нашарлауды шыдамаңыз.</b> Жоспар бойынша ерте әрекет госпитализация қаупін азайтады.</div>',
check:["«Бақдаршам» әрекет жоспары басылған және көрінетін жерде","Құтқарушы ингалятор әрқашан қолда","Асқынудың ерте белгілерін білемін","Жедел жәрдемді қашан шақыратынын білемін"],
quiz:[{q:"1. ХОБЛ асқынуларының басты себебі?",a:"<b>Тыныс алу инфекциялары</b> — 7080%."},
{q:"2. Қандай белгілерде жоспар бойынша антибиотиктер басталады?",a:"<b>Іріңді қақырық</b> + көлемі және/немесе ентігу ұлғайғанда. Дәрігердің тағайындауы бойынша!"},
{q:"3. Жедел жәрдемді қашан шақыру керек?",a:"<b>SpO₂ &lt;88%</b> &gt;5 мин, тыныштықта ентігу басылмаса, сананың шатасуы кезінде."}],
hw:"📝 Дәрігермен бірге <b>жеке әрекет жоспарын</b> құрыңыз: аймақ шектері, құтқарушы дозасы, қандай ГКС/антибиотиктерді қашан бастау, телефондар. Тоңазытқышқа іліңіз."},
{n:"07",id:"l7",title:"ХОБЛ-мен өмір: психология, туыстар, саяхат, құқықтар",meta:"45 мин · өмір сапасы",
goal:"әлеуметтік белсенділікті, көңіл-күйді және аурумен өмір сапасын сақтау.",
content:'<ul>'+
'<li><b>Үрей, депрессия және ентігу кезіндегі дабыл.</b> Қорқыныш ентігуді күшейтеді. Шеңберді үзіңіз: қысылған ерінмен тыныс алу, ортопноэ қалпы, босаңсу техникалары. Тұрақты мұңдылық/үрей болса дәрігерге барыңыз.</li>'+
'<li><b>Туыстардың қолдауы және өзара көмек топтары.</b> Туыстарыңыз әрекет жоспарыңызды білсін.</li>'+
'<li><b>Ұйқы.</b> Бас жағын көтеріңкі; О₂-терапия тағайындалса — түнде пайдаланыңыз. Қорылдау мен күндізгі ұйқышылдықта СОАС-ты талқылаңыз.</li>'+
'<li><b>Жыныстық өмір.</b> Шаршамаған уақытты таңдаңыз; аз жүктемелі қалыптар; алдын ала бронхолитик.</li>'+
'<li><b>Саяхат.</b><ul><li>Ұшақта: оттек қажет пе — дәрігермен талқылаңыз</li><li>Дәрілер — қол жүгінде, қормен және рецептпен</li><li>Жолда оттек: портативті концентраторлар</li></ul></li>'+
'<li><b>Қосарлы аурулар.</b> ХОБЛ жиі ЖҚК, остеопороз, қант диабеті, саркопениямен бірге жүреді.</li>'+
'<li><b>Науқас құқықтары:</b> диспансерлік бақылау, жеңілдік дәрілер, реабилитацияға және МСЭ-ге бағыт, паллиативті көмек.</li>'+
'<li><b>Мектеп қорытындысы:</b> басты дағды — дабылдамай, жоспар бойынша әрекет ету.</li></ul>'+
'<div class="tip">💚 ХОБЛ — үкім емес. Әрекет жоспары, ем және белсенділікпен өмір толық болып қала береді.</div>',
check:["Үрей/ентігу кезінде босаңсу техникаларын білемін","Туыстарым әрекет жоспарымды біледі","Дәрігермен қосарлы ауруларды және құқықтарды талқыладым","Бір айға арналған өзін-өзі көмек жоспарын құрдым"],
quiz:[{q:"1. Дабыл мен ентігу үдегенде не істеу керек?",a:"<b>Қысылған ерінмен тыныс алу, ортопноэ қалпы, босаңсу</b>."},
{q:"2. Саяхатта дәрілерді қайда салу керек?",a:"<b>Қол жүгіне</b>, қормен және рецепт/выпискамен."},
{q:"3. ХОБЛ-мен қандай қосарлы аурулар жиі жүреді?",a:"<b>ЖҚК, остеопороз, қант диабеті, саркопения</b>."}],
hw:"📅 <b>Бір айлық өзін-өзі көмек жоспарын</b> құрыңыз: мақсаттар және бақылау күндері. Құттықтаймыз — курсты аяқтадыңыз!"}
],
handouts:{
"h-plan":{title:"ХОБЛ кезіндегі әрекет жоспары (бақдаршам)",html:function(){return ''+
'<p>Бұл сіздің жеке жоспарыңыз. Шектер мен телефондарды дәрігермен бірге толтырып, көрінетін жерге қойыңыз.</p>'+
flowHtml("📊 SpO₂ пульсоксиметрмен өлшеңіз","🚦 Аймақты анықтаңыз")+
'<div class="zone g"><b>🟢 ЖАСЫЛ АЙМАҚ — тұрақты</b><br>SpO₂ ≥ 95% · әдеттегі күй.<br>Әрекет: негізгі ем схемасы бойынша, күнделік күніне 23 рет, белсенділік, гимнастика.</div>'+
'<div class="zone y"><b>🟡 САРЫ АЙМАҚ — назар</b><br>SpO₂ 9094% · ентігудің өсуі, қақырықтың өзгеруі.<br>Әрекет: құтқарушы бронхолитик (сальбутамол 24 рет), SpO₂ 1530 мин сайын бақылау, медбикемен байланысу.</div>'+
'<div class="zone r"><b>🔴 ҚЫЗЫЛ АЙМАҚ — нашарлау</b><br>SpO₂ &lt; 90% · тыныштықта күшті ентігу, қызба, іріңді қақырық.<br>Әрекет: О₂ схемасы бойынша көбейту, бронхолитик небулайзермен, ортопноэ қалпы, жедел жәрдем.</div>'+
'<h2>🚑 Жедел жәрдемді шақырыңыз, егер:</h2><ul><li>SpO₂ &lt; 88% 5 минуттан көп ұсталса немесе ентігу үдесе</li><li>тыныштықта ентігу бронхолитиктен кейін 1520 мин азаймаса</li><li>сананың шатасуы, ерін көгеруі, кеуде ауырсынуы болса</li><li>температура &gt; 38,5 °C ентігудің үдеуімен</li></ul>'+
'<h2>📞 Менің байланыстарым</h2><ul><li>Емдеуші дәрігер: ____________________</li><li>Медбике: ____________________</li><li>Жедел жәрдем: 103 / 112</li><li>Менің құтқарушы ингаляторым: ____________________</li></ul>';}},
"h-inhal":{title:"Ингаляция техникасы",html:function(){return ''+
'<p>Дұрыс техника — емнің жартысы. Техникаңызды әр 3 айда медбикеден тексертіңіз.</p>'+
'<h2>ДАИ ингаляторы — қадам бойынша</h2>'+
stepsHtml([{ic:"🤚",t:"Шайқау",d:"Қалпақшаны алып, шайқау"},{ic:"😮‍💨",t:"Дем шығару",d:"Тыныш, ингалятордан тыс"},{ic:"👄",t:"Қамау",d:"Ерін мундштукте"},{ic:"🌬",t:"Дем алу + басу",d:"Баяу дем алу, басу"},{ic:"⏳",t:"Дем алу 35 сек",d:"Терең дем алуды жалғастыру"},{ic:"🤍",t:"Ұстау",d:"Тынысты 10 секунд ұстау"},{ic:"😮‍💨",t:"Дем шығару",d:"Тыныш дем шығару"},{ic:"💧",t:"Шайкау",d:"ИГКС-тен кейін ауызды сумен"}])+
'<h2>⚠️ Жиі қателіктер</h2><ul><li>шайқамады</li><li>дем алуды күрт алды</li><li>тынысты ұстамады</li><li>ИГКС-тен кейін ауызды шайқамады (кандидоз)</li><li>негізгі мен құтқарушыны шатастырды</li></ul>'+
'<div class="zone g"><b>💡 Спейсер</b> — ДАИ-ға арналған камера-насадка. Дем алуды оңайлатып, жанама әсерлерін азайтады.</div>'+
'<p><b>Негізгі ингалятор:</b> ____________________ — күн сайын.<br><b>Құтқарушы ингалятор:</b> ____________________ — қажет бойынша.</p>';}},
"h-breath":{title:"Тыныс алу гимнастикасы",html:function(){return ''+
'<p>Тұрақтылық интенсивтіліктен маңыздырақ. Кешенді күніне 34 рет 510 минуттай жасаңыз.</p>'+
'<h2>1. Қысылған ерінмен тыныс алу (ентігу кезінде)</h2>'+
stepsHtml([{ic:"👃",t:"Мұрынмен дем алу",d:"2 секунд"},{ic:"👄",t:"Ерін түтікше",d:"Ерінді жинау"},{ic:"🌬",t:"Дем шығару 4 сек",d:"Дем шығаруды ұзарту"},{ic:"🔁",t:"Қайталау",d:"Тыныш тынысқа дейін"}])+
'<h2>2. Көкбауырлық тыныс алу</h2><ul><li>Бір қол іште, бірі кеудеде.</li><li>Мұрынмен дем алғанда — іш ұлғаяды.</li><li>Қысылған ерінмен дем шығарғанда — іш кіреді.</li></ul>'+
'<h2>3. Ентігуді жеңілдететін қалыптар</h2><ul><li>Алға иіліп, қолмен тіреліп отыру.</li><li>Үстелге сүйеніп тұру.</li></ul>'+
'<div class="zone y"><b>🏃 Жүктеме:</b> «сөйлесу тестін» қолданыңыз — егер жүру кезінде сөйлесе алсаңыз, қарқын лайықты. Күн сайын кемінде 20 мин серуендеңіз.</div>';}},
"h-diary":{title:"Науқас күнделігі (бір апта үлгісі)",html:function(){return ''+
'<p>Күніне 2 рет (таңертең және кешке) және нашарлағанда толтырыңыз. Қабылдауға әкеліңіз.</p>'+
'<p><b>Науқас:</b> ____________________ &nbsp; <b>Апта:</b> ______________</p>'+
'<table><tr><th>Күн</th><th>Уақыт</th><th>SpO₂ %</th><th>АҚ</th><th>ЖЖС</th><th>Тыныс жиілігі</th><th>Ентігу mMRC</th><th>Қақырық</th><th>Дәрілер</th><th>Ескерту</th></tr>'+
diaryRows(["Дүйсенбі — таңертең","Дүйсенбі — кешке","Сейсенбі — таңертең","Сейсенбі — кешке","Сәрсенбі — таңертең","Сәрсенбі — кешке","Бейсенбі — таңертең","Бейсенбі — кешке","Жұма — таңертең","Жұма — кешке","Сенбі — таңертең","Сенбі — кешке","Жексенбі — таңертең","Жексенбі — кешке"])+'</table>'+
'<p style="font-size:13px;color:#5B6573">Ентігу mMRC: 0 — жоқ, 1 — жылдам жүргенде, 2 — баяу жүремін, 3 — ~100 м тоқтаймын, 4 — үйден шыға алмаймын.</p>';}},
"h-life":{title:"Тамақтану және темекіні тастау",html:function(){return ''+
'<h2>🥗 ХОБЛ кезіндегі тамақтану</h2><ul><li>Жиі, шағын порциялармен жеңіз — күніне 45 рет.</li><li>Жеткілікті ақуыз (11,5 г/кг): ет, балық, жұмыртқа, сүт.</li><li>Салмақ төмендегенде — калориялы тағамдар: жаңғақ, май, ірімшік.</li><li>Ісіктерде — тұзды азайтыңыз.</li></ul>'+
'<h2>🚫 Темекіні тастау — басты ем</h2>'+
stepsHtml([{ic:"📅",t:"Күн",d:"Тастау күнін тағайындаңыз"},{ic:"🗑",t:"Жою",d:"Сигарет, күлдік, триггерлер"},{ic:"🩹",t:"НРТ",d:"Никотин жапсырма/сағыз"},{ic:"💊",t:"Дәрілер",d:"Варениклин/бупропион рецептпен"},{ic:"🤝",t:"Қолдау",d:"Туыстар, дәрігер, топ"}])+
'<div class="zone g"><b>Темекіні тастау күні:</b> ________________</div>'+
'<h2>💉 Егілу</h2><ul><li>Тұмау — жыл сайын, күзде.</li><li>Пневмококк — дәрігер схемасы бойынша.</li><li>COVID-19 — күнтізбе бойынша.</li></ul>';}},
"h-summary":{title:"ХОБЛ мектебін бітірушінің қорытынды парағы",html:function(){return ''+
'<p>Құттықтаймыз! Өзін-өзі басқару негіздерін меңгердіңіз. Қысқа жадынама:</p>'+
'<h2>📅 ХОБЛ-мен күнім</h2>'+
timelineHtml([{time:"🌅 Таңертең",items:["Негізгі ингалятор","SpO₂/АҚ/ЖЖС","Күнделік","Ақуызды таңертеңгі"]},{time:"☀️ Күндіз",items:["Тыныс алу гимнастикасы","Серуен ≥20 мин","Түскі + жеңіл тағам"]},{time:"🌙 Кешке",items:["Негізгі ингалятор","Өлшеу + күнделік","Гимнастика","Құтқарушы — қолда"]}])+
'<h2>🚦 «Бақдаршам»</h2><ul><li>🟢 SpO₂ ≥95% — негізгі ем және күнделік.</li><li>🟡 SpO₂ 9094% — құтқарушы, бақылау, медбикеге қоңырау.</li><li>🔴 SpO₂ &lt;90% — О₂, бронхолитик, қалып, жедел жәрдем.</li></ul>'+
'<h2>🚑 Жедел жәрдем (103/112)</h2><ul><li>SpO₂ &lt;88% &gt;5 мин немесе ентігу үдесе.</li><li>Тыныштықта ентігу бронхолитиктен кейін 1520 мин басылмаса.</li><li>Сананың шатасуы, көгеру, кеуде ауырсынуы, t &gt;38,5 °C.</li></ul>'+
'<div class="zone g"><b>Бастысы:</b> дабылдамай, жоспар бойынша әрекет ету. Сіз — өз ем командасыңыздың басты қатысушысыз.</div>';}}
},
handoutCards:[
{ic:"🚦",t:"Әрекет жоспары «бақдаршам»",d:"Тәуекел аймақтары, нашарлағанда не істеу, қызыл жалаулар.",id:"h-plan"},
{ic:"💊",t:"Ингаляция техникасы",d:"ДАИ техникасы қадам бойынша, жиі қателіктер, спейсер.",id:"h-inhal"},
{ic:"🌬",t:"Тыныс алу гимнастикасы",d:"Көкбауырлық тыныс, қысылған ерінмен тыныс, қалыптар, кешен.",id:"h-breath"},
{ic:"📔",t:"Науқас күнделігі (үлгі)",d:"Бір аптаға арналған кесте: SpO₂, АҚ, ЖЖС, тыныс жиілігі, ентігу.",id:"h-diary"},
{ic:"🥗",t:"Тамақтану және темекіні тастау",d:"Тамақтану принциптері, темекіні тастау жоспары, егілу.",id:"h-life"},
{ic:"🎓",t:"Бітірушінің қорытынды парағы",d:"Курстың барлық негізгі дағдылары бойынша қысқа жадынама.",id:"h-summary"}
]
};
var PACKS={ru:RU,kz:KZ};
var KEY="copd_school_bi_v1";
var state={lang:"ru",done:{}};
try{ var raw=localStorage.getItem(KEY); if(raw){ var s=JSON.parse(raw); state.lang=s.lang||"ru"; state.done=s.done||{}; } }catch(e){}
var app=$("#app");
function $(s,r){return (r||document).querySelector(s);}
function P(){ return PACKS[state.lang]; }
function esc(s){return s;}
function render(){
document.documentElement.lang = state.lang==="ru"?"ru":"kk";
$("#brandTxt").textContent = P().ui.brand;
$("#langRu").classList.toggle("active", state.lang==="ru");
$("#langKz").classList.toggle("active", state.lang==="kz");
app.innerHTML="";
app.appendChild(renderHero());
app.appendChild(renderOverview());
app.appendChild(renderNav());
P().lessons.forEach(function(ls){ app.appendChild(renderLesson(ls)); });
app.appendChild(renderHandouts());
app.appendChild(renderCert());
var f=document.createElement("footer"); f.className="footer"; f.textContent=P().ui.footer; app.appendChild(f);
syncChecks();
update();
}
function renderHero(){
var u=P().ui; var s=document.createElement("section"); s.className="hero";
s.innerHTML='<span class="eyebrow">'+u.eyebrow+'</span>'+
'<h1>'+u.heroTitle+'</h1>'+
'<p class="lead">'+u.heroLead+'</p>'+
'<div class="hero-stats"><div class="s"><div class="n">7</div><div class="l">'+u.sL+'</div></div>'+
'<div class="s"><div class="n">4560 мин</div><div class="l">'+u.sD+'</div></div>'+
'<div class="s"><div class="n">0 ₸</div><div class="l">'+u.sF+'</div></div></div>'+
'<div class="hero-cta"><a class="btn" href="#l1">'+u.start+'</a><a class="btn ghost" href="#lessons">'+u.prog+'</a></div>';
return s;
}
function renderOverview(){
var u=P().ui; var s=document.createElement("section"); s.className="overview";
var li=u.ovItems.map(function(i){return '<li>'+i+'</li>';}).join("");
s.innerHTML='<h2>'+u.ovTitle+'</h2><p>'+u.ovLead+'</p><ul>'+li+'</ul>';
return s;
}
function renderNav(){
var u=P().ui; var s=document.createElement("section"); s.className="nav-card"; s.id="lessons";
var nav=""; P().lessons.forEach(function(ls){ nav+='<a href="#'+ls.id+'">'+u.lessonN+ls.n+'</a>'; });
s.innerHTML='<h3>'+u.navTitle+'</h3><div class="lessons-nav">'+nav+'</div>';
return s;
}
function renderLesson(ls){
var u=P().ui; var s=document.createElement("section"); s.className="lesson"; s.id=ls.id;
var chk=ls.check.map(function(c){return '<label><input type="checkbox"><span>'+c+'</span></label>';}).join("");
var qz=ls.quiz.map(function(q){return '<details><summary>'+q.q+'</summary><div class="ans">'+q.a+'</div></details>';}).join("");
s.innerHTML=
'<div class="lesson-head"><span class="lnum">'+ls.n+'</span>'+
'<div><h2>'+ls.title+'</h2><div class="lmeta">'+ls.meta+'</div></div>'+
'<label class="done-label"><input type="checkbox" data-l="'+ls.id+'-d"> '+u.done+'</label></div>'+
'<div class="goal">🎯 <b>'+u.goal+':</b> '+ls.goal+'</div>'+
'<h3>📋 '+u.content+'</h3>'+ls.content+
'<h3>✅ '+u.check+'</h3><div class="checklist">'+chk+'</div>'+
'<h3>❓ '+u.quiz+'</h3><div class="quiz">'+qz+'</div>'+
'<h3>🏠 '+u.hw+'</h3><div class="hw">'+ls.hw+'</div>';
return s;
}
function renderHandouts(){
var u=P().ui; var s=document.createElement("section"); s.className="handouts";
var cards=P().handoutCards.map(function(c){
return '<div class="handout-card"><div class="hic">'+c.ic+'</div><h3>'+c.t+'</h3><p>'+c.d+'</p>'+
'<button class="btn" onclick="printHandout(\''+c.id+'\')">'+u.print+'</button></div>';
}).join("");
s.innerHTML='<h2>'+u.hTitle+'</h2><p>'+u.hLead+'</p><div class="handout-grid">'+cards+'</div>';
return s;
}
function renderCert(){
var u=P().ui; var s=document.createElement("section"); s.className="certificate hidden"; s.id="cert";
s.innerHTML='<h2>'+u.certTitle+'</h2><p>'+u.certText+'</p>';
return s;
}
function syncChecks(){
var checks=document.querySelectorAll("input[data-l]");
checks.forEach(function(cb){
var key=cb.getAttribute("data-l");
cb.checked=!!state.done[key];
cb.addEventListener("change",function(){
state.done[key]=cb.checked;
localStorage.setItem(KEY,JSON.stringify(state));
update();
var sec=cb.closest(".lesson");
if(sec) sec.classList.toggle("done", !!state.done[key+"-d"]);
});
if(key.indexOf("-d")>0){
var sec=cb.closest(".lesson");
if(sec) sec.classList.toggle("done", !!state.done[key]);
}
});
}
function update(){
var done=0; for(var i=1;i<=7;i++) if(state.done["l"+i+"-d"]) done++;
var pct=Math.round(done/7*100);
$("#pfill").style.width=pct+"%";
$("#ptxt").textContent=done+"/7";
$("#cert").classList.toggle("hidden", done<7);
}
/* ============ ПЕЧАТЬ ПАМЯТКИ ============ */
function printHandout(id){
var h=P().handouts[id]; if(!h) return;
var w=window.open("","_blank");
var u=P().ui;
var css='body{font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,sans-serif;color:#0F1218;max-width:780px;margin:24px auto;padding:0 20px}'
+'h1{font-size:22px;margin:0 0 2px}'
+'.hdr{border-bottom:3px solid #00E5FF;padding-bottom:10px;margin-bottom:16px}'
+'.hdr small{color:#5B6573;font-size:13px}'
+'h2{font-size:16px;margin:16px 0 6px}'
+'ul{margin:6px 0 10px;padding-left:20px}li{margin-bottom:4px}'
+'table{width:100%;border-collapse:collapse;font-size:12px;margin:8px 0}'
+'th{background:#F2F4F7;text-align:left;padding:6px}td{border:1px solid #E4E8EE;padding:6px;height:22px;vertical-align:top}'
+'.zone{border-left:5px solid;padding:10px 12px;margin:8px 0;border-radius:6px}'
+'.g{border-color:#16C784;background:#E6F9F0}.y{border-color:#F5A623;background:#FDF3E2}.r{border-color:#EA3943;background:#FCEAEC}'
+'.steps{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}'
+'.step{flex:1 1 150px;min-width:140px;border:1.5px solid #E4E8EE;border-radius:11px;padding:14px 12px 12px;position:relative;background:#fff}'
+'.step .sn{position:absolute;top:-11px;left:12px;background:#0F1218;color:#00E5FF;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px}'
+'.step .si{font-size:26px;line-height:1;margin-bottom:4px}'
+'.step .st{font-weight:800;font-size:13.5px;margin-bottom:2px}'
+'.step .sd{font-size:12px;color:#5B6573}'
+'.flow{display:flex;flex-direction:column;align-items:center;gap:6px;margin:12px 0}'
+'.flow-step{background:#0F1218;color:#fff;padding:9px 18px;border-radius:999px;font-weight:700;font-size:14px}'
+'.flow-arrow{color:#0F1218;font-size:20px;font-weight:800;line-height:1}'
+'.timeline{margin:12px 0}'
+'.tl{display:flex;gap:12px;border:1.5px solid #E4E8EE;border-radius:11px;padding:12px;margin-bottom:8px;align-items:flex-start}'
+'.tl .ttime{flex:0 0 96px;font-weight:800;font-size:13px;color:#0F1218;background:#E8FCFF;padding:6px 8px;border-radius:8px;text-align:center;height:fit-content}'
+'.tl .titems{font-size:13px;color:#0F1218}'
+'.tl .titems span{display:inline-block;background:#F2F4F7;padding:3px 9px;border-radius:6px;margin:2px 4px 2px 0;font-size:12px}'
+'.ftr{margin-top:20px;padding-top:10px;border-top:1px solid #E4E8EE;color:#5B6573;font-size:12px;text-align:center}'
+'@media print{body{margin:12mm}}';
w.document.write('<!DOCTYPE html><html lang="'+(state.lang==="ru"?"ru":"kk")+'"><head><meta charset="utf-8"><title>'+h.title+'</title><style>'+css+'</style></head><body>');
w.document.write('<div class="hdr"><h1>'+u.hHdr+'</h1><small>'+h.title+'</small></div>');
w.document.write(h.html());
w.document.write('<div class="ftr">'+u.hFtr+' · '+new Date().toLocaleDateString("ru-RU")+'</div>');
w.document.write('</body></html>');
w.document.close(); w.focus();
setTimeout(function(){ try{w.print();}catch(e){} }, 350);
}
/* переключатели языка */
$("#langRu").onclick=function(){ state.lang="ru"; localStorage.setItem(KEY,JSON.stringify(state)); render(); };
$("#langKz").onclick=function(){ state.lang="kz"; localStorage.setItem(KEY,JSON.stringify(state)); render(); };
render();
</script>
</body>
</html>