| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449 |
- // ==============================================================================
- // 江中乳酸菌素片儿童版 · Ch4 KANO × JTBD 双视角(5 子章)
- // ==============================================================================
- // 4.1 KANO 五类·必备/期望/兴奋/无差异/反向
- // 4.2 JTBD·家长 Functional 功能价值
- // 4.3 JTBD·家长 Emotional 情绪价值
- // 4.4 JTBD·儿童 × 家长 Social 社会价值
- // 4.5 决策优先级·SKU / 话术 / 包装映射
- // ==============================================================================
- const LA = require('./lactic-analyze.js');
- const C = require('./lactic-components.js');
- const { BRAND, esc, fmtLikes } = C;
- // ==========================================================
- // 4.1 · KANO 五类
- // ==========================================================
- function renderSub4_1(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const mustHave = LA.getEvidence(items, {
- contentMatch: /OTC|国药准字|蓝帽|药品|安全|放心/, minChars: 20, top: 1, seed: 5,
- });
- const perform = LA.getEvidence(items, {
- contentMatch: /有效|管用|好转|通了|不拉了|便秘好了|见效|改善/, minChars: 20, top: 1, seed: 7,
- });
- const excite = LA.getEvidence(items, {
- contentMatch: /爱吃|主动要|每天吃|像糖|当零食|甜甜的|奶片/, minChars: 20, top: 1, seed: 11,
- });
- const reverse = LA.getEvidence(items, {
- contentMatch: /苦|难吃|吐出|抗拒|药盒|硬广|广告/, minChars: 15, top: 1, seed: 13,
- });
- const kanoRows = [
- {
- type: '必备需求', en: 'MUST-HAVE', color: BRAND.CORAL,
- desc: '没有就不买 · 家长的底线',
- items: ['OTC 蓝帽子国药准字', '无防腐剂 / 无色素 / 无香精', '说明书明确适用年龄'],
- voc: mustHave[0],
- action: '<strong>蓝帽 OTC 双证 · 成分表公开 · 分龄说明书</strong>',
- },
- {
- type: '期望需求', en: 'PERFORMANCE', color: BRAND.LACTIC_MINT,
- desc: '越好越愿意付钱',
- items: ['便秘 / 积食 / 挑食 / 腹泻 真实改善', '连服 7-14 天可见体感', '停药不反弹 / 菌群稳定'],
- voc: perform[0],
- action: '<strong>临床数据背书 · 7 天效果打卡包 · 长期服用无反弹</strong>',
- },
- {
- type: '兴奋需求', en: 'ATTRACTIVE', color: BRAND.JIANG_GREEN,
- desc: '没想到的惊喜 · 溢价来源',
- items: ['孩子主动要吃(不用哄)', '分龄卡通礼盒(0-3 / 3-6 / 6-12)', '小程序家长社群 + 医生答疑'],
- voc: excite[0],
- action: '<strong>水果味咀嚼片 + IP 联名 + 家长 App 记录</strong>',
- },
- {
- type: '无差异需求', en: 'INDIFFERENT', color: BRAND.SAGE,
- desc: '做了也不加分 · 成本浪费',
- items: ['钙/锌/维生素复合(稀释主心智)', '过多菌株堆砌(多 = 好的幻觉)', '进口原料包装(国货反而更可信)'],
- voc: null,
- action: '<strong>做减法:单一乳酸菌素 > 成分杂交</strong>',
- },
- {
- type: '反向需求', en: 'REVERSE', color: BRAND.WINE_RED,
- desc: '做了反而更差',
- items: ['药盒严肃感(降低儿童接受度)', '硬广洗脑(家长反感 KOL 说教)', '恐惧营销("不吃就生病"吓坏家长)'],
- voc: reverse[0],
- action: '<strong>禁止药盒设计 · 禁止恐惧营销 · 禁止硬广洗脑</strong>',
- },
- ];
- 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} · KANO 五类需求`,
- title: '<span style="color:' + BRAND.PURPLE + ';">KANO 五类</span>:乳酸菌素片儿童版的需求优先级',
- subtitle: '把 KANO 模型<strong>折叠为可执行的 SKU / 包装 / 话术</strong>决策——每一类都对应真实 VOC 证据,不是理论装饰。',
- color: BRAND.PURPLE,
- })}
- <div class="grid" style="grid-template-columns:1fr; gap:16px; margin-top:20px;">
- ${kanoRows.map((r) => `
- <div style="padding:18px 22px; background:var(--bg-1); border:1px solid var(--border); border-left:4px solid ${r.color}; border-radius:var(--radius-md);">
- <div style="display:grid; grid-template-columns:160px 1.1fr ${r.voc ? '1.2fr' : ''} 1fr; gap:18px; align-items:start;">
- <div>
- <div class="text-mono text-xs" style="color:${r.color}; letter-spacing:0.15em; margin-bottom:6px; font-weight:700;">${r.en}</div>
- <div style="color:var(--text-1); font-weight:800; font-size:1.05rem; margin-bottom:6px;">${r.type}</div>
- <div style="color:var(--text-3); font-size:0.76rem; line-height:1.55;">${r.desc}</div>
- </div>
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.PURPLE}; letter-spacing:0.15em; margin-bottom:8px; font-weight:700;">对应需求</div>
- <ul style="margin:0; padding-left:18px; list-style:disc; color:var(--text-1); font-size:0.84rem; line-height:1.7;">
- ${r.items.map((it) => `<li style="margin-bottom:4px;">${it}</li>`).join('')}
- </ul>
- </div>
- ${r.voc ? `<div>
- ${C.renderVocCard(r.voc, { accent: r.color, compact: true, maxChars: 150 })}
- </div>` : ''}
- <div>
- <div class="text-mono text-xs" style="color:${BRAND.JIANG_GREEN}; letter-spacing:0.15em; margin-bottom:8px; font-weight:700;">决策映射</div>
- <div style="padding:10px 12px; background:${BRAND.JIANG_GREEN}08; border:1px solid ${BRAND.JIANG_GREEN}33; border-radius:4px; font-size:0.8rem; line-height:1.6;">
- ${r.action}
- </div>
- </div>
- </div>
- </div>`).join('')}
- </div>
- ${C.renderDecisionList([
- `<strong>必备 P0</strong>:蓝帽 OTC + 无三剂(防腐剂/色素/香精)+ 分龄说明 —— 上市前必做`,
- `<strong>期望 P1</strong>:7 天见效打卡 + 真实临床数据 + 停药不反弹宣传`,
- `<strong>兴奋 P2</strong>:水果咀嚼片 + 分龄礼盒 + 家长社群 —— 溢价来源`,
- `<strong>反向封锁</strong>:不做药盒感 / 不做恐惧营销 / 不做硬广 TVC`,
- ], { title: '落地决策 · KANO 优先级', accent: BRAND.PURPLE, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 4.2 · JTBD · 家长 Functional 功能价值
- // ==========================================================
- function renderSub4_2(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const func = LA.getEvidence(items, {
- contentMatch: /便秘|积食|挑食|腹泻|抗生素|菌群|调理肠胃|肠道|消化不良/,
- minChars: 30, top: 6, seed: 5,
- });
- const funcJobs = [
- { icon: '🚫', title: '解决·便秘', color: BRAND.CORAL,
- voc: func.find((it) => /便秘|便干|几天|憋便|排便/.test(it.content || '')),
- job: '<strong>"孩子好几天才上一次wc,肚子也鼓鼓的"</strong>(合生元 ♥144)', metric: '连服 7-14 天排便通畅率 ≥ 70%' },
- { icon: '🍔', title: '解决·积食', color: BRAND.WARM_ORANGE,
- voc: func.find((it) => /积食|口气|舌苔|肚子胀|不爱吃饭|食欲/.test(it.content || '')),
- job: '<strong>"孩子重度积食了‼️"</strong>(XHS ♥2247)', metric: '舌苔 + 口气 + 食欲改善 7-14 天' },
- { icon: '💊', title: '解决·抗生素后', color: BRAND.TECH_BLUE,
- voc: func.find((it) => /抗生素|消炎药|头孢|阿莫西林|菌群|杀菌/.test(it.content || '')),
- job: '<strong>"抗生素后停后多久吃益生菌?顺序错了白花钱"</strong>(XHS ♥839)', metric: '抗生素后肠道菌群恢复 10-14 天' },
- { icon: '🍚', title: '改善·挑食厌食', color: BRAND.SUNNY_YELLOW,
- voc: func.find((it) => /挑食|饭渣|不爱吃饭|厌食|专注度/.test(it.content || '')),
- job: '<strong>"饭渣孩子 ♥8540 全攻略"</strong>——挑食是脾胃问题不是性格问题', metric: '3-4 周食欲 / 进食量 / 专注度提升' },
- ];
- 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} · JTBD Functional`,
- title: '<span style="color:' + BRAND.TECH_BLUE + ';">家长 Functional</span>:4 个"雇佣乳酸菌素片"干的真实活',
- subtitle: '家长不在意"益生菌",在意<strong>"孩子的 4 个具体问题</strong>"。每个 Job 都对应真实高赞 VOC + 可量化的成功指标。',
- color: BRAND.TECH_BLUE,
- })}
- <div class="grid" style="grid-template-columns:1fr 1fr; gap:18px; margin-top:20px;">
- ${funcJobs.map((j) => `
- <div style="padding:20px 22px; background:var(--bg-1); border:1px solid var(--border); border-left:4px solid ${j.color}; border-radius:var(--radius-md);">
- <div style="display:flex; align-items:center; gap:10px; margin-bottom:12px;">
- <div style="font-size:1.8rem;">${j.icon}</div>
- <div>
- <div style="color:var(--text-1); font-weight:800; font-size:1.08rem;">${esc(j.title)}</div>
- <div class="text-mono text-xs" style="color:${j.color}; letter-spacing:0.1em; margin-top:2px;">JOB-TO-BE-DONE</div>
- </div>
- </div>
- <div style="padding:12px 14px; background:${j.color}08; border-left:3px solid ${j.color}; border-radius:4px; margin-bottom:12px;">
- <div style="color:var(--text-1); font-size:0.88rem; line-height:1.7;">${j.job}</div>
- </div>
- ${j.voc ? C.renderVocCard(j.voc, { accent: j.color, compact: true, maxChars: 160 }) : `<div style="padding:12px; background:var(--bg-2); border-radius:4px; color:var(--text-3); font-size:0.8rem; text-align:center;">—— VOC 数据暂缺 ——</div>`}
- <div style="margin-top:12px; padding:10px 12px; background:${BRAND.JIANG_GREEN}08; border:1px solid ${BRAND.JIANG_GREEN}33; border-radius:4px;">
- <div class="text-mono text-xs" style="color:${BRAND.JIANG_GREEN}; letter-spacing:0.15em; margin-bottom:4px; font-weight:700;">成功指标</div>
- <div style="color:var(--text-1); font-size:0.82rem;">${esc(j.metric)}</div>
- </div>
- </div>`).join('')}
- </div>
- ${C.renderDecisionList([
- `<strong>Functional 话术四句</strong>:便秘通 / 积食消 / 挑食改善 / 抗生素后修复`,
- `<strong>Job-to-be-Done 卡位</strong>:不讲"益生菌好",讲"孩子便秘/积食 14 天改善"`,
- `<strong>度量 KPI</strong>:14 天改善率 / 3 个月续购率 / 家长 NPS`,
- `<strong>内容主题</strong>:XHS"7 天/14 天打卡" + 抖音"孩子前后对比"`,
- ], { title: '落地决策 · Functional 落位', accent: BRAND.TECH_BLUE, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 4.3 · JTBD · 家长 Emotional 情绪价值
- // ==========================================================
- function renderSub4_3(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal, data } = ctx;
- const items = data.items || [];
- const anxiety = LA.getEvidence(items, {
- contentMatch: /焦虑|担心|怕|害怕|急坏|愁坏|破防|心疼|心酸|睡不着|着急/,
- minChars: 25, top: 3, seed: 7,
- });
- const relief = LA.getEvidence(items, {
- contentMatch: /安心|放心|踏实|省心|不用.*操心|解决了|总算|终于|不担心/,
- minChars: 25, top: 3, seed: 11,
- });
- const emoJobs = [
- { title: '化解"带娃生病焦虑"', color: BRAND.CORAL,
- before: '"孩子拉肚子一天 5 次" ♥4312 · "吃饭像打仗" ♥1144',
- after: '"家里有常备的一瓶,半夜不用跑医院"',
- voc: anxiety[0] },
- { title: '化解"混用多品牌焦虑"', color: BRAND.WARM_ORANGE,
- before: '"吃合生元,都说应该吃食品级益生菌,买了肯贝优...八十人说八十样" ♥1',
- after: '"一瓶管一年,不用再对比十几个品牌"',
- voc: anxiety[1] },
- { title: '化解"长期服用焦虑"', color: BRAND.ROSE,
- before: '"乳酸菌有个成分,吃多致癌" 谣言 / "长期吃益生菌的副作用" ♥939',
- after: '"OTC 药品级,江中老国货,长期吃也放心"',
- voc: anxiety[2] },
- { title: '化解"喂药抗拒焦虑"', color: BRAND.BERRY_PINK,
- before: '"喂药像打仗,吐出来半片满手都是" · "一次一板好麻烦"',
- after: '"孩子追着要吃,水果味一板就够两次"',
- voc: relief[0] },
- ];
- 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} · JTBD Emotional`,
- title: '<span style="color:' + BRAND.CORAL + ';">家长 Emotional</span>:从 4 条焦虑到 4 条安心',
- subtitle: '家长买的不只是药,是<strong>一种情绪状态的转移</strong>——从"带娃焦虑睡不着"到"每天一片不操心"。',
- color: BRAND.CORAL,
- })}
- <div class="grid" style="grid-template-columns:1fr 1fr; gap:18px; margin-top:20px;">
- ${emoJobs.map((j) => `
- <div style="padding:20px 22px; background:var(--bg-1); border:1px solid var(--border); border-left:4px solid ${j.color}; border-radius:var(--radius-md);">
- <div style="color:var(--text-1); font-weight:800; font-size:1.08rem; margin-bottom:14px;">${esc(j.title)}</div>
- <div style="display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:center; margin-bottom:14px;">
- <div style="padding:12px 14px; background:${BRAND.CORAL}0A; border:1px solid ${BRAND.CORAL}33; border-radius:4px;">
- <div class="text-mono text-xs" style="color:${BRAND.CORAL}; margin-bottom:4px; font-weight:700;">BEFORE · 焦虑</div>
- <div style="color:var(--text-1); font-size:0.82rem; line-height:1.6;">${j.before}</div>
- </div>
- <div style="color:${j.color}; font-size:1.6rem;">→</div>
- <div style="padding:12px 14px; background:${j.color}0A; border:1px solid ${j.color}33; border-radius:4px;">
- <div class="text-mono text-xs" style="color:${j.color}; margin-bottom:4px; font-weight:700;">AFTER · 安心</div>
- <div style="color:var(--text-1); font-size:0.84rem; line-height:1.6; font-weight:600;">${esc(j.after)}</div>
- </div>
- </div>
- ${j.voc ? C.renderVocCard(j.voc, { accent: j.color, compact: true, maxChars: 160 }) : ''}
- </div>`).join('')}
- </div>
- <div class="fade-up" style="margin-top:24px;">
- ${C.renderInsightHero({
- eyebrow: 'EMOTIONAL PROMISE · 情绪承诺',
- color: BRAND.CORAL,
- title: `<strong>"乳酸菌素片不是治病的药,是<span style='color:${BRAND.JIANG_GREEN};'>一粒让妈妈放心的每日仪式</span>"</strong>——这是情绪价值的共同母题。`,
- subtitle: `广告片不拍产品,拍<em>妈妈看着孩子主动开瓶子那一刻的嘴角</em>——那是真正的情绪价值成交。`,
- })}
- </div>
- ${C.renderDecisionList([
- `<strong>文案主轴</strong>:不讲"益生菌"讲"不操心"—— 带娃一身轻`,
- `<strong>视觉主轴</strong>:每支广告都有"焦虑 → 放下" 的母亲神情转变`,
- `<strong>仪式感设计</strong>:每日一片的开瓶声 = "今日任务完成" 的情绪钩`,
- `<strong>共情社群</strong>:XHS"新手妈妈互助小组" · 抖音"带娃不焦虑打卡"`,
- ], { title: '落地决策 · Emotional 落位', accent: BRAND.CORAL, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 4.4 · JTBD · 儿童 × 家长 Social 社会价值
- // ==========================================================
- function renderSub4_4(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal } = ctx;
- const socialRoles = [
- {
- role: '妈妈圈专业感徽章',
- color: BRAND.BERRY_PINK,
- scenario: '家长群 / 幼儿园接送 / 同事午餐 → "我家娃吃乳酸菌素片,江中的,日常调理很温和"',
- hook: '新手妈妈通过"给孩子吃对的东西"建立妈妈圈专业人设——乳酸菌素片作为 OTC 国货,比合生元进口款更有"懂行的内行感"',
- value: '妈妈圈的<strong>"懂事又理性"</strong>专业标签',
- },
- {
- role: '孩子被羡慕的零食感',
- color: BRAND.SUNNY_YELLOW,
- scenario: '幼儿园午睡后 / 家庭聚会 / 朋友家玩耍 → 孩子从小书包掏出一板咀嚼片 → 其他小朋友围观',
- hook: '儿童的社交信号 = "我有你没有的东西"。水果味独立包装 + 卡通 IP = 孩子的社交货币。家长发现孩子主动要吃 = 复购+口碑双飞',
- value: '孩子群体中的<strong>"被看见 / 被羡慕"</strong>小确幸',
- },
- {
- role: '祖辈送孩子的 "爱意表达"',
- color: BRAND.GOLD,
- scenario: '春节 / 周末探亲 / 节日礼品 → 奶奶给孙子买 / 姥姥给外孙准备',
- hook: '祖辈带娃普遍焦虑"孩子肠胃脾胃"(中式育儿痛点),送礼盒装乳酸菌素片 = "我关心你的根"',
- value: '祖辈 → 孙辈的<strong>"中式关心仪式"</strong>具象化',
- },
- {
- role: '家庭守护者角色',
- color: BRAND.JIANG_GREEN,
- scenario: '夫妻间 / 家人间 → "老婆,我给娃囤了一年份" · "老公记得给娃带一板去幼儿园"',
- hook: '夫妻协作 / 家庭成员间的"对孩子的共同关心"——乳酸菌素片作为家庭常备成为"我们一起守护孩子"的实物锚点',
- value: '家庭关系中的<strong>"共同负责"</strong>具象化',
- },
- ];
- 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} · JTBD Social`,
- title: '<span style="color:' + BRAND.GOLD + ';">Social 社会价值</span>:4 个社交符号 × 家长 + 儿童双视角',
- subtitle: '产品不是孤立存在的——它是家长朋友圈、孩子幼儿园、祖辈代际间的<strong>社交符号道具</strong>。每个符号对应关系 × 场景 × 身份表达。',
- color: BRAND.GOLD,
- })}
- <div class="grid" style="grid-template-columns:1fr 1fr; gap:18px; margin-top:20px;">
- ${socialRoles.map((r) => `
- <div style="padding:20px 22px; background:var(--bg-1); border:1px solid var(--border); border-left:4px solid ${r.color}; border-radius:var(--radius-md);">
- <div class="text-mono text-xs" style="color:${r.color}; letter-spacing:0.15em; margin-bottom:6px; font-weight:700;">SOCIAL ROLE</div>
- <div style="color:var(--text-1); font-weight:800; font-size:1.08rem; margin-bottom:12px;">${esc(r.role)}</div>
- <div style="padding:12px 14px; background:${r.color}08; border-left:3px solid ${r.color}; border-radius:4px; margin-bottom:12px;">
- <div class="text-mono text-xs" style="color:${r.color}; margin-bottom:4px; font-weight:700;">场景剧本</div>
- <div style="color:var(--text-1); font-size:0.84rem; line-height:1.6;">${r.scenario}</div>
- </div>
- <div style="padding:10px 12px; background:${BRAND.PURPLE}0A; border-radius:4px; margin-bottom:12px;">
- <div class="text-mono text-xs" style="color:${BRAND.PURPLE}; margin-bottom:4px; font-weight:700;">VOC HOOK</div>
- <div style="color:var(--text-1); font-size:0.8rem; line-height:1.55;">${r.hook}</div>
- </div>
- <div style="padding:10px 12px; background:${BRAND.JIANG_GREEN}08; border:1px solid ${BRAND.JIANG_GREEN}33; border-radius:4px;">
- <div class="text-mono text-xs" style="color:${BRAND.JIANG_GREEN}; margin-bottom:4px; font-weight:700;">身份标签</div>
- <div style="color:var(--text-1); font-size:0.84rem;">${r.value}</div>
- </div>
- </div>`).join('')}
- </div>
- ${C.renderDecisionList([
- `<strong>妈妈圈营销</strong>:XHS"新手妈妈 OTC 选择" × 抖音育儿 KOL 测评`,
- `<strong>孩子社交货币</strong>:分龄卡通 IP 联名(喜羊羊 / 宝宝巴士 / 小猪佩奇)`,
- `<strong>祖辈礼品带</strong>:节日礼盒 ¥198-298 · "送孙子的健康"`,
- `<strong>家庭共情</strong>:微信小程序"全家健康打卡"家长社群`,
- ], { title: '落地决策 · 4 个社交符号产品化', accent: BRAND.GOLD, columns: 2 })}
- </div>
- </section>`;
- }
- // ==========================================================
- // 4.5 · 决策优先级·SKU / 话术 / 包装映射
- // ==========================================================
- function renderSub4_5(ctx) {
- const { chapter: c, subIdx, sub, slideNum, slideTotal } = ctx;
- 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} · 决策优先级`,
- title: '<span style="color:' + BRAND.SAGE + ';">KANO × JTBD</span> → <span style="color:' + BRAND.JIANG_GREEN + ';">SKU / 话术 / 包装 / 价格</span> 映射',
- subtitle: 'KANO 5 类 × JTBD 3 维 = <strong>15 项具体决策</strong>,每一项在下游 SKU / 话术 / 包装 / 价格上都有直接映射。',
- color: BRAND.SAGE,
- })}
- <div style="margin-top:20px;">
- ${C.renderCompareTable({
- title: 'DECISION MATRIX · 决策矩阵',
- headers: ['维度', 'Functional 功能', 'Emotional 情绪', 'Social 社会'],
- rows: [
- [{ html: '<strong>必备</strong>', color: BRAND.CORAL, bold: true },
- { html: 'OTC 合规 × 成分表公开', color: 'var(--text-1)' },
- { html: '每天吃得放心', color: 'var(--text-1)' },
- { html: '可以光明正大送人', color: 'var(--text-1)' }],
- [{ html: '<strong>期望</strong>', color: BRAND.LACTIC_MINT, bold: true },
- { html: '便秘/积食/挑食 14 天见效', color: 'var(--text-1)' },
- { html: '带娃不焦虑 × 长期养护', color: 'var(--text-1)' },
- { html: '妈妈圈"懂行"标签', color: 'var(--text-1)' }],
- [{ html: '<strong>兴奋</strong>', color: BRAND.JIANG_GREEN, bold: true },
- { html: '7 天打卡包 + 专家答疑', color: 'var(--text-1)' },
- { html: '分龄仪式感 + 家长社群', color: 'var(--text-1)' },
- { html: '卡通 IP 联名 + 送礼礼盒', color: 'var(--text-1)' }],
- [{ html: '<strong>无差异</strong>', color: BRAND.SAGE, bold: true },
- { html: '避免多成分堆砌', color: BRAND.SAGE },
- { html: '避免过度情绪包装', color: BRAND.SAGE },
- { html: '避免进口营销套路', color: BRAND.SAGE }],
- [{ html: '<strong>反向</strong>', color: BRAND.WINE_RED, bold: true },
- { html: '✗ 剂量夸张 / 虚假宣称', color: BRAND.WINE_RED },
- { html: '✗ 恐惧营销 / 吓坏家长', color: BRAND.WINE_RED },
- { html: '✗ 药盒感 / 硬广轰炸', color: BRAND.WINE_RED }],
- ],
- accent: BRAND.SAGE,
- })}
- </div>
- <div class="grid" style="grid-template-columns:1fr 1fr 1fr 1fr; gap:14px; margin-top:24px;">
- <div style="padding:18px; background:${BRAND.CORAL}08; border:1px solid ${BRAND.CORAL}33; border-radius:var(--radius-md);">
- <div class="text-mono text-xs" style="color:${BRAND.CORAL}; margin-bottom:8px; font-weight:700;">SKU 映射</div>
- <div style="color:var(--text-1); font-size:0.84rem; line-height:1.7;">
- · 日常瓶 60 片 ¥58<br/>
- · 独立板装 2×14 ¥45<br/>
- · 分龄礼盒(3 规格)¥128<br/>
- · 国礼装 ¥298<br/>
- · 入园装 30 板 ¥75
- </div>
- </div>
- <div style="padding:18px; background:${BRAND.LACTIC_MINT}08; border:1px solid ${BRAND.LACTIC_MINT}33; border-radius:var(--radius-md);">
- <div class="text-mono text-xs" style="color:${BRAND.LACTIC_MINT}; margin-bottom:8px; font-weight:700;">话术映射</div>
- <div style="color:var(--text-1); font-size:0.84rem; line-height:1.7;">
- · 儿童肠道养护 OTC<br/>
- · 告别瓶瓶罐罐<br/>
- · 江中老国货我放心<br/>
- · 日常吃每天一片<br/>
- · 家长+孩子都爱
- </div>
- </div>
- <div style="padding:18px; background:${BRAND.SUNNY_YELLOW}08; border:1px solid ${BRAND.SUNNY_YELLOW}33; border-radius:var(--radius-md);">
- <div class="text-mono text-xs" style="color:${BRAND.SUNNY_YELLOW}; margin-bottom:8px; font-weight:700;">包装映射</div>
- <div style="color:var(--text-1); font-size:0.84rem; line-height:1.7;">
- · 去药盒化 轻养生风<br/>
- · 卡通 IP × 分龄配色<br/>
- · 草莓/酸奶/橙子三口味<br/>
- · 独立板装带日期<br/>
- · 蓝帽子 OTC 显眼
- </div>
- </div>
- <div style="padding:18px; background:${BRAND.JIANG_GREEN}08; border:1px solid ${BRAND.JIANG_GREEN}33; border-radius:var(--radius-md);">
- <div class="text-mono text-xs" style="color:${BRAND.JIANG_GREEN}; margin-bottom:8px; font-weight:700;">价格映射</div>
- <div style="color:var(--text-1); font-size:0.84rem; line-height:1.7;">
- · 入门带:¥45-75<br/>
- · 主销带:¥128-198<br/>
- · 礼品带:¥298-498<br/>
- · vs 合生元超金:-50%<br/>
- · vs 妈咪爱:+30% 溢价
- </div>
- </div>
- </div>
- ${C.renderDecisionList([
- `<strong>P0 必备</strong>:蓝帽 OTC + 成分无三剂 + 分龄标注`,
- `<strong>P1 期望</strong>:14 天见效话术 + 临床数据 + 长期可服`,
- `<strong>P2 兴奋</strong>:卡通 IP 联名 + 分龄礼盒 + 家长社群`,
- `<strong>反向封锁</strong>:禁止药盒感 + 禁止恐惧营销 + 禁止硬广轰炸`,
- ], { title: '落地决策 · 5 类需求执行优先级', accent: BRAND.SAGE, columns: 2 })}
- </div>
- </section>`;
- }
- module.exports = {
- 'kano-1': renderSub4_1,
- 'kano-2': renderSub4_2,
- 'kano-3': renderSub4_3,
- 'kano-4': renderSub4_4,
- 'kano-5': renderSub4_5,
- };
|