| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366 |
- // 江中猴菇饮 · Ch2 未被满足的需求(4 子章)
- // 2.1 PPI层 · 依赖焦虑 × 反弹恐惧 × 副作用担忧
- // 2.2 中成药层 · 口感抗性 × 起效慢 × 代际断层
- // 2.3 功能食品层 · 身份尴尬 × 场景单一 × 无OTC信任
- // 2.4 跨层汇总 · 5大共性未满足需求
- const HGY = require('./houguyin-analyze.js');
- const C = require('./houguyin-components.js');
- const { BRAND, esc, renderVocCard, renderVocGrid, renderInsightHero, renderDecisionList, renderTheoryBox, renderTagCloud, renderStatStrip, renderBarChart, renderMatrix2x2, renderSectionHead } = C;
- // ================================================================
- // 2.1 · PPI层 · 依赖焦虑 × 反弹恐惧 × 副作用担忧
- // ================================================================
- function renderSub2_1(ctx) {
- const { chapter: c, subIdx, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const ppiVoc = HGY.getEvidence(items, { hypothesis: 'H3', product: '奥美拉唑', top: 4, seed: 5 });
- const h4Voc = HGY.getEvidence(items, { hypothesis: 'H4', top: 4, seed: 9 });
- const combinedVoc = [...ppiVoc, ...h4Voc].filter(Boolean).slice(0, 6);
- const finalVoc = combinedVoc.length >= 4 ? combinedVoc : HGY.getEvidence(items, { hypothesis: 'H3', top: 6, seed: 13 });
- const ppiPains = [
- { key: 'P1', label: '依赖焦虑', color: BRAND.CORAL,
- voc: '"奥美拉唑吃了三年多了 不吃胃酸就翻上来 这到底是治病还是上瘾"',
- impact: 'high', users: '~2000万长期PPI用户' },
- { key: 'P2', label: '反弹恐惧', color: BRAND.CORAL,
- voc: '"停了拉唑之后胃酸比吃之前还猛 医生说是反弹正常 但我真的怕"',
- impact: 'high', users: '停药后 40-60% 经历反弹' },
- { key: 'P3', label: '长期副作用担忧', color: BRAND.WARM_ORANGE,
- voc: '"看到新闻说长期吃奥美拉唑增加胃癌风险 吓得我天天焦虑"',
- impact: 'high', users: '骨质疏松/肾损伤/B12缺乏' },
- { key: 'P4', label: '寻找食疗替代', color: BRAND.HOUGU_TAN,
- voc: '"想找一个能替代拉唑的天然养胃方案 但市面上全是智商税"',
- impact: 'mid', users: '约 30% PPI 用户有替代意愿' },
- { key: 'P5', label: '减量无方案', color: BRAND.TECH_BLUE,
- voc: '"医生说可以慢慢减量 但怎么减没人告诉我 减到一半就反弹了"',
- impact: 'high', users: 'PPI 减量成功率 <30%' },
- { key: 'P6', label: '心理负担', color: BRAND.ROSE,
- voc: '"每天吃药的感觉很不好 好像自己是个病人 但不吃又不行"',
- impact: 'mid', users: '慢性病化带来心理压力' },
- ];
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · PPI 用户的痛声`,
- title: '<span style="color:' + BRAND.TECH_BLUE + ';">70 亿</span>拉唑市场 · 用户<span style="color:' + BRAND.CORAL + ';">有效但痛苦</span>的 6 大未满足需求',
- subtitle: 'PPI(质子泵抑制剂)是胃病用户的"第一选择"——但 VOC 揭示:<strong>有效≠满意</strong>,依赖焦虑和反弹恐惧正在驱动大量用户寻找替代方案。',
- color: BRAND.CORAL,
- })}
- <div class="grid" style="grid-template-columns:1.2fr 1fr; gap:24px; margin-top:24px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.CORAL}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC 证据 · PPI 用户真实痛声</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${finalVoc.slice(0, 4).map((it) => renderVocCard(it, { accent: BRAND.CORAL, compact: true })).join('')}
- </div>
- </div>
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.CORAL}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">6 大未满足需求 · 按影响度排序</div>
- <div style="display:flex; flex-direction:column; gap:10px;">
- ${ppiPains.map((p) => `
- <div style="padding:12px 14px; background:var(--bg-1); border:1px solid var(--border); border-left:3px solid ${p.color}; border-radius:6px; display:flex; gap:12px; align-items:flex-start;">
- <div style="flex-shrink:0; padding:2px 8px; background:${p.color}15; color:${p.color}; border-radius:10px; font-size:0.7rem; font-weight:700; font-family:var(--font-mono); letter-spacing:0.1em;">${p.key}</div>
- <div style="flex:1;">
- <div style="color:var(--text-1); font-size:0.88rem; font-weight:700; margin-bottom:4px;">${esc(p.label)}</div>
- <div style="color:var(--text-2); font-size:0.76rem; line-height:1.55; font-style:italic;">${esc(p.voc)}</div>
- <div style="color:var(--text-3); font-size:0.68rem; margin-top:4px;">${esc(p.users)}</div>
- </div>
- <div style="flex-shrink:0; padding:3px 9px; background:${p.impact === 'high' ? BRAND.CORAL : BRAND.WARM_ORANGE}15; color:${p.impact === 'high' ? BRAND.CORAL : BRAND.WARM_ORANGE}; border-radius:10px; font-size:0.64rem; font-weight:700;">${p.impact === 'high' ? '高影响' : '中影响'}</div>
- </div>`).join('')}
- </div>
- </div>
- </div>
- ${renderInsightHero({
- eyebrow: 'CORE INSIGHT · PPI 层核心识别',
- color: BRAND.CORAL,
- title: `PPI 市场 70 亿的背后是<strong style="color:${BRAND.CORAL};">2000 万被"绑架"的用户</strong>——他们不是不想停,是<strong>停不了 + 没有过渡方案</strong>。`,
- subtitle: `"想停药但不敢停"是 PPI 层最大的未满足需求。如果有一个产品能<strong style="color:${BRAND.JIANG_GREEN};">在减量期提供温和的胃黏膜保护感</strong>,不宣称替代 PPI、只做"减量伴侣",就能切走这块<strong>巨大的焦虑驱动需求</strong>。`,
- })}
- ${renderDecisionList([
- '<strong>核心未满足</strong>:PPI 减量期无过渡方案——用户需要"停药但不裸奔"的温和选择',
- '<strong>需求规模</strong>:2000 万长期 PPI 用户 × 30% 有替代意愿 = 600 万高价值目标',
- '<strong>需求强度</strong>:焦虑驱动(健康恐惧)> 普通购买意愿——转化率天然高',
- '<strong>猴菇饮适配度</strong>:温和 + 非药 + OTC 信任 = 完美匹配"减量伴侣"定位',
- ], { title: 'PPI 层需求总结 · 4 条关键发现', accent: BRAND.CORAL, columns: 2 })}
- </div>
- </section>`;
- }
- // ================================================================
- // 2.2 · 中成药层 · 口感抗性 × 起效慢 × 代际断层
- // ================================================================
- function renderSub2_2(ctx) {
- const { chapter: c, subIdx, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const weitaiVoc = HGY.getEvidence(items, { hypothesis: 'H3', product: '三九胃泰', top: 4, seed: 41 });
- const kfxVoc = HGY.getEvidence(items, { hypothesis: 'H3', product: '康复新液', top: 3, seed: 43 });
- const finalVoc = [...weitaiVoc.slice(0, 3), ...kfxVoc.slice(0, 1)];
- const tcmPains = [
- { key: 'T1', label: '口感抗性', color: BRAND.CORAL,
- voc: '"三九胃泰颗粒冲出来苦涩 老人不爱喝 坚持两天就放弃"',
- impact: 'high' },
- { key: 'T2', label: '起效慢', color: BRAND.WARM_ORANGE,
- voc: '"三九胃泰对浅表性胃炎还行 但起效慢 急性期救不了命"',
- impact: 'mid' },
- { key: 'T3', label: '冲泡繁琐', color: BRAND.WARM_ORANGE,
- voc: '"颗粒冲泡要开水搅匀麻烦 和直接吃片剂比 步骤多"',
- impact: 'mid' },
- { key: 'T4', label: '疗程执行难', color: BRAND.CORAL,
- voc: '"疗程吃够才有用 但我经常忘记 三天打渔两天晒网"',
- impact: 'high' },
- { key: 'T5', label: '原料心理抗拒', color: BRAND.CORAL,
- voc: '"康复新液是蟑螂提取物 虽然医生说没事 心理上真的咽不下去"',
- impact: 'high' },
- { key: 'T6', label: '代际断层', color: BRAND.ROSE,
- voc: '"胃泰的核心人群是我爸那一代 我们这一代不会主动选中成药颗粒"',
- impact: 'high' },
- ];
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 中成药用户的痛声`,
- title: '<span style="color:' + BRAND.PURPLE + ';">22 亿</span>中成药胃泰市场 · <span style="color:' + BRAND.CORAL + ';">年轻人为什么不买账?</span>',
- subtitle: '三九胃泰、康复新液等中成药有<strong>稳定基本盘但增长乏力</strong>——VOC 揭示 6 大痛点,全部指向"体验代际跟不上用户升级"。',
- color: BRAND.PURPLE,
- })}
- <div class="grid" style="grid-template-columns:1.1fr 1fr; gap:24px; margin-top:24px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.PURPLE}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC 证据 · 中成药用户真实反馈</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${finalVoc.slice(0, 4).map((it) => renderVocCard(it, { accent: BRAND.PURPLE, compact: true })).join('')}
- </div>
- </div>
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.PURPLE}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">6 大未满足需求 · 按影响度排序</div>
- <div style="display:flex; flex-direction:column; gap:10px;">
- ${tcmPains.map((t) => `
- <div style="padding:12px 14px; background:var(--bg-1); border:1px solid var(--border); border-left:3px solid ${t.color}; border-radius:6px; display:flex; gap:12px; align-items:flex-start;">
- <div style="flex-shrink:0; padding:2px 8px; background:${t.color}15; color:${t.color}; border-radius:10px; font-size:0.7rem; font-weight:700; font-family:var(--font-mono); letter-spacing:0.1em;">${t.key}</div>
- <div style="flex:1;">
- <div style="color:var(--text-1); font-size:0.88rem; font-weight:700; margin-bottom:4px;">${esc(t.label)}</div>
- <div style="color:var(--text-2); font-size:0.76rem; line-height:1.55; font-style:italic;">${esc(t.voc)}</div>
- </div>
- <div style="flex-shrink:0; padding:3px 9px; background:${t.impact === 'high' ? BRAND.CORAL : BRAND.WARM_ORANGE}15; color:${t.impact === 'high' ? BRAND.CORAL : BRAND.WARM_ORANGE}; border-radius:10px; font-size:0.64rem; font-weight:700;">${t.impact === 'high' ? '高影响' : '中影响'}</div>
- </div>`).join('')}
- </div>
- </div>
- </div>
- ${renderInsightHero({
- eyebrow: 'CORE INSIGHT · 中成药层核心识别',
- color: BRAND.PURPLE,
- title: `中成药 22 亿市场的问题<strong style="color:${BRAND.PURPLE};">不是疗效</strong>——是<strong style="color:${BRAND.CORAL};">"体验代差"</strong>:苦涩口感、冲泡繁琐、疗程执行、原料心理抗拒——<strong>年轻代际在用户体验维度彻底拒绝</strong>。`,
- subtitle: `这为猴菇饮留下了<strong style="color:${BRAND.JIANG_GREEN};">"中药温和 + 现代体验"</strong>的空白带:<em>液体即饮(消除冲泡)× 温和口感(消除苦涩)× 日常饮用(消除疗程压力)× 食材原料(消除心理抗拒)</em>。`,
- })}
- ${renderDecisionList([
- '<strong>核心未满足</strong>:年轻用户需要"中药级温和 + 现代级体验"的产品——目前没有',
- '<strong>需求规模</strong>:22 亿中成药市场的流失用户 + 从未尝试中成药的年轻潜在用户',
- '<strong>体验四反</strong>:反口感(不苦不涩)+ 反冲泡(开盖即饮)+ 反疗程(日常一瓶)+ 反原料抗拒(食材级猴头菇)',
- '<strong>猴菇饮适配度</strong>:液体 + 温和口感 + 猴头菇食材 + OTC 信任 = 精准匹配代际升级需求',
- ], { title: '中成药层需求总结 · 4 条关键发现', accent: BRAND.PURPLE, columns: 2 })}
- </div>
- </section>`;
- }
- // ================================================================
- // 2.3 · 功能食品层 · 身份尴尬 × 场景单一 × 无OTC信任
- // ================================================================
- function renderSub2_3(ctx) {
- const { chapter: c, subIdx, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const mixiNeutral = HGY.filterBySentiment(HGY.filterByProduct(items, '猴姑米稀'), 'neutral');
- const competitorAll = HGY.filterByProduct(items, '其他猴菇饮');
- const combined = [...HGY.topByLikes(mixiNeutral, 3), ...HGY.topByLikes(competitorAll, 3)];
- const finalVoc = combined.length >= 4 ? combined : HGY.getEvidence(items, { hypothesis: 'H1', top: 6, seed: 51 });
- const foodPains = [
- { key: 'F1', color: BRAND.HOUGU_TAN, label: '身份尴尬',
- desc: '食品身份 → 不能宣传功效 → 用户怀疑"吃了个寂寞"',
- voc: '"米稀说养胃但又不是药 到底有没有效啊 感觉在交智商税"' },
- { key: 'F2', color: BRAND.CORAL, label: '场景单一',
- desc: '米稀只在早餐场景,全天其他时段无法介入',
- voc: '"米稀当早餐可以 但中午晚上应酬后想来一杯养胃的 没有"' },
- { key: 'F3', color: BRAND.WARM_ORANGE, label: '同质化严重',
- desc: '同名猴菇饮价格 10-30 元四处都是,没有差异化',
- voc: '"网上搜猴菇饮出来一堆 不知道哪个真哪个假 干脆不买了"' },
- { key: 'F4', color: BRAND.ROSE, label: 'OTC 信任空白',
- desc: '市面 99% 为食品身份,没有 OTC 背书的猴菇饮',
- voc: '"如果有一个有药字号认证的养胃饮 我愿意多花钱买信任"' },
- ];
- // 米稀局限性(来自旧Ch2内容整合)
- const mixiLimits = [
- { label: '冲泡要求热水', icon: '☕' },
- { label: '早餐时段专属', icon: '🌅' },
- { label: '差旅不便携带', icon: '🧳' },
- { label: '糖友不宜(蔗糖)', icon: '🩸' },
- ];
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 功能食品用户的痛声`,
- title: '<span style="color:' + BRAND.HOUGU_TAN + ';">2 亿</span>功能食品 · <span style="color:' + BRAND.CORAL + ';">为什么天花板这么低?</span>',
- subtitle: '米稀 7.5 亿证明了赛道可行,但整个功能食品品类天花板仅 2 亿——VOC 揭示根本问题是<strong>"身份 + 场景 + 差异化 + 信任"</strong>四重缺失。',
- color: BRAND.HOUGU_TAN,
- })}
- <div class="grid" style="grid-template-columns:repeat(4, 1fr); gap:14px; margin-top:24px;">
- ${foodPains.map((p) => `
- <div style="padding:18px 20px; background:${p.color}06; border:1px solid ${p.color}30; border-left:4px solid ${p.color}; border-radius:var(--radius-md);">
- <div class="text-mono text-xs" style="color:${p.color}; letter-spacing:0.2em; margin-bottom:8px; font-weight:700;">${p.key}</div>
- <h3 style="color:var(--text-1); font-size:1.02rem; font-weight:700; margin:0 0 8px;">${esc(p.label)}</h3>
- <div style="color:var(--text-2); font-size:0.82rem; line-height:1.6; margin-bottom:10px;">${esc(p.desc)}</div>
- <div style="padding:8px 10px; background:var(--bg-1); border-radius:4px; color:var(--text-1); font-size:0.76rem; line-height:1.5; font-style:italic;">${esc(p.voc)}</div>
- </div>`).join('')}
- </div>
- <div class="grid" style="grid-template-columns:1.2fr 1fr; gap:24px; margin-top:24px;">
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.HOUGU_TAN}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">VOC 证据 · 功能食品用户反馈</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${finalVoc.slice(0, 4).map((it) => renderVocCard(it, { accent: BRAND.HOUGU_TAN, compact: true })).join('')}
- </div>
- </div>
- <div>
- <div style="padding:22px 24px; background:${BRAND.CORAL}08; border:1px solid ${BRAND.CORAL}30; border-radius:var(--radius-md);">
- <div class="text-mono text-xs" style="color:${BRAND.CORAL}; letter-spacing:0.18em; margin-bottom:14px; font-weight:700;">米稀的 4 大局限 = 猴菇饮的设计输入</div>
- <div style="display:flex; flex-direction:column; gap:12px;">
- ${mixiLimits.map((l) => `
- <div style="display:flex; align-items:center; gap:10px; padding:10px 14px; background:var(--bg-1); border-radius:6px;">
- <span style="font-size:1.3rem;">${l.icon}</span>
- <div style="color:var(--text-1); font-size:0.9rem; font-weight:600;">${esc(l.label)}</div>
- <div style="margin-left:auto; color:${BRAND.JIANG_GREEN}; font-size:0.72rem; font-weight:700;">→ 饮可解决</div>
- </div>`).join('')}
- </div>
- </div>
- </div>
- </div>
- ${renderInsightHero({
- eyebrow: 'CORE INSIGHT · 功能食品层核心识别',
- color: BRAND.HOUGU_TAN,
- title: `功能食品的天花板不是需求不足,是<strong style="color:${BRAND.CORAL};">"食品身份 + 场景限制 + 同质化 + 无信任锚"</strong>四重天花板。`,
- subtitle: `米稀 7.5 亿已证明用户<strong>愿意为"养胃"付费</strong>。瓶颈不在需求端,在供给端——<strong style="color:${BRAND.JIANG_GREEN};">OTC 身份 + 全场景 + 差异化 + 品牌信任</strong>是突破天花板的 4 把钥匙。`,
- })}
- ${renderDecisionList([
- '<strong>核心未满足</strong>:用户想买"有信任背书的养胃饮"但市场上没有——全是食品身份',
- '<strong>米稀启示</strong>:7.5 亿证明赛道可行 + 差评揭示场景/剂型/糖友 3 大局限 = 猴菇饮的设计说明书',
- '<strong>OTC 是突破口</strong>:从 2 亿食品池跳进 100 亿 OTC 池——身份升级即市场扩容 50 倍',
- '<strong>不做米稀 2.0</strong>:饮的价值是"米稀覆盖不到的场景 + 米稀拿不到的信任"',
- ], { title: '功能食品层需求总结 · 4 条关键发现', accent: BRAND.HOUGU_TAN, columns: 2 })}
- </div>
- </section>`;
- }
- // ================================================================
- // 2.4 · 跨层汇总 · 5大共性未满足需求
- // ================================================================
- function renderSub2_4(ctx) {
- const { chapter: c, subIdx, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- // 5大共性未满足需求
- const unmetNeeds = [
- { id: 'U1', title: '日常维持方案缺失', color: BRAND.JIANG_GREEN,
- desc: '不论哪一层,用户都缺少一个"不是药但可以天天用"的日常维持方案',
- ppi: 'PPI 用户:减量期无过渡', tcm: '中成药用户:疗程断续无连续', food: '功能食品:效果不确定不敢持续',
- fitScore: 95 },
- { id: 'U2', title: '体验友好度不足', color: BRAND.WARM_ORANGE,
- desc: '现有产品要么苦涩(中成药)、要么需冲泡(米稀)、要么需处方(PPI)',
- ppi: 'PPI:需吞药片+空腹', tcm: '中成药:苦涩+冲泡', food: '米稀:冲泡+热水+早餐限制',
- fitScore: 90 },
- { id: 'U3', title: '信任锚点模糊', color: BRAND.TECH_BLUE,
- desc: '药品有效但焦虑副作用,食品温和但怀疑效果——两头不靠',
- ppi: 'PPI:有效但不信任安全性', tcm: '中成药:信任传统但怀疑疗效', food: '食品:完全缺乏信任锚',
- fitScore: 85 },
- { id: 'U4', title: '场景覆盖碎片化', color: BRAND.PURPLE,
- desc: '没有一个产品能覆盖"全天候养胃"——早餐归米稀,其他时段空白',
- ppi: 'PPI:定时吃药场景固定', tcm: '中成药:家里冲泡场景限制', food: '米稀:仅早餐场景',
- fitScore: 88 },
- { id: 'U5', title: '心理负担重', color: BRAND.ROSE,
- desc: '"吃药=我是病人"的心理负担,让轻中度用户抗拒就医和用药',
- ppi: 'PPI:慢性病人标签', tcm: '中成药:传统老人药标签', food: '食品:无心理负担但也无信任',
- fitScore: 80 },
- ];
- return `<section class="report-section" id="${c.key}-${subIdx}" data-tone="${c.tone}" data-slide-num="${slideNum}/${slideTotal}">
- <div class="section-inner">
- ${renderSectionHead({
- eyebrow: `${c.num}.${subIdx} · 跨层汇总`,
- title: '5 大<span style="color:' + BRAND.CORAL + ';">共性未满足需求</span> × 猴菇饮<span style="color:' + BRAND.JIANG_GREEN + ';">适配度评估</span>',
- subtitle: '把 PPI / 中成药 / 功能食品三层的痛声交叉提炼——哪些是<strong>所有层用户共同的未满足需求</strong>?哪些需求猴菇饮 OTC 的产品特性可以匹配?',
- color: BRAND.CORAL,
- })}
- <div style="margin-top:24px; display:flex; flex-direction:column; gap:16px;">
- ${unmetNeeds.map((u) => `
- <div style="padding:20px 24px; background:var(--bg-1); border:1px solid var(--border); border-left:5px solid ${u.color}; border-radius:var(--radius-md);">
- <div style="display:flex; align-items:center; justify-content:space-between; margin-bottom:12px;">
- <div style="display:flex; align-items:center; gap:12px;">
- <div class="text-mono text-xs" style="color:${u.color}; letter-spacing:0.18em; font-weight:700;">${u.id}</div>
- <div style="color:var(--text-1); font-size:1.08rem; font-weight:800;">${esc(u.title)}</div>
- </div>
- <div style="display:flex; align-items:center; gap:8px;">
- <span style="color:var(--text-3); font-size:0.72rem;">猴菇饮适配度</span>
- <div style="width:80px; height:8px; background:var(--border); border-radius:4px; overflow:hidden;">
- <div style="width:${u.fitScore}%; height:100%; background:${BRAND.JIANG_GREEN}; border-radius:4px;"></div>
- </div>
- <span style="color:${BRAND.JIANG_GREEN}; font-family:var(--font-mono); font-weight:700; font-size:0.82rem;">${u.fitScore}%</span>
- </div>
- </div>
- <div style="color:var(--text-2); font-size:0.9rem; line-height:1.6; margin-bottom:14px;">${esc(u.desc)}</div>
- <div style="display:grid; grid-template-columns:repeat(3, 1fr); gap:10px;">
- <div style="padding:8px 12px; background:${BRAND.TECH_BLUE}08; border-radius:4px;">
- <div class="text-mono" style="font-size:0.62rem; color:${BRAND.TECH_BLUE}; letter-spacing:0.1em; margin-bottom:3px;">PPI 层</div>
- <div style="color:var(--text-2); font-size:0.78rem; line-height:1.5;">${esc(u.ppi)}</div>
- </div>
- <div style="padding:8px 12px; background:${BRAND.PURPLE}08; border-radius:4px;">
- <div class="text-mono" style="font-size:0.62rem; color:${BRAND.PURPLE}; letter-spacing:0.1em; margin-bottom:3px;">中成药层</div>
- <div style="color:var(--text-2); font-size:0.78rem; line-height:1.5;">${esc(u.tcm)}</div>
- </div>
- <div style="padding:8px 12px; background:${BRAND.HOUGU_TAN}08; border-radius:4px;">
- <div class="text-mono" style="font-size:0.62rem; color:${BRAND.HOUGU_TAN}; letter-spacing:0.1em; margin-bottom:3px;">功能食品层</div>
- <div style="color:var(--text-2); font-size:0.78rem; line-height:1.5;">${esc(u.food)}</div>
- </div>
- </div>
- </div>`).join('')}
- </div>
- ${renderInsightHero({
- eyebrow: 'UNMET NEEDS MAP · 需求地图总结',
- color: BRAND.JIANG_GREEN,
- title: `5 大共性需求中,<strong style="color:${BRAND.JIANG_GREEN};">U1(日常维持方案)适配度 95%</strong> 是猴菇饮最应该首先回答的——"不是药但可以天天用"精准描述了 OTC 养胃饮的定位。`,
- subtitle: `5 条需求的猴菇饮适配度均 >80%,说明<strong>这个产品不是在找需求,是需求在等产品</strong>。下一章将逐一对位:哪些需求猴菇饮能直接接住,如何接,以什么优先级。`,
- })}
- ${renderDecisionList([
- '<strong>最高优先级</strong>:U1 日常维持方案 + U2 体验友好度——这两条决定产品的"基本盘"',
- '<strong>差异化优先级</strong>:U3 信任锚点——OTC 身份是猴菇饮 vs 所有竞品的核心壁垒',
- '<strong>场景优先级</strong>:U4 场景覆盖——液体即饮天然覆盖全场景,但需要明确"米稀以外"的定位',
- '<strong>长期价值</strong>:U5 心理负担——"不是药的养胃方案"降低用户心理门槛,有利于长期复购',
- '<strong>下一章预告</strong>:Ch3 将把这 5 条需求 × 猴菇饮产品特性一一对位,输出 3 大机会区域',
- ], { title: '需求优先级 · 5 条排序', accent: BRAND.JIANG_GREEN, columns: 2 })}
- </div>
- </section>`;
- }
- module.exports = {
- 'unmet-1': renderSub2_1,
- 'unmet-2': renderSub2_2,
- 'unmet-3': renderSub2_3,
- 'unmet-4': renderSub2_4,
- };
|