salihfurkaan commited on
Commit
a811ad0
·
1 Parent(s): 5bbd0ea

Refine dark professional UI with stronger contrast and polished hero section

Browse files
Files changed (1) hide show
  1. app.py +60 -45
app.py CHANGED
@@ -21,14 +21,14 @@ CUSTOM_CSS = """
21
 
22
  body {
23
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
24
- background: radial-gradient(circle at top, #111827 0%, #0f172a 40%, #111827 100%);
25
  color: #e2e8f0;
26
  }
27
 
28
  .gradio-container {
29
  max-width: 1340px;
30
  margin: 0 auto;
31
- padding: 1.5rem 1rem 2rem;
32
  color: #e2e8f0;
33
  }
34
 
@@ -43,12 +43,12 @@ body {
43
  }
44
 
45
  .hero-banner {
46
- border-radius: 20px;
47
- padding: 2.3rem;
48
- background: linear-gradient(135deg, #111827 0%, #1f2937 100%);
49
- color: #f8fafc;
50
- box-shadow: 0 30px 70px rgba(15, 23, 42, 0.32);
51
- margin-bottom: 1.5rem;
52
  }
53
 
54
  .hero-banner h1,
@@ -59,49 +59,52 @@ body {
59
 
60
  .hero-banner h1 {
61
  margin: 0;
62
- font-size: clamp(2rem, 2.5vw, 3.2rem);
63
- line-height: 1.08;
 
64
  }
65
 
66
  .hero-banner p {
67
  margin: 1rem 0 0;
68
  max-width: 760px;
69
- color: rgba(248,250,252,0.9);
70
  font-size: 1.05rem;
71
  line-height: 1.75;
72
  }
73
 
74
  .hero-pill {
75
  display: inline-flex;
 
76
  padding: 0.55rem 0.95rem;
77
  border-radius: 999px;
78
- background: rgba(255,255,255,0.12);
79
- border: 1px solid rgba(255,255,255,0.12);
80
- font-size: 0.95rem;
 
81
  font-weight: 600;
82
  margin-top: 1rem;
83
  }
84
 
85
  .panel-card,
86
  .dashboard-card {
87
- border-radius: 18px;
88
- background: rgba(15, 23, 42, 0.92);
89
- border: 1px solid rgba(148,163,184,0.12);
90
- box-shadow: 0 20px 45px rgba(15,23,42,0.25);
91
- padding: 1.75rem;
92
  color: #e2e8f0;
93
  }
94
 
95
  .panel-card {
96
- margin-bottom: 1.25rem;
97
  }
98
 
99
  .panel-card h3,
100
  .dashboard-card h3 {
101
  margin-top: 0;
102
- font-size: 1.28rem;
103
  letter-spacing: -0.02em;
104
- color: #111827 !important;
105
  }
106
 
107
  .panel-card p,
@@ -110,16 +113,16 @@ body {
110
  .dashboard-card li,
111
  .gradio-container .gr-markdown,
112
  .gradio-container .gr-html {
113
- color: #1f2937 !important;
114
- line-height: 1.7;
115
  }
116
 
117
  .status-success,
118
  .status-warning,
119
  .status-error {
120
- border-left: 5px solid transparent !important;
121
- background: rgba(15, 23, 42, 0.94) !important;
122
- border: 1px solid rgba(148,163,184,0.10) !important;
123
  }
124
 
125
  .status-success {
@@ -153,7 +156,7 @@ body {
153
  .metric-val {
154
  font-family: 'JetBrains Mono', monospace;
155
  font-weight: 700;
156
- font-size: 1.3rem;
157
  color: #e2e8f0;
158
  letter-spacing: 0.02em;
159
  }
@@ -168,13 +171,20 @@ body {
168
  }
169
 
170
  .gradio-container .gr-button.primary {
171
- background: linear-gradient(135deg, #4f46e5 0%, #4338ca 100%) !important;
172
  color: #ffffff !important;
173
- box-shadow: 0 18px 40px rgba(67,56,202,0.22) !important;
 
174
  }
175
 
176
  .gradio-container .gr-button.primary:hover {
177
- background: linear-gradient(135deg, #4338ca 0%, #3730a3 100%) !important;
 
 
 
 
 
 
178
  }
179
 
180
  .gradio-container input[type="text"],
@@ -185,10 +195,10 @@ body {
185
  .gradio-container .gr-radio,
186
  .gradio-container .gr-checkbox {
187
  border-radius: 18px !important;
188
- border: 1px solid rgba(148,163,184,0.25) !important;
189
- box-shadow: inset 0 1px 2px rgba(15,23,42,0.12) !important;
190
  color: #e2e8f0 !important;
191
- background: rgba(15,23,42,0.9) !important;
192
  }
193
 
194
  .gradio-container label,
@@ -201,12 +211,17 @@ body {
201
  margin-top: 1rem !important;
202
  }
203
 
204
- .gradio-container .gr-block {
205
- gap: 1.25rem !important;
206
  }
207
 
208
- .gradio-container .gr-button.secondary {
209
- color: #e2e8f0 !important;
 
 
 
 
 
210
  }
211
  """
212
 
@@ -427,14 +442,14 @@ with gr.Blocks(theme=gr.themes.Default(primary_hue="indigo", font=[gr.themes.Goo
427
  gr.HTML("""
428
  <div class='hero-banner'>
429
  <div style='max-width: 980px;'>
430
- <div style='margin-bottom: 0.8rem; color: rgba(248,250,252,0.88); font-size: 0.95rem; font-weight: 600;'>Architecture profiling for modular model deployments</div>
431
  <h1>Modular Model Composition Explorer</h1>
432
- <p>Compare base model architectures and adapters, identify compatibility gaps, and evaluate memory requirements with a clean, professional interface.</p>
433
- <div style='display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.5rem; color: rgba(248,250,252,0.85); font-size: 0.94rem;'>
434
- <span>HF Hub compatible</span>
435
- <span>PEFT-aware analysis</span>
436
- <span>Memory planning</span>
437
- <span>Deployment-ready metrics</span>
438
  </div>
439
  </div>
440
  </div>
 
21
 
22
  body {
23
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
24
+ background: radial-gradient(circle at top, #020611 0%, #08101f 32%, #0b1426 100%);
25
  color: #e2e8f0;
26
  }
27
 
28
  .gradio-container {
29
  max-width: 1340px;
30
  margin: 0 auto;
31
+ padding: 2rem 1.25rem 2.5rem;
32
  color: #e2e8f0;
33
  }
34
 
 
43
  }
44
 
45
  .hero-banner {
46
+ border-radius: 28px;
47
+ padding: 2.75rem 2.5rem;
48
+ background: rgba(15, 23, 42, 0.96);
49
+ border: 1px solid rgba(148, 163, 184, 0.12);
50
+ box-shadow: 0 30px 90px rgba(15, 23, 42, 0.42);
51
+ margin-bottom: 1.8rem;
52
  }
53
 
54
  .hero-banner h1,
 
59
 
60
  .hero-banner h1 {
61
  margin: 0;
62
+ font-size: clamp(2.8rem, 3vw, 4.2rem);
63
+ line-height: 1.02;
64
+ letter-spacing: -0.04em;
65
  }
66
 
67
  .hero-banner p {
68
  margin: 1rem 0 0;
69
  max-width: 760px;
70
+ color: rgba(226, 232, 240, 0.88);
71
  font-size: 1.05rem;
72
  line-height: 1.75;
73
  }
74
 
75
  .hero-pill {
76
  display: inline-flex;
77
+ align-items: center;
78
  padding: 0.55rem 0.95rem;
79
  border-radius: 999px;
80
+ background: rgba(255, 255, 255, 0.08);
81
+ border: 1px solid rgba(255, 255, 255, 0.12);
82
+ color: rgba(226, 232, 240, 0.85);
83
+ font-size: 0.92rem;
84
  font-weight: 600;
85
  margin-top: 1rem;
86
  }
87
 
88
  .panel-card,
89
  .dashboard-card {
90
+ border-radius: 22px;
91
+ background: rgba(15, 23, 42, 0.9);
92
+ border: 1px solid rgba(148, 163, 184, 0.14);
93
+ box-shadow: 0 22px 55px rgba(15, 23, 42, 0.26);
94
+ padding: 2rem;
95
  color: #e2e8f0;
96
  }
97
 
98
  .panel-card {
99
+ margin-bottom: 1.5rem;
100
  }
101
 
102
  .panel-card h3,
103
  .dashboard-card h3 {
104
  margin-top: 0;
105
+ font-size: 1.45rem;
106
  letter-spacing: -0.02em;
107
+ color: #f8fafc !important;
108
  }
109
 
110
  .panel-card p,
 
113
  .dashboard-card li,
114
  .gradio-container .gr-markdown,
115
  .gradio-container .gr-html {
116
+ color: #cbd5e1 !important;
117
+ line-height: 1.75;
118
  }
119
 
120
  .status-success,
121
  .status-warning,
122
  .status-error {
123
+ border-left: 4px solid transparent !important;
124
+ background: rgba(15, 23, 42, 0.92) !important;
125
+ border: 1px solid rgba(148, 163, 184, 0.12) !important;
126
  }
127
 
128
  .status-success {
 
156
  .metric-val {
157
  font-family: 'JetBrains Mono', monospace;
158
  font-weight: 700;
159
+ font-size: 1.35rem;
160
  color: #e2e8f0;
161
  letter-spacing: 0.02em;
162
  }
 
171
  }
172
 
173
  .gradio-container .gr-button.primary {
174
+ background: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%) !important;
175
  color: #ffffff !important;
176
+ box-shadow: 0 18px 40px rgba(67, 56, 202, 0.28) !important;
177
+ border: none !important;
178
  }
179
 
180
  .gradio-container .gr-button.primary:hover {
181
+ background: linear-gradient(135deg, #4f46e5 0%, #4338ca 100%) !important;
182
+ }
183
+
184
+ .gradio-container .gr-button.secondary {
185
+ background: rgba(255, 255, 255, 0.06) !important;
186
+ border: 1px solid rgba(255, 255, 255, 0.12) !important;
187
+ color: #e2e8f0 !important;
188
  }
189
 
190
  .gradio-container input[type="text"],
 
195
  .gradio-container .gr-radio,
196
  .gradio-container .gr-checkbox {
197
  border-radius: 18px !important;
198
+ border: 1px solid rgba(148, 163, 184, 0.22) !important;
199
+ box-shadow: inset 0 1px 2px rgba(255, 255, 255, 0.05) !important;
200
  color: #e2e8f0 !important;
201
+ background: rgba(15, 23, 42, 0.95) !important;
202
  }
203
 
204
  .gradio-container label,
 
211
  margin-top: 1rem !important;
212
  }
213
 
214
+ .gradio-container .gr-tabs .gr-tab {
215
+ background: transparent !important;
216
  }
217
 
218
+ .gradio-container .gr-tabs .gr-tab--selected {
219
+ background: rgba(255, 255, 255, 0.06) !important;
220
+ border-bottom: 2px solid #6366f1 !important;
221
+ }
222
+
223
+ .gradio-container .gr-block {
224
+ gap: 1.5rem !important;
225
  }
226
  """
227
 
 
442
  gr.HTML("""
443
  <div class='hero-banner'>
444
  <div style='max-width: 980px;'>
445
+ <div style='margin-bottom: 0.8rem; color: rgba(248,250,252,0.78); font-size: 0.95rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase;'>Architecture profiling for modular deployment</div>
446
  <h1>Modular Model Composition Explorer</h1>
447
+ <p>Analyze base model and adapter compatibility, surface structural mismatches, and predict memory requirements with a premium dark interface.</p>
448
+ <div style='display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.6rem;'>
449
+ <span class='hero-pill'>HF Hub compatibility</span>
450
+ <span class='hero-pill'>PEFT-compatible audit</span>
451
+ <span class='hero-pill'>Resource planning</span>
452
+ <span class='hero-pill'>Deployment insights</span>
453
  </div>
454
  </div>
455
  </div>