Reality123b commited on
Commit
8e3eda3
·
verified ·
1 Parent(s): a116387

Update application/templates/index.html

Browse files
Files changed (1) hide show
  1. application/templates/index.html +446 -419
application/templates/index.html CHANGED
@@ -1,412 +1,455 @@
1
  <!DOCTYPE html>
2
  <html lang="en">
3
  <head>
4
- <link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
5
  <meta charset="UTF-8">
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css">
8
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;700&display=swap" rel="stylesheet">
9
  <link href="https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;700&display=swap" rel="stylesheet">
10
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/atom-one-dark.min.css">
 
 
 
11
  <style>
12
- ::-webkit-scrollbar {
13
- width: 12px;
14
- }
15
-
16
- ::-webkit-scrollbar-track {
17
- background: transparent;
18
- }
19
-
20
- ::-webkit-scrollbar-thumb {
21
- background: rgb(43, 43, 43);
22
- border-radius: 6px;
23
- }
24
-
25
- ::-webkit-scrollbar-thumb:hover {
26
- background: rgb(119, 119, 119);
27
- }
28
- html,body{
29
- padding: 0;
30
- margin: 0;
31
- background-color: rgb(2,2,8);
32
- width: 100vw;
33
- height: 100vh;
34
- overflow: hidden;
35
- scrollbar-width: thin;
36
- scrollbar-color: rgb(41, 41, 41) transparent;
37
- font-family: 'Inter';
38
-
39
- }
40
- nav{
41
- position: fixed;
42
- width: 100vw;
43
- height: 8vh;
44
- z-index: 100;
45
- display: flex;
46
- }
47
- .hamburger{
48
- display: flex;
49
- flex-direction: column;
50
- gap: 1.5vh;
51
- width: 20vh;
52
- color: white;
53
- margin: 1vw;
54
- cursor: pointer;
55
- position: absolute;
56
- z-index: 101;
57
- margin: 10px;
58
- }
59
- .line1{
60
- background-color: rgb(122, 122, 122);
61
- width: 6vh;
62
- height: 0.5vh;
63
- }
64
- .line2{
65
- background-color: rgb(104, 104, 104);
66
- width: 3vh;
67
- height: 0.5vh;
68
- }
69
-
70
- .hamburger:hover .line1{
71
- transform: translateX(-30px);
72
- transition: transform 1s ease;
73
- }
74
- .hamburger:hover .line2{
75
- transform: translateX(30px);
76
- transition: transform 1s ease;
77
- }
78
- .menu{
79
- height: 100vh;
80
- width: 0px;
81
- background-color: rgba(20, 20, 20,0.5);
82
- border-radius: 10px;
83
- position: fixed;
84
- top: 0;
85
- left: 0;
86
- display: flex;
87
- flex-direction: column;
88
- overflow-y: auto;
89
- }
90
- .newChat{
91
- margin-top: 8vh;
92
- margin-left: 1vw;
93
- color: gray;
94
- font-size: large;
95
- cursor: pointer;
96
- font-weight: 400;
97
- position: relative;
98
- font-size: large;
99
- }
100
- .newChat:hover{
101
- transform: scale(0.95);
102
- transition: transform 0.7s ease;
103
- }
104
- .prevChatsCont{
105
- color: rgb(172, 171, 171);
106
- margin-left: 1vw;
107
- font-weight: 300;
108
- display: flex;
109
- flex-direction: column;
110
- gap: 1vh;
111
- position: relative;
112
- font-size: medium;
113
-
114
- }
115
- .prevChat{
116
- min-height: 5vh;
117
- cursor: pointer;
118
- width: 90%;
119
- display: flex;
120
- align-items: center;
121
- padding-left: 5%;
122
- border-radius: 10px;
123
- overflow: hidden;
124
- padding-top: 1%;
125
- padding-bottom: 1%;
126
- position: relative;
127
- }
128
- .prevChat:hover{
129
- background-color: rgba(70,70, 70,1);
130
- transform: translateY(5px);
131
- transition: transform 0.8s ease;
132
- }
133
- .chatsTxt{
134
- color: #fdffdf;
135
- margin-left: 1vw;
136
- font-size: 14px;
137
- margin-top: 4vh;
138
- margin-bottom: 3vh;
139
- z-index: 100;
140
- overflow: hidden;
141
- min-height: 5vh;
142
- display: flex;
143
- align-items: center;
144
-
145
- }
146
-
147
- .container {
148
- width: 99.5%;
149
- max-width: 99.5%;
150
- height: 90%;
151
- position: absolute;
152
- z-index: 50;
153
- top: 8vh;
154
- display: flex;
155
- flex-direction: column;
156
- justify-content: flex-end;
157
- z-index: 1;
158
- }
159
-
160
- .inputs {
161
- width: 70%;
162
- display: flex;
163
- flex-direction: row;
164
- justify-content: space-between;
165
- align-items: center;
166
- background-color: rgba(51, 51, 51, 0.4);
167
- padding: 10px;
168
- border-top-right-radius: 50px;
169
- border-bottom-left-radius: 20px;
170
- border-top-left-radius: 20px;
171
- border-bottom-right-radius: 50px;
172
- font-size: large;
173
- position: relative;
174
- margin-top: auto;
175
- align-self: center;
176
-
177
- }
178
-
179
- .textBox{
180
- width: 90%;
181
- background: none;
182
- outline: none;
183
- border: none;
184
- color: rgb(161, 161, 161);
185
- padding: 7px;
186
- }
187
- .sendBtn{
188
- background-color: white;
189
- border: none;
190
- color: black;
191
- font-size: x-large;
192
- cursor: pointer;
193
- border-radius: 50%;
194
- width: 6vh;
195
- height: 6vh;
196
- }
197
- .messages {
198
- overflow-y: auto;
199
- color: white;
200
- padding: 10px;
201
- display: flex;
202
- flex-direction: column;
203
- position: relative;
204
- }
205
- .user{
206
- margin-left: auto;
207
- max-width: 60%;
208
- background-color: rgba(51, 51, 51, 0.4);
209
- padding: 0.5vh 1.5vh 0.5vh 1.5vh;
210
- text-align: left;
211
- font-weight: 300;
212
- border-radius: 10px;
213
- line-height: 130%;
214
-
215
- }
216
- .user p{
217
- color: #b4b4b4;
218
- padding: 0;
219
- opacity: 0.9;
220
- }
221
- .ai{
222
- text-align: left;
223
- width: 70%;
224
- margin-left: auto;
225
- margin-right: auto;
226
- margin-top: 2vh;
227
- }
228
- .ai p {
229
- opacity: 0.9;
230
- font-weight: 300;
231
- font-size: medium;
232
- line-height: 1.6;
233
- color: #c5c5c5;
234
- background-color: rgba(28, 28, 28, 0.5);
235
- padding: 20px;
236
- border-radius: 10px;
237
- border: 2px solid rgba(255,255,255,0.1);
238
- font-family: 'Inter';
239
- }
240
-
241
- .subHeading,.heading{
242
- padding: 1vh;
243
- border-radius: 10px;
244
- display: inline-block;
245
- margin-bottom: 2vh;
246
- margin-top: 2vh;
247
- }
248
- .subHeading{
249
- background-color: rgba(59, 59, 59, 0.5);
250
- border: 1px solid rgba(255,255,255,0.1)
251
- }
252
- .heading{
253
- background-color: rgba(119, 16, 238, 0.55);
254
- box-shadow: 6px 6px rgba(0, 0, 0, 0.5) ;
255
- }
256
-
257
- code{
258
- border-radius: 15px;
259
- }
260
- .models{
261
- position: relative;
262
- margin: auto;
263
- padding: 10px ;
264
- outline: none;
265
- background-color: rgb(43, 43, 43);
266
- color: rgb(177, 177, 177);
267
- border: none;
268
- border-radius: 10px;
269
- }
270
- .models:hover{
271
- background-color: #383838;
272
- }
273
- .models option{
274
- background-color: rgb(34, 34, 34);
275
- color: #afafaf;
276
- padding: 10px;
277
- }
278
- .alert{
279
- position: absolute;
280
- top: 50%;
281
- left: 50%;
282
- transform: translate(-50%,-50%);
283
- width: 320px;
284
- height: 320px;
285
- display: flex;
286
- flex-direction: column;
287
- gap: 0px;
288
- color: #d8d8d8;
289
- background-color: #222222;
290
- box-shadow: 6px 6px rgb(41, 41, 41) ;
291
- justify-content: center;
292
- z-index: 100;
293
- }
294
- .alert p{
295
- float: left;
296
- font-family: 'Inter';
297
- font-weight: 300;
298
- font-size: 15px;
299
- color: #cfcfcf;
300
- opacity: 0.9;
301
- padding-left: 10px;
302
- }
303
- .closeAlert{
304
- margin-left: auto;
305
- margin-right: 10px;
306
- margin-top: 10px;
307
- background-color: rgb(247, 102, 102);
308
- padding: 10px;
309
- cursor: pointer;
310
- border-radius: 10px;
311
- color: #ffffff;
312
- }
313
- .discord {
314
- margin: 10px;
315
- text-decoration: none;
316
- color: rgb(211, 211, 211);
317
- padding: 7.5px;
318
- border-radius: 10px;
319
- background: linear-gradient(to right, #4A148C, #9c18e3);
320
- cursor: pointer;
321
- display: inline-block;
322
- font-size: 13px;
323
- max-width: 77px;
324
- }
325
- .note{
326
- text-align: center;
327
- background-color: rgba(119, 16, 238, 0.55);
328
- box-shadow: 6px 6px rgb(32, 32, 32) ;
329
- margin: auto;
330
- width: 70px;
331
- padding: 10px;
332
- }
333
- .webSearch{
334
- color: rgb(233, 233, 233);
335
- background: transparent;
336
- cursor: pointer;
337
- border: none;
338
- font-size: x-large;
339
- }
340
-
341
- @media screen and (max-width: 780px){
342
- .menu{
343
- background-color: rgba(20, 20, 20);
344
- }
345
- .inputs{
346
- width: 85%;
347
- }
348
- .ai{
349
- width: 90%;
350
- }
351
- .user{
352
- max-width: 90%;
353
- }
354
- }
355
- /* New styles for thinking section */
356
- .thinking-container {
357
- background: rgba(30, 30, 30, 0.7);
358
- border-radius: 8px;
359
- margin: 10px 0;
360
  overflow: hidden;
361
- border: 1px solid rgba(255, 255, 255, 0.1);
 
 
362
  }
363
 
364
- .thinking-header {
 
 
 
 
365
  display: flex;
 
366
  align-items: center;
367
- padding: 10px 15px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
368
  cursor: pointer;
369
- background: rgba(119, 16, 238, 0.2);
370
- border-bottom: 1px solid rgba(255, 255, 255, 0.1);
 
 
 
 
 
 
371
  }
372
 
373
- .thinking-header:hover {
374
- background: rgba(119, 16, 238, 0.3);
 
 
 
 
 
 
 
375
  }
376
 
377
- .thinking-title {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
378
  color: #fdffdf;
 
379
  font-size: 14px;
380
- margin-right: 10px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
381
  }
382
 
383
- .thinking-arrow {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
384
  margin-left: auto;
385
- transition: transform 0.3s ease;
 
 
 
 
 
 
 
 
 
 
 
 
 
386
  }
387
 
388
- .thinking-arrow.open {
389
- transform: rotate(180deg);
 
 
 
 
390
  }
391
 
392
- .thinking-content {
393
- padding: 15px;
 
 
 
394
  color: #c5c5c5;
395
- font-size: 14px;
396
- line-height: 1.5;
397
- max-height: 0;
398
- overflow: hidden;
399
- transition: max-height 0.3s ease-out;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
400
  }
401
 
402
- .thinking-content.open {
403
- max-height: 500px;
404
- transition: max-height 0.5s ease-in;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
405
  }
406
  </style>
407
- <script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
408
- <script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
409
- <title>Chat Completion Demo</title>
410
  </head>
411
  <body>
412
  <nav>
@@ -425,59 +468,43 @@ code{
425
  </nav>
426
  <div class="container" id="container">
427
  <div class="messages" id="messages">
428
- <!-- Messages will be inserted here -->
429
  </div>
430
  <div class="inputs">
431
- <button id="webSearch" class="webSearch"><i class="fa-solid fa-globe"></i></button>
432
  <textarea name="" id="textBox" class="textBox" placeholder="Enter your message..."></textarea>
433
  <button id="sendBtn" class="sendBtn"><i class="fa-solid fa-arrow-up"></i></button>
434
  </div>
435
  </div>
 
 
 
 
 
 
 
 
 
 
436
  <script>
437
- // Add this to your existing JavaScript or create a new script
438
- function createThinkingElement(thinkingContent) {
439
- const container = document.createElement('div');
440
- container.className = 'thinking-container';
441
-
442
- const header = document.createElement('div');
443
- header.className = 'thinking-header';
444
-
445
- const title = document.createElement('span');
446
- title.className = 'thinking-title';
447
- title.textContent = 'Reasoning about it';
448
-
449
- const arrow = document.createElement('i');
450
- arrow.className = 'fa-solid fa-chevron-down thinking-arrow';
451
-
452
- const content = document.createElement('div');
453
- content.className = 'thinking-content';
454
- content.textContent = thinkingContent;
455
-
456
- header.appendChild(title);
457
- header.appendChild(arrow);
458
- container.appendChild(header);
459
- container.appendChild(content);
460
-
461
- header.addEventListener('click', () => {
462
- arrow.classList.toggle('open');
463
- content.classList.toggle('open');
464
- });
465
-
466
- return container;
467
- }
468
-
469
- // Example usage in your message processing logic:
470
- function processMessage(message) {
471
- const thinkMatch = message.match(/<think>(.*?)<\/think>/s);
472
- if (thinkMatch) {
473
- const thinkingContent = thinkMatch[1].trim();
474
- const thinkingElement = createThinkingElement(thinkingContent);
475
- // Insert the thinking element into your message container
476
- document.getElementById('messages').appendChild(thinkingElement);
477
  }
478
- }
479
  </script>
480
- <script src="{{ url_for('static', filename='js/script.js') }}" type="module"></script>
481
  <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script>
 
482
  </body>
483
  </html>
 
1
  <!DOCTYPE html>
2
  <html lang="en">
3
  <head>
 
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css">
7
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;700&display=swap" rel="stylesheet">
8
  <link href="https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;700&display=swap" rel="stylesheet">
9
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/atom-one-dark.min.css">
10
+ <script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
11
+ <script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
12
+ <title>Chat Completion Demo</title>
13
  <style>
14
+ ::-webkit-scrollbar {
15
+ width: 12px;
16
+ }
17
+
18
+ ::-webkit-scrollbar-track {
19
+ background: transparent;
20
+ }
21
+
22
+ ::-webkit-scrollbar-thumb {
23
+ background: rgb(43, 43, 43);
24
+ border-radius: 6px;
25
+ }
26
+
27
+ ::-webkit-scrollbar-thumb:hover {
28
+ background: rgb(119, 119, 119);
29
+ }
30
+
31
+ html, body {
32
+ padding: 0;
33
+ margin: 0;
34
+ background-color: rgb(2, 2, 8);
35
+ width: 100vw;
36
+ height: 100vh;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  overflow: hidden;
38
+ scrollbar-width: thin;
39
+ scrollbar-color: rgb(41, 41, 41) transparent;
40
+ font-family: 'Inter';
41
  }
42
 
43
+ nav {
44
+ position: fixed;
45
+ width: 100vw;
46
+ height: 8vh;
47
+ z-index: 100;
48
  display: flex;
49
+ justify-content: space-between;
50
  align-items: center;
51
+ background-color: rgba(20, 20, 20, 0.8);
52
+ backdrop-filter: blur(10px);
53
+ }
54
+
55
+ .hamburger {
56
+ display: flex;
57
+ flex-direction: column;
58
+ gap: 1.5vh;
59
+ width: 20vh;
60
+ color: white;
61
+ margin: 1vw;
62
+ cursor: pointer;
63
+ position: absolute;
64
+ z-index: 101;
65
+ margin: 10px;
66
+ }
67
+
68
+ .line1, .line2 {
69
+ background-color: rgb(122, 122, 122);
70
+ width: 6vh;
71
+ height: 0.5vh;
72
+ transition: transform 0.3s ease;
73
+ }
74
+
75
+ .hamburger:hover .line1 {
76
+ transform: translateX(-30px);
77
+ }
78
+
79
+ .hamburger:hover .line2 {
80
+ transform: translateX(30px);
81
+ }
82
+
83
+ .menu {
84
+ height: 100vh;
85
+ width: 0;
86
+ background-color: rgba(20, 20, 20, 0.8);
87
+ backdrop-filter: blur(10px);
88
+ border-radius: 10px;
89
+ position: fixed;
90
+ top: 0;
91
+ left: 0;
92
+ display: flex;
93
+ flex-direction: column;
94
+ overflow-y: auto;
95
+ transition: width 0.3s ease;
96
+ }
97
+
98
+ .menu.open {
99
+ width: 250px;
100
+ }
101
+
102
+ .newChat {
103
+ margin-top: 8vh;
104
+ margin-left: 1vw;
105
+ color: gray;
106
+ font-size: large;
107
  cursor: pointer;
108
+ font-weight: 400;
109
+ position: relative;
110
+ font-size: large;
111
+ transition: transform 0.3s ease;
112
+ }
113
+
114
+ .newChat:hover {
115
+ transform: scale(0.95);
116
  }
117
 
118
+ .prevChatsCont {
119
+ color: rgb(172, 171, 171);
120
+ margin-left: 1vw;
121
+ font-weight: 300;
122
+ display: flex;
123
+ flex-direction: column;
124
+ gap: 1vh;
125
+ position: relative;
126
+ font-size: medium;
127
  }
128
 
129
+ .prevChat {
130
+ min-height: 5vh;
131
+ cursor: pointer;
132
+ width: 90%;
133
+ display: flex;
134
+ align-items: center;
135
+ padding-left: 5%;
136
+ border-radius: 10px;
137
+ overflow: hidden;
138
+ padding-top: 1%;
139
+ padding-bottom: 1%;
140
+ position: relative;
141
+ transition: background-color 0.3s ease, transform 0.3s ease;
142
+ }
143
+
144
+ .prevChat:hover {
145
+ background-color: rgba(70, 70, 70, 1);
146
+ transform: translateY(5px);
147
+ }
148
+
149
+ .chatsTxt {
150
  color: #fdffdf;
151
+ margin-left: 1vw;
152
  font-size: 14px;
153
+ margin-top: 4vh;
154
+ margin-bottom: 3vh;
155
+ z-index: 100;
156
+ overflow: hidden;
157
+ min-height: 5vh;
158
+ display: flex;
159
+ align-items: center;
160
+ }
161
+
162
+ .container {
163
+ width: 99.5%;
164
+ max-width: 99.5%;
165
+ height: 90%;
166
+ position: absolute;
167
+ z-index: 50;
168
+ top: 8vh;
169
+ display: flex;
170
+ flex-direction: column;
171
+ justify-content: flex-end;
172
+ z-index: 1;
173
  }
174
 
175
+ .inputs {
176
+ width: 70%;
177
+ display: flex;
178
+ flex-direction: row;
179
+ justify-content: space-between;
180
+ align-items: center;
181
+ background-color: rgba(51, 51, 51, 0.4);
182
+ padding: 10px;
183
+ border-top-right-radius: 50px;
184
+ border-bottom-left-radius: 20px;
185
+ border-top-left-radius: 20px;
186
+ border-bottom-right-radius: 50px;
187
+ font-size: large;
188
+ position: relative;
189
+ margin-top: auto;
190
+ align-self: center;
191
+ transition: width 0.3s ease;
192
+ }
193
+
194
+ .inputs.expanded {
195
+ width: 90%;
196
+ }
197
+
198
+ .textBox {
199
+ width: 90%;
200
+ background: none;
201
+ outline: none;
202
+ border: none;
203
+ color: rgb(161, 161, 161);
204
+ padding: 7px;
205
+ font-family: 'Inter';
206
+ resize: none;
207
+ }
208
+
209
+ .sendBtn {
210
+ background-color: white;
211
+ border: none;
212
+ color: black;
213
+ font-size: x-large;
214
+ cursor: pointer;
215
+ border-radius: 50%;
216
+ width: 6vh;
217
+ height: 6vh;
218
+ transition: background-color 0.3s ease;
219
+ }
220
+
221
+ .sendBtn:hover {
222
+ background-color: #e0e0e0;
223
+ }
224
+
225
+ .messages {
226
+ overflow-y: auto;
227
+ color: white;
228
+ padding: 10px;
229
+ display: flex;
230
+ flex-direction: column;
231
+ position: relative;
232
+ }
233
+
234
+ .user {
235
  margin-left: auto;
236
+ max-width: 60%;
237
+ background-color: rgba(51, 51, 51, 0.4);
238
+ padding: 0.5vh 1.5vh 0.5vh 1.5vh;
239
+ text-align: left;
240
+ font-weight: 300;
241
+ border-radius: 10px;
242
+ line-height: 130%;
243
+ margin-bottom: 10px;
244
+ }
245
+
246
+ .user p {
247
+ color: #b4b4b4;
248
+ padding: 0;
249
+ opacity: 0.9;
250
  }
251
 
252
+ .ai {
253
+ text-align: left;
254
+ width: 70%;
255
+ margin-left: auto;
256
+ margin-right: auto;
257
+ margin-top: 2vh;
258
  }
259
 
260
+ .ai p {
261
+ opacity: 0.9;
262
+ font-weight: 300;
263
+ font-size: medium;
264
+ line-height: 1.6;
265
  color: #c5c5c5;
266
+ background-color: rgba(28, 28, 28, 0.5);
267
+ padding: 20px;
268
+ border-radius: 10px;
269
+ border: 2px solid rgba(255, 255, 255, 0.1);
270
+ font-family: 'Inter';
271
+ margin-bottom: 10px;
272
+ }
273
+
274
+ .subHeading, .heading {
275
+ padding: 1vh;
276
+ border-radius: 10px;
277
+ display: inline-block;
278
+ margin-bottom: 2vh;
279
+ margin-top: 2vh;
280
+ }
281
+
282
+ .subHeading {
283
+ background-color: rgba(59, 59, 59, 0.5);
284
+ border: 1px solid rgba(255, 255, 255, 0.1);
285
+ }
286
+
287
+ .heading {
288
+ background-color: rgba(119, 16, 238, 0.55);
289
+ box-shadow: 6px 6px rgba(0, 0, 0, 0.5);
290
+ }
291
+
292
+ code {
293
+ border-radius: 15px;
294
+ background-color: #282a36;
295
+ color: #f8f8f2;
296
+ padding: 5px;
297
+ font-family: 'Fira Code', monospace;
298
+ }
299
+
300
+ pre {
301
+ background-color: #282a36;
302
+ color: #f8f8f2;
303
+ padding: 10px;
304
+ border-radius: 15px;
305
+ overflow-x: auto;
306
+ font-family: 'Fira Code', monospace;
307
+ }
308
+
309
+ .models {
310
+ position: relative;
311
+ margin: auto;
312
+ padding: 10px;
313
+ outline: none;
314
+ background-color: rgb(43, 43, 43);
315
+ color: rgb(177, 177, 177);
316
+ border: none;
317
+ border-radius: 10px;
318
+ transition: background-color 0.3s ease;
319
  }
320
 
321
+ .models:hover {
322
+ background-color: #383838;
323
+ }
324
+
325
+ .models option {
326
+ background-color: rgb(34, 34, 34);
327
+ color: #afafaf;
328
+ padding: 10px;
329
+ }
330
+
331
+ .alert {
332
+ position: absolute;
333
+ top: 50%;
334
+ left: 50%;
335
+ transform: translate(-50%, -50%);
336
+ width: 320px;
337
+ height: 320px;
338
+ display: flex;
339
+ flex-direction: column;
340
+ gap: 0px;
341
+ color: #d8d8d8;
342
+ background-color: #222222;
343
+ box-shadow: 6px 6px rgb(41, 41, 41);
344
+ justify-content: center;
345
+ z-index: 100;
346
+ border-radius: 15px;
347
+ animation: fadeIn 0.5s ease-in-out;
348
+ }
349
+
350
+ @keyframes fadeIn {
351
+ from { opacity: 0; transform: translate(-50%, -60%); }
352
+ to { opacity: 1; transform: translate(-50%, -50%); }
353
+ }
354
+
355
+ .alert p {
356
+ float: left;
357
+ font-family: 'Inter';
358
+ font-weight: 300;
359
+ font-size: 15px;
360
+ color: #cfcfcf;
361
+ opacity: 0.9;
362
+ padding-left: 10px;
363
+ }
364
+
365
+ .closeAlert {
366
+ margin-left: auto;
367
+ margin-right: 10px;
368
+ margin-top: 10px;
369
+ background-color: rgb(247, 102, 102);
370
+ padding: 10px;
371
+ cursor: pointer;
372
+ border-radius: 10px;
373
+ color: #ffffff;
374
+ transition: background-color 0.3s ease;
375
+ }
376
+
377
+ .closeAlert:hover {
378
+ background-color: #ff5757;
379
+ }
380
+
381
+ .discord {
382
+ margin: 10px;
383
+ text-decoration: none;
384
+ color: rgb(211, 211, 211);
385
+ padding: 7.5px;
386
+ border-radius: 10px;
387
+ background: linear-gradient(to right, #4A148C, #9c18e3);
388
+ cursor: pointer;
389
+ display: inline-block;
390
+ font-size: 13px;
391
+ max-width: 77px;
392
+ transition: background 0.3s ease;
393
+ }
394
+
395
+ .discord:hover {
396
+ background: linear-gradient(to right, #9c18e3, #4A148C);
397
+ }
398
+
399
+ .note {
400
+ text-align: center;
401
+ background-color: rgba(119, 16, 238, 0.55);
402
+ box-shadow: 6px 6px rgb(32, 32, 32);
403
+ margin: auto;
404
+ width: 70px;
405
+ padding: 10px;
406
+ border-radius: 10px;
407
+ }
408
+
409
+ .webSearch {
410
+ color: rgb(233, 233, 233);
411
+ background: transparent;
412
+ cursor: pointer;
413
+ border: none;
414
+ font-size: x-large;
415
+ transition: color 0.3s ease;
416
+ }
417
+
418
+ .webSearch:hover {
419
+ color: #ffcc00;
420
+ }
421
+
422
+ .generated-image {
423
+ margin-top: 20px;
424
+ text-align: center;
425
+ }
426
+
427
+ .generated-image img {
428
+ max-width: 80%;
429
+ height: auto;
430
+ border-radius: 10px;
431
+ border: 2px solid rgba(255, 255, 255, 0.1);
432
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
433
+ }
434
+
435
+ @media screen and (max-width: 780px) {
436
+ .menu {
437
+ background-color: rgba(20, 20, 20);
438
+ }
439
+
440
+ .inputs {
441
+ width: 85%;
442
+ }
443
+
444
+ .ai {
445
+ width: 90%;
446
+ }
447
+
448
+ .user {
449
+ max-width: 90%;
450
+ }
451
  }
452
  </style>
 
 
 
453
  </head>
454
  <body>
455
  <nav>
 
468
  </nav>
469
  <div class="container" id="container">
470
  <div class="messages" id="messages">
 
471
  </div>
472
  <div class="inputs">
473
+ <button id="imageGenBtn" class="webSearch"><i class="fa-solid fa-image"></i></button>
474
  <textarea name="" id="textBox" class="textBox" placeholder="Enter your message..."></textarea>
475
  <button id="sendBtn" class="sendBtn"><i class="fa-solid fa-arrow-up"></i></button>
476
  </div>
477
  </div>
478
+ <div class="alert" id="alert">
479
+ <div class="closeAlert" id="closeAlert">X</div>
480
+ <p class="note">Note</p>
481
+ <p>Welcome to Xylaria!</p>
482
+ </div>
483
+ <div class="textCustomization">
484
+ <div class="colors"></div>
485
+ <div class="fontSize"></div>
486
+ <div class="background"></div>
487
+ </div>
488
  <script>
489
+ document.getElementById('hamburger').addEventListener('click', function() {
490
+ document.getElementById('menu').classList.toggle('open');
491
+ });
492
+
493
+ document.getElementById('closeAlert').addEventListener('click', function() {
494
+ document.getElementById('alert').style.display = 'none';
495
+ });
496
+
497
+ document.getElementById('textBox').addEventListener('focus', function() {
498
+ document.querySelector('.inputs').classList.add('expanded');
499
+ });
500
+
501
+ document.getElementById('textBox').addEventListener('blur', function() {
502
+ if (!this.value) {
503
+ document.querySelector('.inputs').classList.remove('expanded');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
504
  }
505
+ });
506
  </script>
 
507
  <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script>
508
+ <script>hljs.highlightAll();</script>
509
  </body>
510
  </html>