html { scroll-behavior: smooth; } body { font-family: 'Inter', sans-serif; background-color: #f8f9fa; } .hero { background: linear-gradient(45deg, #007bff, #82b4ff); color: white; padding: 100px 0; text-align: center; } .feature-item { background-color: #ffffff; padding: 30px; border-radius: 0.5rem; box-shadow: 0 4px 12px rgba(0,0,0,0.08); transition: transform 0.2s ease-in-out; height: 100%; } .feature-item:hover { transform: translateY(-5px); } .feature-item svg { color: #007bff; } .chat-widget { position: fixed; bottom: 20px; right: 20px; background-color: #007bff; color: white; width: 60px; height: 60px; border-radius: 50%; display: flex; justify-content: center; align-items: center; cursor: pointer; box-shadow: 0 4px 8px rgba(0,0,0,0.2); } .chat-widget-container { position: fixed; bottom: 20px; right: 20px; } .chat-window { display: none; position: fixed; bottom: 100px; right: 20px; width: 350px; max-width: 90vw; background-color: white; border-radius: 0.5rem; box-shadow: 0 8px 24px rgba(0,0,0,0.15); flex-direction: column; } .chat-header { display: flex; justify-content: space-between; align-items: center; padding: 1rem; border-bottom: 1px solid #eee; background-color: #f8f9fa; border-top-left-radius: 0.5rem; border-top-right-radius: 0.5rem; } .chat-header h5 { margin: 0; font-size: 1.1rem; } .chat-body { padding: 1rem; overflow-y: auto; height: 300px; display: flex; flex-direction: column; gap: 0.75rem; } .message { padding: 0.5rem 1rem; border-radius: 1rem; max-width: 80%; word-wrap: break-word; } .user-message { background-color: #007bff; color: white; align-self: flex-end; border-bottom-right-radius: 0.25rem; } .bot-message { background-color: #f1f1f1; color: #333; align-self: flex-start; border-bottom-left-radius: 0.25rem; } .chat-footer { display: flex; padding: 1rem; border-top: 1px solid #eee; } .chat-footer .form-control { flex-grow: 1; margin-right: 0.5rem; } .typing-indicator { display: flex; align-items: center; padding: 1rem; } .typing-indicator span { height: 8px; width: 8px; background-color: #999; border-radius: 50%; display: inline-block; margin: 0 2px; animation: bounce 1s infinite; } .typing-indicator span:nth-child(2) { animation-delay: 0.1s; } .typing-indicator span:nth-child(3) { animation-delay: 0.2s; } @keyframes bounce { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1.0); } }