Lizk75 commited on
Commit
c9df750
·
1 Parent(s): 68aebec

[fix] Dark/light mode compatibility for Gradio UI

Browse files
Files changed (2) hide show
  1. assets/styles.css +67 -16
  2. src/ui.py +1 -1
assets/styles.css CHANGED
@@ -20,11 +20,14 @@ html, body, #app, body > div, .gradio-container {
20
  color: white;
21
  }
22
 
 
23
  #app-container p,
24
  #app-container ol,
25
- #app-container li {
 
26
  font-size: 16px;
27
  line-height: 1.6;
 
28
  }
29
 
30
  #app-title {
@@ -49,7 +52,7 @@ html, body, #app, body > div, .gradio-container {
49
 
50
  #intro-text {
51
  font-size: 16px;
52
- color: white;
53
  margin-top: 20px;
54
  line-height: 1.6;
55
  }
@@ -62,7 +65,7 @@ html, body, #app, body > div, .gradio-container {
62
 
63
  .button-link {
64
  background: linear-gradient(to left, #ff416c, #ff4b2b);
65
- color: white;
66
  padding: 10px 20px;
67
  text-decoration: none;
68
  font-weight: bold;
@@ -83,16 +86,19 @@ html, body, #app, body > div, .gradio-container {
83
 
84
  .label-box label {
85
  background-color: #1f2937;
86
- color: white;
87
  padding: 4px 10px;
88
  border-radius: 8px;
89
  display: inline-block;
90
  margin-bottom: 6px;
91
  }
92
 
 
 
 
 
93
  .label-box {
94
  background-color: #1f2937;
95
- color: white;
96
  padding: 4px 10px;
97
  border-radius: 8px;
98
  display: inline-block;
@@ -116,6 +122,7 @@ html, body, #app, body > div, .gradio-container {
116
 
117
  textarea, input[type="text"] {
118
  background-color: #374151 !important;
 
119
  }
120
 
121
  #custom-dropdown .wrap {
@@ -123,12 +130,38 @@ textarea, input[type="text"] {
123
  border-radius: 6px;
124
  }
125
 
126
- #custom-dropdown ul {
 
127
  background-color: #374151 !important;
128
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
129
 
130
  input[type="number"] {
131
- background-color: #374151
 
132
  }
133
 
134
  #business-problem-box {
@@ -139,9 +172,14 @@ input[type="number"] {
139
  width: 100% !important;
140
  }
141
 
 
 
 
 
 
142
  #run-btn {
143
  background: linear-gradient(to left, #ff416c, #ff4b2b);
144
- color: white;
145
  font-weight: bold;
146
  border: none;
147
  padding: 10px 20px;
@@ -160,18 +198,31 @@ input[type="number"] {
160
  border-radius: 8px;
161
  padding: 10px;
162
  margin-top: 16px;
163
- color: white;
164
  font-weight: 500;
165
  }
166
 
167
- #download-box .label {
168
- color: #ff416c;
169
- font-weight: bold;
170
- font-size: 15px;
171
- }
172
-
173
  #download-box a {
174
  color: #00c3ff !important;
175
  text-decoration: underline;
176
  font-weight: bold;
177
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
  color: white;
21
  }
22
 
23
+ #app-container h4,
24
  #app-container p,
25
  #app-container ol,
26
+ #app-container li,
27
+ #app-container strong {
28
  font-size: 16px;
29
  line-height: 1.6;
30
+ color: white !important;
31
  }
32
 
33
  #app-title {
 
52
 
53
  #intro-text {
54
  font-size: 16px;
55
+ color: white !important;
56
  margin-top: 20px;
57
  line-height: 1.6;
58
  }
 
65
 
66
  .button-link {
67
  background: linear-gradient(to left, #ff416c, #ff4b2b);
68
+ color: white !important;
69
  padding: 10px 20px;
70
  text-decoration: none;
71
  font-weight: bold;
 
86
 
87
  .label-box label {
88
  background-color: #1f2937;
 
89
  padding: 4px 10px;
90
  border-radius: 8px;
91
  display: inline-block;
92
  margin-bottom: 6px;
93
  }
94
 
95
+ .label-box span {
96
+ color: white !important;
97
+ }
98
+
99
  .label-box {
100
  background-color: #1f2937;
101
+ color: white;
102
  padding: 4px 10px;
103
  border-radius: 8px;
104
  display: inline-block;
 
122
 
123
  textarea, input[type="text"] {
124
  background-color: #374151 !important;
125
+ color: white !important;
126
  }
127
 
128
  #custom-dropdown .wrap {
 
130
  border-radius: 6px;
131
  }
132
 
133
+ input[role="listbox"] {
134
+ color: white !important;
135
  background-color: #374151 !important;
136
  }
137
+ .dropdown-arrow {
138
+ color: white !important;
139
+ }
140
+
141
+ ul[role="listbox"] {
142
+ background-color: #111827 !important; /* dark navy */
143
+ color: white !important;
144
+ border-radius: 6px;
145
+ padding: 4px 0;
146
+ }
147
+
148
+ ul[role="listbox"] li {
149
+ color: white !important;
150
+ padding: 8px 12px;
151
+ }
152
+
153
+ ul[role="listbox"] li:hover {
154
+ background-color: #1f2937 !important; /* slightly lighter hover */
155
+ }
156
+
157
+ ul[role="listbox"] li[aria-selected="true"] {
158
+ background-color: #111827 !important; /* same dark as others */
159
+ color: white !important;
160
+ }
161
 
162
  input[type="number"] {
163
+ background-color: #374151;
164
+ color: white !important;
165
  }
166
 
167
  #business-problem-box {
 
172
  width: 100% !important;
173
  }
174
 
175
+ #business-problem-box textarea::placeholder {
176
+ color: #9ca3af !important; /* Tailwind's "gray-400" */
177
+ }
178
+
179
+
180
  #run-btn {
181
  background: linear-gradient(to left, #ff416c, #ff4b2b);
182
+ color: white !important;
183
  font-weight: bold;
184
  border: none;
185
  padding: 10px 20px;
 
198
  border-radius: 8px;
199
  padding: 10px;
200
  margin-top: 16px;
 
201
  font-weight: 500;
202
  }
203
 
 
 
 
 
 
 
204
  #download-box a {
205
  color: #00c3ff !important;
206
  text-decoration: underline;
207
  font-weight: bold;
208
+ }
209
+ #download-box td.filename {
210
+ color: rgb(255, 255, 255) !important;
211
+ }
212
+
213
+ #download-box .file-preview-holder,
214
+ #download-box .file-preview,
215
+ #download-box table,
216
+ #download-box tr,
217
+ #download-box td {
218
+ background-color: #1f2937 !important;
219
+ }
220
+
221
+ /* #download-box label {
222
+ background-color: #1f2937 !important;
223
+ color: white !important;
224
+ font-weight: bold;
225
+ } */
226
+ #download-box > label {
227
+ display: none !important;
228
+ }
src/ui.py CHANGED
@@ -143,7 +143,7 @@ def build_ui(css_path="assets/styles.css"):
143
  )
144
 
145
  # Hidden file component for dataset download
146
- file_download = gr.File(label="Download Dataset", visible=False, elem_id="download-box")
147
 
148
  # Component to display status messages
149
  status_message = gr.Markdown("", label="Status")
 
143
  )
144
 
145
  # Hidden file component for dataset download
146
+ file_download = gr.File(visible=False, elem_id="download-box", label=None)
147
 
148
  # Component to display status messages
149
  status_message = gr.Markdown("", label="Status")