akhaliq HF Staff commited on
Commit
ff27e96
·
verified ·
1 Parent(s): f70940c

Upload style.css with huggingface_hub

Browse files
Files changed (1) hide show
  1. style.css +354 -42
style.css CHANGED
@@ -1,76 +1,388 @@
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
  * {
 
 
2
  margin: 0;
3
+ padding: 0;
4
+ box-sizing: border-box;
5
  }
6
 
7
+ :root {
8
+ --primary-color: #6366f1;
9
+ --primary-hover: #5558e3;
10
+ --background: #0f0f23;
11
+ --surface: #1a1b3a;
12
+ --surface-light: #252648;
13
+ --text-primary: #e2e8f0;
14
+ --text-secondary: #94a3b8;
15
+ --border: #334155;
16
+ --error: #ef4444;
17
+ --success: #10b981;
18
+ --user-bg: #4338ca;
19
+ --assistant-bg: #1e293b;
20
  }
21
 
22
  body {
23
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
24
+ background: linear-gradient(135deg, var(--background) 0%, #1a1a2e 100%);
25
+ color: var(--text-primary);
26
+ height: 100vh;
27
+ overflow: hidden;
28
  }
29
 
30
+ .container {
 
31
  display: flex;
32
  flex-direction: column;
33
+ height: 100vh;
34
+ max-width: 1200px;
35
+ margin: 0 auto;
36
+ }
37
+
38
+ .header {
39
+ background: var(--surface);
40
+ padding: 1rem 1.5rem;
41
+ border-bottom: 1px solid var(--border);
42
+ display: flex;
43
+ justify-content: space-between;
44
  align-items: center;
45
  }
46
 
47
+ .header h1 {
48
+ font-size: 1.5rem;
49
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
50
+ -webkit-background-clip: text;
51
+ -webkit-text-fill-color: transparent;
52
+ }
53
 
54
+ .settings {
55
+ position: relative;
56
+ }
 
57
 
58
+ .settings-btn {
59
+ background: transparent;
60
+ border: none;
61
+ font-size: 1.5rem;
62
  cursor: pointer;
63
+ padding: 0.5rem;
64
+ border-radius: 0.5rem;
65
+ transition: background 0.2s;
66
+ }
67
+
68
+ .settings-btn:hover {
69
+ background: var(--surface-light);
70
+ }
71
 
72
+ .settings-menu {
73
+ position: absolute;
74
+ right: 0;
75
+ top: 100%;
76
+ margin-top: 0.5rem;
77
+ background: var(--surface);
78
+ border: 1px solid var(--border);
79
+ border-radius: 0.5rem;
80
+ padding: 1rem;
81
+ min-width: 200px;
82
+ z-index: 1000;
83
+ box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
84
  }
85
 
86
+ .settings-menu.hidden {
87
  display: none;
88
  }
89
 
90
+ .device-toggle {
91
+ display: flex;
92
+ align-items: center;
93
+ gap: 0.5rem;
94
+ cursor: pointer;
95
+ padding: 0.5rem;
96
+ border-radius: 0.25rem;
97
+ transition: background 0.2s;
98
+ }
99
+
100
+ .device-toggle:hover {
101
+ background: var(--surface-light);
102
+ }
103
+
104
+ .device-toggle.disabled {
105
+ opacity: 0.5;
106
+ cursor: not-allowed;
107
  }
108
 
109
+ .clear-btn {
110
+ width: 100%;
111
+ margin-top: 1rem;
112
+ padding: 0.5rem 1rem;
113
+ background: var(--error);
114
+ color: white;
115
+ border: none;
116
+ border-radius: 0.5rem;
117
  cursor: pointer;
118
+ transition: opacity 0.2s;
119
  }
120
 
121
+ .clear-btn:hover:not(:disabled) {
122
+ opacity: 0.9;
123
  }
124
 
125
+ .chat-container {
126
+ flex: 1;
127
+ overflow-y: auto;
128
+ padding: 1.5rem;
129
+ display: flex;
130
+ flex-direction: column;
131
+ gap: 1rem;
132
+ }
133
+
134
+ .welcome-message {
135
+ text-align: center;
136
+ padding: 3rem 1rem;
137
+ color: var(--text-secondary);
138
+ }
139
+
140
+ .welcome-message h2 {
141
+ font-size: 2rem;
142
+ margin-bottom: 0.5rem;
143
+ color: var(--text-primary);
144
+ }
145
+
146
+ .message {
147
+ display: flex;
148
+ gap: 1rem;
149
+ animation: fadeIn 0.3s ease-in;
150
+ }
151
+
152
+ @keyframes fadeIn {
153
+ from {
154
+ opacity: 0;
155
+ transform: translateY(10px);
156
+ }
157
+ to {
158
+ opacity: 1;
159
+ transform: translateY(0);
160
+ }
161
+ }
162
+
163
+ .message-avatar {
164
+ width: 32px;
165
+ height: 32px;
166
+ border-radius: 50%;
167
+ display: flex;
168
+ align-items: center;
169
+ justify-content: center;
170
+ font-size: 1.2rem;
171
+ flex-shrink: 0;
172
+ }
173
+
174
+ .user-message .message-avatar {
175
+ background: var(--user-bg);
176
+ }
177
+
178
+ .assistant-message .message-avatar {
179
+ background: var(--assistant-bg);
180
+ }
181
+
182
+ .message-content {
183
+ background: var(--surface);
184
+ padding: 0.75rem 1rem;
185
+ border-radius: 1rem;
186
+ max-width: 70%;
187
+ line-height: 1.5;
188
+ white-space: pre-wrap;
189
+ word-wrap: break-word;
190
+ }
191
+
192
+ .user-message .message-content {
193
+ background: var(--user-bg);
194
+ margin-left: auto;
195
+ }
196
+
197
+ .assistant-message .message-content {
198
+ background: var(--surface-light);
199
+ }
200
+
201
+ .error-message {
202
+ background: rgba(239, 68, 68, 0.1);
203
+ border: 1px solid var(--error);
204
+ color: var(--error);
205
+ padding: 1rem;
206
+ border-radius: 0.5rem;
207
+ text-align: center;
208
  }
209
 
210
+ .input-container {
211
+ background: var(--surface);
212
+ border-top: 1px solid var(--border);
213
+ padding: 1rem 1.5rem;
214
+ }
215
+
216
+ .typing-indicator {
217
+ display: flex;
218
+ gap: 0.3rem;
219
+ padding: 0.5rem 0;
220
+ }
221
+
222
+ .typing-indicator.hidden {
223
+ display: none;
224
+ }
225
+
226
+ .typing-indicator span {
227
+ width: 8px;
228
+ height: 8px;
229
+ background: var(--text-secondary);
230
+ border-radius: 50%;
231
+ animation: typing 1.4s infinite;
232
+ }
233
+
234
+ .typing-indicator span:nth-child(2) {
235
+ animation-delay: 0.2s;
236
+ }
237
+
238
+ .typing-indicator span:nth-child(3) {
239
+ animation-delay: 0.4s;
240
+ }
241
+
242
+ @keyframes typing {
243
+ 0%, 60%, 100% {
244
+ transform: translateY(0);
245
+ opacity: 0.5;
246
+ }
247
+ 30% {
248
+ transform: translateY(-10px);
249
+ opacity: 1;
250
+ }
251
+ }
252
+
253
+ .chat-form {
254
+ display: flex;
255
+ gap: 0.75rem;
256
+ align-items: flex-end;
257
+ }
258
+
259
+ .message-input {
260
+ flex: 1;
261
+ background: var(--surface-light);
262
+ color: var(--text-primary);
263
+ border: 1px solid var(--border);
264
+ border-radius: 1rem;
265
+ padding: 0.75rem 1rem;
266
+ font-size: 1rem;
267
+ resize: none;
268
+ outline: none;
269
+ transition: border-color 0.2s;
270
+ font-family: inherit;
271
+ line-height: 1.5;
272
+ max-height: 120px;
273
+ }
274
+
275
+ .message-input:focus {
276
+ border-color: var(--primary-color);
277
+ }
278
+
279
+ .message-input:disabled {
280
+ opacity: 0.5;
281
+ cursor: not-allowed;
282
+ }
283
+
284
+ .send-btn {
285
+ background: var(--primary-color);
286
  color: white;
287
+ border: none;
288
+ border-radius: 50%;
289
+ width: 44px;
290
+ height: 44px;
291
+ display: flex;
292
+ align-items: center;
293
+ justify-content: center;
294
+ cursor: pointer;
295
+ transition: background 0.2s, transform 0.1s;
296
+ }
297
+
298
+ .send-btn:hover:not(:disabled) {
299
+ background: var(--primary-hover);
300
+ transform: scale(1.05);
301
+ }
302
+
303
+ .send-btn:disabled {
304
+ opacity: 0.5;
305
+ cursor: not-allowed;
306
+ }
307
+
308
+ .loading-overlay {
309
+ position: fixed;
310
+ top: 0;
311
+ left: 0;
312
+ right: 0;
313
+ bottom: 0;
314
+ background: rgba(15, 15, 35, 0.95);
315
+ display: flex;
316
+ align-items: center;
317
+ justify-content: center;
318
+ z-index: 9999;
319
+ backdrop-filter: blur(10px);
320
+ }
321
+
322
+ .loading-overlay.hidden {
323
+ display: none;
324
+ }
325
+
326
+ .loader {
327
+ text-align: center;
328
+ }
329
+
330
+ .loader-spinner {
331
+ width: 60px;
332
+ height: 60px;
333
+ border: 3px solid var(--surface-light);
334
+ border-top-color: var(--primary-color);
335
+ border-radius: 50%;
336
+ margin: 0 auto 1.5rem;
337
+ animation: spin 1s linear infinite;
338
+ }
339
+
340
+ @keyframes spin {
341
+ to {
342
+ transform: rotate(360deg);
343
+ }
344
+ }
345
+
346
+ .loader p {
347
+ color: var(--text-primary);
348
+ margin: 0.5rem 0;
349
+ }
350
+
351
+ .loader-status {
352
+ color: var(--text-secondary);
353
+ font-size: 0.9rem;
354
+ }
355
+
356
+ @media (max-width: 768px) {
357
+ .header h1 {
358
+ font-size: 1.25rem;
359
+ }
360
+
361
+ .message-content {
362
+ max-width: 85%;
363
+ }
364
+
365
+ .chat-container {
366
+ padding: 1rem;
367
+ }
368
+
369
+ .input-container {
370
+ padding: 1rem;
371
+ }
372
+ }
373
+
374
+ @media (max-width: 480px) {
375
+ .message-content {
376
+ max-width: 90%;
377
+ }
378
+
379
+ .message {
380
+ gap: 0.5rem;
381
+ }
382
+
383
+ .message-avatar {
384
+ width: 28px;
385
+ height: 28px;
386
+ font-size: 1rem;
387
+ }
388
  }