// 【重要】必须使用 const Component 作为组件变量名
// 小羚羚氢能产业数字化平台 · 规划设计（Axhub Runtime 可交互响应式汇报页）

const Component = function () {
	var useState = React.useState;
	var useEffect = React.useEffect;
	var useMemo = React.useMemo;
	var useCallback = React.useCallback;

	var antd = window.antd || {};
	var App = antd.App || React.Fragment;
	var Tag = antd.Tag;

	var C_PRIMARY = '#16D1A1';
	var C_PRIMARY_D = '#00BFA5';
	var C_HERO = '#061018';
	var C_HERO2 = '#0a1f1a';
	var C_PAGE = '#eef1f5';
	var C_CARD = '#ffffff';
	var C_TEXT = '#141b2d';
	var C_MUTED = '#647089';
	var C_LINE = 'rgba(15,23,42,0.07)';
	var C_BLUE = '#1d4ed8';
	var C_ORANGE = '#c2410c';
	var C_PURPLE = '#6d28d9';
	var FONT = '-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue","Segoe UI",sans-serif';

	var sectionNav = [
		{ key: 'hero', label: '总览' },
		{ key: 'chain', label: '产业链' },
		{ key: 'roles', label: '用户角色' },
		{ key: 'loops', label: '业务闭环' },
		{ key: 'roadmap', label: '路线图' },
		{ key: 'summary', label: '关键重点' }
	];

	var kpiStats = [
		{ label: '目标用户角色', value: '7', unit: '类', color: C_BLUE },
		{ label: '业务闭环', value: '3', unit: '条', color: C_PRIMARY },
		{ label: '产业链覆盖', value: '上中下游', unit: '', color: C_ORANGE },
		{ label: '落地步骤', value: '4', unit: '步', color: C_PURPLE }
	];

	var chainSteps = [
		{ key: 'upstream', title: '上游 · 制氢采购', desc: '制氢企业挂牌售氢、管束车调度、到站交付', biz: '制氢企业在线挂牌售氢；加氢站/运营方发起采购询价；成交后管束车配送到站', revenue: '交易撮合费 · 物流调度 · 数据监测', color: C_BLUE, icon: 'H₂' },
		{ key: 'mid', title: '中游 · 加氢站', desc: '预约接单、电子加氢卡结算、巡检与对账', biz: '司机预约加氢、电子加氢卡预充值；OCR 识别加氢量；氢费对账线上化', revenue: 'SaaS · 支付通道 · 对账增值', color: C_PRIMARY, icon: '站' },
		{ key: 'down', title: '下游 · 氢能车运营', desc: '租赁/自营、交还车、能源与 ETC 账单闭环', biz: '在线签约、交还车+替换车、能源/ETC/维保聚合、客户评级风控', revenue: '租赁服务 · 资产管理 · 金融结算', color: C_ORANGE, icon: '车' }
	];

	var roleTableRows = [
		['内部用户', '羚牛氢能员工', '合同-交还车-结算；车辆全生命周期；风控审批；BI分析/数据驾驶舱', '业务员/运维/能源/财务等；管理层手机驾驶舱'],
		['车队长', '车队管理者', '在线租车报价签约；运行/账单/开票/对讲；车队车辆调度', '注册验证、电子合同、实时定位、车辆调度'],
		['氢能车司机', '自营+外部', '路线导航、能源账单、安全培训、预约加氢、AI故障上报', '内外部司机差异化；AI主动采集故障证据链'],
		['加氢站用户', '站点运营', '预约接单、电子加氢卡、OCR、氢费对账', '预约加氢、氢气采购计划、氢费对账功能'],
		['维修站用户', '维保服务', '派单接单、费用记录、核实对账', '衔接故障/事故工单一键发起维修，形成全流程完整证据链记录'],
		['制氢企业', '氢气供应', '挂牌售氢、管束车监测、询价成交', '对接加氢站采购'],
		['集团客户', '企业级', '多项目车辆/账单/能源总览；在线租车', '类车队长、主体为企业']
	];

	var roles = [
		{ id: 'internal', name: '内部用户', sub: '羚牛氢能员工', tag: '运营中枢', color: C_BLUE, capability: '合同-收款-交还车-结算全链路；车辆全生命周期；风控审批；BI分析报告', scenes: '业务员 / 客服 / 运维 / 能源 / 安全 / 财务 / 法务 / CEO；管理层手机数据驾驶舱', detail: [
			{ title: '业务条线 A · 租赁/自营', text: '合同发起 → 客户评级/敏感客户校验 → 标准/非标审批 → 收款 → 交车 → 账单 → 还车 → 结算（含替换车），全程留痕可审计' },
			{ title: '业务条线 B · 车辆全生命周期', text: '采购/外租 → 验车入库 → 维修/年审/保养/故障/事故 → 出库（出售/报废/停租），支撑资产决策与残值管理' },
			{ title: '管理层 · BI 与数据驾驶舱', text: '管理层可查询各类 BI 分析报告、手机数据驾驶舱，实时掌握运营、资产、能源与风控核心指标' }
		]},
		{ id: 'captain', name: '车队长', sub: '车队管理者', tag: '在线租车', color: C_PRIMARY, capability: '一键租车报价签约；车辆运行/账单/开票/对讲；车队车辆调度', scenes: '注册验证、在线合同、实时定位、车队调度', steps: [
			['1', '选择车型、数量、租期发起意向', '推送业务员'],
			['2', '系统按地区自动生成报价单', '业务员在线沟通调整'],
			['3', '确认报价并提交', '自动生成电子合同推送签章'],
			['4', '运维完成交车', '查看运行、账单、开票、对讲']
		], detail: [
			{ title: '交车后管控', text: '实时定位/轨迹、氢/电能源账单、ETC、合同账单、付款、在线开票、语音对讲（类对讲机）' },
			{ title: '车队车辆调度', text: '对车队内车辆进行任务分配与调度，结合实时定位与运行状态，提升运力利用与运输协同效率' }
		]},
		{ id: 'driver', name: '氢能车司机', sub: '自营 + 外部租赁', tag: '运输执行', color: C_ORANGE, capability: '路线导航、能源账单、安全培训、预约加氢、故障救援、AI故障上报', scenes: '内外部司机差异化权限；AI故障上报主动采集证据链', detail: [
			{ title: '内部自营司机', text: '定位/轨迹、路线规划导航、氢/电/ETC 账单、安全培训与定期考试、证照管理、氢/电量提醒、预约加氢（校验特种设备/行驶证）、故障提报、紧急救援' },
			{ title: '外部租赁司机', text: '轨迹导航、能源/ETC 账单、安全培训、司机与车辆证件管理、预约加氢、故障提报、紧急救援；不含集团内部物流专属调度' },
			{ title: 'AI 故障上报', text: '主动采集故障证据链信息，与故障/事故工单及维修站派单衔接，形成完整留痕' }
		]},
		{ id: 'station', name: '加氢站用户', sub: '站点运营', tag: '加注服务', color: C_PRIMARY_D, capability: '预约接单、电子加氢卡、OCR 识别、氢费对账、氢气采购', scenes: '预约加氢、氢气采购计划、氢费对账功能', modules: [
			['预约接单', '验证特种设备登记、行驶证后确认服务'],
			['电子加氢卡', '扫描加氢卡，预充值客户直接扣款'],
			['过程管理', '加氢前/中/后检查、卸气记录、巡检记录'],
			['OCR 识别', '拍摄面板识别加氢量，绑定车辆生成记录'],
			['氢费对账', '接收并操作氢费对账单线上确认'],
			['氢气采购', '向制氢企业发起采购（联动上游）']
		]},
		{ id: 'repair', name: '维修站用户', sub: '维保服务', tag: '派单对账', color: C_PURPLE, capability: '维修/保养派单接单、费用记录、运维核实对账', scenes: '衔接故障/事故工单一键发起维修，形成全流程完整证据链记录', detail: [
			{ title: '流程闭环', text: '接收派单 → 记录过程与人工/配件费用 → 自动生成维修记录 → 运维核实 → 在线对账及账期结算，与车辆全生命周期打通' }
		]},
		{ id: 'producer', name: '制氢企业', sub: '氢气供应', tag: '氢气贸易', color: C_BLUE, capability: '在线挂牌售氢、管束车监测、询价成交与运费结算', scenes: '对接加氢站采购', detail: [
			{ title: '商业模式', text: '企业验证 → 在线挂牌售氢（类商城）→ 管束车实时监测 → 加氢站询价采购 → 成交配送 → 管束车运费结算' }
		], tags: ['挂牌售氢', '询价采购', '物流调度', '运费结算'] },
		{ id: 'group', name: '集团客户', sub: '企业级客户', tag: '集团总览', color: C_ORANGE, capability: '多项目车辆/账单/能源/ETC 总览；在线租车签约', scenes: '类车队长但主体为企业', detail: [
			{ title: '企业级管控', text: '查看集团所有租赁/自营项目车辆使用、全项目账单与结算、电子开票、能源费、ETC、司机信息汇总；支持 APP 在线租车生成合同' },
			{ title: '与车队长差异', text: '车队长侧重单车队运营；集团客户侧重多项目、多合同、多车队统一视图与集团采购决策' }
		]}
	];

	var loops = [
		{ id: 'ops', title: '闭环一 · 租赁/自营运营', tag: '核心收入', color: C_BLUE, flow: '意向单 → 报价 → 合同（评级/敏感客户审批）→ 交车 → 运营监控 → 账单收款 → 还车 → 结算 → 替换车（如需）' },
		{ id: 'asset', title: '闭环二 · 车辆资产生命周期', tag: '资产管控', color: C_PRIMARY, flow: '采购/外租 → 验车入库 → 维保/年审/故障/事故 → 能源消耗 → 出库处置 → OneOS 数据底座' },
		{ id: 'h2', title: '闭环三 · 氢气贸易与加注', tag: '产业延伸', color: C_ORANGE, flow: '制氢挂牌 → 加氢站询价采购 → 管束车配送 → 司机预约加氢 → 电子加氢卡结算 → 氢费对账 → 运营账单聚合' }
	];

	var phases = [
		{
			id: 'p1', step: '01', phase: '第一阶段', title: '内部用户打通', subtitle: '运营中枢 · 业务链条协同', color: C_BLUE,
			focus: '业管、业务员、运维、财务、风控等内部岗位协同，贯通合同审批、交还车、替换车、账单收款与车辆全生命周期管理',
			deliver: '内部租赁/自营业务链条在手机端与 OneOS 数据底座初步贯通，为客户端租车闭环提供后台支撑',
			items: [
				'业务员：接收租车意向推送，在线报价沟通，推动电子合同签章成单',
				'业管/法务：客户评级、敏感客户审批、标准/非标合同合规审核',
				'运维：交车验车、还车验收、替换车调度，与车辆台账实时联动',
				'财务/风控：账单生成、收款确认、结算对账，全程留痕可审计'
			],
			highlight: '内部用户是多岗位协同中枢——承接客户租车意向，驱动报价、审批、交还车、结算全链条运转'
		},
		{
			id: 'p2', step: '02', phase: '第二阶段', title: '加氢站/维修站打通', subtitle: '能源加注 · 维保互联', color: C_PRIMARY,
			focus: '加氢站预约接单、电子加氢卡、OCR 加氢量识别、氢气采购计划与氢费对账；维修站派单接单、费用核实与在线对账',
			deliver: '加注与维保两端接入平台，能源消耗与维保记录回写运营侧，支撑车辆运行成本闭环',
			items: [
				'加氢站：司机预约加氢接单、电子加氢卡结算、氢气采购计划管理',
				'加氢站：OCR 识别加氢量、氢费对账线上确认',
				'维修站：接收故障/事故工单派单，记录人工与配件费用',
				'维修站：运维核实后在线对账，与车辆全生命周期数据打通'
			]
		},
		{
			id: 'p3', step: '03', phase: '第三阶段', title: '车队长/氢能司机接入', subtitle: '客户触达 · 租车闭环', color: C_ORANGE,
			focus: '车队长/集团客户快速企业认证，选型定量定租期发起意向；经内部业务员报价后形成电子合同；提车—运营—还车全过程闭环',
			deliver: '外部客户与司机端上线，租车业务从企业认证到还车结算端到端可追溯、可协同',
			items: [
				'车队长/集团客户：企业信息快速认证，选择车型、数量、租期发起租车意向',
				'内部业务员：接收意向、在线报价调整，确认后自动生成电子合同推送签章',
				'提车—还车闭环：运维交车验车 → 运行监控/账单/能源 → 还车验收 → 结算（含替换车）',
				'氢能司机：路线导航、预约加氢、AI 故障上报、安全培训与故障救援'
			],
			highlight: '核心闭环：企业快速认证 → 选型/定量/定租期 → 业务员报价成单 → 电子合同 → 提车—还车全程线上化，与内部用户业务链条实时协同'
		},
		{
			id: 'p4', step: '04', phase: '第四阶段', title: '制氢企业 + 氢气采购商城', subtitle: '氢气贸易 · 产业延伸', color: C_PURPLE,
			focus: '制氢企业在线挂牌售氢、管束车实时监测；加氢站询价采购、成交配送与运费结算；集团客户多项目总览扩展',
			deliver: '氢气采购—加注—运营产业链数字化贯通，BI 分析与数据智能能力持续扩展',
			items: [
				'制氢企业：企业验证、在线挂牌售氢（类商城）、管束车运输监测',
				'加氢站：向制氢企业发起询价采购，成交后管束车配送到站',
				'贸易结算：管束车运费结算、氢气交易撮合与数据监测',
				'集团客户：多项目车辆/账单/能源总览，与租车闭环数据聚合分析'
			]
		}
	];

	var summaryPoints = [
		'小羚羚不是单一 App，而是氢能产业多端协同的数字化入口，与 OneOS Web 端形成「大屏管控 + 手机执行」互补。',
		'租赁主线：车队长/集团客户快速认证 → 选型定量定租期 → 内部业务员报价成单 → 电子合同 → 提车—还车闭环，与业管/运维/财务链条实时协同。',
		'按「内部打通 → 站点互联 → 客户司机接入 → 氢气贸易延伸」四步递进，先夯实运营闭环，再扩展产业能力。',
		'客户评级与敏感客户审批机制内嵌合同流程，从源头降低收账风险，七类用户共用同一数据底座。'
	];

	var activeSectionState = useState('hero');
	var activeSection = activeSectionState[0];
	var setActiveSection = activeSectionState[1];
	var activeRoleState = useState('internal');
	var activeRole = activeRoleState[0];
	var setActiveRole = activeRoleState[1];
	var activeChainState = useState('upstream');
	var activeChain = activeChainState[0];
	var setActiveChain = activeChainState[1];
	var activeLoopState = useState('ops');
	var activeLoop = activeLoopState[0];
	var setActiveLoop = activeLoopState[1];
	var activePhaseState = useState('p1');
	var activePhase = activePhaseState[0];
	var setActivePhase = activePhaseState[1];
	var navOpenState = useState(false);
	var navOpen = navOpenState[0];
	var setNavOpen = navOpenState[1];
	var roleViewState = useState('card');
	var roleView = roleViewState[0];
	var setRoleView = roleViewState[1];
	var scrollPctState = useState(0);
	var scrollPct = scrollPctState[0];
	var setScrollPct = scrollPctState[1];
	var showTopState = useState(false);
	var showTop = showTopState[0];
	var setShowTop = showTopState[1];

	var selectedRole = useMemo(function () { return roles.find(function (r) { return r.id === activeRole; }) || roles[0]; }, [activeRole]);
	var selectedChain = useMemo(function () { return chainSteps.find(function (c) { return c.key === activeChain; }) || chainSteps[0]; }, [activeChain]);
	var selectedPhase = useMemo(function () { return phases.find(function (p) { return p.id === activePhase; }) || phases[0]; }, [activePhase]);

	var scrollToSection = useCallback(function (key) {
		setActiveSection(key);
		setNavOpen(false);
		var el = document.getElementById('xllg-sec-' + key);
		if (el && el.scrollIntoView) el.scrollIntoView({ behavior: 'smooth', block: 'start' });
	}, []);

	useEffect(function () {
		var ids = sectionNav.map(function (s) { return s.key; });
		function onScroll() {
			var doc = document.documentElement;
			var scrollTop = doc.scrollTop || document.body.scrollTop;
			var max = (doc.scrollHeight - doc.clientHeight) || 1;
			setScrollPct(Math.min(100, Math.round((scrollTop / max) * 100)));
			setShowTop(scrollTop > 480);
			var found = 'hero';
			for (var i = 0; i < ids.length; i++) {
				var node = document.getElementById('xllg-sec-' + ids[i]);
				if (node && node.getBoundingClientRect().top <= 128) found = ids[i];
			}
			setActiveSection(found);
		}
		window.addEventListener('scroll', onScroll, { passive: true });
		onScroll();
		return function () { window.removeEventListener('scroll', onScroll); };
	}, []);

	var css =
		'*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}' +
		'.xllg-root{font-family:' + FONT + ';color:' + C_TEXT + ';background:linear-gradient(180deg,#f8fafb 0%,' + C_PAGE + ' 120px,#e8ecf2 100%);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased}' +
		'.xllg-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:200;background:transparent}' +
		'.xllg-progress-bar{height:100%;background:linear-gradient(90deg,' + C_PRIMARY_D + ',' + C_PRIMARY + ');transition:width .12s ease-out;border-radius:0 2px 2px 0}' +
		'.xllg-nav{position:sticky;top:3px;z-index:100;background:rgba(255,255,255,0.94);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid ' + C_LINE + '}' +
		'.xllg-nav-in{max-width:1240px;margin:0 auto;padding:0 24px;height:58px;display:flex;align-items:center;gap:16px}' +
		'.xllg-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;flex-shrink:0}' +
		'.xllg-logo{width:36px;height:36px;border-radius:11px;background:linear-gradient(145deg,' + C_PRIMARY + ',' + C_PRIMARY_D + ');color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;box-shadow:0 4px 14px rgba(22,209,161,0.35)}' +
		'.xllg-links{display:flex;gap:4px;flex:1;overflow-x:auto;scrollbar-width:none}' +
		'.xllg-links::-webkit-scrollbar{display:none}' +
		'.xllg-link{padding:8px 15px;border-radius:999px;font-size:13px;font-weight:500;color:' + C_MUTED + ';border:none;background:transparent;cursor:pointer;white-space:nowrap;transition:color .2s,background .2s}' +
		'.xllg-link:hover{color:' + C_TEXT + ';background:rgba(22,209,161,0.07)}' +
		'.xllg-link.on{color:' + C_PRIMARY_D + ';background:rgba(22,209,161,0.14);font-weight:600}' +
		'.xllg-link:focus-visible{outline:2px solid rgba(22,209,161,0.45);outline-offset:2px}' +
		'.xllg-menu{display:none;border:1px solid ' + C_LINE + ';background:#fff;border-radius:8px;padding:8px 12px;font-size:13px;cursor:pointer;margin-left:auto}' +
		'.xllg-hero{position:relative;background:' + C_HERO + ';color:#fff;padding:72px 24px 80px;overflow:hidden}' +
		'.xllg-hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 70% 55% at 75% 15%,rgba(22,209,161,0.2),transparent 50%),radial-gradient(ellipse 45% 35% at 8% 85%,rgba(29,78,216,0.14),transparent 45%);pointer-events:none}' +
		'.xllg-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.025) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to bottom,#000 15%,transparent 88%);pointer-events:none}' +
		'.xllg-hero-in{position:relative;max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.15fr 0.85fr;gap:40px;align-items:center}' +
		'.xllg-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}' +
		'.xllg-pill{padding:5px 12px;border-radius:999px;font-size:12px;border:1px solid rgba(255,255,255,0.16);background:rgba(255,255,255,0.05);color:rgba(255,255,255,0.85)}' +
		'.xllg-pill-a{border-color:rgba(22,209,161,0.5);background:rgba(22,209,161,0.12);color:#7ef0d4}' +
		'.xllg-h1{font-size:clamp(30px,4.5vw,44px);font-weight:800;line-height:1.12;letter-spacing:-0.025em;margin-bottom:16px}' +
		'.xllg-lead{font-size:clamp(14px,2.2vw,17px);color:rgba(255,255,255,0.72);line-height:1.65;margin-bottom:24px;max-width:560px}' +
		'.xllg-quote{padding:16px 18px;border-radius:14px;border-left:3px solid ' + C_PRIMARY + ';background:' + C_HERO2 + ';font-size:14px;line-height:1.65;color:rgba(255,255,255,0.9);margin-bottom:24px}' +
		'.xllg-quote b{color:#7ef0d4;font-weight:600}' +
		'.xllg-cta{display:flex;flex-wrap:wrap;gap:10px}' +
		'.xllg-btn{padding:11px 22px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:transform .2s,box-shadow .2s}' +
		'.xllg-btn:active{transform:scale(0.98)}' +
		'.xllg-btn-p{background:linear-gradient(135deg,' + C_PRIMARY + ',' + C_PRIMARY_D + ');color:#fff;box-shadow:0 6px 20px rgba(22,209,161,0.35)}' +
		'.xllg-btn-g{background:rgba(255,255,255,0.08);color:#fff;border:1px solid rgba(255,255,255,0.2)}' +
		'.xllg-eco{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:20px;padding:24px;backdrop-filter:blur(8px)}' +
		'.xllg-eco-title{font-size:12px;font-weight:700;letter-spacing:0.06em;color:rgba(255,255,255,0.5);margin-bottom:16px;text-transform:uppercase}' +
		'.xllg-eco-flow{display:flex;flex-direction:column;gap:0}' +
		'.xllg-eco-node{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,0.08)}' +
		'.xllg-eco-node:last-child{border-bottom:none}' +
		'.xllg-eco-dot{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#fff;flex-shrink:0}' +
		'.xllg-eco-label{font-size:14px;font-weight:700;margin-bottom:2px}' +
		'.xllg-eco-sub{font-size:12px;color:rgba(255,255,255,0.55)}' +
		'.xllg-kpis{max-width:1240px;margin:-40px auto 0;padding:0 24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;position:relative;z-index:2}' +
		'.xllg-kpi{background:' + C_CARD + ';border-radius:18px;padding:22px 20px;border:1px solid ' + C_LINE + ';box-shadow:0 8px 32px rgba(15,23,42,0.07);transition:transform .25s,box-shadow .25s,border-color .25s}' +
		'.xllg-kpi:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(15,23,42,0.11);border-color:rgba(22,209,161,0.2)}' +
		'.xllg-kpi-v{font-size:30px;font-weight:800;line-height:1;letter-spacing:-0.02em}' +
		'.xllg-kpi-u{font-size:14px;font-weight:600;opacity:.7;margin-left:2px}' +
		'.xllg-kpi-l{font-size:12px;color:' + C_MUTED + ';margin-top:8px}' +
		'.xllg-main{max-width:1240px;margin:0 auto;padding:56px 24px 72px}' +
		'.xllg-sec{margin-bottom:64px;scroll-margin-top:80px;padding:32px;border-radius:24px;background:rgba(255,255,255,0.72);border:1px solid ' + C_LINE + ';backdrop-filter:blur(6px)}' +
		'.xllg-hero.xllg-sec{background:' + C_HERO + ';border:none;backdrop-filter:none;padding:72px 24px 80px;margin-bottom:0}' +
		'.xllg-sec-tag{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:' + C_PRIMARY_D + ';margin-bottom:8px}' +
		'.xllg-sec-h{font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-0.02em;margin-bottom:8px}' +
		'.xllg-sec-d{font-size:14px;color:' + C_MUTED + ';line-height:1.6;max-width:680px;margin-bottom:24px}' +
		'.xllg-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}' +
		'.xllg-tab{padding:10px 20px;border-radius:12px;border:1px solid ' + C_LINE + ';background:#fff;font-size:13px;font-weight:600;color:' + C_MUTED + ';cursor:pointer;transition:all .2s}' +
		'.xllg-tab.on{color:#fff;border-color:transparent;box-shadow:0 6px 20px rgba(15,23,42,0.12)}' +
		'.xllg-panel{background:#fff;border-radius:18px;border:1px solid ' + C_LINE + ';padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;box-shadow:0 4px 24px rgba(15,23,42,0.04)}' +
		'.xllg-panel h3{font-size:21px;font-weight:800;margin-bottom:8px}' +
		'.xllg-panel p{font-size:14px;color:' + C_MUTED + ';line-height:1.65;margin-bottom:10px}' +
		'.xllg-rev{font-size:13px;padding:10px 14px;border-radius:10px;background:rgba(22,209,161,0.09);color:' + C_PRIMARY_D + ';font-weight:600;display:inline-block}' +
		'.xllg-vis{aspect-ratio:16/10;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:72px;font-weight:900;color:rgba(255,255,255,0.95)}' +
		'.xllg-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}' +
		'.xllg-card{background:#fff;border-radius:16px;padding:22px;border:1px solid ' + C_LINE + '}' +
		'.xllg-card h4{font-size:15px;font-weight:700;margin-bottom:8px}' +
		'.xllg-card p{font-size:13px;color:' + C_MUTED + ';line-height:1.6}' +
		'.xllg-role-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}' +
		'.xllg-toggle{display:flex;border:1px solid ' + C_LINE + ';border-radius:10px;overflow:hidden;background:#fff}' +
		'.xllg-toggle button{padding:8px 16px;font-size:12px;font-weight:600;border:none;background:transparent;color:' + C_MUTED + ';cursor:pointer}' +
		'.xllg-toggle button.on{background:' + C_PRIMARY + ';color:#fff}' +
		'.xllg-roles-g{display:grid;grid-template-columns:1.05fr 0.95fr;gap:20px;align-items:start}' +
		'.xllg-role-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}' +
		'.xllg-rc{padding:14px 16px;border-radius:14px;border:1px solid ' + C_LINE + ';background:#fff;text-align:left;cursor:pointer;width:100%;transition:all .2s}' +
		'.xllg-rc:hover{box-shadow:0 4px 16px rgba(15,23,42,0.06)}' +
		'.xllg-rc.on{box-shadow:0 10px 28px rgba(15,23,42,0.09);transform:translateY(-2px)}' +
		'.xllg-rc-n{font-size:14px;font-weight:700}' +
		'.xllg-rc-s{font-size:11px;color:' + C_MUTED + '}' +
		'.xllg-rd{background:#fff;border-radius:18px;border:1px solid ' + C_LINE + ';padding:26px;position:sticky;top:88px;box-shadow:0 4px 24px rgba(15,23,42,0.04)}' +
		'.xllg-rd-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}' +
		'.xllg-rd-h h3{font-size:21px;font-weight:800}' +
		'.xllg-rd-cap{font-size:13px;color:' + C_MUTED + ';line-height:1.6;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid ' + C_LINE + '}' +
		'.xllg-block{margin-bottom:14px}' +
		'.xllg-block h5{font-size:13px;font-weight:700;margin-bottom:5px}' +
		'.xllg-block p{font-size:13px;color:' + C_MUTED + ';line-height:1.6}' +
		'.xllg-tbl{width:100%;border-collapse:collapse;font-size:13px;background:#fff;border-radius:16px;overflow:hidden;border:1px solid ' + C_LINE + '}' +
		'.xllg-tbl th,.xllg-tbl td{padding:12px 14px;text-align:left;border-bottom:1px solid ' + C_LINE + ';vertical-align:top}' +
		'.xllg-tbl th{background:#f0faf7;font-weight:700;font-size:12px;color:' + C_TEXT + '}' +
		'.xllg-tbl tr:last-child td{border-bottom:none}' +
		'.xllg-tbl tr:nth-child(even) td{background:#fafcfb}' +
		'.xllg-steps{display:flex;flex-direction:column;gap:0;margin:12px 0}' +
		'.xllg-step{display:grid;grid-template-columns:28px 1fr;gap:12px;padding:10px 0;border-bottom:1px dashed ' + C_LINE + '}' +
		'.xllg-step:last-child{border-bottom:none}' +
		'.xllg-step-n{width:28px;height:28px;border-radius:8px;background:rgba(22,209,161,0.15);color:' + C_PRIMARY_D + ';font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}' +
		'.xllg-step-t{font-size:13px;font-weight:600;margin-bottom:2px}' +
		'.xllg-step-r{font-size:12px;color:' + C_MUTED + '}' +
		'.xllg-modgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}' +
		'.xllg-mod{padding:10px 12px;border-radius:10px;background:#f6fbf9;border:1px solid rgba(22,209,161,0.12);font-size:12px}' +
		'.xllg-mod b{display:block;font-size:12px;margin-bottom:3px;color:' + C_TEXT + '}' +
		'.xllg-mod span{color:' + C_MUTED + ';line-height:1.45}' +
		'.xllg-loops{display:flex;flex-direction:column;gap:12px}' +
		'.xllg-loop{padding:20px 22px;border-radius:16px;border:1px solid ' + C_LINE + ';background:#fff;cursor:pointer;transition:all .2s}' +
		'.xllg-loop:hover{border-color:rgba(22,209,161,0.28)}' +
		'.xllg-loop.on{box-shadow:0 10px 32px rgba(15,23,42,0.08)}' +
		'.xllg-loop-h{display:flex;justify-content:space-between;align-items:center;gap:12px}' +
		'.xllg-loop-t{font-size:15px;font-weight:700}' +
		'.xllg-loop-f{font-size:13px;color:' + C_MUTED + ';line-height:1.65;margin-top:12px;padding-top:12px;border-top:1px dashed ' + C_LINE + '}' +
		'.xllg-rm-wrap{position:relative;margin-bottom:24px}' +
		'.xllg-rm-track{position:absolute;top:36px;left:8%;right:8%;height:2px;background:linear-gradient(90deg,' + C_PRIMARY_D + '33,' + C_PRIMARY + '66,' + C_PURPLE + '33);border-radius:99px;display:none}' +
		'.xllg-rm{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;position:relative}' +
		'.xllg-ph{padding:20px 18px;border-radius:18px;border:1px solid ' + C_LINE + ';background:#fff;text-align:left;cursor:pointer;width:100%;transition:transform .22s,box-shadow .22s,border-color .22s;position:relative;overflow:hidden}' +
		'.xllg-ph::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:transparent;transition:background .22s}' +
		'.xllg-ph:hover{transform:translateY(-3px);border-color:rgba(22,209,161,0.28);box-shadow:0 12px 32px rgba(15,23,42,0.07)}' +
		'.xllg-ph.on{box-shadow:0 14px 36px rgba(15,23,42,0.1);transform:translateY(-2px)}' +
		'.xllg-ph.on::before{background:linear-gradient(90deg,var(--ph-color,' + C_PRIMARY + '),transparent)}' +
		'.xllg-ph-step{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;font-size:12px;font-weight:800;color:#fff;margin-bottom:12px}' +
		'.xllg-ph-phase{font-size:11px;font-weight:600;color:' + C_MUTED + ';margin-bottom:4px;letter-spacing:0.02em}' +
		'.xllg-ph-t{font-size:15px;font-weight:800;line-height:1.35;margin-bottom:6px;color:' + C_TEXT + '}' +
		'.xllg-ph-sub{font-size:12px;color:' + C_MUTED + ';line-height:1.45}' +
		'.xllg-pd{background:linear-gradient(135deg,#fff 0%,#f8fcfb 100%);border-radius:20px;border:1px solid ' + C_LINE + ';padding:28px;box-shadow:0 4px 24px rgba(15,23,42,0.04)}' +
		'.xllg-pd-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid ' + C_LINE + '}' +
		'.xllg-pd-badge{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#fff;flex-shrink:0}' +
		'.xllg-pd-head h4{margin:0;font-size:20px;font-weight:800;flex:1;min-width:0}' +
		'.xllg-pd-sub{font-size:13px;color:' + C_MUTED + ';width:100%;margin-top:-8px;padding-left:52px}' +
		'.xllg-pd-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}' +
		'.xllg-pd dt{font-size:11px;font-weight:700;color:' + C_MUTED + ';text-transform:uppercase;letter-spacing:0.05em;margin-bottom:4px}' +
		'.xllg-pd dd{font-size:14px;line-height:1.55}' +
		'.xllg-pd-hl{padding:16px 18px;border-radius:14px;border-left:3px solid ' + C_PRIMARY + ';background:rgba(22,209,161,0.07);font-size:14px;line-height:1.65;color:' + C_TEXT + ';margin-bottom:20px}' +
		'.xllg-pd-hl b{color:' + C_PRIMARY_D + ';font-weight:700;display:block;margin-bottom:6px;font-size:12px;letter-spacing:0.04em;text-transform:uppercase}' +
		'.xllg-pd-items{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}' +
		'.xllg-pd-items li{display:flex;gap:10px;font-size:13px;line-height:1.55;color:' + C_TEXT + '}' +
		'.xllg-pd-items li::before{content:"";width:6px;height:6px;border-radius:50%;background:' + C_PRIMARY + ';margin-top:7px;flex-shrink:0}' +
		'.xllg-pd-items-t{font-size:11px;font-weight:700;color:' + C_MUTED + ';text-transform:uppercase;letter-spacing:0.05em;margin-bottom:10px}' +
		'.xllg-sum{background:linear-gradient(135deg,' + C_HERO + ',' + C_HERO2 + ');border-radius:22px;padding:36px;color:#fff}' +
		'.xllg-sum h3{font-size:21px;font-weight:800;margin-bottom:22px}' +
		'.xllg-sum ul{list-style:none;display:flex;flex-direction:column;gap:16px}' +
		'.xllg-sum li{display:flex;gap:14px;font-size:14px;line-height:1.65;color:rgba(255,255,255,0.9)}' +
		'.xllg-sum-i{flex-shrink:0;width:26px;height:26px;border-radius:9px;background:rgba(22,209,161,0.28);color:#7ef0d4;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}' +
		'.xllg-ft{text-align:center;padding:28px 24px 36px;font-size:12px;color:' + C_MUTED + '}' +
		'.xllg-top{position:fixed;right:24px;bottom:28px;width:44px;height:44px;border-radius:14px;border:none;background:' + C_PRIMARY + ';color:#fff;font-size:18px;cursor:pointer;box-shadow:0 6px 20px rgba(22,209,161,0.4);z-index:90;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}' +
		'.xllg-top.show{opacity:1;pointer-events:auto}' +
		'.xllg-top:hover{transform:translateY(-2px)}' +
		'.xllg-tag{display:inline-block;padding:2px 9px;border-radius:6px;font-size:11px;font-weight:600;background:rgba(22,209,161,0.12);color:' + C_PRIMARY_D + '}' +
		'@media(min-width:1025px){.xllg-rm-track{display:block}}' +
		'@media(max-width:1024px){.xllg-hero-in{grid-template-columns:1fr}.xllg-eco{margin-top:8px}.xllg-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.xllg-panel{grid-template-columns:1fr}.xllg-grid3{grid-template-columns:1fr}.xllg-roles-g{grid-template-columns:1fr}.xllg-rd{position:static}.xllg-rm{grid-template-columns:repeat(2,minmax(0,1fr))}.xllg-pd-grid{grid-template-columns:1fr}.xllg-pd-sub{padding-left:0;margin-top:4px}}' +
		'@media(max-width:640px){.xllg-nav-in{padding:0 16px;position:relative;flex-wrap:wrap;height:auto;min-height:58px;padding-top:10px;padding-bottom:10px}.xllg-links{display:none;position:absolute;top:58px;left:0;right:0;background:#fff;flex-direction:column;padding:12px 16px;border-bottom:1px solid ' + C_LINE + ';box-shadow:0 8px 24px rgba(15,23,42,0.08)}.xllg-nav.open .xllg-links{display:flex}.xllg-menu{display:block}.xllg-kpis{grid-template-columns:1fr 1fr;gap:10px;padding:0 16px;margin-top:-28px}.xllg-main{padding:40px 16px 56px}.xllg-sec{padding:20px 16px;border-radius:18px;margin-bottom:40px}.xllg-role-list{grid-template-columns:1fr}.xllg-rm{grid-template-columns:1fr}.xllg-modgrid{grid-template-columns:1fr}.xllg-hero{padding:52px 16px 64px}}' +
		'@media(prefers-reduced-motion:reduce){.xllg-kpi,.xllg-ph,.xllg-loop,.xllg-rc,.xllg-top,.xllg-progress-bar{transition:none!important}.xllg-kpi:hover,.xllg-ph:hover{transform:none}}';

	function tag(text, color) {
		if (Tag) return React.createElement(Tag, { color: color || 'cyan', style: { borderRadius: 6, fontWeight: 600 } }, text);
		return React.createElement('span', { className: 'xllg-tag', style: color ? { background: color + '18', color: color } : undefined }, text);
	}

	function renderRoleDetail(role) {
		var nodes = [
			React.createElement('p', { key: 'cap', className: 'xllg-rd-cap' }, role.capability)
		];
		if (role.steps) {
			nodes.push(React.createElement('div', { key: 'steps', className: 'xllg-steps' },
				role.steps.map(function (s) {
					return React.createElement('div', { key: s[0], className: 'xllg-step' },
						React.createElement('div', { className: 'xllg-step-n' }, s[0]),
						React.createElement('div', null,
							React.createElement('div', { className: 'xllg-step-t' }, s[1]),
							React.createElement('div', { className: 'xllg-step-r' }, s[2])
						)
					);
				})
			));
		}
		if (role.modules) {
			nodes.push(React.createElement('div', { key: 'mods', className: 'xllg-modgrid' },
				role.modules.map(function (m) {
					return React.createElement('div', { key: m[0], className: 'xllg-mod' },
						React.createElement('b', null, m[0]),
						React.createElement('span', null, m[1])
					);
				})
			));
		}
		if (role.detail) {
			role.detail.forEach(function (b, i) {
				nodes.push(React.createElement('div', { key: 'd' + i, className: 'xllg-block' },
					React.createElement('h5', null, b.title),
					React.createElement('p', null, b.text)
				));
			});
		}
		if (role.tags) {
			nodes.push(React.createElement('div', { key: 'tags', style: { display: 'flex', flexWrap: 'wrap', gap: 8, marginTop: 12 } },
				role.tags.map(function (t) { return tag(t); })
			));
		}
		nodes.push(React.createElement('p', { key: 'sc', style: { fontSize: 12, color: C_MUTED, marginTop: 14 } }, '关键场景：' + role.scenes));
		return nodes;
	}

	return React.createElement(App, null,
		React.createElement('div', { className: 'xllg-root' },
			React.createElement('style', null, css),
			React.createElement('div', { className: 'xllg-progress', 'aria-hidden': true },
				React.createElement('div', { className: 'xllg-progress-bar', style: { width: scrollPct + '%' } })
			),

			React.createElement('nav', { className: 'xllg-nav' + (navOpen ? ' open' : ''), 'aria-label': '页面导航' },
				React.createElement('div', { className: 'xllg-nav-in' },
					React.createElement('div', { className: 'xllg-brand' },
						React.createElement('div', { className: 'xllg-logo' }, '羚'),
						React.createElement('span', null, '小羚羚 · 规划设计')
					),
					React.createElement('button', { type: 'button', className: 'xllg-menu', onClick: function () { setNavOpen(!navOpen); } }, navOpen ? '收起' : '菜单'),
					React.createElement('div', { className: 'xllg-links' },
						sectionNav.map(function (item) {
							return React.createElement('button', {
								key: item.key, type: 'button', className: 'xllg-link' + (activeSection === item.key ? ' on' : ''),
								onClick: function () { scrollToSection(item.key); }
							}, item.label);
						})
					)
				)
			),

			React.createElement('header', { id: 'xllg-sec-hero', className: 'xllg-hero xllg-sec' },
				React.createElement('div', { className: 'xllg-hero-bg' }),
				React.createElement('div', { className: 'xllg-hero-grid' }),
				React.createElement('div', { className: 'xllg-hero-in' },
					React.createElement('div', null,
						React.createElement('div', { className: 'xllg-pills' },
							React.createElement('span', { className: 'xllg-pill xllg-pill-a' }, '方案书 v1.0'),
							React.createElement('span', { className: 'xllg-pill' }, '手机端 · 小羚羚'),
							React.createElement('span', { className: 'xllg-pill' }, 'OneOS 生态')
						),
						React.createElement('h1', { className: 'xllg-h1' }, '小羚羚氢能产业数字化平台'),
						React.createElement('p', { className: 'xllg-lead' },
							'以手机端「小羚羚」为统一入口，连接七类用户，实现氢气采购—加氢站—氢能车运营全链路数字化闭环。'
						),
						React.createElement('div', { className: 'xllg-quote' },
							React.createElement('b', null, '一句话定位：'),
							'小羚羚 = 氢能产业的「业务操作系统」—— 一端登录、多角色协同，把合同、车辆、能源、维保、氢气贸易串成可落地、可风控、可结算的完整商业链条。'
						),
						React.createElement('div', { className: 'xllg-cta' },
							React.createElement('button', { type: 'button', className: 'xllg-btn xllg-btn-p', onClick: function () { scrollToSection('roles'); } }, '查看用户角色'),
							React.createElement('button', { type: 'button', className: 'xllg-btn xllg-btn-g', onClick: function () { scrollToSection('roadmap'); } }, '落地路线图')
						)
					),
					React.createElement('div', { className: 'xllg-eco' },
						React.createElement('div', { className: 'xllg-eco-title' }, 'Hydrogen Value Chain'),
						React.createElement('div', { className: 'xllg-eco-flow' },
							chainSteps.map(function (s) {
								return React.createElement('div', { key: s.key, className: 'xllg-eco-node' },
									React.createElement('div', { className: 'xllg-eco-dot', style: { background: s.color } }, s.icon),
									React.createElement('div', null,
										React.createElement('div', { className: 'xllg-eco-label' }, s.title),
										React.createElement('div', { className: 'xllg-eco-sub' }, s.desc)
									)
								);
							})
						)
					)
				)
			),

			React.createElement('div', { className: 'xllg-kpis' },
				kpiStats.map(function (k) {
					return React.createElement('div', { key: k.label, className: 'xllg-kpi' },
						React.createElement('div', { className: 'xllg-kpi-v', style: { color: k.color } },
							k.value, k.unit ? React.createElement('span', { className: 'xllg-kpi-u' }, k.unit) : null
						),
						React.createElement('div', { className: 'xllg-kpi-l' }, k.label)
					);
				})
			),

			React.createElement('main', { className: 'xllg-main' },

				React.createElement('section', { id: 'xllg-sec-chain', className: 'xllg-sec' },
					React.createElement('div', { className: 'xllg-sec-tag' }, 'Business Plan'),
					React.createElement('h2', { className: 'xllg-sec-h' }, '氢能产业链商业计划'),
					React.createElement('p', { className: 'xllg-sec-d' }, '覆盖氢气采购、加氢站运营、氢能车租赁/自营，形成「制氢—储运—加注—运营—结算」一体化商业模式。'),
					React.createElement('div', { className: 'xllg-tabs' },
						chainSteps.map(function (s) {
							var on = activeChain === s.key;
							return React.createElement('button', { key: s.key, type: 'button', className: 'xllg-tab' + (on ? ' on' : ''), style: on ? { background: s.color } : undefined, onClick: function () { setActiveChain(s.key); } }, s.title);
						})
					),
					React.createElement('div', { className: 'xllg-panel' },
						React.createElement('div', null,
							React.createElement('h3', null, selectedChain.title),
							React.createElement('p', null, selectedChain.biz),
							React.createElement('span', { className: 'xllg-rev' }, '收入来源：' + selectedChain.revenue)
						),
						React.createElement('div', { className: 'xllg-vis', style: { background: 'linear-gradient(145deg,' + selectedChain.color + ',rgba(0,0,0,0.3))' } }, selectedChain.icon)
					),
					React.createElement('div', { className: 'xllg-grid3' },
						chainSteps.map(function (s) {
							return React.createElement('div', { key: s.key + 'c', className: 'xllg-card' },
								React.createElement('h4', null, s.title),
								React.createElement('p', null, s.desc + '。' + s.revenue)
							);
						})
					)
				),

				React.createElement('section', { id: 'xllg-sec-roles', className: 'xllg-sec' },
					React.createElement('div', { className: 'xllg-sec-tag' }, 'Platform'),
					React.createElement('h2', { className: 'xllg-sec-h' }, '七类用户 · 一套数据底座'),
					React.createElement('div', { className: 'xllg-role-head' },
						React.createElement('p', { className: 'xllg-sec-d', style: { marginBottom: 0 } }, '点击角色查看详情，或切换表格总览。'),
						React.createElement('div', { className: 'xllg-toggle' },
							React.createElement('button', { type: 'button', className: roleView === 'card' ? 'on' : '', onClick: function () { setRoleView('card'); } }, '卡片视图'),
							React.createElement('button', { type: 'button', className: roleView === 'table' ? 'on' : '', onClick: function () { setRoleView('table'); } }, '表格总览')
						)
					),
					roleView === 'table'
						? React.createElement('table', { className: 'xllg-tbl' },
							React.createElement('thead', null,
								React.createElement('tr', null,
									['用户端', '主体', '核心能力', '关键场景'].map(function (h) {
										return React.createElement('th', { key: h }, h);
									})
								)
							),
							React.createElement('tbody', null,
								roleTableRows.map(function (row, ri) {
									return React.createElement('tr', { key: ri },
										row.map(function (cell, ci) { return React.createElement('td', { key: ci }, cell); })
									);
								})
							)
						)
						: React.createElement('div', { className: 'xllg-roles-g' },
							React.createElement('div', { className: 'xllg-role-list' },
								roles.map(function (r) {
									var on = activeRole === r.id;
									return React.createElement('button', {
										key: r.id, type: 'button', className: 'xllg-rc' + (on ? ' on' : ''),
										style: on ? { borderLeft: '3px solid ' + r.color, background: 'linear-gradient(135deg,rgba(22,209,161,0.05),#fff)' } : { borderLeft: '3px solid transparent' },
										onClick: function () { setActiveRole(r.id); }
									},
										React.createElement('div', { className: 'xllg-rc-n' }, r.name),
										React.createElement('div', { className: 'xllg-rc-s' }, r.sub)
									);
								})
							),
							React.createElement('div', { className: 'xllg-rd' },
								React.createElement('div', { className: 'xllg-rd-h' },
									React.createElement('h3', null, selectedRole.name),
									tag(selectedRole.tag, selectedRole.color)
								),
								renderRoleDetail(selectedRole)
							)
						)
				),

				React.createElement('section', { id: 'xllg-sec-loops', className: 'xllg-sec' },
					React.createElement('div', { className: 'xllg-sec-tag' }, 'Closed Loop'),
					React.createElement('h2', { className: 'xllg-sec-h' }, '三大业务闭环总览'),
					React.createElement('p', { className: 'xllg-sec-d' }, '点击展开查看完整业务流转路径。'),
					React.createElement('div', { className: 'xllg-loops' },
						loops.map(function (lp) {
							var on = activeLoop === lp.id;
							return React.createElement('div', {
								key: lp.id, className: 'xllg-loop' + (on ? ' on' : ''),
								style: on ? { borderLeft: '3px solid ' + lp.color } : undefined,
								role: 'button', tabIndex: 0,
								onClick: function () { setActiveLoop(on ? '' : lp.id); },
								onKeyDown: function (e) { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); setActiveLoop(on ? '' : lp.id); } }
							},
								React.createElement('div', { className: 'xllg-loop-h' },
									React.createElement('span', { className: 'xllg-loop-t' }, lp.title),
									tag(lp.tag, lp.color)
								),
								on ? React.createElement('div', { className: 'xllg-loop-f' }, lp.flow) : null
							);
						})
					)
				),

				React.createElement('section', { id: 'xllg-sec-roadmap', className: 'xllg-sec' },
					React.createElement('div', { className: 'xllg-sec-tag' }, 'Roadmap'),
					React.createElement('h2', { className: 'xllg-sec-h' }, '分阶段落地路线图'),
					React.createElement('p', { className: 'xllg-sec-d' }, '四步递进落地：先打通内部业务协同与客户租车闭环，再延伸能源维保与氢气贸易能力。'),
					React.createElement('div', { className: 'xllg-rm-wrap' },
						React.createElement('div', { className: 'xllg-rm-track', 'aria-hidden': true }),
						React.createElement('div', { className: 'xllg-rm' },
							phases.map(function (p) {
								var on = activePhase === p.id;
								return React.createElement('button', {
									key: p.id, type: 'button', className: 'xllg-ph' + (on ? ' on' : ''),
									style: { '--ph-color': p.color, borderColor: on ? p.color + '55' : undefined },
									onClick: function () { setActivePhase(p.id); },
									'aria-pressed': on
								},
									React.createElement('div', { className: 'xllg-ph-step', style: { background: 'linear-gradient(135deg,' + p.color + ',' + p.color + 'cc)' } }, p.step),
									React.createElement('div', { className: 'xllg-ph-phase' }, p.phase),
									React.createElement('div', { className: 'xllg-ph-t' }, p.title),
									React.createElement('div', { className: 'xllg-ph-sub' }, p.subtitle)
								);
							})
						)
					),
					React.createElement('div', { className: 'xllg-pd' },
						React.createElement('div', { className: 'xllg-pd-head' },
							React.createElement('div', { className: 'xllg-pd-badge', style: { background: 'linear-gradient(135deg,' + selectedPhase.color + ',' + selectedPhase.color + 'bb)' } }, selectedPhase.step),
							React.createElement('h4', null, selectedPhase.title),
							React.createElement('p', { className: 'xllg-pd-sub' }, selectedPhase.phase + ' · ' + selectedPhase.subtitle)
						),
						selectedPhase.highlight ? React.createElement('div', { className: 'xllg-pd-hl', style: { borderLeftColor: selectedPhase.color, background: selectedPhase.color + '0d' } },
							React.createElement('b', null, '阶段要点'),
							selectedPhase.highlight
						) : null,
						React.createElement('dl', { className: 'xllg-pd-grid' },
							React.createElement('div', null,
								React.createElement('dt', null, '重点模块'),
								React.createElement('dd', null, selectedPhase.focus)
							),
							React.createElement('div', null,
								React.createElement('dt', null, '交付成果'),
								React.createElement('dd', null, selectedPhase.deliver)
							)
						),
						selectedPhase.items && selectedPhase.items.length ? React.createElement('div', null,
							React.createElement('div', { className: 'xllg-pd-items-t' }, '阶段细化'),
							React.createElement('ul', { className: 'xllg-pd-items' },
								selectedPhase.items.map(function (item, i) {
									return React.createElement('li', { key: i }, item);
								})
							)
						) : null
					)
				),

				React.createElement('section', { id: 'xllg-sec-summary', className: 'xllg-sec' },
					React.createElement('div', { className: 'xllg-sum' },
						React.createElement('h3', null, '关键重点'),
						React.createElement('ul', null,
							summaryPoints.map(function (t, i) {
								return React.createElement('li', { key: i },
									React.createElement('span', { className: 'xllg-sum-i' }, i + 1),
									React.createElement('span', null, t)
								);
							})
						)
					)
				)
			),

			React.createElement('footer', { className: 'xllg-ft' }, '文档版本 v1.0 · 羚牛氢能 · 小羚羚规划设计 · OneOS 生态 · 供内部汇报使用'),

			React.createElement('button', {
				type: 'button', className: 'xllg-top' + (showTop ? ' show' : ''), title: '回到顶部',
				onClick: function () { window.scrollTo({ top: 0, behavior: 'smooth' }); }
			}, '↑')
		)
	);
};

export default Component;
