#!/usr/bin/env python3
from docx import Document
from docx.shared import Pt

doc = Document()
doc.add_heading("Меню для похудения по рецептам блогеров", 0)
doc.add_paragraph("Собрано 10.08.2026 · источники: @razvedenki_na_pp и @zhzhgis · для Михаила (~1800–1900 ккал/день)")

# ===== Анализ каналов =====
doc.add_heading("1. Анализ каналов", level=1)
doc.add_heading("«Разведёнки на ПП» (@razvedenki_na_pp)", level=2)
doc.add_paragraph("Нияз и Зарина, 45,6 тыс. подписчиков. Минус 38 кг на двоих (я −8, бывший −34). Главный плюс: КАЖДЫЙ рецепт с точным КБЖУ и граммовками в описании — удобно и честно. Продают рационы (30 дней — 990 ₽, 60 дней — 1600 ₽) и канал десертов (930 ₽). Рецепты простые, из обычных магазинных продуктов.")
doc.add_heading("Никита Игошев (@zhzhgis)", level=2)
doc.add_paragraph("965 тыс. подписчиков, «−30 кг за 4 месяца вкусно и сытно». Большой канал с видео-рецептами, книги и курсы на zhzhgis.ru. Минус: в описаниях постов рецепты БЕЗ точного КБЖУ (всё в видео и платных материалах). Хорош для вдохновения и видео-формата.")
doc.add_paragraph("Вывод: для практики берём рецепты «Разведёнок» (с точными цифрами), у Игошева — идеи и мотивацию.")

# ===== Рецепты =====
doc.add_heading("2. Лучшие рецепты с КБЖУ (проверено по постам)", level=1)

rec = [
    ("Рецепт 1 · Сырно-кабачковый крем-суп", "@razvedenki_na_pp, на 2 порции",
     ["330 г консервированного филе индейки", "140 г филе бедра или грудки", "200 г кабачка",
      "1 средняя луковица", "50 г сливочного сыра", "соль, специи; сухарики из хлеба с отрубями 20–30 г"],
     "Варить до мягкости, пюрировать, добавить сливочный сыр. КБЖУ на 1 порцию: 347 ккал · Б 36 г · Ж 16 г · У 17 г",
     "https://www.instagram.com/reel/Db0y1vuo0OH/"),
    ("Рецепт 2 · Курино-творожная запеканка", "@razvedenki_na_pp, на 2 порции (готовится на 2 дня)",
     ["200 г куриного фарша", "200 г зернёного творога на сливках (жидкость слить)", "1 яйцо",
      "100 г помидоров", "100 г болгарского перца", "15–20 г лука и укропа", "соль, специи"],
     "Смешать → форма → 180°C 40–45 минут. КБЖУ на 1 порцию: 326 ккал · Б 36 г · Ж 13 г · У 18 г",
     "https://www.instagram.com/reel/DbxhdRiISLl/"),
    ("Рецепт 3 · Рулет из теста фило (обед)", "@razvedenki_na_pp, на 2 порции",
     ["120 г картофеля", "200 г шампиньонов", "280 г куриного филе", "60 г лука", "1 ст. л. соевого соуса",
      "100 г греческого йогурта", "½ яйца для смазывания", "40–60 г теста фило (2–3 листа)"],
     "Начинку смешать, завернуть в фило, смазать яйцом, запекать 20 мин при 180°C. КБЖУ на 1 порцию: 314 ккал · Б 33 г · У 26 г · Ж 9 г",
     "https://www.instagram.com/reel/DbidsD9o0QM/"),
    ("Рецепт 4 · ПП-торт с ягодами (десерт)", "@razvedenki_na_pp",
     ["Корж: 4 яйца, 330 г греческого йогурта, 60 г муки (кокосовой/кетовой), 15 г какао без сахара, ½ ч. л. разрыхлителя, сахарозаменитель, ванилин",
      "Ягодный слой: 15 г желатина, 150 мл воды, 110 г греческого йогурта, 100 г клубники, 100 г голубики, сахарозаменитель"],
     "Корж 25–30 мин при 180°C → залить ягодным слоем → холодильник 3+ часа. КБЖУ на 100 г: 83 ккал · Б 8 г · Ж 2,8 г · У 6,5 г",
     "https://www.instagram.com/reel/Dbp8VKdo6c0/"),
]
for title, src, ingr, method, link in rec:
    doc.add_heading(title, level=2)
    p = doc.add_paragraph()
    r = p.add_run(src + " · ")
    r.italic = True
    for i in ingr:
        doc.add_paragraph(i, style="List Bullet")
    doc.add_paragraph(method)
    p2 = doc.add_paragraph()
    r2 = p2.add_run("Видео и фото: ")
    r2.bold = True
    p2.add_run(link)

# ===== Меню на день =====
doc.add_heading("3. Пример дня (~1800 ккал) из этих рецептов", level=1)
menu = [
    ("Завтрак", "Овсянка 60 г + молоко 250 мл + орехи 15 г + яблоко", "420 ккал · Б 15 · Ж 14 · У 58"),
    ("Перекус", "Творог 5% 150 г + ягоды", "200 ккал · Б 22 · Ж 7 · У 10"),
    ("Обед", "Рулет из фило (рецепт 3) — 1 порция", "314 ккал · Б 33 · У 26 · Ж 9"),
    ("Полдник", "Кусочек ПП-торта 100 г (рецепт 4)", "83 ккал · Б 8 · Ж 2,8 · У 6,5"),
    ("Ужин", "Сырно-кабачковый крем-суп (рецепт 1) — 1 порция", "347 ккал · Б 36 · Ж 16 · У 17"),
]
tbl = doc.add_table(rows=1, cols=3)
tbl.style = "Light Grid Accent 1"
for i, h in enumerate(["Приём", "Что", "КБЖУ"]):
    tbl.rows[0].cells[i].text = h
total_k = 0
for row in menu:
    c = tbl.add_row().cells
    for i, v in enumerate(row):
        c[i].text = v
doc.add_paragraph()
doc.add_paragraph("Итого: ~1364 ккал (без второго перекуса и добавок) — добавляешь овощи/йогурт до 1800–1900 ккал. Белок дня: ~114 г.")

# ===== Выводы =====
doc.add_heading("4. Важно помнить", level=1)
notes = [
    "Эти блогеры продают рационы и курсы — рецепты бесплатно, но платные предложения не обязательны. Твоя система (меню + дефицит) уже собрана.",
    "КБЖУ взято из описаний постов — цифры авторские, ориентировочные.",
    "У Игошева рецепты в видео без точных граммовок — используй для вдохновения.",
    "Основа похудения — дефицит калорий (у тебя 1800–1900 ккал), эти блюда делают его вкусным.",
    "Сахарозаменитель в десертах — умеренно, лучше стевия/эритрит.",
]
for n in notes:
    doc.add_paragraph(n, style="List Bullet")

doc.save("/root/site/Меню ПП из блогов.docx")
print("OK")
