import { motion } from "framer-motion";

export const DashboardVector = () => {
  return (
    <div className="relative w-full h-96 flex items-center justify-center">
      {/* Main Mobile Device */}
      <motion.div
        initial={{ opacity: 0, y: 30 }}
        animate={{ opacity: 1, y: 0 }}
        transition={{ duration: 0.8, delay: 0.2 }}
        className="relative z-10"
      >
        {/* Phone Frame */}
        <div className="w-40 h-80 bg-gradient-to-br from-gray-800 to-gray-900 rounded-3xl p-2 shadow-2xl">
          {/* Screen */}
          <div className="w-full h-full bg-gradient-to-br from-gray-100 to-gray-200 rounded-2xl relative overflow-hidden">
            {/* Top Status Bar */}
            <div className="absolute top-0 left-0 right-0 h-8 bg-gradient-to-r from-gray-800 to-gray-700 flex items-center justify-between px-4">
              <div className="flex items-center gap-1">
                <div className="w-1 h-1 bg-green-400 rounded-full"></div>
                <div className="w-1 h-1 bg-yellow-400 rounded-full"></div>
                <div className="w-1 h-1 bg-red-400 rounded-full"></div>
              </div>
              <div className="text-white text-xs font-manrope">9:41</div>
              <div className="flex items-center gap-1">
                <div className="w-3 h-2 bg-white/60 rounded-sm"></div>
                <div className="w-4 h-2 bg-white/80 rounded-sm"></div>
              </div>
            </div>

            {/* Main Dashboard Content */}
            <div className="absolute inset-4 top-12 space-y-3">
              {/* Header */}
              <div className="flex justify-between items-center">
                <div>
                  <div className="text-gray-800 text-sm font-bold font-manrope">Hey Balazs!</div>
                  <div className="text-gray-600 text-xs font-manrope">Good morning</div>
                </div>
                <motion.div
                  animate={{ rotate: 360 }}
                  transition={{ duration: 8, repeat: Infinity, ease: "linear" }}
                  className="w-6 h-6 bg-gradient-to-br from-[#E5195E] to-[#FF6B9D] rounded-full flex items-center justify-center"
                >
                  <div className="w-3 h-3 bg-white rounded-full"></div>
                </motion.div>
              </div>

              {/* Weather Card */}
              <div className="bg-gradient-to-r from-blue-400 to-blue-500 rounded-2xl p-3 text-white">
                <div className="flex justify-between items-center">
                  <div>
                    <div className="text-lg font-bold font-manrope">17°</div>
                    <div className="text-xs opacity-80 font-manrope">New York</div>
                  </div>
                  <div className="text-2xl">☀️</div>
                </div>
              </div>

              {/* Stats Row */}
              <div className="grid grid-cols-2 gap-2">
                <div className="bg-white rounded-xl p-2 shadow-sm">
                  <div className="text-gray-500 text-xs font-manrope">Revenue</div>
                  <div className="text-gray-800 text-sm font-bold font-manrope">$67k</div>
                  <motion.div
                    initial={{ width: 0 }}
                    animate={{ width: "70%" }}
                    transition={{ duration: 2, delay: 1 }}
                    className="h-1 bg-gradient-to-r from-[#E5195E] to-[#FF6B9D] rounded-full mt-1"
                  ></motion.div>
                </div>
                <div className="bg-white rounded-xl p-2 shadow-sm">
                  <div className="text-gray-500 text-xs font-manrope">Orders</div>
                  <div className="text-gray-800 text-sm font-bold font-manrope">1,284</div>
                  <motion.div
                    initial={{ width: 0 }}
                    animate={{ width: "85%" }}
                    transition={{ duration: 2, delay: 1.2 }}
                    className="h-1 bg-gradient-to-r from-green-400 to-green-500 rounded-full mt-1"
                  ></motion.div>
                </div>
              </div>

              {/* Chart Area */}
              <div className="bg-white rounded-xl p-3 shadow-sm">
                <div className="text-gray-500 text-xs mb-2 font-manrope">Analytics</div>
                <div className="flex items-end justify-between h-16">
                  {[40, 65, 45, 80, 55, 90, 70].map((height, index) => (
                    <motion.div
                      key={index}
                      initial={{ height: 0 }}
                      animate={{ height: `${height}%` }}
                      transition={{ duration: 1, delay: 1.5 + index * 0.1 }}
                      className="w-2 bg-gradient-to-t from-[#E5195E] to-[#FF6B9D] rounded-full"
                    ></motion.div>
                  ))}
                </div>
              </div>

              {/* Activity Indicator */}
              <div className="bg-white rounded-xl p-3 shadow-sm">
                <div className="flex items-center justify-between">
                  <div className="text-gray-500 text-xs font-manrope">Activity</div>
                  <motion.div
                    animate={{ scale: [1, 1.2, 1] }}
                    transition={{ duration: 2, repeat: Infinity }}
                    className="w-2 h-2 bg-green-400 rounded-full"
                  ></motion.div>
                </div>
                <div className="mt-2">
                  <svg className="w-full h-6" viewBox="0 0 100 20">
                    <motion.path
                      d="M0,15 Q25,5 50,10 T100,8"
                      stroke="url(#activityGradient)"
                      strokeWidth="2"
                      fill="none"
                      initial={{ pathLength: 0 }}
                      animate={{ pathLength: 1 }}
                      transition={{ duration: 2, delay: 2 }}
                    />
                    <defs>
                      <linearGradient id="activityGradient" x1="0%" y1="0%" x2="100%" y2="0%">
                        <stop offset="0%" stopColor="#E5195E" />
                        <stop offset="100%" stopColor="#FF6B9D" />
                      </linearGradient>
                    </defs>
                  </svg>
                </div>
              </div>
            </div>

            {/* Bottom Navigation */}
            <div className="absolute bottom-0 left-0 right-0 h-12 bg-white border-t border-gray-200 flex items-center justify-around">
              {['🏠', '📊', '💬', '⚙️'].map((icon, index) => (
                <motion.div
                  key={index}
                  whileHover={{ scale: 1.2 }}
                  className={`text-lg ${index === 1 ? 'text-[#E5195E]' : 'text-gray-400'}`}
                >
                  {icon}
                </motion.div>
              ))}
            </div>
          </div>
        </div>
      </motion.div>

      {/* Floating Data Points */}
      <motion.div
        animate={{ y: [0, -10, 0] }}
        transition={{ duration: 3, repeat: Infinity }}
        className="absolute top-20 left-16 w-12 h-12 bg-gradient-to-br from-blue-500 to-blue-600 rounded-xl flex items-center justify-center shadow-lg"
      >
        <span className="text-white text-sm font-bold font-manrope">98%</span>
      </motion.div>

      <motion.div
        animate={{ y: [0, -15, 0] }}
        transition={{ duration: 4, repeat: Infinity, delay: 0.5 }}
        className="absolute top-24 right-20 w-10 h-10 bg-gradient-to-br from-green-500 to-green-600 rounded-lg flex items-center justify-center shadow-lg"
      >
        <span className="text-white text-xs font-bold font-manrope">+24</span>
      </motion.div>

      <motion.div
        animate={{ y: [0, -12, 0] }}
        transition={{ duration: 3.5, repeat: Infinity, delay: 1 }}
        className="absolute bottom-24 left-20 w-11 h-11 bg-gradient-to-br from-purple-500 to-purple-600 rounded-lg flex items-center justify-center shadow-lg"
      >
        <span className="text-white text-xs font-bold font-manrope">📈</span>
      </motion.div>

      <motion.div
        animate={{ y: [0, -8, 0] }}
        transition={{ duration: 2.5, repeat: Infinity, delay: 1.5 }}
        className="absolute bottom-20 right-16 w-9 h-9 bg-gradient-to-br from-orange-500 to-orange-600 rounded-lg flex items-center justify-center shadow-lg"
      >
        <span className="text-white text-xs font-bold font-manrope">⚡</span>
      </motion.div>

      {/* Connection Lines */}
      <svg className="absolute inset-0 w-full h-full pointer-events-none opacity-30">
        <defs>
          <linearGradient id="dashboardGradient" x1="0%" y1="0%" x2="100%" y2="100%">
            <stop offset="0%" stopColor="#E5195E" stopOpacity="0.6" />
            <stop offset="50%" stopColor="#3B82F6" stopOpacity="0.4" />
            <stop offset="100%" stopColor="#8B5CF6" stopOpacity="0.6" />
          </linearGradient>
        </defs>
        
        <motion.path
          d="M 25% 35% Q 50% 15% 75% 40%"
          stroke="url(#dashboardGradient)"
          strokeWidth="2"
          fill="none"
          strokeDasharray="4,4"
          initial={{ pathLength: 0 }}
          animate={{ pathLength: 1 }}
          transition={{ duration: 2, repeat: Infinity, repeatType: "reverse" }}
        />
        
        <motion.path
          d="M 20% 65% Q 50% 85% 80% 60%"
          stroke="url(#dashboardGradient)"
          strokeWidth="2"
          fill="none"
          strokeDasharray="4,4"
          initial={{ pathLength: 0 }}
          animate={{ pathLength: 1 }}
          transition={{ duration: 2.5, repeat: Infinity, repeatType: "reverse", delay: 0.5 }}
        />
      </svg>

      {/* Technology Labels */}
      <motion.div
        initial={{ opacity: 0 }}
        animate={{ opacity: 1 }}
        transition={{ duration: 1, delay: 2.5 }}
        className="absolute bottom-8 left-1/2 transform -translate-x-1/2 flex space-x-4"
      >
        <div className="px-3 py-1 bg-blue-500/20 text-blue-300 border border-blue-500/30 rounded-full text-sm font-manrope">
          React Native
        </div>
        <div className="px-3 py-1 bg-green-500/20 text-green-300 border border-green-500/30 rounded-full text-sm font-manrope">
          Dashboard
        </div>
        <div className="px-3 py-1 bg-purple-500/20 text-purple-300 border border-purple-500/30 rounded-full text-sm font-manrope">
          Analytics
        </div>
      </motion.div>
    </div>
  );
};