:root { --primary-color: #3498db; --secondary-color: #2980b9; --background-color: #f0f3f5; --text-color: #34495e; --shadow-color: rgba(0, 0, 0, 0.1); --message-bg-user: #3498db; --message-bg-assistant: #ecf0f1; } body { font-family: 'Vazirmatn', 'Tahoma', Arial, sans-serif; background-color: var(--background-color); margin: 0; padding: 0; display: flex; justify-content: center; align-items: center; min-height: 100vh; color: var(--text-color); } #chat-container { width: 95%; max-width: 1200px; background: white; border-radius: 20px; box-shadow: 0 10px 30px var(--shadow-color); overflow: hidden; display: flex; flex-direction: column; height: 90vh; } #chat-header { background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); color: white; padding: 20px; font-size: 28px; font-weight: bold; display: flex; justify-content: space-between; align-items: center; box-shadow: 0 2px 10px var(--shadow-color); text-align: center; } .header-title { flex-grow: 1; text-align: center; } .header-icons { display: flex; gap: 15px; } .header-icon { cursor: pointer; font-size: 24px; transition: transform 0.3s ease, opacity 0.3s ease; } .header-icon:hover { transform: scale(1.1); opacity: 0.8; } #chat-messages { flex-grow: 1; overflow-y: auto; padding: 30px; display: flex; flex-direction: column; gap: 20px; } .message { max-width: 75%; padding: 15px 20px; border-radius: 20px; box-shadow: 0 3px 15px var(--shadow-color); font-size: 16px; line-height: 1.6; transition: transform 0.3s ease; } .message:hover { transform: translateY(-2px); } .user-message { align-self: flex-end; background-color: var(--message-bg-user); color: white; } .assistant-message { align-self: flex-start; background-color: var(--message-bg-assistant); border: 1px solid var(--secondary-color); color: var(--text-color); } #input-container { display: flex; padding: 20px; background: white; border-top: 1px solid var(--secondary-color); gap: 10px; } #user-input { flex-grow: 1; padding: 15px 25px; border: 2px solid var(--secondary-color); border-radius: 30px; font-size: 16px; font-family: 'Vazirmatn', 'Tahoma', Arial, sans-serif; background: white; transition: all 0.3s ease; } #user-input:focus { outline: none; box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.3); } .input-button { background: var(--primary-color); color: white; border: none; border-radius: 50%; width: 55px; height: 55px; font-size: 22px; cursor: pointer; display: flex; justify-content: center; align-items: center; transition: all 0.3s ease; box-shadow: 0 3px 15px var(--shadow-color); } .input-button:hover { background-color: var(--secondary-color); transform: translateY(-3px); } @media (max-width: 768px) { #chat-container { width: 100%; height: 100vh; border-radius: 0; } #chat-header { font-size: 24px; padding: 15px; } .message { max-width: 85%; } }