/* --- 1. THEME VARIABLES (For Light & Dark Mode) --- */ :root { --bg-color: #fdfdfd; --primary-text-color: #2c3e50; --secondary-text-color: #555; --border-color: #eaeaea; --shadow-color: rgba(0, 0, 0, 0.05); --card-bg-color: #ffffff; /* Used for chatbot background */ } /* Dark mode color overrides */ body.dark { --bg-color: #1e1e1e; --primary-text-color: #ecf0f1; --secondary-text-color: #bdc3c7; --border-color: #3a3a3a; --shadow-color: rgba(0, 0, 0, 0.2); --card-bg-color: #2a2a2a; } --- /* --- 2. GENERAL STYLES (From your previous code) --- */ body { background-color: var(--bg-color); color: var(--primary-text-color); font-family: 'Helvetica Neue', Arial, sans-serif; transition: background-color 0.3s, color 0.3s; } /* Header Styles */ #header { text-align: center; margin-bottom: 20px; padding-bottom: 1rem; border-bottom: 1px solid var(--border-color); } #header img { max-height: 100px; border-radius: 12px; display: block; margin: auto; } #header h2 { margin: 10px 0 5px; } #header p { font-size: 14px; color: var(--secondary-text-color); } --- /* --- 3. CHAT & INPUT STYLES --- */ /* Chatbot Message Styles */ .gr-chatbot { background-color: var(--card-bg-color) !important; } .gr-chatbot .user, .gr-chatbot .bot { border-radius: 12px; box-shadow: 0 2px 5px var(--shadow-color); transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out; } .gr-chatbot .user:hover, .gr-chatbot .bot:hover { transform: translateY(-3px); box-shadow: 0 5px 15px var(--shadow-color); } .gr-chatbot .user { color: black !important; } .gr-chatbot .bot { color: white !important; } /* Styles to place the pin icon inside the search box */ #input-row { position: relative; display: flex; align-items: center; } #attachment-btn-container { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); z-index: 100; } #attachment-btn-container button { background: transparent !important; border: none !important; font-size: 1.5rem !important; padding: 0 4px !important; color: #888; } #attachment-btn-container button:hover { color: var(--brand-secondary); } #msg-box textarea { padding-left: 45px !important; /* Makes space for the pin icon */ border-radius: 12px !important; border: 1px solid var(--border-color) !important; background-color: var(--bg-color) !important; color: var(--primary-text-color) !important; } /* Highlight textbox on focus */ #msg-box textarea:focus { border-color: var(--brand-secondary) !important; box-shadow: 0 0 5px var(--brand-secondary) !important; } /* Hides the default file uploader component */ #file-uploader { display: none; } --- /* --- 4. FOOTER & BUTTON STYLES --- */ /* Button Hover Effect (From your previous code) */ .gr-button:hover { transform: scale(1.03); box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1); transition: all 0.2s ease-in-out; } /* Footer Styles */ #footer { text-align: center; margin-top: 30px; padding-top: 1rem; font-size: 14px; color: var(--secondary-text-color); border-top: 1px solid var(--border-color); } #footer a { color: var(--brand-secondary); text-decoration: none; transition: color 0.2s; } #footer a:hover { color: var(--brand-primary); text-decoration: underline; }