siyah1 commited on
Commit
81c7dcf
·
verified ·
1 Parent(s): 89287c4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +108 -302
app.py CHANGED
@@ -29,334 +29,140 @@ st.markdown("""
29
  # Enhanced CSS for a more beautiful Google DeepMind-inspired styling with green background
30
  st.markdown("""
31
  <style>
32
- /* Global font and color scheme */
33
- @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
34
-
35
- html, body, [class*="css"] {
36
- font-family: 'Inter', sans-serif;
37
- }
38
-
39
- /* Background and main container styling - Changed to green gradient */
40
- .main {
41
- background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
42
- padding: 0;
43
- }
44
-
45
- .main .block-container {
46
- padding-top: 2rem;
47
- padding-bottom: 3rem;
48
- max-width: 1300px;
49
- }
50
-
51
- /* Header styling */
52
- h1 {
53
- color: #0b5027;
54
- font-weight: 700 !important;
55
- margin-bottom: 1rem !important;
56
- letter-spacing: -0.5px;
57
- font-size: 2.8rem !important;
58
  }
59
-
60
- h2 {
61
- font-weight: 600 !important;
62
- color: #1b5e20;
63
- letter-spacing: -0.3px;
64
- font-size: 1.8rem !important;
65
- margin-top: 1.5rem !important;
66
  }
67
-
68
- h3 {
69
- font-weight: 600 !important;
70
- color: #2e7d32;
71
- letter-spacing: -0.2px;
72
- font-size: 1.4rem !important;
73
  }
74
-
75
- /* Card-like sections */
76
  .card {
77
- background-color: white;
78
- border-radius: 16px;
79
- padding: 2rem;
80
- box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
81
- margin-bottom: 2rem;
82
- border: 1px solid rgba(240, 240, 240, 0.9);
83
- transition: all 0.3s ease;
84
- }
85
-
86
- .card:hover {
87
- box-shadow: 0 12px 36px rgba(0, 0, 0, 0.12);
88
- transform: translateY(-3px);
89
- }
90
-
91
- /* Button styling - Changed to green gradient */
92
- .stButton > button {
93
- background: linear-gradient(90deg, #2e7d32, #1b5e20);
94
- color: white;
95
- border: none;
96
- border-radius: 8px;
97
- padding: 0.8rem 1.5rem;
98
- font-weight: 500;
99
- transition: all 0.3s;
100
- width: 100%;
101
- text-transform: uppercase;
102
- letter-spacing: 0.5px;
103
- font-size: 1rem;
104
- box-shadow: 0 4px 12px rgba(46, 125, 50, 0.3);
105
- }
106
-
107
- .stButton > button:hover {
108
- background: linear-gradient(90deg, #388e3c, #2e7d32);
109
- box-shadow: 0 6px 16px rgba(46, 125, 50, 0.4);
110
- transform: translateY(-2px);
111
- }
112
-
113
- .stButton > button:active {
114
- transform: translateY(1px);
115
- }
116
-
117
- /* Input field styling */
118
- .stTextInput input {
119
- border-radius: 8px;
120
- border: 2px solid #E0E0E0;
121
- padding: 1rem;
122
- font-size: 1rem;
123
- transition: all 0.3s;
124
- }
125
-
126
- .stTextInput input:focus {
127
- border-color: #2e7d32;
128
- box-shadow: 0 0 0 4px rgba(46, 125, 50, 0.2);
129
- }
130
-
131
- .stSelectbox div[data-baseweb="select"] div {
132
- border-radius: 8px;
133
- border: 2px solid #E0E0E0;
134
- padding: 0.25rem;
135
- }
136
-
137
- .stSelectbox div[data-baseweb="select"] div:focus {
138
- border-color: #2e7d32;
139
- box-shadow: 0 0 0 4px rgba(46, 125, 50, 0.2);
140
- }
141
-
142
- .stSlider div[data-baseweb="slider"] {
143
- border-radius: 8px;
144
  }
145
-
 
146
  .analysis-result {
147
- background-color: #F8F9FA;
148
- border-radius: 12px;
149
- padding: 2rem;
150
- border-left: 6px solid #2e7d32;
151
- line-height: 1.7;
152
- color: #000000 !important; /* Add this line */
153
- }
154
- /* Expand/collapse sections */
155
- .streamlit-expanderHeader {
156
- font-weight: 500;
157
- color: #5f6368;
158
- background-color: #f8f9fa;
159
- border-radius: 8px;
160
- padding: 0.8rem !important;
161
- border: 1px solid #e8eaed;
162
  }
163
-
164
- .streamlit-expanderHeader:hover {
165
- background-color: #f1f3f4;
 
 
 
 
166
  }
167
-
168
- /* Spinner/progress styling */
169
- .stSpinner > div {
170
- border-color: #2e7d32 transparent transparent !important;
171
- border-width: 3px !important;
 
 
 
 
 
172
  }
173
-
174
- /* Footer styling */
175
- footer {
176
- border-top: 1px solid #F0F0F0;
177
- padding-top: 1.5rem;
178
- color: #5f6368;
179
- font-size: 0.9rem;
180
  }
181
-
182
- /* Logo and branding - Changed to green gradient */
183
- .logo-text {
184
- font-weight: 700;
185
- background: linear-gradient(90deg, #2e7d32, #81c784);
186
- -webkit-background-clip: text;
187
- -webkit-text-fill-color: transparent;
188
- font-size: 2.8rem;
189
- letter-spacing: -1px;
190
- text-shadow: 0px 4px 8px rgba(46, 125, 50, 0.2);
191
  }
192
-
193
- /* Sections */
194
- .section-header {
195
- font-size: 1.3rem;
196
- font-weight: 600;
197
- margin-top: 2rem;
198
- margin-bottom: 1.2rem;
199
- color: #1b5e20;
200
- padding-bottom: 0.5rem;
201
- border-bottom: 2px solid #c8e6c9;
202
  }
203
-
204
- /* Source links */
205
  a {
206
- color: #2e7d32;
207
- text-decoration: none;
208
- transition: all 0.2s;
209
- font-weight: 500;
210
  }
211
-
212
  a:hover {
213
- color: #1b5e20;
214
- text-decoration: underline;
215
  }
216
-
217
- /* Tabs for analysis results */
218
- .stTabs [data-baseweb="tab-list"] {
219
- gap: 2px;
220
- border-radius: 12px;
221
- background-color: #f8f9fa;
222
- padding: 5px;
223
- }
224
-
225
- .stTabs [data-baseweb="tab"] {
226
- background-color: transparent;
227
- border-radius: 8px;
228
- color: #5f6368;
229
- padding: 10px 20px;
230
- font-weight: 500;
231
- transition: all 0.2s;
232
  }
233
-
 
234
  .stTabs [aria-selected="true"] {
235
- background-color: white !important;
236
- color: #2e7d32 !important;
237
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
238
- }
239
-
240
- .stTabs [data-baseweb="tab"]:hover:not([aria-selected="true"]) {
241
- background-color: rgba(0, 0, 0, 0.05);
242
- }
243
-
244
- /* Info boxes */
245
- .info-box {
246
- background-color: #e8f5e9;
247
- border-radius: 12px;
248
- padding: 1.2rem;
249
- border-left: 6px solid #2e7d32;
250
- margin-bottom: 1.5rem;
251
- box-shadow: 0 4px 12px rgba(46, 125, 50, 0.15);
252
- }
253
-
254
- /* Progress animation */
255
- @keyframes pulse {
256
- 0% { opacity: 0.6; }
257
- 50% { opacity: 1; }
258
- 100% { opacity: 0.6; }
259
- }
260
-
261
- .pulsing {
262
- animation: pulse 1.5s infinite ease-in-out;
263
- }
264
-
265
- /* Source item styling */
266
- .source-item {
267
- margin-bottom: 1.5rem;
268
- padding-bottom: 1.5rem;
269
- border-bottom: 1px solid #f0f0f0;
270
- transition: all 0.3s;
271
- }
272
-
273
- .source-item:hover {
274
- background-color: #f8f9fa;
275
- padding: 1rem;
276
- margin: 0 -1rem 1.5rem -1rem;
277
- border-radius: 8px;
278
- }
279
-
280
- .source-title {
281
- margin-bottom: 0.3rem;
282
- font-weight: 600;
283
- color: #202124;
284
- font-size: 1.1rem;
285
- }
286
-
287
- .source-meta {
288
- color: #5f6368;
289
- margin-bottom: 0.8rem;
290
- font-size: 0.9rem;
291
- display: flex;
292
- align-items: center;
293
- gap: 8px;
294
- }
295
-
296
- .source-meta-dot {
297
- display: inline-block;
298
- width: 4px;
299
- height: 4px;
300
- background-color: #5f6368;
301
- border-radius: 50%;
302
- }
303
-
304
- .read-link {
305
- display: inline-flex;
306
- align-items: center;
307
- gap: 6px;
308
- font-weight: 500;
309
- font-size: 0.9rem;
310
  }
311
-
312
- /* Status indicators */
313
- .status-badge {
314
- display: inline-flex;
315
- align-items: center;
316
- gap: 6px;
317
- padding: 0.4rem 0.8rem;
318
- border-radius: 16px;
319
- font-size: 0.85rem;
320
- font-weight: 500;
321
  }
322
-
323
- .status-searching {
324
- background-color: #e8f5e9;
325
- color: #2e7d32;
326
  }
327
-
328
- .status-analyzing {
329
- background-color: #e6f4ea;
330
- color: #1b5e20;
331
  }
332
-
333
- /* Header icon animation */
334
- @keyframes float {
335
- 0% { transform: translateY(0px); }
336
- 50% { transform: translateY(-10px); }
337
- 100% { transform: translateY(0px); }
338
  }
339
-
340
- .float-icon {
341
- animation: float 3s ease-in-out infinite;
 
342
  }
343
-
344
- /* Tips section */
345
- .tip-item {
346
- display: flex;
347
- align-items: flex-start;
348
- gap: 12px;
349
- margin-bottom: 1rem;
350
  }
351
-
352
- .tip-icon {
353
- color: #2e7d32;
354
- font-size: 1.2rem;
355
- margin-top: 0.2rem;
356
  }
357
-
358
- .tip-text {
359
- flex: 1;
360
  }
361
  </style>
362
  """, unsafe_allow_html=True)
 
29
  # Enhanced CSS for a more beautiful Google DeepMind-inspired styling with green background
30
  st.markdown("""
31
  <style>
32
+ /* Base styles */
33
+ html, body, .stApp, .main {
34
+ background-color: #000000 !important;
35
+ color: #ffffff !important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
36
  }
37
+
38
+ /* Typography */
39
+ h1, h2, h3, h4, h5, h6 {
40
+ color: #00ff00 !important;
41
+ font-family: 'Courier New', monospace !important;
 
 
42
  }
43
+
44
+ p, div, span {
45
+ color: #cccccc !important;
 
 
 
46
  }
47
+
48
+ /* Cards and containers */
49
  .card {
50
+ background-color: #0a0a0a !important;
51
+ border: 1px solid #00ff00 !important;
52
+ border-radius: 4px !important;
53
+ box-shadow: 0 0 15px rgba(0, 255, 0, 0.2) !important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
54
  }
55
+
56
+ /* Analysis results */
57
  .analysis-result {
58
+ background-color: #121212 !important;
59
+ border-left: 4px solid #00ff00 !important;
60
+ color: #ffffff !important;
61
+ font-family: 'Courier New', monospace !important;
62
+ padding: 1.5rem !important;
 
 
 
 
 
 
 
 
 
 
63
  }
64
+
65
+ /* Input fields */
66
+ .stTextInput input {
67
+ background-color: #121212 !important;
68
+ color: #00ff00 !important;
69
+ border: 1px solid #00ff00 !important;
70
+ border-radius: 0 !important;
71
  }
72
+
73
+ /* Buttons */
74
+ .stButton > button {
75
+ background: linear-gradient(45deg, #00ff00, #003300) !important;
76
+ color: #000000 !important;
77
+ border: none !important;
78
+ border-radius: 0 !important;
79
+ font-family: 'Courier New', monospace !important;
80
+ font-weight: bold !important;
81
+ transition: all 0.3s ease !important;
82
  }
83
+
84
+ .stButton > button:hover {
85
+ box-shadow: 0 0 20px #00ff00 !important;
86
+ transform: scale(1.05) !important;
 
 
 
87
  }
88
+
89
+ /* Source items */
90
+ .source-item {
91
+ border-bottom: 1px solid #333333 !important;
92
+ padding: 1rem 0 !important;
 
 
 
 
 
93
  }
94
+
95
+ .source-title {
96
+ color: #00ff00 !important;
97
+ font-family: 'Courier New', monospace !important;
 
 
 
 
 
 
98
  }
99
+
100
+ /* Links */
101
  a {
102
+ color: #00ff00 !important;
103
+ text-decoration: underline !important;
 
 
104
  }
105
+
106
  a:hover {
107
+ color: #99ff99 !important;
 
108
  }
109
+
110
+ /* Status indicators */
111
+ .status-badge {
112
+ background-color: #002200 !important;
113
+ color: #00ff00 !important;
114
+ border: 1px solid #00ff00 !important;
 
 
 
 
 
 
 
 
 
 
115
  }
116
+
117
+ /* Tabs */
118
  .stTabs [aria-selected="true"] {
119
+ background-color: #121212 !important;
120
+ color: #00ff00 !important;
121
+ border-bottom: 2px solid #00ff00 !important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
122
  }
123
+
124
+ /* Logo styling */
125
+ .logo-text {
126
+ background: linear-gradient(90deg, #00ff00, #99ff99) !important;
127
+ -webkit-background-clip: text !important;
128
+ -webkit-text-fill-color: transparent !important;
129
+ text-shadow: 0 0 10px rgba(0, 255, 0, 0.5) !important;
 
 
 
130
  }
131
+
132
+ /* Icons */
133
+ .float-icon svg {
134
+ filter: drop-shadow(0 0 5px #00ff00);
135
  }
136
+
137
+ /* Scrollbar styling */
138
+ ::-webkit-scrollbar {
139
+ width: 8px;
140
  }
141
+
142
+ ::-webkit-scrollbar-track {
143
+ background: #000000;
 
 
 
144
  }
145
+
146
+ ::-webkit-scrollbar-thumb {
147
+ background: #00ff00;
148
+ border-radius: 4px;
149
  }
150
+
151
+ /* Dropdown menus */
152
+ .stSelectbox div[data-baseweb="select"] div {
153
+ background-color: #121212 !important;
154
+ color: #00ff00 !important;
155
+ border: 1px solid #00ff00 !important;
156
+ border-radius: 0 !important;
157
  }
158
+
159
+ /* Sliders */
160
+ .stSlider .thumb {
161
+ background-color: #00ff00 !important;
 
162
  }
163
+
164
+ .stSlider .track {
165
+ background-color: #003300 !important;
166
  }
167
  </style>
168
  """, unsafe_allow_html=True)