From 90b3b6329fec3205b845198ca6dc539dcde186c8 Mon Sep 17 00:00:00 2001
From: hongjli <3117313295@qq.com>
Date: 星期一, 16 六月 2025 17:12:20 +0800
Subject: [PATCH] 页面调整优化

---
 src/app/page.tsx |  493 ++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 437 insertions(+), 56 deletions(-)

diff --git a/src/app/page.tsx b/src/app/page.tsx
index a9101b4..735bd5f 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -1,70 +1,451 @@
 "use client";
 
-import { useState } from 'react';
-import Sidebar from '@/components/layout/Sidebar';
-import Card from '@/components/Card';
-import ChatDialog from '@/components/ChatDialog';
-
-const services = [
-  {
-    title: '琛ユ枡',
-    description: '鏅鸿兘鍔ㄦ�佸垎鏋愪骇绾匡紝宸ヤ綅鐨勭己鏂欐儏鍐碉紝闄嶄綆鍋滅嚎椋庨櫓',
-    imageUrl: '/images/kanban.jpg',
-    chatbotId: 'JELkWpPLHQfRNhEH'
-  },
-  {
-    title: '鎻掑崟',
-    description: '鏅鸿兘璇勪及闇�姹傛彃鍗曞浜ц兘锛屽師鏉愭枡鍜屼氦浠樻湇鍔$殑褰卞搷锛屾彁鍗囧鎴锋弧鎰忓害',
-    imageUrl: '/images/xuqiu.jpg',
-    chatbotId: 'DfH4cIzujVGvn5iR'
-  },
-  {
-    title: '绉戞矁鏂攢鍞帹鑽愬皬鍔╂墜',
-    description: '鏅鸿兘鍖栦骇鍝佹帹鑽愭彁鍗囧璐晥鐜�',
-    imageUrl: '/images/robot.jpg',
-    chatbotId: 'sUAviPXvcEIw3oQC'
-  },
-  {
-    title: '搴撳瓨绠$悊鐭ヨ瘑搴撻棶绛�',
-    description: '搴撳瓨鐭ヨ瘑锛屾彁渚涗笓涓氱殑渚涘簲閾惧簱瀛樼煡璇嗛棶绛�',
-    imageUrl: '/images/know.jpg',
-    chatbotId: 'pDDfkU9HyBl2gzXx'
-  },
-];
+import Link from 'next/link';
+import { motion } from 'framer-motion';
+import { useEffect, useState } from 'react';
+import SupplyChainAIMindMap from '@/components/SupplyChainAIMindMap';
 
 export default function Home() {
-  const [isChatOpen, setIsChatOpen] = useState(false);
-  const [currentChatbot, setCurrentChatbot] = useState('');
+  const [mounted, setMounted] = useState(false);
+  const [isClient, setIsClient] = useState(false);
+  
+  useEffect(() => {
+    setMounted(true);
+    setIsClient(true);
+    
+    // 纭繚椤甸潰鍒锋柊鏃舵粴鍔ㄥ埌椤堕儴
+    window.scrollTo(0, 0);
+  }, []);
+  
+  // 瀹氫箟鍔ㄧ敾鍙樹綋
+  const fadeInUp = {
+    hidden: { opacity: 0, y: 50 },
+    visible: { opacity: 1, y: 0, transition: { duration: 0.6, ease: "easeOut" } }
+  };
+  
+  const fadeInLeft = {
+    hidden: { opacity: 0, x: -100 },
+    visible: { opacity: 1, x: 0, transition: { duration: 0.5, ease: [0.25, 0.1, 0.25, 1] } }
+  };
+  
+  const fadeInRight = {
+    hidden: { opacity: 0, x: 100 },
+    visible: { opacity: 1, x: 0, transition: { duration: 0.5, ease: [0.25, 0.1, 0.25, 1] } }
+  };
+  
+  const fadeInScale = {
+    hidden: { opacity: 0, scale: 0.95 },
+    visible: { opacity: 1, scale: 1, transition: { duration: 0.6, ease: "easeOut" } }
+  };
 
-  const handleCardClick = (title: string, chatbotId?: string) => {
-    if (chatbotId) {
-      setCurrentChatbot(chatbotId);
-      setIsChatOpen(true);
-    }
+  // 鎸夐挳鍑哄満鍔ㄧ敾
+  const buttonVariants = {
+    hidden: { opacity: 0, y: 20 },
+    visible: (i: number) => ({
+      opacity: 1,
+      y: 0,
+      transition: {
+        delay: i * 0.15,
+        duration: 0.4,
+        ease: [0.25, 0.1, 0.25, 1],
+      },
+    }),
   };
 
   return (
-    <div className="flex">
-      <Sidebar />
-      <div className="flex-1 p-6 md:p-8">
-        <div className="max-w-7xl mx-auto">
-          <h1 className="text-2xl font-bold text-[#2F3C7E] mb-6">鍦烘櫙妯℃嫙</h1>
-          <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
-            {services.map((service, index) => (
-              <Card
-                key={index}
-                {...service}
-                onClick={() => handleCardClick(service.title, service.chatbotId)}
+    <main className="relative w-full min-h-screen bg-[#0A1033] text-white overflow-hidden px-4 -mt-[1px]">
+      {/* 椤堕儴瀵艰埅鑳屾櫙寤朵几灞� */}
+      <div className="absolute top-0 left-0 right-0 h-1 bg-gradient-to-r from-[#1E2B63] to-[#0A1033] z-0"></div>
+      
+      <div className="max-w-7xl mx-auto py-0">
+        {/* 涓昏鍐呭閮ㄥ垎 */}
+        <div className="relative z-10 min-h-screen pt-48 pb-24">
+          {/* 鍏徃鍚嶇О鍜岀洰鏍囨弿杩� */}
+          <motion.div
+            initial={{ opacity: 0, y: 30 }}
+            whileInView={{ opacity: 1, y: 0 }}
+            viewport={{ once: false, margin: "-100px" }}
+            transition={{ duration: 0.4, ease: "easeOut" }}
+            className="text-center mb-32 relative will-change-transform"
+          >
+            {/* 鑳屾櫙瑁呴グ鏁堟灉 */}
+            <div className="absolute inset-0 -z-10 overflow-hidden pointer-events-none">
+              <motion.div 
+                className="absolute top-1/2 left-0 right-0 h-[1px] bg-gradient-to-r from-transparent via-[#6ADBFF]/30 to-transparent"
+                initial={{ scaleX: 0 }}
+                whileInView={{ scaleX: 1 }}
+                viewport={{ once: false, margin: "-100px" }}
+                transition={{ duration: 0.8, delay: 0.2 }}
               />
-            ))}
+              <div className="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2">
+                {[...Array(2)].map((_, i) => (
+                  <motion.div
+                    key={i}
+                    className="absolute rounded-full border border-[#6ADBFF]/20"
+                    style={{
+                      left: "50%",
+                      top: "50%",
+                      width: "160px",
+                      height: "160px",
+                      willChange: "transform, opacity"
+                    }}
+                    initial={{ scale: 0, x: "-50%", y: "-50%", opacity: 0.1 }}
+                    whileInView={{ scale: [0, 5 + i], opacity: [0.2, 0] }}
+                    viewport={{ once: false, margin: "-100px" }}
+                    transition={{ 
+                      duration: 2,
+                      repeat: Infinity,
+                      delay: i * 0.6
+                    }}
+                  />
+                ))}
+              </div>
+            </div>
+
+            <motion.h1 
+              className="text-4xl md:text-5xl font-bold mb-3 relative inline-block"
+              initial={{ opacity: 0, y: 20 }}
+              whileInView={{ opacity: 1, y: 0 }}
+              viewport={{ once: false, margin: "-100px" }}
+              transition={{ duration: 0.4, ease: "easeOut" }}
+            >
+              <span className="text-transparent bg-clip-text bg-gradient-to-r from-[#6ADBFF] to-[#5E72EB] relative">
+                甯峰箘鍚涙垚
+                <motion.span 
+                  className="absolute -top-1 -right-3 w-2 h-2 rounded-full bg-[#6ADBFF]"
+                  animate={{ 
+                    scale: [1, 1.5, 1],
+                    opacity: [0.6, 1, 0.6] 
+                  }}
+                  transition={{ 
+                    duration: 1.5,
+                    repeat: Infinity,
+                    ease: "easeInOut"
+                  }}
+                />
+              </span>
+            </motion.h1>
+            
+            <div className="relative h-1 w-32 mx-auto mb-5 overflow-hidden">
+              <motion.div 
+                className="absolute inset-0 bg-gradient-to-r from-[#6ADBFF] to-[#5E72EB]"
+                initial={{ scaleX: 0 }}
+                whileInView={{ scaleX: 1 }}
+                viewport={{ once: false, margin: "-100px" }}
+                transition={{ duration: 0.5, delay: 0.3, ease: "easeOut" }}
+                style={{ originX: 0 }}
+              />
+            </div>
+            
+            <motion.div 
+              className="text-gray-300 max-w-2xl mx-auto text-lg relative"
+              initial={{ opacity: 0, y: 10 }}
+              whileInView={{ opacity: 1, y: 0 }}
+              viewport={{ once: false, margin: "-100px" }}
+              transition={{ duration: 0.4, delay: 0.4 }}
+            >
+              鏅鸿兘鍖栦緵搴旈摼绠$悊锛�
+              <motion.span 
+                className="inline-block text-[#6ADBFF] px-1"
+                initial={{ opacity: 0 }}
+                whileInView={{ opacity: 1 }}
+                viewport={{ once: false, margin: "-100px" }}
+                transition={{ duration: 0.3, delay: 0.6 }}
+              >
+                AI妯℃嫙APS鍦烘櫙
+              </motion.span>
+              鐨勯鑸��
+              
+              {/* 瑁呴グ绾挎潯 */}
+              <motion.div 
+                className="absolute left-1/2 bottom-[-22px] w-16 h-[2px] -translate-x-1/2"
+                initial={{ scale: 0 }}
+                whileInView={{ scale: 1 }}
+                viewport={{ once: false, margin: "-100px" }}
+                transition={{ duration: 0.4, delay: 0.7 }}
+              >
+                <div className="w-full h-full bg-gradient-to-r from-[#6ADBFF]/0 via-[#6ADBFF] to-[#6ADBFF]/0"></div>
+              </motion.div>
+            </motion.div>
+          </motion.div>
+          
+          {/* 浜や簰鎸夐挳缁� - 椤堕儴 */}
+          <div className="flex flex-col sm:flex-row items-center justify-center gap-6 mb-20">
+            <a 
+              href="/ai-scene" 
+              className="no-flash-link"
+              onClick={(e) => {
+                e.preventDefault();
+                document.body.classList.add('page-transitioning');
+                setTimeout(() => {
+                  window.location.href = '/ai-scene';
+                }, 100);
+              }}
+            >
+              <motion.div
+                custom={0}
+                initial="hidden"
+                whileInView="visible"
+                viewport={{ once: false, margin: "-100px" }}
+                variants={buttonVariants}
+                whileTap={{ scale: 0.97, transition: { duration: 0.1 } }}
+                className="group relative will-change-transform cursor-pointer"
+              >
+                <div className="absolute -inset-0.5 rounded-xl bg-gradient-to-r from-[#6ADBFF] to-[#5E72EB] opacity-30 blur group-hover:opacity-100 group-hover:blur-md transition-all duration-500 group-hover:duration-200 group-active:opacity-70"></div>
+                <div className="relative flex items-center gap-2 px-10 py-4 rounded-lg backdrop-blur-sm bg-[#131C41]/90 border border-[#6ADBFF]/30 transition-all duration-300 shadow-[0_0_15px_rgba(106,219,255,0.15)] group-hover:shadow-[0_0_25px_rgba(106,219,255,0.25)] group-active:shadow-[0_0_10px_rgba(106,219,255,0.3)]">
+                  <span className="text-white font-medium">AI鍦烘櫙妯℃嫙</span>
+                  
+                  {/* 绮掑瓙鏁堟灉 */}
+                  <div className="absolute inset-0 overflow-hidden rounded-lg">
+                    {[...Array(3)].map((_, i) => (
+                      <motion.div
+                        key={i}
+                        className="absolute rounded-full border border-[#6ADBFF]/20"
+                        style={{
+                          left: "50%",
+                          top: "50%",
+                          width: "10px",
+                          height: "10px",
+                        }}
+                        initial={{ scale: 0, x: "-50%", y: "-50%", opacity: 0.5 }}
+                        animate={{ 
+                          scale: [0, 8],
+                          opacity: [0.5, 0]
+                        }}
+                        transition={{ 
+                          duration: 2,
+                          repeat: Infinity,
+                          delay: i * 0.6
+                        }}
+                      />
+                    ))}
+                  </div>
+                </div>
+              </motion.div>
+            </a>
+
+            <a 
+              href="/chat" 
+              className="no-flash-link"
+              onClick={(e) => {
+                e.preventDefault();
+                document.body.classList.add('page-transitioning');
+                const token = localStorage.getItem('token');
+                const targetUrl = token ? '/chat' : '/login';
+                setTimeout(() => {
+                  window.location.href = targetUrl;
+                }, 100);
+              }}
+            >
+              <motion.div
+                custom={1}
+                initial="hidden"
+                whileInView="visible"
+                viewport={{ once: false, margin: "-100px" }}
+                variants={buttonVariants}
+                whileTap={{ scale: 0.97, transition: { duration: 0.1 } }}
+                className="group relative will-change-transform cursor-pointer"
+              >
+                <div className="absolute -inset-0.5 rounded-xl bg-gradient-to-r from-[#FF6A88] to-[#5E72EB] opacity-30 blur group-hover:opacity-100 group-hover:blur-md transition-all duration-500 group-hover:duration-200 group-active:opacity-70"></div>
+                <div className="relative flex items-center gap-2 px-10 py-4 rounded-lg backdrop-blur-sm bg-[#131C41]/90 border border-[#FF6A88]/30 transition-all duration-300 shadow-[0_0_15px_rgba(255,106,136,0.15)] group-hover:shadow-[0_0_25px_rgba(255,106,136,0.25)] group-active:shadow-[0_0_10px_rgba(255,106,136,0.3)]">
+                  <span className="text-white font-medium">寮�濮嬭亰澶�</span>
+                  
+                  {/* 娉㈢汗鏁堟灉 */}
+                  <div className="absolute inset-0 overflow-hidden rounded-lg">
+                    {[...Array(3)].map((_, i) => (
+                      <motion.div
+                        key={i}
+                        className="absolute rounded-full border border-[#FF6A88]/20"
+                        style={{
+                          left: "50%",
+                          top: "50%",
+                          width: "10px",
+                          height: "10px",
+                        }}
+                        initial={{ scale: 0, x: "-50%", y: "-50%", opacity: 0.5 }}
+                        animate={{ 
+                          scale: [0, 8],
+                          opacity: [0.5, 0]
+                        }}
+                        transition={{ 
+                          duration: 2,
+                          repeat: Infinity,
+                          delay: i * 0.6
+                        }}
+                      />
+                    ))}
+                  </div>
+                </div>
+              </motion.div>
+            </a>
           </div>
+
+          {/* AI璧嬭兘APS浼樺娍鍏ㄦ櫙 - 鐙珛鍖哄潡 */}
+          <section className="w-full py-12 relative mb-24">
+            <SupplyChainAIMindMap />
+          </section>
+          
+          {/* AI璧嬭兘APS鏍稿績鎶�鏈紭鍔块儴鍒� */}
+          <section className="w-full py-16 relative mb-20">
+            {/* 鏍囬 */}
+            <motion.div
+              initial="hidden"
+              whileInView="visible"
+              viewport={{ once: false, margin: "-100px" }}
+              variants={fadeInUp}
+              className="text-center mb-16"
+            >
+              <h2 className="text-3xl md:text-4xl font-bold text-white mb-6">
+                <span className="text-transparent bg-clip-text bg-gradient-to-r from-[#6ADBFF] to-[#5E72EB]">
+                  AI璧嬭兘APS
+                </span> 鏍稿績鎶�鏈紭鍔�
+              </h2>
+              <div className="h-1 w-24 mx-auto bg-gradient-to-r from-[#6ADBFF] to-[#FF6A88]"></div>
+            </motion.div>
+
+            {/* 鎶�鏈崱鐗� */}
+            <div className="grid grid-cols-1 md:grid-cols-2 gap-12 mt-16">
+              {/* 宸︿晶锛氶噺瀛愬惎鍙戠畻娉� */}
+              <motion.div
+                initial="hidden"
+                whileInView="visible"
+                viewport={{ once: false, margin: "-100px" }}
+                variants={fadeInLeft}
+                className="relative will-change-transform"
+              >
+                <div className="absolute -left-3 top-0 h-full w-1 bg-gradient-to-b from-[#6ADBFF] via-[#5E72EB] to-transparent"></div>
+                <div className="backdrop-blur-sm bg-white/5 rounded-xl p-8 border border-[#6ADBFF]/20 h-full">
+                  <h3 className="text-2xl font-semibold text-white mb-4">閲忓瓙鍚彂绠楁硶</h3>
+                  <p className="text-gray-300 leading-relaxed mb-6">
+                    鍩轰簬閲忓瓙璁$畻鍘熺悊璁捐鐨勪紭鍖栫畻娉曪紝鑳藉鍦ㄦ寚鏁扮骇澶嶆潅搴︾殑鎺掔▼闂涓揩閫熷鎵捐繎浼兼渶浼樿В銆�
+                  </p>
+                </div>
+              </motion.div>
+              
+              {/* 鍙充晶锛氭繁搴﹀涔犻娴� */}
+              <motion.div
+                initial="hidden"
+                whileInView="visible"
+                viewport={{ once: false, margin: "-100px" }}
+                variants={fadeInRight}
+                className="relative will-change-transform"
+              >
+                <div className="absolute -left-3 top-0 h-full w-1 bg-gradient-to-b from-[#FF6A88] via-[#5E72EB] to-transparent"></div>
+                <div className="backdrop-blur-sm bg-white/5 rounded-xl p-8 border border-[#FF6A88]/20 h-full">
+                  <h3 className="text-2xl font-semibold text-white mb-4">娣卞害瀛︿範棰勬祴</h3>
+                  <p className="text-gray-300 leading-relaxed mb-6">
+                    閲囩敤鑷爺鐨勬椂闂村簭鍒楁繁搴﹀涔犳灦鏋勶紝瀵圭敓浜х幆澧冧腑鐨勫叧閿寚鏍囪繘琛岀簿鍑嗛娴嬨��
+                  </p>
+                </div>
+              </motion.div>
+            </div>
+            
+            {/* 鏁板瓧鎸囨爣鍖哄煙 */}
+            <motion.div
+              initial={{ opacity: 0, y: 40 }}
+              whileInView={{ opacity: 1, y: 0 }}
+              viewport={{ once: false, margin: "-100px" }}
+              transition={{ duration: 0.5, ease: [0.25, 0.1, 0.25, 1], delay: 0.2 }}
+              className="mt-20 w-full grid grid-cols-2 md:grid-cols-4 gap-8 will-change-transform"
+            >
+              <div className="text-center">
+                <div className="text-4xl font-bold text-[#6ADBFF] mb-2">98%</div>
+                <p className="text-gray-300">璁″垝鍑嗙‘鐜�</p>
+              </div>
+              <div className="text-center">
+                <div className="text-4xl font-bold text-[#5E72EB] mb-2">45%</div>
+                <p className="text-gray-300">鏁堢巼鎻愬崌</p>
+              </div>
+              <div className="text-center">
+                <div className="text-4xl font-bold text-[#FF6A88] mb-2">30%</div>
+                <p className="text-gray-300">鎴愭湰闄嶄綆</p>
+              </div>
+              <div className="text-center">
+                <div className="text-4xl font-bold text-white mb-2">500+</div>
+                <p className="text-gray-300">浼佷笟妗堜緥</p>
+              </div>
+            </motion.div>
+          </section>
+          
+          {/* 搴旂敤鍦烘櫙鍖哄煙 */}
+          <section className="w-full py-10 relative">
+            <motion.div
+              initial="hidden"
+              whileInView="visible"
+              viewport={{ once: false, margin: "-100px" }}
+              variants={fadeInUp}
+              className="text-center mb-16"
+            >
+              <h2 className="text-3xl md:text-4xl font-bold text-white mb-6">
+                <span className="text-transparent bg-clip-text bg-gradient-to-r from-[#FF6A88] to-[#6ADBFF]">
+                  搴旂敤鍦烘櫙
+                </span>
+              </h2>
+              <div className="h-1 w-24 mx-auto bg-gradient-to-r from-[#FF6A88] to-[#6ADBFF]"></div>
+            </motion.div>
+            
+            {/* 搴旂敤鍦烘櫙鍗$墖 */}
+            <div className="grid grid-cols-1 md:grid-cols-3 gap-8 mb-12">
+              {/* 搴旂敤鍦烘櫙鍗$墖鍐呭 */}
+              <motion.div
+                initial="hidden"
+                whileInView="visible"
+                viewport={{ once: false, margin: "-100px" }}
+                variants={fadeInUp}
+                transition={{ delay: 0.1 }}
+                className="bg-[#131C41]/70 p-6 rounded-xl border border-[#6ADBFF]/20"
+              >
+                <h3 className="text-xl font-semibold text-white mb-4">绂绘暎鍒堕��</h3>
+                <p className="text-gray-300">
+                  鍦ㄩ浂閮ㄤ欢澶氥�佸伐鑹哄鏉傜殑绂绘暎鍒堕�犵幆澧冧腑锛屾垜浠殑瑙e喅鏂规鑳藉鍚屾椂鑰冭檻璁惧鍒╃敤鐜囥�佷氦鏈熴�佸湪鍒跺搧搴撳瓨绛夊缁寸洰鏍囷紝鐢熸垚鏈�浼樻帓绋嬫柟妗堛��
+                </p>
+              </motion.div>
+              
+              <motion.div
+                initial="hidden"
+                whileInView="visible"
+                viewport={{ once: false, margin: "-100px" }}
+                variants={fadeInUp}
+                transition={{ delay: 0.2 }}
+                className="bg-[#131C41]/70 p-6 rounded-xl border border-[#6ADBFF]/20"
+              >
+                <h3 className="text-xl font-semibold text-white mb-4">娴佺▼宸ヤ笟</h3>
+                <p className="text-gray-300">
+                  閽堝杩炵画鐢熶骇鐗规�э紝鎴戜滑鐨勮В鍐虫柟妗堝疄鐜颁簡鍘熸枡閲囪喘銆佺敓浜ц鍒掍笌鎺掔▼鐨勪竴浣撳寲浼樺寲锛屾渶灏忓寲鍒囨崲鎹熻�楀拰鑳芥簮娑堣�楋紝鎻愰珮浜х嚎鍒╃敤鐜囥��
+                </p>
+              </motion.div>
+              
+              <motion.div
+                initial="hidden"
+                whileInView="visible"
+                viewport={{ once: false, margin: "-100px" }}
+                variants={fadeInUp}
+                transition={{ delay: 0.3 }}
+                className="bg-[#131C41]/70 p-6 rounded-xl border border-[#6ADBFF]/20"
+              >
+                <h3 className="text-xl font-semibold text-white mb-4">鐗╂祦浠撳偍</h3>
+                <p className="text-gray-300">
+                  浼樺寲浠撳偍甯冨眬涓庢嫞閫夎矾寰勶紝缁撳悎鏈哄櫒浜鸿皟搴︾郴缁燂紝瀹炵幇楂樻晥鐜囥�佷綆宸敊鐨勬櫤鑳界墿娴佺鐞嗭紝鎻愬崌浠撳偍涓績鏁翠綋杩愯惀鏁堢巼銆�
+                </p>
+              </motion.div>
+            </div>
+          </section>
+        </div>
+        
+        {/* 鍔ㄦ�佹尝褰㈠浘 - 鏀惧湪椤甸潰搴曢儴 */}
+        <div className="relative w-full h-20 opacity-20 mt-auto">
+          <svg className="w-full h-full" viewBox="0 0 1200 120" preserveAspectRatio="none">
+            <path d="M0,36c200,0,200,84,400,84c200,0,200-84,400-84c200,0,200,84,400,84c200,0,200-84,400-84v84H0V36z" fill="url(#blueGradient)"></path>
+            <defs>
+              <linearGradient id="blueGradient" x1="0%" y1="0%" x2="100%" y2="0%">
+                <stop offset="0%" stopColor="#6ADBFF" stopOpacity="0.5" />
+                <stop offset="50%" stopColor="#5E72EB" stopOpacity="0.5" />
+                <stop offset="100%" stopColor="#6ADBFF" stopOpacity="0.5" />
+              </linearGradient>
+            </defs>
+          </svg>
         </div>
       </div>
-      <ChatDialog 
-        isOpen={isChatOpen} 
-        onClose={() => setIsChatOpen(false)}
-        chatbotId={currentChatbot}
-      />
-    </div>
+    </main>
   );
 }

--
Gitblit v1.9.3