Spaces:
Sleeping
Sleeping
| /* --- 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) ; | |
| } | |
| .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 ; | |
| } | |
| .gr-chatbot .bot { | |
| color: white ; | |
| } | |
| /* 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 ; | |
| border: none ; | |
| font-size: 1.5rem ; | |
| padding: 0 4px ; | |
| color: #888; | |
| } | |
| #attachment-btn-container button:hover { | |
| color: var(--brand-secondary); | |
| } | |
| #msg-box textarea { | |
| padding-left: 45px ; /* Makes space for the pin icon */ | |
| border-radius: 12px ; | |
| border: 1px solid var(--border-color) ; | |
| background-color: var(--bg-color) ; | |
| color: var(--primary-text-color) ; | |
| } | |
| /* Highlight textbox on focus */ | |
| #msg-box textarea:focus { | |
| border-color: var(--brand-secondary) ; | |
| box-shadow: 0 0 5px var(--brand-secondary) ; | |
| } | |
| /* 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; | |
| } | |