import React, { useState, useEffect, useRef } from 'react';
import { Play, ArrowRight, Zap, Shield, Globe, Database, Activity, Cpu, Menu, X, ChevronRight, Server, Layers, Users, Rocket, Lock, BarChart3, Code, Briefcase, ExternalLink, ChevronLeft, CheckCircle2, Award, FileText, PieChart, Coins, FileCheck, Brain, LayoutGrid, Settings, TrendingUp, ChevronDown, FileCode, Monitor, Info, Truck, MessageCircle, Leaf, Zap as EnergyIcon, Beaker, Building2, Landmark, GraduationCap, Smartphone, CreditCard, Search, Calendar, Newspaper, Mic2, Handshake } from 'lucide-react';

import html2canvas from 'html2canvas';
//导入依赖，用于“转发至微信”处 DOM 转 Canvas，以实现自动将页面截图存入剪切板
// 保留原有导入的组件（X、CheckCircle2、MessageCircle等）
// ... 其他组件逻辑（selectedProduct、setSelectedProduct、products、codeImg等）

import reactLogo from './assets/logo.png'
import codeImg from "./assets/code.jpg"
// 产品
import sjzcglImg from "./assets/sjzcgl.png"
import gscxImg from "./assets/gscx.png"
import kxsjkjImg from "./assets/kxsjkj.png"
import szjhxtImg from "./assets/szjhxt.png"
import jtlwImg from "./assets/jtlw.png"
import zhgyptImg from "./assets/zhgypt.png"
// 场景
import xdfkImg from "./assets/xdfk.png"
import ABSImg from "./assets/ABS.png"
import sjzcImg from "./assets/sjzc+.png"
import jtlycImg from "./assets/jtlyc.jpg"
import szshImg from "./assets/szsh.png"
import dkjjImg from "./assets/dkjj.png"
import clPPPImg from "./assets/clPPP.png"
import gsglImg from "./assets/gsgl.png"
// 证书
import gssImg from "./assets/gss.jpg"
import bfImg from "./assets/bf.png"
import guissImg from "./assets/guiss.png"
import hnsjsImg from "./assets/hnsjs.JPEG"
import sssImg from "./assets/sss.jpg"
import shensImg from "./assets/shenss.png"

// 我们
import mshqImg from "./assets/mshq.jpg"
import bdpxImg from "./assets/bdpx.jpg"
import flltImg from "./assets/fllt.jpg"
import jjnhImg from "./assets/jjnh.png"
import msqyImg from "./assets/msqy.jpeg"
import sjyshjImg from "./assets/sjyshj.png"
import ssxjdImg from "./assets/ssxjd.jpg"
import phxljImg from "./assets/phxlj.jpeg"
import gzbImg from "./assets/gzb.png"
import kxkjImg from "./assets/kxkj.png"
import cylmImg from "./assets/cylm.jpg"
import szstImg from "./assets/szst.jpg"
import djzsImg from "./assets/djzs.jpg"
// --- 1. Shared Data Definitions (Global Scope) ---
const certifications = [
    "国家高新技术企业",
    "中关村高新技术企业",
    "中关村瞪羚企业",
    "北京市“专精特新”中小企业",
    "CMMI 三级认证",
    "ISO9001 质量管理体系",
    "DCMM 数据管理成熟度二级",
    "工程咨询单位甲级资信"
  ];

const associations = [
    "中国中小企业协会高新分会理事单位",
    "中国公路学会投融资分会理事单位",
    "中国交通运输协会城市交通分会理事单位",
    "中关村区块链产业联盟理事单位",
    "可信数据空间发展联盟成员单位",
    "香港RWA全球产业联盟发起单位",
    "成都高新区金融科技协会理事单位",
    "北京宁波商会副会长单位"
];

const Sjgxdjpt = () => {
  return (
    <div className="w-full max-w-6xl mx-auto py-12 relative">
      {/* 标题栏 */}
      <div className="mb-8 flex flex-col md:flex-row md:items-end justify-between gap-4">
        <div>
          <div className="flex items-center gap-2 mb-2">
            <div className="w-1 h-4 bg-[#00FFC2]"></div>
            <h3 className="text-sm uppercase tracking-widest text-gray-400 font-medium">数据要素生态</h3>
          </div>
          <h2 className="text-3xl md:text-4xl font-bold text-white">数据供需对接平台</h2>
        </div>
      </div>

      {/* 主内容区 */}
      <div className="bg-[#1a1c23]/50 border border-white/5 rounded-xl overflow-hidden">
        <div className="grid grid-cols-1 lg:grid-cols-5 gap-0">
          {/* 左侧：平台简介 */}
          <div className="lg:col-span-3 p-6 md:p-8 flex flex-col justify-center">
            <div className="space-y-6">
              <div>
                <h3 className="text-xl font-bold text-[#00FFC2] mb-3">平台核心价值</h3>
                <p className="text-gray-300 leading-relaxed">
                  数据供需对接平台作为全行业专业数据资源对接与价值转化的枢纽，致力于打破数据孤岛，
                  构建"需求方-数据资源-供给方"的全链路生态体系。通过标准化的数据治理与安全流通机制，
                  实现数据资源的精准匹配与高效交易，盘活全行业数据资产，释放数据要素价值。
                </p>
              </div>

              <div>
                <h3 className="text-xl font-bold text-[#00FFC2] mb-3">核心功能</h3>
                <ul className="grid grid-cols-1 sm:grid-cols-2 gap-3 text-gray-300">
                  <li className="flex items-start gap-2">
                    <CheckCircle2 className="w-5 h-5 text-[#00FFC2] shrink-0 mt-0.5" />
                    <span>多维度数据需求智能匹配</span>
                  </li>
                  <li className="flex items-start gap-2">
                    <CheckCircle2 className="w-5 h-5 text-[#00FFC2] shrink-0 mt-0.5" />
                    <span>标准化数据产品展示与交易</span>
                  </li>
                  <li className="flex items-start gap-2">
                    <CheckCircle2 className="w-5 h-5 text-[#00FFC2] shrink-0 mt-0.5" />
                    <span>隐私计算保障下的数据安全流通</span>
                  </li>
                  <li className="flex items-start gap-2">
                    <CheckCircle2 className="w-5 h-5 text-[#00FFC2] shrink-0 mt-0.5" />
                    <span>全流程交易监管与合规审计</span>
                  </li>
                  <li className="flex items-start gap-2">
                    <CheckCircle2 className="w-5 h-5 text-[#00FFC2] shrink-0 mt-0.5" />
                    <span>数据资产价值评估与定价服务</span>
                  </li>
                  <li className="flex items-start gap-2">
                    <CheckCircle2 className="w-5 h-5 text-[#00FFC2] shrink-0 mt-0.5" />
                    <span>行业数据供需趋势分析与洞察</span>
                  </li>
                </ul>
              </div>

              {/* 跳转按钮 */}
              <div className="pt-4">
                <a 
                  href="/data.html" 
                  className="inline-flex items-center gap-2 bg-[#00FFC2] text-black font-bold px-6 py-3 rounded-md hover:bg-[#00d9a8] transition-colors group"
                >
                  <span>访问数据供需对接平台</span>
                  <ArrowRight className="w-4 h-4 group-hover:translate-x-1 transition-transform" />
                </a>
              </div>
            </div>
          </div>

          {/* 右侧：平台可视化展示 */}
          <div className="lg:col-span-2 bg-[#15171e] p-6 flex items-center justify-center">
            <div className="w-full max-w-md relative">
              {/* 平台架构示意图 */}
              <div className="w-full aspect-square rounded-lg bg-gradient-to-br from-[#1a1c23] to-[#0f1115] border border-white/10 p-4 relative overflow-hidden">
                {/* 装饰性网格背景 */}
                <div className="absolute inset-0 opacity-10" style={{
                  backgroundImage: 'linear-gradient(rgba(0, 255, 194, 0.3) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 255, 194, 0.3) 1px, transparent 1px)',
                  backgroundSize: '20px 20px'
                }}></div>
                
                {/* 中心枢纽 */}
                <div className="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-32 h-32 bg-[#00FFC2]/20 rounded-full flex items-center justify-center border border-[#00FFC2]/50 backdrop-blur-sm z-10">
                  <div className="text-center">
                    <div className="text-[#00FFC2] font-bold text-sm mb-1">数据交易枢纽</div>
                    <div className="text-white text-xs">供需智能匹配</div>
                  </div>
                </div>
                
                {/* 外围节点 */}
                <div className="absolute top-1/4 left-1/4 w-20 h-10 bg-[#1a1c23] rounded-md border border-[#00B8D9]/50 flex items-center justify-center z-20">
                  <span className="text-[#00B8D9] text-xs font-medium">需求方</span>
                </div>
                <div className="absolute top-1/4 right-1/4 w-20 h-10 bg-[#1a1c23] rounded-md border border-[#00B8D9]/50 flex items-center justify-center z-20">
                  <span className="text-[#00B8D9] text-xs font-medium">供给方</span>
                </div>
                <div className="absolute bottom-1/4 left-1/4 w-20 h-10 bg-[#1a1c23] rounded-md border border-[#00B8D9]/50 flex items-center justify-center z-20">
                  <span className="text-[#00B8D9] text-xs font-medium">数据资产</span>
                </div>
                <div className="absolute bottom-1/4 right-1/4 w-20 h-10 bg-[#1a1c23] rounded-md border border-[#00B8D9]/50 flex items-center justify-center z-20">
                  <span className="text-[#00B8D9] text-xs font-medium">服务支撑</span>
                </div>
                
                {/* 连接线条 */}
                <svg className="absolute inset-0 w-full h-full z-0" xmlns="http://www.w3.org/2000/svg">
                  <path d="M120 80 L160 120" stroke="#00FFC2" strokeWidth="0.5" strokeDasharray="3 2" />
                  <path d="M200 80 L160 120" stroke="#00FFC2" strokeWidth="0.5" strokeDasharray="3 2" />
                  <path d="M120 200 L160 160" stroke="#00FFC2" strokeWidth="0.5" strokeDasharray="3 2" />
                  <path d="M200 200 L160 160" stroke="#00FFC2" strokeWidth="0.5" strokeDasharray="3 2" />
                </svg>
              </div>
              
              {/* 平台数据指标 */}
              <div className="grid grid-cols-3 gap-2 mt-4">
                <div className="bg-[#1a1c23] rounded-md p-2 text-center border border-white/5">
                  <div className="text-[#00FFC2] font-bold text-lg">100万+</div>
                  <div className="text-gray-400 text-xs">数据资源</div>
                </div>
                <div className="bg-[#1a1c23] rounded-md p-2 text-center border border-white/5">
                  <div className="text-[#00FFC2] font-bold text-lg">5000+</div>
                  <div className="text-gray-400 text-xs">活跃机构</div>
                </div>
                <div className="bg-[#1a1c23] rounded-md p-2 text-center border border-white/5">
                  <div className="text-[#00FFC2] font-bold text-lg">98%</div>
                  <div className="text-gray-400 text-xs">匹配成功率</div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  );
};

const scenarios = [
  { 
    id: 1,
    title: '信贷风控', 
    icon: <BarChart3 className="w-6 h-6 md:w-8 md:h-8 text-emerald-300" />, 
    desc: '依托明树数据海量投融资项目库，为金融机构提供全流程信贷风控与投资决策支持。',
    details: '以穿透式视角，提供项目、主体业绩及地方财政债务等多维数据，协助金融机构实时掌握融资主体的实际履约能力和区域潜在财政风险。客户应用本数据资源，可实现贷前精准尽调、贷中动态预警和贷后合规核查，有效降低信贷不良率，保障资产安全。',
    stats: ['覆盖项目 100万+', '风险预警 准确率95%', '服务机构 50+'],
    image: xdfkImg,
    solutions: [
      { title: '尽调风控包', desc: '集成项目全生命周期、企业信用及经营业绩数据，为金融机构贷前尽调提供一站式、穿透式的数据支撑，实现交易真实性与合规性的快速验证。' },
      { title: '地方债风险智评', desc: '通过量化评估区域经济实力、财政状况及债务负担，提供精准的区域信贷风险分级与警示，实现前置化风险管理。' },
      { title: '主体风险动态监测', desc: '对潜在项目、在建项目和相关企业的异常行为进行持续动态监测，捕捉舆情、法律、经营等风险变动，实现风险事件的预警。' }
    ],
    cases: [
      { title: '中国农业发展银行', desc: '提供多维数据定制化数据接口，实现了信贷业务全流程的自动化数据校验与风险评估，有力支持了其信贷管理业务的科学决策和精准授信。' },
      { title: '华泰证券股份有限公司', desc: '深度挖掘基建投融资数据价值，提供项目债券承销风险的精准分析依据，并辅助其区域投资战略的制定。' },
      { title: '平安银行股份有限公司', desc: '提供区域财政债务评估的模型以及关键指标，指导其制定区域信贷政策及风险防控报告。' }
    ]
  },
  { 
    id: 2,
    title: '数据资产ABS', 
    icon: <FileText className="w-6 h-6 md:w-8 md:h-8 text-blue-300" />, 
    desc: '挖掘企业数据价值，设计交易结构，助力发行数据资产证券化产品。',
    details: '数据资产 ABS 是数字经济下的创新金融工具，核心是将合规优质的数据资产转化为稳定现金流，经结构化设计发行标准化证券。通过盘活企业沉淀数据，开辟全新融资渠道。该业务无需传统抵押物，融资成本低、效率高，既能优化企业财务结构，又能实现数据价值显性化，能为轻资产及数据密集型企业提供高效融资解决方案，也成为地方国企资源资产化进而证券化的重要途径。',
    stats: ['资产盘活新路径', '融资成本低', '数据价值显性化'],
    image: ABSImg,
    solutions: [
      { title: '合规筛选与权属确权服务', desc: '帮助企业识别并筛选具有商业价值、权属清晰、合规的数据资产；并通过数据交易所等完成权属登记和法律确认。' },
      { title: '值评估与交易结构增信方案', desc: '对数据资产进行价值评估，进行信用增级与分层打包等交易结构设计。' },
      { title: '证券化申报评级与上市发行协同', desc: '与证券公司一起帮助企业完成申报评级和上市发行。' },
      { title: '存续期动态监控与风控解决方案', desc: '提供产品存续期管理科技金融解决方案，动态监控专项计划里的资产合规及资产价格，确保产品存续期的安全可控。' }
    ]
  },
  { 
    id: 3,
    title: '数据资产+融资租赁', 
    icon: <Coins className="w-6 h-6 md:w-8 md:h-8 text-yellow-300" />, 
    desc: '创新“数据资产入表+售后回租”模式，拓宽企业融资渠道。',
    details: '城投公司沉淀的公共数据资源，是数字经济时代极具价值的 “隐形资产”。我们创新性地将这类沉睡数据类比房产、机器设备等有形资产，通过 “售后回租”“直租” 等成熟融资租赁模式，协助城投公司实现数据资源向经营性资产的转化，让沉淀于存储系统的公共数据变为可落地的合规资金支持，赋能企业高质量发展。',
    stats: ['融资模式 创新', '盘活 沉睡资产', '资金用途 灵活'],
    image: sjzcImg,
    solutions: [
      { title: '数据入表增信 优化财务结构', desc: '协助城投公司完成公共数据资产的合规确权与价值评估，实现数据资产正式入表，直接扩充企业总资产规模。同时有效降低资产负债率，改善财务报表质量，为企业后续信用评级提升、债券发行等资本运作提供坚实支撑。' },
      { title: '存量资产盘活 注入持续现金流', desc: '通过专业化融资租赁方案设计，将城投公司的数据资产转化为可流通的金融资产。无需改变数据实际使用场景，即可通过 “售后回租” 等模式快速回笼资金，让原本闲置的数字资源持续产生稳定现金流，高效盘活存量资产价值。' },
      { title: '驱动业务转型 构建数据运营生态', desc: '以数据资产盘活为切入点，倒逼城投公司摆脱对 “土地财政” 的依赖，向 “数据财政” 转型。助力企业建立标准化数据采集、治理、运营体系，培育真实可持续的数据服务业务，形成 “数据 - 资产 - 收益” 的良性循环，打造数字经济时代的核心竞争力。' }
    ]
  },
  { 
    id: 4,
    title: '交通量预测和OD分析', 
    icon: <Truck className="w-6 h-6 md:w-8 md:h-8 text-orange-300" />, 
    desc: '基于多源大数据的交通流精准预测与起止点（OD）分析，赋能交通规划。',
    details: '融合货车轨迹数据、门架数据、手机信令数据、收费站数据、交通调查与社会经济信息，利用交通模型与算法构建基于竞争路径的交通量预测体系。通过分析车辆在项目区间的主要竞争路径、刻画出行特征并预测未来交通量变化趋势，为新建、改扩建收费公路项目的投资决策提供量化依据，显著提升项目评估的科学性与结果的可靠性。',
    stats: ['预测精度更高', '样本覆盖路网更广', 'OD还原更精准'],
    image: jtlycImg,
    solutions: [
      { title: '多源交通数据融合', desc: '融合轨迹、门架、手机信令、收费站、交通调查和社会经济等多源数据，为后续分析提供数据基础。' },
      { title: '竞争路径与成本分析', desc: '基于现状路网与车辆行为特征，分析主要竞争路径并计算相对出行成本。' },
      { title: '交通量预测模型构建', desc: '通过 Logit 分担模型及趋势增长模型构建预测体系，实现对未来年交通量的预测。' },
      { title: '通行费收入测算', desc: '根据预测交通量、收费标准及优惠措施（如ETC、节假日等），测算项目收益。' }
    ],
    cases: [
      { title: '江西省弋阳至南丰高速公路；国道108线太原过境段公路；甘肃省G0611张汉高速赛郎段与S45碌久高速尕玛段等', desc: '通过多源交通数据融合、竞争路径分析及交通量预测模型构建，实现了对未来交通需求与收费收益的精准测算，有效支撑项目可行性研究与投资决策，并顺利通过股份公司投委会审议，成果在实际工程决策中得到充分验证。' }
    ]
  },
  { 
    id: 5,
    title: '地方政府“三资三化”', 
    icon: <Globe className="w-6 h-6 md:w-8 md:h-8 text-teal-300" />, 
    desc: '聚焦国有资源、资产、资金的盘活与运作，推动资源资产化、资产资本化、资本证券化。',
    details: '聚焦国有“三资”（资源、资产、资金）低效闲置痛点与融资平台转型需求，我们提供从基础清查到资源落地的全流程咨询服务，通过专业化运作激活“三资”价值，推动融资平台实现市场化转型，最终构建“资产-债务-投资”的良性循环生态。',
    stats: ['资源深度盘活', '化债全新路径', '财政提质增效'],
    image: szshImg,
    solutions: [
      { title: '“三资”清查确权与动态管理体系搭建', desc: '全面开展土地、矿产、数据等六类国有资源，实物资产、特许经营权等五类国有资产及企业闲置资金的清查梳理工作。精准完成各类“三资”的权属界定、价值评估，建立权属清晰、价值明确的动态管理台账，为后续盘活与转型工作筑牢数据基础。' },
      { title: '“一企一策”定制整合重组与转型路径', desc: '基于各融资平台实际情况，量身设计整合重组方案，助力平台稳步剥离政府融资职能。同步推动现代企业制度建设，完善法人治理结构、市场化运营机制与绩效考核体系，实现从“政府附属”到“独立市场主体”的转型。' },
      { title: '多元融资工具赋能资产价值变现', desc: '结合“三资”特性与平台需求，针对性提供REITs（基础设施领域不动产投资信托基金）、资产证券化、特许经营、融资租赁等多元化融资方案。通过结构化设计挖掘资产潜在价值，拓宽融资渠道，实现存量资产的高效变现与循环利用。' },
      { title: '政策合规保障与金融资源精准对接', desc: '实时对接国家及地方关于“三资”管理、融资平台转型的最新政策要求，确保所有盘活与转型动作符合市场化、法治化标准。同时发挥资源整合优势，协助平台对接银行、券商、基金等各类金融机构，打通资金对接“最后一公里”，保障转型与盘活工作落地见效。' }
    ],
    cases: [
      { title: '兰州市道路停车泊位及部分公共停车场市政公共资源有偿使用实施方案' }
    ]
  },
  { 
    id: 6,
    title: '低空经济', 
    icon: <Rocket className="w-6 h-6 md:w-8 md:h-8 text-purple-300" />, 
    desc: '聚焦数据要素，为地方政府与国企打造低空经济一揽子解决方案，助力地方低空经济布局与数据资产价值提升。',
    details: '明树数据聚焦数据要素、深耕城市并服务国企，为地方政府打造低空经济一揽子解决方案，涵盖低空经济产业规划、基础设施投融资服务、数字化场景构建与落地实施、平台公司业务规划咨询、数据资产化服务及公共数据授权运营等核心模块，助力地方低空经济布局与数据资产价值提升。',
    stats: ['空域数字孪生', '航路动态规划', '多源数据融合'],
    image: dkjjImg,
    solutions: [
      { title: '低空经济产业规划', desc: '结合最新热点产业方向，理清城市产业发展核心资源，对接产业链主企业，为城市编制产业规划。' },
      { title: '低空基础设施投融资服务', desc: '依托明树自建全国领先投融资数据平台，提供各类投资项目策划、前期论证、方案编制和资金申报工作，包括不限于专项债、超长国债、中央预算申报、PPP、特许经营、EOD、EPC+O、F+EPC等。' },
      { title: '低空经济数字化场景', desc: '依托明树团队全国50+智慧城市和相关领域案例经验，以价值场景为导向构建符合城市特点的数字化应用场景及技术架构。' },
      { title: '低空经济数字化落地实施', desc: '依托明树自研的低代码平台，提供标准数字化产品交付和软件定制开发服务，有投资项目全周期管理平台、交通大数据平台、智慧停车运营平台、低空飞行调度平台、智慧农业管理平台等多项成熟产品。' },
      { title: '平台公司低空经济业务规划', desc: '在新业态、新场景构建过程中，为地方国企的战略定位、业务选择、商业模式、融资化债及国企数字化转型提供专业咨询服务。' },
      { title: '低空经济数据资产化服务', desc: '依托「明树智数」数据资产管理运营平台，提供企业数据资产化、数据产品开发、数据治理、数据交易和以数据资产为基础的各类融资创新服务。' },
      { title: '公共数据授权运营', desc: '基于沉淀和归集的公共数据，持续增加城市运营场景库，推进公共数据资产的开发利用，不断提升公共数据资产价值。' }
    ],
    cases: [
      { title: '某市“低空+经济城市综合数据资产', desc: '“低空+经济城市综合数据资产”在上海数据交易所挂牌并启动融资。该资产包内包括低空二维影像地图数据、低空三维模型地图数据、无人机视频数据等，在“低空+旅游”“低空+物流”等多维度有着丰富的应用场。' },
      { title: '某市应急巡查示范项目', desc: '利用低空数据融合技术，提升城市应急响应速度与效率。' }
    ]
  },
  { 
    id: 7,
    title: '存量PPP项目', 
    icon: <Layers className="w-6 h-6 md:w-8 md:h-8 text-cyan-300" />, 
    desc: '提供政府和社会资本合作（PPP）项目全生命周期管理咨询服务，提升项目运行质量效益。',
    details: '依托存量PPP项目政策管理要求，为客户提供PPP项目全生命周期管理咨询服务，进而规范政府和社会资本合作（PPP）存量项目建设和运营，提升项目运行质量效益，持续提高公共服务供给水平。',
    stats: ['履约 实时监管', '绩效 科学评价', '整改 合规落地'],
    image: clPPPImg,
    solutions: [
      { title: '项目再谈判', desc: '为政府、社会资本方提供存量PPP项目的系统性优化方案，包括优化合同条款、搭建财务测算模型、合规性提升措施、谈判策略支持、全过程跟踪谈判与补充协议编制。' },
      { title: '项目绩效评价', desc: '结合行业管理要求，优化项目绩效评价指标体系，制定项目绩效评价工作方案，组织开展绩效评价工作，确保项目公司按合同约定提供符合相关质量和标准要求的公共服务。' },
      { title: '项目中期评估', desc: '依据PPP项目合同，结合项目绩效评价情况，对项目前期工作程序、财务投资情况、项目管理情况、项目产出效果分析等进行深度分析，全面评估项目是否实现“物有所值”的目标。' },
      { title: '项目后评价', desc: '按照发改委对重大项目投资后评价要求，对项目前期决策、项目建设准备和实施情况、项目运行情况、项目效益效果、项目目标及可持续性进行总结和评价，提高投资决策水平和投资效益，加强项目全生命周期管理。' }
    ],
    cases: [
      { title: '新疆乌鲁木齐市交通运输局规范和优化PPP项目咨询服务' },
      { title: '北京轨道交通16号线项目再谈判咨询' },
      { title: '四川省成都市简州新城城市综合开发运营PPP项目管理咨询服务' },
      { title: '新津区红岩污水处理厂建设期绩效评价咨询' },
      { title: '宣汉县南坝新城基础设施建设PPP项目—龙驹坝大桥项目建设期绩效评价' },
      { title: '新疆交投集团固定资产投资项目投后评价体系构建与存量项目优化研究应用'}
    ]
  },
  { 
    id: 8,
    title: '高速公路引流增收', 
    icon: <TrendingUp className="w-6 h-6 md:w-8 md:h-8 text-red-300" />, 
    desc: '运用大数据差异化收费与数字化营销，提升路网流量与营收。',
    details: '高速公路引流增收业务是为高速公路运营方（各省交投、央企）提供基于多源数据决策的全流程方案，方案涵盖高速公路差异化收费政策、出行会员研究、大客户以量定价等，通过分析路网空间特征、时间特征、会员特征等，实现对目标车流精准引流、优化服务提升价值转化、多元协同拓展收益渠道等多项目标，在平衡高速公路与竞争普通公路车流分布的同时，提升运营公司收入，优化司机综合出行成本与公众出行体验，提升高速公路资源使用率与高速出行用户通行粘性，挖掘服务附加值，最终构建可持续的运营增收长效机制。',
    stats: ['车流 显著提升', '营收 逆势增长', '营销 精准触达'],
    image: gsglImg,
    solutions: [
      { title: '高速公路差异化收费政策', desc: '分析高速路网与竞争公路车辆的空间特征、时间特征、距离分布等、基于三部委六类基本差异化收费政策给出符合项目特征的精准差异化收费方案：包括基于行驶距离“递远递减”、分路段+分收费站+分车型的组合差异化等多种方案。' },
      { title: '高速公路出行会员研究', desc: '基于高速收费数据、高速出行平台数据等多源数据对高速出行用户进行细分，设计基于价值、活跃度、忠诚度等多维度的用户画像，构建权益矩阵与增值权益，基于用户框架设定积分运营机制，设计风险管控并测算运营成本，展开会员营销活动并对运营效果进行评估，在效果评估与用户体系不断迭代的过程中形成全流程会员出行方案。' },
      { title: '“以量定价”大客户', desc: '主要针对行驶在高速公路的运输企业、煤炭化工企业为大客户用户对象，通常对具有一定规模的车队展开公路出行特征分析，在企业调研的基础上设计精准优惠方案。方案包括企业特征、出行特征、成本分析、增收测算、风险评估等，在方案确定后协助运营方与相关企业开展商务谈判，确定大客户名单后定期开展效果评估，同时对其他潜在客户开展持续跟进，不断扩大客户群体规模。' }
    ],
    cases: [
      { title: '甘肃省高速公路差异化收费政策调整及实施方案研究' },
      { title: '广西高速公路差异化收费政策实施情况评估和调整' },
      { title: '福建高速差异化收费实施效果评估' },
      { title: '甘肃敦当高速公路差异化收费实施方案研究' },
      { title: '枣潜高速公路差异化收费实施方案研究' },
      { title: '广东汕湛高速大客户研究方案' },
      { title: '湖北交投科技发展有限公司沪渝高速拥堵研判与安全治理决策分析（含会员方案）'}
    ]
  }
];

const services = {
  consulting: {
    title: "专业咨询",
    icon: <Briefcase className="w-5 h-5 md:w-6 md:h-6" />,
    desc: "明树数据深耕行业多年，提供从投融资规划、项目管理到数字化转型的全方位专家咨询服务。",
    groups: [
      {
        title: "投融资咨询",
        items: [
          { name: "投融资规划", desc: "基于系统性政策解析（包括国家财政政策、行业监管动态及地方发展规划）与行业趋势研判（涵盖宏观经济周期、区域产业布局及市场竞争格局），通过多维度可行性论证（含财务模型搭建、现金流压力测试、敏感性分析），科学规划投融资模式（如 PPP、专项债、特许经营等）与建设时序，为客户提供覆盖项目策划、融资结构设计、风险管控的全周期投融资解决方案。" },
          { name: "资金申报", desc: "【专项债】：基于专项债支持领域及地方建设需求进行项目谋划，编制资金平衡方案、绩效评估方案、法律意见书、财务评价报告，积极争取专项债资金支持，解决地方建设资金缺口。服务周期短、成功率高，累计助力多地获批过亿额度。【超长期国债】：围绕国家超长期特别国债重点支持的“两重”“两新”领域，结合地方资源禀赋与建设需求，策划符合申报条件的重大项目包。服务涵盖《资金申请报告》编制（含项目必要性、经济社会效益）、申报材料合规性审核及评审答辩辅导。" },
          { name: "特许经营（PPP新机制）", desc: "项目特许经营全过程咨询服务，包括特许经营方案编制、报批特许经营方案，拟定投资协议、特许经营协议，审查股东协议、公司章程，后续特许经营招标文件与特许经营方案、投资协议、特许经营协议的符合性审查，协助实施机构完成协议谈判、签订等工作，以及全过程服务过程中的法律法规咨询服务，直至招标人与特许经营者完成投资协议、特许经营协议签订并组建项目公司。" },
          { name: "公共资源有偿使用", desc: "公共资源有偿使用模式，是指政府授权实施机构通过市场化方式，选择并授权特定经营者对公共资源进行有偿开发和经营的全过程，该模式兼具“一次性收入”和“长期运营”双重属性，适用于城市公共场地、停车泊位、地下空间、广告冠名权等稀缺资源。可提供的咨询服务包括但不限于：编写公共资源有偿使用实施方案，公共资源有偿使用协议起草， 协助政府部门与受让方进行使用费、运营指标、绩效考核等条款的谈判，提供全过程咨询建议。" },
          { name: "存量PPP管理", desc: "依托明树的存量PPP项目数据平台，摸清政府支出责任，分析项目融资情况，构建存量PPP项目管理咨询方案，包括但不限于优化项目实施内容、合作期限、融资利率、收益指标等，实现项目“降本增效”。依托国办函〔2025〕84 号文，紧扣政策“分类施策、降本增效、依法履约”核心要求，协助各地方政府开展存量PPP项目全面梳理、分类施策与清理整改工作，为政府方提供再谈判、合规整改、风险化解、绩效优化、融资协调及项目终止处置全链条服务，精准破解存量项目管理痛点。型案例涵盖轨道交通、市政设施领域。" },
          { name: "其他投融资模式", desc: "【EOD（生态环境导向开发）】：根据地方生态环境突出问题和关联产业、优势产业，根据生态产品价值实现原则梳理项目，编制实施方案，申报录入各省EOD项目库，积极向金融机构争取绿色金融贷款。典型案例覆盖水环境治理、固废处理领域，实现生态效益与经济效益双赢。【EPC+O模式】：是将 Engineering（设计）、Procurement（采购）、Construction（施工）与 Operation（运营）四个环节统一交由同一主体承担的全生命周期总承包模式，旨在通过前置运营需求、贯通设计‑施工‑运营链条，实现项目成本、进度与质量的整体最优。在该模式下，承包商不仅负责工程的设计、设备选型、材料采购与现场施工，还需承担项目建成后的招商、运营管理以及后期维护，形成“设计‑建造‑运营”一体化服务体系。基于此，可提供的咨询服务包括：EPC+O方案编制（顶层规划、技术方案、运营策划）、招标文件、合同起草与风险分配（包括设计、施工、运营三阶段的责任界定）、法律法规合规审查及政府监管对接、项目后评估、合同谈判等。" }
        ]
      },
      {
        title: "项目咨询",
        items: [
          { name: "可行性研究", desc: "以国家技术规范与行业标准为依据，结合项目实地调研、资源评估及市场分析，系统编制工程可行性研究报告。内容涵盖工程技术方案比选（路线设计、施工工艺、设备选型）、环境影响评价、投资估算与资金筹措、经济评价（财务内部收益率、投资回收期测算）、社会效益分析等模块，同步提供风险评估与应对策略。报告通过专家评审后，可作为立项审批、融资申报及后续设计的核心依据，适用于新建、改扩建及重大民生工程。" },
          { name: "绩效评价", desc: "PPP项目绩效评价咨询业务是依据国家相关政策法规及项目合同约定，遵循科学规范、物有所值、按效付费等原则，围绕PPP项目全生命周期管理需求，为政府部门提供专业化、系统化的绩效评价服务。业务聚焦PPP项目建设、运营关键环节，通过构建涵盖项目管理、效果、产出等多维度绩效评价指标体系，结合文件审查、现场踏勘、数据核验等方式，全面、客观、公正评价项目绩效目标实现程度，为政府按效付费、优化项目管理、防范各类风险、提升公共服务供给质量与效率提供支撑。" },
          { name: "投资风险评估", desc: "为推动国有企业规范投资管理，优化国有资本布局和结构，按照中央企业、省属国有企业以及市属国有企业投资管理办法对企业投资项目开展事前风险评估工作，识别风险因素、分析风险成因、提前制定风险应对措施，明确项目风险等级，降低项目投资风险。" },
          { name: "社会稳定性评估", desc: "对重大政策、工程建设、改革举措等事项实施前或实施过程中可能引发的社会矛盾、公共安全隐患及群体性事件风险进行预判、分析和评估，提出防范化解对策，为科学决策提供依据的服务，核心目标是预防和减少社会稳定风险，保障公共利益与社会和谐。" },
          { name: "招标代理", desc: "特许经营者招标的全过程工作，包括但不限于拟定招标方案，拟定并发布特许经营项目招标公告，接受投标人报名，编制招标文件，组织投标人踏勘现场（如需要）并答疑，组织开标和评标，公示评标结果，提供招标前咨询以及招标后协议签订过程中的沟通、协调工作。" }
        ]
      },
      {
        title: "数字化咨询",
        items: [
          { name: "企业数字化转型", desc: "基于明树自研多年成熟的低代码平台，为政府和企业提供数字化转型咨询、标准数字化产品交付和定制软件开发服务，助力政府和企业实现数字化转型升级。" },
          { name: "智慧城市/园区", desc: "以“城市大脑”为核心，整合多领域数据资源构建“1+N”智慧化架构（1个云平台+N个应用场景），涵盖智慧城市政务“一网通办”、交通信号优化等模块，及智慧社区、TOD综合体、数字孪生医院等多元智慧园区场景。通过洞察分析、架构设计、实施规划三阶段顶层规划，明确建设目标、组织架构、技术路径与场景需求，制定行动计划与标准规范，形成分阶段实施计划、项目清单及投资估算，支撑从规划到招标落地全流程，推动城市治理数字化与场景智慧化落地。" }
        ]
      },
      {
        title: "收费公路咨询",
        items: [
          { name: "投资前-交通量预测", desc: "车行轨迹分析及交通量与通行费预测：新建或改扩建项目投前项目交通量及通行费预测。包括项目实地调研、周边路网交通特征分析、周边人口经济发展、产业及路网规划分析、竞争路径分析、成本分析、预测模型建立和交通量及通行费预测。并结合实际情况考虑其他路网规划及收费标准调整等影响因素，提供不同情况下的通行费敏感性预测分析。" },
          { name: "运营前-定价机制研究", desc: "收费标准定价机制研究：基于对国内外收费公路收费标准定价相关政策和案例的深入解读和对国内收费公路收费标准多年研究经验，通过类比法、成本定价法等多种模式，确定收费公路定价机制。同时适应不同项目的特殊情况和不同地区的特殊要求。" },
          { name: "运营期-引流增收与拥堵治理", desc: "运营期的咨询服务包括：引流增收方案研究、收费标准调整研究、收费期限延长研究、收费公路运营情况分析、拥堵预判与治理等。依托多源大数据与 AI 模型技术赋能，精准破解收益不达标、债务压力大、拥堵频发等痛点，助力实现收益提升与可持续运营。" }
        ]
      }
    ]
  },
  data_elements: {
    title: "数据要素",
    icon: <Database className="w-5 h-5 md:w-6 md:h-6" />,
    desc: "覆盖数据全生命周期，挖掘数据价值，实现资产化变现。",
    groups: [
      {
          title: "数据治理",
          items: [
              { name: "数据安全分级分类", desc: "数据安全分级分类以《数据安全法》《个人信息保护法》为核心依据，结合行业规范与企业业务特性构建体系。我们按数据敏感程度与影响范围确立四级标准：核心机密级覆盖客户隐私、财务核心数据，机密级包含业务核心流程数据，秘密级涉及日常运营数据，公开级为对外披露信息。通过精准分级实现差异化防护，核心数据采用加密存储与访问双授权，公开数据简化管控流程，既筑牢数据安全防线、满足合规要求，又避免过度防护导致的效率损耗，为数据流通与应用提供安全底座。" },
              { name: "数据质量管理", desc: "数据质量管理聚焦准确性、完整性、及时性、一致性四大核心指标，建立“诊断-优化-监控-迭代”全流程体系。先通过智能工具扫描数据源头，定位格式错误、缺失值等问题；再结合业务场景制定清洗规则，联动技术团队完成数据修复；后续依托实时监控平台预警质量异常。优质数据为业务决策提供可靠支撑，助力精准营销提升转化率、辅助风控降低坏账率，同时减少数据纠错成本，推动业务高效运转与数字化转型。" }
          ]
      },
      {
          title: "数据资产化",
          items: [
              { name: "数据资源入表", desc: "数据资源入表服务聚焦企业数据资产的合规化与价值显性化，通过对企业内各类数据资源开展分类梳理、法律权属确权，依据现行会计准则完成数据资产的估值与财务入账全流程操作，并协助企业完成监管机构要求的合规审计工作。" },
              { name: "数据资产融资", desc: "联合金融机构打造“合规筑基+估值赋能+多元融资”一体化方案，以数据资产合规筛查为前提，依托标准化数据资产评估方法明确资产价值，创新推出数据资产支持证券（ABS）、数据资产通证化（RWA）、数据资源软硬件一体融资租赁、数据知识产权抵押贷款等融资工具。深度衔接数据资产入表业务与数据产品交易流通体系，既助力企业盘活沉淀数据资产、拓宽融资渠道，又通过标准化融资流程推动数据资产价值市场化变现，为数据要素市场化配置提供金融支撑。服务全链条覆盖：前期开展数据资产收益能力筛查与基础资产池构建，通过专业估值建模精准测算资产价值；中期定制ABS结构化发行架构、RWA通证化映射方案、融资租赁打包方案及知识产权质押备案流程，协同完成交易所备案与合规发行；后期提供持续运营管理与风险管控服务。" }
          ]
      },
      {
        title: "数据交易服务",
        items: [
          { name: "明树云·标准化数据会员服务", desc: "以基建投融资为核心的明树全域智慧数据库为依托，提炼市场共性的需求，打造大量的标准化的通用产品，产品上线至明树云aPaaS低代码平台并通过平台会员制体系向客户提供数据查询、下载、分析等服务。目前广受市场好评的产品有：《专项债项目大全》、《政府重大项目》、《特许经营项目追踪》和《基建投融资政策》等。" },
          { name: "定制化数据交易服务", desc: "结合明树在数据挖掘和处理、整合积累的经验和能力，定制化解决客户在业务过程中产生的特定的数据需求，并形成一对一的定制化数据解决方案，助力客户提升业务效率。此部分可以软件系统方案协调落地，交付定制化的数据系统产品，为客户交付定制化数据服务平台。" },
          { name: "数据运营/授权服务", desc: "业务聚焦数据资产长期价值运营，核心服务涵盖数据资产的全生命周期维护、分级使用权限的授权管理、授权后的使用监控，以及基于数据输出增值服务；其协同逻辑是依托数据资产管理平台实现权限管控与监控，同时作为数据产品交易流通的前置环节，为交易提供合规授权依据。" },
          { name: "数据供需对接平台", desc: "聚焦全行业专业数据资源对接与价值转化，核心服务以明树平台为枢纽，打通“需求方-数据资源-供给方”的全链路，盘活全行业数据资产，驱动数据资源的精准对接与价值转化。" }
        ]
      }
    ]
  },
  software: {
    title: "全栈软件",
    icon: <Monitor className="w-5 h-5 md:w-6 md:h-6" />,
    desc: "自主研发的业务系统与管理平台，驱动业务数智化升级。",
    groups: [
      {
        title: "数字政务",
        items: [
          { name: "政府特许经营项目管理系统", desc: "市政公用事业特许经营活动智慧监管平台按照“5+1”功能体系进行建设，包括项目总览“一张图”、项目底数“一本账”、运行监管“一张网”、运营评价“一模型”、督办整改“一清单”，运用“嵌入式”监管开展监管预警。充分应用大数据比对技术，加强风险研判，形成特许经营活动群众投诉、行业监管和专责监管一体化平台，通过AI智能问答，解答用户在特许经营活动中遇到的问题和平台使用问题。" },  
          { name: "发改委在线审批平台", desc: "围绕谋划、审批、计划、融资和决策五大环节开展建设。系统提供项目申报、项目库管理、标签管理和分析考核，实现项目信息集中整理。审批环节包含场景化审批、容缺受理、承诺制、统一评价等能力，并支持进展填报、预警提醒和电子归档。计划管理覆盖年度计划、三年滚动计划、计划上报审核与下达，以及项目调度和要素保障。融资推介模块整合投融资服务与民间资本对接；决策辅助提供驾驶舱、智能报表、态势感知和项目地图等功能。" },  
          { name: "住建厅项目绩效管理系统", desc: "聚焦项目规范实施与履约监管，通过分类施策推进存量项目精细化治理。依托大数据技术与可视化工具，实现省市县三级项目数据高效汇总，经数据挖掘分析、多维度比对校验，全面掌握全省住建项目支出管理实况，精准核算项目实际投入，筑牢债务风险防控防线。系统支持地方数据无缝承接，以数字化手段刚性落实财政监管与行业管理标准，构建项目实施单位自查、主管部门定期考核、财政部门监督监察的全链条综合监管体系，强化项目全流程绩效管理，实现动态监控、智能预警与闭环整改，推动住建领域项目管理提质增效、规范有序。" },  
          { name: "财政厅专项债管理系统", desc: "围绕专项债项目的全生命周期管理过程，搭建基于数据与业务双中台+人工智能的可持续改进政府服务和数据服务中台，实现项目全过程、全要素、全周期、全流程化管理，打造一站式智慧平台，实现项目规划、项目审批、项目执行、项目考核的一体化管理，以解决各级政府用户、专项债项目相关社会主体用户对项目的申报、审批、调度、流程、信息数据等方面的诉求，实现项目管理的提质、扩能、增效、互联互通。产品服务于省、市、区县三级财政部门等专项债主管部门，为各级财政部门“数智化”转型和数字经济发展提供支撑。" } 
          ]
      },
      {
        title: "项目管理",
        items: [
          { name: "企业投资项目管理平台",desc: "覆盖全业态、全类型投资项目，实现”全周期一体化“的数字化解决方案。从投资管理角度出发，围绕计划、资金、投资收益等主线，实现业务在线协作推进，实时监控项目风险，数据自动分析、直观呈现，实现科学投资、精细管理和精准决策，助力投资收益提升和企业管理升级。" },
          { name: "全生命周期项目管理系统" ,desc: "围绕各类项目全生命周期提供数字化管理服务，涵盖五大核心环节：一是项目谋划与库管，提供项目申报、分类建库、标签管理等功能，实现项目信息集中整合与动态管控；二是审批监管与流程优化，支持场景化审批、容缺受理、承诺制等模式，配套进展填报、预警提醒和电子归档，提升审批效率；三是计划与调度管理，覆盖年度计划、三年滚动计划编制，以及项目调度、要素保障和计划下达全流程；四是运行监管与风险防控，通过“一张图”总览、“一张网”监管、“一模型”评价构建嵌入式监管体系，运用大数据技术加强风险研判；五是决策与服务支撑，提供驾驶舱、智能报表、态势感知等可视化工具，整合投融资对接服务，并通过AI智能问答解决项目管理过程中的各类咨询需求，实现从项目准入到运营评价的全过程数字化管理。"},
          { name: "资金管理平台", desc: "聚焦政府与企业资金全流程管控需求，提供分层级、多维度数字化服务。涵盖财务预算管理系统搭建，支持集团总部至细分主体的预算编制、执行监控与报表生成，适配市政、开发、筹资投资等多业务场景；专项债项目智能管理，通过在线申报、智能模型筛选、线上评审一体化流程，简化申报环节、精准匹配政策要求；REITs回收资金使用管理，提供首次填报、季度更新、方案调整、记录追溯全流程服务，配套精细化权限管控与数据复用功能，确保资金使用数据合规可溯，助力客户实现资金从编制、执行到监管的闭环管理，提升财务决策精准度与资金使用效率。" },
          { name: "采购与市场运营管理系统", desc: "聚焦企业采购与市场业务全流程数字化赋能，采购管理端构建竞价全流程线上闭环系统，覆盖竞价公告发布、供应商在线报价、结果公示与记录追溯等核心功能，配套供应商管理、文件归档、权限管控等辅助模块，实现采购竞价公开规范、高效可溯；市场开发端搭建全链路业务支撑平台，涵盖商机数据分析挖掘、全流程跟踪转化、合同规范签订、项目建设运维等一体化服务，以数字化手段贯穿商机挖掘至项目运营全生命周期，助力企业精准对接市场需求、优化业务流程、提升运营效能与市场竞争力。" }
        ]
      },
      {
        title: "行业智慧管理",
        items: [
          { name: "慈善公益智慧管理平台", desc: "提供慈善公益领域全流程数字化服务，搭建“项目+组织”一体化平台，覆盖项目台账、财务物资管理、志愿服务、慈善信托等核心功能，配套数据可视化与办公协作工具，提升公益项目透明度与运营效率。" },
          { name: "智慧农业管理平台", desc: "以农业供给侧结构性改革为主线，通过智能化、物联网等先进手段，实现农工生产一体化管控，整合地块信息、农事规划、生产记录、车间环境监测、质量追溯等功能，通过多源数据融合与IoT实时采集，构建从地块到工厂的完整数字链路，包括作物生长监测、农业大数据分析等关键功能。提高农业创新力、竞争力和全要素生产率，助力农业部门实现精准化、智能化管理。" },
          { name: "交通智慧管理平台", desc: "基于自主研发的交通行业核心数据算法，为客户提供最佳的数据驱动决策和智能应用解决方案，致力于为交通行业实现提质增效、增收降本，助力交通智慧运营和可持续发展。" }
        ]
      }
    ]
  },
  ai_apps: {
    title: "AI 智能体",
    icon: <Brain className="w-5 h-5 md:w-6 md:h-6" />,
    desc: "基于垂类大模型与智能算法，赋能具体业务场景。",
    groups: [
      {
        title: "AI智能体",
        items: [
          { name: "特许经营政策问答智能体", desc: "结合知识图谱（Knowledge Graph）与检索增强生成（RAG）技术构建特许经营政策知识库，实现政策条款的语义化理解与快速匹配。用户可以通过自然语言提问，系统将自动解析问题意图，充分利用结构化知识图谱和非结构化政策文档，从中提取相关信息作为参考内容展示，并以清晰明了的方式呈现答案。此外，系统支持多轮对话和上下文理解，能够根据用户的追问动态调整回答，提升咨询效率和用户体验。" },
          { name: "合同审查智能体", desc: "对用户上传的合同文件进行全面检查，并最终输出合同审查报告，指出存在的问题及存在问题的地方。包括根据民法典相关法律法规对合同内容进行合法合规性检查；站在用户所在合同方立场进行审查，确保用户方利益不存在潜在风险；将业主方指定的合同审查标准加入知识库，并根据此标准对合同进行分类、逐项审查；对合同进行语病、错别字、计算问题、逻辑问题等常规问题进行检查。"},
          { name: "公文检查智能体", desc: "对用户上传的公文文件进行全面检查，并最终输出公文检查报告，指出存在的问题以及存在问题的地方。包括对公文中使用的人物、组织机构等相关称谓是否符合知识库相关文档规范的检查；对公文根据知识库中相应的行文规范进行检查，并支持对语病、错别字检查；对公文格式的全面检查，包括页边距、行高、行距、字体、字号、颜色、字体样式等的检查。"},
          { name: "投资决策问答智能体", desc: "基于明树海量投融资政策数据库，再结合客户单位投融资相关规定，定制化建立投资决策知识库。用户可以通过对话的形式得到有关本单位投融资业务精准且专业的解答，包括流程的前置条件、材料准备、投决会审议、合规性要求、产业与效益目标、流程时效性以及风险防控注意事项等。"},
          { name: "桥隧结构健康诊断智能体", desc: "通过构建基于多传感器融合和AI深度学习的桥隧结构健康诊断系统，实现桥隧结构的全天候、高精度智能监测。系统将整合声学传感、光纤传感、图像识别等技术，建立结构损伤智能识别模型，实现裂缝、变形、腐蚀等问题的毫米级精确检测和风险评估，形成“多维感知+智能诊断”的结构健康管理新模式。"},
          { name: "高速公路边坡监测智能体", desc: "通过构建基于多传感器融合和AI分析的边坡智能监测系统，实现边坡形变、地质变化的全天候、高精度监测。系统将整合卫星遥感、毫米波雷达、光纤传感等技术，建立边坡风险智能预警模型，实现边坡形变的毫米级精确监测和实时风险评估，形成“多源感知+智能分析”的边坡安全管理新模式。"}
        ]
      },
      {
        title: "算法模型",
        items: [
          { name: "引流增收模型", desc: "融合多源交通+运营+其他多源数据，构建用户出行路径选择模型，实现引流增收效果预测。" },
          { name: "车流预测模型", desc: "整合历史及多类关键因素，通过时序预测算法实现未来车流时空分布预测。" },
          { name: "收费集合模型", desc: "整合 ETC、视频等数据，用 AI 算法识套牌、假绿通等异常，实现自动稽核。" },
          { name: "拥堵溯源模型", desc: "通过 “高速车流 - 停车场排队 - 文旅区人流” 多维度数据关联分析与因果推断算法，自动定位跨场景拥堵起点、传导路径及消散时间。模型结果实时推送至出行平台与运营决策平台。" },
          { name: "出行画像模型", desc: "基于聚类算法与特征工程，从 “出行目的、路径偏好、停车需求、文旅消费” 四大维度，细分核心出行人群，为跨场景引流与数据资产运营提供支撑。" }
        ]
      }
    ]
  }
};

const products = [
  {
    title: "数据资产管理平台",
    icon: <Coins className="w-8 h-8 text-[#00FFC2]" />,
    desc: "基于AI算法的一站式数据资产服务平台，涵盖确权登记、价值评估、资产入表及产品开发，助力企业自助生成数据应用，快速落地场景。",
    details: "平台是基于AI算法，面向企业提供一站式全过程数据资产服务，涵盖数字化转型、元数据管理、数据质量评估、数据治理、数据资产确权登记查询、数据价值评估、数据资产入表、数据产品开发和数据资产管理等功能。该平台最大亮点是可以帮助用户自助生成数据应用，直接将应用场景落地，发挥数据要素价值。",
    cases: [
      { name: "麦麦科技-种业数据资产服务平台项目" }
    ],
    tags: ["AI驱动", "自助操作", "高效管理"]
  },
  {
    title: "可信数据空间",
    icon: <Shield className="w-8 h-8 text-blue-400" />,
    desc: "保障数据“存、管、算、用”全流程安全可信的核心载体。利用隐私计算与区块链技术，破解数据孤岛与隐私泄露难题，实现安全流通。",
    details: "可信数据空间作为保障数据“存、管、算、用”全流程安全可信的核心载体，能够有效破解数据孤岛、隐私泄露、权属不清等行业痛点。依托在数据安全、隐私计算、区块链等领域的技术积淀与实践经验，为政府、企业及社会组织提供覆盖可信数据空间规划、建设、运营及增值服务的全链条解决方案，助力客户安全高效地实现数据价值转化。",
    cases: [
      { name: "遵义低空经济可信数据空间项目", desc: "该项目为遵义市低空经济领域首个可信数据空间专项可研项目，目前报告已通过甲方审核并作为项目立项核心依据，为后续遵义市低空经济相关数据安全与资产化项目提供了可参考的实践模板。" }
    ],
    tags: ["隐私计算", "区块链", "安全流通"]
  },
  {
    title: "明树数智稽核系统",
    icon: <FileCheck className="w-8 h-8 text-teal-400" />,
    desc: "专为高速公路设计的数智稽核解决方案。全天候自动处理工单，通过大数据算法识别逃费行为，大幅提升工单处理成功率。",
    details: "针对高速公路运营痛点，系统集成了门架数据分析、车牌图像二次识别及路径还原算法。通过构建“车辆画像”数据库，自动筛查大车小标、屏蔽计费设备、假冒绿通等逃费行为。",
    cases: [
      { name: "某省高速公路集团稽核补费", desc: "系统上线半年内，协助集团追缴通行费 3000 余万元，稽核效率提升 500%。" },
      { name: "跨省逃费车辆大数据筛查", desc: "通过跨省数据联动，成功打掉一个利用“换卡换牌”手段长期逃费的团伙。" }
    ],
    tags: ["RPA自动化", "大数据稽核", "98%成功率"]
  },
  {
    title: "高速畅行平台",
    icon: <Rocket className="w-8 h-8 text-purple-400" />,
    desc: "连接司机与运营单位的数字化营销平台。支持会员制管理、大客户营销及“一车一策”优惠自动化，实时展示通行里程与节省费用。",
    details: "打造高速公路行业的“互联网+”服务入口，为司机提供路况查询、通行费计算、积分商城等服务。为运营单位提供会员画像分析、精准营销投放及差异化收费策略配置工具。",
    cases: [
      { name: "某高速会员营销体系构建", desc: "建立拥有 200 万实名会员的营销平台，通过积分兑换活动提升服务区消费转化率 30%。" },
      { name: "货车ETC信用支付平台", desc: "联合金融机构推出“先通行后付费”产品，解决物流企业资金周转难题，日均交易额破百万。" }
    ],
    tags: ["会员营销", "一车一策", "实时账单"]
  },
  {
    title: "交通路网监测平台",
    icon: <Activity className="w-8 h-8 text-orange-400" />,
    desc: "集成多源交通数据，提供路网运行实时监测、拥堵预警及应急指挥调度功能，为交通管理部门提供精准的决策支持。",
    details: "融合高德/百度地图数据、气象数据、交警事故数据及路侧感知设备数据，构建实时路网数字孪生体。系统具备短时交通流预测、拥堵成因分析及应急资源智能调度功能。",
    cases: [
      { name: "节假日路网保通保畅监测", desc: "在春运、国庆等高峰时段，为省交通厅提供全省路网运行日报及疏堵保畅策略建议。" },
      { name: "极端天气应急指挥调度", desc: "在暴雪冰冻灾害中，辅助决策封闭路段与除雪力量部署，保障生命通道畅通。" }
    ],
    tags: ["实时监测", "应急调度", "多源融合"]
  },
  {
    title: "智慧管养平台",
    icon: <Settings className="w-8 h-8 text-pink-400" />,
    desc: "通过物联网与AI识别技术，实现基础设施的数字化巡检与预防性养护。全生命周期管理资产健康状态，降低运维成本。",
    details: "利用无人机、智能巡检车及物联网传感器，对桥梁、隧道、路面进行全天候健康监测。AI 算法自动识别裂缝、坑槽等病害，结合资产衰变模型预测养护最佳时机。",
    cases: [
      { name: "跨海大桥全生命周期健康监测", desc: "部署 500+ 个传感器，实时监测大桥结构应力与震动，成功预警多次台风影响。" },
      { name: "高速公路预防性养护决策系统", desc: "通过路面平整度与破损率分析，优化年度养护计划，节约养护资金 15%。" }
    ],
    tags: ["AI巡检", "预防性养护", "全生命周期"]
  }
];

const newsItems = [
  {
    title: "首批创新伙伴+牵头专题组！明树双身份亮相横琴 以 “数据 + AI” 赋能交通高质量发展",
    date: "2025-11-30",
    category: "出席活动",
    image: mshqImg,
    content: `11月27日至28日，2025数字交通大会在广东省横琴粤澳深度合作区举办。大会聚焦“数智引领交通运输新质生产力”，汇聚政产学研用各界代表，共话数字交通创新实践。本次大会设置主论坛与8场平行论坛，议题覆盖行业核心热点。
由中国交通运输协会城市交通分会主办、北京云星宇交通科技股份有限公司承办、交通运输部公路科学研究院中路高科集团大数据研发中心与北京明树数据科技有限公司（以下简称“明树数据”）联合协办的 “智驱交运・共创未来 —— 数据与 AI 赋能交通高质量发展” 平行论坛，在横琴粤澳深度合作区天沐琴台会议会展中心圆满召开。作为行业深耕者与创新引领者，明树数据在此次论坛中斩获多项重要成果，为交通智能化升级注入强劲动力。中国交通运输协会城市交通分会会长蔡玉贺、中国交通运输协会副会长兼秘书长李刚分别为开幕式致辞。

中国交通运输协会城市交通分会会长蔡玉贺为分论坛开幕式致辞
中国交通运输协会副会长兼秘书长李刚在开幕致辞中指出，当前我们正身处由数据与智能重新定义交通的时代，要准确把握《“人工智能+交通运输”实施意见》的政策导向，既要做好“向上”把握战略方位的文章，也要做好“向下”厚植产业根基的文章。他强调，要推动中国技术、标准和服务“走出去”，为加快建设交通强国贡献力量。
中国交通运输协会副会长兼秘书长李刚致辞
会议现场，中国交通运输协会城市交通分会“AI+城市与交通”专题组正式成立，明树数据荣膺“AI+城市与交通”专题组牵头单位，并成功入选 “AI+城市与交通”创新伙伴合作计划首批成员。明树数据董事长兼 CEO 肖光睿在发言中表示，这一荣誉既是行业对明树技术实力的高度认可，更是对企业引领产业发展的殷切期许。

肖光睿董事长指出，当前 “人工智能 + 交通运输” 已上升为国家战略，随着《“人工智能＋交通运输” 实施意见》等政策的落地实施，2027 年综合交通大模型建设目标明确，行业迎来重大发展机遇。但行业仍面临数据孤岛、技术落地脱节、价值转化不足等痛点。明树数据深耕行业多年，构建多模态数据基座，打造拥堵溯源、车流预测等核心模型矩阵，在甘肃差异化收费、数智稽核等场景中实现引流增收11.48亿元、挽回逃费损失超3.5亿元的实效，印证了“数据是基础、场景是桥梁、闭环是价值”的行业共识。
作为专题组牵头单位，肖光睿董事长强调，明树数据将聚焦政策研究与标准制定、技术创新与场景应用两大核心任务，推动跨部门数据融合共享，深化AI大模型全场景自适应能力。以“交通+数据+AI”生态融合为方向，打通“数据治理-算法建模-场景落地-资产化”闭环，让技术从“降本增效”向“价值创造”跨越，与行业伙伴共建开放协同的产业新生态，助力交通强国建设迈入新阶段。

在专题演讲环节，明树数据副总经理吉小进以“基于AI模型和多源大数据的高速公路智慧运营”为主题，系统阐述了 “交通+AI”全链条实施路径。他表示，智慧交通的落地离不开坚实的数据基座与高效的模型引擎，明树数据构建的多模态数据体系，整合了ETC系统、监控设备、资产台账、支付反馈等多源数据，为AI应用提供了充足“燃料”。在模型技术层面，吉小进详细拆解了明树数据的核心算法架构：基于数据大模型框架本地化部署，融合多源数据与各类算法模型，通过深度学习模型捕捉时空特征，借助多模型实现用户细分以及精准图像识别，再搭建高速出行分析平台、会员体系平台等多个实战载体，覆盖拥堵研判、流量预测、引流增收、会员运营等多场景应用。
吉小进副总经理强调，明树数据的实践核心在于构建了 “数据-模型- 场景-资产化”的良性循环，通过各应用场景产生的多源数据持续优化模型，再以更精准的模型赋能场景升级，最终实现数据资产化增值。未来将持续深化技术创新，推动AI大模型向 “全场景自适应”演进，实现从 “被动响应” 到 “主动预警、智能决策” 的跨越。
论坛期间，中国交通运输协会城市交通分会联合明树数据等多家发起单位，正式发布 “AI + 城市与交通” 创新伙伴合作计划倡议，倡导凝聚行业共识，构建 “政策引导、技术支撑、场景落地、人才保障” 四位一体的协同创新体系，推动人工智能与交通运输深度融合。现场还公布了计划首批成员名单并举行授牌仪式，标志着行业开放合作的产业生态正式启航。

此次论坛的成功举办，为数据与 AI 在交通运输领域的深度融合搭建了高效交流平台。明树数据将以此次论坛为契机，充分发挥专题组牵头单位的引领作用，积极践行创新伙伴合作计划的合作愿景，推动政策协同、技术攻关、生态构建与国际交流，与行业同仁携手打造开放融合、互利共赢的产业生态，为构建安全、便捷、高效、绿色、经济的现代化交通体系，助力交通强国建设迈入新阶段作出更大贡献。`
  }, 
  {
    title: "明树数据副总赴保定开展专项培训 助力中小企业解锁数据资产化新路径",
    date: "2025-11-26",
    category: "对外培训",
    image: bdpxImg,
    content: `2025 年 11 月 20 日，北京明树数据科技有限公司副总经理史静丽受邀为河北保定中小企业协会开展 “数据资产化与资产证券化” 主题培训。培训紧扣政策导向与行业实践，系统解读数据资产化全流程操作要点，为保定地区中小企业盘活数据资源、拓宽融资渠道提供专业指导。
政策筑基：数据要素市场进入规范化发展新阶段
培训开篇，史静丽副总经理从政策背景切入，详细梳理了数据要素市场化配置的制度演进脉络。自 2020 年数据被明确为新型生产要素以来，《数据二十条》《企业数据资源相关会计处理暂行规定》《数据资产评估指导意见》等一系列政策文件相继出台，从确权依据、入表规范、评估标准到管理要求，构建起较为完善的制度保障体系。2024 年 1 月 1 日起施行的《企业数据资源相关会计处理暂行规定》，标志着我国数据资源会计处理进入标准化阶段，为企业数据资产入表提供了明确遵循。
实践赋能：多领域案例解析价值转化路径
结合全国典型案例，史静丽副总经理展示了数据资产化在各行业的落地成效。针对中小企业关注的融资问题，史静丽副总经理重点介绍了数据资产增信融资、资产证券化（ABS）、作价出资入股等多元变现模式。多地中小企业通过知识产权质押、数据产品挂牌交易获得融资的案例，为保定中小企业提供了可借鉴的实践样本。

操作指引：全流程拆解数据资产化关键环节
培训核心环节，围绕数据资产化 “资源化 - 价值化 - 资产化 - 金融化” 全流程，详细拆分要点，数据资产需同时具备持续收益性和明确经济所有权，企业需先完成数据治理与质量评估，通过清洗、整合、标注等流程形成规范数据资源。
在入表操作方面，需要明确外购、自行产生及其他方式获取数据资源的初始计量方法，以及后续摊销、减值处理的具体要求，实操中财务、业务、IT 部门协同重要性要注意。在价值评估环节，她介绍了成本法、市场法、收益法的适用场景与操作规范，帮助企业根据自身数据类型选择合适的评估方式。
合规层面，企业需关注数据来源、内容、处理、管理及经营全链路合规，确保数据资产合法可控。针对中小企业特点，建议优先选择与自身业务高度相关的应用场景，从数据产品开发、小规模交易起步，逐步探索金融化路径。
展望未来：数据要素成为中小企业发展新动能
随着 “数据要素 ×” 三年行动计划深入推进，数据与工业制造、现代农业、商贸流通、文旅等 12 个领域的融合将更加紧密。中小企业应抓住政策机遇，建立健全数据资产管理体系，通过数据产品开发、交易流通、融资增信等方式，将数据资源转化为核心资产。
下一步，明树数据将持续发挥专业优势，为更多中小企业提供数据资产规划、治理、评估、入表及金融化全流程服务，助力中小企业在数字经济浪潮中实现高质量发展。`
  }, 
  {
    title: "第三届中国PPP法律论坛｜明树数据以数据视角解读行业规范发展新趋势",
    date: "2025-11-26",
    category: "出席活动",
    image: flltImg,
    content: `2025年11月14日，由中央财经大学财政税务学院主办、北京市惠诚律师事务所承办的“第三届中国PPP法律论坛”在北京东方茂酒店召开。北京明树数据科技有限公司咨询总监郭瑞受邀参与论坛圆桌讨论，以“数据视角下的PPP市场规范发展趋势”为题发表分享，结合明树数据资源阐述了PPP市场发展现状与趋势。

本次论坛以PPP领域的规范发展与法律保障为核心议题，邀请清华大学投融资政策研究中心首席专家王守清、中国工程咨询协会投融资专业委员会副主任宋映忠、北京惠诚律师事务所执行主任薛起堂等担任主讲嘉宾，政府部门、社会资本、金融机构及专业服务机构代表参与了论坛。主题演讲环节后，首场圆桌会议围绕“PPP规范发展与展望”展开，郭瑞代表明树数据参与讨论并分享了基于数据的分析结果。
郭瑞在分享中介绍，依托明树数据的PPP数据库，可从数据维度呈现市场现状、剖析发展特征。其分享核心围绕“存量市场特征”与“新机制市场趋势”两方面展开，通过具体数据说明行业发展情况。


在存量PPP市场分析部分，郭瑞分享了明树数据的统计数据：截至2023年4月底，我国广义PPP在库项目（含储备、准备、采购、执行阶段）共计14068个，总投资额21万亿元；其中执行阶段项目8468个，总投资约13.8万亿元。数据同时揭示出存量市场的两大特征：一是回报机制以政府付费与可行性缺口补助项目为主，在已入库的14068个项目中，政府付费与可行性缺口补助类项目12449个，总投资约18.3万亿元，占比87%，反映出存量项目对政府财政支付的依赖性；二是社会资本以国企为主，在8468个进入执行阶段的项目中，中央企与地方国企中标占比约82%，民营企业参与比例为16%。郭瑞表示，这些特征表明存量PPP在拉动投资、改善民生方面发挥作用的同时，也给地方政府带来一定财政支出压力与潜在风险。能否妥善处置存量PPP项目的问题与争议，直接关系到基础设施投融资市场的健康发展。
针对2023年《关于规范实施政府和社会资本合作新机制的指导意见》（即“2023年2号文件”）实施后的市场变化，郭瑞分享了相关监测数据。自该文件发布至2025年10月31日，国家发改委主导的新机制项目库已收录项目317个，总投资约1.65万亿元；其中273个项目进入执行阶段，总投资达1.54万亿元。
与存量市场相比，新机制项目呈现两方面特点：一是聚焦使用者付费，所有项目均以使用者付费为回报机制，减少对政府付费的依赖，这与新机制“坚决遏制新增地方政府隐性债务”的要求相契合；二是民营企业参与度提升，273个已落地项目中，民营企业参与项目109个，数量占比40%，投资额约5000亿元，占比32.6%，高于存量市场16%的参与比例，体现了新机制“优先选择民营企业参与”的导向。
在总结环节，郭瑞提到，新政策推动PPP市场从规模扩张转向质量提升，回归“聚焦公共服务供给效率与质量”的定位。郭瑞认为，存量项目风险化解与新机制项目推进，均需要专业法律服务支持，以及政府、社会资本、金融机构、咨询机构等多方协同。
作为PPP领域的数据服务机构，明树数据以“用数据支撑决策”为服务方向。郭瑞表示，明树数据将持续升级数据库资源与分析能力，为行业提供数据服务，助力PPP市场规范发展。目前，明树数据拥有国内规模庞大且历史沿革较完整的PPP项目数据库，其数据追溯自 2002 年起，积累了超 23 年的行业数据。不仅100%收录财政部原有入库的存量项目，而且同步发改委新机制项目库。填补了行业数据的关键盲区，让每一笔 PPP 交易都能在数据体系中找到踪迹，为全面、深入研究 PPP 市场提供了坚实的数据基础。
在数据更新方面，明树数据始终保持行业领先。全国 PPP 项目市场交易动态实现第一时间更新，能充分满足用户对 PPP 项目全生命周期过程信息的需求，从项目建设、融资方案、运营模式到相关过程文件，实现了全方位覆盖。无论是跟踪项目进展、分析市场趋势，还是开展学术研究，用户都能依托该数据库获取及时、准确且全面的数据支持。`
  }, 
  {
    title: "明树数据亮相 2025交通产业经济年会 以AI+大数据赋能智慧交通产融创新",
    date: "2025-11-06",
    category: "出席活动",
    image: jjnhImg,
    content: `11月3日-5日，由中国公路学会与湖南省高速公路集团有限公司联合主办的“2025年交通产业经济年会暨第七届交通投融资学术年会”在湖南省长沙市召开。湖南省人大常委会党组副书记、副主任张剑飞，中国公路学会理事长翁孟勇，湖南省高速公路集团有限公司党委书记、董事长罗卫华，华为技术有限公司副总裁、交通智慧化军团CEO马悦出席年会开幕式并致辞，中国公路学会交通投融资分会理事长、中国交通建设集团有限公司市场开发总监赵晖主持年会开幕式。中国公路学会交通投融资分会副理事长，江苏交通控股有限公司党委委员、副总经理陈云江主持主旨报告环节。
本次年会恰逢 “十四五” 收官与 “十五五” 布局的关键节点，以 “产融守创・新质出征” 为核心主题，汇聚 400 余名交通领域行业精英、企业代表及专家学者，聚焦产业共识凝聚与价值共创，共话交通行业高质量发展新蓝图。北京明树数据科技有限公司（以下简称 “明树数据”）作为中国公路学会交通投融资分会理事单位受邀参会，公司副总经理吉小进于 11 月 5 日上午的 “人工智能与交通融合应用及投资发展论坛” 发表主题演讲，分享《基于 AI 模型和多源大数据的高速公路智慧运营和融资创新》的实践成果与前沿思考。

吉小进在演讲中指出，高速公路作为交通网络核心枢纽，正面临运营效率优化、养护成本控制、融资渠道拓宽等多重挑战，而行业普遍存在的数据孤岛、技术落地脱节、价值转化不足等问题，进一步加剧了这些困境。明树数据立足“人工智能+交通运输”“数据要素×” 等政策导向，依托多年行业深耕经验，构建“多模态数据基座+ AI模型引擎” 双轮驱动解决方案，实现从运营管理到投融资全链条智慧升级：
在智慧运营层面，以五类多源数据为基础 —— 整合动态运行（ETC、监控）、静态设施（资产台账）、用户行为（通行支付）、出行关联（文旅停车）、外部关联（气象经济）数据，覆盖 16 省收费公路实战经验，形成坚实数据底座。通过五大核心模型落地价值转化：引流增收模型支撑差异化收费，甘肃案例实现引流 + 88.1%、增收 + 64.5%；出行画像模型精准定位高价值会员，赋能 “高速+文旅/物流” 跨界营销；收费稽核模型整合八类数据，识别套牌、假绿通等五类违规行为，挽回通行费损失；车流预测模型实现短期拥堵预警与中长期运营评估；拥堵溯源模型精准定位拥堵起点与传导路径，助力高效管控。
在融资创新层面，构建 “数据资产化 + 全生命周期赋能” 的融资创新体系。通过 “数据资源化—资产化—产品化—金融化” 全流程，激活数据要素价值，落地数据资产ABS、RWA（真实世界资产通证化）等创新模式。投前依托AI模型精准测算交通量与通行费，校验项目效益与风险，为PPP项目提供决策支撑；运营期通过增收方案提升资产估值；存量阶段支撑REITs尽职调查与资产盘活，同时依托低代码平台开发预测系统，适配超长期国债、专项债等政策红利，搭建数据资产与资本对接的多元融资通道。
“十五五” 期间，明树数据将持续深化技术研发与场景创新，进一步完善多源数据融合体系，强化 AI 模型在交通运营、投融资决策中的应用深度，积极响应 “人工智能+”、“数据要素×”产业融合趋势，与行业同仁携手打造 “数据驱动、产融协同” 的智慧城市新生态。未来，明树数据将以更优质的产品与服务，为交通强国建设注入数据动能，助力行业在守正创新中培育新质生产力，实现高质量发展。`
  },
  {
    title: "明树数据签约“中关村工业AI产业园生态倡议” 以数据智能赋能工业新质生产力",
    date: "2025-11-06",
    category: "生态合作",
    image: msqyImg,
    content: `近日，由中关村科技园区朝阳园管理委员会（北京市朝阳区科学技术和信息化局）、北京新技术应用促进中心联合主办的 “向新而行” 场景赋能新质生产力系列活动 —— 工业 AI 场景推介及供需对接会在中关村（朝阳）工业 AI 产业园圆满落幕。中关村（朝阳）工业AI产业园与北京明树数据科技有限公司（以下简称 “明树数据”）等9家核心企业共同签署《中关村（朝阳）工业 AI 产业园生态合作伙伴倡议书》。明树数据正式加入工业 AI 专业化产业园区的生态共建阵营，以 “数据 + AI + 低代码” 的全链条能力助力工业智能化转型。
工业场景的数字化转型亟需打破数据孤岛与技术壁垒，而生态协同是破解这一难题的关键。明树数据作为政企全生命周期数据资产服务商，公司长期专注于数据资产化研发与全场景落地，此次签约将推动明树数据在多个领域的项目服务经验向工业场景迁移，为产业生态注入务实动能。
此次合作是明树数据拓展工业 AI 场景的重要里程碑。依托明树数据在政企数据资产服务经验，公司将持续深化 “数据资产化 + 行业场景化” 双轮驱动战略，与生态伙伴携手打造工业 AI 创新应用高地，让数据要素在生产制造、基建运维、环保治理等场景充分释放价值，为新质生产力赋能、为工业高质量发展注入持久动力。`
  },
  {
    title: "捷报频传！明树数据联合申报项目斩获2025年“ 数据要素× ”大赛全国总决赛三等奖",
    date: "2025-10-30",
    category: "公司荣誉",
    image: sjyshjImg,
    content: `2025年10月25日-28日，2025年“数据要素×”大赛组委会组织开展了全国总决赛线下终评。经专家严格评审、公证人员公证以及相关部委代表现场监督，形成全国总决赛获奖项目名单并公示。
由中国市政工程华北设计研究总院有限公司、天津市排水管理事务中心、绵阳市安州区龙泉供水有限责任公司、北方大数据交易（服务）中心及北京明树数据科技有限公司联合推选的“多源动态数据驱动下的城市水系统多灾种监测预警与决策”项目（以下简称“本项目”），凭借在数据要素与城市水务领域的深度融合创新，成功斩获2025年“数据要素×”大赛全国总决赛应急管理赛道三等奖。

2025 年 9 月，经国家数据局与天津市人民政府同意，天津市数据局联合市委网信办、天津市科技局等部门共同主办 2025 年 “数据要素 ×” 大赛天津分赛。赛事历经社会公开征集、合规性初审、决赛多轮评审等严格环节，最终评选出 83 个获奖项目及 8 个特色奖项并公示。其中，本项目凭借在应急管理领域的技术创新性与实践价值，一举斩获应急管理类一等奖及最佳技术创新奖双项荣誉。本项目作为分赛评审得分前28名，按国家数据局通知要求，成功获得推荐晋级全国总决赛的资格，为后续斩获全国三等奖奠定坚实基础。
此前，明树数据凭借 “基于交通大数据融合智能分析的高速公路差异化收费决策支持模型” 项目，在 2024 年 “数据要素 ×” 全国大赛甘肃分赛区评选中成功斩获城市治理组一等奖，顺利晋级全国总决赛。

未来，我们将以此次获奖为契机，携手华北院等伙伴把大赛成果转化为更多城市供水排水解决方案，助力“数据要素 × 应急管理”实现高质量发展。`
  },
  {
    title: "双角色赋能渝黔动脉！明树数据助力綦习高速特许经营项目迈入实施新阶段",
    date: "2025-10-29",
    category: "中标喜讯",
    image: ssxjdImg,
    content: `近日，重庆綦江至贵州习水高速公路政府和社会资本合作特许经营者招标的中标结果公告正式发布，作为该项目的特许经营咨询方与特许经营者招标的招标代理机构，明树数据以 “数据+咨询+技术” 的全链条服务能力，全程护航这条渝黔跨省高速公路的落地进程。

重庆綦江至贵州习水高速公路已纳入《重庆市高速公路网规划（2023-2035年）》、《贵州省省道网规划（2023-2035年）》，该项目不仅承载着 30.965公里的跨省建设任务，更是渝南黔北的重要联系纽带，将为促进渝黔经济的发展发挥重大的作用。明树数据基于丰富的公路投融资咨询经验，为项目提供特许经营咨询全过程服务，包括编制、报批特许经营方案，拟定投资协议、特许经营协议，特许经营者招标，协助实施机构完成协议谈判、签订等工作，以及全过程服务过程中的法律法规咨询服务。
作为该项目的特许经营咨询方，明树数据以《国务院办公厅转发国家发展改革委、财政部く关于规范实施政府和社会资本合作新机制的指导意见〉的通知》(国办函〔2023〕115号)及相关政策文件为准绳，以盈利能力分析为抓手，结合项目实际情况开展投融资模式及机制设计、特许经营可行性评估、绩效考核机制设立等方面的工作，为项目后期实施奠定了良好的基础；同时依托服务多条跨区域高速公路 PPP项目的成熟经验，明确各区域的权利义务边界、利益共享与风险共担原则，为跨省项目方案策划提供可复制的合作范式。
作为该项目特许经营者招标的招标代理机构，明树数据严格遵循“公平、公正、公开” 原则，以全流程规范化服务保障招标工作高效推进。从招标方案拟定到中标结果公告，仅用两个多月便完成了从发布招标计划到确定中标人的全流程工作，充分体现了专业服务的高效性。
此次綦习高速项目的阶段性成果，是明树数据“特许经营咨询 + 招标代理” 一体化服务能力的实战印证。`
  },
  {
    title: "从 “盘活资产” 到 “数据生金”！明树数据董事长解读 「从数据资产化到资产数字化」城市存量资产盘活新路径",
    date: "2025-10-29",
    category: "出席活动",
    image: phxljImg,
    content: `2025 年 10 月 24 日，“新时期城市更新可持续发展探索与实践” 专题会议在西安国际会展中心隆重召开。北京明树数据科技有限公司董事长兼 CEO 肖光睿受邀参会，并发表题为《从数据资产化到资产数字化 —— 城市存量资产盘活新路径》的主题演讲，深度剖析数据驱动下城市更新的转型逻辑、实践路径与创新模式，为城市更新可持续发展提供 “明树方案”。
洞察行业转型论道城市更新
城市更新进入 “数据赋能 + 多元共治” 新阶段
随着我国城镇化从 “增量开发” 迈向 “存量提质”，城市更新已告别早期单一粗放的拆除重建模式，形成 “政府主导、市场驱动、多元合作、数据赋能” 的复合体系，其核心目标也从 “物质空间改造” 转向 “资产价值提升”，从 “经验决策” 升级为 “数据智能管理”。
城市更新的本质是对存量资产的价值重塑，而数据正是激活这一价值的关键生产要素。 肖光睿强调，2020 年数据被正式纳入五大生产要素，2024 年《企业数据资源相关会计处理暂行规定》落地，为数据资产化提供了政策与制度基础；截至 2024 年，全国数据资产总规模已达 8.6 万亿元，远超同期土地出让金规模，“土地财政” 向 “数据财政” 的转型趋势日益明晰，数据将成为城市更新可持续发展的核心驱动力。
拆解实践路径论道城市更新
“6+1” 类资产盘活与多元资金支持体系
针对城市更新中存量资产类型多样、盘活难度大的痛点，肖光睿董事长系统介绍了明树数据梳理的 “6+1” 类核心资产盘活方向，涵盖老旧厂房 / 仓储、边角料空间、批而未供土地、历史街区风貌、国企低效物业、老旧小区配套底商等六大物理资产，以及数据资产这一新型数字资产。他以烟台仙境科创湾 “工业上楼 + 硅巷科创”、天津吉利大厦 “Z 世代潮流社交 Mall”、上海徐汇 “梧桐盒子” 社区养老等标杆案例为例，详细解读 “改造 + 产业” 的资产增值逻辑 —— 如天津吉利大厦通过二次元主题改造实现租金坪效翻倍，广州恩宁路 “非遗工坊 + 夜间经济” 模式达成 10 年 IRR 9.3% 的收益，为西安城市更新提供可复制的实践样本。
资金保障是城市更新的重要支撑。肖光睿还重点分享了明树数据研究的多元资金申报方向，包括超长期特别国债（支持文旅设备更新、地下管网改造）、地方政府专项债（覆盖老旧小区改造、智慧景区建设）、中央预算内投资（侧重历史文化街区保护）、政策性金融工具（赋能智慧商圈、停车场等消费基础设施），助力西安项目精准对接政策资源，破解资金难题。
聚焦创新模式论道城市更新
数据资产化与 RWA 技术的深度融合
在数字经济与实体经济融合的背景下，数据资产化与资产数字化成为城市更新的新增长点。肖光睿董事长详细阐述了数据资产从 “资源” 到 “资产” 再到 “金融产品” 的全链路转化路径：通过 “识别 - 治理 - 存储 - 处理 - 分析” 实现数据资源确权与质量提升，再经登记、评价、价值评估完成资产入表，最终通过数据交易、质押融资、ABS（资产支持证券）等方式实现金融化流转。
肖光睿董事长以湖北交投集团数据资产入表获 1 亿元授信、重庆城投 1.18 亿元数据资产入表、全国首单 1.3 亿元数据资产 ABS 发行为例，证明数据资产已具备实际融资能力；同时介绍了内地企业在 RWA（现实世界资产）领域的探索 —— 如国内首个充电桩运营数据 RWA 项目 “中网充・青能权益徽章”8 分钟售罄，协鑫能科光伏 RWA 融资 2 亿元等案例，展示了区块链技术如何通过 “通证化” 实现不动产、新能源设施等资产的碎片化交易与高效流转（详见：当PPP遇上RWA）。
“西安方案”论道城市更新
“长安街区权益通证” 构建社区共治生态
结合西安深厚的历史文化底蕴与城市更新需求，肖光睿董事长在演讲中首次发布了明树数据为西安定制的 “社区权益型 RWA 设计方案”——“长安街区权益通证（CBET）”。该方案以 “去中心化、社区为本” 为核心，将超过 70% 的通证用于社区与生态建设，淡化金融属性，强化品牌价值、消费权益与社区共治。
据介绍，“长安街区权益通证” 分为五大分配类别：50% 用于社区消费生态激励（如 “消费即挖矿” 奖励用户行为）、20% 用于品牌与合作方激励（绑定文旅、餐饮商户长期合作）、15% 作为社区治理金库（由用户投票决定文化活动、公共设施升级等资金用途）、10% 用于运营团队激励（设定 2-4 年锁定期确保长期主义）、5% 用于初始流动性与市场推广。通过智能合约实现消费返现、会员特权、专属活动参与等权益的自动化执行，同时引入 “投票权重等级加成” 机制，让消费者从 “一次性游客” 转变为 “社区共建者”，助力西安打造兼具历史文脉与数字活力的城市更新样板。
展望未来论道城市更新
监管完善与机构入场推动 RWA 规模化发展
演讲最后，肖光睿董事长对城市更新中数据资产化与资产数字化的未来趋势作出预判。随着香港《稳定币条例》2025 年 8 月实施、欧盟 MiCA 监管框架落地，全球 RWA 市场将进入 “监管成熟化、基础设施完善化、与 DeFi 深度融合化” 的新阶段；大型商业银行、房地产基金、主权财富基金等机构玩家将逐步入场，推动不动产、新能源、碳信用等资产的代币化规模化发展。
西安作为国家中心城市与历史文化名城，在城市更新中兼具文化价值与数字转型潜力。”肖光睿表示，明树数据作为国家高新技术企业、十余家数据交易所认证数商，将依托自身在数据要素领域的数十项发明专利与软件著作权，以及在投融资咨询、RWA 方案设计等方面的专业能力，为市场提供 “数据 + 资本 + 产业” 的全链条服务，助力西安探索城市更新可持续发展的新路径，让历史文脉与数字经济在存量资产中实现共生共荣。
未来，明树数据将持续以数据赋能城市更新，为更多城市提供存量资产盘活的 “数字钥匙”，推动城市高质量发展。`
  },
  {
    title: "锚定双碳目标赋能数字化转型！北京明树数据中标葛洲坝交投项目分析系统建设项目",
    date: "2025-10-28",
    category: "中标喜讯",
    image: gzbImg,
    content: `近日（10月24日），北京明树数据科技有限公司（以下简称“明树数据”）凭借深厚的行业技术积累与贴合交通投资场景的解决方案，成功中标葛洲坝集团交通投资有限公司（以下简称“葛洲坝交投”）项目综合分析及评价系统建设项目。此次合作将围绕葛洲坝交投数字化转型目标，打造专业化、标准化、智能化的高速公路项目分析体系，助力其落实国家“双碳”战略与中国能建“1466”战略举措，提升项目前期分析管理能力。

响应战略需求：以系统建设推动交通投资数字化转型
为贯彻《中国能建践行碳达峰、碳中和“30·60”战略目标行动方案（白皮书）》要求，实现葛洲坝交投“专业化、标准化、智能化、集约化”建设目标。传统高速公路项目分析多依赖人工计算，存在效率低、易出错、敏感性分析主观性强等痛点，多变量敏感性分析需耗费大量人力整理数据，结果呈现仅靠文字描述，难以直观支撑决策。
明树数据将助力葛洲坝交投搭建投资项目综合分析及评价系统，将彻底改变这一现状：通过信息化手段替代传统人工模式，以科学预设的数据分析模型快速输出精准、全面的计算结果，不仅能显著提升工作效率、避免计算错误，还可通过图、表、模型等多元化形式直观展示敏感性分析结论，实现项目投资分析“信息化、科学化、直观化”。
以数字化破局：打造“数据驱动+全流程覆盖”的分析体系
基于葛洲坝交投项目管理痛点与数字化建设规划，明树数据将围绕“数据流、资金流、业务流”三流协同原则，构建以“数据采集-数据治理-数据模型-数据应用”为核心的系统架构，实现项目投资管理全流程透明可视、闭环控制与多元分析：
1. 夯实数据基础：全维度采集与治理
2. 构建核心模型：精准支撑投资决策
3. 强化专项分析与输出：覆盖全场景决策需求
依托专业数据治理能力，明树数据将协助完成大数据模型设计、主题划分、指标清理，通过数据清洗、转换、加工，形成标准化数据资产。
明树数据赋能：以专业服务保障转型落地
作为此次项目的建设方，明树数据将严格遵循葛洲坝交投项目建设“三大原则”，以技术实力与行业经验保障系统价值落地：
1. 聚焦效率与科学：深度开发智能化分析功能，彻底解决传统人工计算的痛点，实现敏感性分析多维度化、结果展示直观化，提升投资分析科学性；
2. 支撑全生命周期：确保系统生成的“投”期数据能为后续“建”“营”平台及公司数据中心提供支撑，助力形成高速公路全生命周期数据体系；
3.规范业务流程：通过标准化的数据采集、模型分析与报告输出，统一项目可行性分析报告等资料格式，积累项目经验数据；
未来，明树数据将组建专业团队，紧密配合葛洲坝交投需求，确保系统按期高质量交付，助力构建覆盖高速公路投、建、营、退的全生命周期和全过程贯穿式数字化管理体系，全面提升项目的决策分析与运营管理能力，加速数字化转型进程，为中国能建交通投资板块数字化体系建设贡献力量。`
  },
  {
    title: "明树数据加入可信数据空间发展联盟，共筑数据要素价值生态",
    date: "2025-10-28",
    category: "生态合作",
    image: kxkjImg,
    content: `2025年4月29日，第八届数字中国建设峰会 “可信数据空间分论坛” 在福州隆重举行，由国家数据局指导，中国信息通信研究院、国家数据发展研究院联合 19 家央企、30 家研究院所及龙头企业发起的可信数据空间发展联盟正式宣告成立。近日，共80家单位通过理事会审核，加入可信数据空间发展联盟，北京明树数据科技有限公司（以下简称 “明树数据”）作为政企数据资产开发领军企业，成功跻身本次80家联盟成员之列，将以深耕行业的数字化实践经验，助力联盟构建协同创新的可信数据生态。

明树实践：以 “双领域优势” 赋能联盟生态
作为国内政企数据资源资产化先行者，明树数据此次加入联盟，将以 “数据资产化技术 + 全场景落地经验” 双轮驱动，为联盟生态注入务实动能：
在传统基建投融资领域，依托明树数据独家研发的 aPaaS 低代码平台搭建的投资项目管理系统已服务多家头部企业，构建覆盖项目投资、建设、运营全生命周期的数据管理体系，实现 “数据汇集 - 风险监控 - 智能决策” 的闭环赋能。这一实践与联盟 “打破数据孤岛、规范数据流转” 的目标高度契合，可为多个行业伙伴提供跨主体数据协作的可复制方案。
在交通运输领域，明树数据构建了 “多源融合 - 算法驱动 - 可信应用” 的全链条能力，依托自主研发的低代码平台，整合交通流量、客货运输、基础设施等十大数据源，搭建差异化收费政策、通行费管理等五大专业数据库，形成覆盖 30+ 场景的可信数据资源底座。平台内嵌 40+ 自主知识产权算法模型，包括货车轨迹溯源、通行费 AI 稽核等核心模块，实现多部门数据 “可用不可见” 流转 —— 通过加密技术与权限管控，打通交通厅与下属企业的数据壁垒，实现投融资项目全生命周期可信监管。
在智慧农业领域，明树智慧农业数字化平台通过 “云数端一体架构”，整合物联网采集、水肥精准管理、农产品溯源等核心功能，已实现农业数据资产化落地 —— 通过标准化数据治理与 AI 算法赋能，帮助企业将生产数据转化为可评估、可交易的资产，开辟农业融资新路径。
联盟倡导的“数据可用不可见、流转可追溯”理也是明树数据多年深耕的核心方向。未来明树数据将积极参与数据安全标准研制与跨行业场景验证。
未来展望：共绘可信数据空间 “应用蓝图”
在数字中国建设加速推进的背景下，可信数据空间发展联盟的成立为数据要素市场化按下 “快进键”。明树数据将以联盟为纽带，与 100多 家成员单位携手，以技术创新破解数据共享难题，以场景落地释放数据资产价值，为构建安全、高效、协同的全国数据要素市场贡献核心力量。`
  },
  {
    title: "共筑RWA生态，数融未来新篇————明树数据联合发起全球资产数字化RWA产业联盟",
    date: "2025-09-30",
    category: "生态合作",
    image: cylmImg,
    content: `2025年9月27日，由全球资产数字化联盟牵头发起的 “全球资产数字化 RWA 生态联盟启动会暨 RWA 生态高峰论坛” 在北京隆重召开。作为本次联盟的联合发起单位与 RWA 生态 “先行者”，北京明树数据科技有限公司（以下简称 “明树数据”）深度参与大会全流程，从联盟启动、战略签约到思想分享、技术落地，多维度助力现实世界资产（RWA）数字化生态构建，为数字经济与实体经济深度融合注入新动能。

01深度参与联盟启动：授牌签约双驱动，夯实 RWA 实践根基
本次大会以 “共筑生态・数融未来” 为主题，汇聚政产学研金用多方力量。在联盟启动仪式上，随着启动屏点亮，全球资产数字化 RWA 生态联盟（RWAEA）正式成立，明树数据与近百位行业代表共同见证这一行业里程碑时刻。启动仪式后，联盟举行 “首批联合发起单位及个人创始会员授牌仪式”。联盟副理事长李涛、秘书长国锋为明树数据等首批联合发起单位授牌。

与此同时，联盟与明树数据等首批战略合作机构签署战略合作框架协议，内容涉及“RWA技术研发”“实体资产数字化试点”“跨境资产流通探索”等多个方向，多方携手将RWA从“理论探讨”推动成为“落地实践”。

02思想碰撞，提供 RWA 实战指南
在大会主题演讲环节，明树数据董事长兼 CEO 肖光睿带来《从数据资产化到资产数字化：企业价值提升的战略路径》主题分享，为参会嘉宾构建 RWA 落地宏观框架的同时，系统性拆解中国企业布局 RWA 的 “方法论” 与 “路线图”。演讲中，肖光睿从香港金管局 “Ensemble 项目沙盒” 计划、《稳定币条例》等政策解码，到 “十步出海全景” 合规路径梳理，为企业避开 RWA 布局风险点、高效对接全球市场提供清晰指引，引发现场强烈共鸣。

此前，明树数据在2025中国国际大数据产业博览会现场发布了《从数字资产化到资产数字化：内地企业通过中国香港发行RWA的战略路径与全球竞争格局》主题报告（以下简称“报告”），为企业利用中国香港国际金融中心地位布局RWA提供实战指南。
技术赋能价值释放：自研平台上线，打通数据资产化全链路
此外，除了生态参与与思想引领，明树数据更以技术创新为 RWA 落地提供硬核支撑，明树数据独立自研「“明树智数”数据资产管理平台」上线，该平台深度融合明树团队多年行业研究经验与低代码系统开发能力，聚焦行业数据应用场景开发及价值释放，为客户打造 “数据资源采集 — 数据治理 — 数据应用场景自动开发 — 数据资产动态管理” 的一站式服务闭环。
无论是实体资产数字化过程中的数据整合需求，还是 RWA 全流程中的数据动态监控需求，“明树智数” 平台都能精准响应 —— 通过低代码特性降低企业数据应用门槛，通过全链路管理保障数据资产安全与价值最大化，为 RWA 生态中 “数据赋能资产” 提供关键技术底座，助力企业高效盘活数据资产、对接 RWA 市场机遇。作为 RWA 生态的积极构建者与数实融合的坚定践行者，明树数据将持续以 “生态参与 + 思想引领 + 技术赋能” 三驾马车为驱动，整合自身在政策研究、数据治理、技术研发等领域的优势，助力更多企业合规、高效布局 RWA，推动全球资产数字化生态高质量发展，为数字经济与实体经济深度融合贡献 “明树力量”。`
  },
  {
    title: "第三届数字生态与治理论坛在济举办 明树数据再次担纲地方政府新基建投资分指数",
    date: "2025-09-24",
    category: "出席活动",
    image: szstImg,
    content: `9月19日至20日，“第三届数字生态与治理论坛暨数字生态指数 2025 发布会” 在山东济南盛大启幕，来自全国高校、科研机构与企业的200多位专家学者齐聚一堂，共探数字生态发展新路径。作为数字生态协同创新平台核心成员及指数工作组成员，北京明树数据科技有限公司（以下简称“明树数据”）与北京大学大数据分析与应用技术国家工程实验室再度深度合作，联合发布地方政府新基建投资指数，董事长兼 CEO 肖光睿现场分享数据要素应用实践成果，为行业数智化转型注入新动能。

连续六年深耕指数研究 新基建指数填补决策空白

本次发布的《数字生态指数 2025》已是该系列报告的第六年成果，重点剖析人工智能产业发展规律，为国家数字治理战略调整、地方政策制定及行业转型提供关键决策依据。在此基础上，明树数据联合北大实验室推出的地方政府新基建投资指数，进一步聚焦基建领域数字化转型需求，通过整合全国新基建项目数据、投资效能指标及区域发展特征，构建多维度评估体系。
明树数据依托自主研发的低代码平台及多套 AI 算法模型，团队对海量基建数据进行深度治理与分析，最终形成的指数成果可精准反映各地新基建投资潜力与落地效能，为地方政府优化投资布局、社会资本参与项目提供数据支撑。
明树数据解读数据资产价值 实践案例获行业关注

在主题报告环节，明树数据董事长兼CEO肖光睿以《数据要素应用与数据资产价值实现路径》为题，结合企业实践深入剖析数据从资源到资产的转化逻辑。报告中，肖光睿创造性提出数据资产价值曲线理论，通过交通等多个领域落地案例，详解数据要素在生产流程优化、成本控制及新价值创造中的应用场景，探索数据资产化、资本化的核心路径。

当前AI技术正加速融入产业实践，而数据要素正是激活技术价值的核心密钥。 明树数据通过数据采集、治理、场景开发及动态管理的一站式服务，已助力多家企业实现数据资产增值。这一实践与《数字生态指数 2025》中的趋势高度契合，为行业破解“数据价值难落地” 难题提供了可复制的解决方案。

协同创新筑生态 数智赋能高质量发展

作为数字生态协同创新平台的重要成员，明树数据此次深度参与论坛及指数发布工作，既是对 “以数据为核心” 发展理念的践行，更是平台多方协作机制的生动体现。未来，明树数据将持续依托大数据与 AI 技术优势，深化与北大实验室等机构的协同创新，在数据要素应用、新基建投资研究等领域持续发力，为构建高效协同的数字生态体系、推动高质量发展贡献专业力量。
日前，明树数据在2025中国国际大数据产业博览会现场发布了《从数字资产化到资产数字化：内地企业通过中国香港发行RWA的战略路径与全球竞争格局》主题报告（以下简称“报告”），为企业利用中国香港国际金融中心地位布局RWA提供实战指南。
此外，明树数据独立自研「“明树智数”数据资产管理平台」上线，平台基于明树团队多年行业研究经验及低代码系统开发能力研发，聚焦行业数据应用场景开发及价值释放，可为客户提供数据资源采集、治理、数据应用场景自动开发及后续数据资产动态管理一站式服务。`
  },
  {
    title: "明树数据正式通过 DCMM 认证，数据管理能力获权威认可！",
    date: "2025-09-24",
    category: "公司荣誉",
    image: djzsImg,
    content: `近日，北京明树数据科技有限公司（以下简称“明树数据”）在数据服务领域再传佳音，明树数据正式通过数据管理能力成熟度模型（DCMM）2 级认证。

DCMM（数据管理能力成熟度模型）作为我国数据管理领域的首个国家标准，由工业和信息化部牵头制定，从数据战略、数据治理、数据架构、数据应用等八大能力域对企业数据管理水平进行全方位评估，其认证结果被各级政府、央国企项目招投标列为核心资质门槛。此次明树数据通过的 2 级认证（受管理级），是企业数据管理能力从 “基础建设” 迈向 “规范运营” 的关键标志，需满足一系列严苛的资质与能力要求。通过 DCMM 体系的梳理与优化，明树数据实现数据流程的标准化、核心资产的可视化与安全风险的可控化。目前，明树数据的结构化数据管理覆盖业务全链条，通过专业工具实现数据质量实时监控与安全合规管控，为客户提供更可靠的数据服务支撑。`
  }
];

// --- Mock Case Data for Services (New function) ---
const getServiceCases = (serviceName) => {
    const specificCases = {
      "投融资规划": [
        { title: `咸阳市项目投融资顾问`},
        { title: `陵水县项目投融资顾问`},
        { title: `兰州市城市轨道交通第二期建设规划投融资方案研究`},
        { title: `宁夏高速公路规划新建、改扩建项目实施计划及投融资分析`},
      ],
        "资金申报": [
            { title: "某县政府专项债项目", desc: "2025年协助县域成功申报政府专项债项目24个，涉及能源、交通、教育、医疗、农业、产业园区、保障性安居、城市更新等众多领域，项目总投资55.48亿元，全生命周期发债额度40.13亿元。" }
        ],
        // "数据资源入表": [
        //     { title: "某大型国企数据资产入表", desc: "提供数据确权、成本计量与价值评估服务，助力企业数据资产成功入表，规模超亿元。" },
        //     { title: "数据资产审计支持", desc: "为客户数据资产入表提供全套审计支持材料，保障流程顺利通过。" }
        // ],
        "交通量预测": [
            { title: "新建高速公路收益预测", desc: "利用多源数据融合模型，精准预测新建高速公路未来15年交通量与通行费收益。" },
            { title: "路网拥堵趋势分析", desc: "提供短期交通流预测，辅助高速公路运营单位制定错峰引流策略。" }
        ],
        // Mock cases for other detailed services
        "特许经营（PPP新机制）": [
            { title: "G4223武汉至重庆高速公路重庆巫山(鄂渝界)至万州段（一期）", desc: "该项目为PPP新机制以来重庆市第一个PPP项目，目前项目已入库并完成投资人招标，为后续重庆市收费公路PPP项目提供了可借鉴的模板。" },
            { title: "重庆綦江至贵州习水高速公路", desc: "该项目横跨重庆、贵州两地，我司以PPP新机制系列政策文件为准绳，以盈利能力分析为抓手，结合项目实际情况开展投融资模式及机制设计、特许经营可行性评估、绩效考核机制设立等方面的工作，为项目后期实施奠定了良好的基础；同时依托服务多条跨区域高速公路 PPP项目的成熟经验，明确各区域的权利义务边界、利益共享与风险共担原则，为跨省项目方案策划提供可复制的合作范式。目前该项目已完成投资人招标。" }
        ],
        "公共资源有偿使用": [
          {
            title: "兰州市道路停车泊位及部分公共停车场公共资源有偿使用项目",
            desc: "在发改办投资〔2024〕1013号文出台后，该项目面临模式转换。我司第一时间协助政府将原特许经营模式合规切换为“公共资源有偿使用”路径，全过程重塑程序、重拟合同，既通过财政、司法、金融机构三重合规审查，又成功锁定银行授信，为地方盘活存量资产、守住风险底线、实现融资落地提供一站式解决方案。"
          }
        ],
        "存量PPP管理": [
          {
            title: "成都东部新区建设运营期咨询",
            desc: "通过对存量PPP项目的全流程管理，成都东部新区平稳承接项目并实现了持续稳定的运营。"
          },
          {
            title: "四川省成都市简州新城城市综合开发运营PPP项目管理咨询",
            desc: "项目实施范围内共计26个子项目，目前，已有16个子项目正常进入运营。"
          },
          {
            title: "北京轨道交通16号线项目再谈判咨询",
            desc: "通过对比分析签署特许经营协议时和全面开通运营时的宏观经济指标、客流量、运营成本、技术更新等因素，为重新确定票价提供了技术支撑，促成政府方与项目公司达成一致，项目全线开通运营。"
          },
          {
            title: "新疆乌鲁木齐市交通运输局规范和优化PPP项目咨询服务",
            desc: "为政府提供多种优化措施建议，协助政府进行规划优化谈判，实现了存量PPP项目的规范和优化的预期目标。"
          }
        ],
        "其他投融资模式": [
          {
            title: "柞水县南水北调中线（乾佑河流域）水源涵养及特色产业振兴EOD项目",
            desc: "项目于2025年1月入选生态环境部生态环保金融支持储备库。"
          },
          {
            title: "兰州市南北两山“省门第一道”水利基础配套设施工程维修改造及绿化项目（一期）EPC+O",
            desc: "协助政府项目实施流程加快一个月，运营期每年节省40%的运营维护费。"
          }
        ],
        // "可行性研究": [
        //     { title: "某地区域智慧能源项目可研", desc: "编制深度可行性研究报告，获得发改委批复，保障项目顺利实施。" }
        // ],
        "绩效评价": [
          {
            title: "四川宣汉县南坝新城基础设施建设PPP项目（一期）龙驹坝大桥项目建设期绩效考核评价服务",
            desc: "协助政府方完成项目建设期绩效考核，为项目按效付费和平稳运营打下坚实基础。"
          },
          {
            title: "空港新城PPP项目专业咨询服务",
            desc: "协助政府方与社会资本方完成补充协议签订，并规范完成9个子项目建设期绩效考核和3个子项目运营期绩效考核。打通“协议签订-绩效考核-按效付费”的闭环管理链条，为项目建设运营合规推进、按效付费及可持续运营提供坚实支撑。"
          }
        ],
        "投资风险评估": [
          {
            title: "成都至峨眉山高速公路特许经营项目项目投资风险评估",
            desc: "契合国资监管对投资 “事前有评估” 的硬性要求，提前分析和制定应急预案，降低项目发生损失的可能性，促进国有资产保值增值。"
          }
        ],
        "社会稳定性评估": [
          {
            title: "G2002石家庄绕城高速石家庄西端口收费站至石太枢纽段及G20青银高速石太枢纽至冀晋界段改扩建工程征地项目",
            desc: "顺利完成项目社会稳定性风险评估工作，推进土地征收工作的顺利开展，正确地处理好土地征收项目与社会稳定的关系，切实解决影响社会和谐稳定的源头性、根本性、基础性问题，为项目后续环节顺利实施提供支撑。"
          }
        ],
        "招标代理": [
          {
            title: "重庆綦江至贵州习水高速公路",
            desc: "作为该项目特许经营者招标的招标代理机构，明树数据严格遵循 “公平、公正、公开” 原则，以全流程规范化服务保障招标工作高效推进。从招标方案拟定到中标结果公告，仅用两个多月便完成了从发布招标计划到确定中标人的全流程工作，充分体现了专业服务的高效性。"
          }
        ],
        // "企业数字化转型": [
        //     { title: "中建四局投资项目管理系统", desc: "通过数字化手段重塑管理场景，通过实现数据标准化、管理规范化、协作线上化、报表自动化与风险识别智能化，全方位提升管理工作的效率与质量，优化人员效能、释放生产力潜能，助力企业管理模式实现迭代升级。" }
        // ]
        "投资前-交通量预测": [
          {
            title: "山西省G108国道车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "江西省弋南高速车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "福建省晋同高速车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "甘肃省G0611高速车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "广东省惠肇高速车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "湖南省四个项目包车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "湖北省荆随、荆监高速车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "河南G208国道车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "辽宁省秦深高速车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "安徽省G9912高速车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "江苏省宁常高速车行轨迹分析及交通量、通行费预测"
          },
          {
            title: "广西省向海大桥车行轨迹分析及交通量、通行费预测"
          }
        ],
        "运营前-定价机制研究": [
          {
            title: "甘肃省收费公路定价机制研究"
          },
          {
            title: "广西龙门大桥、大风江大桥收费标准方案"
          }
        ],
        "运营期-引流增收与拥堵治理": [
          {
            title: "甘肃省G30连霍高速差异化收费研究",
            desc: "入选《中国交通优秀案例2022》；获得2024年“数据要素X”大赛甘肃省分赛区第一名，并入围国家数据局主办的全国总决赛；实施第一年净增收8.74亿元，实施第二年净增收11.48亿元，增收金额占总收入的15%左右。"
          },
          {
            title: "湖北枣潜高速差异化收费研究",
            desc: "实施后年增收800万元左右。"
          },
          {
            title: "甘肃省敦当高速差异化收费研究",
            desc: "实施后日均增收2万元左右。"
          },
          {
            title: "湖北省沪渝高速公路拥堵研判与治理"
          }
        ],
        "数据资源入表": [
          {
            title: "陕西旬凤韩黄高速公路有限公司数据资产入表项目",
            desc: "4月30日， 陕西旬凤韩黄高速公路有限公司高速公路综合监管与应急数据资源、高速公路收费站通行数据分析与规划数据资源顺利通过贵阳大数据交易所审核，成为中国中铁旗下“第一家”取得《数据资产登记凭证》的国有企业。"
          },
          {
            title: "兰州轨道数据资产入表项目",
            desc: "兰州市轨道交通有限公司成为兰州市“第一家”取得《数据资产登记凭证》的市属国有企业。"
          }
        ],
        "数据资产融资": [
          {
            title: "四川数据资产ABS服务项目"
          }
        ],
        "明树云·标准化数据会员服务": [
          {
            title: "华为明树基建投融资会员服务",
            desc: "为业务部门梳理新基建方面的重大项目、挖掘潜在项目机会提供先机"
          },
          {
            title: "中铁物贸明树基建投融资会员服务",
            desc: "为业务部门提供项目中标、竞争对手分析数据支撑"
          },
          {
            title: "西南设计究明树基建投融资会员服务",
            desc: "为业务部门开展政策研究提供支持"
          },
          {
            title: "为业务部门开展政策研究提供支持",
            desc: "为银行寻找业务机会、评估信用风险、履行监管职责提供大量信息"
          }
        ],
        "定制化数据交易服务": [
          {
            title: "华泰基建投融资定制化数据服务",
            desc: "帮助华泰投行可以提前跟踪目标公司的项目进展，挖掘潜在客户，受到客户的认可，连续续签5年。"
          },
          {
            title: "市场业务支持系统（碧水智通）系统开发以及数据服务",
            desc: "系统稳定运行一年，为碧水源的市场开拓，抢占市场先机、分析市场竞争对手提供有力依据。"
          }
        ],
        "数据运营/授权服务": [
          {
            title: "石家庄城停科技数据产品规划项目",
            desc: "规划数据应用场景并构建三大核心模型：客户价值与订单消费分析模型（支撑精准营销）、分时段分目的地停车流 OD 模型（优化资源配置）、区域经济分析模型（助力经济规划），形成完整数据产品规划体系。经中企华采用收益法评估，该数据产品价值超 8000 万元，凸显显著市场价值。"
          }
        ],
        "政府/企业投资项目管理平台": [
          {
            title: "湖北省投资和重大项目智慧应用平台（暨湖北省投资项目在线审批监管平台4.0）项目",
            desc: "实现投资项目从谋划到决策的全流程数字化管理，提高工作效率和协同水平。谋划库更加清晰可控，审批流程透明快捷，减少材料重复和等待时间。计划管理更加标准化、可监控，保障投资计划顺利执行。融资推介促进资金快速对接，提高项目落地率。决策模块提供实时数据和可视化分析，让管理者更快掌握项目进展、风险与趋势。整体上实现“项目状态一目了然、审批流程一网通办、计划执行更可控、决策依据更准确”"
          },
          {
            title: "关键领域投资项目数据服务系统",
            desc: "通过信息共享与回传的双向流转，大幅提升了项目与银行间的信息协同效率；借助项目全生命周期数据（基本、贷款、建设信息）的查询、统计及监测报告，实现了项目动态的精准把控；同时，统计指标、大屏展示及多维度数据分类呈现，让项目数据更直观清晰，为决策提供了高效的可视化支撑，助力项目管理从分散化向精细化转变。"
          }
        ],
        "存量PPP项日管理系统": [
          {
            title: "某市政府和社会资本合作综合信息管理系统",
            desc: "通过整合多主体、多类型数据库与专项子系统，实现了 PPP项目从储备推进到监控的全生命周期规范化管理，提升了项目运营效率；多维度数据统计分析功能让PPP项目相关数据直观呈现，为决策提供数据支撑；各类机构信息的集中管理与审核机制，保障了参与主体信息的合规性与准确性；政策法规、新闻资讯的集中发布与展示，促进了信息共享与传播，降低了跨主体沟通成本，同时通过监控预警等功能，强化了项目风险管控能力。"
          }
        ],
        "政府特许经营项目管理系统": [
          {
            title: "湖北省特许经营智慧管理平台",
            desc: "依托城市生命线平台和行业管理平台建设成果，搭建市政公用事业特许经营活动智慧监管平台。以运营评价作为智慧监管抓手，通过对特许经营活动的事前（项目准入）－事中（运行监管）－事后（运营评价）全过程监管，形成特许经营活动群众投诉、行业监管和专责监督的一体化平台。充分应用大数据比对技术，加强风险研判，并实时短信通知，实现特许经营活动全过程在线智慧化监管，对市政公用事业特许经营项目实现监管全覆盖，运营评价率达到100%。"
          }
        ],
        "发改委在线审批平台": [
          {
            title: "湖北省投资和重大项目智慧应用平台（暨湖北省投资项目在线审批监管平台4.0）项目",
            desc: "整合原有六大平台，实现全省投资项目谋划储备、审批监管、建设调度、延伸服务、辅助决策“一网通办”。实现全过程管理（实现从谋划、审批、建设、竣工达效等全生命周期监管服务）、全部门共用（完善服务省、市、县以及13个行业主管部门的通用功能和个性化功能，打造全省各部门重大项目管理的共用、共享平台）、全社会共享（分权限提供融资服务、推介服务，为公众、机构查询我省各级重大项目提供统一、便捷的服务窗口）。 "
          }
        ],
        "财政厅专项债管理系统": [
          {
            title: "某市政府债券项目在线评审系统",
            desc: "以信息化手段搭建专项债项目在线申报平台，通过智能模型自动筛除与政策不符的项目，大幅减轻人工审核负担；同时依托数字化工具实现在线审评，打破传统集中评审模式的时空限制；项目分配至各评审人员后，可随时在线开展评审工作，评审结果由系统自动汇总整合，全程高效规范、数据可溯。"
          }
        ],
        "采购与市场运营管理系统": [
          {
            title: "竞采系统",
            desc: "系统通过标准化竞采流程，实现了采购竞价的公开化、规范化管理，减少人工操作的随意性与沟通成本；公告、报价、结果等环节的线上化流转，大幅提升了竞采效率，缩短采购周期；供应商可实时参与、追溯竞价过程，保障了采购环节的透明性与公平性；配套的记录管理、数据模块，便于采购方沉淀竞采数据、复盘采购过程，助力采购决策更科学，同时强化了采购合规性，提升了企业采购管理的整体效能。"
          }
        ],
        "企业投资项目管理平台": [
          {
            title: "中建四局投资项目管理系统",
            desc: "提供涵盖企业全景仪表盘、项目信息全维度管控、投资全流程统筹、企划战略落地推进、计划协同跟踪、产值实时核算分析、财务一体化管理、商务全周期服务、综合协同统筹、全链条风险防控及智能统计报表生成的全方位服务，实现企业项目从规划到落地、从运营到管控的全流程数字化支撑与高效协同。"
          },
          {
            title: "兰州郎青交通科技有限公司投资管理信息系统"
          }
        ],
        "全生命周期项目管理系统": [
          {
            title: "葛洲坝集团交通投资有限公司项目综合分析及评价系统（投资管理系统）"}
        ],
        "资金管理平台": [
          {
            title: "财务预算信息系统",
            desc: "通过分层级的预算管理模块，实现了企业从总部到细分主体的预算全流程覆盖，各业务线（市政、开发等）的预算数据可精准拆分、集中管理；人工成本、筹资投资等专项预算功能，让不同类型的财务数据分类清晰、统计高效；结合资金支出明细与报告报表，能实时掌握预算执行情况，助力企业从预算编制到执行监控的精细化管控，提升财务决策的准确性与及时性。"
          },
          {
            title: "政府专项债券项目智能管理系统",
            desc: "以信息化手段搭建专项债项目在线申报平台，通过智能模型自动筛除与政策不符的项目，大幅减轻人工审核负担；同时依托数字化工具实现在线审评，打破传统集中评审模式的时空限制；项目分配至各评审人员后，可随时在线开展评审工作，评审结果由系统自动汇总整合，全程高效规范、数据可溯。"
          },
          {
            title: "基础设施REITs回收资金使用填报系统",
            desc: "系统通过标准化填报流程，实现了REITs回收资金使用数据的规范化采集与管理，确保数据真实合规。分层级的权限设置（企业填报、投资司审核、省级发改委查看、管理员运维），明确了各角色职责，提升了数据流转与审核效率。历史记录追溯功能让数据全生命周期可查可管，便于监管与审计。同时，支持数据修改、退回重提、方案调整等灵活操作，适配企业实际业务需求，有效降低了填报与管理成本，为REITs项目常态化发行提供了高效的数据支撑。"
          }
        ],
        "慈善公益智慧管理平台": [
          {
            title: "悦尔公益数字化平台",
            desc: "平台通过数字化工具整合公益全链路工作，既实现了单个公益项目从信息、财务到物资的精细化管控，提升项目执行的透明度与效率；也通过组织管理模块，统一协调公益组织的合作、传播、人事等事务，降低跨部门协作成本。数字大屏、仪表看板等功能让公益数据可视化呈现，强化了项目成果的展示与传播效果；同时，公益专属模块（如志愿服务、慈善信托）适配行业特性，助力公益组织更专业、高效地开展慈善活动，放大公益价值的辐射范围。"
          },
          {
            title: "强师工程筹资管理系统建设项目"
          }
        ],
        "智慧农业管理平台": [
          {
            title: "乐田农业数字化项目软件系统",
            desc: "实现农业与工业生产的全链路透明管理，提升数据准确性与协同效率，减少人工统计与沟通成本；通过实时监测与预警降低风险，提高农产品与加工品质量稳定性；通过追溯体系保证合规和食品安全；通过数字化决策支持提升土地利用率、生产效率和库存周转效率。"
          }
        ],
        "交通智慧管理平台": [
          {
            title: "新疆生产建设兵团智慧物流大数据多式联运平台工程",
            desc: "从“看不见的风险”到“可预判的服务”，过去依赖人工巡查和零散数据，现在通过视频事件分析、多部门数据联动（如气象局天气预警+路网车流数据），能提前发现恶劣气象灾害风险、超速车辆聚集等隐患，并查看路段情报板是否进行实时提醒，减少二次事故。本系统面向兵团交通管理部门、运营单位相关部门、应急管理部门等，解决“看不清全局”问题、“防不住隐患”问题、“数据散、联动慢”问题。"
          },
          {
            title: "公路交通路网通行数据分析系统",
            desc: "明树路网平台将高速公路、普通公路、财务数据相结合，打破了各生产系统之间的“数字壁垒” ，包括基于GIS地图的路网基础设施基础信息展示模块、交通量时空分布、交通量车型分布、服务水平分析、交通量预测、收费公路还贷风险分析等模块。凭借自身同时在业务和技术上的专业性，将复杂的算法模型平台化、工具化，解决了日常的评估、预测数据杂、步骤多、计算难等问题。多维度查询、筛选、下载功能也很大地提高了办公效率。"
          },
          {
            title: "差异化收费智慧监测平台",
            desc: "明树基于自研低代码平台，内置基于多年交通行业经验研发的出行选择模型算法建立差异化收费智慧监测平台，可实时监测评估已实时差异化收费路段的实时效果，同时可自动化、智能化筛选一定区域内具有差异化收费潜力的路段。并通过内置出行选择模型对不同差异化收费方案下的收益、风险、平衡点分进行自动化敏感性分析，协助业主决策。"
          }
        ],
        "差异化收费智慧监测平台": [
          {
            title: "湖北省差异化收费智慧监测平台"
          }
        ],
        "明树数智稽核&工单协查系统": [
          {
            title: "云南RPA工单协查系统"
          }
        ],
         "合同审查智能体": [
          {
            title: "成都产投集团AI应用建设项目"
          }
        ],
           "公文检查智能体": [
          {
            title: "成都产投集团AI应用建设项目"
          }
        ],
           "投资决策问答智能体": [
          {
            title: "成都产投集团AI应用建设项目"
          }
        ],
           "桥隧结构健康诊断智能体": [
          {
            title: "蜀道集团人工智能应用可行性评估研究"
          }
        ],
           "高速公路边坡监测智能体": [
          {
            title: "蜀道集团人工智能应用可行性评估研究"
          }
        ]
    };
    
    return specificCases[serviceName] || [];
};


/* --- 1. Global Background Particles --- */
const BackgroundParticles = () => {
  const canvasRef = useRef(null);
  useEffect(() => {
    const canvas = canvasRef.current;
    if (!canvas) return;
    const ctx = canvas.getContext('2d');
    let particles = [];
    let animationFrameId;
    const resize = () => {
      if (canvas) {
        canvas.width = window.innerWidth;
        canvas.height = window.innerHeight;
      }
    };
    window.addEventListener('resize', resize);
    resize();
    class Particle {
      constructor() {
        this.x = Math.random() * (canvas?.width || window.innerWidth);
        this.y = Math.random() * (canvas?.height || window.innerHeight);
        this.vx = (Math.random() - 0.5) * 0.2; 
        this.vy = (Math.random() - 0.5) * 0.2;
        this.size = Math.random() * 1.5 + 0.5;
        this.alpha = Math.random() * 0.3 + 0.1;
      }
      update() {
        if (!canvas) return;
        this.x += this.vx;
        this.y += this.vy;
        if (this.x < 0 || this.x > canvas.width) this.vx *= -1;
        if (this.y < 0 || this.y > canvas.height) this.vy *= -1;
      }
      draw() {
        if (!ctx) return;
        ctx.fillStyle = `rgba(200, 255, 255, ${this.alpha})`;
        ctx.beginPath();
        ctx.arc(this.x, this.y, this.size, 0, Math.PI * 2);
        ctx.fill();
      }
    }
    const init = () => {
      particles = [];
      for (let i = 0; i < 60; i++) { 
        particles.push(new Particle());
      }
    };
    init();
    const animate = () => {
      if (!ctx || !canvas) return;
      ctx.clearRect(0, 0, canvas.width, canvas.height);
      particles.forEach((p, index) => {
        p.update();
        p.draw();
        for (let j = index + 1; j < particles.length; j++) {
          const p2 = particles[j];
          const dist = Math.hypot(p.x - p2.x, p.y - p2.y);
          if (dist < 120) {
            ctx.beginPath();
            ctx.strokeStyle = `rgba(200, 255, 255, ${0.03 * (1 - dist / 120)})`;
            ctx.lineWidth = 0.5;
            ctx.moveTo(p.x, p.y);
            ctx.lineTo(p2.x, p2.y);
            ctx.stroke();
          }
        }
      });
      animationFrameId = requestAnimationFrame(animate);
    };
    animate();
    return () => {
      window.removeEventListener('resize', resize);
      cancelAnimationFrame(animationFrameId);
    };
  }, []);
  return <canvas ref={canvasRef} className="fixed inset-0 w-full h-full pointer-events-none z-0 mix-blend-screen" />;
};

/* --- 2. Galaxy Background --- */
const GalaxyBackground = () => {
  const canvasRef = useRef(null);
  useEffect(() => {
    const canvas = canvasRef.current;
    if (!canvas) return;
    const ctx = canvas.getContext('2d');
    let stars = [];
    let animationFrameId;
    const resize = () => {
      if (canvas) {
        canvas.width = window.innerWidth;
        canvas.height = window.innerHeight;
      }
    };
    window.addEventListener('resize', resize);
    resize();
    class Star {
      constructor() {
        this.reset();
      }
      reset() {
        this.angle = Math.random() * Math.PI * 2;
        this.radius = Math.random() * (window.innerWidth < window.innerHeight ? window.innerWidth : window.innerHeight);
        this.x = 0;
        this.y = 0;
        this.z = Math.random() * 2 + 0.5;
        this.speed = 0.0005 * (this.radius / 100) + 0.0002;
        this.color = Math.random() > 0.8 ? '#00FFC2' : (Math.random() > 0.5 ? '#00B8D9' : '#FFFFFF');
        this.opacity = Math.random() * 0.8 + 0.2; 
      }
      update() {
        this.angle += 0.0005;
        const centerX = canvas.width / 2;
        const centerY = canvas.height / 2;
        this.x = centerX + Math.cos(this.angle) * (this.radius * 0.8);
        this.y = centerY + Math.sin(this.angle) * (this.radius * 0.4);
      }
      draw() {
        if (!ctx) return;
        ctx.beginPath();
        ctx.arc(this.x, this.y, this.z * (Math.random() > 0.9 ? 1.5 : 1), 0, Math.PI * 2);
        ctx.fillStyle = this.color;
        ctx.globalAlpha = this.opacity;
        ctx.fill();
        ctx.globalAlpha = 1.0;
      }
    }
    const init = () => {
      stars = [];
      for (let i = 0; i < 400; i++) {
        stars.push(new Star());
      }
    };
    init();
    const animate = () => {
      if (!ctx || !canvas) return;
      // Using #111318 to match site background
      ctx.fillStyle = '#111318'; 
      ctx.fillRect(0, 0, canvas.width, canvas.height);
      stars.forEach(star => {
        star.update();
        star.draw();
      });
      animationFrameId = requestAnimationFrame(animate);
    };
    animate();
    return () => {
      window.removeEventListener('resize', resize);
      cancelAnimationFrame(animationFrameId);
    };
  }, []);
  return (
    <div className="fixed inset-0 w-full h-full pointer-events-none z-0">
        <div className="absolute inset-0 bg-gradient-to-b from-[#0B0D11] via-[#111318] to-[#050505] z-0"></div>
        <canvas ref={canvasRef} className="absolute inset-0 w-full h-full z-0 mix-blend-plus-lighter" />
        {/* Radial Mask to fade edges */}
        <div className="absolute inset-0 z-10 pointer-events-none bg-[#111318]" style={{ maskImage: 'radial-gradient(circle at center, transparent 20%, black 90%)', WebkitMaskImage: 'radial-gradient(circle at center, transparent 20%, black 90%)' }}></div>
        <div className="absolute inset-0 z-0 opacity-10 pointer-events-none" 
             style={{
                 backgroundImage: 'linear-gradient(rgba(0, 255, 194, 0.3) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 255, 194, 0.3) 1px, transparent 1px)',
                 backgroundSize: '100px 100px',
                 transform: 'perspective(500px) rotateX(60deg) translateY(-100px) scale(2)',
                 maskImage: 'radial-gradient(ellipse at center, black 30%, transparent 70%)'
             }}>
        </div>
    </div>
  );
};

/* --- 3. Product Static Schematics --- */
const ProductVisualization = ({ index }) => {
  // ... ProductVisualization component code remains the same as previous version ...
  const primaryColor = "#00FFC2";
  const secondaryColor = "#4B5563";
  const bgColor = "#0f1115";
  const DiagramFrame = () => (
    <>
      <rect x="10" y="10" width="280" height="180" fill="none" stroke={secondaryColor} strokeWidth="0.5" strokeDasharray="4 2" opacity="0.5" />
      <path d="M10 20 V10 H20 M280 20 V10 H290 M10 180 V190 H20 M280 180 V190 H290" stroke={primaryColor} strokeWidth="1" fill="none" />
      <text x="20" y="180" fill={secondaryColor} fontSize="8" fontFamily="monospace">SYSTEM_ARCHITECTURE_VIEW</text>
    </>
  );
  const Box = ({ x, y, w, h, label, highlight }) => (
    <g>
      <rect x={x} y={y} width={w} height={h} fill={bgColor} stroke={highlight ? primaryColor : secondaryColor} strokeWidth={highlight ? "1" : "0.5"} />
      {label && <text x={x + 5} y={y + 12} fill={highlight ? "#fff" : "#9CA3AF"} fontSize="8" fontFamily="monospace" fontWeight={highlight ? "bold" : "normal"}>{label}</text>}
      <rect x={x} y={y} width="3" height="3" fill={highlight ? primaryColor : secondaryColor} />
      <rect x={x + w - 3} y={y + h - 3} width="3" height="3" fill={highlight ? primaryColor : secondaryColor} />
    </g>
  );
  const Arrow = ({ x1, y1, x2, y2 }) => (
    <g>
        <path d={`M${x1} ${y1} L${x2} ${y2}`} stroke={primaryColor} strokeWidth="0.5" markerEnd="url(#arrowhead)" />
    </g>
  );
  if (index === 0) {
    return <img src={sjzcglImg} />;
  } else if (index === 1) {
    return <img src={kxsjkjImg} />
  } else if (index === 2) {
    return <img src={szjhxtImg} />
  } else if (index === 3) {
    return <img src={gscxImg} />
  } else if (index === 4) {
    return <img src={jtlwImg} />
  } else if (index === 5) {
    return <img src={zhgyptImg} />
  }
  return <div className="w-full h-full bg-[#15171e] flex items-center justify-center text-gray-500 text-xs font-mono">SYSTEM_VIEW_UNAVAILABLE</div>;
};

/* --- 3.5 Certificate Carousel Component --- */
const CertificateCarousel = () => {
    const certs = [
        {
          img: gssImg
        },
        {
          img: bfImg
        },
        {
          img: guissImg
        },
        {
          img: hnsjsImg
        },
        {
          img: sssImg
        },
        {
          img: shensImg
        }
    ];

    const itemCount = certs.length;
    const rotateAngle = 360 / itemCount;
    // 调整 radius 以收窄效果
    const radius = 180; 

    return (
        <div className="w-full h-[400px] flex justify-center items-center relative overflow-hidden perspective-container">
            {/* Ambient Light Effect */}
            <div className="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[300px] h-[300px] bg-[#00FFC2]/10 blur-[80px] rounded-full pointer-events-none"></div>
            
            <div className="carousel-spinner">
                {certs.map((cert, index) => {
                    const angle = index * rotateAngle;
                    return (
                        <div 
                            key={index}
                            className="carousel-item absolute top-1/2 left-1/2 -ml-[80px] -mt-[110px] w-[160px] h-[220px]"
                            style={{ 
                                transform: `rotateY(${angle}deg) translateZ(${radius}px)`
                            }}
                        >
                            {/* Certificate Card Design */}
                            <img src={cert.img} />
                        </div>
                    );
                })}
            </div>
            
            <style>{`
                .perspective-container {
                    perspective: 1000px;
                }
                .carousel-spinner {
                    width: 100%;
                    height: 100%;
                    position: absolute;
                    transform-style: preserve-3d;
                    animation: spin 20s infinite linear;
                }
                .carousel-item {
                    backface-visibility: visible; /* Make visible from back for 3D effect or hidden if preferred */
                }
                @keyframes spin {
                    from { transform: rotateY(0deg); }
                    to { transform: rotateY(-360deg); }
                }
            `}</style>
        </div>
    );
};

/* --- 4. Data Positioning Section (Full) --- */
const DataPositioningSection = () => {
    const clients = [
        "华为", "宏信建投", "浙江交投", "中建八局", "中建一局", 
        "中交投资", "远东宏信", "长江生态环保", "首创环保", "北控水务",
        "招商证券", "华泰证券", "浦发银行", "中国农业发展银行", "中国建设银行",
        "平安银行", "工银科技", "中铁建大桥局", "中铁城市开发研究院", "中交公规院"
    ];

    return (
        <div className="w-full max-w-6xl mx-auto mb-12 relative">
             {/* Description Text is here for Data Page */}
             <div className="mb-10 animate-fade-in-up">
                 <p className="text-gray-300 text-sm md:text-base leading-relaxed text-justify max-w-4xl">
                    明树数据深耕数据交易和服务8年，为上千家金融机构、上市公司和地方国企及数万名会员提供数据服务，是各大数据交易所和交易中心注册数商。基于明树数据聚合平台，可以快速设计和开发数据产品，对接不同应用场景数据需求，实现数据资产价值挖掘和变现。
                 </p>
            </div>

            <div className="grid grid-cols-1 lg:grid-cols-5 gap-12 items-center">
                {/* Left: Content - 3/5 width */}
                <div className="lg:col-span-3 space-y-3 animate-fade-in-up">
                    <div className="grid grid-cols-1 sm:grid-cols-2 gap-3">
                        {[
                            // 卡片宽度被 sm:grid-cols-2 控制，但外层 lg:col-span-3 宽度不变
                            { title: "数据资源集成商", icon: <Database className="w-6 h-6"/>, desc: "汇聚全量多源异构数据，构建高质量数据集。" },
                            { title: "数据产品开发商", icon: <Code className="w-6 h-6"/>, desc: "基于场景深度开发，打造高价值数据应用产品。" },
                            { title: "数据交易经纪商", icon: <Briefcase className="w-6 h-6"/>, desc: "撮合供需双方，提供合规、安全的数据交易服务。" },
                            { title: "数据资产服务商", icon: <Coins className="w-6 h-6"/>, desc: "全链路数据资产化和金融创新服务，实现数据资产持续增值。" }
                        ].map((item, idx) => (
                            <div key={idx} className="bg-[#1a1c23] border border-white/5 p-3 rounded-lg hover:border-[#00FFC2]/50 transition-colors group">
                                <div className="flex items-center gap-2 mb-1">
                                    <div className="p-1.5 bg-[#252830] rounded text-[#00FFC2] group-hover:bg-[#00FFC2] group-hover:text-black transition-colors">
                                        {item.icon}
                                    </div>
                                    <h4 className="text-lg font-bold text-white leading-tight">{item.title}</h4>
                                </div>
                                <p className="text-gray-400 text-xs leading-relaxed">{item.desc}</p>
                            </div>
                        ))}
                    </div>

                    <div className="grid grid-cols-2 md:grid-cols-4 gap-4 pt-3 border-t border-white/5">
                        {[
                            { val: "8年", label: "数据交易经验" },
                            { val: "8000+", label: "累计服务客户" },
                            { val: "400+", label: "开发数据产品" },
                            { val: "1亿+", label: "服务数据资产" }
                        ].map((stat, i) => (
                            <div key={i} className="text-center md:text-left">
                                <div className="text-xl font-bold text-[#00FFC2] font-mono">{stat.val}</div>
                                <div className="text-base text-white font-bold uppercase tracking-wider mt-0.5">{stat.label}</div>
                            </div>
                        ))}
                    </div>

                     {/* Scrolling Bar */}
                     <div className="relative overflow-hidden w-full pt-3 border-t border-white/5">
                        <div className="flex items-center gap-2 mb-1">
                            <div className="w-1 h-3 bg-[#00FFC2]"></div>
                            {/* Kept text-xl as requested */}
                            <span className="text-[#00FFC2] font-bold text-xl tracking-widest uppercase">部分客户</span>
                        </div>
                        <div className="relative">
                            <div className="absolute top-0 left-0 w-8 h-full bg-gradient-to-r from-[#16181d] to-transparent z-10"></div>
                            <div className="absolute top-0 right-0 w-8 h-full bg-gradient-to-l from-[#16181d] to-transparent z-10"></div>
                            <div className="flex gap-8 animate-infinite-scroll min-w-max">
                                {clients.map((client, index) => (
                                    <span key={index} className="text-sm font-medium text-gray-400 whitespace-nowrap hover:text-white transition-colors">{client}</span>
                                ))}
                                {clients.map((client, index) => (
                                    <span key={`dup-${index}`} className="text-sm font-medium text-gray-400 whitespace-nowrap hover:text-white transition-colors">{client}</span>
                                ))}
                            </div>
                        </div>
                    </div>
                </div>

                {/* Right: 3D Certificate Carousel - Align Right */}
                <div className="lg:col-span-2 relative flex justify-end items-center">
                     <CertificateCarousel />
                </div>
            </div>
        </div>
    );
};

/* --- 5. Data Resource Graph Component (Updated Title) */
const DataResourceGraph = () => {
  const [selectedIndustry, setSelectedIndustry] = useState(0);
  
  const resourceData = [
    {
      id: 0,
      name: "交通运输",
      icon: <Truck className="w-4 h-4 md:w-5 md:h-5" />, 
      desc: "覆盖货运、高速、城市交通及停车等全场景数据。",
      items: [
        "全国货车轨迹数据", "高速公路收费站明细", "普通公路交调站数据", "智能驾驶路侧感知数据", 
        "停车场实时数据", "新能源汽车充电数据", "路网交通流预测模型", "车辆OD轨迹分析"
      ]
    },
    {
      id: 1,
      name: "金融服务",
      icon: <Landmark className="w-4 h-4 md:w-5 md:h-5" />,
      desc: "涵盖银行、证券、保险及产业链金融核心数据。",
      items: [
        "金融行政许可信息", "企业ESG评级数据", "信贷意向衍生特征", "A股资产负债表",
        "采购商机数据集", "借记卡/贷记卡统计", "反洗钱黑名单", "绿色金融评价指标"
      ]
    },
    {
      id: 2,
      name: "生态环保",
      icon: <Leaf className="w-4 h-4 md:w-5 md:h-5" />,
      desc: "聚焦环境监测、碳排放及绿色发展数据。",
      items: [
        "中国上市公司碳排放榜", "污水处理厂运行数据", "空气质量反演监测", "重点排污单位名录",
        "自然灾害风险数据", "绿色能源使用统计", "排污许可证信息", "环保行政处罚记录"
      ]
    },
    {
      id: 3,
      name: "建筑基建",
      icon: <Building2 className="w-4 h-4 md:w-5 md:h-5" />,
      desc: "整合工程建设全生命周期与企业资质数据。",
      items: [
        "全国建筑企业资质库", "重大建设项目清单", "工程造价指标数据", "全国招投标信息",
        "注册建造师人员库", "古建筑数字模型", "房地产销售价格指数", "专项债项目库"
      ]
    },
    {
      id: 4,
      name: "工业制造",
      icon: <Settings className="w-4 h-4 md:w-5 md:h-5" />,
      desc: "连接产业链上下游，赋能智能制造。",
      items: [
        "产业链全景图谱", "工业品价格指数", "设备运行状态数据", "新能源汽车三电数据",
        "头部防护装备检测", "重型车排放监控", "钢铁/化工行业数据", "供应链协同数据"
      ]
    },
    {
      id: 5,
      name: "公共服务",
      icon: <Users className="w-4 h-4 md:w-5 md:h-5" />,
      desc: "服务于医疗、教育、法律等民生领域。",
      items: [
        "医疗耗材中标信息", "国家药品集采目录", "司法终本案件库", "各省统计年鉴数据",
        "中药材基础信息库", "学校/教育机构数据", "食品安全抽检数据", "人口普查统计数据"
      ]
    },
    {
      id: 6,
      name: "科技创新",
      icon: <Beaker className="w-4 h-4 md:w-5 md:h-5" />,
      desc: "汇聚专利、科研成果及创新指数。",
      items: [
        "专利著录项目信息", "临床试验数据库", "高新技术企业名单", "科研机构竞争力排行",
        "国家自然科学基金", "科技成果转化数据", "期刊论文引用数据", "院士专家数据库"
      ]
    },
    {
      id: 7,
      name: "能源产业",
      icon: <EnergyIcon className="w-4 h-4 md:w-5 md:h-5" />,
      desc: "覆盖电力、油气及新能源全链路数据。",
      items: [
        "新能源电池装机量", "城市供暖能耗分析", "加油站安全检测报告", "能源招投标信息",
        "电力消费标签数据", "全国油价实时数据", "燃气缴费行为分析", "光伏发电效能数据"
      ]
    }
  ];

  return (
    <div className="min-h-screen bg-[#111318] text-white relative overflow-hidden">
      {/* 数据板块部分 */}
      <section id="data" className="py-20 relative z-10">
        <div className="container mx-auto px-4">
          
          {/* 数据资源图谱 */}
            <div className="w-full max-w-6xl mx-auto mt-8 mb-8 bg-[#16181d] border border-white/5 rounded-xl p-4 md:p-6 relative overflow-hidden shadow-[0_0_50px_rgba(0,255,194,0.05)]">
          {/* Header - Compact */}
          <div className="flex items-center gap-3 mb-6 relative z-10">
              <div className="w-1 h-6 bg-[#00FFC2] rounded-full shadow-[0_0_10px_#00FFC2]"></div>
              <h3 className="text-xl md:text-2xl font-bold text-white tracking-wider">数据资源图谱</h3>
              <span className="text-[#00FFC2]/70 text-xs font-mono mt-1 hidden sm:block tracking-widest">DATA RESOURCE KNOWLEDGE GRAPH</span>
          </div>

          <div className="flex flex-col md:flex-row gap-4 md:gap-6 relative z-10 min-h-[450px]">
              {/* Left Navigation - Compact & Responsive */}
              <div className="w-full md:w-48 flex-shrink-0 grid grid-cols-2 sm:grid-cols-4 md:flex md:flex-col gap-2">
                  {resourceData.map((item, index) => (
                      <button
                          key={item.id}
                          onClick={() => setSelectedIndustry(index)}
                          className={`group flex items-center justify-center md:justify-start gap-2 md:gap-3 p-2 md:p-3 rounded-lg transition-all duration-300 border text-left
                              ${selectedIndustry === index 
                                  ? 'bg-[#00FFC2]/20 border-[#00FFC2] text-white shadow-[0_0_20px_rgba(0,255,194,0.3)]' 
                                  : 'bg-[#1a1c23]/50 border-white/5 text-gray-400 hover:bg-[#252830] hover:text-white hover:border-[#00FFC2]/50 hover:shadow-[0_0_10px_rgba(0,255,194,0.1)]'
                              }
                          `}
                      >
                          <div className={`p-1.5 rounded-md transition-colors flex-shrink-0 ${selectedIndustry === index ? 'bg-[#00FFC2] text-black shadow-[0_0_10px_#00FFC2]' : 'bg-[#252830] text-gray-400 group-hover:text-[#00FFC2]'}`}>
                              {item.icon}
                          </div>
                          <span className="font-bold tracking-wide text-xs md:text-sm truncate">{item.name}</span>
                          {selectedIndustry === index && <ChevronRight className="ml-auto w-3 h-3 text-[#00FFC2] animate-pulse hidden md:block" />}
                      </button>
                  ))}
              </div>
 
              {/* Right Visualization Area - Adaptive & Sci-Fi */}
              <div className="flex-1 bg-[#0f1115]/80 rounded-xl border border-[#00FFC2]/20 relative p-4 flex items-center justify-center overflow-hidden min-h-[350px] shadow-[inset_0_0_30px_rgba(0,255,194,0.05)]">
                  {/* Background Dynamic Particles */}
                  <div className="absolute inset-0 z-0">
                       {[...Array(20)].map((_, i) => (
                          <div key={i} className="absolute w-1 h-1 bg-[#00FFC2] rounded-full animate-pulse" style={{
                              top: `${Math.random() * 100}%`,
                              left: `${Math.random() * 100}%`,
                              animationDelay: `${Math.random() * 2}s`,
                              opacity: Math.random() * 0.5 + 0.2
                          }}></div>
                       ))}
                  </div>
                  {/* Background Grid with Glow */}
                  <div className="absolute inset-0 z-0 opacity-30" 
                       style={{
                           backgroundImage: 'linear-gradient(rgba(0, 255, 194, 0.1) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 255, 194, 0.1) 1px, transparent 1px)',
                           backgroundSize: '30px 30px',
                           boxShadow: 'inset 0 0 50px rgba(0, 255, 194, 0.1)'
                       }}>
                  </div>
                
                  {/* Central Node & Animations */}
                  <div className="relative z-10 w-full h-full flex items-center justify-center scale-[0.85] md:scale-100 transform transition-transform duration-500">
                      {/* Rotating Orbits */}
                      <div className="absolute w-[360px] h-[360px] md:w-[450px] md:h-[450px] border border-[#00FFC2]/10 rounded-full animate-[spin_30s_linear_infinite] shadow-[0_0_20px_rgba(0,255,194,0.1)]"></div>
                      <div className="absolute w-[220px] h-[220px] md:w-[280px] md:h-[280px] border border-[#00FFC2]/20 rounded-full animate-[spin_20s_linear_infinite_reverse] shadow-[0_0_20px_rgba(0,255,194,0.1)]"></div>
                    
                      {/* Center Industry Node - Pulsing Core */}
                      <div className="relative z-20 flex flex-col items-center justify-center w-28 h-28 md:w-32 md:h-32 bg-[#1a1c23] border-2 border-[#00FFC2] rounded-full shadow-[0_0_50px_rgba(0,255,194,0.5)] animate-[pulse_3s_ease-in-out_infinite]">
                          <div className="text-[#00FFC2] mb-1 scale-125 drop-shadow-[0_0_5px_#00FFC2]">{resourceData[selectedIndustry].icon}</div>
                          <div className="text-white font-bold text-xs tracking-widest text-center leading-tight drop-shadow-[0_0_5px_rgba(0,0,0,0.8)]">{resourceData[selectedIndustry].name}</div>
                          {/* Connecting Lines - Energy Beams */}
                          <div className="absolute inset-0 w-full h-full">
                               {[...Array(8)].map((_, i) => (
                                   <div key={i} className="absolute top-1/2 left-1/2 w-full h-[2px] bg-gradient-to-r from-[#00FFC2] to-transparent origin-left opacity-60 animate-pulse" style={{ transform: `rotate(${i * 45}deg) translateX(40%)`, animationDelay: `${i * 0.1}s` }}></div>
                               ))}
                          </div>
                      </div>
  
                      {/* Satellite Nodes (Data Resources) - Compact & Glowing */}
                      {resourceData[selectedIndustry].items.map((item, i) => {
                          const angle = (i * (360 / 8)) * (Math.PI / 180);
                          const radius = 140; // Slightly larger for better spacing
                          const x = Math.cos(angle) * radius;
                          const y = Math.sin(angle) * radius;
                        
                          return (
                              <div 
                                  key={i}
                                  className="absolute z-20 flex items-center justify-center w-24 h-24 p-1"
                                  style={{ transform: `translate(${x}px, ${y}px)` }}
                              >
                                  <div className="group relative w-full h-full flex flex-col items-center justify-center text-center cursor-pointer hover:scale-110 transition-transform duration-300 z-30">
                                      {/* Hexagonal Node Shape */}
                                      <div className="absolute inset-0 bg-[#1a1c23]/90 backdrop-blur-md border border-[#00FFC2]/30 group-hover:border-[#00FFC2] group-hover:bg-[#00FFC2]/10 transition-all duration-300 shadow-[0_0_15px_rgba(0,255,194,0.2)] group-hover:shadow-[0_0_30px_rgba(0,255,194,0.6)]" style={{ clipPath: 'polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%)' }}></div>
                                    
                                      <div className="relative z-10 p-2 flex items-center justify-center h-full w-full">
                                          <div className="text-[9px] md:text-[10px] text-gray-300 font-medium group-hover:text-white transition-colors leading-tight line-clamp-3 drop-shadow-[0_0_2px_rgba(0,0,0,0.8)]">
                                              {item}
                                          </div>
                                      </div>
                                      {/* Connection Line Visual - Energy Flow */}
                                      <div className="absolute top-1/2 left-1/2 w-[85px] h-[2px] bg-gradient-to-r from-[#00FFC2]/50 to-transparent -z-10 origin-center opacity-40 group-hover:opacity-100 transition-opacity" 
                                           style={{ 
                                               transform: `translate(-50%, -50%) rotate(${Math.atan2(-y, -x) * (180/Math.PI)}deg) translate(45px)`,
                                               width: `${radius - 45}px`
                                           }}>
                                      </div>
                                  </div>
                              </div>
                          )
                      })}
                  </div>
                
                  {/* Description Footer - Overlay */}
                  <div className="absolute bottom-4 left-0 w-full text-center z-20 px-4">
                      <p className="text-[#00FFC2]/80 text-xs font-mono bg-[#0f1115]/95 inline-block px-4 py-1.5 rounded-full border border-[#00FFC2]/20 backdrop-blur-md shadow-[0_0_15px_rgba(0,255,194,0.2)] max-w-full truncate tracking-wider">
                          {resourceData[selectedIndustry].desc}
                      </p>
                  </div>
              </div>
          </div>
      </div>

          {/* 新增加数据供需对接平台 */}
          <Sjgxdjpt />

        </div>
      </section>
      
      {/* 页面其他部分可以在这里补充 */}
    </div>
  );
};

/* --- 7. Home Section (Aggregator Module) --- */
const HomeSection = ({ setActiveTab, setSelectedScenario }) => {
    return (
        <div className="w-full relative animate-fade-in-up">
             {/* Hero Content - Title and Slogan */}
             <section className="relative pt-48 md:pt-64 pb-12 px-6 md:px-20 min-h-[50vh] flex flex-col justify-center">
               <div className="relative z-10 max-w-6xl mx-auto w-full">
                   {/* 核心修改：用 Tailwind 响应式类替代内联 fontSize，保留 lineHeight */}
                   <h1 className="text-[36px] md:text-[66px] leading-[1.3] font-bold leading-relaxed mb-8 bg-clip-text text-transparent bg-gradient-to-br from-white via-gray-200 to-gray-500 animate-[slideUp_1s_forwards_0.7s] opacity-0 tracking-tight">
                     明晰万象<br/>树立数据要素新标杆
                   </h1>
                   <p className="text-base md:text-lg text-gray-400 max-w-xl leading-relaxed animate-[slideUp_1s_forwards_0.9s] opacity-0 font-light tracking-wide border-l-2 border-[#00FFC2]/30 pl-6">
                     我们不仅提供数据，更提供用数据洞察世界和创造价值的能力。
                   </p>
               </div>
             </section>

             {/* 1. Data Highlights (Cards + Stats + More Button) */}
             <section className="py-12 border-t border-white/5 bg-[#16181d]/30 relative z-10">
                 <div className="max-w-6xl mx-auto px-6">
                      <div className="mb-8 flex justify-between items-end">
                          <div>
                              <div className="flex items-center gap-2 mb-2">
                                  <div className="w-1 h-5 bg-[#00FFC2]"></div>
                                  <span className="text-[#00FFC2] font-bold text-sm tracking-widest uppercase">核心能力</span>
                              </div>
                              <h2 className="text-xl md:text-xl font-bold text-white">全链路数据要素价值实现</h2>
                          </div>
                          <button onClick={() => setActiveTab('data')} className="text-gray-400 hover:text-[#00FFC2] text-sm flex items-center gap-1 transition-colors group">
                              查看更多 <ArrowRight className="w-4 h-4 group-hover:translate-x-1 transition-transform"/>
                          </button>
                      </div>
                      
                      <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4 mb-8">
                          {[
                              { title: "数据资源集成商", icon: <Database className="w-5 h-5"/>, desc: "汇聚全量多源异构数据，构建高质量数据集。" },
                              { title: "数据产品开发商", icon: <Code className="w-5 h-5"/>, desc: "基于场景深度开发，打造高价值数据应用产品。" },
                              { title: "数据交易经纪商", icon: <Briefcase className="w-5 h-5"/>, desc: "撮合供需双方，提供合规、安全的数据交易服务。" },
                              { title: "数据资产服务商", icon: <Coins className="w-5 h-5"/>, desc: "全链路数据资产化和金融创新服务，实现数据资产持续增值。" }
                          ].map((item, idx) => (
                              <div key={idx} className="bg-[#1a1c23] border border-white/5 p-4 rounded-lg hover:border-[#00FFC2]/50 transition-colors group hover:-translate-y-1 hover:shadow-lg">
                                  <div className="flex items-center gap-3 mb-2">
                                      <div className="p-2 bg-[#252830] rounded text-[#00FFC2] group-hover:bg-[#00FFC2] group-hover:text-black transition-colors">{item.icon}</div>
                                      <h4 className="text-lg font-bold text-white">{item.title}</h4>
                                  </div>
                                  <p className="text-sm text-gray-400 leading-relaxed">{item.desc}</p>
                              </div>
                          ))}
                      </div>
                      
                      <div className="grid grid-cols-2 md:grid-cols-4 gap-4 text-center md:text-left border-t border-white/5 pt-6">
                           {[
                               { val: "8年", label: "数据交易经验" },
                               { val: "8000+", label: "累计服务客户" },
                               { val: "400+", label: "开发数据产品" },
                               { val: "1亿+", label: "服务数据资产" }
                           ].map((stat, i) => (
                               <div key={i}>
                                   <div className="text-xl md:text-2xl font-bold text-[#00FFC2] font-mono">{stat.val}</div>
                                   <div className="text-base text-white font-bold uppercase mt-1">{stat.label}</div>
                               </div>
                           ))}
                      </div>
                 </div>
             </section>

             {/* 2. Scenario Highlights (Horizontal Scroll 6 items) */}
             <section className="py-12 border-t border-white/5 relative z-10 overflow-hidden">
                 <div className="max-w-6xl mx-auto px-6">
                     <div className="mb-8 flex justify-between items-end">
                          <div>
                              <div className="flex items-center gap-2 mb-2">
                                  <div className="w-1 h-5 bg-[#00FFC2]"></div>
                                  <span className="text-[#00FFC2] font-bold text-sm tracking-widest uppercase">应用场景</span>
                              </div>
                              <h2 className="text-lg md:text-xl font-bold text-white">全行业解决方案</h2>
                          </div>
                          <button onClick={() => setActiveTab('scenarios')} className="text-gray-400 hover:text-[#00FFC2] text-sm flex items-center gap-1 transition-colors group">
                              查看更多 <ArrowRight className="w-4 h-4 group-hover:translate-x-1 transition-transform"/>
                          </button>
                      </div>
                      
                      {/* Horizontal Scroll Container */}
                      <div className="flex overflow-x-auto gap-6 pb-6 no-scrollbar snap-x">
                          {scenarios.slice(0, 6).map((item, i) => (
                              <div 
                                key={i} 
                                onClick={() => setSelectedScenario(item)}
                                className="min-w-[280px] md:min-w-[320px] snap-center h-[380px] group p-6 
                                bg-gradient-to-b from-[#062C24] to-[#050505] hover:from-[#1c1f26] hover:to-[#1c1f26] backdrop-blur-md
                                border border-white/5
                                hover:border-[#00FFC2]/40
                                rounded-sm transition-all duration-500 ease-out
                                hover:-translate-y-3 hover:shadow-[0_20px_50px_-10px_rgba(0,0,0,0.5)]
                                cursor-pointer flex flex-col justify-end relative overflow-hidden"
                              >
                                <div className="absolute inset-0 z-0 opacity-40 group-hover:opacity-60 transition-opacity duration-700 mix-blend-overlay grayscale group-hover:grayscale-0">
                                     <img src={item.image} alt={item.title} className="w-full h-full object-cover" />
                                </div>
                                <div className="absolute inset-0 bg-gradient-to-b from-transparent via-[#062C24]/60 to-[#050505] group-hover:via-[#1c1f26]/80 group-hover:to-[#1c1f26] z-10 transition-colors duration-500"></div>
                                
                                <div className="relative z-20 flex flex-col h-full pointer-events-none">
                                    <div className="mt-auto">
                                        <div className="w-12 h-12 bg-[#252830] rounded-lg flex items-center justify-center mb-4 border border-white/10 group-hover:border-[#00FFC2] group-hover:bg-[#00FFC2] transition-all duration-500 shadow-lg">
                                            {React.cloneElement(item.icon, { className: `w-6 h-6 text-gray-300 group-hover:text-black transition-colors` })}
                                        </div>
                                        <h4 className="text-xl font-bold mb-3 text-white group-hover:text-[#00FFC2] transition-colors tracking-wide">{item.title}</h4>
                                        <p className="text-gray-400 text-xs leading-relaxed mb-0 font-light group-hover:text-white/90 transition-colors line-clamp-2">{item.desc}</p>
                                    </div>
                                </div>
                              </div>
                          ))}
                      </div>
                 </div>
             </section>

             {/* 3. News Highlights (Reverted to 3 items as per request) */}
             <section className="py-12 border-t border-white/5 bg-[#16181d]/30 relative z-10">
                 <div className="max-w-6xl mx-auto px-6">
                     <div className="mb-8 flex justify-between items-end">
                          <div>
                              <div className="flex items-center gap-2 mb-2">
                                  <div className="w-1 h-5 bg-[#00FFC2]"></div>
                                  <span className="text-[#00FFC2] font-bold text-sm tracking-widest uppercase">最新动态</span>
                              </div>
                              <h2 className="text-lg md:text-xl font-bold text-white">明树资讯</h2>
                          </div>
                          {/* View More Button for News */}
                          <button onClick={() => setActiveTab('about')} className="text-gray-400 hover:text-[#00FFC2] text-sm flex items-center gap-1 transition-colors group">
                              查看更多 <ArrowRight className="w-4 h-4 group-hover:translate-x-1 transition-transform"/>
                          </button>
                      </div>
                      
                      <div className="grid grid-cols-1 md:grid-cols-3 gap-6">
                           {typeof newsItems !== 'undefined' && newsItems.slice(0, 3).map((news, i) => (
                              <div key={i} className="group cursor-pointer bg-[#1a1c23] border border-white/5 rounded-lg overflow-hidden hover:border-[#00FFC2]/30 transition-all hover:-translate-y-1">
                                  <div className="h-40 overflow-hidden relative">
                                      <img src={news.image} alt={news.title} className="w-full h-full object-cover group-hover:scale-110 transition-transform duration-500" />
                                      <div className="absolute top-2 left-2 bg-black/60 backdrop-blur-md px-2 py-1 text-[10px] text-[#00FFC2] rounded border border-[#00FFC2]/30">{news.category}</div>
                                  </div>
                                  <div className="p-4">
                                      <div className="text-xs text-gray-500 mb-2 flex items-center gap-1"><Calendar className="w-3 h-3"/> {news.date}</div>
                                      <h4 className="text-white font-bold text-sm leading-snug group-hover:text-[#00FFC2] transition-colors line-clamp-2">{news.title}</h4>
                                  </div>
                              </div>
                          ))}
                      </div>
                 </div>
             </section>

             {/* 4. Company Info (Quotes Removed) */}
             <section className="py-16 border-t border-white/5 relative z-10">
                <div className="max-w-6xl mx-auto px-6">
                    <div className="mb-10 text-center">
                         <div className="flex items-center justify-center gap-2 mb-2">
                             <span className="text-[#00FFC2] font-bold text-sm tracking-widest uppercase">关于我们</span>
                         </div>
                         <h2 className="text-2xl md:text-3xl font-bold text-white">专注数据智能与资产价值</h2>
                    </div>
                    
                    {/* Introduction */}
                    <div className="text-gray-300 text-sm md:text-base leading-relaxed text-justify border-l-4 border-[#00FFC2] pl-6 md:pl-8 bg-[#1a1c23]/30 p-6 rounded-r-lg shadow-lg mb-12 max-w-5xl mx-auto">
                        <p className="mb-4">
                            北京明树数据科技有限公司，成立于2017年，是专注数据智能应用和数据资产管理的科技企业。公司连续获评国家高新技术企业、中关村高新技术企业、中关村瞪羚企业、北京市“专精特新”中小企业，具备国家数据管理能力成熟度（DCMM）资质，拥有投融资咨询专项甲级资信。
                        </p>
                        <p>
                            融合大数据、人工智能与专家经验，践行“数据+软件+咨询”一体化创新模式，为上百家金融机构及大型企业提供包括数据交易、数据治理、数据应用、数据资产入表、数据资产融资和资产数字化上链等数据应用和运营服务。
                        </p>
                    </div>

                    {/* Certs & Associations */}
                    <div className="grid grid-cols-1 md:grid-cols-2 gap-8 mb-12">
                         <div className="bg-[#1a1c23] border border-white/5 rounded p-6 md:p-8 hover:border-[#00FFC2]/30 transition-colors">
                             <h4 className="text-white font-bold mb-6 flex items-center gap-2"><Award className="w-5 h-5 text-[#00FFC2]"/> 企业资质与荣誉</h4>
                             <div className="flex flex-wrap gap-2">
                                 {certifications.map((cert, i) => (
                                     <span key={i} className="text-gray-400 text-xs border border-white/10 bg-[#111318] px-3 py-1.5 rounded-full hover:text-[#00FFC2] hover:border-[#00FFC2]/50 transition-colors cursor-default">
                                         {cert}
                                     </span>
                                 ))}
                             </div>
                         </div>
                         <div className="bg-[#1a1c23] border border-white/5 rounded p-6 md:p-8 hover:border-[#00FFC2]/30 transition-colors">
                             <h4 className="text-white font-bold mb-6 flex items-center gap-2"><Handshake className="w-5 h-5 text-[#00FFC2]"/> 协会理事单位</h4>
                             <ul className="space-y-3">
                                 {associations.map((assoc, i) => (
                                     <li key={i} className="text-gray-400 text-sm flex items-start gap-2 group">
                                         <div className="w-1.5 h-1.5 rounded-full bg-gray-600 mt-1.5 group-hover:bg-[#00FFC2] transition-colors"></div>
                                         <span className="group-hover:text-white transition-colors">{assoc}</span>
                                     </li>
                                 ))}
                             </ul>
                         </div>
                     </div>

                     {/* Awards */}
                     <div className="relative overflow-hidden rounded-xl border border-[#00FFC2]/20 bg-gradient-to-br from-[#062C24] to-[#1a1c23] p-8 md:p-12 shadow-[0_0_50px_rgba(0,255,194,0.1)]">
                         <div className="absolute top-0 right-0 w-64 h-64 bg-[#00FFC2]/10 blur-[80px] pointer-events-none"></div>
                         <h3 className="text-xl md:text-2xl font-bold text-white mb-8 flex items-center gap-3 relative z-10">
                             <Award className="w-6 h-6 md:w-8 md:h-8 text-[#00FFC2]" /> “数据要素×”大赛荣誉
                         </h3>
                         <div className="grid grid-cols-1 md:grid-cols-2 gap-8 relative z-10">
                            <div className="bg-black/20 backdrop-blur-sm p-6 rounded-lg border border-white/5 hover:border-[#00FFC2]/50 transition-all group">
                                 <div className="text-4xl font-bold text-[#00FFC2] mb-2">2024</div>
                                 <h4 className="text-white font-bold text-lg mb-3">交通运输赛道全国总决赛入围</h4>
                                 <p className="text-gray-400 text-sm leading-relaxed mb-4">
                                     “基于交通大数据融合智能分析的高速公路差异化收费决策支持模型”
                                 </p>
                                 <div className="flex items-center gap-2 flex-wrap">
                                    <span className="text-xs font-bold bg-[#00FFC2] text-black px-2 py-1 rounded">甘肃省分赛区第一名</span>
                                    <span className="text-xs font-bold border border-[#00FFC2] text-[#00FFC2] px-2 py-1 rounded">全国总决赛晋级</span>
                                 </div>
                            </div>
                            <div className="bg-black/20 backdrop-blur-sm p-6 rounded-lg border border-white/5 hover:border-[#00FFC2]/50 transition-all group">
                                 <div className="text-4xl font-bold text-[#00FFC2] mb-2">2025</div>
                                 <h4 className="text-white font-bold text-lg mb-3">应急赛道全国三等奖</h4>
                                 <p className="text-gray-400 text-sm leading-relaxed mb-4">
                                     “多源动态数据驱动下的城市水系统多灾种监测预警与决策”
                                 </p>
                                 <div className="flex items-center gap-2 flex-wrap">
                                    <span className="text-xs font-bold bg-[#00FFC2] text-black px-2 py-1 rounded">天津市分赛区第一名</span>
                                    <span className="text-xs font-bold border border-[#00FFC2] text-[#00FFC2] px-2 py-1 rounded">全国总决赛三等奖</span>
                                 </div>
                            </div>
                         </div>
                         <div className="mt-8 text-center">
                             <button onClick={() => setActiveTab('about')} className="px-6 py-2 border border-white/10 rounded hover:bg-white/5 hover:border-[#00FFC2] hover:text-[#00FFC2] text-gray-400 text-sm transition-all">
                                 了解更多公司详情
                             </button>
                         </div>
                     </div>
                </div>
             </section>
        </div>
    );
};

/* --- 8. Main App Component (Router Logic) --- */
const App = () => {
  const [scrolled, setScrolled] = useState(false);
  const [mobileMenuOpen, setMobileMenuOpen] = useState(false);
  const [activeTab, setActiveTab] = useState('home'); 
  const [selectedScenario, setSelectedScenario] = useState(null);
  const [selectedProduct, setSelectedProduct] = useState(null); 
  const [selectedService, setSelectedService] = useState(null); // The item clicked in the Services tab
  const [selectedNews, setSelectedNews] = useState(null); // The item clicked in the News section
  const [activeServiceTab, setActiveServiceTab] = useState('consulting');
  const [showCopyToast, setShowCopyToast] = useState(false); 
  const scrollContainerRef = useRef(null);

  useEffect(() => {
    const handleScroll = () => {
      setScrolled(window.scrollY > 50);
    };
    window.addEventListener('scroll', handleScroll);
    return () => window.removeEventListener('scroll', handleScroll);
  }, []);

  // Navigation Items
  const navItems = [
    { id: 'home', label: '首页' },
    { id: 'data', label: '数据' },
    { id: 'scenarios', label: '场景' },
    { id: 'services', label: '服务' },
    { id: 'products', label: '产品' },
    { id: 'partners', label: '伙伴' },
    { id: 'about', label: '我们' },
  ];

  const handleNavClick = (id) => {
    setActiveTab(id);
    setMobileMenuOpen(false);
    window.scrollTo({ top: 0, behavior: 'smooth' });
  };

  const handleWeChatShare = async (type) => {
  try {
    let modalElement = document.getElementById(type + '-modal');
    if (!modalElement) {
      alert('未找到产品弹窗，请重试！');
      return;
    }
    modalElement = modalElement.cloneNode(true);
    const buttons = modalElement.querySelectorAll('button');
    buttons.forEach(button => button.remove());
    
    // 临时修改样式避免截图不全2
    const rightContent = modalElement.querySelector('.md\\:overflow-y-auto');
    
    modalElement.style.overflow = 'visible';
    if (rightContent) rightContent.style.overflow = 'visible';
    modalElement.classList.remove("animate-fade-in-up")
    document.body.appendChild(modalElement);
    // DOM转Canvas
    const canvas = await html2canvas(modalElement);
    document.body.removeChild(modalElement);
    // 转Blob并复制到剪贴板
    canvas.toBlob(async (blob) => {
      if (!blob) {
        // alert('图片转换失败，请重试！');
        return;
      }
      const clipboardItem = new ClipboardItem({ 'image/png': blob });
      await navigator.clipboard.write([clipboardItem]);
      alert('🎉 产品弹窗已转为图片并复制到剪贴板！\n可直接粘贴到微信聊天/朋友圈～');
    }, 'image/png', 1.0);

  } catch (error) {
    console.error('复制失败：', error);
    if (error.name === 'NotAllowedError') {
      alert('请允许浏览器的剪贴板权限后重试！');
    } else if (error.name === 'TypeError') {
      alert('您的浏览器不支持此功能，请升级浏览器！');
    } else {
      alert(`复制失败：${error.message}`);
    }
  }
};

  // Render Content based on activeTab

  const RadiationCanvas = () => {
    const canvasRef = useRef(null);
    useEffect(() => {
      const canvas = canvasRef.current;
      if (!canvas) return;
      const ctx = canvas.getContext('2d');
      // 城市相对坐标 (0-100)
      const cities = [
          { name: "北京", x: 70, y: 25, isCore: true }, 
          { name: "乌鲁木齐", x: 15, y: 20 },
          { name: "兰州", x: 40, y: 42 },
          { name: "西安", x: 55, y: 48 },
          { name: "石家庄", x: 68, y: 32 },
          { name: "成都", x: 45, y: 60 },
          { name: "武汉", x: 68, y: 62 },
          { name: "南京", x: 80, y: 55 },
          { name: "上海", x: 85, y: 58 }
      ];
      let w, h;

      // 粒子系统：用于模拟数据流
      let flowParticles = [];
      const resizeMap = () => {
          w = document.getElementById("radiationCanvas").offsetWidth;
          h = document.getElementById("radiationCanvas").offsetHeight;
          canvas.width = w;
          canvas.height = h - 50;
      }
      window.addEventListener('resize', resizeMap);
      resizeMap();
      // 创建流动粒子
      const createFlowParticles = () => {
          // 每一帧都有几率产生新粒子从北京出发
          if (Math.random() > 0.8) { 
              // 随机选一个目标城市
              const targetIndex = Math.floor(Math.random() * cities.length);
              if (!cities[targetIndex].isCore) {
                  flowParticles.push({
                      target: targetIndex,
                      progress: 0,
                      // 降低粒子速度：从 0.01-0.02 降低到 0.005-0.01
                      speed: 0.005 + Math.random() * 0.005
                  });
              }
          }
      }

      let pulseR = 0;

      const drawMap = () => {
          ctx.clearRect(0, 0, w, h);

          const core = cities.find(c => c.isCore);
          // 将相对坐标转换为屏幕坐标 (为了视觉平衡，稍微向左移一点，因为右边空)
          const getX = (pct) => pct/100 * w * 0.8; 
          const getY = (pct) => pct/100 * h * 1.2; 

          const coreX = getX(core.x);
          const coreY = getY(core.y);

          // 1. 绘制连线 (静态底线)
          cities.forEach(city => {
              if (!city.isCore) {
                  const cx = getX(city.x);
                  const cy = getY(city.y);

                  ctx.beginPath();
                  // 渐变线：核心处亮，远处暗
                  const grad = ctx.createLinearGradient(coreX, coreY, cx, cy);
                  grad.addColorStop(0, "rgba(0, 255, 194, 0.5)");
                  grad.addColorStop(1, "rgba(0, 255, 194, 0.05)");
                  ctx.strokeStyle = grad;
                  ctx.lineWidth = 1.5;
                  ctx.moveTo(coreX, coreY);
                  ctx.lineTo(cx, cy);
                  ctx.stroke();
              }
          });

          // 2. 绘制流动数据粒子 (Flow)
          createFlowParticles();
          for (let i = flowParticles.length - 1; i >= 0; i--) {
              const p = flowParticles[i];
              const target = cities[p.target];
              const tx = getX(target.x);
              const ty = getY(target.y);

              p.progress += p.speed;
              if (p.progress >= 1) {
                  flowParticles.splice(i, 1); // 到达目的地消失
                  continue;
              }

              const currX = coreX + (tx - coreX) * p.progress;
              const currY = coreY + (ty - coreY) * p.progress;

              // 绘制拖尾效果
              const tailX = currX - (tx - coreX) * 0.05; // 简单的反向向量
              const tailY = currY - (ty - coreY) * 0.05;
              
              const grad = ctx.createLinearGradient(currX, currY, tailX, tailY);
              grad.addColorStop(0, "rgba(255, 255, 255, 1)");
              grad.addColorStop(1, "rgba(255, 255, 255, 0)");
              
              ctx.beginPath();
              ctx.moveTo(currX, currY);
              ctx.lineTo(tailX, tailY);
              ctx.strokeStyle = grad;
              ctx.lineWidth = 3;
              ctx.stroke();
          }

          // 3. 绘制城市节点
          cities.forEach(city => {
              const cx = getX(city.x);
              const cy = getY(city.y);

              if (city.isCore) {
                  // --- 核心北京 ---
                  // 扩散波 (Shockwave)
                  ctx.beginPath();
                  ctx.arc(cx, cy, pulseR, 0, Math.PI * 2);
                  ctx.strokeStyle = `rgba(0, 255, 194, ${1 - pulseR/60})`; // 范围更大
                  ctx.lineWidth = 2;
                  ctx.stroke();
                  
                  // 第二圈波
                  ctx.beginPath();
                  ctx.arc(cx, cy, pulseR * 0.6, 0, Math.PI * 2);
                  ctx.strokeStyle = `rgba(0, 255, 194, ${(1 - pulseR/60)*0.5})`;
                  ctx.stroke();

                  // 核心高亮实体
                  ctx.fillStyle = '#00FFC2';
                  ctx.shadowBlur = 30;
                  ctx.shadowColor = '#00FFC2';
                  ctx.beginPath();
                  ctx.arc(cx, cy, 8, 0, Math.PI * 2);
                  ctx.fill();
                  ctx.shadowBlur = 0;
                  
                  // 城市名
                  ctx.fillStyle = '#fff';
                  ctx.font = 'bold 16px sans-serif';
                  ctx.fillText(city.name, cx + 15, cy + 5);

              } else {
                  // --- 其他城市 ---
                  ctx.fillStyle = '#fff';
                  ctx.beginPath();
                  ctx.arc(cx, cy, 4, 0, Math.PI * 2);
                  ctx.fill();

                  // 城市名 (稍微暗一点)
                  ctx.fillStyle = 'rgba(255,255,255,0.7)';
                  ctx.font = '12px sans-serif';
                  ctx.fillText(city.name, cx + 10, cy + 4);
              }
          });

          // 更新动画参数
          pulseR += 0.5;
          if (pulseR > 60) pulseR = 0;

          requestAnimationFrame(drawMap);
      }
      drawMap();
    });
    return <canvas ref={canvasRef} className="pointer-events-none z-0 mix-blend-screen" />;
  }
  const renderContent = () => {
      const partners = [
        "华为", "宏信建投", "浙江交投", "中建八局", "中建一局", 
        "中交投资", "远东宏信", "长江生态环保", "首创环保", "北控水务",
        "招商证券", "华泰证券", "浦发银行", "中国农业发展银行", "中国建设银行",
        "平安银行", "工银科技", "中铁建大桥局", "中铁城市开发研究院", "中交公规院",
        "北京绿基投", "甘肃公交建", "深圳市ppp中心", "国家信息中心", "湖北省发改委", "湖南省发改委",
        "新疆自治区发改委", "四川省财政厅", "山西省财政厅", "甘肃省交通厅", "江西省交通厅",
        "湖北交投", "中建四局", "大连甘井子区发改局"
      ];
    switch (activeTab) {
      case 'home':
        return <HomeSection setActiveTab={setActiveTab} setSelectedScenario={setSelectedScenario} />;
      
      case 'data':
        return (
          <div className="animate-fade-in-up pt-24 pb-16">
             <div className="container mx-auto px-6">
                <div className="mb-12 text-center">
                   <h2 className="text-3xl font-bold text-white mb-4">全链路数据要素服务</h2>
                </div>
                <DataPositioningSection />
                <DataResourceGraph />
             </div>
          </div>
        );

      case 'scenarios':
        return (
          <div className="animate-fade-in-up pt-24 pb-16 container mx-auto px-6">
             <div className="mb-12 text-center">
                <h2 className="text-3xl font-bold text-white mb-4">行业解决方案</h2>
                <p className="text-gray-400 max-w-2xl mx-auto">深入业务场景，提供精准的数据服务与智能决策支持。</p>
             </div>
             <div className="grid grid-cols-1 md:grid-cols-3 gap-8">
                {scenarios.map((item, i) => (
                    <div 
                      key={i} 
                      onClick={() => setSelectedScenario(item)}
                      className="min-w-[220px] h-[380px] group p-6 
                      bg-gradient-to-b from-[#062C24] to-[#050505] hover:from-[#1c1f26] hover:to-[#1c1f26] backdrop-blur-md
                      border border-white/5
                      hover:border-[#00FFC2]/40
                      rounded-sm transition-all duration-500 ease-out
                      hover:-translate-y-3 hover:shadow-[0_20px_50px_-10px_rgba(0,0,0,0.5)]
                      cursor-pointer flex flex-col justify-end relative overflow-hidden"
                    >
                      <div className="absolute inset-0 z-0 opacity-40 group-hover:opacity-60 transition-opacity duration-700 mix-blend-overlay grayscale group-hover:grayscale-0">
                            <img src={item.image} alt={item.title} className="w-full h-full object-cover" />
                      </div>
                      <div className="absolute inset-0 bg-gradient-to-b from-transparent via-[#062C24]/60 to-[#050505] group-hover:via-[#1c1f26]/80 group-hover:to-[#1c1f26] z-10 transition-colors duration-500"></div>
                      
                      <div className="relative z-20 flex flex-col h-full pointer-events-none">
                          <div className="mt-auto">
                              <div className="w-12 h-12 bg-[#252830] rounded-lg flex items-center justify-center mb-4 border border-white/10 group-hover:border-[#00FFC2] group-hover:bg-[#00FFC2] transition-all duration-500 shadow-lg">
                                  {React.cloneElement(item.icon, { className: `w-6 h-6 text-gray-300 group-hover:text-black transition-colors` })}
                              </div>
                              <h4 className="text-xl font-bold mb-3 text-white group-hover:text-[#00FFC2] transition-colors tracking-wide">{item.title}</h4>
                              <p className="text-gray-400 text-xs leading-relaxed mb-0 font-light group-hover:text-white/90 transition-colors">{item.desc}</p>
                          </div>
                      </div>
                    </div>
                ))}
             </div>
          </div>
        );
      
      case 'services':
        return (
            <section className="pt-24 pb-16 relative">
                <div className="container mx-auto px-6 max-w-6xl">
                   <h2 className="text-3xl font-bold text-white mb-12 text-center">专业服务体系</h2>
                   <div className="flex items-end -mb-[1px] relative z-10 pl-4 overflow-x-auto no-scrollbar gap-2">
                         {Object.entries(services).map(([key, service]) => (
                            <button 
                                key={key}
                                onClick={() => setActiveServiceTab(key)}
                                className={`relative px-8 py-4 rounded-t-sm border-t border-x transition-all duration-300 min-w-[180px] flex items-center justify-center gap-3
                                  ${activeServiceTab === key 
                                    ? 'bg-[#1a1c23] border-[#00FFC2]/30 text-white z-10 -mb-[1px] pb-5 shadow-[0_-5px_20px_rgba(0,0,0,0.3)]' 
                                    : 'bg-[#16181d] border-white/5 text-gray-500 hover:text-gray-300 hover:bg-[#1c1f26] z-0 translate-y-2'
                                  }
                                `}
                            >
                                <div className={`${activeServiceTab === key ? 'text-[#00FFC2]' : 'text-gray-600'} transition-colors`}>{service.icon}</div>
                                <span className={`font-bold tracking-wide text-sm ${activeServiceTab === key ? 'text-white' : 'text-gray-500'}`}>{service.title}</span>
                                {activeServiceTab === key && <div className="absolute top-0 left-0 w-full h-[2px] bg-[#00FFC2]"></div>}
                            </button>
                         ))}
                   </div>
                   
                   <div className="bg-[#1a1c23] border border-[#00FFC2]/20 rounded-b-sm rounded-tr-sm p-12 min-h-[400px] shadow-2xl relative z-0">
                        <div className="absolute top-0 right-0 w-[400px] h-[400px] bg-[#00FFC2]/5 blur-[100px] pointer-events-none"></div>
                        <div className="relative z-10 animate-fade-in-up key={activeServiceTab}">
                            <div className="mb-10 border-b border-white/5 pb-8">
                                {/* 样式调整：介绍文字改为白色，字号加大 */}
                                <p className="text-white text-xl font-light leading-relaxed max-w-3xl">{services[activeServiceTab].desc}</p>
                            </div>
                            <div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-x-8 gap-y-12">
                                {services[activeServiceTab].groups.map((group, idx) => (
                                    <div key={idx} className="space-y-6">
                                        {/* 样式调整：索引标签文字加大 */}
                                        <h4 className="text-base font-bold text-[#00FFC2] uppercase tracking-widest border-l-2 border-[#00FFC2] pl-3 h-5 flex items-center">{group.title}</h4>
                                        <ul className="space-y-3">
                                            {group.items.map((item, i) => (
                                                <li key={i} onClick={() => setSelectedService(item)} className="text-base text-gray-400 hover:text-white cursor-pointer hover:translate-x-1 transition-transform duration-300 flex items-center gap-2 group/item">
                                                    <span className="w-1 h-1 bg-gray-600 rounded-full group-hover/item:bg-[#00FFC2]"></span>
                                                    {item.name}
                                                </li>
                                            ))}
                                        </ul>
                                    </div>
                                ))}
                            </div>
                        </div>
                   </div>
                </div>
            </section>
        );

      case 'products':
        return (
            <section className="pt-24 pb-16 container mx-auto px-6 animate-fade-in-up">
                 <h2 className="text-3xl font-bold text-white mb-12 text-center">核心产品矩阵</h2>
                 <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
                    {products.map((product, index) => (
                      <div 
                        key={index} 
                        onClick={() => setSelectedProduct(product)}
                        className="bg-[#16181d] border border-white/5 p-8 hover:border-[#00FFC2]/50 transition-all duration-300 group hover:-translate-y-2 cursor-pointer relative overflow-hidden rounded-sm hover:shadow-[0_10px_30px_rgba(0,0,0,0.3)]"
                      >
                         <div className="absolute top-0 left-0 w-1 h-0 bg-[#00FFC2] group-hover:h-full transition-all duration-500"></div>
                         <div className="w-14 h-14 bg-[#1a1c23] flex items-center justify-center mb-6 border border-white/10 group-hover:bg-[#00FFC2]/10 group-hover:border-[#00FFC2]/50 transition-all rounded-sm">
                            {product.icon}
                         </div>
                         <h3 className="text-xl font-bold mb-4 text-white group-hover:text-[#00FFC2] transition-colors">{product.title}</h3>
                         {/* 样式调整：介绍文字改为白色，字号加大 */}
                         <p className="text-white text-base mb-6 leading-relaxed min-h-[60px]">{product.desc}</p>
                         <div className="flex flex-wrap gap-2 mb-6">
                            {product.tags.map((tag, idx) => (
                              <span key={idx} className="text-xs px-2 py-1 border border-[#00FFC2] text-[#00FFC2] font-mono bg-transparent hover:bg-[#00FFC2] hover:text-black transition-colors duration-300 cursor-default">
                                {tag}
                              </span>
                            ))}
                         </div>
                      </div>
                    ))}
                 </div>
                 
                {/* Product Modal - kept as is */}
                {/* 弹窗渲染部分（已加id）*/}
                {selectedProduct && (
                  <div className="fixed inset-0 z-[150] bg-[#16181d] md:bg-black/90 md:backdrop-blur-md overflow-y-auto md:overflow-hidden md:flex md:items-center md:justify-center md:p-4">
                    <div className="absolute inset-0 bg-black/90 backdrop-blur-md" onClick={() => setSelectedProduct(null)}></div>
                    <div 
                      id="product-modal"
                      className="bg-[#16181d] md:border border-[#00FFC2]/20 md:rounded-lg w-full md:max-w-5xl relative z-10 shadow-2xl animate-fade-in-up md:flex md:flex-col md:max-h-[90vh]"
                    >
                      {/* 原有弹窗内容*/}
                      <div className="sticky top-0 right-0 z-50 flex justify-end p-3 md:absolute md:top-4 md:right-4 md:p-0 bg-[#111318] md:bg-transparent">
                        <button onClick={() => setSelectedProduct(null)} className="p-2 bg-black/80 hover:bg-white/20 rounded-full transition-colors text-white">
                          <X className="w-5 h-5 md:w-6 md:h-6" />
                        </button>
                      </div>

                      <div className="flex flex-col md:flex-row md:flex-1 md:overflow-hidden">
                        {/* 左侧产品信息*/}
                        <div className="w-full md:w-5/12 bg-[#111318] relative flex flex-col border-b md:border-b-0 md:border-r border-white/5">
                          <div className="h-32 md:h-2/3 w-full relative overflow-hidden flex items-center justify-center bg-[#111318]">
                            <ProductVisualization index={products.findIndex(p => p.title === selectedProduct.title)} />
                          </div>
                          <div className="p-3 md:p-8 relative z-10 bg-[#16181d] border-t border-white/5">
                            <h3 className="text-lg md:text-2xl font-bold text-white mb-1 md:mb-2 leading-tight">{selectedProduct.title}</h3>
                            <div className="mt-2 md:mt-4">
                              {selectedProduct.tags.map((tag, idx) => (
                                <span key={idx} className="inline-flex items-center text-[10px] px-1.5 md:px-2 py-0.5 md:py-1 border border-[#00FFC2]/30 text-[#00FFC2] font-mono bg-[#00FFC2]/5 mr-1.5 md:mr-2">
                                  {tag}
                                </span>
                              ))}
                            </div>
                          </div>
                        </div>

                        {/* 右侧详情 */}
                        <div className="w-full md:w-7/12 p-4 md:p-10 bg-[#1a1c23] md:overflow-y-auto flex flex-col">
                          <h4 className="text-xs font-bold text-[#00FFC2] uppercase tracking-[0.2em] mb-3 md:mb-6 flex items-center gap-2" style={{fontSize: "20px" }}>
                            <div className="w-2 h-2 bg-[#00FFC2]"></div> 产品介绍
                          </h4>
                          <p className="text-gray-300 text-sm md:text-base leading-relaxed mb-5 md:mb-10 font-light border-l border-white/10 pl-3 md:pl-4">
                            {selectedProduct.details}
                          </p>

                          <h4 className="text-xs font-bold text-[#00FFC2] uppercase tracking-[0.2em] mb-3 md:mb-6 flex items-center gap-2" style={{fontSize: "20px" }}>
                            <div className="w-2 h-2 bg-[#00FFC2]"></div> 典型案例
                          </h4>
                          <div className="space-y-2 md:space-y-4 mb-4 md:mb-8">
                            {selectedProduct.cases.map((c, idx) => (
                              <div key={idx} className="bg-[#21242b] p-2.5 md:p-5 rounded-sm border border-white/5 hover:border-[#00FFC2]/30 transition-colors group">
                                <div className="">
                                  <div className="mt-0.5 md:mt-1 mr-2 md:mr-4" style={{display: "inline-block", verticalAlign: "sub"}}><CheckCircle2 className="w-3.5 h-3.5 md:w-4 md:h-4 text-gray-500 group-hover:text-[#00FFC2] transition-colors" /></div>
                                  <div style={{display: "inline-block"}}>
                                    <h5 className="text-white font-bold text-xs md:text-sm mb-0.5 md:mb-1">{c.name}</h5>
                                    <p className="text-gray-500 text-xs leading-relaxed">{c.desc}</p>
                                  </div>
                                </div>
                              </div>
                            ))}
                          </div>

                          <div className="mt-3 md:mt-8 pt-3 md:pt-8 border-t border-white/5 flex flex-col md:flex-row items-center justify-between gap-3 md:gap-4">
                            <div className="flex items-center gap-3 md:gap-4">
                              <img src={codeImg} alt="QR" className="w-12 h-12 md:w-20 md:h-20 bg-white p-0.2 md:p-0.5 rounded-sm" />
                              <div>
                                <div className="text-white font-bold text-xs md:text-sm" style={{lineHeight: 1.5, fontSize: "24px" }}>联系我们</div>
                                <div className="text-gray-500 text-xs">获取详细方案</div>
                              </div>
                            </div>
                            <button onClick={() => handleWeChatShare("product")} className="w-full md:w-auto px-4 md:px-6 py-2.5 md:py-3 bg-[#252830] hover:bg-[#2b2f38] text-white text-xs md:text-sm font-bold border border-white/10 flex items-center justify-center gap-2 hover:border-[#00FFC2] transition-all">
                              <MessageCircle className="w-4 h-4 text-[#07C160]" /> 转发至微信
                            </button>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                )}
            </section>
        );

      case 'partners':
        return (
          <section className="pt-24 pb-16 container mx-auto px-6 animate-fade-in-up min-h-[60vh]">
            <div className="max-w-6xl mx-auto">
              {/* 主题与正文 */}
              <div className="text-center mb-16">
                <h2 className="text-3xl font-bold text-white mb-4">拥抱全球伙伴 · 共建无界生态</h2>
                <p className="text-gray-400 max-w-3xl mx-auto leading-relaxed">
                  明树数据以全面开放的姿态，诚邀全球合作伙伴加入明树生态体系！我们打破地域与行业的藩篱，寻找志同道合的同行者，让我们以数据为纽带，以信任为基石，打破孤岛，链接无限，共铸数字经济的全球版图！
                </p>
              </div>

              {/* 三大合作板块 */}
              <div className="grid grid-cols-1 md:grid-cols-3 gap-8">
                {/* 势能·共铸 */}
                <div className="bg-[#16181d] border border-white/5 rounded-lg p-8 hover:border-[#00FFC2]/50 transition-all duration-300 group hover:-translate-y-2">
                  <div className="w-12 h-12 bg-[#00FFC2]/10 rounded-lg flex items-center justify-center mb-6 text-[#00FFC2] group-hover:bg-[#00FFC2]/20">
                    <Zap className="w-6 h-6" />
                  </div>
                  <h3 className="text-xl font-bold text-white mb-4" style={{fontSize: "24px" }}>势能 · 共铸</h3>
                  {/* 新增副标题 - 突出显示 */}
                  <h4 className="text-lg font-bold text-[#00FFC2] mb-3">寻找手握资源的实干家与项目方</h4>
                  <p className="text-gray-300 mb-6 leading-relaxed" style={{ lineHeight: 1.8, fontSize: "14px" }}>
                    覆盖消费、能源、文旅、交通等行业，拥有丰富资源且寻求数字化转型与升级的伙伴。
                  </p>
                  <div className="bg-[#21242b] rounded-md p-3">
                    <p className="text-white font-medium text-center"><span className="text-lg font-bold text-white">资源变现 · 场景落地</span></p>
                  </div>
                </div>

                {/* 效能·共生 */}
                <div className="bg-[#16181d] border border-white/5 rounded-lg p-8 hover:border-[#00FFC2]/50 transition-all duration-300 group hover:-translate-y-2">
                  <div className="w-12 h-12 bg-[#00FFC2]/10 rounded-lg flex items-center justify-center mb-6 text-[#00FFC2] group-hover:bg-[#00FFC2]/20">
                    <Handshake className="w-6 h-6" />
                  </div>
                  <h3 className="text-xl font-bold text-white mb-4" style={{fontSize: "24px" }}>效能 · 共生</h3>
                  {/* 新增副标题 - 突出显示 */}
                  <h4 className="text-lg font-bold text-[#00FFC2] mb-3">寻找业务链条上下游专业服务伙伴</h4>
                  <p className="text-gray-300 mb-6 leading-relaxed" style={{ lineHeight: 1.8, fontSize: "14px" }}>
                    专注垂直领域的数据、AI企业，提供咨询、法律、财税、评估和运营等专业服务的企业。
                  </p>
                  <div className="bg-[#21242b] rounded-md p-3">
                    <p className="text-white font-medium text-center"><span className="text-lg font-bold text-white">协同合作 · 强强联合</span></p>
                  </div>
                </div>

                {/* 视野·无界 */}
                <div className="bg-[#16181d] border border-white/5 rounded-lg p-8 hover:border-[#00FFC2]/50 transition-all duration-300 group hover:-translate-y-2">
                  <div className="w-12 h-12 bg-[#00FFC2]/10 rounded-lg flex items-center justify-center mb-6 text-[#00FFC2] group-hover:bg-[#00FFC2]/20">
                    <Globe className="w-6 h-6" />
                  </div>
                  <h3 className="text-xl font-bold text-white mb-4" style={{fontSize: "24px" }}>视野 · 无界</h3>
                  {/* 新增副标题 - 突出显示 */}
                  <h4 className="text-lg font-bold text-[#00FFC2] mb-3">寻找拥抱全球资本的高能先行者</h4>
                  <p className="text-gray-300 mb-6 leading-relaxed" style={{ lineHeight: 1.8, fontSize: "14px" }}>
                    拥有高质量（产业集群/垂业类）或优质实物资产，认同数字资产化与科技出海的伙伴。
                  </p>
                  <div className="bg-[#21242b] rounded-md p-3">
                    <p className="text-white font-medium text-center"><span className="text-lg font-bold text-white">数据资产 · 科技出海</span></p>
                  </div>
                </div>
              </div>

              {/* 现有合作伙伴展示 */}
              <div className="mt-16 overflow-hidden pt-8 border-t border-white/5">
                <h3 className="text-xl font-bold text-white mb-8 text-center">部分合作伙伴</h3>
                <div className="relative">
                    <div className="absolute top-0 left-0 w-8 h-full bg-gradient-to-r from-[#16181d] to-transparent z-10"></div>
                    <div className="absolute top-0 right-0 w-8 h-full bg-gradient-to-l from-[#16181d] to-transparent z-10"></div>
                    <div className="flex gap-8 animate-infinite-scroll min-w-max">
                        {partners.map((partner, index) => (
                            <span key={index} className="text-lg md:text-xl font-bold text-gray-300 hover:text-[#00FFC2] transition-colors cursor-default">{partner}</span>
                        ))}
                        {partners.map((partner, index) => (
                            <span key={`dup-${index}`} className="text-lg md:text-xl font-bold text-gray-300 hover:text-[#00FFC2] transition-colors cursor-default">{partner}</span>
                        ))}
                    </div>
                </div>
                {/* <div className="flex flex-wrap justify-center gap-8 opacity-80">
                  {partners.map((p,i) => (
                    <span key={i} className="text-lg md:text-xl font-bold text-gray-300 hover:text-[#00FFC2] transition-colors cursor-default">
                      {p}
                    </span>
                  ))}
                </div> */}
              </div>
            </div>
          </section>
        );

      case 'about':
        return (
             <div className="pt-24 pb-16 container mx-auto px-6 max-w-5xl animate-fade-in-up">
                 <div className="text-center mb-16">
                     <h2 className="text-3xl font-bold text-white mb-8">关于我们</h2>
                     
                     <div className="text-gray-300 text-lg leading-relaxed text-justify border-l-4 border-[#00FFC2] pl-8 bg-[#1a1c23]/30 p-6 rounded-r-lg shadow-lg">
                        <p className="mb-6">
                            北京明树数据科技有限公司，成立于2017年，是专注数据智能应用和数据资产管理的科技企业。公司连续获评国家高新技术企业、中关村高新技术企业、中关村瞪羚企业、北京市“专精特新”中小企业，具备国家数据管理能力成熟度（DCMM）资质，拥有投融资咨询专项甲级资信。
                        </p>
                        <p>
                            融合大数据、人工智能与专家经验，践行“数据+软件+咨询”一体化创新模式，为上百家金融机构及大型企业提供包括数据交易、数据治理、数据应用、数据资产入表、数据资产融资和资产数字化上链等数据应用和运营服务，以及投融资咨询和软件开发服务。明树数据数已有交通、环保、文旅、金融和医疗等领域上百项数据AI算法模型，拥有近百项数据要素相关发明专利与软件著作权，牵头或参与十余项数据要素相关团体标准和行业标准，主持国家发改委、财政部和住建部多项数据相关研究课题。
                        </p>
                    </div>
                 </div>

                 {/* Certifications & Associations */}
                 <div className="grid grid-cols-1 md:grid-cols-3 gap-8 mb-16">
                    {/* <div> */}
                     <div className="bg-[#1a1c23] border border-white/5 rounded p-8 hover:border-[#00FFC2]/30 transition-colors">
                         <h4 className="text-white font-bold mb-6 flex items-center gap-2"><Award className="w-5 h-5 text-[#00FFC2]"/> 企业资质与荣誉</h4>
                         <div className="flex flex-wrap gap-2">
                             {certifications.map((cert, i) => (
                                 <span key={i} className="text-gray-400 text-xs border border-white/10 bg-[#111318] px-3 py-1.5 rounded-full hover:text-[#00FFC2] hover:border-[#00FFC2]/50 transition-colors cursor-default">
                                     {cert}
                                 </span>
                             ))}
                         </div>
                     </div>
                     <div className="bg-[#1a1c23] border border-white/5 rounded p-8 hover:border-[#00FFC2]/30 transition-colors">
                         <h4 className="text-white font-bold mb-6 flex items-center gap-2"><Handshake className="w-5 h-5 text-[#00FFC2]"/> 协会理事单位</h4>
                         <ul className="space-y-3">
                             {associations.map((assoc, i) => (
                                 <li key={i} className="text-gray-400 text-sm flex items-start gap-2 group">
                                     <div className="w-1.5 h-1.5 rounded-full bg-gray-600 mt-1.5 group-hover:bg-[#00FFC2] transition-colors"></div>
                                     <span className="group-hover:text-white transition-colors">{assoc}</span>
                                 </li>
                             ))}
                         </ul>
                     </div>
                    {/* </div> */}
                    <div id="radiationCanvas">
                      <div className="text-gray-400">公司总部位于北京，在上海、南京、武汉、成都、兰州、西安、石家庄、乌鲁木齐、陵水、香港等地设有分支机构。</div>
                      <RadiationCanvas></RadiationCanvas>
                    </div>
                 </div>

                 {/* Major Awards Highlight - Data Element X (样式已同步首页) */}
                 <div className="mb-16 relative overflow-hidden rounded-xl border border-[#00FFC2]/20 bg-gradient-to-br from-[#062C24] to-[#1a1c23] p-8 md:p-12 shadow-[0_0_50px_rgba(0,255,194,0.1)]">
                     <div className="absolute top-0 right-0 w-64 h-64 bg-[#00FFC2]/10 blur-[80px] pointer-events-none"></div>
                     <h3 className="text-xl md:text-2xl font-bold text-white mb-8 flex items-center gap-3 relative z-10">
                         <Award className="w-6 h-6 md:w-8 md:h-8 text-[#00FFC2]" /> “数据要素×”大赛荣誉
                         {/* Awards section is correctly updated to match Home */}
                     </h3>
                     <div className="grid grid-cols-1 md:grid-cols-2 gap-8 relative z-10">
                        <div className="bg-black/20 backdrop-blur-sm p-6 rounded-lg border border-white/5 hover:border-[#00FFC2]/50 transition-all group">
                             <div className="text-4xl font-bold text-[#00FFC2] mb-2">2024</div>
                             <h4 className="text-white font-bold text-lg mb-3">交通运输赛道全国总决赛入围</h4>
                             <p className="text-gray-400 text-sm leading-relaxed mb-4">
                                 “基于交通大数据融合智能分析的高速公路差异化收费决策支持模型”
                             </p>
                             <div className="flex items-center gap-2 flex-wrap">
                                <span className="text-xs font-bold bg-[#00FFC2] text-black px-2 py-1 rounded">甘肃省分赛区第一名</span>
                                <span className="text-xs font-bold border border-[#00FFC2] text-[#00FFC2] px-2 py-1 rounded">全国总决赛晋级</span>
                             </div>
                        </div>
                        <div className="bg-black/20 backdrop-blur-sm p-6 rounded-lg border border-white/5 hover:border-[#00FFC2]/50 transition-all group">
                             <div className="text-4xl font-bold text-[#00FFC2] mb-2">2025</div>
                             <h4 className="text-white font-bold text-lg mb-3">应急赛道全国三等奖</h4>
                             <p className="text-gray-400 text-sm leading-relaxed mb-4">
                                 “多源动态数据驱动下的城市水系统多灾种监测预警与决策”
                             </p>
                             <div className="flex items-center gap-2 flex-wrap">
                                <span className="text-xs font-bold bg-[#00FFC2] text-black px-2 py-1 rounded">天津市分赛区第一名</span>
                                <span className="text-xs font-bold border border-[#00FFC2] text-[#00FFC2] px-2 py-1 rounded">全国总决赛三等奖</span>
                             </div>
                        </div>
                     </div>
                 </div>

                 {/* News Section */}
                 <div>
                     <h2 className="text-3xl font-bold text-white mb-12 text-center">公司动态</h2>
                     <div className="grid gap-8">
                         {newsItems.map((news, i) => (
                             <div key={i} onClick={() => setSelectedNews(news)} className="flex flex-col md:flex-row gap-6 bg-[#16181d] border border-white/5 p-6 rounded-lg hover:border-[#00FFC2]/30 transition-all group cursor-pointer">
                                 <div className="w-full md:w-64 h-40 overflow-hidden rounded flex-shrink-0">
                                     <img src={news.image} alt={news.title} className="w-full h-full object-cover group-hover:scale-110 transition-transform duration-500" />
                                 </div>
                                 <div className="flex-1 flex flex-col justify-center">
                                     <div className="flex items-center gap-3 mb-2">
                                         <span className="text-[#00FFC2] text-xs border border-[#00FFC2]/30 px-2 py-0.5 rounded">{news.category}</span>
                                         <span className="text-gray-500 text-xs">{news.date}</span>
                                     </div>
                                     <h3 className="text-xl font-bold text-white mb-3 group-hover:text-[#00FFC2] transition-colors">{news.title}</h3>
                                     <p className="text-gray-400 text-sm line-clamp-2">{news.content}</p>
                                 </div>
                             </div>
                         ))}
                     </div>
                 </div>
             </div>
        );

      default:
        return <HomeSection setActiveTab={setActiveTab} setSelectedScenario={setSelectedScenario} />;
    }
  };

  return (
    <div className="min-h-screen bg-[#111318] text-white font-sans selection:bg-[#00FFC2]/30 overflow-x-hidden scroll-smooth">
      <BackgroundParticles />
      {activeTab === 'home' && <GalaxyBackground />}

      {/* Navbar */}
      <nav className={`fixed w-full z-50 transition-all duration-300 border-b border-white/0 ${scrolled ? 'bg-[#16181d]/90 backdrop-blur-md border-white/5 py-3 shadow-lg' : 'bg-transparent py-4'}`}>
        <div className="max-w-6xl mx-auto px-6 flex justify-between items-center">
          <div className="flex items-center gap-3 cursor-pointer" onClick={() => handleNavClick('home')}>
            {/* Logo image updated to 'logo.jpg', keeping container click handler for home nav */}
            <img src={reactLogo} alt="Logo" className="h-8 w-auto object-contain" onError={(e) => e.target.style.display='none'} />
            <span className="text-xl font-bold tracking-[2px] uppercase text-[#00FFC2] flex items-center gap-2 logo-name">Bridata</span>
          </div>

          <div className="hidden lg:flex items-center gap-8 font-bold">
            {navItems.map((item) => (
              <button
                key={item.id}
                onClick={() => handleNavClick(item.id)}
                className={`uppercase tracking-widest text-xl transition-all hover:text-[#00FFC2] ${activeTab === item.id ? 'text-[#00FFC2]' : 'text-gray-300'}`}
              >
                {item.label}
              </button>
            ))}
          </div>

          <button className="lg:hidden text-white p-2" onClick={() => setMobileMenuOpen(!mobileMenuOpen)}>
            {mobileMenuOpen ? <X /> : <Menu />}
          </button>
        </div>

        {mobileMenuOpen && (
          <div className="lg:hidden absolute top-full left-0 w-full bg-[#16181d] border-b border-white/10 p-6 flex flex-col gap-4 shadow-2xl z-40">
             {navItems.map((item) => (
               <button
                 key={item.id}
                 onClick={() => handleNavClick(item.id)}
                 className={`text-left text-lg font-bold tracking-widest uppercase py-2 ${activeTab === item.id ? 'text-[#00FFC2]' : 'text-white'}`}
               >
                 {item.label}
               </button>
            ))}
          </div>
        )}
      </nav>

      {/* Main Content */}
      <main className="min-h-screen flex flex-col">
          {renderContent()}
      </main>
      
      {/* Scenario Detail Modal (Kept as is) */}
      {selectedScenario && (
        <div className="fixed inset-0 z-[200] flex items-center justify-center p-2 md:p-4">
            <div className="absolute inset-0 bg-black/90 backdrop-blur-md" onClick={() => setSelectedScenario(null)}></div>
            <div id="scenario-modal" className="bg-[#16181d] border border-[#00FFC2]/20 rounded-lg w-full max-w-4xl relative z-20 overflow-hidden shadow-2xl animate-fade-in-up flex flex-col h-[100dvh] md:h-auto md:max-h-[90vh]">
                <div className="flex justify-between items-center p-4 md:p-6 border-b border-white/10 bg-[#111318] shrink-0">
                    <div className="flex items-center gap-2 md:gap-3">
                         <div className="w-8 h-8 md:w-10 md:h-10 bg-[#00FFC2]/10 rounded flex items-center justify-center text-[#00FFC2]">
                             {selectedScenario.icon}
                         </div>
                         <h3 className="text-lg md:text-2xl font-bold text-white tracking-wide">{selectedScenario.title}</h3>
                    </div>
                    <button onClick={() => setSelectedScenario(null)} className="p-2 hover:bg-white/10 rounded-full transition-colors">
                        <X className="w-5 h-5 md:w-6 md:h-6 text-gray-400 hover:text-white" />
                    </button>
                </div>

                <div className="p-4 md:p-8 overflow-y-auto flex-1">
                    {/* 1. Detail Text (No Header) */}
                    <div className="mb-6 md:mb-8">
                        <p className="text-gray-300 leading-relaxed text-base md:text-lg border-l-4 border-[#00FFC2] pl-4 bg-[#1a1c23]/50 p-3 md:p-4 rounded-r-lg">
                            {selectedScenario.details}
                        </p>
                    </div>

                    {/* 2. Solutions Section */}
                    <div className="mb-6 md:mb-8">
                        <h4 className="text-sm font-bold text-[#00FFC2] uppercase tracking-widest mb-3 md:mb-4 flex items-center gap-2">
                             <Settings className="w-4 h-4"/> 解决方案
                        </h4>
                        <div className="grid gap-3 md:gap-4">
                            {selectedScenario.solutions && selectedScenario.solutions.length > 0 ? (
                                selectedScenario.solutions.map((sol, idx) => (
                                    <div key={idx} className="bg-[#21242b] p-3 md:p-5 rounded border border-white/5 hover:border-[#00FFC2]/30 transition-all">
                                        <h5 className="text-white font-bold mb-2 text-sm md:text-base">{sol.title}</h5>
                                        <p className="text-gray-400 text-xs md:text-sm leading-relaxed">{sol.desc}</p>
                                    </div>
                                ))
                            ) : (
                                <p className="text-gray-500 text-sm italic">暂无具体解决方案展示</p>
                            )}
                        </div>
                    </div>

                    {/* 3. Cases Section */}
                    <div className="mb-6 md:mb-8">
                        <h4 className="text-sm font-bold text-[#00FFC2] uppercase tracking-widest mb-3 md:mb-4 flex items-center gap-2">
                             <Award className="w-4 h-4"/> 成功案例
                        </h4>
                        <div className="grid gap-3 md:gap-4">
                            {selectedScenario.cases && selectedScenario.cases.length > 0 ? (
                                selectedScenario.cases.map((c, idx) => (
                                    <div key={idx} className="bg-[#21242b] p-3 md:p-5 rounded border border-white/5 hover:border-[#00FFC2]/30 transition-all">
                                        <h5 className="text-white font-bold mb-2 text-sm md:text-base">{c.title}</h5>
                                        <p className="text-gray-400 text-xs md:text-sm leading-relaxed">{c.desc}</p>
                                    </div>
                                ))
                            ) : (
                                <p className="text-gray-500 text-sm italic">暂无公开案例展示</p>
                            )}
                        </div>
                    </div>
                </div>

                <div className="p-4 md:p-6 border-t border-white/5 flex flex-col md:flex-row justify-between items-center gap-3 md:gap-4 shrink-0">
                    <div className="flex items-center gap-3 md:gap-4">
                         <img src={codeImg} alt="Customer Service QR" className="w-12 h-12 md:w-20 md:h-20 bg-white p-0.2 md:p-0.5 rounded-sm" />
                         <div>
                            <div className="text-white font-bold text-xs md:text-sm" style={{lineHeight: 1.5, fontSize: "24px" }}>联系我们</div>
                            <div className="text-gray-500 text-xs">扫码咨询详细方案</div>
                         </div>
                    </div>
                    <button onClick={() => handleWeChatShare("scenario")} className="w-full md:w-auto px-4 md:px-6 py-2.5 md:py-3 bg-[#252830] hover:bg-[#2b2f38] text-white text-xs md:text-sm font-bold border border-white/10 flex items-center justify-center gap-2 hover:border-[#00FFC2] transition-all">
                        <MessageCircle className="w-4 h-4 text-[#07C160]" /> 转发至微信
                    </button>
                </div>
            </div>
        </div>
      )}

      {/* Service Detail Modal */}
      {selectedService && (
        <div className="fixed inset-0 z-[200] flex items-center justify-center p-2 md:p-4">
            <div className="absolute inset-0 bg-black/90 backdrop-blur-md" onClick={() => setSelectedService(null)}></div>
            <div id="service-modal" className="bg-[#16181d] border border-[#00FFC2]/20 rounded-lg w-full max-w-4xl relative z-20 overflow-hidden shadow-2xl animate-fade-in-up flex flex-col h-[100dvh] md:h-auto md:max-h-[90vh]">
                <div className="flex justify-between items-center p-4 md:p-6 border-b border-white/10 bg-[#111318] shrink-0">
                    <div className="flex items-center gap-2 md:gap-3">
                         <div className="w-8 h-8 md:w-10 md:h-10 bg-[#00FFC2]/10 rounded flex items-center justify-center text-[#00FFC2]">
                             <Briefcase className="w-5 h-5 md:w-6 md:h-6"/>
                         </div>
                         <h3 className="text-lg md:text-2xl font-bold text-white tracking-wide">{selectedService.name}</h3>
                    </div>
                    <button onClick={() => setSelectedService(null)} className="p-2 hover:bg-white/10 rounded-full transition-colors">
                        <X className="w-5 h-5 md:w-6 md:h-6 text-gray-400 hover:text-white" />
                    </button>
                </div>

                <div className="p-4 md:p-8 overflow-y-auto flex-1">
                    {/* 1. Solution Description */}
                    <div className="mb-6 md:mb-8">
                        <h4 className="text-sm font-bold text-[#00FFC2] uppercase tracking-widest mb-3 md:mb-4 flex items-center gap-2">
                             <Settings className="w-4 h-4"/> 服务方案
                        </h4>
                        <p className="text-gray-300 leading-relaxed text-base md:text-lg border-l-4 border-[#00FFC2] pl-4 bg-[#1a1c23]/50 p-3 md:p-4 rounded-r-lg">
                            {selectedService.desc}
                        </p>
                    </div>

                    {/* 2. Cases Section */}
                    {(getServiceCases(selectedService.name) && getServiceCases(selectedService.name).length > 0) && (<div className="mb-6 md:mb-8">
                        <h4 className="text-sm font-bold text-[#00FFC2] uppercase tracking-widest mb-3 md:mb-4 flex items-center gap-2">
                             <Award className="w-4 h-4"/> 应用案例
                        </h4>
                        <div className="grid gap-3 md:gap-4">
                            {getServiceCases(selectedService.name).map((c, idx) => (
                                <div key={idx} className="bg-[#21242b] p-3 md:p-5 rounded border border-white/5 hover:border-[#00FFC2]/30 transition-all">
                                    <h5 className="text-white font-bold mb-2 text-sm md:text-base">{c.title}</h5>
                                    <p className="text-gray-400 text-xs md:text-sm leading-relaxed">{c.desc}</p>
                                </div>
                            ))}
                        </div>
                    </div>)}
                </div>

                <div className="p-4 md:p-6 border-t border-white/5 flex flex-col md:flex-row justify-between items-center gap-3 md:gap-4 shrink-0">
                    <div className="flex items-center gap-3 md:gap-4">
                         <img src={codeImg} alt="Customer Service QR" className="w-12 h-12 md:w-20 md:h-20 bg-white p-0.2 md:p-0.5 rounded-sm" />
                         <div>
                            <div className="text-white font-bold text-xs md:text-sm" style={{lineHeight: 1.5, fontSize: "24px" }}>联系我们</div>
                            <div className="text-gray-500 text-xs">扫码咨询详细方案</div>
                         </div>
                    </div>
                    <button onClick={()=> handleWeChatShare("service")} className="w-full md:w-auto px-4 md:px-6 py-2.5 md:py-3 bg-[#252830] hover:bg-[#2b2f38] text-white text-xs md:text-sm font-bold border border-white/10 flex items-center justify-center gap-2 hover:border-[#00FFC2] transition-all">
                        <MessageCircle className="w-4 h-4 text-[#07C160]" /> 转发至微信
                    </button>
                </div>
            </div>
        </div>
      )}

      {/* News Detail Modal (New) */}
      {selectedNews && (
        <div className="fixed inset-0 z-[200] flex items-center justify-center p-2 md:p-4">
            <div className="absolute inset-0 bg-black/90 backdrop-blur-md" onClick={() => setSelectedNews(null)}></div>
            <div id="news-modal" className="bg-[#16181d] border border-[#00FFC2]/20 rounded-lg w-full max-w-3xl relative z-20 overflow-hidden shadow-2xl animate-fade-in-up flex flex-col h-[100dvh] md:h-auto md:max-h-[90vh]">
                <div className="h-36 md:h-64 relative shrink-0">
                    <img src={selectedNews.image} alt={selectedNews.title} className="w-full h-full object-cover" />
                    <div className="absolute inset-0 bg-gradient-to-t from-[#16181d] to-transparent"></div>
                    <button onClick={() => setSelectedNews(null)} className="absolute top-2 right-2 md:top-4 md:right-4 p-2 bg-black/40 hover:bg-white/20 rounded-full transition-colors z-30 text-white">
                        <X className="w-5 h-5 md:w-6 md:h-6" />
                    </button>
                    <div className="absolute bottom-3 md:bottom-4 left-4 md:left-6 right-4 md:right-6">
                        <div className="inline-block px-2 py-1 mb-2 bg-[#00FFC2] text-black text-xs font-bold rounded">{selectedNews.category}</div>
                        <h3 className="text-lg md:text-3xl font-bold text-white leading-tight shadow-black drop-shadow-md">{selectedNews.title}</h3>
                    </div>
                </div>

                <div className="p-4 md:p-8 overflow-y-auto bg-[#16181d] flex-1">
                    <div className="flex items-center gap-2 text-gray-500 text-sm mb-4 md:mb-6 border-b border-white/5 pb-3 md:pb-4">
                        <Calendar className="w-4 h-4" />
                        <span>发布日期: {selectedNews.date}</span>
                    </div>

                    <div className="text-gray-300 leading-relaxed space-y-3 md:space-y-4 text-sm md:text-base">
                        <p>{selectedNews.content}</p>
                        <div className="p-3 md:p-4 bg-[#21242b] border-l-4 border-[#00FFC2] rounded-r mt-4 md:mt-6">
                            <p className="text-xs md:text-sm text-gray-400 italic">
                                "数据是新时代的石油，我们不仅是勘探者，更是炼油师，致力于将原始数据转化为驱动经济增长的动力。" —— 明树数据负责人
                            </p>
                        </div>
                    </div>
                </div>

                <div className="p-4 md:p-6 border-t border-white/5 flex flex-col md:flex-row justify-between items-center gap-3 md:gap-4 shrink-0">
                    <div className="flex items-center gap-3 md:gap-4">
                         <img src="https://api.qrserver.com/v1/create-qr-code/?size=100x100&data=BridataNews" alt="QR" className="w-9 h-9 md:w-12 md:h-12 bg-white p-0.5 md:p-1 rounded-sm" />
                         <div>
                            <div className="text-white font-bold text-xs md:text-sm">关注明树数据</div>
                            <div className="text-gray-500 text-xs">获取更多资讯</div>
                         </div>
                    </div>
                    <button onClick={() => handleWeChatShare("news")} className="w-full md:w-auto px-4 md:px-6 py-2.5 md:py-3 bg-[#252830] hover:bg-[#2b2f38] text-white text-xs md:text-sm font-bold border border-white/10 flex items-center justify-center gap-2 hover:border-[#00FFC2] transition-all">
                        <MessageCircle className="w-4 h-4 text-[#07C160]" /> 分享新闻
                    </button>
                </div>
            </div>
        </div>
      )}


      {/* Footer */}
      <footer className="border-t border-white/5 bg-[#0f1115] pt-16 pb-8 relative overflow-hidden mt-auto">
          <div className="absolute top-0 left-1/2 -translate-x-1/2 w-[600px] h-[600px] bg-[#00FFC2]/5 rounded-full blur-[150px] pointer-events-none"></div>
          <div className="max-w-6xl mx-auto px-6 relative z-10 text-center">
              <h2 className="text-2xl font-bold text-white mb-8 tracking-tight">与明树&#x3000;越山海</h2>
              <div className="flex justify-center gap-8 text-xs text-gray-500 mt-12 border-t border-white/5 pt-8">
                  <span>© 2024 Bridata Inc.</span>
                  <a href="https://custom.bridata.com/yinsizhengce.html" target='_blank'>Privacy Policy</a>
                  <span>Terms of Service</span>
              </div>
          </div>
      </footer>

      {/* Global Toast */}
      {showCopyToast && (
            <div className="fixed top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 bg-[#21242b] text-white px-8 py-6 rounded border border-[#00FFC2] shadow-[0_0_50px_rgba(0,0,0,0.8)] z-[300] flex flex-col items-center gap-4 animate-fade-in-up">
                <div className="w-12 h-12 bg-[#00FFC2]/10 rounded-full flex items-center justify-center">
                    <CheckCircle2 className="w-6 h-6 text-[#00FFC2]" />
                </div>
                <div className="text-center">
                    <p className="font-bold text-lg mb-1">内容已复制</p>
                    <p className="text-sm text-gray-400">请打开微信，粘贴并发送给好友</p>
                </div>
            </div>
      )}

      <style>{`
        @keyframes fadeIn { to { opacity: 1; } }
        @keyframes slideUp { to { opacity: 1; transform: translateY(0); } from { opacity: 0; transform: translateY(30px); } }
        @keyframes infinite-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
        .animate-infinite-scroll { animation: infinite-scroll 30s linear infinite; }
        .animate-fade-in-up { animation: fadeInUp 0.5s ease-out forwards; }
        @keyframes fadeInUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        .no-scrollbar::-webkit-scrollbar { display: none; }
        .no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
      `}</style>
    </div>
  );
};

export default App;