grasepard2 commited on
Commit
eefd3a8
·
verified ·
1 Parent(s): e4526b9

Update style.css

Browse files
Files changed (1) hide show
  1. style.css +136 -126
style.css CHANGED
@@ -1,40 +1,39 @@
1
  /* =========================================================
2
  CS1 GROUP 14 — JOB RISK ANALYZER
3
- Dark + colorful (cyan/violet/emerald/amber accents)
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
- /* Base deep navy instead of pure black */
10
- --bg: #0c1220;
11
- --bg-1: #131a2c;
12
- --bg-2: #1a2238;
13
- --bg-3: #232b44;
14
- --surface: #161d31;
15
- --surface-elev: #1d253c;
16
- --border: #2a3553;
17
- --border-soft: #1f2841;
18
- --border-hi: #3a4670;
19
-
20
- /* Text */
21
- --ink: #f1f5fc;
22
- --ink-soft: #b4bdd4;
23
- --ink-mute: #6f7a98;
24
-
25
- /* Accent palette — multiple colors that play together */
26
- --cyan: #22d3ee;
27
- --cyan-glow: rgba(34, 211, 238, 0.18);
28
- --violet: #a78bfa;
29
- --violet-glow:rgba(167, 139, 250, 0.18);
30
- --emerald: #34d399;
31
- --emerald-glow:rgba(52, 211, 153, 0.18);
32
- --amber: #fbbf24;
33
- --amber-glow: rgba(251, 191, 36, 0.18);
34
- --pink: #f472b6;
35
- --pink-glow: rgba(244, 114, 182, 0.18);
36
- --red: #f87171;
37
- --red-glow: rgba(248, 113, 113, 0.18);
38
 
39
  --radius: 8px;
40
  --radius-lg: 12px;
@@ -44,7 +43,7 @@
44
  }
45
 
46
  /* =========================================================
47
- PAGE BACKGROUND — deep navy with colored glows
48
  ========================================================= */
49
 
50
  html, body,
@@ -60,9 +59,9 @@ gradio-app, .gradio-app,
60
 
61
  gradio-app, .gradio-app, [data-testid="app"] {
62
  background-image:
63
- radial-gradient(ellipse 60% 40% at 15% 0%, rgba(167, 139, 250, 0.18), transparent 60%),
64
- radial-gradient(ellipse 50% 35% at 85% 10%, rgba(34, 211, 238, 0.14), transparent 60%),
65
- radial-gradient(ellipse 70% 40% at 50% 100%, rgba(52, 211, 153, 0.10), transparent 60%) !important;
66
  background-attachment: fixed !important;
67
  background-repeat: no-repeat !important;
68
  min-height: 100vh !important;
@@ -78,15 +77,13 @@ html, body {
78
  min-height: 100vh !important;
79
  }
80
 
81
- /* Subtle grid texture */
82
  body::before {
83
  content: '';
84
  position: fixed;
85
  inset: 0;
86
- background-image:
87
- linear-gradient(to right, rgba(167, 139, 250, 0.04) 1px, transparent 1px),
88
- linear-gradient(to bottom, rgba(167, 139, 250, 0.04) 1px, transparent 1px);
89
- background-size: 56px 56px;
90
  pointer-events: none;
91
  z-index: 0;
92
  }
@@ -102,7 +99,7 @@ body::before {
102
  }
103
 
104
  /* =========================================================
105
- HEADER — gradient title
106
  ========================================================= */
107
 
108
  #escp_title {
@@ -118,37 +115,36 @@ body::before {
118
  display: block !important;
119
  font-family: var(--font-mono) !important;
120
  font-size: 11px !important;
121
- color: var(--cyan) !important;
122
  letter-spacing: 0.05em !important;
123
  margin-bottom: 16px !important;
124
  text-transform: uppercase !important;
 
125
  }
126
 
127
  #escp_title h1 {
128
  font-family: var(--font-display) !important;
129
- font-size: 2.5rem !important;
130
  font-weight: 700 !important;
131
- letter-spacing: -0.035em !important;
132
  text-align: left !important;
133
  margin: 0 0 12px 0 !important;
134
- line-height: 1.1 !important;
135
- background: linear-gradient(135deg, #f1f5fc 0%, #a78bfa 50%, #22d3ee 100%) !important;
136
- -webkit-background-clip: text !important;
137
- background-clip: text !important;
138
- -webkit-text-fill-color: transparent !important;
139
- color: transparent !important;
140
  }
141
 
142
  #escp_title p, #escp_title em {
143
  color: var(--ink-soft) !important;
144
  text-align: left !important;
145
  font-style: normal !important;
146
- font-size: 0.95rem !important;
147
  font-weight: 400 !important;
148
  margin: 0 !important;
149
  }
150
 
151
- /* Pulsing emerald dot top-right */
152
  #escp_title::after {
153
  content: '' !important;
154
  position: absolute !important;
@@ -157,8 +153,8 @@ body::before {
157
  width: 8px !important;
158
  height: 8px !important;
159
  border-radius: 50% !important;
160
- background: var(--emerald) !important;
161
- box-shadow: 0 0 0 4px var(--emerald-glow), 0 0 12px var(--emerald) !important;
162
  animation: pulse-dot 2s ease-in-out infinite !important;
163
  }
164
 
@@ -168,7 +164,7 @@ body::before {
168
  }
169
 
170
  /* =========================================================
171
- TABS — fix visibility (this is what broke before)
172
  ========================================================= */
173
 
174
  .tabs > .tab-nav,
@@ -185,9 +181,9 @@ div[role="tablist"],
185
  gap: 2px !important;
186
  width: fit-content !important;
187
  max-width: 100% !important;
 
188
  }
189
 
190
- /* CRITICAL: ensure ALL tab buttons are visible (this is what broke) */
191
  .tabs > .tab-nav button,
192
  .tab-nav button,
193
  div[role="tablist"] button,
@@ -202,7 +198,7 @@ button[role="tab"],
202
  font-size: 0.875rem !important;
203
  border: none !important;
204
  background: transparent !important;
205
- padding: 8px 16px !important;
206
  border-radius: 6px !important;
207
  border-bottom: none !important;
208
  transition: color 0.15s, background 0.15s !important;
@@ -222,11 +218,11 @@ button[role="tab"]:hover {
222
  button[role="tab"][aria-selected="true"],
223
  button[role="tab"].selected,
224
  .svelte-tabs button.selected {
225
- color: var(--ink) !important;
226
- background: linear-gradient(135deg, var(--violet-glow), var(--cyan-glow)) !important;
227
- box-shadow: 0 0 0 1px var(--violet), inset 0 1px 0 rgba(255,255,255,0.1) !important;
228
  font-weight: 600 !important;
229
  border-bottom: none !important;
 
230
  }
231
 
232
  /* =========================================================
@@ -258,53 +254,53 @@ button[role="tab"].selected,
258
  background: var(--surface) !important;
259
  border: 1px solid var(--border) !important;
260
  border-radius: var(--radius-lg) !important;
261
- box-shadow: 0 1px 0 rgba(255,255,255,0.03) inset, 0 4px 12px rgba(0,0,0,0.25) !important;
262
  }
263
 
264
  /* =========================================================
265
- LABELS — colorful uppercase mono
266
  ========================================================= */
267
 
268
  .gradio-container label,
269
  .gradio-container .gr-label,
270
  .gradio-container span[data-testid="block-info"] {
271
- color: var(--cyan) !important;
272
  font-family: var(--font-mono) !important;
273
- font-weight: 500 !important;
274
  font-size: 0.7rem !important;
275
  text-transform: uppercase !important;
276
  letter-spacing: 0.08em !important;
277
  }
278
 
279
  /* =========================================================
280
- INPUTS
281
  ========================================================= */
282
 
283
  .gradio-container input,
284
  .gradio-container textarea,
285
  .gradio-container select {
286
- background: var(--bg-1) !important;
287
  border: 1px solid var(--border) !important;
288
  border-radius: var(--radius) !important;
289
  color: var(--ink) !important;
290
  font-family: var(--font-display) !important;
291
- font-size: 0.9rem !important;
292
- padding: 10px 14px !important;
293
- caret-color: var(--cyan) !important;
294
  }
295
 
296
  .gradio-container input:hover,
297
  .gradio-container textarea:hover {
298
- background: var(--bg-2) !important;
299
  border-color: var(--border-hi) !important;
300
  }
301
 
302
  .gradio-container input:focus,
303
  .gradio-container textarea:focus,
304
  .gradio-container select:focus {
305
- border-color: var(--violet) !important;
306
- background: var(--bg-1) !important;
307
- box-shadow: 0 0 0 3px var(--violet-glow) !important;
308
  outline: none !important;
309
  }
310
 
@@ -314,17 +310,17 @@ button[role="tab"].selected,
314
  }
315
 
316
  textarea {
317
- font-size: 0.9rem !important;
318
  line-height: 1.6 !important;
319
  }
320
 
321
  /* =========================================================
322
- BUTTONS — vibrant gradient primary
323
  ========================================================= */
324
 
325
  .gradio-container button:not([role="tab"]) {
326
  font-family: var(--font-display) !important;
327
- font-weight: 500 !important;
328
  padding: 11px 20px !important;
329
  border-radius: var(--radius) !important;
330
  font-size: 0.9rem !important;
@@ -333,17 +329,17 @@ textarea {
333
  }
334
 
335
  button.primary {
336
- background: linear-gradient(135deg, var(--violet) 0%, var(--cyan) 100%) !important;
337
- color: #0a0e1c !important;
338
- border: none !important;
339
- box-shadow: 0 0 16px var(--violet-glow), 0 0 24px var(--cyan-glow) !important;
340
- font-weight: 600 !important;
341
  }
342
 
343
  button.primary:hover {
344
- background: linear-gradient(135deg, #b89df9 0%, #4ee2f7 100%) !important;
 
345
  transform: translateY(-1px) !important;
346
- box-shadow: 0 0 24px var(--violet-glow), 0 0 32px var(--cyan-glow) !important;
347
  }
348
 
349
  button.secondary {
@@ -353,9 +349,9 @@ button.secondary {
353
  }
354
 
355
  button.secondary:hover {
356
- background: var(--bg-3) !important;
357
- border-color: var(--violet) !important;
358
- color: var(--violet) !important;
359
  }
360
 
361
  /* =========================================================
@@ -365,16 +361,16 @@ button.secondary:hover {
365
  .tabitem h1, .tabitem h2,
366
  .gradio-container h1, .gradio-container h2 {
367
  color: var(--ink) !important;
368
- font-weight: 600 !important;
369
  letter-spacing: -0.025em !important;
370
  }
371
 
372
- .tabitem h2 { font-size: 1.5rem !important; margin-top: 0 !important; }
373
 
374
  .tabitem h3, .gradio-container h3 {
375
  color: var(--ink) !important;
376
- font-weight: 500 !important;
377
- font-size: 0.95rem !important;
378
  margin-top: 28px !important;
379
  margin-bottom: 12px !important;
380
  padding-bottom: 8px !important;
@@ -382,9 +378,9 @@ button.secondary:hover {
382
  }
383
 
384
  .tabitem h4, .gradio-container h4 {
385
- color: var(--cyan) !important;
386
  font-family: var(--font-mono) !important;
387
- font-weight: 500 !important;
388
  font-size: 0.7rem !important;
389
  text-transform: uppercase !important;
390
  letter-spacing: 0.08em !important;
@@ -396,22 +392,23 @@ button.secondary:hover {
396
  .gradio-container p, .gradio-container li {
397
  color: var(--ink-soft) !important;
398
  line-height: 1.65 !important;
399
- font-size: 0.92rem !important;
400
  }
401
 
402
  .tabitem strong, .gradio-container strong {
403
  color: var(--ink) !important;
404
- font-weight: 600 !important;
405
  }
406
 
407
  .tabitem code, .gradio-container code {
408
- background: var(--bg-2) !important;
409
- color: var(--amber) !important;
410
  padding: 2px 6px !important;
411
  border-radius: 4px !important;
412
  font-size: 0.85em !important;
413
  font-family: var(--font-mono) !important;
414
  border: 1px solid var(--border-soft) !important;
 
415
  }
416
 
417
  /* =========================================================
@@ -426,7 +423,7 @@ button.secondary:hover {
426
  }
427
 
428
  table {
429
- font-size: 0.825rem !important;
430
  color: var(--ink) !important;
431
  font-family: var(--font-display) !important;
432
  background: var(--surface) !important;
@@ -434,13 +431,13 @@ table {
434
 
435
  table thead th {
436
  background: var(--bg-1) !important;
437
- color: var(--violet) !important;
438
  font-family: var(--font-mono) !important;
439
- font-weight: 500 !important;
440
  text-transform: uppercase !important;
441
  font-size: 0.7rem !important;
442
  letter-spacing: 0.08em !important;
443
- border-bottom: 1px solid var(--border) !important;
444
  padding: 12px 14px !important;
445
  }
446
 
@@ -457,7 +454,7 @@ table tbody tr:hover td {
457
  }
458
 
459
  /* =========================================================
460
- CHATBOT
461
  ========================================================= */
462
 
463
  .gr-chatbot, .chatbot {
@@ -465,29 +462,42 @@ table tbody tr:hover td {
465
  background: var(--bg-1) !important;
466
  border: 1px solid var(--border) !important;
467
  border-radius: var(--radius-lg) !important;
468
- padding: 8px !important;
469
  }
470
 
471
  .gr-chatbot .message,
472
  .chatbot .message {
473
  border: 1px solid var(--border-soft) !important;
474
- font-size: 0.9rem !important;
475
  line-height: 1.6 !important;
476
  color: var(--ink) !important;
 
477
  }
478
 
479
  .gr-chatbot .message.user,
480
  .chatbot .message.user {
481
- background: linear-gradient(135deg, var(--violet-glow), transparent) !important;
482
- border-radius: 12px 12px 4px 12px !important;
483
- border-color: var(--violet) !important;
 
 
 
 
 
 
484
  }
485
 
486
  .gr-chatbot .message.bot,
487
  .chatbot .message.bot {
488
  background: var(--surface-elev) !important;
489
- border-radius: 12px 12px 12px 4px !important;
490
- border-left: 2px solid var(--cyan) !important;
 
 
 
 
 
 
491
  }
492
 
493
  /* =========================================================
@@ -495,22 +505,22 @@ table tbody tr:hover td {
495
  ========================================================= */
496
 
497
  .examples-row button {
498
- background: var(--bg-1) !important;
499
- color: var(--ink-soft) !important;
500
  border: 1px solid var(--border) !important;
501
  border-radius: 999px !important;
502
  font-family: var(--font-display) !important;
503
- font-size: 0.8rem !important;
504
- font-weight: 400 !important;
505
  text-transform: none !important;
506
  letter-spacing: -0.005em !important;
507
- padding: 6px 14px !important;
508
  }
509
 
510
  .examples-row button:hover {
511
- background: var(--violet-glow) !important;
512
- color: var(--violet) !important;
513
- border-color: var(--violet) !important;
514
  }
515
 
516
  /* =========================================================
@@ -531,16 +541,16 @@ table tbody tr:hover td {
531
  }
532
 
533
  /* =========================================================
534
- SCORE NUMBER (big metric)
535
  ========================================================= */
536
 
537
  [data-testid="number-input"] input,
538
  .gradio-container [type="number"] {
539
  font-family: var(--font-mono) !important;
540
  font-size: 1.75rem !important;
541
- font-weight: 600 !important;
542
- color: var(--cyan) !important;
543
- background: var(--bg-1) !important;
544
  letter-spacing: -0.02em !important;
545
  text-align: center !important;
546
  }
@@ -559,15 +569,15 @@ header, header * {
559
  }
560
 
561
  footer a { color: var(--ink-mute) !important; }
562
- footer a:hover { color: var(--cyan) !important; }
563
 
564
  /* =========================================================
565
- FORCE READABLE TEXT EVERYWHERE
566
  ========================================================= */
567
 
568
  .gradio-container,
569
  .gradio-container * {
570
- color-scheme: dark !important;
571
  }
572
 
573
  .gradio-container .prose,
@@ -588,10 +598,10 @@ footer a:hover { color: var(--cyan) !important; }
588
  }
589
  *::-webkit-scrollbar { width: 8px; height: 8px; }
590
  *::-webkit-scrollbar-track { background: transparent; }
591
- *::-webkit-scrollbar-thumb { background: var(--border); border-radius: 4px; }
592
- *::-webkit-scrollbar-thumb:hover { background: var(--violet); }
593
 
594
  ::selection {
595
- background: var(--violet-glow);
596
  color: var(--ink);
597
- }
 
1
  /* =========================================================
2
  CS1 GROUP 14 — JOB RISK ANALYZER
3
+ Warm cream + deep navy + coral accent — editorial light theme
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
+ /* Cream base */
10
+ --bg: #f7f3ec;
11
+ --bg-1: #f1ebe0;
12
+ --bg-2: #ebe3d4;
13
+ --surface: #fdfaf3;
14
+ --surface-elev: #ffffff;
15
+ --border: #d9cfb9;
16
+ --border-soft: #e6dcc7;
17
+ --border-hi: #c4b89f;
18
+
19
+ /* Navy text */
20
+ --ink: #1a2238;
21
+ --ink-soft: #4a5475;
22
+ --ink-mute: #8a9099;
23
+
24
+ /* Bold accents */
25
+ --coral: #e85a4f;
26
+ --coral-glow: rgba(232, 90, 79, 0.15);
27
+ --coral-soft: rgba(232, 90, 79, 0.08);
28
+ --navy: #1a2238;
29
+ --teal: #2a9d8f;
30
+ --teal-glow: rgba(42, 157, 143, 0.18);
31
+ --amber: #e9a23b;
32
+ --amber-glow: rgba(233, 162, 59, 0.18);
33
+ --plum: #7d4e8a;
34
+ --plum-glow: rgba(125, 78, 138, 0.18);
35
+ --red: #c53030;
36
+ --green: #2f855a;
 
37
 
38
  --radius: 8px;
39
  --radius-lg: 12px;
 
43
  }
44
 
45
  /* =========================================================
46
+ PAGE BACKGROUND — warm cream with subtle texture
47
  ========================================================= */
48
 
49
  html, body,
 
59
 
60
  gradio-app, .gradio-app, [data-testid="app"] {
61
  background-image:
62
+ radial-gradient(ellipse 60% 40% at 15% 0%, rgba(232, 90, 79, 0.08), transparent 60%),
63
+ radial-gradient(ellipse 50% 35% at 85% 10%, rgba(42, 157, 143, 0.06), transparent 60%),
64
+ radial-gradient(ellipse 70% 40% at 50% 100%, rgba(125, 78, 138, 0.05), transparent 60%) !important;
65
  background-attachment: fixed !important;
66
  background-repeat: no-repeat !important;
67
  min-height: 100vh !important;
 
77
  min-height: 100vh !important;
78
  }
79
 
80
+ /* Subtle dot grid texture */
81
  body::before {
82
  content: '';
83
  position: fixed;
84
  inset: 0;
85
+ background-image: radial-gradient(circle, rgba(26, 34, 56, 0.045) 1px, transparent 1px);
86
+ background-size: 22px 22px;
 
 
87
  pointer-events: none;
88
  z-index: 0;
89
  }
 
99
  }
100
 
101
  /* =========================================================
102
+ HEADER
103
  ========================================================= */
104
 
105
  #escp_title {
 
115
  display: block !important;
116
  font-family: var(--font-mono) !important;
117
  font-size: 11px !important;
118
+ color: var(--coral) !important;
119
  letter-spacing: 0.05em !important;
120
  margin-bottom: 16px !important;
121
  text-transform: uppercase !important;
122
+ font-weight: 600 !important;
123
  }
124
 
125
  #escp_title h1 {
126
  font-family: var(--font-display) !important;
127
+ font-size: 2.75rem !important;
128
  font-weight: 700 !important;
129
+ letter-spacing: -0.04em !important;
130
  text-align: left !important;
131
  margin: 0 0 12px 0 !important;
132
+ line-height: 1.05 !important;
133
+ color: var(--ink) !important;
134
+ background: none !important;
135
+ -webkit-text-fill-color: var(--ink) !important;
 
 
136
  }
137
 
138
  #escp_title p, #escp_title em {
139
  color: var(--ink-soft) !important;
140
  text-align: left !important;
141
  font-style: normal !important;
142
+ font-size: 1rem !important;
143
  font-weight: 400 !important;
144
  margin: 0 !important;
145
  }
146
 
147
+ /* Pulsing teal status dot top-right */
148
  #escp_title::after {
149
  content: '' !important;
150
  position: absolute !important;
 
153
  width: 8px !important;
154
  height: 8px !important;
155
  border-radius: 50% !important;
156
+ background: var(--teal) !important;
157
+ box-shadow: 0 0 0 4px var(--teal-glow), 0 0 12px var(--teal) !important;
158
  animation: pulse-dot 2s ease-in-out infinite !important;
159
  }
160
 
 
164
  }
165
 
166
  /* =========================================================
167
+ TABS — solid pill segmented control
168
  ========================================================= */
169
 
170
  .tabs > .tab-nav,
 
181
  gap: 2px !important;
182
  width: fit-content !important;
183
  max-width: 100% !important;
184
+ box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset !important;
185
  }
186
 
 
187
  .tabs > .tab-nav button,
188
  .tab-nav button,
189
  div[role="tablist"] button,
 
198
  font-size: 0.875rem !important;
199
  border: none !important;
200
  background: transparent !important;
201
+ padding: 8px 18px !important;
202
  border-radius: 6px !important;
203
  border-bottom: none !important;
204
  transition: color 0.15s, background 0.15s !important;
 
218
  button[role="tab"][aria-selected="true"],
219
  button[role="tab"].selected,
220
  .svelte-tabs button.selected {
221
+ color: #ffffff !important;
222
+ background: var(--ink) !important;
 
223
  font-weight: 600 !important;
224
  border-bottom: none !important;
225
+ box-shadow: 0 1px 3px rgba(26, 34, 56, 0.25) !important;
226
  }
227
 
228
  /* =========================================================
 
254
  background: var(--surface) !important;
255
  border: 1px solid var(--border) !important;
256
  border-radius: var(--radius-lg) !important;
257
+ box-shadow: 0 1px 0 rgba(255,255,255,0.7) inset, 0 2px 8px rgba(26, 34, 56, 0.04) !important;
258
  }
259
 
260
  /* =========================================================
261
+ LABELS — coral mono caps
262
  ========================================================= */
263
 
264
  .gradio-container label,
265
  .gradio-container .gr-label,
266
  .gradio-container span[data-testid="block-info"] {
267
+ color: var(--coral) !important;
268
  font-family: var(--font-mono) !important;
269
+ font-weight: 600 !important;
270
  font-size: 0.7rem !important;
271
  text-transform: uppercase !important;
272
  letter-spacing: 0.08em !important;
273
  }
274
 
275
  /* =========================================================
276
+ INPUTS — clean cream
277
  ========================================================= */
278
 
279
  .gradio-container input,
280
  .gradio-container textarea,
281
  .gradio-container select {
282
+ background: var(--surface-elev) !important;
283
  border: 1px solid var(--border) !important;
284
  border-radius: var(--radius) !important;
285
  color: var(--ink) !important;
286
  font-family: var(--font-display) !important;
287
+ font-size: 0.95rem !important;
288
+ padding: 11px 14px !important;
289
+ caret-color: var(--coral) !important;
290
  }
291
 
292
  .gradio-container input:hover,
293
  .gradio-container textarea:hover {
294
+ background: var(--surface-elev) !important;
295
  border-color: var(--border-hi) !important;
296
  }
297
 
298
  .gradio-container input:focus,
299
  .gradio-container textarea:focus,
300
  .gradio-container select:focus {
301
+ border-color: var(--coral) !important;
302
+ background: var(--surface-elev) !important;
303
+ box-shadow: 0 0 0 3px var(--coral-glow) !important;
304
  outline: none !important;
305
  }
306
 
 
310
  }
311
 
312
  textarea {
313
+ font-size: 0.95rem !important;
314
  line-height: 1.6 !important;
315
  }
316
 
317
  /* =========================================================
318
+ BUTTONS
319
  ========================================================= */
320
 
321
  .gradio-container button:not([role="tab"]) {
322
  font-family: var(--font-display) !important;
323
+ font-weight: 600 !important;
324
  padding: 11px 20px !important;
325
  border-radius: var(--radius) !important;
326
  font-size: 0.9rem !important;
 
329
  }
330
 
331
  button.primary {
332
+ background: var(--coral) !important;
333
+ color: #ffffff !important;
334
+ border: 1px solid var(--coral) !important;
335
+ box-shadow: 0 2px 6px var(--coral-glow), 0 1px 0 rgba(255,255,255,0.3) inset !important;
 
336
  }
337
 
338
  button.primary:hover {
339
+ background: #d94a3f !important;
340
+ border-color: #d94a3f !important;
341
  transform: translateY(-1px) !important;
342
+ box-shadow: 0 4px 12px var(--coral-glow) !important;
343
  }
344
 
345
  button.secondary {
 
349
  }
350
 
351
  button.secondary:hover {
352
+ background: var(--bg-1) !important;
353
+ border-color: var(--coral) !important;
354
+ color: var(--coral) !important;
355
  }
356
 
357
  /* =========================================================
 
361
  .tabitem h1, .tabitem h2,
362
  .gradio-container h1, .gradio-container h2 {
363
  color: var(--ink) !important;
364
+ font-weight: 700 !important;
365
  letter-spacing: -0.025em !important;
366
  }
367
 
368
+ .tabitem h2 { font-size: 1.6rem !important; margin-top: 0 !important; }
369
 
370
  .tabitem h3, .gradio-container h3 {
371
  color: var(--ink) !important;
372
+ font-weight: 600 !important;
373
+ font-size: 1.05rem !important;
374
  margin-top: 28px !important;
375
  margin-bottom: 12px !important;
376
  padding-bottom: 8px !important;
 
378
  }
379
 
380
  .tabitem h4, .gradio-container h4 {
381
+ color: var(--coral) !important;
382
  font-family: var(--font-mono) !important;
383
+ font-weight: 600 !important;
384
  font-size: 0.7rem !important;
385
  text-transform: uppercase !important;
386
  letter-spacing: 0.08em !important;
 
392
  .gradio-container p, .gradio-container li {
393
  color: var(--ink-soft) !important;
394
  line-height: 1.65 !important;
395
+ font-size: 0.95rem !important;
396
  }
397
 
398
  .tabitem strong, .gradio-container strong {
399
  color: var(--ink) !important;
400
+ font-weight: 700 !important;
401
  }
402
 
403
  .tabitem code, .gradio-container code {
404
+ background: var(--bg-1) !important;
405
+ color: var(--plum) !important;
406
  padding: 2px 6px !important;
407
  border-radius: 4px !important;
408
  font-size: 0.85em !important;
409
  font-family: var(--font-mono) !important;
410
  border: 1px solid var(--border-soft) !important;
411
+ font-weight: 500 !important;
412
  }
413
 
414
  /* =========================================================
 
423
  }
424
 
425
  table {
426
+ font-size: 0.85rem !important;
427
  color: var(--ink) !important;
428
  font-family: var(--font-display) !important;
429
  background: var(--surface) !important;
 
431
 
432
  table thead th {
433
  background: var(--bg-1) !important;
434
+ color: var(--ink) !important;
435
  font-family: var(--font-mono) !important;
436
+ font-weight: 600 !important;
437
  text-transform: uppercase !important;
438
  font-size: 0.7rem !important;
439
  letter-spacing: 0.08em !important;
440
+ border-bottom: 2px solid var(--ink) !important;
441
  padding: 12px 14px !important;
442
  }
443
 
 
454
  }
455
 
456
  /* =========================================================
457
+ CHATBOT — readable bubbles, dark text
458
  ========================================================= */
459
 
460
  .gr-chatbot, .chatbot {
 
462
  background: var(--bg-1) !important;
463
  border: 1px solid var(--border) !important;
464
  border-radius: var(--radius-lg) !important;
465
+ padding: 12px !important;
466
  }
467
 
468
  .gr-chatbot .message,
469
  .chatbot .message {
470
  border: 1px solid var(--border-soft) !important;
471
+ font-size: 0.92rem !important;
472
  line-height: 1.6 !important;
473
  color: var(--ink) !important;
474
+ padding: 12px 14px !important;
475
  }
476
 
477
  .gr-chatbot .message.user,
478
  .chatbot .message.user {
479
+ background: var(--ink) !important;
480
+ color: #ffffff !important;
481
+ border-radius: 14px 14px 4px 14px !important;
482
+ border-color: var(--ink) !important;
483
+ }
484
+
485
+ .gr-chatbot .message.user *,
486
+ .chatbot .message.user * {
487
+ color: #ffffff !important;
488
  }
489
 
490
  .gr-chatbot .message.bot,
491
  .chatbot .message.bot {
492
  background: var(--surface-elev) !important;
493
+ color: var(--ink) !important;
494
+ border-radius: 14px 14px 14px 4px !important;
495
+ border-left: 3px solid var(--coral) !important;
496
+ }
497
+
498
+ .gr-chatbot .message.bot *,
499
+ .chatbot .message.bot * {
500
+ color: var(--ink) !important;
501
  }
502
 
503
  /* =========================================================
 
505
  ========================================================= */
506
 
507
  .examples-row button {
508
+ background: var(--surface-elev) !important;
509
+ color: var(--ink) !important;
510
  border: 1px solid var(--border) !important;
511
  border-radius: 999px !important;
512
  font-family: var(--font-display) !important;
513
+ font-size: 0.85rem !important;
514
+ font-weight: 500 !important;
515
  text-transform: none !important;
516
  letter-spacing: -0.005em !important;
517
+ padding: 7px 14px !important;
518
  }
519
 
520
  .examples-row button:hover {
521
+ background: var(--coral-soft) !important;
522
+ color: var(--coral) !important;
523
+ border-color: var(--coral) !important;
524
  }
525
 
526
  /* =========================================================
 
541
  }
542
 
543
  /* =========================================================
544
+ SCORE NUMBER
545
  ========================================================= */
546
 
547
  [data-testid="number-input"] input,
548
  .gradio-container [type="number"] {
549
  font-family: var(--font-mono) !important;
550
  font-size: 1.75rem !important;
551
+ font-weight: 700 !important;
552
+ color: var(--coral) !important;
553
+ background: var(--surface-elev) !important;
554
  letter-spacing: -0.02em !important;
555
  text-align: center !important;
556
  }
 
569
  }
570
 
571
  footer a { color: var(--ink-mute) !important; }
572
+ footer a:hover { color: var(--coral) !important; }
573
 
574
  /* =========================================================
575
+ FORCE LIGHT THEME
576
  ========================================================= */
577
 
578
  .gradio-container,
579
  .gradio-container * {
580
+ color-scheme: light !important;
581
  }
582
 
583
  .gradio-container .prose,
 
598
  }
599
  *::-webkit-scrollbar { width: 8px; height: 8px; }
600
  *::-webkit-scrollbar-track { background: transparent; }
601
+ *::-webkit-scrollbar-thumb { background: var(--border-hi); border-radius: 4px; }
602
+ *::-webkit-scrollbar-thumb:hover { background: var(--coral); }
603
 
604
  ::selection {
605
+ background: var(--coral-glow);
606
  color: var(--ink);
607
+ }