:root { --bg-color: #121212; --surface-color: #1E1E1E; --primary-color: #00FF9B; --secondary-color: #00C2FF; --text-color: #E0E0E0; --text-muted-color: #888; --border-radius-md: 12px; --border-radius-sm: 8px; } body { background-color: var(--bg-color); color: var(--text-color); font-family: 'Roboto Mono', 'Consolas', 'Monaco', monospace; margin: 0; padding: 0; display: flex; justify-content: center; align-items: center; height: 100vh; overflow: hidden; } .chat-container { width: 100%; max-width: 800px; height: 100vh; max-height: 100vh; /* For mobile browsers */ display: flex; flex-direction: column; background-color: var(--bg-color); border-radius: 0; box-shadow: 0 0 40px rgba(0, 255, 155, 0.1); overflow: hidden; } .chat-header { padding: 16px 24px; background-color: var(--surface-color); border-bottom: 1px solid #333; text-align: center; } .chat-header h1 { font-size: 1.5rem; font-weight: 500; margin: 0; background: linear-gradient(90deg, var(--primary-color), var(--secondary-color)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; } .chat-header .text-muted { font-size: 0.85rem; color: var(--text-muted-color); margin: 0; } .chat-messages { flex-grow: 1; padding: 24px; overflow-y: auto; display: flex; flex-direction: column; gap: 16px; } /* Custom scrollbar for webkit browsers */ .chat-messages::-webkit-scrollbar { width: 6px; } .chat-messages::-webkit-scrollbar-track { background: var(--bg-color); } .chat-messages::-webkit-scrollbar-thumb { background-color: var(--surface-color); border-radius: 6px; } .message { display: flex; max-width: 75%; } .message-content { padding: 12px 16px; border-radius: var(--border-radius-md); line-height: 1.5; } .message-content p { margin: 0; } .bot-message { align-self: flex-start; } .bot-message .message-content { background-color: var(--surface-color); border-top-left-radius: 0; } .user-message { align-self: flex-end; } .user-message .message-content { background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); color: #000; border-top-right-radius: 0; } .chat-input-area { padding: 16px 24px; background-color: var(--surface-color); border-top: 1px solid #333; } #chat-form .form-control { background-color: #333; border: 1px solid #444; color: var(--text-color); border-radius: var(--border-radius-sm); padding: 12px 16px; height: 48px; } #chat-form .form-control:focus { background-color: #333; color: var(--text-color); box-shadow: 0 0 0 2px var(--primary-color); border-color: var(--primary-color); } #chat-form .form-control::placeholder { color: var(--text-muted-color); } #chat-form .btn { background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); border: none; border-radius: var(--border-radius-sm); margin-left: 12px; width: 48px; height: 48px; display: flex; justify-content: center; align-items: center; transition: transform 0.2s ease; } #chat-form .btn:hover { transform: scale(1.05); } #chat-form .btn svg { color: #000; }