@import url('https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500;700&display=swap'); :root { --primary-color: #6d28d9; --primary-light: #8b5cf6; --primary-dark: #5b21b6; --secondary-color: #0369a1; --secondary-light: #0ea5e9; --text-primary: #1e293b; --text-secondary: #64748b; --bg-light: #f8fafc; --bg-dark: #0f172a; --card-bg: rgba(255, 255, 255, 0.85); --card-border: rgba(255, 255, 255, 0.3); } .dark { --text-primary: #f8fafc; --text-secondary: #94a3b8; --card-bg: rgba(15, 23, 42, 0.85); --card-border: rgba(255, 255, 255, 0.1); } * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Google Sans', -apple-system, BlinkMacSystemFont, sans-serif; } body { min-height: 100vh; color: var(--text-primary); background: var(--bg-light); transition: all 0.3s ease; } .dark body { background: var(--bg-dark); } .main-container { display: flex; height: 100vh; overflow: hidden; } /* Sidebar Styles */ .sidebar { width: 280px; background: var(--card-bg); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-right: 1px solid var(--card-border); display: flex; flex-direction: column; padding: 16px; transition: all 0.3s ease; } .sidebar-header { padding: 12px 8px; margin-bottom: 16px; } .logo { font-size: 24px; font-weight: 700; color: var(--primary-color); margin-bottom: 16px; } .new-chat-btn { width: 100%; padding: 12px 16px; border-radius: 12px; background: var(--primary-color); color: white; font-weight: 500; border: none; display: flex; align-items: center; justify-content: center; gap: 8px; cursor: pointer; transition: all 0.2s ease; } .new-chat-btn:hover { background: var(--primary-dark); } .section-title { font-size: 14px; color: var(--text-secondary); padding: 8px 12px; margin-top: 16px; } .chat-list { list-style: none; margin-top: 8px; } .chat-item { padding: 12px 16px; border-radius: 12px; cursor: pointer; font-size: 15px; transition: all 0.2s ease; display: flex; align-items: center; gap: 8px; } .chat-item:hover { background: rgba(109, 40, 217, 0.1); } .chat-item.active { background: rgba(109, 40, 217, 0.1); color: var(--primary-color); } .chat-item i { width: 20px; height: 20px; } .sidebar-footer { margin-top: auto; padding-top: 16px; } .settings-btn { width: 100%; padding: 12px 16px; border-radius: 12px; background: transparent; color: var(--text-primary); font-weight: 500; border: none; display: flex; align-items: center; gap: 8px; cursor: pointer; transition: all 0.2s ease; } .settings-btn:hover { background: rgba(109, 40, 217, 0.1); } /* Content Area */ .content-area { flex: 1; display: flex; flex-direction: column; overflow: hidden; } .chat-container { flex: 1; display: flex; flex-direction: column; padding: 24px; max-width: 900px; margin: 0 auto; width: 100%; height: 100%; } .chat-messages { flex: 1; overflow-y: auto; padding-bottom: 24px; scroll-behavior: smooth; } .message { margin-bottom: 24px; max-width: 90%; } .message-content { padding: 16px 24px; border-radius: 18px; line-height: 1.5; font-size: 16px; position: relative; } .ai-message .message-content { background: var(--card-bg); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid var(--card-border); border-top-left-radius: 4px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05); } .user-message { margin-left: auto; } .user-message .message-content { background: var(--primary-color); color: white; border-top-right-radius: 4px; } .input-container { padding-top: 16px; position: relative; } .input-box { display: flex; align-items: center; background: var(--card-bg); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid var(--card-border); border-radius: 24px; padding: 8px 12px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); } .input-box textarea { flex: 1; border: none; background: transparent; resize: none; padding: 12px 16px; font-size: 16px; color: var(--text-primary); max-height: 200px; outline: none; } .input-box textarea::placeholder { color: var(--text-secondary); } .send-btn { width: 40px; height: 40px; border-radius: 50%; background: var(--primary-color); color: white; border: none; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.2s ease; flex-shrink: 0; } .send-btn:hover { background: var(--primary-dark); } .disclaimer { font-size: 12px; color: var(--text-secondary); text-align: center; margin-top: 12px; padding: 0 16px; } /* Glass morphism effect */ .sidebar, .message-content, .input-box { background: var(--card-bg); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid var(--card-border); box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1); } /* Responsive styles */ @media (max-width: 768px) { .sidebar { position: fixed; top: 0; left: -280px; height: 100vh; z-index: 100; } .sidebar.active { left: 0; } .content-area { padding: 0; } .message { max-width: 100%; } } /* Animation for messages */ @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .message { animation: fadeIn 0.3s ease forwards; }