| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329 |
- // ==============================================================================
- // 江中乳酸菌素片儿童版 · Ch5 场景四元素地图(4 子章)
- // ==============================================================================
- // 5.1 入园生病·集体生活综合征
- // 5.2 抗生素后·肠道修复刚需
- // 5.3 挑食积食·日常消化养护
- // 5.4 换季腹泻·季节性防护
- // ==============================================================================
- const LA = require('./lactic-analyze.js');
- const C = require('./lactic-components.js');
- const { BRAND, esc, fmtLikes } = C;
- function renderSceneHero({ color, title, subtitle, time, space, trigger, persona }) {
- return `
- <div class="fade-up" style="padding:22px 26px; background:linear-gradient(135deg, ${color}10, ${color}04); border-left:4px solid ${color}; border-radius:var(--radius-md); margin-bottom:28px;">
- <div class="text-mono text-xs" style="color:${color}; letter-spacing:0.18em; margin-bottom:10px; font-weight:700;">SCENE ANATOMY · 四元素解剖</div>
- <div style="color:var(--text-1); font-size:1.12rem; line-height:1.72; margin-bottom:10px;">${title}</div>
- ${subtitle ? `<div style="color:var(--text-2); font-size:0.92rem; margin-bottom:14px;">${subtitle}</div>` : ''}
- <div style="display:grid; grid-template-columns:repeat(4, 1fr); gap:12px;">
- <div style="padding:12px 14px; background:${color}08; border-radius:4px;">
- <div class="text-mono text-xs" style="color:${color}; font-weight:700; margin-bottom:4px;">🕐 TIME</div>
- <div style="color:var(--text-1); font-size:0.82rem; line-height:1.5;">${time}</div>
- </div>
- <div style="padding:12px 14px; background:${color}08; border-radius:4px;">
- <div class="text-mono text-xs" style="color:${color}; font-weight:700; margin-bottom:4px;">📍 SPACE</div>
- <div style="color:var(--text-1); font-size:0.82rem; line-height:1.5;">${space}</div>
- </div>
- <div style="padding:12px 14px; background:${color}08; border-radius:4px;">
- <div class="text-mono text-xs" style="color:${color}; font-weight:700; margin-bottom:4px;">⚡ TRIGGER</div>
- <div style="color:var(--text-1); font-size:0.82rem; line-height:1.5;">${trigger}</div>
- </div>
- <div style="padding:12px 14px; background:${color}08; border-radius:4px;">
- <div class="text-mono text-xs" style="color:${color}; font-weight:700; margin-bottom:4px;">👤 PERSONA</div>
- <div style="color:var(--text-1); font-size:0.82rem; line-height:1.5;">${persona}</div>
- </div>
- </div>
- </div>`;
- }
- // ==========================================================
- // 5.1 · 入园生病·集体生活综合征
- // ==========================================================
- function renderSub5_1(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const entry = LA.getEvidence(items, {
- contentMatch: /入园|幼儿园|开学|交叉感染|集体|开园|托班|小班/,
- minChars: 20, top: 4, seed: 5,
- });
- const illness = LA.getEvidence(items, {
- contentMatch: /感冒|发烧|拉肚|腹泻|生病|不舒服|反复|免疫/,
- minChars: 25, top: 3, seed: 11,
- });
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${C.renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 场景 #1`,
- title: '<span style="color:' + BRAND.BERRY_PINK + ';">入园生病</span>·集体生活综合征·乳酸菌素片最强场景',
- subtitle: '每年 9 月入园季 + 3 月开学季 = 家长<strong>集体焦虑两大高峰</strong>。 "孩子一上幼儿园就病"已经是普适痛点,肠道养护是免疫力的根基。',
- color: BRAND.BERRY_PINK,
- })}
- ${renderSceneHero({
- color: BRAND.BERRY_PINK,
- title: `<strong>"到底是谁在推合生元超金菌啊?我家崽现在2岁7个月,送幼儿园以后不知道是不是吃的太杂了 孩子好几天才上一次wc"</strong>(XHS ♥144)`,
- subtitle: '入园后肠道紊乱是家长集体认知到的痛点,但现在只能选食品级益生菌—— 乳酸菌素片作为 OTC 药品级,是该场景的"真正答案"。',
- time: '9 月入园季 / 3 月开学季 · 秋冬换季 · 平日放学后',
- space: '家 / 幼儿园接送路上 / 奶奶家托管',
- trigger: '第一次送托 / 班里小朋友交叉感染 / 集体吃饭不适应 / 频繁生病',
- persona: '25-35 岁新手妈妈 · 2-6 岁宝宝 · 入园焦虑期家长',
- })}
- <div class="grid" style="grid-template-columns:1.1fr 0.9fr; gap:24px; margin-top:20px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.BERRY_PINK}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC · 入园家长真实吐槽</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${[...entry.slice(0, 3), ...illness.slice(0, 1)].slice(0, 4).map((it) => C.renderVocCard(it, { accent: BRAND.BERRY_PINK, compact: true, maxChars: 180 })).join('')}
- </div>
- </div>
- <div>
- ${C.renderTheoryBox({
- theory: 'SOLUTION · 乳酸菌素片的 3 阶段入园护航',
- accent: BRAND.BERRY_PINK,
- mapping: `
- <div style="display:flex; flex-direction:column; gap:12px; font-size:0.88rem;">
- <div style="padding:14px 16px; background:${BRAND.BERRY_PINK}0C; border-left:3px solid ${BRAND.BERRY_PINK}; border-radius:4px;">
- <div style="color:${BRAND.BERRY_PINK}; font-weight:700; margin-bottom:4px;">① 入园前 1 个月(8 月/2 月)</div>
- <div style="color:var(--text-2); font-size:0.84rem;">日常调理肠道 <strong>提前建立菌群基础</strong> · 应对突变饮食环境</div>
- </div>
- <div style="padding:14px 16px; background:${BRAND.BERRY_PINK}0C; border-left:3px solid ${BRAND.BERRY_PINK}; border-radius:4px;">
- <div style="color:${BRAND.BERRY_PINK}; font-weight:700; margin-bottom:4px;">② 入园后前 3 个月(高发期)</div>
- <div style="color:var(--text-2); font-size:0.84rem;">每天 1 板咀嚼片(带去幼儿园)· <strong>应对交叉感染 + 集体生活冲击</strong></div>
- </div>
- <div style="padding:14px 16px; background:${BRAND.BERRY_PINK}0C; border-left:3px solid ${BRAND.BERRY_PINK}; border-radius:4px;">
- <div style="color:${BRAND.BERRY_PINK}; font-weight:700; margin-bottom:4px;">③ 感冒/腹泻/抗生素后(应急)</div>
- <div style="color:var(--text-2); font-size:0.84rem;">配合医嘱使用 · <strong>修复肠道屏障 + 恢复菌群平衡</strong></div>
- </div>
- </div>
- `,
- })}
- </div>
- </div>
- ${C.renderDecisionList([
- `<strong>SKU:入园装 30 板 ¥75</strong>(一个月用量·每板独立密封·幼儿园可带)`,
- `<strong>营销节奏</strong>:8-9 月 / 2-3 月 两波入园季集中投放 XHS + 抖音`,
- `<strong>话术模板</strong>:<em>"入园 100 天肠道养护打卡营"</em> + 宝妈群社群运营`,
- `<strong>渠道优先</strong>:药店入园专区 + 京东母婴入园购物车 + 幼儿园合作`,
- ], { title: '落地决策 · 入园场景产品化', accent: BRAND.BERRY_PINK, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 5.2 · 抗生素后·肠道修复刚需
- // ==========================================================
- function renderSub5_2(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const abx = LA.getEvidence(items, {
- contentMatch: /抗生素|消炎药|头孢|阿莫西林|输液|杀菌|菌群|肠道菌群/,
- minChars: 30, top: 5, seed: 7,
- });
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${C.renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 场景 #2`,
- title: '<span style="color:' + BRAND.TECH_BLUE + ';">抗生素后</span>·肠道修复刚需·医生都推荐',
- subtitle: '抗生素(头孢/阿莫西林/输液)<strong>广谱杀菌 = 连带杀死肠道有益菌</strong>—— 这是医生和家长都共同认可的"必须补充益生菌"场景。',
- color: BRAND.TECH_BLUE,
- })}
- ${renderSceneHero({
- color: BRAND.TECH_BLUE,
- title: `<strong>"抗生素后停后多久吃益生菌?顺序错了白花钱"</strong>(XHS ♥839)——家长已经形成"抗生素 → 必须补益生菌"的默认共识,但<strong>吃什么、怎么吃、吃多久</strong>是个真空带。`,
- subtitle: '这是家长<strong>愿意主动学习</strong>的场景 —— 医生不会手把手教每个细节,家长在小红书上求知若渴。乳酸菌素片只需要"科普答疑 + 讲清楚为什么"就能吃住这个场景。',
- time: '急诊 / 住院期间 / 出院后 1-2 周 · 慢性支气管炎反复用药期',
- space: '儿童医院 / 家中 / 幼儿园带药',
- trigger: '发烧要输液 · 细菌感染要吃消炎药 · 支气管炎 · 鼻炎合并感染',
- persona: '25-40 岁家长 · 孩子频繁生病 · 对药物副作用敏感 · 愿意做功课',
- })}
- <div class="grid" style="grid-template-columns:1.1fr 0.9fr; gap:24px; margin-top:20px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.TECH_BLUE}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC · 家长在抗生素后的真实困惑</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${abx.slice(0, 4).map((it) => C.renderVocCard(it, { accent: BRAND.TECH_BLUE, compact: true, maxChars: 180 })).join('')}
- </div>
- </div>
- <div>
- ${C.renderFindingCard({
- icon: '🔬',
- title: '关键发现 · 活菌 vs 非活菌的科学差异',
- accent: BRAND.LACTIC_MINT,
- body: `<strong>抗生素杀菌期间</strong>,吃<strong>活菌益生菌(妈咪爱/亿活/金双岐)</strong>会被抗生素同时杀死 → "顺序错了白花钱"。<br/><br/>
- <strong>乳酸菌素片 = 非活菌发酵物</strong>,不是活菌, 成分是<strong>乳酸菌已经分泌的代谢产物</strong>, 不受抗生素影响, <strong>可以与抗生素同服、立刻起效、无需等待停药</strong>。<br/><br/>
- 这是乳酸菌素片<strong style="color:${BRAND.LACTIC_MINT};">在抗生素后场景的独家科学壁垒</strong>—— 其他活菌益生菌都做不到。`,
- })}
- <div style="margin-top:18px;">
- ${C.renderFindingCard({
- icon: '👨⚕️',
- title: '专业权威背书机会',
- accent: BRAND.TECH_BLUE,
- body: `抖音<strong>中医儿科医生史英杰 ♥2510</strong>、菌群老郑 ♥839 等科普 KOL 已经在教家长"抗生素后怎么补"。 <strong>乳酸菌素片合作儿科医生 KOL 科普</strong> = 借势权威进场, 不做硬广做"专业答疑"。`,
- })}
- </div>
- </div>
- </div>
- ${C.renderDecisionList([
- `<strong>SKU:应急装 14 板 ¥38</strong>(一疗程用量·配合抗生素用药周期)`,
- `<strong>营销锚点</strong>:"<strong>与抗生素同服</strong>" 独家科学差异化宣传`,
- `<strong>合作儿科医生 KOL</strong>:丁香妈妈 / 中医儿科医生 / 菌群老郑 等做专业科普`,
- `<strong>渠道优先</strong>:儿童医院药房 + 药店感冒药旁陈列 + 线上搜索"抗生素益生菌"前 3`,
- ], { title: '落地决策 · 抗生素场景产品化', accent: BRAND.TECH_BLUE, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 5.3 · 挑食积食·日常消化养护
- // ==========================================================
- function renderSub5_3(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const picky = LA.getEvidence(items, {
- contentMatch: /挑食|饭渣|不爱吃饭|厌食|专注度|饮食|食欲|脾胃|不吃菜/,
- minChars: 30, top: 5, seed: 7,
- });
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${C.renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 场景 #3`,
- title: '<span style="color:' + BRAND.SUNNY_YELLOW + ';">挑食积食</span>·日常消化养护·最大存量市场',
- subtitle: '"<strong>饭渣孩子 ♥8540</strong>" + "<strong>积食 ♥20107</strong>" + "<strong>脾胃弱 ♥1657</strong>" —— 中式育儿最高频的长期焦虑,比单次生病更高频。',
- color: BRAND.SUNNY_YELLOW,
- })}
- ${renderSceneHero({
- color: BRAND.SUNNY_YELLOW,
- title: `<strong>"破防了‼️当我听到'饭渣'孩子的心声… 吃饭🍚像打仗?可能是脾胃'小马达'..."</strong>(XHS ♥1657)—— 家长已经建立"<strong>挑食 = 脾胃问题</strong>"的认知, 不再认为是孩子性格问题。`,
- subtitle: '这是<strong>家长花最多时间和精力</strong>的场景——每天追着喂饭、中医推拿、换辅食、找补剂。 乳酸菌素片作为"肠道调理 = 脾胃改善"的 OTC 药品,是该场景"治本"的优先答案。',
- time: '每天三餐 × 365 天 · 特别是周末 / 节假日大餐后',
- space: '家 / 饭桌 / 奶奶家 / 外出就餐',
- trigger: '不爱吃饭 / 吃得少 / 饭点追着喂 / 过年过节"从除夕到初七天天大餐"',
- persona: '30-40 岁妈妈 · 3-10 岁孩子 · 高度重视脾胃的中式育儿派',
- })}
- <div class="grid" style="grid-template-columns:1.1fr 0.9fr; gap:24px; margin-top:20px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.SUNNY_YELLOW}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC · 家长挑食/积食真实日常</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${picky.slice(0, 4).map((it) => C.renderVocCard(it, { accent: BRAND.SUNNY_YELLOW, compact: true, maxChars: 180 })).join('')}
- </div>
- </div>
- <div>
- ${C.renderStatStrip([
- { num: '♥20107', label: '抖音河南卫视 积食科普', color: BRAND.SUNNY_YELLOW },
- { num: '♥8540', label: 'XHS 挑食全攻略', color: BRAND.WARM_ORANGE },
- { num: '28.6%', label: '儿童功能性胃肠病患病率', color: BRAND.CORAL, delta: '非单次事件' },
- { num: '45%', label: '家长肠道需求占比', color: BRAND.JIANG_GREEN, delta: '最大基本盘' },
- ], { accent: BRAND.SUNNY_YELLOW })}
- <div style="margin-top:18px; padding:18px 22px; background:${BRAND.SUNNY_YELLOW}08; border-left:3px solid ${BRAND.SUNNY_YELLOW}; border-radius:var(--radius-md);">
- <div class="text-mono text-xs" style="color:${BRAND.SUNNY_YELLOW}; letter-spacing:0.15em; margin-bottom:10px; font-weight:700;">USER JOURNEY · 积食用户旅程</div>
- <div style="color:var(--text-1); font-size:0.88rem; line-height:1.8;">
- <div><strong>Day 0</strong> → 过节大餐 / 换奶粉 / 加辅食</div>
- <div><strong>Day 1-3</strong> → 不爱吃饭 / 舌苔厚 / 口气重</div>
- <div><strong>Day 4-7</strong> → 搜"积食怎么办" → 看到 ♥20107 山楂陈皮煮水</div>
- <div><strong>Day 8-30</strong> → 尝试小儿推拿 / 中式食疗 / 买益生菌</div>
- <div style="color:${BRAND.JIANG_GREEN}; font-weight:700; margin-top:6px;">⇒ 乳酸菌素片切入:Day 4-7 搜索阶段 + Day 8-30 选购对比阶段</div>
- </div>
- </div>
- </div>
- </div>
- ${C.renderDecisionList([
- `<strong>SKU:日常瓶 60 片 ¥58</strong>(30 天用量 · 每天 2 片 · 主打日常养护)`,
- `<strong>营销节奏</strong>:春节后 / 暑假后 2 波"积食调理月"集中投放`,
- `<strong>话术模板</strong>:<em>"不用追着喂,肠道自己爱吃饭"</em> × 中式脾胃文化`,
- `<strong>渠道优先</strong>:XHS 新手妈妈科普笔记 + 抖音"饭渣孩子改造"剧情号`,
- ], { title: '落地决策 · 挑食积食产品化', accent: BRAND.SUNNY_YELLOW, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 5.4 · 换季腹泻·季节性防护
- // ==========================================================
- function renderSub5_4(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const season = LA.getEvidence(items, {
- contentMatch: /换季|春秋|天气转凉|季节|秋冬|春夏|拉稀|腹泻反复|反复拉/,
- minChars: 25, top: 5, seed: 7,
- });
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${C.renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 场景 #4`,
- title: '<span style="color:' + BRAND.SKY_BLUE + ';">换季腹泻</span>·季节性防护·每年两波集中高峰',
- subtitle: '<strong>"天气转凉,拉稀的宝宝多了"</strong>(XHS ♥3000)· <strong>"一周岁宝宝连续腹泻 5 天终于好了"</strong>(XHS ♥4312)——每年<strong>春秋换季</strong>两波腹泻高峰是家长的共识。',
- color: BRAND.SKY_BLUE,
- })}
- ${renderSceneHero({
- color: BRAND.SKY_BLUE,
- title: `<strong>"历时一个月拉肚子,50 块钱成功上岸"</strong>(XHS ♥3110)—— 家长愿意<strong>为"上岸"付费</strong>, 只要产品能真的解决"反复拉、反复好不了"的折磨。`,
- subtitle: '换季腹泻的特点是<strong>反复</strong>——不是单次事件,而是拉几天好两天又拉。 家长需要一个"长期吃也没事"的答案,不是"急救药"。',
- time: '3-5 月春夏换季 · 9-11 月秋冬换季 · 气温突变日',
- space: '家 / 医院儿科门诊 / 药店',
- trigger: '天气转凉 / 气温骤变 / 病毒性胃肠炎流行 / 轮状病毒季',
- persona: '0-6 岁宝宝家长 · 特别是新手妈妈 · 对"反复拉"有强焦虑',
- })}
- <div class="grid" style="grid-template-columns:1.1fr 0.9fr; gap:24px; margin-top:20px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.SKY_BLUE}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC · 换季腹泻家长真实经历</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${season.slice(0, 4).map((it) => C.renderVocCard(it, { accent: BRAND.SKY_BLUE, compact: true, maxChars: 180 })).join('')}
- </div>
- </div>
- <div>
- ${C.renderFindingCard({
- icon: '🔄',
- title: '关键洞察 · "反复拉"是真痛点',
- accent: BRAND.SKY_BLUE,
- body: `家长不怕孩子拉一次,怕的是<strong>反复好不了</strong>——拉几天好几天又拉。这个"反复焦虑" 是活菌益生菌解决不了的(停药就反弹)。<br/><br/>
- <strong style="color:${BRAND.LACTIC_MINT};">乳酸菌素片非活菌发酵物 → 可长期日常服用 → 不停药 = 不反弹</strong>——这是对"反复拉"家长的最精准回答。`,
- })}
- <div style="margin-top:18px;">
- ${C.renderFindingCard({
- icon: '💰',
- title: '"50 块钱上岸" 心智启发',
- accent: BRAND.JIANG_GREEN,
- body: `XHS ♥3110 家长原声:<em>"历时一个月拉肚子,<strong>50 块钱成功上岸</strong>"</em>。 <br/><br/>
- <strong>关键心智</strong>:家长把"花对 50 块钱 = 换来孩子不受罪"当作<strong>巨大成功</strong>。乳酸菌素片 ¥58 价格带正好卡在这个"值得 + 能换来安心"的心理锚点上。`,
- })}
- </div>
- </div>
- </div>
- ${C.renderDecisionList([
- `<strong>SKU:季节装 45 片 ¥58</strong>(3 周用量 · 覆盖换季高峰)`,
- `<strong>营销节奏</strong>:3月 + 9月 两波"换季肠道备战"集中推广`,
- `<strong>话术核心</strong>:<em>"换季别让宝宝拉反复 · 日常一片防未然"</em>`,
- `<strong>渠道策略</strong>:药店陈列到感冒药旁 · 京东换季专区 · XHS 天气话题标签`,
- ], { title: '落地决策 · 换季腹泻产品化', accent: BRAND.SKY_BLUE, columns: 2 })}
- </div>
- </section>`;
- }
- module.exports = {
- 'scene-1': renderSub5_1,
- 'scene-2': renderSub5_2,
- 'scene-3': renderSub5_3,
- 'scene-4': renderSub5_4,
- };
|