PluginProbe ʕ •ᴥ•ʔ
AI Engine – The Chatbot, AI Framework & MCP for WordPress / 2.4.5
AI Engine – The Chatbot, AI Framework & MCP for WordPress v2.4.5
3.6.2 3.6.1 3.6.0 3.5.9 3.5.8 3.5.7 3.5.6 3.5.5 3.5.4 3.5.3 3.5.2 3.5.1 3.5.0 3.4.9 3.4.8 3.4.7 0.2.1 1.6.91 0.2.2 1.6.92 0.2.3 1.6.93 0.2.4 1.6.94 0.2.5 1.6.95 0.2.6 1.6.96 0.2.7 1.6.97 0.2.8 1.6.98 0.2.9 1.6.99 0.3.0 1.7.0 0.3.1 1.7.1 0.3.2 1.7.2 0.3.3 1.7.3 0.3.4 1.7.4 0.3.5 1.7.5 0.3.6 1.7.6 0.4.0 1.7.7 0.4.1 1.7.8 0.4.2 1.7.9 0.4.3 1.8.0 0.4.4 1.8.1 0.4.5 1.8.2 0.4.6 1.8.3 0.4.7 1.8.4 0.4.8 1.8.5 0.4.9 1.8.6 0.5.0 1.8.7 0.5.1 1.8.8 0.5.2 1.8.9 0.5.3 1.9.0 0.5.4 1.9.1 0.5.5 1.9.2 0.5.6 1.9.3 0.5.7 1.9.4 0.5.8 1.9.5 0.5.9 1.9.6 0.6.0 1.9.7 0.6.1 1.9.8 0.6.2 1.9.81 0.6.3 1.9.82 0.6.4 1.9.83 0.6.5 1.9.84 0.6.6 1.9.85 0.6.7 1.9.86 0.6.8 1.9.87 0.6.9 1.9.88 0.7.0 1.9.89 0.7.1 1.9.90 0.7.2 1.9.91 0.7.3 1.9.92 0.7.4 1.9.93 0.7.5 1.9.94 0.7.6 1.9.95 0.7.7 1.9.96 0.7.8 1.9.97 0.7.9 1.9.98 0.8.0 1.9.99 0.8.1 2.0.0 0.8.2 2.0.1 0.8.3 2.0.2 0.8.4 2.0.3 0.8.5 2.0.4 0.8.6 2.0.5 0.8.7 2.0.6 0.8.8 2.0.7 0.8.9 2.0.8 0.9.0 2.0.9 0.9.2 2.1.0 0.9.3 2.1.1 0.9.4 2.1.2 0.9.5 2.1.3 0.9.6 2.1.4 0.9.7 2.1.5 0.9.8 2.1.6 0.9.81 2.1.7 0.9.82 2.1.8 0.9.83 2.1.9 0.9.84 2.2.0 0.9.85 2.2.1 0.9.86 2.2.2 0.9.87 2.2.3 0.9.88 2.2.4 0.9.89 2.2.5 0.9.9 2.2.51 0.9.91 2.2.52 0.9.92 2.2.53 0.9.93 2.2.54 0.9.94 2.2.56 0.9.95 2.2.57 0.9.96 2.2.6 0.9.97 2.2.60 0.9.98 2.2.61 0.9.99 2.2.62 1.0.0 2.2.63 1.0.01 2.2.70 1.0.1 2.2.80 1.0.2 2.2.81 1.0.3 2.2.90 1.0.4 2.2.91 1.0.5 2.2.92 1.0.6 2.2.93 1.0.7 2.2.94 1.0.8 2.2.95 1.0.9 2.3.0 1.1.0 2.3.1 1.1.1 2.3.2 1.1.2 2.3.3 1.1.3 2.3.4 1.1.4 2.3.5 1.1.5 2.3.6 1.1.6 2.3.7 1.1.7 2.3.8 1.1.8 2.3.9 1.1.9 2.4.0 1.2.0 2.4.1 1.2.1 2.4.2 1.2.2 2.4.3 1.2.21 2.4.4 1.2.3 2.4.5 1.2.30 2.4.6 1.3.0 2.4.7 1.3.1 2.4.8 1.3.2 2.4.9 1.3.3 2.5.0 1.3.31 2.5.1 1.3.32 2.5.2 1.3.33 2.5.3 1.3.34 2.5.4 1.3.35 2.5.5 1.3.36 2.5.6 1.3.37 2.5.7 1.3.38 2.5.8 1.3.39 2.5.9 1.3.40 2.6.0 1.3.41 2.6.1 1.3.42 2.6.2 1.3.43 2.6.3 1.3.44 2.6.5 1.3.45 2.6.6 1.3.46 2.6.7 1.3.47 2.6.8 1.3.48 2.6.9 1.3.49 2.7.0 1.3.50 2.7.1 1.3.51 2.7.2 1.3.52 2.7.3 1.3.53 2.7.4 1.3.54 2.7.5 1.3.56 2.7.6 1.3.57 2.7.7 1.3.58 2.7.8 1.3.59 2.7.9 1.3.60 2.8.0 1.3.61 2.8.1 1.3.62 2.8.2 1.3.63 2.8.3 1.3.64 2.8.4 1.3.65 2.8.5 1.3.66 2.8.6 1.3.67 2.8.7 1.3.68 2.8.8 1.3.69 2.8.9 1.3.70 2.9.0 1.3.71 2.9.1 1.3.72 2.9.2 1.3.73 2.9.3 1.3.74 2.9.4 1.3.75 2.9.5 1.3.76 2.9.6 1.3.77 2.9.7 1.3.78 2.9.8 1.3.79 2.9.9 1.3.80 3.0.0 1.3.81 3.0.1 1.3.82 3.0.2 1.3.83 3.0.3 1.3.84 3.0.4 1.3.85 3.0.5 1.3.86 3.0.6 1.3.87 3.0.7 1.3.88 3.0.8 1.3.89 3.0.9 1.3.90 3.1.0 1.3.91 3.1.1 1.3.92 3.1.2 1.3.93 3.1.3 1.3.94 3.1.4 1.3.95 3.1.5 1.3.96 3.1.6 1.3.97 3.1.7 1.3.98 3.1.8 1.3.99 3.1.9 1.4.0 3.2.0 1.4.1 3.2.1 1.4.2 3.2.2 1.4.3 3.2.3 1.4.4 3.2.4 1.4.5 3.2.5 1.4.6 3.2.6 1.4.7 3.2.7 1.4.8 3.2.8 1.4.9 3.2.9 1.5.0 3.3.0 1.5.1 3.3.1 1.5.2 3.3.2 1.5.3 3.3.3 1.5.4 3.3.4 1.5.5 3.3.5 1.5.6 3.3.6 1.5.7 3.3.7 1.5.8 3.3.8 1.5.9 3.3.9 1.6.0 3.4.0 1.6.1 3.4.1 1.6.2 3.4.2 1.6.3 3.4.3 1.6.5 3.4.4 1.6.51 3.4.5 1.6.52 3.4.6 1.6.53 1.6.54 1.6.55 1.6.56 1.6.57 1.6.58 1.6.59 1.6.60 1.6.61 1.6.62 1.6.63 1.6.64 1.6.65 1.6.66 1.6.67 1.6.68 trunk 1.6.69 0.0.1 1.6.70 0.0.2 1.6.71 0.0.3 1.6.72 0.0.4 1.6.73 0.0.5 1.6.74 0.0.6 1.6.75 0.0.7 1.6.76 0.0.8 1.6.77 0.0.9 1.6.78 0.1.0 1.6.79 0.1.1 1.6.81 0.1.2 1.6.82 0.1.3 1.6.83 0.1.4 1.6.84 0.1.5 1.6.85 0.1.6 1.6.86 0.1.7 1.6.87 0.1.8 1.6.88 0.1.9 1.6.89 0.2.0 1.6.90
ai-engine / themes / sass / _common.scss
ai-engine / themes / sass Last commit date
_codeDark.scss 2 years ago _codeLight.scss 2 years ago _common.scss 2 years ago _copybutton.scss 2 years ago chatgpt.scss 2 years ago messages.scss 2 years ago timeless.scss 2 years ago
_common.scss
783 lines
1 // main: chatgpt.scss, messages.scss
2
3 @mixin file-upload-icon-sprites {
4 $icon-size: 32px;
5
6 &.mwai-idle-add {
7 background-position: -1 * $icon-size -3 * $icon-size;
8 }
9
10 &.mwai-image-add {
11 background-position: -1 * $icon-size -0 * $icon-size;
12 }
13
14 &.mwai-image-up {
15 background-position: -2 * $icon-size -0 * $icon-size;
16 }
17
18 &.mwai-image-del {
19 background-position: -3 * $icon-size -0 * $icon-size;
20 }
21
22 &.mwai-image-ok {
23 background-position: -4 * $icon-size -0 * $icon-size;
24 }
25
26 &.mwai-document-add {
27 background-position: -1 * $icon-size -2 * $icon-size;
28 }
29
30 &.mwai-document-up {
31 background-position: -2 * $icon-size -2 * $icon-size;
32 }
33
34 &.mwai-document-del {
35 background-position: -3 * $icon-size -2 * $icon-size;
36 }
37
38 &.mwai-document-ok {
39 background-position: -4 * $icon-size -2 * $icon-size;
40 }
41
42 .mwai-file-upload-progress {
43 position: absolute;
44 font-size: 8px;
45 width: 21px;
46 top: 24px;
47 left: 23px;
48 overflow: hidden;
49 text-align: center;
50 font-weight: bold;
51 color: white;
52 }
53 }
54
55 @mixin microphone {
56
57 width: 32px;
58 height: 32px;
59
60 svg {
61 width: 32px;
62 height: 32px;
63 fill: var(--mwai-fontColor);
64 opacity: 0.5;
65 filter: grayscale(100%);
66 transition: opacity 0.3s ease-out;
67 padding: 5px 10px;
68 cursor: pointer;
69 }
70
71 &[active=true]=true] svg {
72 opacity: 1;
73 }
74
75 &[disabled]] svg {
76 opacity: 0;
77 cursor: not-allowed;
78 }
79 }
80
81 @mixin fullscreen-window {
82 position: fixed;
83 left: 0 !important;
84 right: 0 !important;
85 bottom: 0 !important;
86 top: 0 !important;
87 width: inherit;
88 height: inherit;
89 max-height: inherit;
90 max-width: inherit;
91 display: flex;
92 flex-direction: column;
93 margin: 0;
94 z-index: 999999;
95 background-color: var(--mwai-backgroundSecondaryColor);
96
97 .mwai-header {
98 border-radius: 0;
99 }
100
101 .mwai-content {
102 height: 100%;
103 max-height: inherit;
104 border-radius: 0;
105
106 .mwai-conversation {
107 flex: auto;
108 max-height: none;
109 }
110 }
111 }
112
113 @mixin common-styles {
114
115 // Transitions
116
117 &.mwai-transition, .mwai-transition {
118 opacity: 0;
119 transition: opacity 350ms ease-in-out;
120 }
121
122 &.mwai-transition-visible, .mwai-transition-visible {
123 opacity: 1;
124 }
125
126 .mwai-text {
127
128 img {
129 max-width: 100%;
130 }
131
132 div {
133 p:first-child {
134 margin-top: 0;
135 }
136 p:last-child {
137 margin-bottom: 0;
138 }
139 }
140 }
141
142 // The icon when the chat window is closed.
143
144 .mwai-trigger {
145 position: absolute;
146 right: 0;
147 bottom: 0;
148 transition: all 0.2s ease-out;
149 z-index: 9999;
150 display: flex;
151 flex-direction: column;
152 align-items: end;
153
154 .mwai-icon-text-container {
155 display: flex;
156 flex-direction: column;
157 align-items: flex-end;
158
159 .mwai-icon-text {
160 background: var(--mwai-iconTextBackgroundColor);
161 color: var(--mwai-iconTextColor);
162 box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
163 max-width: 200px;
164 font-size: 13px;
165 margin-bottom: 15px;
166 padding: 10px 15px;
167 border-radius: 8px;
168 }
169
170 .mwai-icon-text-close {
171 color: var(--mwai-iconTextColor);
172 background: var(--mwai-iconTextBackgroundColor);
173 padding: 5px;
174 width: 20px;
175 height: 20px;
176 border-radius: 100%;
177 display: none;
178 justify-content: center;
179 align-items: center;
180 margin-bottom: 3px;
181 }
182
183 &:hover {
184 cursor: pointer;
185
186 .mwai-icon-text-close {
187 display: flex;
188 font-size: 12px;
189
190 &:hover {
191 filter: brightness(1.2);
192 }
193 }
194 }
195
196 @media (max-width: 760px) {
197 .mwai-icon-text-close {
198 display: flex;
199 }
200 }
201
202 }
203
204 .mwai-icon-container {
205
206 .mwai-icon {
207 filter: drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.15));
208 transition: all 0.2s ease-out;
209
210 &:hover {
211 cursor: pointer;
212 transform: scale(1.05);
213 }
214 }
215 }
216 }
217
218 // Handle the chat window and fullscreen.
219 // Let's keep this common for all themes.
220
221 &.mwai-window {
222 position: fixed;
223 right: 30px;
224 bottom: 30px;
225 width: var(--mwai-width);
226 z-index: 9999;
227
228 .mwai-header {
229 display: none;
230 justify-content: flex-end;
231 align-items: center;
232 border-radius: var(--mwai-borderRadius) var(--mwai-borderRadius) 0 0;
233 background: var(--mwai-backgroundHeaderColor);
234
235 .mwai-buttons {
236 display: flex;
237 align-items: center;
238
239 .mwai-resize-button {
240 justify-content: center;
241 height: 32px;
242 width: 22px;
243 cursor: pointer;
244 display: flex;
245 justify-content: center;
246 align-items: center;
247
248 &:before {
249 transition: all 0.2s ease-out;
250 content: ' ';
251 cursor: pointer;
252 position: absolute;
253 height: 13px;
254 width: 13px;
255 border: 1px solid var(--mwai-headerButtonsColor);
256 }
257
258 &:hover:before {
259 width: 16px;
260 height: 16px;
261 }
262 }
263
264 .mwai-close-button {
265 justify-content: center;
266 height: 32px;
267 width: 33px;
268 cursor: pointer;
269 border-radius: var(--mwai-borderRadius);
270
271 &:before {
272 transition: all 0.2s ease-out;
273 transform: translate(16px, 5px) rotate(45deg);
274 }
275 &:after {
276 transition: all 0.2s ease-out;
277 transform: translate(16px, 5px) rotate(-45deg);
278 }
279 }
280
281 .mwai-close-button:before, .mwai-close-button:after {
282 content: ' ';
283 cursor: pointer;
284 position: absolute;
285 height: 22px;
286 width: 1px;
287 background-color: var(--mwai-headerButtonsColor);
288 }
289
290 .mwai-close-button:hover {
291 &:before {
292 opacity: 1;
293 transform: translate(16px, 5px) rotate(135deg);
294 }
295 &:after {
296 opacity: 1;
297 transform: translate(16px, 5px) rotate(45deg);
298 }
299 }
300
301 }
302 }
303
304 .mwai-content {
305 display: none;
306 opacity: 0;
307 max-height: var(--mwai-maxHeight);
308 border-radius: 0 0 var(--mwai-borderRadius) var(--mwai-borderRadius);
309 overflow: hidden;
310 }
311
312 &.mwai-bottom-left {
313 bottom: 30px;
314 right: inherit;
315 left: 30px;
316
317 .mwai-open-button {
318 right: inherit;
319 left: 0;
320 }
321 }
322
323 &.mwai-top-right {
324 top: 30px;
325 bottom: inherit;
326 right: 30px;
327
328 .mwai-open-button {
329 top: 0;
330 bottom: inherit;
331 }
332 }
333
334 &.mwai-top-left {
335 top: 30px;
336 bottom: inherit;
337 right: inherit;
338 left: 30px;
339
340 .mwai-open-button {
341 top: 0;
342 bottom: inherit;
343 right: inherit;
344 left: 0;
345 }
346 }
347
348 &.mwai-top-left, &.mwai-bottom-left {
349
350 .mwai-open-button {
351 align-items: flex-start;
352 }
353 }
354
355 &.mwai-top-right, &.mwai-top-left {
356
357 .mwai-open-button {
358 flex-direction: column-reverse;
359
360 .mwai-icon-text {
361 margin-bottom: 0;
362 margin-top: 15px;
363 }
364 }
365 }
366 }
367
368 // Popup chat is fullscreen
369
370 &.mwai-window.mwai-fullscreen {
371
372 .mwai-header {
373
374 .mwai-buttons {
375 margin-bottom: 0px;
376
377 .mwai-resize-button {
378 &:before {
379 width: 16px;
380 height: 16px;
381 }
382
383 &:hover:before {
384 width: 13px;
385 height: 13px;
386 }
387 }
388 }
389 }
390 }
391
392 // Standard chat is fullscreen
393
394 &.mwai-fullscreen:not(.mwai-window), &.mwai-fullscreen.mwai-window.mwai-open {
395 @include fullscreen-window;
396 }
397
398 // Popup chat is open
399
400 &.mwai-window.mwai-open {
401
402 .mwai-header {
403 display: flex;
404 }
405
406 .mwai-content {
407 display: flex;
408 transition: opacity 200ms ease-in-out 0s;
409 opacity: 1;
410 }
411
412 .mwai-open-button {
413 display: none;
414 }
415 }
416
417 .mwai-error {
418 margin: var(--mwai-spacing);
419 color: white;
420 background: rgba(180, 55, 55, 0.55);
421 padding: var(--mwai-spacing);
422 border-radius: var(--mwai-borderRadius);
423
424 &:hover {
425 cursor: pointer;
426 background: rgba(180, 44, 44, 0.85);
427 }
428 }
429
430 &.mwai-bubble .mwai-icon-container {
431 background: var(--mwai-bubbleColor);
432 width: 60px;
433 height: 60px;
434 border-radius: 100%;
435 transition: all 0.2s ease-out;
436 display: flex;
437 justify-content: center;
438 align-items: center;
439
440 .mwai-icon {
441 max-width: 50%;
442 max-height: 50%;
443 filter: none;
444
445 &:hover {
446 transform: none;
447 }
448 }
449
450 &:hover {
451 cursor: pointer;
452 filter: brightness(1.1);
453 }
454 }
455
456 @media (max-width: 760px) {
457 &.mwai-window.mwai-open {
458 @include fullscreen-window;
459
460 .mwai-input {
461 flex-direction: column;
462
463 button {
464 font-size: 16px;
465 margin-left: 0;
466 width: 100%;
467 }
468
469 .mwai-input-text {
470 margin-bottom: var(--mwai-spacing);
471 width: 100%;
472
473 // This is to avoid iOS from zooming in when focusing on an input field.
474 input, textarea {
475 font-size: 16px;
476 }
477 }
478 }
479
480 .mwai-content {
481 display: flex;
482 transition: opacity 200ms ease-in-out 0s;
483 opacity: 1;
484 height: 100%;
485 max-height: inherit;
486
487 .mwai-conversation {
488 flex: auto;
489 max-height: none;
490 }
491 }
492
493 .mwai-resize-button {
494 display: none !important;
495 }
496
497 .mwai-open-button {
498 display: none;
499 }
500 }
501 }
502
503 // Keyframes for buttons
504
505 @keyframes mwai-button-spinner {
506
507 from {
508 transform: rotate(0turn);
509 }
510 to {
511 transform: rotate(1turn);
512 }
513 }
514
515 // WordPress Admin Bar
516
517 .admin-bar .mwai-fullscreen:not(.mwai-window),
518 .admin-bar .mwai-fullscreen.mwai-window.mwai-open {
519 top: 32px;
520 }
521 }
522
523 @mixin code-dark {
524
525 pre code.hljs {
526 display: block;
527 overflow-x: auto;
528 padding: 1em;
529 }
530
531 code.hljs {
532 padding: 3px 5px;
533 }
534
535 .hljs {
536 color: #fff;
537
538 &-subst {
539 color: #fff;
540 }
541
542 &-comment {
543 color: #999;
544 }
545
546 &-attr,
547 &-doctag,
548 &-keyword,
549 &-meta .hljs-keyword,
550 &-section,
551 &-selector-tag {
552 color: #88aece;
553 }
554
555 &-attribute {
556 color: #c59bc1;
557 }
558
559 &-name,
560 &-number,
561 &-quote,
562 &-selector-id,
563 &-template-tag,
564 &-type {
565 color: #f08d49;
566 }
567
568 &-selector-class {
569 color: #88aece;
570 }
571
572 &-link,
573 &-regexp,
574 &-selector-attr,
575 &-string,
576 &-symbol,
577 &-template-variable,
578 &-variable {
579 color: #b5bd68;
580 }
581
582 &-meta,
583 &-selector-pseudo {
584 color: #88aece;
585 }
586
587 &-built_in,
588 &-literal,
589 &-title {
590 color: #f08d49;
591 }
592
593 &-bullet,
594 &-code {
595 color: #ccc;
596 }
597
598 &-meta .hljs-string {
599 color: #b5bd68;
600 }
601
602 &-deletion {
603 color: #de7176;
604 }
605
606 &-addition {
607 color: #76c490;
608 }
609
610 &-emphasis {
611 font-style: italic;
612 }
613
614 &-strong {
615 font-weight: 700;
616 }
617 }
618 }
619
620 @mixin code-light {
621
622 pre code.hljs {
623 display: block;
624 overflow-x: auto;
625 padding: 1em;
626 }
627
628 code.hljs {
629 padding: 3px 5px;
630 }
631
632 .hljs {
633 color: #333;
634 background: #f0f0f0;
635
636 &-subst {
637 color: #333;
638 }
639
640 &-comment {
641 color: #888;
642 }
643
644 &-attr,
645 &-doctag,
646 &-keyword,
647 &-meta .hljs-keyword,
648 &-section,
649 &-selector-tag {
650 color: #0077cc;
651 }
652
653 &-attribute {
654 color: #aa3377;
655 }
656
657 &-name,
658 &-number,
659 &-quote,
660 &-selector-id,
661 &-template-tag,
662 &-type {
663 color: #c18401;
664 }
665
666 &-selector-class {
667 color: #0077cc;
668 }
669
670 &-link,
671 &-regexp,
672 &-selector-attr,
673 &-string,
674 &-symbol,
675 &-template-variable,
676 &-variable {
677 color: #689700;
678 }
679
680 &-meta,
681 &-selector-pseudo {
682 color: #0077cc;
683 }
684
685 &-built_in,
686 &-literal,
687 &-title {
688 color: #c18401;
689 }
690
691 &-bullet,
692 &-code {
693 color: #555;
694 }
695
696 &-meta .hljs-string {
697 color: #689700;
698 }
699
700 &-deletion {
701 color: #b71c1c;
702 }
703
704 &-addition {
705 color: #1b5e20;
706 }
707
708 &-emphasis {
709 font-style: italic;
710 }
711
712 &-strong {
713 font-weight: 700;
714 }
715 }
716 }
717
718 @mixin copy-button {
719
720 .mwai-copy-button {
721 opacity: 0;
722 transition: all 0.3s ease-out;
723 width: 22px;
724 height: 22px;
725 position: absolute;
726 right: var(--mwai-spacing);
727 }
728
729 .mwai-copy-button .mwai-copy-button-one {
730 position: absolute;
731 width: 16px;
732 height: 16px;
733 margin-top: 0px;
734 margin-left: 0px;
735 background: white;
736 opacity: 0.4;
737 transition: all 0.2s ease-in;
738 cursor: pointer;
739 border-radius: 2px;
740 }
741
742 .mwai-copy-button .mwai-copy-button-two {
743 position: absolute;
744 width: 16px;
745 height: 16px;
746 margin-top: 6px;
747 margin-left: 6px;
748 background: white;
749 opacity: 0.6;
750 transition: all 0.2s ease-in;
751 cursor: pointer;
752 border-radius: 2px;
753 }
754
755 .mwai-copy-button:hover .mwai-copy-button-one {
756 opacity: 0.6;
757 margin-top: 0px;
758 margin-left: 6px;
759 }
760
761 .mwai-copy-button:hover .mwai-copy-button-two {
762 opacity: 1;
763 margin-top: 6px;
764 margin-left: 0px;
765 }
766
767 .mwai-copy-button.mwai-animate .mwai-copy-button-one {
768 opacity: 0;
769 }
770
771 .mwai-copy-button.mwai-animate .mwai-copy-button-two {
772 width: 18px;
773 height: 18px;
774 margin-top: 2px;
775 margin-left: 2px;
776 opacity: 1;
777 }
778
779 .mwai-chat .mwai-reply:hover .mwai-copy-button {
780 display: block;
781 opacity: 1;
782 }
783 }