diff --git a/frontend/js/phys7_ch1_widgets.js b/frontend/js/phys7_ch1_widgets.js
index d8163d5..13dbe37 100644
--- a/frontend/js/phys7_ch1_widgets.js
+++ b/frontend/js/phys7_ch1_widgets.js
@@ -392,11 +392,358 @@ function add_p2(){
renderMath(body);
}
-/* Экспорт — заглушки для остальных §, добавятся в следующих волнах */
+/* ========================================================== */
+/* §3 — Методы исследования в физике */
+/* ========================================================== */
+function add_p3(){
+ const body = document.getElementById('p3-body');
+ if(!body) return;
+ let h = '';
+
+ h += makeCard('theory', 'Как физики изучают природу', '§ 3.1',
+ 'Физика использует три метода познания:'
+ + '
'
+ + '
Наблюдение — изучение явления без вмешательства. Учёный смотрит, фиксирует, не изменяя условий.
'
+ + '
Эксперимент — целенаправленное воссоздание явления в нужных условиях с измерениями.
'
+ + '
Теоретическое описание — построение модели, формул, законов; гипотеза сначала, потом — проверка.
'
+ + '');
+
+ h += makeCard('rule', 'Чем отличаются?', '§ 3.2',
+ 'Наблюдение: смотрим за грозой — не запускаем её сами. '
+ + 'Эксперимент: бросаем шары разной массы в трубке без воздуха и измеряем время падения. '
+ + 'Гипотеза: «может быть, тела падают одинаково в вакууме?» — её надо проверить экспериментом. '
+ + 'Теория: подтверждённая гипотеза становится частью знаний — например, закон всемирного тяготения.');
+
+ h += makeCard('example', 'Опыт Галилея с Пизанской башней', '§ 3.3',
+ 'По легенде, в конце XVI века Галилео Галилей поднялся на наклонную Пизанскую башню '
+ + 'и одновременно бросил с её вершины два шара разной массы — тяжёлый и лёгкий. '
+ + 'Шары упали на землю почти одновременно. Это был эксперимент, '
+ + 'опровергнувший представление Аристотеля о том, что тяжёлые тела падают быстрее. '
+ + 'Так появилась гипотеза «все тела падают с одним ускорением», позже подтверждённая в опытах с вакуумной трубкой.');
+
+ /* IV-1: timeline исторических опытов */
+ h += wgWrap('p3-iv1', 'СИМ', 'Великие опыты и наблюдения', 'Кликай по этапам — узнавай, чем прославился каждый учёный.',
+ '
'
+ + ['Архимед / III в. до н. э. — закон рычага. Наблюдение и расчёт.',
+ 'Галилей / 1590-е — падение тел с башни. Эксперимент.',
+ 'Торричелли / 1643 — открыл атмосферное давление. Эксперимент с ртутью.',
+ 'Паскаль / 1648 — закон передачи давления. Эксперимент и теория.',
+ 'Ньютон / 1687 — закон всемирного тяготения. Теория, объединившая всё.'].map((txt, i) => {
+ const [name, rest] = txt.split(' — ');
+ return '' + (i+1) + '. ' + name + '
' + rest + '
';
+ }).join('')
+ + '
');
+
+ /* IV-2: КВИЗ опыт vs наблюдение */
+ h += wgWrap('p3-iv2', 'КВИЗ', 'Опыт или наблюдение?', 'Выбери, какой метод использован.',
+ '
'
+ + quizQuestion('p3-q', 0, 'Метеоролог смотрит на облака и записывает их форму.', ['Наблюдение','Эксперимент','Гипотеза','Теория'], 0)
+ + quizQuestion('p3-q', 1, 'Ученик помещает шарик в воду и измеряет, насколько поднялся уровень.', ['Наблюдение','Эксперимент','Гипотеза','Теория'], 1)
+ + quizQuestion('p3-q', 2, 'Учёный предполагает: «возможно, металл проводит тепло из-за свободных электронов».', ['Наблюдение','Эксперимент','Гипотеза','Теория'], 2)
+ + quizQuestion('p3-q', 3, 'Архимед открыл закон рычага и записал его в виде формулы $F_1 l_1 = F_2 l_2$.', ['Наблюдение','Эксперимент','Гипотеза','Теория'], 3, 'Подтверждённое соотношение — это теория (закон).')
+ + '
');
+
+ /* IV-3: DnD «классифицируй» */
+ h += wgWrap('p3-iv3', 'DnD', 'Классификация ситуаций', 'Распредели 8 ситуаций по трём корзинам.',
+ dndPool('p3-dnd', [
+ { id:'a1', cat:'obs', html:'Смотрим, как тает снег весной' },
+ { id:'a2', cat:'obs', html:'Записываем температуру за неделю' },
+ { id:'a3', cat:'exp', html:'Нагреваем металл лампой и измеряем удлинение' },
+ { id:'a4', cat:'exp', html:'Сравниваем падение перышка в трубке с воздухом и без' },
+ { id:'a5', cat:'hyp', html:'Возможно, скорость света — максимальная во Вселенной' },
+ { id:'a6', cat:'hyp', html:'Может быть, существуют тёмная материя и тёмная энергия' },
+ { id:'a7', cat:'exp', html:'Бросаем мяч с разной высоты и засекаем время полёта' },
+ { id:'a8', cat:'obs', html:'Изучаем затмение Луны' }
+ ], [
+ { cat:'obs', label:'Наблюдение' },
+ { cat:'exp', label:'Эксперимент' },
+ { cat:'hyp', label:'Гипотеза' }
+ ]));
+
+ /* IV-4: тренажёр */
+ h += wgWrap('p3-iv4', 'ТРН', 'Тренажёр §3', 'Закрепи материал.',
+ '
'
+ + quizQuestion('p3-tr', 0, 'Что НЕ относится к методам познания в физике?', ['Наблюдение','Эксперимент','Угадывание','Теория'], 2, 'Угадывание — это не научный метод.')
+ + quizQuestion('p3-tr', 1, 'Главное отличие эксперимента от наблюдения — это…', ['Использование приборов','Активное вмешательство и контроль условий','Запись результатов','Участие учёного'], 1)
+ + quizQuestion('p3-tr', 2, 'Гипотеза становится теорией, когда…', ['Её опубликовали','Она проверена опытом','Её одобрил профессор','Её записали в учебник'], 1)
+ + quizQuestion('p3-tr', 3, 'Какой учёный знаменит опытами с падающими телами?', ['Архимед','Галилей','Ньютон','Эйнштейн'], 1)
+ + quizQuestion('p3-tr', 4, 'Что такое физическая модель?', ['Реальный прибор','Упрощённое представление явления для расчётов','Любая теория','Только формула'], 1, 'Модель опускает несущественные детали ради простоты.')
+ + '
'
+ + 'Косвенное измерение — значение вычисляется по формуле из других величин, '
+ + 'измеренных прямо. Например, чтобы найти площадь стола, измеряют длину и ширину линейкой '
+ + '(прямые), а площадь $S = a b$ — это уже косвенное измерение.');
+
+ h += makeCard('rule', 'Основные формулы косвенных измерений', '§ 4.2',
+ '
'
+ + '
Площадь прямоугольника: $S = a \\cdot b$, $[S] = $ м²
'
+ + '
Объём прямоугольного параллелепипеда: $V = a \\cdot b \\cdot c$, $[V] = $ м³
'
+ + '
Объём через цилиндр: $V = S \\cdot h$ (если известна площадь основания)
'
+ + '
Плотность вещества: $\\rho = \\dfrac{m}{V}$, $[\\rho] = $ кг/м³
'
+ + '
Скорость: $v = \\dfrac{s}{t}$, $[v] = $ м/с
'
+ + '
');
+
+ h += makeCard('example', 'Объём картофеля', '§ 4.3',
+ 'Картофелина имеет неправильную форму — линейкой её не измерить. Но можно сделать так:'
+ + ''
+ + '
Налить в мензурку воды до отметки $V_1 = 200$ мл (прямое измерение).
'
+ + '
Опустить картофелину; уровень поднялся до $V_2 = 280$ мл (прямое).
');
+
+ /* IV-1: визуал — 7 основных */
+ h += wgWrap('p5-iv1', 'СИМ', '7 китов СИ', 'Семь основных единиц — фундамент всех физических измерений.',
+ '
'
+ + [['Длина','м','#0284c7'],['Масса','кг','#7c3aed'],['Время','с','#10b981'],['Ток','А','#d97706'],['Темп.','К','#dc2626'],['Вещ-во','моль','#0891b2'],['Свет','кд','#fbbf24']].map(([v, u, col]) =>
+ '
'
+ + '
' + u + '
'
+ + '
' + v + '
'
+ + '
').join('')
+ + '
');
+
+ /* IV-2: главный конвертер */
+ h += wgWrap('p5-iv2', 'КАЛЬК', 'Конвертер единиц', 'Выбери приставку и величину — увидь перевод в основную единицу СИ.',
+ '
'
+ + ''
+ + ''
+ + ''
+ + '
'
+ + '
'
+ + '5 км'
+ + ' = '
+ + '5000 м'
+ + ''
+ + '
');
+
+ /* IV-3: DnD — величина ↔ единица СИ */
+ h += wgWrap('p5-iv3', 'DnD', 'Величина ↔ единица СИ', 'Соедини каждую величину с её основной единицей.',
+ dndPool('p5-dnd', [
+ { id:'a1', cat:'m', html:'Длина' },
+ { id:'a2', cat:'kg', html:'Масса' },
+ { id:'a3', cat:'s', html:'Время' },
+ { id:'a4', cat:'K', html:'Температура' },
+ { id:'a5', cat:'A', html:'Сила тока' },
+ { id:'a6', cat:'m', html:'Расстояние от Минска до Бреста' },
+ { id:'a7', cat:'kg', html:'Масса арбуза' },
+ { id:'a8', cat:'s', html:'Длительность урока' }
+ ], [
+ { cat:'m', label:'метр (м)' },
+ { cat:'kg', label:'килограмм (кг)' },
+ { cat:'s', label:'секунда (с)' },
+ { cat:'K', label:'кельвин (К)' },
+ { cat:'A', label:'ампер (А)' }
+ ]));
+
+ /* IV-4: тренажёр на перевод */
+ h += wgWrap('p5-iv4', 'ТРН', 'Тренажёр §5', '5 задач на перевод единиц.',
+ '