akhaliq HF Staff commited on
Commit
caab65a
·
verified ·
1 Parent(s): d25692c

Upload style.css with huggingface_hub

Browse files
Files changed (1) hide show
  1. style.css +507 -50
style.css CHANGED
@@ -1,76 +1,533 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  * {
2
- box-sizing: border-box;
3
- padding: 0;
4
- margin: 0;
5
- font-family: sans-serif;
6
  }
7
 
8
- html,
9
  body {
10
- height: 100%;
 
 
 
 
11
  }
12
 
13
- body {
14
- padding: 32px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  }
16
 
17
- body,
18
- #container {
19
- display: flex;
20
- flex-direction: column;
21
- justify-content: center;
22
- align-items: center;
23
  }
24
 
25
- #container {
26
- position: relative;
27
- gap: 0.4rem;
 
 
28
 
29
- width: 640px;
30
- height: 640px;
31
- max-width: 100%;
32
- max-height: 100%;
33
 
34
- border: 2px dashed #D1D5DB;
35
- border-radius: 0.75rem;
36
- overflow: hidden;
37
- cursor: pointer;
38
- margin: 1rem;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
 
40
- background-size: 100% 100%;
41
- background-position: center;
42
- background-repeat: no-repeat;
43
- font-size: 18px;
 
 
44
  }
45
 
46
- #upload {
47
- display: none;
 
48
  }
49
 
50
- svg {
51
- pointer-events: none;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
52
  }
53
 
54
- #example {
55
- font-size: 14px;
56
- text-decoration: underline;
57
- cursor: pointer;
58
  }
59
 
60
- #example:hover {
61
- color: #2563EB;
62
  }
63
 
64
- .bounding-box {
65
- position: absolute;
66
- box-sizing: border-box;
67
- border: solid 2px;
68
  }
69
 
70
- .bounding-box-label {
71
- color: white;
72
- position: absolute;
73
- font-size: 12px;
74
- margin: -16px 0 0 -2px;
75
- padding: 1px;
76
  }
 
1
+ /* Apple-inspired CSS with modern design */
2
+ :root {
3
+ --primary-color: #007AFF;
4
+ --secondary-color: #5856D6;
5
+ --background: #000000;
6
+ --surface: #1C1C1E;
7
+ --surface-secondary: #2C2C2E;
8
+ --surface-tertiary: #3A3A3C;
9
+ --text-primary: #FFFFFF;
10
+ --text-secondary: #98989F;
11
+ --text-tertiary: #636366;
12
+ --border-color: #38383A;
13
+ --success: #30D158;
14
+ --warning: #FF9F0A;
15
+ --error: #FF453A;
16
+ --gradient: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
17
+ --shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
18
+ --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
19
+ }
20
+
21
  * {
22
+ margin: 0;
23
+ padding: 0;
24
+ box-sizing: border-box;
 
25
  }
26
 
 
27
  body {
28
+ font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
29
+ background: var(--background);
30
+ color: var(--text-primary);
31
+ line-height: 1.6;
32
+ overflow: hidden;
33
  }
34
 
35
+ .app-container {
36
+ height: 100vh;
37
+ display: flex;
38
+ flex-direction: column;
39
+ }
40
+
41
+ /* Header */
42
+ .header {
43
+ background: var(--surface);
44
+ border-bottom: 1px solid var(--border-color);
45
+ padding: 1rem 0;
46
+ backdrop-filter: blur(20px);
47
+ -webkit-backdrop-filter: blur(20px);
48
+ }
49
+
50
+ .header-content {
51
+ max-width: 1200px;
52
+ margin: 0 auto;
53
+ padding: 0 2rem;
54
+ display: flex;
55
+ justify-content: space-between;
56
+ align-items: center;
57
+ }
58
+
59
+ .logo {
60
+ display: flex;
61
+ align-items: center;
62
+ gap: 0.75rem;
63
+ font-size: 1.25rem;
64
+ font-weight: 600;
65
+ }
66
+
67
+ .logo svg {
68
+ filter: drop-shadow(0 2px 4px rgba(0, 122, 255, 0.3));
69
+ }
70
+
71
+ .header-actions {
72
+ display: flex;
73
+ gap: 0.5rem;
74
+ }
75
+
76
+ .header-btn {
77
+ background: var(--surface-secondary);
78
+ border: 1px solid var(--border-color);
79
+ color: var(--text-secondary);
80
+ padding: 0.5rem 1rem;
81
+ border-radius: 0.75rem;
82
+ cursor: pointer;
83
+ display: flex;
84
+ align-items: center;
85
+ gap: 0.5rem;
86
+ font-size: 0.875rem;
87
+ transition: all 0.2s ease;
88
+ }
89
+
90
+ .header-btn:hover {
91
+ background: var(--surface-tertiary);
92
+ color: var(--text-primary);
93
+ transform: translateY(-1px);
94
  }
95
 
96
+ .attribution {
97
+ text-align: center;
98
+ margin-top: 0.5rem;
99
+ font-size: 0.75rem;
100
+ color: var(--text-tertiary);
 
101
  }
102
 
103
+ .attribution a {
104
+ color: var(--primary-color);
105
+ text-decoration: none;
106
+ font-weight: 500;
107
+ }
108
 
109
+ .attribution a:hover {
110
+ text-decoration: underline;
111
+ }
 
112
 
113
+ /* Main Content */
114
+ .main-content {
115
+ flex: 1;
116
+ overflow: hidden;
117
+ position: relative;
118
+ }
119
+
120
+ /* Loading Screen */
121
+ .loading-screen {
122
+ position: absolute;
123
+ inset: 0;
124
+ display: flex;
125
+ align-items: center;
126
+ justify-content: center;
127
+ background: var(--background);
128
+ z-index: 10;
129
+ }
130
+
131
+ .loading-content {
132
+ text-align: center;
133
+ max-width: 400px;
134
+ }
135
+
136
+ .loading-spinner {
137
+ width: 60px;
138
+ height: 60px;
139
+ border: 3px solid var(--surface-tertiary);
140
+ border-top: 3px solid var(--primary-color);
141
+ border-radius: 50%;
142
+ animation: spin 1s linear infinite;
143
+ margin: 0 auto 2rem;
144
+ }
145
+
146
+ @keyframes spin {
147
+ 0% { transform: rotate(0deg); }
148
+ 100% { transform: rotate(360deg); }
149
+ }
150
+
151
+ .loading-content h2 {
152
+ font-size: 1.5rem;
153
+ margin-bottom: 0.5rem;
154
+ font-weight: 600;
155
+ }
156
+
157
+ .loading-content p {
158
+ color: var(--text-secondary);
159
+ margin-bottom: 2rem;
160
+ }
161
+
162
+ .progress-bar {
163
+ width: 100%;
164
+ height: 4px;
165
+ background: var(--surface-tertiary);
166
+ border-radius: 2px;
167
+ overflow: hidden;
168
+ margin-bottom: 1rem;
169
+ }
170
 
171
+ .progress-fill {
172
+ height: 100%;
173
+ background: var(--gradient);
174
+ border-radius: 2px;
175
+ width: 0%;
176
+ transition: width 0.3s ease;
177
  }
178
 
179
+ .loading-status {
180
+ font-size: 0.875rem;
181
+ color: var(--text-tertiary);
182
  }
183
 
184
+ /* Chat Container */
185
+ .chat-container {
186
+ height: calc(100% - 120px);
187
+ overflow-y: auto;
188
+ padding: 2rem;
189
+ max-width: 1200px;
190
+ margin: 0 auto;
191
+ width: 100%;
192
+ }
193
+
194
+ .messages-list {
195
+ display: flex;
196
+ flex-direction: column;
197
+ gap: 1.5rem;
198
+ }
199
+
200
+ .message {
201
+ display: flex;
202
+ gap: 1rem;
203
+ animation: fadeInUp 0.3s ease;
204
+ }
205
+
206
+ @keyframes fadeInUp {
207
+ from {
208
+ opacity: 0;
209
+ transform: translateY(10px);
210
+ }
211
+ to {
212
+ opacity: 1;
213
+ transform: translateY(0);
214
+ }
215
+ }
216
+
217
+ .message.user {
218
+ flex-direction: row-reverse;
219
+ }
220
+
221
+ .message-avatar {
222
+ width: 40px;
223
+ height: 40px;
224
+ border-radius: 1rem;
225
+ background: var(--gradient);
226
+ display: flex;
227
+ align-items: center;
228
+ justify-content: center;
229
+ color: white;
230
+ flex-shrink: 0;
231
+ }
232
+
233
+ .message.user .message-avatar {
234
+ background: var(--surface-tertiary);
235
+ }
236
+
237
+ .message-content {
238
+ max-width: 70%;
239
+ display: flex;
240
+ flex-direction: column;
241
+ gap: 0.25rem;
242
+ }
243
+
244
+ .message-text {
245
+ background: var(--surface-secondary);
246
+ padding: 1rem 1.25rem;
247
+ border-radius: 1.25rem;
248
+ font-size: 0.95rem;
249
+ line-height: 1.5;
250
+ white-space: pre-wrap;
251
+ word-wrap: break-word;
252
+ border: 1px solid var(--border-color);
253
+ }
254
+
255
+ .message.user .message-text {
256
+ background: var(--gradient);
257
+ color: white;
258
+ }
259
+
260
+ .message-time {
261
+ font-size: 0.75rem;
262
+ color: var(--text-tertiary);
263
+ padding: 0 0.5rem;
264
+ }
265
+
266
+ .message.user .message-time {
267
+ text-align: right;
268
+ }
269
+
270
+ /* Typing Indicator */
271
+ .typing-indicator {
272
+ display: flex;
273
+ gap: 0.25rem;
274
+ padding: 1rem 1.25rem;
275
+ }
276
+
277
+ .typing-dot {
278
+ width: 8px;
279
+ height: 8px;
280
+ background: var(--text-tertiary);
281
+ border-radius: 50%;
282
+ animation: typing 1.4s infinite;
283
+ }
284
+
285
+ .typing-dot:nth-child(2) {
286
+ animation-delay: 0.2s;
287
+ }
288
+
289
+ .typing-dot:nth-child(3) {
290
+ animation-delay: 0.4s;
291
+ }
292
+
293
+ @keyframes typing {
294
+ 0%, 60%, 100% {
295
+ transform: translateY(0);
296
+ opacity: 0.5;
297
+ }
298
+ 30% {
299
+ transform: translateY(-10px);
300
+ opacity: 1;
301
+ }
302
+ }
303
+
304
+ /* Input Area */
305
+ .input-area {
306
+ background: var(--surface);
307
+ border-top: 1px solid var(--border-color);
308
+ padding: 1.5rem 2rem;
309
+ backdrop-filter: blur(20px);
310
+ -webkit-backdrop-filter: blur(20px);
311
+ }
312
+
313
+ .input-container {
314
+ max-width: 1200px;
315
+ margin: 0 auto;
316
+ display: flex;
317
+ gap: 1rem;
318
+ align-items: flex-end;
319
+ }
320
+
321
+ .message-input {
322
+ flex: 1;
323
+ background: var(--surface-secondary);
324
+ border: 1px solid var(--border-color);
325
+ border-radius: 1.25rem;
326
+ padding: 0.875rem 1.25rem;
327
+ color: var(--text-primary);
328
+ font-size: 0.95rem;
329
+ resize: none;
330
+ outline: none;
331
+ transition: all 0.2s ease;
332
+ font-family: inherit;
333
+ line-height: 1.5;
334
+ min-height: 44px;
335
+ max-height: 120px;
336
+ }
337
+
338
+ .message-input:focus {
339
+ border-color: var(--primary-color);
340
+ background: var(--surface-tertiary);
341
+ }
342
+
343
+ .message-input::placeholder {
344
+ color: var(--text-tertiary);
345
+ }
346
+
347
+ .send-btn {
348
+ width: 44px;
349
+ height: 44px;
350
+ border-radius: 1.25rem;
351
+ background: var(--gradient);
352
+ border: none;
353
+ color: white;
354
+ cursor: pointer;
355
+ display: flex;
356
+ align-items: center;
357
+ justify-content: center;
358
+ transition: all 0.2s ease;
359
+ flex-shrink: 0;
360
+ }
361
+
362
+ .send-btn:hover:not(:disabled) {
363
+ transform: scale(1.05);
364
+ box-shadow: var(--shadow-sm);
365
+ }
366
+
367
+ .send-btn:disabled {
368
+ opacity: 0.5;
369
+ cursor: not-allowed;
370
+ }
371
+
372
+ .input-footer {
373
+ max-width: 1200px;
374
+ margin: 0.75rem auto 0;
375
+ display: flex;
376
+ justify-content: space-between;
377
+ font-size: 0.75rem;
378
+ color: var(--text-tertiary);
379
+ }
380
+
381
+ /* Modal */
382
+ .modal {
383
+ position: fixed;
384
+ inset: 0;
385
+ background: rgba(0, 0, 0, 0.8);
386
+ display: none;
387
+ align-items: center;
388
+ justify-content: center;
389
+ z-index: 100;
390
+ backdrop-filter: blur(10px);
391
+ -webkit-backdrop-filter: blur(10px);
392
+ }
393
+
394
+ .modal.active {
395
+ display: flex;
396
+ }
397
+
398
+ .modal-content {
399
+ background: var(--surface);
400
+ border-radius: 1.5rem;
401
+ width: 90%;
402
+ max-width: 500px;
403
+ max-height: 80vh;
404
+ overflow: hidden;
405
+ box-shadow: var(--shadow);
406
+ animation: modalSlideIn 0.3s ease;
407
+ }
408
+
409
+ @keyframes modalSlideIn {
410
+ from {
411
+ opacity: 0;
412
+ transform: scale(0.9) translateY(20px);
413
+ }
414
+ to {
415
+ opacity: 1;
416
+ transform: scale(1) translateY(0);
417
+ }
418
+ }
419
+
420
+ .modal-header {
421
+ padding: 1.5rem;
422
+ border-bottom: 1px solid var(--border-color);
423
+ display: flex;
424
+ justify-content: space-between;
425
+ align-items: center;
426
+ }
427
+
428
+ .modal-header h2 {
429
+ font-size: 1.25rem;
430
+ font-weight: 600;
431
+ }
432
+
433
+ .close-btn {
434
+ background: none;
435
+ border: none;
436
+ color: var(--text-secondary);
437
+ cursor: pointer;
438
+ padding: 0.5rem;
439
+ border-radius: 0.5rem;
440
+ transition: all 0.2s ease;
441
+ }
442
+
443
+ .close-btn:hover {
444
+ background: var(--surface-secondary);
445
+ color: var(--text-primary);
446
+ }
447
+
448
+ .modal-body {
449
+ padding: 1.5rem;
450
+ }
451
+
452
+ .setting-group {
453
+ margin-bottom: 1.5rem;
454
+ }
455
+
456
+ .setting-group label {
457
+ display: block;
458
+ margin-bottom: 0.5rem;
459
+ font-size: 0.875rem;
460
+ color: var(--text-secondary);
461
+ }
462
+
463
+ .setting-group input[type="range"] {
464
+ width: 100%;
465
+ margin-bottom: 0.5rem;
466
+ }
467
+
468
+ .setting-group input[type="checkbox"] {
469
+ margin-right: 0.5rem;
470
+ }
471
+
472
+ .modal-footer {
473
+ padding: 1.5rem;
474
+ border-top: 1px solid var(--border-color);
475
+ display: flex;
476
+ justify-content: flex-end;
477
+ }
478
+
479
+ .btn {
480
+ padding: 0.75rem 1.5rem;
481
+ border-radius: 0.75rem;
482
+ border: none;
483
+ font-weight: 500;
484
+ cursor: pointer;
485
+ transition: all 0.2s ease;
486
+ }
487
+
488
+ .btn-primary {
489
+ background: var(--gradient);
490
+ color: white;
491
+ }
492
+
493
+ .btn-primary:hover {
494
+ transform: translateY(-1px);
495
+ box-shadow: var(--shadow-sm);
496
+ }
497
+
498
+ /* Responsive Design */
499
+ @media (max-width: 768px) {
500
+ .header-content {
501
+ padding: 0 1rem;
502
+ }
503
+
504
+ .chat-container {
505
+ padding: 1rem;
506
+ }
507
+
508
+ .message-content {
509
+ max-width: 85%;
510
+ }
511
+
512
+ .input-area {
513
+ padding: 1rem;
514
+ }
515
  }
516
 
517
+ /* Custom Scrollbar */
518
+ ::-webkit-scrollbar {
519
+ width: 8px;
 
520
  }
521
 
522
+ ::-webkit-scrollbar-track {
523
+ background: var(--surface);
524
  }
525
 
526
+ ::-webkit-scrollbar-thumb {
527
+ background: var(--surface-tertiary);
528
+ border-radius: 4px;
 
529
  }
530
 
531
+ ::-webkit-scrollbar-thumb:hover {
532
+ background: var(--text-tertiary);
 
 
 
 
533
  }