        /* Base styles */
        * {
            font-family: 'Cairo', sans-serif;
        }

        /* Custom Gradients and Animations */
        .gradient-bg {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        }

        .chat-gradient {
            background: linear-gradient(45deg, #ff6b6b, #4ecdc4, #45b7d1, #96ceb4);
            background-size: 400% 400%;
            animation: gradientShift 8s ease infinite;
        }

        @keyframes gradientShift {
            0% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }

        /* Slide-in Animation - Made more generic for reuse */
        .animate-slide-in {
            animation: slideIn 0.7s ease-out forwards;
            opacity: 0;
            transform: translateY(30px);
        }

        @keyframes slideIn {
            to { opacity: 1; transform: translateY(0); }
        }

        /* Hover Scale Effect */
        .hover-scale {
            transition: transform 0.3s ease;
        }

        .hover-scale:hover {
            transform: scale(1.05);
        }

        /* Country Card Styling */
        .country-card {
            background: linear-gradient(135deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.2) 100%);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255,255,255,0.2);
        }

        /* Neon Text Effect */
        .neon-text {
            text-shadow: 0 0 10px #00ffff, 0 0 20px #00ffff, 0 0 30px #00ffff;
        }

        /* Pulse Animation */
        .pulse-effect {
            animation: pulse 2s infinite;
        }

        @keyframes pulse {
            0% { box-shadow: 0 0 0 0 rgba(59, 130, 246, 0.7); }
            70% { box-shadow: 0 0 0 10px rgba(59, 130, 246, 0); }
            100% { box-shadow: 0 0 0 0 rgba(59, 130, 246, 0); }
        }

        /* Typing Animation */
        .typing-animation {
            display: inline-block;
            animation: typing 1.5s infinite;
        }

        @keyframes typing {
            0%, 100% { opacity: 1; }
            50% { opacity: 0.3; }
        }

        /* Scrollbar styling for chat messages */
        .chat-messages-scroll {
            scrollbar-width: thin;
            scrollbar-color: #667eea #4a5568;
        }

        .chat-messages-scroll::-webkit-scrollbar {
            width: 8px;
        }

        .chat-messages-scroll::-webkit-scrollbar-track {
            background: #4a5568;
            border-radius: 10px;
        }

        .chat-messages-scroll::-webkit-scrollbar-thumb {
            background-color: #667eea;
            border-radius: 10px;
            border: 2px solid #4a5568;
        }

        /* New: Animated Icon in Header */
        .header-chat-icon {
            animation: iconGlow 3s ease-in-out infinite alternate;
        }

        @keyframes iconGlow {
            0% { filter: drop-shadow(0 0 5px rgba(255, 107, 107, 0.7)); }
            25% { filter: drop-shadow(0 0 5px rgba(78, 205, 196, 0.7)); }
            50% { filter: drop-shadow(0 0 5px rgba(69, 183, 209, 0.7)); }
            75% { filter: drop-shadow(0 0 5px rgba(150, 206, 180, 0.7)); }
            100% { filter: drop-shadow(0 0 5px rgba(255, 107, 107, 0.7)); }
        }

        /* New: Gradient Border for Sections */
        .section-gradient-border {
            position: relative;
            padding-bottom: 2rem;
        }

        .section-gradient-border::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 80%;
            height: 2px;
            background: linear-gradient(90deg, transparent, #ff6b6b, #4ecdc4, #45b7d1, #96ceb4, transparent);
            opacity: 0.7;
        }
