mikao007 commited on
Commit
06b6e54
·
verified ·
1 Parent(s): 5ff3aaa

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +241 -48
index.html CHANGED
@@ -5,6 +5,8 @@
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <title>LLM+ Web scraping Application</title>
7
  <style>
 
 
8
  * {
9
  margin: 0;
10
  padding: 0;
@@ -12,79 +14,149 @@
12
  }
13
 
14
  body {
15
- font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
16
- background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
17
  min-height: 100vh;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  }
19
 
20
  .container {
21
- max-width: 1400px;
22
  margin: 0 auto;
23
- padding: 20px;
24
  min-height: 100vh;
25
  }
26
 
27
  .header {
28
  text-align: center;
29
- margin-bottom: 30px;
30
  color: white;
 
31
  }
32
 
33
  .main-title {
34
- font-size: 2.5rem;
35
  font-weight: 700;
36
- margin-bottom: 10px;
37
- text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
 
 
 
 
 
38
  }
39
 
40
  .subtitle {
41
- font-size: 1.1rem;
42
- opacity: 0.9;
43
- font-weight: 300;
 
 
44
  }
45
 
46
  .app-container {
47
  display: flex;
48
- background: white;
49
- border-radius: 15px;
50
- box-shadow: 0 20px 40px rgba(0,0,0,0.2);
 
 
 
51
  overflow: hidden;
52
- min-height: 600px;
 
53
  }
54
 
55
  .sidebar {
56
- width: 300px;
57
- background: linear-gradient(180deg, #2c3e50 0%, #34495e 100%);
 
 
 
 
58
  padding: 0;
59
  display: flex;
60
  flex-direction: column;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
61
  }
62
 
63
  .tab-button {
64
- padding: 25px 30px;
65
  border: none;
66
  background: transparent;
67
- color: #ecf0f1;
68
- font-size: 1.1rem;
69
  font-weight: 500;
70
  cursor: pointer;
71
  text-align: left;
72
- transition: all 0.3s ease;
73
- border-bottom: 1px solid rgba(255,255,255,0.1);
74
  position: relative;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
75
  }
76
 
77
  .tab-button:hover {
78
- background: rgba(255,255,255,0.1);
79
- transform: translateX(5px);
 
80
  }
81
 
82
  .tab-button.active {
83
- background: rgba(74, 144, 226, 0.3);
84
- border-left: 4px solid #4a90e2;
 
 
 
 
85
  }
86
 
87
- .tab-button.active::before {
88
  content: '';
89
  position: absolute;
90
  right: 0;
@@ -92,26 +164,41 @@
92
  transform: translateY(-50%);
93
  width: 0;
94
  height: 0;
95
- border-top: 10px solid transparent;
96
- border-bottom: 10px solid transparent;
97
- border-right: 10px solid white;
 
98
  }
99
 
100
  .tab-title {
101
  font-weight: 600;
102
- margin-bottom: 5px;
 
 
 
 
 
 
 
 
 
 
 
 
 
103
  }
104
 
105
  .tab-description {
106
- font-size: 0.9rem;
107
- opacity: 0.8;
108
- line-height: 1.4;
 
109
  }
110
 
111
  .content {
112
  flex: 1;
113
  padding: 0;
114
- background: #f8f9fa;
115
  position: relative;
116
  }
117
 
@@ -119,7 +206,7 @@
119
  display: none;
120
  width: 100%;
121
  height: 100%;
122
- padding: 20px;
123
  }
124
 
125
  .tab-content.active {
@@ -128,17 +215,29 @@
128
 
129
  .iframe-container {
130
  width: 100%;
131
- height: 560px;
132
- border-radius: 10px;
133
  overflow: hidden;
134
- box-shadow: 0 10px 20px rgba(0,0,0,0.1);
 
 
135
  background: white;
 
 
 
 
 
 
 
 
 
136
  }
137
 
138
  iframe {
139
  width: 100%;
140
  height: 100%;
141
  border: none;
 
142
  }
143
 
144
  .loading {
@@ -146,19 +245,21 @@
146
  justify-content: center;
147
  align-items: center;
148
  height: 100%;
149
- color: #666;
150
- font-size: 1.1rem;
 
 
151
  }
152
 
153
  .loading::before {
154
  content: '';
155
- width: 20px;
156
- height: 20px;
157
- border: 2px solid #ddd;
158
- border-top: 2px solid #4a90e2;
159
  border-radius: 50%;
160
  animation: spin 1s linear infinite;
161
- margin-right: 10px;
162
  }
163
 
164
  @keyframes spin {
@@ -166,33 +267,125 @@
166
  100% { transform: rotate(360deg); }
167
  }
168
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
169
  @media (max-width: 768px) {
170
  .app-container {
171
  flex-direction: column;
 
172
  }
173
 
174
  .sidebar {
175
  width: 100%;
176
  flex-direction: row;
177
  overflow-x: auto;
 
178
  }
179
 
180
  .tab-button {
181
- min-width: 200px;
182
  white-space: nowrap;
 
 
 
 
 
183
  }
184
 
185
  .iframe-container {
186
- height: 400px;
187
  }
188
 
 
 
 
 
 
 
 
 
 
 
189
  .main-title {
190
  font-size: 2rem;
191
  }
 
 
 
 
192
  }
193
  </style>
194
  </head>
195
  <body>
 
 
 
 
 
 
196
  <div class="container">
197
  <div class="header">
198
  <h1 class="main-title">LLM+ Web scraping Application</h1>
 
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <title>LLM+ Web scraping Application</title>
7
  <style>
8
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
9
+
10
  * {
11
  margin: 0;
12
  padding: 0;
 
14
  }
15
 
16
  body {
17
+ font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
18
+ background: radial-gradient(ellipse at top, #667eea 0%, #764ba2 50%, #f093fb 100%);
19
  min-height: 100vh;
20
+ position: relative;
21
+ overflow-x: hidden;
22
+ }
23
+
24
+ body::before {
25
+ content: '';
26
+ position: fixed;
27
+ top: 0;
28
+ left: 0;
29
+ width: 100%;
30
+ height: 100%;
31
+ background:
32
+ radial-gradient(circle at 20% 80%, rgba(120, 119, 198, 0.3) 0%, transparent 50%),
33
+ radial-gradient(circle at 80% 20%, rgba(255, 119, 198, 0.3) 0%, transparent 50%),
34
+ radial-gradient(circle at 40% 40%, rgba(120, 219, 255, 0.2) 0%, transparent 50%);
35
+ z-index: -1;
36
  }
37
 
38
  .container {
39
+ max-width: 1600px;
40
  margin: 0 auto;
41
+ padding: 15px;
42
  min-height: 100vh;
43
  }
44
 
45
  .header {
46
  text-align: center;
47
+ margin-bottom: 25px;
48
  color: white;
49
+ position: relative;
50
  }
51
 
52
  .main-title {
53
+ font-size: 3.2rem;
54
  font-weight: 700;
55
+ margin-bottom: 15px;
56
+ text-shadow: 0 4px 8px rgba(0,0,0,0.3);
57
+ background: linear-gradient(135deg, #ffffff 0%, #f0f9ff 100%);
58
+ background-clip: text;
59
+ -webkit-background-clip: text;
60
+ -webkit-text-fill-color: transparent;
61
+ letter-spacing: -0.5px;
62
  }
63
 
64
  .subtitle {
65
+ font-size: 1.2rem;
66
+ opacity: 0.95;
67
+ font-weight: 400;
68
+ text-shadow: 1px 1px 2px rgba(0,0,0,0.2);
69
+ margin-bottom: 5px;
70
  }
71
 
72
  .app-container {
73
  display: flex;
74
+ background: rgba(255,255,255,0.95);
75
+ backdrop-filter: blur(20px);
76
+ border-radius: 20px;
77
+ box-shadow:
78
+ 0 25px 50px rgba(0,0,0,0.15),
79
+ 0 0 0 1px rgba(255,255,255,0.2);
80
  overflow: hidden;
81
+ min-height: 800px;
82
+ border: 1px solid rgba(255,255,255,0.2);
83
  }
84
 
85
  .sidebar {
86
+ width: 320px;
87
+ background: linear-gradient(180deg,
88
+ rgba(30, 41, 59, 0.95) 0%,
89
+ rgba(51, 65, 85, 0.95) 50%,
90
+ rgba(30, 41, 59, 0.95) 100%);
91
+ backdrop-filter: blur(10px);
92
  padding: 0;
93
  display: flex;
94
  flex-direction: column;
95
+ position: relative;
96
+ }
97
+
98
+ .sidebar::before {
99
+ content: '';
100
+ position: absolute;
101
+ top: 0;
102
+ left: 0;
103
+ right: 0;
104
+ bottom: 0;
105
+ background: linear-gradient(45deg,
106
+ rgba(59, 130, 246, 0.1) 0%,
107
+ rgba(147, 51, 234, 0.1) 100%);
108
+ pointer-events: none;
109
  }
110
 
111
  .tab-button {
112
+ padding: 30px 35px;
113
  border: none;
114
  background: transparent;
115
+ color: #f1f5f9;
116
+ font-size: 1.15rem;
117
  font-weight: 500;
118
  cursor: pointer;
119
  text-align: left;
120
+ transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
121
+ border-bottom: 1px solid rgba(255,255,255,0.08);
122
  position: relative;
123
+ overflow: hidden;
124
+ }
125
+
126
+ .tab-button::before {
127
+ content: '';
128
+ position: absolute;
129
+ top: 0;
130
+ left: -100%;
131
+ width: 100%;
132
+ height: 100%;
133
+ background: linear-gradient(90deg,
134
+ transparent 0%,
135
+ rgba(59, 130, 246, 0.2) 50%,
136
+ transparent 100%);
137
+ transition: left 0.6s ease;
138
+ }
139
+
140
+ .tab-button:hover::before {
141
+ left: 100%;
142
  }
143
 
144
  .tab-button:hover {
145
+ background: rgba(59, 130, 246, 0.15);
146
+ transform: translateX(8px);
147
+ color: #ffffff;
148
  }
149
 
150
  .tab-button.active {
151
+ background: linear-gradient(135deg,
152
+ rgba(59, 130, 246, 0.3) 0%,
153
+ rgba(147, 51, 234, 0.3) 100%);
154
+ border-left: 4px solid #3b82f6;
155
+ color: #ffffff;
156
+ box-shadow: inset 0 0 20px rgba(59, 130, 246, 0.2);
157
  }
158
 
159
+ .tab-button.active::after {
160
  content: '';
161
  position: absolute;
162
  right: 0;
 
164
  transform: translateY(-50%);
165
  width: 0;
166
  height: 0;
167
+ border-top: 12px solid transparent;
168
+ border-bottom: 12px solid transparent;
169
+ border-right: 12px solid rgba(255,255,255,0.95);
170
+ filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
171
  }
172
 
173
  .tab-title {
174
  font-weight: 600;
175
+ margin-bottom: 8px;
176
+ font-size: 1.1rem;
177
+ display: flex;
178
+ align-items: center;
179
+ }
180
+
181
+ .tab-title::before {
182
+ content: '⚡';
183
+ margin-right: 10px;
184
+ font-size: 1.2rem;
185
+ }
186
+
187
+ .tab-button:nth-child(2) .tab-title::before {
188
+ content: '🤖';
189
  }
190
 
191
  .tab-description {
192
+ font-size: 0.95rem;
193
+ opacity: 0.85;
194
+ line-height: 1.5;
195
+ color: #cbd5e1;
196
  }
197
 
198
  .content {
199
  flex: 1;
200
  padding: 0;
201
+ background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
202
  position: relative;
203
  }
204
 
 
206
  display: none;
207
  width: 100%;
208
  height: 100%;
209
+ padding: 25px;
210
  }
211
 
212
  .tab-content.active {
 
215
 
216
  .iframe-container {
217
  width: 100%;
218
+ height: 750px;
219
+ border-radius: 15px;
220
  overflow: hidden;
221
+ box-shadow:
222
+ 0 20px 40px rgba(0,0,0,0.12),
223
+ 0 0 0 1px rgba(0,0,0,0.05);
224
  background: white;
225
+ position: relative;
226
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
227
+ }
228
+
229
+ .iframe-container:hover {
230
+ transform: translateY(-2px);
231
+ box-shadow:
232
+ 0 25px 50px rgba(0,0,0,0.15),
233
+ 0 0 0 1px rgba(0,0,0,0.05);
234
  }
235
 
236
  iframe {
237
  width: 100%;
238
  height: 100%;
239
  border: none;
240
+ border-radius: 15px;
241
  }
242
 
243
  .loading {
 
245
  justify-content: center;
246
  align-items: center;
247
  height: 100%;
248
+ color: #64748b;
249
+ font-size: 1.15rem;
250
+ font-weight: 500;
251
+ background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
252
  }
253
 
254
  .loading::before {
255
  content: '';
256
+ width: 24px;
257
+ height: 24px;
258
+ border: 3px solid #e2e8f0;
259
+ border-top: 3px solid #3b82f6;
260
  border-radius: 50%;
261
  animation: spin 1s linear infinite;
262
+ margin-right: 15px;
263
  }
264
 
265
  @keyframes spin {
 
267
  100% { transform: rotate(360deg); }
268
  }
269
 
270
+ .floating-elements {
271
+ position: fixed;
272
+ top: 0;
273
+ left: 0;
274
+ width: 100%;
275
+ height: 100%;
276
+ pointer-events: none;
277
+ z-index: -1;
278
+ }
279
+
280
+ .floating-element {
281
+ position: absolute;
282
+ background: rgba(255,255,255,0.1);
283
+ border-radius: 50%;
284
+ animation: float 6s ease-in-out infinite;
285
+ }
286
+
287
+ .floating-element:nth-child(1) {
288
+ top: 20%;
289
+ left: 10%;
290
+ width: 60px;
291
+ height: 60px;
292
+ animation-delay: 0s;
293
+ }
294
+
295
+ .floating-element:nth-child(2) {
296
+ top: 60%;
297
+ right: 15%;
298
+ width: 80px;
299
+ height: 80px;
300
+ animation-delay: 2s;
301
+ }
302
+
303
+ .floating-element:nth-child(3) {
304
+ bottom: 30%;
305
+ left: 20%;
306
+ width: 40px;
307
+ height: 40px;
308
+ animation-delay: 4s;
309
+ }
310
+
311
+ @keyframes float {
312
+ 0%, 100% { transform: translateY(0px) rotate(0deg); }
313
+ 33% { transform: translateY(-20px) rotate(120deg); }
314
+ 66% { transform: translateY(10px) rotate(240deg); }
315
+ }
316
+
317
+ @media (max-width: 1024px) {
318
+ .container {
319
+ padding: 10px;
320
+ }
321
+
322
+ .app-container {
323
+ min-height: 700px;
324
+ }
325
+
326
+ .sidebar {
327
+ width: 280px;
328
+ }
329
+
330
+ .iframe-container {
331
+ height: 650px;
332
+ }
333
+ }
334
+
335
  @media (max-width: 768px) {
336
  .app-container {
337
  flex-direction: column;
338
+ min-height: auto;
339
  }
340
 
341
  .sidebar {
342
  width: 100%;
343
  flex-direction: row;
344
  overflow-x: auto;
345
+ min-height: auto;
346
  }
347
 
348
  .tab-button {
349
+ min-width: 250px;
350
  white-space: nowrap;
351
+ padding: 20px 25px;
352
+ }
353
+
354
+ .tab-button.active::after {
355
+ display: none;
356
  }
357
 
358
  .iframe-container {
359
+ height: 500px;
360
  }
361
 
362
+ .main-title {
363
+ font-size: 2.5rem;
364
+ }
365
+
366
+ .tab-content {
367
+ padding: 15px;
368
+ }
369
+ }
370
+
371
+ @media (max-width: 480px) {
372
  .main-title {
373
  font-size: 2rem;
374
  }
375
+
376
+ .iframe-container {
377
+ height: 400px;
378
+ }
379
  }
380
  </style>
381
  </head>
382
  <body>
383
+ <div class="floating-elements">
384
+ <div class="floating-element"></div>
385
+ <div class="floating-element"></div>
386
+ <div class="floating-element"></div>
387
+ </div>
388
+
389
  <div class="container">
390
  <div class="header">
391
  <h1 class="main-title">LLM+ Web scraping Application</h1>