akhaliq HF Staff commited on
Commit
f3eef20
·
verified ·
1 Parent(s): 12525b4

Upload style.css with huggingface_hub

Browse files
Files changed (1) hide show
  1. style.css +338 -44
style.css CHANGED
@@ -1,76 +1,370 @@
 
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
+ /* style.css */
2
  * {
 
 
3
  margin: 0;
4
+ padding: 0;
5
+ box-sizing: border-box;
6
  }
7
 
 
8
  body {
9
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
10
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
11
+ min-height: 100vh;
12
+ color: #333;
13
  }
14
 
15
+ .app-container {
16
+ max-width: 800px;
17
+ margin: 0 auto;
18
+ min-height: 100vh;
19
+ display: flex;
20
+ flex-direction: column;
21
+ background: rgba(255, 255, 255, 0.95);
22
+ backdrop-filter: blur(10px);
23
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
24
  }
25
 
26
+ .header {
 
27
  display: flex;
28
+ justify-content: space-between;
 
29
  align-items: center;
30
+ padding: 1.5rem 2rem;
31
+ background: rgba(255, 255, 255, 0.9);
32
+ border-bottom: 1px solid rgba(0, 0, 0, 0.1);
33
+ flex-wrap: wrap;
34
+ gap: 1rem;
35
  }
36
 
37
+ .header h1 {
38
+ color: #4a5568;
39
+ font-size: 1.8rem;
40
+ font-weight: 700;
41
+ }
42
 
43
+ .anycoder-link {
44
+ color: #667eea;
45
+ text-decoration: none;
46
+ font-weight: 500;
47
+ font-size: 0.9rem;
48
+ transition: all 0.2s ease;
49
+ }
50
 
51
+ .anycoder-link:hover {
52
+ color: #5a67d8;
53
+ text-decoration: underline;
54
+ }
55
+
56
+ .device-selector {
57
+ display: flex;
58
+ align-items: center;
59
+ gap: 0.5rem;
60
+ background: white;
61
+ padding: 0.5rem 1rem;
62
+ border-radius: 25px;
63
+ border: 2px solid #e2e8f0;
64
+ font-size: 0.9rem;
65
+ }
66
+
67
+ .device-selector label {
68
+ font-weight: 500;
69
+ color: #4a5568;
70
+ }
71
+
72
+ .device-selector select {
73
+ background: none;
74
+ border: none;
75
+ font-size: 0.9rem;
76
+ font-family: inherit;
77
  cursor: pointer;
78
+ outline: none;
79
+ }
80
+
81
+ .main-content {
82
+ flex: 1;
83
+ display: flex;
84
+ flex-direction: column;
85
+ max-width: 100%;
86
+ padding: 1rem 2rem 2rem;
87
+ }
88
 
89
+ .chat-container {
90
+ flex: 1;
91
+ overflow-y: auto;
92
+ padding: 1rem 0;
93
+ display: flex;
94
+ flex-direction: column;
95
+ gap: 1rem;
96
+ max-height: calc(100vh - 200px);
97
+ scrollbar-width: thin;
98
+ scrollbar-color: #cbd5e0 transparent;
99
  }
100
 
101
+ .chat-container::-webkit-scrollbar {
102
+ width: 6px;
103
  }
104
 
105
+ .chat-container::-webkit-scrollbar-track {
106
+ background: transparent;
107
  }
108
 
109
+ .chat-container::-webkit-scrollbar-thumb {
110
+ background: #cbd5e0;
111
+ border-radius: 3px;
112
+ }
113
+
114
+ .message {
115
+ max-width: 80%;
116
+ margin: 0 auto;
117
+ padding: 1rem 1.5rem;
118
+ border-radius: 18px;
119
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
120
+ animation: fadeIn 0.3s ease-out;
121
+ }
122
+
123
+ .user-message {
124
+ align-self: flex-end;
125
+ background: linear-gradient(135deg, #667eea, #764ba2);
126
+ color: white;
127
+ margin-left: auto;
128
+ border-bottom-right-radius: 4px;
129
+ }
130
+
131
+ .assistant-message {
132
+ background: white;
133
+ border: 1px solid #e2e8f0;
134
+ align-self: flex-start;
135
+ border-bottom-left-radius: 4px;
136
+ }
137
+
138
+ .system-message {
139
+ background: #f7fafc;
140
+ border: 1px solid #e2e8f0;
141
+ text-align: center;
142
+ max-width: 100%;
143
+ font-style: italic;
144
+ color: #718096;
145
+ }
146
+
147
+ .message.info {
148
+ background: #bee3f8;
149
+ border-color: #90cdf4;
150
+ color: #2b6cb0;
151
+ }
152
+
153
+ .message-content {
154
+ line-height: 1.6;
155
+ word-wrap: break-word;
156
+ }
157
+
158
+ .message-content strong {
159
+ font-weight: 600;
160
+ }
161
+
162
+ .input-container {
163
+ padding-bottom: 2rem;
164
+ position: relative;
165
+ }
166
+
167
+ .input-wrapper {
168
+ display: flex;
169
+ gap: 0.75rem;
170
+ background: white;
171
+ padding: 1rem;
172
+ border-radius: 25px;
173
+ box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
174
+ border: 2px solid #e2e8f0;
175
+ transition: all 0.2s ease;
176
+ }
177
+
178
+ .input-wrapper:focus-within {
179
+ border-color: #667eea;
180
+ box-shadow: 0 8px 25px rgba(102, 126, 234, 0.2);
181
+ }
182
+
183
+ #message-input {
184
+ flex: 1;
185
+ border: none;
186
+ outline: none;
187
+ font-family: inherit;
188
+ font-size: 1rem;
189
+ line-height: 1.5;
190
+ resize: none;
191
+ max-height: 120px;
192
+ background: transparent;
193
+ color: #2d3748;
194
+ }
195
+
196
+ #message-input::placeholder {
197
+ color: #a0aec0;
198
+ }
199
+
200
+ .send-button {
201
+ width: 44px;
202
+ height: 44px;
203
+ border: none;
204
+ background: linear-gradient(135deg, #667eea, #764ba2);
205
+ border-radius: 50%;
206
+ color: white;
207
  cursor: pointer;
208
+ display: flex;
209
+ align-items: center;
210
+ justify-content: center;
211
+ transition: all 0.2s ease;
212
+ flex-shrink: 0;
213
  }
214
 
215
+ .send-button:hover:not(:disabled) {
216
+ transform: scale(1.05);
217
+ box-shadow: 0 4px 15px rgba(102, 126, 234, 0.4);
218
  }
219
 
220
+ .send-button:disabled {
221
+ opacity: 0.5;
222
+ cursor: not-allowed;
223
+ transform: none;
224
+ }
225
+
226
+ .send-button svg {
227
+ width: 20px;
228
+ height: 20px;
229
+ }
230
+
231
+ .loading-indicator {
232
+ display: flex;
233
+ align-items: center;
234
+ justify-content: center;
235
+ gap: 0.75rem;
236
+ padding: 1rem;
237
+ color: #667eea;
238
+ font-weight: 500;
239
+ }
240
+
241
+ .spinner {
242
+ width: 20px;
243
+ height: 20px;
244
+ border: 2px solid #e2e8f0;
245
+ border-top: 2px solid #667eea;
246
+ border-radius: 50%;
247
+ animation: spin 1s linear infinite;
248
  }
249
 
250
+ .hidden {
251
+ display: none !important;
252
+ }
253
+
254
+ .error-toast {
255
+ position: fixed;
256
+ top: 20px;
257
+ right: 20px;
258
+ background: #f56565;
259
  color: white;
260
+ padding: 1rem 1.5rem;
261
+ border-radius: 8px;
262
+ box-shadow: 0 10px 30px rgba(245, 101, 101, 0.4);
263
+ z-index: 1000;
264
+ animation: slideIn 0.3s ease-out;
265
+ max-width: 350px;
266
+ }
267
+
268
+ @keyframes spin {
269
+ 0% { transform: rotate(0deg); }
270
+ 100% { transform: rotate(360deg); }
271
+ }
272
+
273
+ @keyframes fadeIn {
274
+ from {
275
+ opacity: 0;
276
+ transform: translateY(10px);
277
+ }
278
+ to {
279
+ opacity: 1;
280
+ transform: translateY(0);
281
+ }
282
+ }
283
+
284
+ @keyframes slideIn {
285
+ from {
286
+ transform: translateX(100%);
287
+ opacity: 0;
288
+ }
289
+ to {
290
+ transform: translateX(0);
291
+ opacity: 1;
292
+ }
293
+ }
294
+
295
+ /* Responsive Design */
296
+ @media (max-width: 768px) {
297
+ .header {
298
+ flex-direction: column;
299
+ align-items: stretch;
300
+ gap: 1rem;
301
+ padding: 1rem;
302
+ }
303
+
304
+ .header h1 {
305
+ text-align: center;
306
+ font-size: 1.5rem;
307
+ }
308
+
309
+ .device-selector {
310
+ justify-content: center;
311
+ }
312
+
313
+ .main-content {
314
+ padding: 1rem;
315
+ }
316
+
317
+ .message {
318
+ max-width: 95%;
319
+ padding: 0.75rem 1.25rem;
320
+ }
321
+
322
+ .input-wrapper {
323
+ padding: 0.75rem;
324
+ }
325
+
326
+ .error-toast {
327
+ top: 10px;
328
+ right: 10px;
329
+ left: 10px;
330
+ max-width: none;
331
+ }
332
+ }
333
+
334
+ @media (max-width: 480px) {
335
+ .header h1 {
336
+ font-size: 1.3rem;
337
+ }
338
+
339
+ .message-content {
340
+ font-size: 0.95rem;
341
+ }
342
+ }
343
+
344
+ /* Focus styles for accessibility */
345
+ #message-input:focus,
346
+ .send-button:focus,
347
+ .device-selector select:focus {
348
+ outline: 2px solid #667eea;
349
+ outline-offset: 2px;
350
+ }
351
+
352
+ /* High contrast mode support */
353
+ @media (prefers-contrast: high) {
354
+ .message {
355
+ border-width: 2px;
356
+ }
357
+
358
+ .input-wrapper {
359
+ border-width: 3px;
360
+ }
361
+ }
362
+
363
+ /* Reduced motion support */
364
+ @media (prefers-reduced-motion: reduce) {
365
+ * {
366
+ animation-duration: 0.01ms !important;
367
+ animation-iteration-count: 1 !important;
368
+ transition-duration: 0.01ms !important;
369
+ }
370
  }