alxry92 commited on
Commit
b3e9b70
·
verified ·
1 Parent(s): dda3a44

Update style.css

Browse files
Files changed (1) hide show
  1. style.css +226 -237
style.css CHANGED
@@ -1,326 +1,315 @@
1
- /* --- Target the Gradio app wrapper for backgrounds --- */
 
 
 
 
2
  gradio-app,
3
  .gradio-app,
4
- .main,
5
- #app,
6
- [data-testid="app"] {
7
- background-color: rgb(40,9,109) !important;
8
  background-image:
9
  url('https://huggingface.co/spaces/atascioglu/SE21AppTemplate/resolve/main/background_top.png'),
10
  url('https://huggingface.co/spaces/atascioglu/SE21AppTemplate/resolve/main/background_mid.png'),
11
  url('https://huggingface.co/spaces/atascioglu/SE21AppTemplate/resolve/main/background_bottom.png') !important;
12
- background-position:
13
- top center,
14
- 0 913px,
15
- bottom center !important;
16
- background-repeat:
17
- no-repeat,
18
- repeat-y,
19
- no-repeat !important;
20
- background-size:
21
- 100% auto,
22
- 100% auto,
23
- 100% auto !important;
24
  min-height: 100vh !important;
25
- }
26
-
27
- /* --- Fallback on html/body --- */
28
- html, body {
29
- background-color: rgb(40,9,109) !important;
30
  margin: 0 !important;
31
  padding: 0 !important;
32
- min-height: 100vh !important;
33
  }
34
-
35
- /* Bottom image is now part of the main background layers (positioned at bottom center) */
36
-
37
  /* --- Main container --- */
38
  .gradio-container {
39
  max-width: 1400px !important;
40
  width: 94vw !important;
41
  margin: 0 auto !important;
42
- padding-top: 220px !important;
43
  padding-bottom: 150px !important;
44
  background: transparent !important;
45
  }
46
-
47
- /* --- Title in ESCP gold --- */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
  #escp_title h1 {
49
- color: rgb(242,198,55) !important;
50
  font-size: 3rem !important;
51
  font-weight: 800 !important;
52
  text-align: center !important;
53
  margin: 0 0 12px 0 !important;
54
  }
55
-
56
- /* --- Subtitle --- */
57
- #escp_title p, #escp_title em {
58
- color: rgba(255,255,255,0.85) !important;
59
  text-align: center !important;
60
  }
61
-
62
- /* --- Tab bar background --- */
 
 
 
 
63
  .tabs > .tab-nav,
64
- .tab-nav,
65
- div[role="tablist"],
66
- .svelte-tabs > .tab-nav {
67
- background: rgba(40,9,109,0.6) !important;
68
  border-radius: 10px 10px 0 0 !important;
69
  padding: 4px !important;
70
  }
71
-
72
- /* --- ALL tab buttons: force white text --- */
73
- .tabs > .tab-nav button,
74
- .tab-nav button,
75
- div[role="tablist"] button,
76
  button[role="tab"],
77
- .svelte-tabs button,
78
- .tab-nav > button,
79
- .tabs button {
80
  color: #ffffff !important;
81
  font-weight: 600 !important;
82
- border: none !important;
83
  background: transparent !important;
 
84
  padding: 10px 20px !important;
85
  border-radius: 8px 8px 0 0 !important;
86
  opacity: 1 !important;
87
  }
88
-
89
- /* --- Selected tab: ESCP gold --- */
90
- .tabs > .tab-nav button.selected,
91
- .tab-nav button.selected,
92
  button[role="tab"][aria-selected="true"],
93
- button[role="tab"].selected,
94
- div[role="tablist"] button[aria-selected="true"],
95
- .svelte-tabs button.selected {
96
- color: rgb(242,198,55) !important;
97
- background: rgba(255,255,255,0.12) !important;
98
- }
99
-
100
- /* --- Unselected tabs: ensure visibility --- */
101
- .tabs > .tab-nav button:not(.selected),
102
- .tab-nav button:not(.selected),
103
  button[role="tab"][aria-selected="false"],
104
- button[role="tab"]:not(.selected),
105
- div[role="tablist"] button:not([aria-selected="true"]) {
106
  color: #ffffff !important;
107
- opacity: 1 !important;
108
  }
109
-
110
- /* --- White card panels --- */
111
- .gradio-container .gr-block,
112
- .gradio-container .gr-box,
113
- .gradio-container .gr-panel,
114
- .gradio-container .gr-group {
115
- background: #ffffff !important;
116
- border-radius: 10px !important;
117
- }
118
-
119
- /* --- Tab content area --- */
120
  .tabitem {
121
- background: rgba(255,255,255,0.95) !important;
122
  border-radius: 0 0 10px 10px !important;
123
- padding: 16px !important;
124
- }
125
-
126
- /* --- Inputs --- */
127
- .gradio-container input,
128
- .gradio-container textarea,
129
- .gradio-container select {
130
- background: #ffffff !important;
131
- border: 1px solid #d1d5db !important;
132
- border-radius: 8px !important;
133
- }
134
-
135
- /* --- Buttons: ESCP purple primary --- */
136
- .gradio-container button:not([role="tab"]) {
137
- font-weight: 600 !important;
138
- padding: 10px 16px !important;
139
- border-radius: 10px !important;
140
- }
141
-
142
- button.primary {
143
- background-color: rgb(40,9,109) !important;
144
  color: #ffffff !important;
145
  border: none !important;
 
 
 
146
  }
147
-
148
  button.primary:hover {
149
- background-color: rgb(60,20,140) !important;
150
  }
151
-
152
- button.secondary {
 
 
153
  background-color: #ffffff !important;
154
- color: rgb(40,9,109) !important;
155
- border: 2px solid rgb(40,9,109) !important;
 
 
 
156
  }
157
-
158
  button.secondary:hover {
159
- background-color: rgb(240,238,250) !important;
160
- }
161
-
162
- /* --- Dataframes --- */
163
- [data-testid="dataframe"] {
164
- background-color: #ffffff !important;
 
 
 
 
 
 
 
 
 
165
  border-radius: 10px !important;
166
  }
167
-
168
- table {
169
- font-size: 0.85rem !important;
 
 
 
170
  }
171
-
172
- /* --- Chatbot (AI Dashboard tab) --- */
173
- .gr-chatbot {
174
- min-height: 380px !important;
 
175
  background-color: #ffffff !important;
176
  border-radius: 12px !important;
 
177
  }
178
-
179
- .gr-chatbot .message.user {
180
- background-color: rgb(232,225,250) !important;
 
 
 
181
  border-radius: 12px !important;
182
  }
183
-
184
- .gr-chatbot .message.bot {
 
 
185
  background-color: #f3f4f6 !important;
 
186
  border-radius: 12px !important;
187
  }
188
-
189
- /* --- Gallery --- */
190
- .gallery {
191
  background: #ffffff !important;
192
- border-radius: 10px !important;
193
- }
194
-
195
- /* --- Log textbox --- */
196
- textarea {
197
- font-family: monospace !important;
198
- font-size: 0.8rem !important;
199
  }
200
-
201
- /* --- Markdown headings inside tabs --- */
 
 
 
 
202
  .tabitem h3 {
203
- color: rgb(40,9,109) !important;
204
  font-weight: 700 !important;
205
  }
206
-
207
- .tabitem h4 {
 
 
208
  color: #374151 !important;
209
  }
210
-
211
- /* --- Examples row (AI Dashboard) --- */
212
- .examples-row button {
213
- background: rgb(240,238,250) !important;
214
- color: rgb(40,9,109) !important;
215
- border: 1px solid rgb(40,9,109) !important;
 
 
 
 
216
  border-radius: 8px !important;
217
  font-size: 0.85rem !important;
218
  }
219
-
 
220
  .examples-row button:hover {
221
- background: rgb(232,225,250) !important;
222
- }
223
-
224
- /* --- Header / footer: transparent over banner --- */
225
- header, header *,
226
- footer, footer * {
 
 
 
227
  background: transparent !important;
228
  box-shadow: none !important;
229
  }
230
-
231
  footer a, footer button,
232
- header a, header button {
233
- background: transparent !important;
234
- border: none !important;
235
- box-shadow: none !important;
236
- }
237
-
238
- #footer, #footer *,
239
- [class*="footer"], [class*="footer"] *,
240
- [class*="chip"], [class*="pill"], [class*="chip"] *, [class*="pill"] * {
241
- background: transparent !important;
242
- border: none !important;
243
- box-shadow: none !important;
244
- }
245
-
246
- [data-testid*="api"], [data-testid*="settings"],
247
- [id*="api"], [id*="settings"],
248
- [class*="api"], [class*="settings"],
249
- [class*="bottom"], [class*="toolbar"], [class*="controls"] {
250
- background: transparent !important;
251
- box-shadow: none !important;
252
- }
253
-
254
- [data-testid*="api"] *, [data-testid*="settings"] *,
255
- [id*="api"] *, [id*="settings"] *,
256
- [class*="api"] *, [class*="settings"] * {
257
- background: transparent !important;
258
- box-shadow: none !important;
259
- }
260
-
261
- section footer {
262
- background: transparent !important;
263
- }
264
-
265
  section footer button,
266
  section footer a {
267
  background: transparent !important;
268
  background-color: transparent !important;
269
  border: none !important;
270
  box-shadow: none !important;
271
- color: white !important;
272
  }
273
-
274
  section footer button:hover,
275
- section footer button:focus,
276
- section footer a:hover,
277
- section footer a:focus {
278
  background: transparent !important;
279
- background-color: transparent !important;
280
- box-shadow: none !important;
281
- }
282
-
283
- section footer button,
284
- section footer button * {
285
- background: transparent !important;
286
- background-color: transparent !important;
287
- background-image: none !important;
288
- box-shadow: none !important;
289
- filter: none !important;
290
- }
291
-
292
- section footer button::before,
293
- section footer button::after {
294
- background: transparent !important;
295
- background-color: transparent !important;
296
- background-image: none !important;
297
- box-shadow: none !important;
298
- filter: none !important;
299
- }
300
-
301
- section footer a,
302
- section footer a * {
303
- background: transparent !important;
304
- background-color: transparent !important;
305
- box-shadow: none !important;
306
  }
307
-
308
- .gradio-container footer button,
309
- .gradio-container footer button *,
310
- .gradio-container .footer button,
311
- .gradio-container .footer button * {
312
- background: transparent !important;
313
- background-color: transparent !important;
314
- background-image: none !important;
315
- box-shadow: none !important;
316
  }
317
-
318
- .gradio-container footer button::before,
319
- .gradio-container footer button::after,
320
- .gradio-container .footer button::before,
321
- .gradio-container .footer button::after {
322
- background: transparent !important;
323
- background-color: transparent !important;
324
- background-image: none !important;
325
- box-shadow: none !important;
326
- }
 
1
+ /* =========================================================
2
+ ESCP THEME — compatible Gradio 6.x
3
+ ========================================================= */
4
+
5
+ /* --- Background on root elements --- */
6
  gradio-app,
7
  .gradio-app,
8
+ body,
9
+ html {
10
+ background-color: rgb(40, 9, 109) !important;
 
11
  background-image:
12
  url('https://huggingface.co/spaces/atascioglu/SE21AppTemplate/resolve/main/background_top.png'),
13
  url('https://huggingface.co/spaces/atascioglu/SE21AppTemplate/resolve/main/background_mid.png'),
14
  url('https://huggingface.co/spaces/atascioglu/SE21AppTemplate/resolve/main/background_bottom.png') !important;
15
+ background-position: top center, 0 913px, bottom center !important;
16
+ background-repeat: no-repeat, repeat-y, no-repeat !important;
17
+ background-size: 100% auto, 100% auto, 100% auto !important;
 
 
 
 
 
 
 
 
 
18
  min-height: 100vh !important;
 
 
 
 
 
19
  margin: 0 !important;
20
  padding: 0 !important;
 
21
  }
22
+
 
 
23
  /* --- Main container --- */
24
  .gradio-container {
25
  max-width: 1400px !important;
26
  width: 94vw !important;
27
  margin: 0 auto !important;
28
+ padding-top: 40px !important;
29
  padding-bottom: 150px !important;
30
  background: transparent !important;
31
  }
32
+
33
+ /* =========================================================
34
+ FIX PRINCIPAL : texte noir dans les zones blanches
35
+ ========================================================= */
36
+
37
+ /* Toutes les zones de contenu blanc → texte sombre */
38
+ .tabitem,
39
+ .tabitem *:not(button):not([role="tab"]),
40
+ .tab-content,
41
+ .tab-content *:not(button):not([role="tab"]) {
42
+ color: #1a1a1a !important;
43
+ }
44
+
45
+ /* Inputs, textareas, selects */
46
+ input, textarea, select,
47
+ .gradio-container input,
48
+ .gradio-container textarea,
49
+ .gradio-container select {
50
+ color: #1a1a1a !important;
51
+ background: #ffffff !important;
52
+ border: 1px solid #d1d5db !important;
53
+ border-radius: 8px !important;
54
+ }
55
+
56
+ /* Labels des composants */
57
+ label, .label-wrap, .label-wrap span,
58
+ span.svelte-1ed2p3z,
59
+ .block label span {
60
+ color: #374151 !important;
61
+ }
62
+
63
+ /* Dataframes / tables */
64
+ table, th, td,
65
+ [data-testid="dataframe"] table,
66
+ [data-testid="dataframe"] th,
67
+ [data-testid="dataframe"] td {
68
+ color: #1a1a1a !important;
69
+ background-color: #ffffff !important;
70
+ }
71
+
72
+ th {
73
+ background-color: #f3f4f6 !important;
74
+ font-weight: 600 !important;
75
+ }
76
+
77
+ /* Log textbox */
78
+ .gradio-container textarea {
79
+ color: #1a1a1a !important;
80
+ font-family: monospace !important;
81
+ font-size: 0.8rem !important;
82
+ }
83
+
84
+ /* Chatbot messages */
85
+ .message-wrap .message,
86
+ [data-testid="bot"],
87
+ [data-testid="user"],
88
+ .bubble-wrap {
89
+ color: #1a1a1a !important;
90
+ }
91
+
92
+ /* =========================================================
93
+ TITRE ESCP
94
+ ========================================================= */
95
  #escp_title h1 {
96
+ color: rgb(242, 198, 55) !important;
97
  font-size: 3rem !important;
98
  font-weight: 800 !important;
99
  text-align: center !important;
100
  margin: 0 0 12px 0 !important;
101
  }
102
+
103
+ #escp_title p,
104
+ #escp_title em {
105
+ color: rgba(255, 255, 255, 0.85) !important;
106
  text-align: center !important;
107
  }
108
+
109
+ /* =========================================================
110
+ TABS — Gradio 6 utilise des classes différentes
111
+ ========================================================= */
112
+
113
+ /* Barre de navigation des tabs */
114
  .tabs > .tab-nav,
115
+ [role="tablist"],
116
+ .tab-nav {
117
+ background: rgba(40, 9, 109, 0.6) !important;
 
118
  border-radius: 10px 10px 0 0 !important;
119
  padding: 4px !important;
120
  }
121
+
122
+ /* Tous les boutons tab blanc */
 
 
 
123
  button[role="tab"],
124
+ .tab-nav button,
125
+ [role="tablist"] button {
 
126
  color: #ffffff !important;
127
  font-weight: 600 !important;
 
128
  background: transparent !important;
129
+ border: none !important;
130
  padding: 10px 20px !important;
131
  border-radius: 8px 8px 0 0 !important;
132
  opacity: 1 !important;
133
  }
134
+
135
+ /* Tab sélectionné or ESCP */
 
 
136
  button[role="tab"][aria-selected="true"],
137
+ .tab-nav button.selected,
138
+ button[role="tab"].selected {
139
+ color: rgb(242, 198, 55) !important;
140
+ background: rgba(255, 255, 255, 0.12) !important;
141
+ border-bottom: 2px solid rgb(242, 198, 55) !important;
142
+ }
143
+
144
+ /* Tab non sélectionné blanc */
 
 
145
  button[role="tab"][aria-selected="false"],
146
+ button[role="tab"]:not(.selected) {
 
147
  color: #ffffff !important;
148
+ opacity: 0.85 !important;
149
  }
150
+
151
+ /* Contenu des tabs fond blanc */
 
 
 
 
 
 
 
 
 
152
  .tabitem {
153
+ background: rgba(255, 255, 255, 0.95) !important;
154
  border-radius: 0 0 10px 10px !important;
155
+ padding: 20px !important;
156
+ }
157
+
158
+ /* =========================================================
159
+ BOUTONS
160
+ ========================================================= */
161
+
162
+ /* Boutons primaires */
163
+ button.primary,
164
+ .gr-button-primary,
165
+ [data-testid="button"].primary {
166
+ background-color: rgb(40, 9, 109) !important;
 
 
 
 
 
 
 
 
 
167
  color: #ffffff !important;
168
  border: none !important;
169
+ font-weight: 600 !important;
170
+ border-radius: 10px !important;
171
+ padding: 10px 16px !important;
172
  }
173
+
174
  button.primary:hover {
175
+ background-color: rgb(60, 20, 140) !important;
176
  }
177
+
178
+ /* Boutons secondaires */
179
+ button.secondary,
180
+ .gr-button-secondary {
181
  background-color: #ffffff !important;
182
+ color: rgb(40, 9, 109) !important;
183
+ border: 2px solid rgb(40, 9, 109) !important;
184
+ font-weight: 600 !important;
185
+ border-radius: 10px !important;
186
+ padding: 10px 16px !important;
187
  }
188
+
189
  button.secondary:hover {
190
+ background-color: rgb(240, 238, 250) !important;
191
+ }
192
+
193
+ /* =========================================================
194
+ COMPOSANTS GRADIO 6
195
+ ========================================================= */
196
+
197
+ /* Blocks / panels */
198
+ .block,
199
+ .gr-block,
200
+ .gr-box,
201
+ .gr-panel,
202
+ .gr-group,
203
+ .contain {
204
+ background: #ffffff !important;
205
  border-radius: 10px !important;
206
  }
207
+
208
+ /* Gallery */
209
+ .gallery,
210
+ .grid-wrap {
211
+ background: #ffffff !important;
212
+ border-radius: 10px !important;
213
  }
214
+
215
+ /* Chatbot */
216
+ .chatbot,
217
+ .chat-wrap,
218
+ [data-testid="chatbot"] {
219
  background-color: #ffffff !important;
220
  border-radius: 12px !important;
221
+ min-height: 380px !important;
222
  }
223
+
224
+ /* Messages user */
225
+ [data-testid="user"] .bubble-wrap,
226
+ .message.user {
227
+ background-color: rgb(232, 225, 250) !important;
228
+ color: #1a1a1a !important;
229
  border-radius: 12px !important;
230
  }
231
+
232
+ /* Messages bot */
233
+ [data-testid="bot"] .bubble-wrap,
234
+ .message.bot {
235
  background-color: #f3f4f6 !important;
236
+ color: #1a1a1a !important;
237
  border-radius: 12px !important;
238
  }
239
+
240
+ /* Dropdown */
241
+ .dropdown, select {
242
  background: #ffffff !important;
243
+ color: #1a1a1a !important;
244
+ border-radius: 8px !important;
 
 
 
 
 
245
  }
246
+
247
+ /* =========================================================
248
+ HEADINGS dans les tabs
249
+ ========================================================= */
250
+ .tabitem h1,
251
+ .tabitem h2,
252
  .tabitem h3 {
253
+ color: rgb(40, 9, 109) !important;
254
  font-weight: 700 !important;
255
  }
256
+
257
+ .tabitem h4,
258
+ .tabitem h5,
259
+ .tabitem p {
260
  color: #374151 !important;
261
  }
262
+
263
+ /* =========================================================
264
+ EXAMPLES (boutons de suggestion)
265
+ ========================================================= */
266
+ .examples table td,
267
+ .examples-row button,
268
+ .gr-samples-table td {
269
+ background: rgb(240, 238, 250) !important;
270
+ color: rgb(40, 9, 109) !important;
271
+ border: 1px solid rgb(40, 9, 109) !important;
272
  border-radius: 8px !important;
273
  font-size: 0.85rem !important;
274
  }
275
+
276
+ .examples table td:hover,
277
  .examples-row button:hover {
278
+ background: rgb(232, 225, 250) !important;
279
+ }
280
+
281
+ /* =========================================================
282
+ FOOTER / HEADER — transparent
283
+ ========================================================= */
284
+ header, footer,
285
+ header *, footer *,
286
+ .footer, .footer * {
287
  background: transparent !important;
288
  box-shadow: none !important;
289
  }
290
+
291
  footer a, footer button,
292
+ header a, header button,
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
293
  section footer button,
294
  section footer a {
295
  background: transparent !important;
296
  background-color: transparent !important;
297
  border: none !important;
298
  box-shadow: none !important;
299
+ color: rgba(255, 255, 255, 0.7) !important;
300
  }
301
+
302
  section footer button:hover,
303
+ section footer a:hover {
 
 
304
  background: transparent !important;
305
+ color: #ffffff !important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
306
  }
307
+
308
+ /* =========================================================
309
+ KPI CARDS laisser le style inline fonctionner
310
+ ========================================================= */
311
+ .kpi-card {
312
+ background: rgba(255, 255, 255, 0.72) !important;
313
+ color: #2d1f4e !important;
 
 
314
  }
315
+