open-chat-studio-widget 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +14 -7
  2. package/dist/cjs/{index-d39b7c53.js → index-b700441a.js} +83 -4
  3. package/dist/cjs/index-b700441a.js.map +1 -0
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/open-chat-studio-widget.cjs.entry.js +4846 -50
  6. package/dist/cjs/open-chat-studio-widget.cjs.entry.js.map +1 -1
  7. package/dist/cjs/open-chat-studio-widget.cjs.js +2 -2
  8. package/dist/collection/components/ocs-chat/heroicons.js +6 -12
  9. package/dist/collection/components/ocs-chat/heroicons.js.map +1 -1
  10. package/dist/collection/components/ocs-chat/ocs-chat.css +1094 -73
  11. package/dist/collection/components/ocs-chat/ocs-chat.js +752 -40
  12. package/dist/collection/components/ocs-chat/ocs-chat.js.map +1 -1
  13. package/dist/collection/utils/markdown.js +64 -0
  14. package/dist/collection/utils/markdown.js.map +1 -0
  15. package/dist/components/open-chat-studio-widget.js +4869 -52
  16. package/dist/components/open-chat-studio-widget.js.map +1 -1
  17. package/dist/esm/{index-b73ebc69.js → index-b188b488.js} +83 -4
  18. package/dist/esm/index-b188b488.js.map +1 -0
  19. package/dist/esm/loader.js +3 -3
  20. package/dist/esm/open-chat-studio-widget.entry.js +4846 -50
  21. package/dist/esm/open-chat-studio-widget.entry.js.map +1 -1
  22. package/dist/esm/open-chat-studio-widget.js +3 -3
  23. package/dist/open-chat-studio-widget/open-chat-studio-widget.esm.js +1 -1
  24. package/dist/open-chat-studio-widget/open-chat-studio-widget.esm.js.map +1 -1
  25. package/dist/open-chat-studio-widget/p-a0fbe1b4.js +3 -0
  26. package/dist/open-chat-studio-widget/p-a0fbe1b4.js.map +1 -0
  27. package/dist/open-chat-studio-widget/p-d2d76b54.entry.js +3 -0
  28. package/dist/open-chat-studio-widget/p-d2d76b54.entry.js.map +1 -0
  29. package/dist/types/components/ocs-chat/heroicons.d.ts +2 -4
  30. package/dist/types/components/ocs-chat/ocs-chat.d.ts +129 -4
  31. package/dist/types/components.d.ts +61 -5
  32. package/dist/types/utils/markdown.d.ts +6 -0
  33. package/package.json +4 -3
  34. package/dist/cjs/index-d39b7c53.js.map +0 -1
  35. package/dist/esm/index-b73ebc69.js.map +0 -1
  36. package/dist/open-chat-studio-widget/p-4cdc34c1.js +0 -3
  37. package/dist/open-chat-studio-widget/p-4cdc34c1.js.map +0 -1
  38. package/dist/open-chat-studio-widget/p-c4c7c404.entry.js +0 -2
  39. package/dist/open-chat-studio-widget/p-c4c7c404.entry.js.map +0 -1
@@ -499,57 +499,140 @@ video {
499
499
  [hidden]:where(:not([hidden="until-found"])) {
500
500
  display: none;
501
501
  }
502
- .btn {
503
- margin-inline-end: 0.5rem;
504
- margin-bottom: 0.5rem;
502
+ .starter-question {
503
+ margin-left: 3rem;
505
504
  border-radius: 0.5rem;
506
505
  border-width: 1px;
507
- padding-top: 0.625rem;
508
- padding-bottom: 0.625rem;
509
- padding-left: 1.25rem;
510
- padding-right: 1.25rem;
511
- font-size: 0.875rem;
512
- line-height: 1.25rem;
513
- font-weight: 500;
506
+ --tw-border-opacity: 1;
507
+ border-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
508
+ padding: 0.75rem;
509
+ text-align: left;
510
+ --tw-text-opacity: 1;
511
+ color: rgb(37 99 235 / var(--tw-text-opacity, 1));
512
+ transition-duration: 200ms;
514
513
  }
515
- .btn:focus {
514
+ .starter-question:hover {
515
+ --tw-border-opacity: 1;
516
+ border-color: rgb(37 99 235 / var(--tw-border-opacity, 1));
517
+ --tw-bg-opacity: 1;
518
+ background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
519
+ }
520
+ .chat-btn-text,
521
+ .chat-btn-icon {
522
+ position: fixed;
523
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
524
+ border-radius: 9999px;
525
+ border-width: 0px;
526
+ --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
527
+ --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
528
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
529
+ transition-property: all;
530
+ transition-duration: 200ms;
531
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
532
+ }
533
+ .chat-btn-text:hover,
534
+ .chat-btn-icon:hover {
535
+ --tw-scale-x: 1.05;
536
+ --tw-scale-y: 1.05;
537
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
538
+ }
539
+ .chat-btn-text:focus,
540
+ .chat-btn-icon:focus {
516
541
  outline: 2px solid transparent;
517
542
  outline-offset: 2px;
518
- }
519
- .btn {
520
- background-color: var(--button-background-color);
521
- color: var(--button-text-color);
522
- border-color: var(--button-border-color);
543
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
544
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
545
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
546
+ --tw-ring-opacity: 1;
547
+ --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));
548
+ --tw-ring-offset-width: 2px;
549
+ }
550
+ .chat-btn-text,
551
+ .chat-btn-icon {
552
+ background-color: var(--button-background-color, white);
553
+ z-index: var(--chat-z-index, 50);
523
554
  }
524
- .btn:hover {
525
- background-color: var(--button-background-color-hover);
526
- color: var(--button-text-color-hover);
527
- border-color: var(--button-border-color-hover);
555
+ /* Button with text and icon */
556
+ .chat-btn-text {
557
+ display: flex;
558
+ align-items: center;
559
+ gap: 0.5rem;
560
+ padding-left: 1rem;
561
+ padding-right: 1rem;
562
+ padding-top: 0.75rem;
563
+ padding-bottom: 0.75rem;
564
+ color: var(--button-text-color, #111827);
565
+ min-height: 56px;
566
+ }
567
+ .chat-btn-text:hover {
568
+ color: var(--button-text-color-hover, #1d4ed8);
528
569
  }
570
+ .chat-btn-text span {
571
+ white-space: nowrap;
572
+ font-size: 0.875rem;
573
+ line-height: 1.25rem;
574
+ font-weight: 500;
575
+ }
576
+ .chat-btn-text img {
577
+ height: 1.5rem;
578
+ width: 1.5rem;
579
+ flex-shrink: 0;
580
+ -o-object-fit: contain;
581
+ object-fit: contain;
582
+ }
583
+ /* Icon-only button */
584
+ .chat-btn-icon {
585
+ padding: 0.75rem;
586
+ width: 56px;
587
+ height: 56px;
588
+ }
589
+ .chat-btn-icon img {
590
+ height: 100%;
591
+ width: 100%;
592
+ -o-object-fit: contain;
593
+ object-fit: contain;
594
+ }
595
+ .chat-btn-text,
596
+ .chat-btn-icon {
597
+ border-radius: 0.5rem; /* Default square shape */
598
+ }
599
+ .chat-btn-text.round,
600
+ .chat-btn-icon.round {
601
+ border-radius: 9999px;
602
+ }
603
+ .pointer-events-none {
604
+ pointer-events: none;
605
+ }
529
606
  .visible {
530
607
  visibility: visible;
531
608
  }
609
+ .static {
610
+ position: static;
611
+ }
532
612
  .fixed {
533
613
  position: fixed;
534
614
  }
535
- .bottom-0 {
536
- bottom: 0px;
615
+ .ml-2 {
616
+ margin-left: 0.5rem;
537
617
  }
538
- .left-0 {
539
- left: 0px;
618
+ .mt-1 {
619
+ margin-top: 0.25rem;
540
620
  }
541
- .left-1\/2 {
542
- left: 50%;
621
+ .mt-2 {
622
+ margin-top: 0.5rem;
543
623
  }
544
- .right-0 {
545
- right: 0px;
624
+ .block {
625
+ display: block;
546
626
  }
547
- .top-1\/2 {
548
- top: 50%;
627
+ .inline-block {
628
+ display: inline-block;
549
629
  }
550
630
  .flex {
551
631
  display: flex;
552
632
  }
633
+ .table {
634
+ display: table;
635
+ }
553
636
  .hidden {
554
637
  display: none;
555
638
  }
@@ -557,25 +640,56 @@ video {
557
640
  width: 1.5rem;
558
641
  height: 1.5rem;
559
642
  }
643
+ .h-2 {
644
+ height: 0.5rem;
645
+ }
560
646
  .h-3\/5 {
561
647
  height: 60%;
562
648
  }
563
649
  .h-5\/6 {
564
650
  height: 83.333333%;
565
651
  }
652
+ .w-2 {
653
+ width: 0.5rem;
654
+ }
566
655
  .w-full {
567
656
  width: 100%;
568
657
  }
658
+ .max-w-xs {
659
+ max-width: 20rem;
660
+ }
569
661
  .flex-grow {
570
662
  flex-grow: 1;
571
663
  }
572
- .-translate-x-1\/2 {
573
- --tw-translate-x: -50%;
574
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
664
+ @keyframes bounce {
665
+
666
+ 0%, 100% {
667
+ transform: translateY(-25%);
668
+ animation-timing-function: cubic-bezier(0.8,0,1,1);
669
+ }
670
+
671
+ 50% {
672
+ transform: none;
673
+ animation-timing-function: cubic-bezier(0,0,0.2,1);
674
+ }
575
675
  }
576
- .-translate-y-1\/2 {
577
- --tw-translate-y: -50%;
578
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
676
+ .animate-bounce {
677
+ animation: bounce 1s infinite;
678
+ }
679
+ .cursor-grab {
680
+ cursor: grab;
681
+ }
682
+ .cursor-grabbing {
683
+ cursor: grabbing;
684
+ }
685
+ .cursor-not-allowed {
686
+ cursor: not-allowed;
687
+ }
688
+ .resize-none {
689
+ resize: none;
690
+ }
691
+ .resize {
692
+ resize: both;
579
693
  }
580
694
  .flex-col {
581
695
  flex-direction: column;
@@ -583,15 +697,51 @@ video {
583
697
  .items-center {
584
698
  align-items: center;
585
699
  }
700
+ .justify-start {
701
+ justify-content: flex-start;
702
+ }
703
+ .justify-end {
704
+ justify-content: flex-end;
705
+ }
706
+ .justify-center {
707
+ justify-content: center;
708
+ }
586
709
  .justify-between {
587
710
  justify-content: space-between;
588
711
  }
712
+ .gap-0\.5 {
713
+ gap: 0.125rem;
714
+ }
589
715
  .gap-1 {
590
716
  gap: 0.25rem;
591
717
  }
718
+ .gap-2 {
719
+ gap: 0.5rem;
720
+ }
721
+ .space-y-1 > :not([hidden]) ~ :not([hidden]) {
722
+ --tw-space-y-reverse: 0;
723
+ margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
724
+ margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
725
+ }
726
+ .space-y-2 > :not([hidden]) ~ :not([hidden]) {
727
+ --tw-space-y-reverse: 0;
728
+ margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
729
+ margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
730
+ }
731
+ .space-y-4 > :not([hidden]) ~ :not([hidden]) {
732
+ --tw-space-y-reverse: 0;
733
+ margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
734
+ margin-bottom: calc(1rem * var(--tw-space-y-reverse));
735
+ }
592
736
  .overflow-hidden {
593
737
  overflow: hidden;
594
738
  }
739
+ .overflow-y-auto {
740
+ overflow-y: auto;
741
+ }
742
+ .rounded-full {
743
+ border-radius: 9999px;
744
+ }
595
745
  .rounded-lg {
596
746
  border-radius: 0.5rem;
597
747
  }
@@ -604,8 +754,8 @@ video {
604
754
  .border-b {
605
755
  border-bottom-width: 1px;
606
756
  }
607
- .border-none {
608
- border-style: none;
757
+ .border-t {
758
+ border-top-width: 1px;
609
759
  }
610
760
  .border-gray-100 {
611
761
  --tw-border-opacity: 1;
@@ -615,10 +765,30 @@ video {
615
765
  --tw-border-opacity: 1;
616
766
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
617
767
  }
768
+ .border-gray-300 {
769
+ --tw-border-opacity: 1;
770
+ border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
771
+ }
772
+ .bg-blue-500 {
773
+ --tw-bg-opacity: 1;
774
+ background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
775
+ }
618
776
  .bg-gray-100 {
619
777
  --tw-bg-opacity: 1;
620
778
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
621
779
  }
780
+ .bg-gray-200 {
781
+ --tw-bg-opacity: 1;
782
+ background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
783
+ }
784
+ .bg-gray-300 {
785
+ --tw-bg-opacity: 1;
786
+ background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
787
+ }
788
+ .bg-gray-400 {
789
+ --tw-bg-opacity: 1;
790
+ background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
791
+ }
622
792
  .bg-white {
623
793
  --tw-bg-opacity: 1;
624
794
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
@@ -626,27 +796,75 @@ video {
626
796
  .p-1\.5 {
627
797
  padding: 0.375rem;
628
798
  }
799
+ .p-2 {
800
+ padding: 0.5rem;
801
+ }
802
+ .p-4 {
803
+ padding: 1rem;
804
+ }
629
805
  .px-2 {
630
806
  padding-left: 0.5rem;
631
807
  padding-right: 0.5rem;
632
808
  }
809
+ .px-3 {
810
+ padding-left: 0.75rem;
811
+ padding-right: 0.75rem;
812
+ }
813
+ .px-4 {
814
+ padding-left: 1rem;
815
+ padding-right: 1rem;
816
+ }
633
817
  .py-2 {
634
818
  padding-top: 0.5rem;
635
819
  padding-bottom: 0.5rem;
636
820
  }
637
- .text-blue-600 {
638
- --tw-text-opacity: 1;
639
- color: rgb(37 99 235 / var(--tw-text-opacity, 1));
821
+ .text-sm {
822
+ font-size: 0.875rem;
823
+ line-height: 1.25rem;
824
+ }
825
+ .text-xs {
826
+ font-size: 0.75rem;
827
+ line-height: 1rem;
828
+ }
829
+ .font-medium {
830
+ font-weight: 500;
640
831
  }
641
832
  .text-gray-500 {
642
833
  --tw-text-opacity: 1;
643
834
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
644
835
  }
836
+ .text-gray-600 {
837
+ --tw-text-opacity: 1;
838
+ color: rgb(75 85 99 / var(--tw-text-opacity, 1));
839
+ }
840
+ .text-gray-800 {
841
+ --tw-text-opacity: 1;
842
+ color: rgb(31 41 55 / var(--tw-text-opacity, 1));
843
+ }
844
+ .text-red-500 {
845
+ --tw-text-opacity: 1;
846
+ color: rgb(239 68 68 / var(--tw-text-opacity, 1));
847
+ }
848
+ .text-white {
849
+ --tw-text-opacity: 1;
850
+ color: rgb(255 255 255 / var(--tw-text-opacity, 1));
851
+ }
852
+ .underline {
853
+ text-decoration-line: underline;
854
+ }
855
+ .opacity-70 {
856
+ opacity: 0.7;
857
+ }
645
858
  .shadow {
646
859
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
647
860
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
648
861
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
649
862
  }
863
+ .shadow-2xl {
864
+ --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
865
+ --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
866
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
867
+ }
650
868
  .shadow-lg {
651
869
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
652
870
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
@@ -657,70 +875,873 @@ video {
657
875
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
658
876
  transition-duration: 150ms;
659
877
  }
878
+ .transition-shadow {
879
+ transition-property: box-shadow;
880
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
881
+ transition-duration: 150ms;
882
+ }
883
+ .duration-150 {
884
+ transition-duration: 150ms;
885
+ }
660
886
  .duration-200 {
661
887
  transition-duration: 200ms;
662
888
  }
663
889
  :host {
664
- /**
665
- * @prop --button-background-color: Button background color
666
- * @prop --button-background-color-hover: Button background color on hover
667
- * @prop --button-text-color: Button text color
668
- * @prop --button-text-color-hover: Button text color on hover
669
- * @prop --button-border-color: Button border color
670
- * @prop --button-border-color-hover: Button border color on hover
671
- */
890
+ /**
891
+ * @prop --button-background-color: Button background color
892
+ * @prop --button-background-color-hover: Button background color on hover
893
+ * @prop --button-text-color: Button text color
894
+ * @prop --button-text-color-hover: Button text color on hover
895
+ * @prop --button-border-color: Button border color
896
+ * @prop --button-border-color-hover: Button border color on hover
897
+ */
672
898
  --button-background-color: white;
673
- /* gray-100 */
674
899
  --button-background-color-hover: #f3f4f6;
675
- /* gray-900 */
676
900
  --button-text-color: #111827;
677
- /* blue-700 */
678
901
  --button-text-color-hover: #1d4ed8;
679
- /* gray-500 */
680
902
  --button-border-color: #6b7280;
681
- /* gray-700 */
682
903
  --button-border-color-hover: #374151;
683
904
  --chat-z-index: 50;
684
-
685
905
  display: block;
686
906
  }
687
- /* These custom button styles need to remain since they use CSS variables */
688
907
  #ocs-chat-window {
689
908
  z-index: var(--chat-z-index);
690
909
  }
691
- .iframe-placeholder {
692
- /*loading-dots*/
693
- background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48c3R5bGU+LnNwaW5uZXJfcU04M3thbmltYXRpb246c3Bpbm5lcl84SFFHIDEuMDVzIGluZmluaXRlfS5zcGlubmVyX29YUHJ7YW5pbWF0aW9uLWRlbGF5Oi4xc30uc3Bpbm5lcl9aVExme2FuaW1hdGlvbi1kZWxheTouMnN9QGtleWZyYW1lcyBzcGlubmVyXzhIUUd7MCUsNTcuMTQle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMzMsLjY2LC42NiwxKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfTI4LjU3JXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjMzLDAsLjY2LC4zMyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTZweCl9MTAwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfX08L3N0eWxlPjxjaXJjbGUgY2xhc3M9J3NwaW5uZXJfcU04MycgY3g9JzQnIGN5PScxMicgcj0nMycvPjxjaXJjbGUgY2xhc3M9J3NwaW5uZXJfcU04MyBzcGlubmVyX29YUHInIGN4PScxMicgY3k9JzEyJyByPSczJy8+PGNpcmNsZSBjbGFzcz0nc3Bpbm5lcl9xTTgzIHNwaW5uZXJfWlRMZicgY3g9JzIwJyBjeT0nMTInIHI9JzMnLz48L3N2Zz4=);
694
- background-repeat: no-repeat;
695
- background-position: center;
910
+ textarea {
911
+ max-height: 8rem;
912
+ min-height: 2.5rem;
913
+ resize: none;
914
+ overflow-y: auto;
696
915
  }
697
- .hover\:bg-gray-100:hover {
916
+ textarea::-webkit-scrollbar {
917
+ width: 0.375rem;
918
+ }
919
+ textarea::-webkit-scrollbar-track {
920
+ border-radius: 0.25rem;
698
921
  --tw-bg-opacity: 1;
699
922
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
700
923
  }
701
- @media (min-width: 640px) {
924
+ textarea::-webkit-scrollbar-thumb {
925
+ border-radius: 0.25rem;
926
+ --tw-bg-opacity: 1;
927
+ background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
928
+ }
929
+ textarea::-webkit-scrollbar-thumb:hover {
930
+ --tw-bg-opacity: 1;
931
+ background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
932
+ }
933
+ .loading-spinner {
934
+ height: 1.25rem;
935
+ width: 1.25rem;
936
+ }
937
+ @keyframes spin {
938
+
939
+ to {
940
+ transform: rotate(360deg);
941
+ }
942
+ }
943
+ .loading-spinner {
944
+ animation: spin 1s linear infinite;
945
+ border-radius: 9999px;
946
+ border-width: 2px;
947
+ border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
948
+ --tw-border-opacity: 1;
949
+ border-top-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
950
+ }
951
+ .overflow-y-auto::-webkit-scrollbar {
952
+ width: 0.375rem;
953
+ }
954
+ .overflow-y-auto::-webkit-scrollbar-track {
955
+ border-radius: 0.25rem;
956
+ --tw-bg-opacity: 1;
957
+ background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
958
+ }
959
+ .overflow-y-auto::-webkit-scrollbar-thumb {
960
+ border-radius: 0.25rem;
961
+ --tw-bg-opacity: 1;
962
+ background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
963
+ }
964
+ .overflow-y-auto::-webkit-scrollbar-thumb:hover {
965
+ --tw-bg-opacity: 1;
966
+ background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
967
+ }
968
+ /* Markdown content styling for chat messages */
969
+ .chat-markdown {
970
+ color: var(--tw-prose-body);
971
+ max-width: 65ch;
972
+ }
973
+ .chat-markdown :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
974
+ margin-top: 1.25em;
975
+ margin-bottom: 1.25em;
976
+ }
977
+ .chat-markdown :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
978
+ color: var(--tw-prose-lead);
979
+ font-size: 1.25em;
980
+ line-height: 1.6;
981
+ margin-top: 1.2em;
982
+ margin-bottom: 1.2em;
983
+ }
984
+ .chat-markdown :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
985
+ color: var(--tw-prose-links);
986
+ text-decoration: underline;
987
+ font-weight: 500;
988
+ }
989
+ .chat-markdown :where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
990
+ color: var(--tw-prose-bold);
991
+ font-weight: 600;
992
+ }
993
+ .chat-markdown :where(a strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
994
+ color: inherit;
995
+ }
996
+ .chat-markdown :where(blockquote strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
997
+ color: inherit;
998
+ }
999
+ .chat-markdown :where(thead th strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1000
+ color: inherit;
1001
+ }
1002
+ .chat-markdown :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1003
+ list-style-type: decimal;
1004
+ margin-top: 1.25em;
1005
+ margin-bottom: 1.25em;
1006
+ padding-inline-start: 1.625em;
1007
+ }
1008
+ .chat-markdown :where(ol[type="A"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1009
+ list-style-type: upper-alpha;
1010
+ }
1011
+ .chat-markdown :where(ol[type="a"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1012
+ list-style-type: lower-alpha;
1013
+ }
1014
+ .chat-markdown :where(ol[type="A" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1015
+ list-style-type: upper-alpha;
1016
+ }
1017
+ .chat-markdown :where(ol[type="a" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1018
+ list-style-type: lower-alpha;
1019
+ }
1020
+ .chat-markdown :where(ol[type="I"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1021
+ list-style-type: upper-roman;
1022
+ }
1023
+ .chat-markdown :where(ol[type="i"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1024
+ list-style-type: lower-roman;
1025
+ }
1026
+ .chat-markdown :where(ol[type="I" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1027
+ list-style-type: upper-roman;
1028
+ }
1029
+ .chat-markdown :where(ol[type="i" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1030
+ list-style-type: lower-roman;
1031
+ }
1032
+ .chat-markdown :where(ol[type="1"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1033
+ list-style-type: decimal;
1034
+ }
1035
+ .chat-markdown :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1036
+ list-style-type: disc;
1037
+ margin-top: 1.25em;
1038
+ margin-bottom: 1.25em;
1039
+ padding-inline-start: 1.625em;
1040
+ }
1041
+ .chat-markdown :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker {
1042
+ font-weight: 400;
1043
+ color: var(--tw-prose-counters);
1044
+ }
1045
+ .chat-markdown :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker {
1046
+ color: var(--tw-prose-bullets);
1047
+ }
1048
+ .chat-markdown :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1049
+ color: var(--tw-prose-headings);
1050
+ font-weight: 600;
1051
+ margin-top: 1.25em;
1052
+ }
1053
+ .chat-markdown :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1054
+ border-color: var(--tw-prose-hr);
1055
+ border-top-width: 1px;
1056
+ margin-top: 3em;
1057
+ margin-bottom: 3em;
1058
+ }
1059
+ .chat-markdown :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1060
+ font-weight: 500;
1061
+ font-style: italic;
1062
+ color: var(--tw-prose-quotes);
1063
+ border-inline-start-width: 0.25rem;
1064
+ border-inline-start-color: var(--tw-prose-quote-borders);
1065
+ quotes: "\201C""\201D""\2018""\2019";
1066
+ margin-top: 1.6em;
1067
+ margin-bottom: 1.6em;
1068
+ padding-inline-start: 1em;
1069
+ }
1070
+ .chat-markdown :where(blockquote p:first-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
1071
+ content: open-quote;
1072
+ }
1073
+ .chat-markdown :where(blockquote p:last-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
1074
+ content: close-quote;
1075
+ }
1076
+ .chat-markdown :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1077
+ color: var(--tw-prose-headings);
1078
+ font-weight: 800;
1079
+ font-size: 2.25em;
1080
+ margin-top: 0;
1081
+ margin-bottom: 0.8888889em;
1082
+ line-height: 1.1111111;
1083
+ }
1084
+ .chat-markdown :where(h1 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1085
+ font-weight: 900;
1086
+ color: inherit;
1087
+ }
1088
+ .chat-markdown :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1089
+ color: var(--tw-prose-headings);
1090
+ font-weight: 700;
1091
+ font-size: 1.5em;
1092
+ margin-top: 2em;
1093
+ margin-bottom: 1em;
1094
+ line-height: 1.3333333;
1095
+ }
1096
+ .chat-markdown :where(h2 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1097
+ font-weight: 800;
1098
+ color: inherit;
1099
+ }
1100
+ .chat-markdown :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1101
+ color: var(--tw-prose-headings);
1102
+ font-weight: 600;
1103
+ font-size: 1.25em;
1104
+ margin-top: 1.6em;
1105
+ margin-bottom: 0.6em;
1106
+ line-height: 1.6;
1107
+ }
1108
+ .chat-markdown :where(h3 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1109
+ font-weight: 700;
1110
+ color: inherit;
1111
+ }
1112
+ .chat-markdown :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1113
+ color: var(--tw-prose-headings);
1114
+ font-weight: 600;
1115
+ margin-top: 1.5em;
1116
+ margin-bottom: 0.5em;
1117
+ line-height: 1.5;
1118
+ }
1119
+ .chat-markdown :where(h4 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1120
+ font-weight: 700;
1121
+ color: inherit;
1122
+ }
1123
+ .chat-markdown :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1124
+ margin-top: 2em;
1125
+ margin-bottom: 2em;
1126
+ }
1127
+ .chat-markdown :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1128
+ display: block;
1129
+ margin-top: 2em;
1130
+ margin-bottom: 2em;
1131
+ }
1132
+ .chat-markdown :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1133
+ margin-top: 2em;
1134
+ margin-bottom: 2em;
1135
+ }
1136
+ .chat-markdown :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1137
+ font-weight: 500;
1138
+ font-family: inherit;
1139
+ color: var(--tw-prose-kbd);
1140
+ box-shadow: 0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%), 0 3px 0 rgb(var(--tw-prose-kbd-shadows) / 10%);
1141
+ font-size: 0.875em;
1142
+ border-radius: 0.3125rem;
1143
+ padding-top: 0.1875em;
1144
+ padding-inline-end: 0.375em;
1145
+ padding-bottom: 0.1875em;
1146
+ padding-inline-start: 0.375em;
1147
+ }
1148
+ .chat-markdown :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1149
+ color: var(--tw-prose-code);
1150
+ font-weight: 600;
1151
+ font-size: 0.875em;
1152
+ }
1153
+ .chat-markdown :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
1154
+ content: "`";
1155
+ }
1156
+ .chat-markdown :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
1157
+ content: "`";
1158
+ }
1159
+ .chat-markdown :where(a code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1160
+ color: inherit;
1161
+ }
1162
+ .chat-markdown :where(h1 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1163
+ color: inherit;
1164
+ }
1165
+ .chat-markdown :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1166
+ color: inherit;
1167
+ font-size: 0.875em;
1168
+ }
1169
+ .chat-markdown :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1170
+ color: inherit;
1171
+ font-size: 0.9em;
1172
+ }
1173
+ .chat-markdown :where(h4 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1174
+ color: inherit;
1175
+ }
1176
+ .chat-markdown :where(blockquote code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1177
+ color: inherit;
1178
+ }
1179
+ .chat-markdown :where(thead th code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1180
+ color: inherit;
1181
+ }
1182
+ .chat-markdown :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1183
+ color: var(--tw-prose-pre-code);
1184
+ background-color: var(--tw-prose-pre-bg);
1185
+ overflow-x: auto;
1186
+ font-weight: 400;
1187
+ font-size: 0.875em;
1188
+ line-height: 1.7142857;
1189
+ margin-top: 1.7142857em;
1190
+ margin-bottom: 1.7142857em;
1191
+ border-radius: 0.375rem;
1192
+ padding-top: 0.8571429em;
1193
+ padding-inline-end: 1.1428571em;
1194
+ padding-bottom: 0.8571429em;
1195
+ padding-inline-start: 1.1428571em;
1196
+ }
1197
+ .chat-markdown :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1198
+ background-color: transparent;
1199
+ border-width: 0;
1200
+ border-radius: 0;
1201
+ padding: 0;
1202
+ font-weight: inherit;
1203
+ color: inherit;
1204
+ font-size: inherit;
1205
+ font-family: inherit;
1206
+ line-height: inherit;
1207
+ }
1208
+ .chat-markdown :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
1209
+ content: none;
1210
+ }
1211
+ .chat-markdown :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
1212
+ content: none;
1213
+ }
1214
+ .chat-markdown :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1215
+ width: 100%;
1216
+ table-layout: auto;
1217
+ margin-top: 2em;
1218
+ margin-bottom: 2em;
1219
+ font-size: 0.875em;
1220
+ line-height: 1.7142857;
1221
+ }
1222
+ .chat-markdown :where(thead):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1223
+ border-bottom-width: 1px;
1224
+ border-bottom-color: var(--tw-prose-th-borders);
1225
+ }
1226
+ .chat-markdown :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1227
+ color: var(--tw-prose-headings);
1228
+ font-weight: 600;
1229
+ vertical-align: bottom;
1230
+ padding-inline-end: 0.5714286em;
1231
+ padding-bottom: 0.5714286em;
1232
+ padding-inline-start: 0.5714286em;
1233
+ }
1234
+ .chat-markdown :where(tbody tr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1235
+ border-bottom-width: 1px;
1236
+ border-bottom-color: var(--tw-prose-td-borders);
1237
+ }
1238
+ .chat-markdown :where(tbody tr:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1239
+ border-bottom-width: 0;
1240
+ }
1241
+ .chat-markdown :where(tbody td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1242
+ vertical-align: baseline;
1243
+ }
1244
+ .chat-markdown :where(tfoot):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1245
+ border-top-width: 1px;
1246
+ border-top-color: var(--tw-prose-th-borders);
1247
+ }
1248
+ .chat-markdown :where(tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1249
+ vertical-align: top;
1250
+ }
1251
+ .chat-markdown :where(th, td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1252
+ text-align: start;
1253
+ }
1254
+ .chat-markdown :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1255
+ margin-top: 0;
1256
+ margin-bottom: 0;
1257
+ }
1258
+ .chat-markdown :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1259
+ color: var(--tw-prose-captions);
1260
+ font-size: 0.875em;
1261
+ line-height: 1.4285714;
1262
+ margin-top: 0.8571429em;
1263
+ }
1264
+ .chat-markdown {
1265
+ --tw-prose-body: #374151;
1266
+ --tw-prose-headings: #111827;
1267
+ --tw-prose-lead: #4b5563;
1268
+ --tw-prose-links: #111827;
1269
+ --tw-prose-bold: #111827;
1270
+ --tw-prose-counters: #6b7280;
1271
+ --tw-prose-bullets: #d1d5db;
1272
+ --tw-prose-hr: #e5e7eb;
1273
+ --tw-prose-quotes: #111827;
1274
+ --tw-prose-quote-borders: #e5e7eb;
1275
+ --tw-prose-captions: #6b7280;
1276
+ --tw-prose-kbd: #111827;
1277
+ --tw-prose-kbd-shadows: 17 24 39;
1278
+ --tw-prose-code: #111827;
1279
+ --tw-prose-pre-code: #e5e7eb;
1280
+ --tw-prose-pre-bg: #1f2937;
1281
+ --tw-prose-th-borders: #d1d5db;
1282
+ --tw-prose-td-borders: #e5e7eb;
1283
+ --tw-prose-invert-body: #d1d5db;
1284
+ --tw-prose-invert-headings: #fff;
1285
+ --tw-prose-invert-lead: #9ca3af;
1286
+ --tw-prose-invert-links: #fff;
1287
+ --tw-prose-invert-bold: #fff;
1288
+ --tw-prose-invert-counters: #9ca3af;
1289
+ --tw-prose-invert-bullets: #4b5563;
1290
+ --tw-prose-invert-hr: #374151;
1291
+ --tw-prose-invert-quotes: #f3f4f6;
1292
+ --tw-prose-invert-quote-borders: #374151;
1293
+ --tw-prose-invert-captions: #9ca3af;
1294
+ --tw-prose-invert-kbd: #fff;
1295
+ --tw-prose-invert-kbd-shadows: 255 255 255;
1296
+ --tw-prose-invert-code: #fff;
1297
+ --tw-prose-invert-pre-code: #d1d5db;
1298
+ --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
1299
+ --tw-prose-invert-th-borders: #4b5563;
1300
+ --tw-prose-invert-td-borders: #374151;
1301
+ font-size: 1rem;
1302
+ line-height: 1.75;
1303
+ }
1304
+ .chat-markdown :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1305
+ margin-top: 0;
1306
+ margin-bottom: 0;
1307
+ }
1308
+ .chat-markdown :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1309
+ margin-top: 0.5em;
1310
+ margin-bottom: 0.5em;
1311
+ }
1312
+ .chat-markdown :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1313
+ padding-inline-start: 0.375em;
1314
+ }
1315
+ .chat-markdown :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1316
+ padding-inline-start: 0.375em;
1317
+ }
1318
+ .chat-markdown :where(.prose > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1319
+ margin-top: 0.75em;
1320
+ margin-bottom: 0.75em;
1321
+ }
1322
+ .chat-markdown :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1323
+ margin-top: 1.25em;
1324
+ }
1325
+ .chat-markdown :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1326
+ margin-bottom: 1.25em;
1327
+ }
1328
+ .chat-markdown :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1329
+ margin-top: 1.25em;
1330
+ }
1331
+ .chat-markdown :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1332
+ margin-bottom: 1.25em;
1333
+ }
1334
+ .chat-markdown :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1335
+ margin-top: 0.75em;
1336
+ margin-bottom: 0.75em;
1337
+ }
1338
+ .chat-markdown :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1339
+ margin-top: 1.25em;
1340
+ margin-bottom: 1.25em;
1341
+ }
1342
+ .chat-markdown :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1343
+ margin-top: 0.5em;
1344
+ padding-inline-start: 1.625em;
1345
+ }
1346
+ .chat-markdown :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1347
+ margin-top: 0;
1348
+ }
1349
+ .chat-markdown :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1350
+ margin-top: 0;
1351
+ }
1352
+ .chat-markdown :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1353
+ margin-top: 0;
1354
+ }
1355
+ .chat-markdown :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1356
+ margin-top: 0;
1357
+ }
1358
+ .chat-markdown :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1359
+ padding-inline-start: 0;
1360
+ }
1361
+ .chat-markdown :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1362
+ padding-inline-end: 0;
1363
+ }
1364
+ .chat-markdown :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1365
+ padding-top: 0.5714286em;
1366
+ padding-inline-end: 0.5714286em;
1367
+ padding-bottom: 0.5714286em;
1368
+ padding-inline-start: 0.5714286em;
1369
+ }
1370
+ .chat-markdown :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1371
+ padding-inline-start: 0;
1372
+ }
1373
+ .chat-markdown :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1374
+ padding-inline-end: 0;
1375
+ }
1376
+ .chat-markdown :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1377
+ margin-top: 2em;
1378
+ margin-bottom: 2em;
1379
+ }
1380
+ .chat-markdown :where(.prose > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1381
+ margin-top: 0;
1382
+ }
1383
+ .chat-markdown :where(.prose > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1384
+ margin-bottom: 0;
1385
+ }
1386
+ .chat-markdown {
1387
+ font-size: 0.875rem;
1388
+ line-height: 1.7142857;
1389
+ }
1390
+ .chat-markdown :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1391
+ margin-top: 1.1428571em;
1392
+ margin-bottom: 1.1428571em;
1393
+ }
1394
+ .chat-markdown :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1395
+ font-size: 1.2857143em;
1396
+ line-height: 1.5555556;
1397
+ margin-top: 0.8888889em;
1398
+ margin-bottom: 0.8888889em;
1399
+ }
1400
+ .chat-markdown :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1401
+ margin-top: 1.3333333em;
1402
+ margin-bottom: 1.3333333em;
1403
+ padding-inline-start: 1.1111111em;
1404
+ }
1405
+ .chat-markdown :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1406
+ font-size: 2.1428571em;
1407
+ margin-top: 0;
1408
+ margin-bottom: 0.8em;
1409
+ line-height: 1.2;
1410
+ }
1411
+ .chat-markdown :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1412
+ font-size: 1.4285714em;
1413
+ margin-top: 1.6em;
1414
+ margin-bottom: 0.8em;
1415
+ line-height: 1.4;
1416
+ }
1417
+ .chat-markdown :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1418
+ font-size: 1.2857143em;
1419
+ margin-top: 1.5555556em;
1420
+ margin-bottom: 0.4444444em;
1421
+ line-height: 1.5555556;
1422
+ }
1423
+ .chat-markdown :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1424
+ margin-top: 1.4285714em;
1425
+ margin-bottom: 0.5714286em;
1426
+ line-height: 1.4285714;
1427
+ }
1428
+ .chat-markdown :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1429
+ margin-top: 1.7142857em;
1430
+ margin-bottom: 1.7142857em;
1431
+ }
1432
+ .chat-markdown :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1433
+ margin-top: 1.7142857em;
1434
+ margin-bottom: 1.7142857em;
1435
+ }
1436
+ .chat-markdown :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1437
+ margin-top: 0;
1438
+ margin-bottom: 0;
1439
+ }
1440
+ .chat-markdown :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1441
+ margin-top: 1.7142857em;
1442
+ margin-bottom: 1.7142857em;
1443
+ }
1444
+ .chat-markdown :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1445
+ font-size: 0.8571429em;
1446
+ border-radius: 0.3125rem;
1447
+ padding-top: 0.1428571em;
1448
+ padding-inline-end: 0.3571429em;
1449
+ padding-bottom: 0.1428571em;
1450
+ padding-inline-start: 0.3571429em;
1451
+ }
1452
+ .chat-markdown :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1453
+ font-size: 0.8571429em;
1454
+ }
1455
+ .chat-markdown :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1456
+ font-size: 0.9em;
1457
+ }
1458
+ .chat-markdown :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1459
+ font-size: 0.8888889em;
1460
+ }
1461
+ .chat-markdown :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1462
+ font-size: 0.8571429em;
1463
+ line-height: 1.6666667;
1464
+ margin-top: 1.6666667em;
1465
+ margin-bottom: 1.6666667em;
1466
+ border-radius: 0.25rem;
1467
+ padding-top: 0.6666667em;
1468
+ padding-inline-end: 1em;
1469
+ padding-bottom: 0.6666667em;
1470
+ padding-inline-start: 1em;
1471
+ }
1472
+ .chat-markdown :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1473
+ margin-top: 1.1428571em;
1474
+ margin-bottom: 1.1428571em;
1475
+ padding-inline-start: 1.5714286em;
1476
+ }
1477
+ .chat-markdown :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1478
+ margin-top: 1.1428571em;
1479
+ margin-bottom: 1.1428571em;
1480
+ padding-inline-start: 1.5714286em;
1481
+ }
1482
+ .chat-markdown :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1483
+ margin-top: 0.2857143em;
1484
+ margin-bottom: 0.2857143em;
1485
+ }
1486
+ .chat-markdown :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1487
+ padding-inline-start: 0.4285714em;
1488
+ }
1489
+ .chat-markdown :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1490
+ padding-inline-start: 0.4285714em;
1491
+ }
1492
+ .chat-markdown :where(.prose-sm > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1493
+ margin-top: 0.5714286em;
1494
+ margin-bottom: 0.5714286em;
1495
+ }
1496
+ .chat-markdown :where(.prose-sm > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1497
+ margin-top: 1.1428571em;
1498
+ }
1499
+ .chat-markdown :where(.prose-sm > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1500
+ margin-bottom: 1.1428571em;
1501
+ }
1502
+ .chat-markdown :where(.prose-sm > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1503
+ margin-top: 1.1428571em;
1504
+ }
1505
+ .chat-markdown :where(.prose-sm > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1506
+ margin-bottom: 1.1428571em;
1507
+ }
1508
+ .chat-markdown :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1509
+ margin-top: 0.5714286em;
1510
+ margin-bottom: 0.5714286em;
1511
+ }
1512
+ .chat-markdown :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1513
+ margin-top: 1.1428571em;
1514
+ margin-bottom: 1.1428571em;
1515
+ }
1516
+ .chat-markdown :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1517
+ margin-top: 1.1428571em;
1518
+ }
1519
+ .chat-markdown :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1520
+ margin-top: 0.2857143em;
1521
+ padding-inline-start: 1.5714286em;
1522
+ }
1523
+ .chat-markdown :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1524
+ margin-top: 2.8571429em;
1525
+ margin-bottom: 2.8571429em;
1526
+ }
1527
+ .chat-markdown :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1528
+ margin-top: 0;
1529
+ }
1530
+ .chat-markdown :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1531
+ margin-top: 0;
1532
+ }
1533
+ .chat-markdown :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1534
+ margin-top: 0;
1535
+ }
1536
+ .chat-markdown :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1537
+ margin-top: 0;
1538
+ }
1539
+ .chat-markdown :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1540
+ font-size: 0.8571429em;
1541
+ line-height: 1.5;
1542
+ }
1543
+ .chat-markdown :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1544
+ padding-inline-end: 1em;
1545
+ padding-bottom: 0.6666667em;
1546
+ padding-inline-start: 1em;
1547
+ }
1548
+ .chat-markdown :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1549
+ padding-inline-start: 0;
1550
+ }
1551
+ .chat-markdown :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1552
+ padding-inline-end: 0;
1553
+ }
1554
+ .chat-markdown :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1555
+ padding-top: 0.6666667em;
1556
+ padding-inline-end: 1em;
1557
+ padding-bottom: 0.6666667em;
1558
+ padding-inline-start: 1em;
1559
+ }
1560
+ .chat-markdown :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1561
+ padding-inline-start: 0;
1562
+ }
1563
+ .chat-markdown :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1564
+ padding-inline-end: 0;
1565
+ }
1566
+ .chat-markdown :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1567
+ margin-top: 1.7142857em;
1568
+ margin-bottom: 1.7142857em;
1569
+ }
1570
+ .chat-markdown :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1571
+ margin-top: 0;
1572
+ margin-bottom: 0;
1573
+ }
1574
+ .chat-markdown :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1575
+ font-size: 0.8571429em;
1576
+ line-height: 1.3333333;
1577
+ margin-top: 0.6666667em;
1578
+ }
1579
+ .chat-markdown :where(.prose-sm > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1580
+ margin-top: 0;
1581
+ }
1582
+ .chat-markdown :where(.prose-sm > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1583
+ margin-bottom: 0;
1584
+ }
1585
+ .chat-markdown {
1586
+ --tw-prose-body: #374151;
1587
+ --tw-prose-headings: #111827;
1588
+ --tw-prose-lead: #4b5563;
1589
+ --tw-prose-links: #111827;
1590
+ --tw-prose-bold: #111827;
1591
+ --tw-prose-counters: #6b7280;
1592
+ --tw-prose-bullets: #d1d5db;
1593
+ --tw-prose-hr: #e5e7eb;
1594
+ --tw-prose-quotes: #111827;
1595
+ --tw-prose-quote-borders: #e5e7eb;
1596
+ --tw-prose-captions: #6b7280;
1597
+ --tw-prose-kbd: #111827;
1598
+ --tw-prose-kbd-shadows: 17 24 39;
1599
+ --tw-prose-code: #111827;
1600
+ --tw-prose-pre-code: #e5e7eb;
1601
+ --tw-prose-pre-bg: #1f2937;
1602
+ --tw-prose-th-borders: #d1d5db;
1603
+ --tw-prose-td-borders: #e5e7eb;
1604
+ --tw-prose-invert-body: #d1d5db;
1605
+ --tw-prose-invert-headings: #fff;
1606
+ --tw-prose-invert-lead: #9ca3af;
1607
+ --tw-prose-invert-links: #fff;
1608
+ --tw-prose-invert-bold: #fff;
1609
+ --tw-prose-invert-counters: #9ca3af;
1610
+ --tw-prose-invert-bullets: #4b5563;
1611
+ --tw-prose-invert-hr: #374151;
1612
+ --tw-prose-invert-quotes: #f3f4f6;
1613
+ --tw-prose-invert-quote-borders: #374151;
1614
+ --tw-prose-invert-captions: #9ca3af;
1615
+ --tw-prose-invert-kbd: #fff;
1616
+ --tw-prose-invert-kbd-shadows: 255 255 255;
1617
+ --tw-prose-invert-code: #fff;
1618
+ --tw-prose-invert-pre-code: #d1d5db;
1619
+ --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
1620
+ --tw-prose-invert-th-borders: #4b5563;
1621
+ --tw-prose-invert-td-borders: #374151;
1622
+ max-width: none;
1623
+ }
1624
+ /* override spacing */
1625
+ .chat-markdown > * {
1626
+ margin-top: 0.1rem;
1627
+ margin-bottom: 0.1rem;
1628
+ }
1629
+ .bg-blue-500 .chat-markdown {
1630
+ --tw-prose-body: var(--tw-prose-invert-body);
1631
+ --tw-prose-headings: var(--tw-prose-invert-headings);
1632
+ --tw-prose-lead: var(--tw-prose-invert-lead);
1633
+ --tw-prose-links: var(--tw-prose-invert-links);
1634
+ --tw-prose-bold: var(--tw-prose-invert-bold);
1635
+ --tw-prose-counters: var(--tw-prose-invert-counters);
1636
+ --tw-prose-bullets: var(--tw-prose-invert-bullets);
1637
+ --tw-prose-hr: var(--tw-prose-invert-hr);
1638
+ --tw-prose-quotes: var(--tw-prose-invert-quotes);
1639
+ --tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);
1640
+ --tw-prose-captions: var(--tw-prose-invert-captions);
1641
+ --tw-prose-kbd: var(--tw-prose-invert-kbd);
1642
+ --tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);
1643
+ --tw-prose-code: var(--tw-prose-invert-code);
1644
+ --tw-prose-pre-code: var(--tw-prose-invert-pre-code);
1645
+ --tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);
1646
+ --tw-prose-th-borders: var(--tw-prose-invert-th-borders);
1647
+ --tw-prose-td-borders: var(--tw-prose-invert-td-borders);
1648
+ }
1649
+ .bg-blue-500 .chat-markdown code {
1650
+ background-color: rgb(96 165 250 / 0.5);
1651
+ --tw-text-opacity: 1;
1652
+ color: rgb(239 246 255 / var(--tw-text-opacity, 1));
1653
+ }
1654
+ .bg-blue-500 .chat-markdown pre {
1655
+ --tw-border-opacity: 1;
1656
+ border-color: rgb(96 165 250 / var(--tw-border-opacity, 1));
1657
+ background-color: rgb(96 165 250 / 0.5);
1658
+ }
1659
+ .bg-gray-200 .chat-markdown code {
1660
+ border-width: 1px;
1661
+ --tw-border-opacity: 1;
1662
+ border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
1663
+ --tw-bg-opacity: 1;
1664
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
1665
+ }
1666
+ .bg-gray-200 .chat-markdown pre {
1667
+ border-width: 1px;
1668
+ --tw-border-opacity: 1;
1669
+ border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
1670
+ --tw-bg-opacity: 1;
1671
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
1672
+ }
1673
+ @media (max-width: 640px) {
1674
+ .max-w-xs {
1675
+ max-width: 85%;
1676
+ }
702
1677
 
703
- .sm\:bottom-5 {
704
- bottom: 1.25rem;
1678
+ .chat-btn-icon {
1679
+ width: 56px;
1680
+ height: 56px;
705
1681
  }
706
1682
 
707
- .sm\:left-5 {
708
- left: 1.25rem;
1683
+ .chat-btn-text {
1684
+ padding-left: 0.75rem;
1685
+ padding-right: 0.75rem;
1686
+ padding-top: 0.5rem;
1687
+ padding-bottom: 0.5rem;
1688
+ min-height: 52px;
709
1689
  }
710
1690
 
711
- .sm\:right-5 {
712
- right: 1.25rem;
1691
+ .chat-btn-text img {
1692
+ height: 1.25rem;
1693
+ width: 1.25rem;
713
1694
  }
714
1695
 
715
- .sm\:block {
716
- display: block;
1696
+ .chat-btn-text span {
1697
+ font-size: 0.75rem;
1698
+ line-height: 1rem;
717
1699
  }
1700
+ }
1701
+ .hover\:bg-blue-600:hover {
1702
+ --tw-bg-opacity: 1;
1703
+ background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
1704
+ }
1705
+ .hover\:bg-gray-100:hover {
1706
+ --tw-bg-opacity: 1;
1707
+ background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
1708
+ }
1709
+ .hover\:no-underline:hover {
1710
+ text-decoration-line: none;
1711
+ }
1712
+ .focus\:border-transparent:focus {
1713
+ border-color: transparent;
1714
+ }
1715
+ .focus\:outline-none:focus {
1716
+ outline: 2px solid transparent;
1717
+ outline-offset: 2px;
1718
+ }
1719
+ .focus\:ring-2:focus {
1720
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
1721
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
1722
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
1723
+ }
1724
+ .focus\:ring-blue-500:focus {
1725
+ --tw-ring-opacity: 1;
1726
+ --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));
1727
+ }
1728
+ .active\:bg-gray-50:active {
1729
+ --tw-bg-opacity: 1;
1730
+ background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
1731
+ }
1732
+ @media (min-width: 640px) {
718
1733
 
719
- .sm\:hidden {
720
- display: none;
1734
+ .sm\:flex {
1735
+ display: flex;
721
1736
  }
722
1737
 
723
1738
  .sm\:w-\[450px\] {
724
1739
  width: 450px;
725
1740
  }
726
1741
  }
1742
+ @media (min-width: 1024px) {
1743
+
1744
+ .lg\:max-w-md {
1745
+ max-width: 28rem;
1746
+ }
1747
+ }