grasepard2 commited on
Commit
e3392c2
·
verified ·
1 Parent(s): 752a7c4

Update style.css

Browse files
Files changed (1) hide show
  1. style.css +87 -91
style.css CHANGED
@@ -1,11 +1,10 @@
1
  /* =========================================================
2
  CS1 GROUP 14 — JOB RISK ANALYZER
3
- Dark AI-product aesthetic Vercel × OpenAI Platform
4
  ========================================================= */
5
 
6
  @import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&family=Geist+Mono:wght@400;500;600&display=swap');
7
 
8
- /* --- Color tokens --- */
9
  :root {
10
  --bg: #0a0a0a;
11
  --bg-1: #111111;
@@ -13,25 +12,22 @@
13
  --bg-3: #1c1c1c;
14
  --surface: #131313;
15
  --surface-elev: #181818;
16
- --border: #262626;
17
  --border-soft: #1f1f1f;
18
- --border-hi: #333333;
19
 
20
  --ink: #ededed;
21
  --ink-soft: #a1a1a1;
22
  --ink-mute: #666666;
23
- --ink-faint: #444444;
24
 
25
  --accent: #34d399;
26
- --accent-glow: rgba(52, 211, 153, 0.15);
27
- --accent-line: rgba(52, 211, 153, 0.4);
28
  --accent-soft: rgba(52, 211, 153, 0.08);
29
 
30
  --warn: #f59e0b;
31
- --warn-glow: rgba(245, 158, 11, 0.12);
32
  --danger: #ef4444;
33
- --danger-glow: rgba(239, 68, 68, 0.15);
34
  --info: #60a5fa;
 
35
 
36
  --radius: 8px;
37
  --radius-lg: 12px;
@@ -41,59 +37,65 @@
41
  }
42
 
43
  /* =========================================================
44
- GLOBAL RESET kill the ESCP branding entirely
 
45
  ========================================================= */
46
 
 
47
  gradio-app,
48
  .gradio-app,
49
  .main,
50
  #app,
51
- [data-testid="app"] {
 
 
 
52
  background: var(--bg) !important;
 
 
 
 
 
 
 
 
53
  background-image:
54
- radial-gradient(ellipse 80% 50% at 50% -10%, rgba(52, 211, 153, 0.06), transparent 60%),
55
- radial-gradient(ellipse 60% 40% at 50% 100%, rgba(96, 165, 250, 0.04), transparent 60%) !important;
56
  background-attachment: fixed !important;
57
  background-repeat: no-repeat !important;
58
- background-size: 100% 100%, 100% 100% !important;
59
- background-position: center top, center bottom !important;
60
  min-height: 100vh !important;
61
  }
62
 
63
  html, body {
64
- background: var(--bg) !important;
65
- color: var(--ink) !important;
66
  margin: 0 !important;
67
  padding: 0 !important;
68
  font-family: var(--font-display) !important;
69
- font-feature-settings: 'cv11', 'ss01', 'ss03' !important;
70
  -webkit-font-smoothing: antialiased !important;
71
  -moz-osx-font-smoothing: grayscale !important;
72
  letter-spacing: -0.011em !important;
73
  min-height: 100vh !important;
74
  }
75
 
76
- /* Subtle grid texture overlay */
77
  body::before {
78
  content: '';
79
  position: fixed;
80
  inset: 0;
81
  background-image:
82
- linear-gradient(to right, rgba(255,255,255,0.015) 1px, transparent 1px),
83
- linear-gradient(to bottom, rgba(255,255,255,0.015) 1px, transparent 1px);
84
  background-size: 64px 64px;
85
  pointer-events: none;
86
  z-index: 0;
87
  }
88
 
89
- /* --- Main container --- */
90
  .gradio-container {
91
  max-width: 1200px !important;
92
  width: 92vw !important;
93
  margin: 0 auto !important;
94
  padding-top: 56px !important;
95
  padding-bottom: 96px !important;
96
- background: transparent !important;
97
  position: relative !important;
98
  z-index: 1 !important;
99
  }
@@ -106,7 +108,7 @@ body::before {
106
  text-align: left !important;
107
  margin-bottom: 56px !important;
108
  padding-bottom: 32px !important;
109
- border-bottom: 1px solid var(--border-soft) !important;
110
  position: relative !important;
111
  }
112
 
@@ -115,7 +117,7 @@ body::before {
115
  display: block !important;
116
  font-family: var(--font-mono) !important;
117
  font-size: 11px !important;
118
- color: var(--ink-mute) !important;
119
  letter-spacing: 0.05em !important;
120
  margin-bottom: 16px !important;
121
  text-transform: uppercase !important;
@@ -141,10 +143,9 @@ body::before {
141
  font-size: 0.95rem !important;
142
  font-weight: 400 !important;
143
  margin: 0 !important;
144
- letter-spacing: -0.005em !important;
145
  }
146
 
147
- /* Status indicator dot in header */
148
  #escp_title::after {
149
  content: '' !important;
150
  position: absolute !important;
@@ -213,15 +214,15 @@ button[role="tab"]:hover {
213
  button[role="tab"][aria-selected="true"],
214
  button[role="tab"].selected,
215
  .svelte-tabs button.selected {
216
- color: var(--ink) !important;
217
  background: var(--surface-elev) !important;
218
- box-shadow: 0 0 0 1px var(--border-hi), 0 1px 2px rgba(0,0,0,0.4) !important;
219
  font-weight: 500 !important;
220
  border-bottom: none !important;
221
  }
222
 
223
  /* =========================================================
224
- TAB CONTENT — the canvas
225
  ========================================================= */
226
 
227
  .tabitem {
@@ -233,9 +234,7 @@ button[role="tab"].selected,
233
  position: relative !important;
234
  }
235
 
236
- .tabitem::before {
237
- display: none !important;
238
- }
239
 
240
  /* =========================================================
241
  BLOCKS / CARDS
@@ -244,15 +243,18 @@ button[role="tab"].selected,
244
  .gradio-container .gr-block,
245
  .gradio-container .gr-box,
246
  .gradio-container .gr-panel,
247
- .gradio-container .gr-group {
 
 
 
248
  background: var(--surface) !important;
249
  border: 1px solid var(--border) !important;
250
  border-radius: var(--radius-lg) !important;
251
- box-shadow: 0 1px 0 rgba(255,255,255,0.02) inset, 0 0 0 1px rgba(0,0,0,0.4) !important;
252
  }
253
 
254
  /* =========================================================
255
- FORM LABELS
256
  ========================================================= */
257
 
258
  .gradio-container label,
@@ -267,7 +269,7 @@ button[role="tab"].selected,
267
  }
268
 
269
  /* =========================================================
270
- INPUTS
271
  ========================================================= */
272
 
273
  .gradio-container input,
@@ -280,8 +282,7 @@ button[role="tab"].selected,
280
  font-family: var(--font-display) !important;
281
  font-size: 0.9rem !important;
282
  padding: 10px 14px !important;
283
- transition: border-color 0.15s, box-shadow 0.15s, background 0.15s !important;
284
- letter-spacing: -0.005em !important;
285
  }
286
 
287
  .gradio-container input:hover,
@@ -306,7 +307,7 @@ button[role="tab"].selected,
306
 
307
  textarea {
308
  font-family: var(--font-display) !important;
309
- font-size: 0.85rem !important;
310
  line-height: 1.6 !important;
311
  }
312
 
@@ -317,25 +318,26 @@ textarea {
317
  .gradio-container button:not([role="tab"]) {
318
  font-family: var(--font-display) !important;
319
  font-weight: 500 !important;
320
- padding: 10px 16px !important;
321
  border-radius: var(--radius) !important;
322
- font-size: 0.875rem !important;
323
  letter-spacing: -0.005em !important;
324
  transition: all 0.15s ease !important;
325
  }
326
 
327
  button.primary {
328
- background: var(--ink) !important;
329
- color: var(--bg) !important;
330
- border: 1px solid var(--ink) !important;
331
- box-shadow: 0 1px 2px rgba(0,0,0,0.5) !important;
 
332
  }
333
 
334
  button.primary:hover {
335
- background: #ffffff !important;
336
- border-color: #ffffff !important;
337
  transform: translateY(-1px) !important;
338
- box-shadow: 0 4px 8px rgba(0,0,0,0.5) !important;
339
  }
340
 
341
  button.secondary {
@@ -350,7 +352,7 @@ button.secondary:hover {
350
  }
351
 
352
  /* =========================================================
353
- MARKDOWN TYPOGRAPHY
354
  ========================================================= */
355
 
356
  .tabitem h1, .tabitem h2 {
@@ -372,11 +374,11 @@ button.secondary:hover {
372
  margin-top: 28px !important;
373
  margin-bottom: 12px !important;
374
  padding-bottom: 8px !important;
375
- border-bottom: 1px solid var(--border-soft) !important;
376
  }
377
 
378
  .tabitem h4 {
379
- color: var(--ink-soft) !important;
380
  font-family: var(--font-mono) !important;
381
  font-weight: 500 !important;
382
  font-size: 0.7rem !important;
@@ -386,18 +388,19 @@ button.secondary:hover {
386
  margin-bottom: 14px !important;
387
  }
388
 
389
- .tabitem p, .tabitem li {
 
390
  color: var(--ink-soft) !important;
391
  line-height: 1.65 !important;
392
  font-size: 0.92rem !important;
393
  }
394
 
395
- .tabitem strong {
396
  color: var(--ink) !important;
397
  font-weight: 600 !important;
398
  }
399
 
400
- .tabitem code {
401
  background: var(--bg-2) !important;
402
  color: var(--accent) !important;
403
  padding: 2px 6px !important;
@@ -422,11 +425,12 @@ table {
422
  font-size: 0.825rem !important;
423
  color: var(--ink) !important;
424
  font-family: var(--font-display) !important;
 
425
  }
426
 
427
  table thead th {
428
  background: var(--bg-1) !important;
429
- color: var(--ink-soft) !important;
430
  font-family: var(--font-mono) !important;
431
  font-weight: 500 !important;
432
  text-transform: uppercase !important;
@@ -440,6 +444,7 @@ table tbody td {
440
  border-bottom: 1px solid var(--border-soft) !important;
441
  color: var(--ink-soft) !important;
442
  padding: 11px 14px !important;
 
443
  }
444
 
445
  table tbody tr:hover td {
@@ -451,7 +456,7 @@ table tbody tr:hover td {
451
  CHATBOT
452
  ========================================================= */
453
 
454
- .gr-chatbot {
455
  min-height: 380px !important;
456
  background: var(--bg-1) !important;
457
  border: 1px solid var(--border) !important;
@@ -459,20 +464,24 @@ table tbody tr:hover td {
459
  padding: 8px !important;
460
  }
461
 
462
- .gr-chatbot .message {
 
463
  border: 1px solid var(--border-soft) !important;
464
  font-size: 0.9rem !important;
465
  line-height: 1.6 !important;
 
466
  }
467
 
468
- .gr-chatbot .message.user {
 
469
  background: var(--bg-2) !important;
470
  color: var(--ink) !important;
471
  border-radius: 12px 12px 4px 12px !important;
472
  border-color: var(--border) !important;
473
  }
474
 
475
- .gr-chatbot .message.bot {
 
476
  background: var(--surface-elev) !important;
477
  color: var(--ink) !important;
478
  border-radius: 12px 12px 12px 4px !important;
@@ -480,7 +489,7 @@ table tbody tr:hover td {
480
  }
481
 
482
  /* =========================================================
483
- EXAMPLES (chatbot pills)
484
  ========================================================= */
485
 
486
  .examples-row button {
@@ -493,18 +502,17 @@ table tbody tr:hover td {
493
  font-weight: 400 !important;
494
  text-transform: none !important;
495
  letter-spacing: -0.005em !important;
496
- padding: 6px 12px !important;
497
- transition: all 0.15s !important;
498
  }
499
 
500
  .examples-row button:hover {
501
- background: var(--bg-2) !important;
502
- color: var(--ink) !important;
503
- border-color: var(--border-hi) !important;
504
  }
505
 
506
  /* =========================================================
507
- PLOTLY
508
  ========================================================= */
509
 
510
  .js-plotly-plot {
@@ -521,7 +529,7 @@ table tbody tr:hover td {
521
  }
522
 
523
  /* =========================================================
524
- NUMBER INPUT (Score display)
525
  ========================================================= */
526
 
527
  [data-testid="number-input"] input,
@@ -529,9 +537,10 @@ table tbody tr:hover td {
529
  font-family: var(--font-mono) !important;
530
  font-size: 1.75rem !important;
531
  font-weight: 600 !important;
532
- color: var(--ink) !important;
533
  background: var(--bg-1) !important;
534
  letter-spacing: -0.02em !important;
 
535
  }
536
 
537
  /* =========================================================
@@ -547,12 +556,16 @@ header, header * {
547
  font-size: 0.75rem !important;
548
  }
549
 
 
 
 
 
550
  footer a:hover {
551
  color: var(--accent) !important;
552
  }
553
 
554
  /* =========================================================
555
- FORCE LIGHT TEXT EVERYWHERE
556
  ========================================================= */
557
 
558
  .gradio-container,
@@ -579,27 +592,10 @@ footer a:hover {
579
  scrollbar-color: var(--border-hi) transparent;
580
  }
581
 
582
- *::-webkit-scrollbar {
583
- width: 8px;
584
- height: 8px;
585
- }
586
-
587
- *::-webkit-scrollbar-track {
588
- background: transparent;
589
- }
590
-
591
- *::-webkit-scrollbar-thumb {
592
- background: var(--border);
593
- border-radius: 4px;
594
- }
595
-
596
- *::-webkit-scrollbar-thumb:hover {
597
- background: var(--border-hi);
598
- }
599
-
600
- /* =========================================================
601
- SELECTION
602
- ========================================================= */
603
 
604
  ::selection {
605
  background: var(--accent-glow);
 
1
  /* =========================================================
2
  CS1 GROUP 14 — JOB RISK ANALYZER
3
+ Dark dashboardworks against HF's forced light page bg
4
  ========================================================= */
5
 
6
  @import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&family=Geist+Mono:wght@400;500;600&display=swap');
7
 
 
8
  :root {
9
  --bg: #0a0a0a;
10
  --bg-1: #111111;
 
12
  --bg-3: #1c1c1c;
13
  --surface: #131313;
14
  --surface-elev: #181818;
15
+ --border: #2a2a2a;
16
  --border-soft: #1f1f1f;
17
+ --border-hi: #383838;
18
 
19
  --ink: #ededed;
20
  --ink-soft: #a1a1a1;
21
  --ink-mute: #666666;
 
22
 
23
  --accent: #34d399;
24
+ --accent-glow: rgba(52, 211, 153, 0.18);
 
25
  --accent-soft: rgba(52, 211, 153, 0.08);
26
 
27
  --warn: #f59e0b;
 
28
  --danger: #ef4444;
 
29
  --info: #60a5fa;
30
+ --purple: #a78bfa;
31
 
32
  --radius: 8px;
33
  --radius-lg: 12px;
 
37
  }
38
 
39
  /* =========================================================
40
+ FORCE DARK BACKGROUND ON THE WHOLE PAGE
41
+ This is the key fix — HF was leaving the body white
42
  ========================================================= */
43
 
44
+ html, body,
45
  gradio-app,
46
  .gradio-app,
47
  .main,
48
  #app,
49
+ [data-testid="app"],
50
+ .gradio-container,
51
+ .contain,
52
+ main {
53
  background: var(--bg) !important;
54
+ background-color: var(--bg) !important;
55
+ color: var(--ink) !important;
56
+ }
57
+
58
+ /* Glow effects on top + bottom */
59
+ gradio-app,
60
+ .gradio-app,
61
+ [data-testid="app"] {
62
  background-image:
63
+ radial-gradient(ellipse 80% 50% at 50% -10%, rgba(52, 211, 153, 0.10), transparent 60%),
64
+ radial-gradient(ellipse 60% 40% at 50% 100%, rgba(96, 165, 250, 0.08), transparent 60%) !important;
65
  background-attachment: fixed !important;
66
  background-repeat: no-repeat !important;
 
 
67
  min-height: 100vh !important;
68
  }
69
 
70
  html, body {
 
 
71
  margin: 0 !important;
72
  padding: 0 !important;
73
  font-family: var(--font-display) !important;
 
74
  -webkit-font-smoothing: antialiased !important;
75
  -moz-osx-font-smoothing: grayscale !important;
76
  letter-spacing: -0.011em !important;
77
  min-height: 100vh !important;
78
  }
79
 
80
+ /* Subtle grid texture */
81
  body::before {
82
  content: '';
83
  position: fixed;
84
  inset: 0;
85
  background-image:
86
+ linear-gradient(to right, rgba(255,255,255,0.018) 1px, transparent 1px),
87
+ linear-gradient(to bottom, rgba(255,255,255,0.018) 1px, transparent 1px);
88
  background-size: 64px 64px;
89
  pointer-events: none;
90
  z-index: 0;
91
  }
92
 
 
93
  .gradio-container {
94
  max-width: 1200px !important;
95
  width: 92vw !important;
96
  margin: 0 auto !important;
97
  padding-top: 56px !important;
98
  padding-bottom: 96px !important;
 
99
  position: relative !important;
100
  z-index: 1 !important;
101
  }
 
108
  text-align: left !important;
109
  margin-bottom: 56px !important;
110
  padding-bottom: 32px !important;
111
+ border-bottom: 1px solid var(--border) !important;
112
  position: relative !important;
113
  }
114
 
 
117
  display: block !important;
118
  font-family: var(--font-mono) !important;
119
  font-size: 11px !important;
120
+ color: var(--accent) !important;
121
  letter-spacing: 0.05em !important;
122
  margin-bottom: 16px !important;
123
  text-transform: uppercase !important;
 
143
  font-size: 0.95rem !important;
144
  font-weight: 400 !important;
145
  margin: 0 !important;
 
146
  }
147
 
148
+ /* Pulsing status dot (top-right of header) */
149
  #escp_title::after {
150
  content: '' !important;
151
  position: absolute !important;
 
214
  button[role="tab"][aria-selected="true"],
215
  button[role="tab"].selected,
216
  .svelte-tabs button.selected {
217
+ color: var(--accent) !important;
218
  background: var(--surface-elev) !important;
219
+ box-shadow: 0 0 0 1px var(--border-hi), 0 0 12px var(--accent-glow) !important;
220
  font-weight: 500 !important;
221
  border-bottom: none !important;
222
  }
223
 
224
  /* =========================================================
225
+ TAB CONTENT
226
  ========================================================= */
227
 
228
  .tabitem {
 
234
  position: relative !important;
235
  }
236
 
237
+ .tabitem::before { display: none !important; }
 
 
238
 
239
  /* =========================================================
240
  BLOCKS / CARDS
 
243
  .gradio-container .gr-block,
244
  .gradio-container .gr-box,
245
  .gradio-container .gr-panel,
246
+ .gradio-container .gr-group,
247
+ .gradio-container .block,
248
+ .gradio-container .form,
249
+ .gradio-container .panel {
250
  background: var(--surface) !important;
251
  border: 1px solid var(--border) !important;
252
  border-radius: var(--radius-lg) !important;
253
+ box-shadow: 0 1px 0 rgba(255,255,255,0.02) inset !important;
254
  }
255
 
256
  /* =========================================================
257
+ LABELS
258
  ========================================================= */
259
 
260
  .gradio-container label,
 
269
  }
270
 
271
  /* =========================================================
272
+ INPUTS — make text VISIBLE
273
  ========================================================= */
274
 
275
  .gradio-container input,
 
282
  font-family: var(--font-display) !important;
283
  font-size: 0.9rem !important;
284
  padding: 10px 14px !important;
285
+ caret-color: var(--accent) !important;
 
286
  }
287
 
288
  .gradio-container input:hover,
 
307
 
308
  textarea {
309
  font-family: var(--font-display) !important;
310
+ font-size: 0.9rem !important;
311
  line-height: 1.6 !important;
312
  }
313
 
 
318
  .gradio-container button:not([role="tab"]) {
319
  font-family: var(--font-display) !important;
320
  font-weight: 500 !important;
321
+ padding: 10px 18px !important;
322
  border-radius: var(--radius) !important;
323
+ font-size: 0.9rem !important;
324
  letter-spacing: -0.005em !important;
325
  transition: all 0.15s ease !important;
326
  }
327
 
328
  button.primary {
329
+ background: var(--accent) !important;
330
+ color: #062b1f !important;
331
+ border: 1px solid var(--accent) !important;
332
+ box-shadow: 0 0 0 1px var(--accent), 0 0 16px var(--accent-glow) !important;
333
+ font-weight: 600 !important;
334
  }
335
 
336
  button.primary:hover {
337
+ background: #5fe5b0 !important;
338
+ border-color: #5fe5b0 !important;
339
  transform: translateY(-1px) !important;
340
+ box-shadow: 0 0 0 1px #5fe5b0, 0 0 24px var(--accent-glow) !important;
341
  }
342
 
343
  button.secondary {
 
352
  }
353
 
354
  /* =========================================================
355
+ MARKDOWN
356
  ========================================================= */
357
 
358
  .tabitem h1, .tabitem h2 {
 
374
  margin-top: 28px !important;
375
  margin-bottom: 12px !important;
376
  padding-bottom: 8px !important;
377
+ border-bottom: 1px solid var(--border) !important;
378
  }
379
 
380
  .tabitem h4 {
381
+ color: var(--accent) !important;
382
  font-family: var(--font-mono) !important;
383
  font-weight: 500 !important;
384
  font-size: 0.7rem !important;
 
388
  margin-bottom: 14px !important;
389
  }
390
 
391
+ .tabitem p, .tabitem li,
392
+ .gradio-container p, .gradio-container li {
393
  color: var(--ink-soft) !important;
394
  line-height: 1.65 !important;
395
  font-size: 0.92rem !important;
396
  }
397
 
398
+ .tabitem strong, .gradio-container strong {
399
  color: var(--ink) !important;
400
  font-weight: 600 !important;
401
  }
402
 
403
+ .tabitem code, .gradio-container code {
404
  background: var(--bg-2) !important;
405
  color: var(--accent) !important;
406
  padding: 2px 6px !important;
 
425
  font-size: 0.825rem !important;
426
  color: var(--ink) !important;
427
  font-family: var(--font-display) !important;
428
+ background: var(--surface) !important;
429
  }
430
 
431
  table thead th {
432
  background: var(--bg-1) !important;
433
+ color: var(--accent) !important;
434
  font-family: var(--font-mono) !important;
435
  font-weight: 500 !important;
436
  text-transform: uppercase !important;
 
444
  border-bottom: 1px solid var(--border-soft) !important;
445
  color: var(--ink-soft) !important;
446
  padding: 11px 14px !important;
447
+ background: var(--surface) !important;
448
  }
449
 
450
  table tbody tr:hover td {
 
456
  CHATBOT
457
  ========================================================= */
458
 
459
+ .gr-chatbot, .chatbot {
460
  min-height: 380px !important;
461
  background: var(--bg-1) !important;
462
  border: 1px solid var(--border) !important;
 
464
  padding: 8px !important;
465
  }
466
 
467
+ .gr-chatbot .message,
468
+ .chatbot .message {
469
  border: 1px solid var(--border-soft) !important;
470
  font-size: 0.9rem !important;
471
  line-height: 1.6 !important;
472
+ color: var(--ink) !important;
473
  }
474
 
475
+ .gr-chatbot .message.user,
476
+ .chatbot .message.user {
477
  background: var(--bg-2) !important;
478
  color: var(--ink) !important;
479
  border-radius: 12px 12px 4px 12px !important;
480
  border-color: var(--border) !important;
481
  }
482
 
483
+ .gr-chatbot .message.bot,
484
+ .chatbot .message.bot {
485
  background: var(--surface-elev) !important;
486
  color: var(--ink) !important;
487
  border-radius: 12px 12px 12px 4px !important;
 
489
  }
490
 
491
  /* =========================================================
492
+ EXAMPLE PILLS
493
  ========================================================= */
494
 
495
  .examples-row button {
 
502
  font-weight: 400 !important;
503
  text-transform: none !important;
504
  letter-spacing: -0.005em !important;
505
+ padding: 6px 14px !important;
 
506
  }
507
 
508
  .examples-row button:hover {
509
+ background: var(--accent-soft) !important;
510
+ color: var(--accent) !important;
511
+ border-color: var(--accent) !important;
512
  }
513
 
514
  /* =========================================================
515
+ PLOTS
516
  ========================================================= */
517
 
518
  .js-plotly-plot {
 
529
  }
530
 
531
  /* =========================================================
532
+ NUMBER INPUT (the big score)
533
  ========================================================= */
534
 
535
  [data-testid="number-input"] input,
 
537
  font-family: var(--font-mono) !important;
538
  font-size: 1.75rem !important;
539
  font-weight: 600 !important;
540
+ color: var(--accent) !important;
541
  background: var(--bg-1) !important;
542
  letter-spacing: -0.02em !important;
543
+ text-align: center !important;
544
  }
545
 
546
  /* =========================================================
 
556
  font-size: 0.75rem !important;
557
  }
558
 
559
+ footer a {
560
+ color: var(--ink-mute) !important;
561
+ }
562
+
563
  footer a:hover {
564
  color: var(--accent) !important;
565
  }
566
 
567
  /* =========================================================
568
+ CATCH-ALL: force readable text everywhere
569
  ========================================================= */
570
 
571
  .gradio-container,
 
592
  scrollbar-color: var(--border-hi) transparent;
593
  }
594
 
595
+ *::-webkit-scrollbar { width: 8px; height: 8px; }
596
+ *::-webkit-scrollbar-track { background: transparent; }
597
+ *::-webkit-scrollbar-thumb { background: var(--border); border-radius: 4px; }
598
+ *::-webkit-scrollbar-thumb:hover { background: var(--border-hi); }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
599
 
600
  ::selection {
601
  background: var(--accent-glow);