@envive-ai/react-toolkit-v3 0.3.16 → 0.3.18
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.
- package/dist/AnimatedText/AnimatedText.d.cts +3 -3
- package/dist/AnimatedText/AnimatedText.d.ts +3 -3
- package/dist/CSSVariablesEditor/CssVariablesEditorComponent.d.cts +2 -2
- package/dist/CSSVariablesEditor/CssVariablesEditorComponent.d.ts +2 -2
- package/dist/Carousel/Carousel.cjs +7 -6
- package/dist/Carousel/Carousel.d.cts +3 -2
- package/dist/Carousel/Carousel.d.ts +3 -2
- package/dist/Carousel/Carousel.js +7 -6
- package/dist/Carousel/components/Container.cjs +2 -2
- package/dist/Carousel/components/Container.js +2 -2
- package/dist/Carousel/types/types.d.cts +5 -0
- package/dist/Carousel/types/types.d.ts +5 -0
- package/dist/ChatFooter/ChatFooter.cjs +1 -1
- package/dist/ChatFooter/ChatFooter.d.cts +2 -2
- package/dist/ChatFooter/ChatFooter.d.ts +2 -2
- package/dist/ChatFooter/ChatFooter.js +1 -1
- package/dist/ChatFooter/components/Layout.cjs +2 -2
- package/dist/ChatFooter/components/Layout.js +2 -2
- package/dist/ChatFooter/components/index.d.cts +5 -5
- package/dist/ChatFooter/components/index.d.ts +5 -5
- package/dist/ChatHeader/ChatHeader.d.cts +2 -2
- package/dist/ChatHeader/ChatHeader.d.ts +2 -2
- package/dist/ChatHeader/components/Handle.cjs +2 -2
- package/dist/ChatHeader/components/Handle.js +2 -2
- package/dist/ChatHeader/components/Toggle.cjs +3 -3
- package/dist/ChatHeader/components/Toggle.js +3 -3
- package/dist/ChatPreview/ChatPreview.cjs +1 -1
- package/dist/ChatPreview/ChatPreview.d.cts +2 -2
- package/dist/ChatPreview/ChatPreview.d.ts +2 -2
- package/dist/ChatPreview/ChatPreview.js +1 -1
- package/dist/ChatPreviewComparison/ChatPreviewComparison.cjs +1 -1
- package/dist/ChatPreviewComparison/ChatPreviewComparison.d.cts +2 -2
- package/dist/ChatPreviewComparison/ChatPreviewComparison.d.ts +2 -2
- package/dist/ChatPreviewComparison/ChatPreviewComparison.js +1 -1
- package/dist/ChatPreviewComparison/components/Headline.cjs +2 -2
- package/dist/ChatPreviewComparison/components/Headline.js +2 -2
- package/dist/ChatPreviewComparison/components/Layout.cjs +4 -4
- package/dist/ChatPreviewComparison/components/Layout.js +4 -4
- package/dist/ChatPreviewComparison/components/Message.cjs +2 -2
- package/dist/ChatPreviewComparison/components/Message.js +2 -2
- package/dist/ChatPreviewLoading/ChatPreviewLoading.d.ts +2 -2
- package/dist/Container/Container.d.cts +174 -174
- package/dist/Container/Container.d.ts +174 -174
- package/dist/DesignTokens/DesignTokensComponent.d.cts +2 -2
- package/dist/DesignTokens/DesignTokensComponent.d.ts +2 -2
- package/dist/Disclaimer/components/Container.cjs +2 -2
- package/dist/Disclaimer/components/Container.js +2 -2
- package/dist/DocumentRetrievalCard/DocumentRetrievalCard.d.cts +2 -2
- package/dist/DocumentRetrievalCard/DocumentRetrievalCard.d.ts +2 -2
- package/dist/DocumentRetrievalCard/components/Layout.cjs +2 -2
- package/dist/DocumentRetrievalCard/components/Layout.js +2 -2
- package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Icon.cjs +1 -1
- package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Icon.js +1 -1
- package/dist/FloatingButton/FloatingButton.d.cts +2 -2
- package/dist/FloatingButton/FloatingButton.d.ts +2 -2
- package/dist/FloatingChat/FloatingChat.cjs +10 -1
- package/dist/FloatingChat/FloatingChat.d.cts +2 -2
- package/dist/FloatingChat/FloatingChat.d.ts +2 -2
- package/dist/FloatingChat/FloatingChat.js +11 -2
- package/dist/FloatingChat/components/AgentMessage.cjs +7 -2
- package/dist/FloatingChat/components/AgentMessage.js +7 -2
- package/dist/FloatingChat/components/ChatMessages.cjs +4 -3
- package/dist/FloatingChat/components/ChatMessages.js +4 -3
- package/dist/FloatingChat/components/Layout.cjs +3 -3
- package/dist/FloatingChat/components/Layout.js +3 -3
- package/dist/FloatingChat/components/SalesAgentBadgeContent.cjs +59 -0
- package/dist/FloatingChat/components/SalesAgentBadgeContent.js +56 -0
- package/dist/FloatingChat/components/SalesAgentProductCardsCarousel.cjs +14 -5
- package/dist/FloatingChat/components/SalesAgentProductCardsCarousel.js +14 -5
- package/dist/FloatingChat/utils/functions.cjs +13 -1
- package/dist/FloatingChat/utils/functions.js +11 -1
- package/dist/FullPageSalesAgent/FullPageSalesAgent.cjs +11 -6
- package/dist/FullPageSalesAgent/FullPageSalesAgent.d.cts +2 -2
- package/dist/FullPageSalesAgent/FullPageSalesAgent.d.ts +2 -2
- package/dist/FullPageSalesAgent/FullPageSalesAgent.js +11 -6
- package/dist/FullPageSalesAgent/components/Layout.cjs +1 -2
- package/dist/FullPageSalesAgent/components/Layout.js +1 -2
- package/dist/FullPageSalesAgent/hooks/useContainerResizerObserver.cjs +4 -1
- package/dist/FullPageSalesAgent/hooks/useContainerResizerObserver.js +4 -1
- package/dist/Image/Image.d.cts +2 -2
- package/dist/Image/Image.d.ts +2 -2
- package/dist/ImageGallery/ImageGallery.d.cts +2 -2
- package/dist/ImageGallery/ImageGallery.d.ts +2 -2
- package/dist/ImageGallery/components/Layout.cjs +1 -1
- package/dist/ImageGallery/components/Layout.js +1 -1
- package/dist/MarkdownProcessor/MarkdownProcessor.d.cts +2 -2
- package/dist/MarkdownProcessor/MarkdownProcessor.d.ts +2 -2
- package/dist/Message/components/LinkButton.cjs +1 -1
- package/dist/Message/components/LinkButton.js +1 -1
- package/dist/OrderLookupCard/OrderLookupCard.cjs +1 -1
- package/dist/OrderLookupCard/OrderLookupCard.js +1 -1
- package/dist/ProductCard/ProductCard.cjs +2 -2
- package/dist/ProductCard/ProductCard.d.cts +2 -2
- package/dist/ProductCard/ProductCard.d.ts +2 -2
- package/dist/ProductCard/ProductCard.js +2 -2
- package/dist/PromptButton/PromptButton.d.cts +2 -2
- package/dist/PromptButton/PromptButton.d.ts +2 -2
- package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.d.cts +2 -2
- package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.d.ts +2 -2
- package/dist/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.cjs +16 -22
- package/dist/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.js +16 -22
- package/dist/PromptCarousel/PromptCarousel.cjs +3 -3
- package/dist/PromptCarousel/PromptCarousel.d.cts +2 -2
- package/dist/PromptCarousel/PromptCarousel.js +3 -3
- package/dist/ReviewCard/ReviewCard.d.cts +2 -2
- package/dist/ReviewCard/ReviewCard.d.ts +2 -2
- package/dist/ReviewCard/components/Container.cjs +2 -2
- package/dist/ReviewCard/components/Container.js +2 -2
- package/dist/ReviewCard/components/ReadMoreButton.cjs +1 -1
- package/dist/ReviewCard/components/ReadMoreButton.js +1 -1
- package/dist/ReviewCard/components/index.d.cts +6 -6
- package/dist/ReviewCard/components/index.d.ts +6 -6
- package/dist/SalesAgentProductCard/SalesAgentProductCard.d.cts +2 -2
- package/dist/SalesAgentProductCard/SalesAgentProductCard.d.ts +2 -2
- package/dist/SalesAgentProductCard/components/Container.cjs +2 -2
- package/dist/SalesAgentProductCard/components/Container.js +2 -2
- package/dist/SalesAgentProductCard/components/index.d.cts +8 -8
- package/dist/SalesAgentProductCard/components/index.d.ts +8 -8
- package/dist/SocialProof/SocialProof.cjs +1 -1
- package/dist/SocialProof/SocialProof.d.cts +2 -2
- package/dist/SocialProof/SocialProof.d.ts +2 -2
- package/dist/SocialProof/SocialProof.js +1 -1
- package/dist/SocialProof/components/Headline.cjs +3 -3
- package/dist/SocialProof/components/Headline.js +3 -3
- package/dist/SocialProof/components/LayoutFourHorizontal.cjs +1 -1
- package/dist/SocialProof/components/LayoutFourHorizontal.js +1 -1
- package/dist/SocialProof/components/Subheadline.cjs +1 -1
- package/dist/SocialProof/components/Subheadline.js +1 -1
- package/dist/SparkleAnimation/SparkleAnimation.d.ts +2 -2
- package/dist/Stack/Stack.d.cts +2 -2
- package/dist/TitledPromptCarousel/TitledPromptCarousel.cjs +1 -1
- package/dist/TitledPromptCarousel/TitledPromptCarousel.d.cts +2 -2
- package/dist/TitledPromptCarousel/TitledPromptCarousel.d.ts +2 -2
- package/dist/TitledPromptCarousel/TitledPromptCarousel.js +1 -1
- package/dist/Tokens/index.cjs +1 -1
- package/dist/Tokens/index.js +1 -1
- package/dist/TypingAnimation/TypingAnimation.cjs +1 -1
- package/dist/TypingAnimation/TypingAnimation.d.cts +2 -2
- package/dist/TypingAnimation/TypingAnimation.d.ts +2 -2
- package/dist/TypingAnimation/TypingAnimation.js +1 -1
- package/dist/TypingAnimation/hooks/useGetTypographyVariant.cjs +1 -1
- package/dist/TypingAnimation/hooks/useGetTypographyVariant.js +1 -1
- package/dist/Typography/Typography.d.cts +4 -4
- package/dist/Typography/Typography.d.ts +4 -4
- package/dist/WelcomeMessage/components/Container.cjs +2 -2
- package/dist/WelcomeMessage/components/Container.js +2 -2
- package/dist/WidgetTextField/WidgetTextField.cjs +1 -1
- package/dist/WidgetTextField/WidgetTextField.d.cts +2 -2
- package/dist/WidgetTextField/WidgetTextField.d.ts +2 -2
- package/dist/WidgetTextField/WidgetTextField.js +1 -1
- package/dist/WidgetTextField/components/Container.cjs +2 -2
- package/dist/WidgetTextField/components/Container.js +2 -2
- package/dist/WidgetTextField/components/Icon.cjs +1 -1
- package/dist/WidgetTextField/components/Icon.js +1 -1
- package/dist/WidgetWrapper/WidgetWrapper.d.cts +2 -2
- package/dist/WidgetWrapper/WidgetWrapper.d.ts +2 -2
- package/dist/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.cts +2 -2
- package/dist/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.ts +2 -2
- package/dist/styles.css +1 -1
- package/package.json +3 -3
- package/src/components/Carousel/Carousel.tsx +11 -8
- package/src/components/Carousel/types/types.ts +5 -0
- package/src/components/FloatingChat/FloatingChat.tsx +18 -1
- package/src/components/FloatingChat/components/AgentMessage.tsx +8 -0
- package/src/components/FloatingChat/components/ChatMessages.tsx +3 -0
- package/src/components/FloatingChat/components/ModalSheet.tsx +1 -1
- package/src/components/FloatingChat/components/SalesAgentBadgeContent.tsx +86 -0
- package/src/components/FloatingChat/components/SalesAgentProductCardsCarousel.tsx +18 -7
- package/src/components/FloatingChat/components/index.ts +0 -1
- package/src/components/FloatingChat/hooks/useFilteredChatMessages.ts +1 -1
- package/src/components/FloatingChat/utils/functions.ts +19 -0
- package/src/components/FullPageSalesAgent/FullPageSalesAgent.tsx +10 -6
- package/src/components/FullPageSalesAgent/components/Layout.tsx +1 -2
- package/src/components/FullPageSalesAgent/hooks/useContainerResizerObserver.ts +1 -0
- package/src/components/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.tsx +12 -9
- package/src/mocks/productCardMocks.ts +955 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Theme } from "../../packages/components-v3/tokens/theme/theme.js";
|
|
2
|
-
import { CustomIcon } from "../../utils/CustomIcon.js";
|
|
3
2
|
import { TypographyColor } from "../../Typography/types/index.js";
|
|
3
|
+
import { CustomIcon } from "../../utils/CustomIcon.js";
|
|
4
4
|
import { IconVariant } from "../types/types.js";
|
|
5
5
|
import { jsx } from "react/jsx-runtime";
|
|
6
6
|
import SendStandard from "@envive-ai/react-icons/SendStandard";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WidgetWrapperProps } from "./types/types.cjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime6 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/WidgetWrapper/WidgetWrapper.d.ts
|
|
5
5
|
|
|
@@ -16,6 +16,6 @@ declare const WidgetWrapper: ({
|
|
|
16
16
|
className,
|
|
17
17
|
style,
|
|
18
18
|
...containerProps
|
|
19
|
-
}: WidgetWrapperProps) =>
|
|
19
|
+
}: WidgetWrapperProps) => react_jsx_runtime6.JSX.Element;
|
|
20
20
|
//#endregion
|
|
21
21
|
export { WidgetWrapper };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WidgetWrapperProps } from "./types/types.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime1 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/WidgetWrapper/WidgetWrapper.d.ts
|
|
5
5
|
|
|
@@ -16,6 +16,6 @@ declare const WidgetWrapper: ({
|
|
|
16
16
|
className,
|
|
17
17
|
style,
|
|
18
18
|
...containerProps
|
|
19
|
-
}: WidgetWrapperProps) =>
|
|
19
|
+
}: WidgetWrapperProps) => react_jsx_runtime1.JSX.Element;
|
|
20
20
|
//#endregion
|
|
21
21
|
export { WidgetWrapper };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WidgetWrapperWithTitleProps } from "./types/types.cjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime16 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.ts
|
|
5
5
|
declare const WidgetWrapperWithTitle: ({
|
|
@@ -14,6 +14,6 @@ declare const WidgetWrapperWithTitle: ({
|
|
|
14
14
|
hexCardColor,
|
|
15
15
|
hideLogo,
|
|
16
16
|
fullIsLoading
|
|
17
|
-
}: WidgetWrapperWithTitleProps) =>
|
|
17
|
+
}: WidgetWrapperWithTitleProps) => react_jsx_runtime16.JSX.Element;
|
|
18
18
|
//#endregion
|
|
19
19
|
export { WidgetWrapperWithTitle };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WidgetWrapperWithTitleProps } from "./types/types.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.ts
|
|
5
5
|
declare const WidgetWrapperWithTitle: ({
|
|
@@ -14,6 +14,6 @@ declare const WidgetWrapperWithTitle: ({
|
|
|
14
14
|
hexCardColor,
|
|
15
15
|
hideLogo,
|
|
16
16
|
fullIsLoading
|
|
17
|
-
}: WidgetWrapperWithTitleProps) =>
|
|
17
|
+
}: WidgetWrapperWithTitleProps) => react_jsx_runtime0.JSX.Element;
|
|
18
18
|
//#endregion
|
|
19
19
|
export { WidgetWrapperWithTitle };
|
package/dist/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter Variable,Poppins,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.envive-tw-text-t1-md{font-size:var(--envive-typography-font-size-t1);line-height:var(--envive-typography-line-height-124)}.envive-tw-text-t1-md,.envive-tw-text-t2-md{font-weight:var(--envive-typography-font-weight-md);font-family:var(--envive-typography-font-family-title),sans-serif}.envive-tw-text-t2-md{font-size:var(--envive-typography-font-size-t2);line-height:var(--envive-typography-line-height-114)}.envive-tw-text-t3-md{font-size:var(--envive-typography-font-size-t3);font-weight:var(--envive-typography-font-weight-md);line-height:var(--envive-typography-line-height-118);font-family:var(--envive-typography-font-family-title),sans-serif}.envive-tw-text-h1-sb{font-weight:var(--envive-typography-font-weight-sb)}.envive-tw-text-h1-md,.envive-tw-text-h1-sb{font-size:var(--envive-typography-font-size-h1);line-height:var(--envive-typography-line-height-120);font-family:var(--envive-typography-font-family-header),sans-serif}.envive-tw-text-h1-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-h2-sb{font-weight:var(--envive-typography-font-weight-sb)}.envive-tw-text-h2-md,.envive-tw-text-h2-sb{font-size:var(--envive-typography-font-size-h2);line-height:var(--envive-typography-line-height-124);font-family:var(--envive-typography-font-family-header),sans-serif}.envive-tw-text-h2-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-h3-sb{font-weight:var(--envive-typography-font-weight-sb)}.envive-tw-text-h3-md,.envive-tw-text-h3-sb{font-size:var(--envive-typography-font-size-h3);line-height:var(--envive-typography-line-height-116);font-family:var(--envive-typography-font-family-header),sans-serif}.envive-tw-text-h3-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b1-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b1-md,.envive-tw-text-b1-rg{font-size:var(--envive-typography-font-size-b1);line-height:var(--envive-typography-line-height-120);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b1-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b2-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b2-md,.envive-tw-text-b2-rg{font-size:var(--envive-typography-font-size-b2);line-height:var(--envive-typography-line-height-148);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b2-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b3-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b3-md,.envive-tw-text-b3-rg{font-size:var(--envive-typography-font-size-b3);line-height:var(--envive-typography-line-height-140);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b3-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b4-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b4-md,.envive-tw-text-b4-rg{font-size:var(--envive-typography-font-size-b4);line-height:var(--envive-typography-line-height-130);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b4-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b5-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b5-md,.envive-tw-text-b5-rg{font-size:var(--envive-typography-font-size-b5);line-height:var(--envive-typography-line-height-130);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b5-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-l1-sb{font-size:var(--envive-typography-font-size-l1);line-height:var(--envive-typography-line-height-128)}.envive-tw-text-l1-sb,.envive-tw-text-l2-sb{font-weight:var(--envive-typography-font-weight-sb);font-family:var(--envive-typography-font-family-body),sans-serif;letter-spacing:var(--envive-typography-letter-spacing-wide-1)}.envive-tw-text-l2-sb{font-size:var(--envive-typography-font-size-l2);line-height:var(--envive-typography-line-height-133)}.envive-tw-pointer-events-none{pointer-events:none}.envive-tw-fixed{position:fixed}.envive-tw-absolute{position:absolute}.envive-tw-relative{position:relative}.envive-tw-bottom-5{bottom:20px}.envive-tw-bottom-\[0\],.envive-tw-bottom-\[0px\]{bottom:0}.envive-tw-bottom-\[10\%\]{bottom:10%}.envive-tw-bottom-\[170px\]{bottom:170px}.envive-tw-bottom-\[80px\]{bottom:80px}.envive-tw-left-2{left:8px}.envive-tw-left-4{left:16px}.envive-tw-left-\[0\],.envive-tw-left-\[0px\]{left:0}.envive-tw-left-\[calc\(\(100vw-768px\)\/2\)\]{left:calc(50vw - 384px)}.envive-tw-right-2{right:8px}.envive-tw-right-4{right:16px}.envive-tw-right-\[0\],.envive-tw-right-\[0px\]{right:0}.envive-tw-right-\[calc\(\(100vw-768px\)\/2\)\]{right:calc(50vw - 384px)}.envive-tw-top-1\/2{top:50%}.envive-tw-top-\[0\],.envive-tw-top-\[0px\]{top:0}.envive-tw-z-10{z-index:10}.envive-tw-z-\[1000000\]{z-index:1000000}.envive-tw-z-\[1000\]{z-index:1000}.envive-tw-col-start-1{grid-column-start:1}.envive-tw-col-start-2{grid-column-start:2}.envive-tw-col-end-3{grid-column-end:3}.envive-tw-row-start-1{grid-row-start:1}.envive-tw-row-start-2{grid-row-start:2}.envive-tw-row-end-3{grid-row-end:3}.envive-tw-m-4{margin:16px}.envive-tw-mx-4{margin-left:16px;margin-right:16px}.envive-tw-mx-auto{margin-left:auto;margin-right:auto}.envive-tw-mb-1{margin-bottom:4px}.envive-tw-mb-12{margin-bottom:48px}.envive-tw-mb-2{margin-bottom:8px}.envive-tw-mb-4{margin-bottom:16px}.envive-tw-mb-5{margin-bottom:20px}.envive-tw-mb-6{margin-bottom:24px}.envive-tw-ml-auto{margin-left:auto}.envive-tw-mt-1{margin-top:4px}.envive-tw-mt-2{margin-top:8px}.envive-tw-mt-4{margin-top:16px}.envive-tw-mt-6{margin-top:24px}.envive-tw-line-clamp-1{-webkit-line-clamp:1}.envive-tw-line-clamp-1,.envive-tw-line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.envive-tw-line-clamp-2{-webkit-line-clamp:2}.envive-tw-line-clamp-3{-webkit-line-clamp:3}.envive-tw-line-clamp-3,.envive-tw-line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.envive-tw-line-clamp-4{-webkit-line-clamp:4}.envive-tw-line-clamp-5{-webkit-line-clamp:5}.envive-tw-line-clamp-5,.envive-tw-line-clamp-6{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.envive-tw-line-clamp-6{-webkit-line-clamp:6}.envive-tw-line-clamp-\[7\]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7}.envive-tw-block{display:block}.envive-tw-inline-block{display:inline-block}.envive-tw-inline{display:inline}.envive-tw-flex{display:flex}.envive-tw-inline-flex{display:inline-flex}.envive-tw-table{display:table}.envive-tw-grid{display:grid}.envive-tw-aspect-\[3\/4\]{aspect-ratio:3/4}.envive-tw-aspect-global-custom{aspect-ratio:var(--envive-global-custom-aspect-ratio)}.envive-tw-aspect-landscape{aspect-ratio:16/9}.envive-tw-aspect-portrait{aspect-ratio:3/4}.envive-tw-aspect-square{aspect-ratio:1/1}.envive-tw-h-10{height:40px}.envive-tw-h-16{height:64px}.envive-tw-h-24{height:96px}.envive-tw-h-3{height:12px}.envive-tw-h-4{height:16px}.envive-tw-h-6{height:24px}.envive-tw-h-8{height:32px}.envive-tw-h-\[0px\]{height:0}.envive-tw-h-\[112px\]{height:112px}.envive-tw-h-\[128px\]{height:128px}.envive-tw-h-\[12px\]{height:12px}.envive-tw-h-\[13px\]{height:13px}.envive-tw-h-\[24px\]{height:24px}.envive-tw-h-\[25px\]{height:25px}.envive-tw-h-\[28px\]{height:28px}.envive-tw-h-\[29px\]{height:29px}.envive-tw-h-\[32px\]{height:32px}.envive-tw-h-\[33px\]{height:33px}.envive-tw-h-\[37\.6px\]{height:37.6px}.envive-tw-h-\[38px\]{height:38px}.envive-tw-h-\[40px\]{height:40px}.envive-tw-h-\[42px\]{height:42px}.envive-tw-h-\[44px\]{height:44px}.envive-tw-h-\[4px\]{height:4px}.envive-tw-h-\[50px\]{height:50px}.envive-tw-h-\[52px\]{height:52px}.envive-tw-h-\[56px\]{height:56px}.envive-tw-h-\[64px\]{height:64px}.envive-tw-h-fit{height:-moz-fit-content;height:fit-content}.envive-tw-h-full{height:100%}.envive-tw-min-h-screen{min-height:100vh}.envive-tw-w-16{width:64px}.envive-tw-w-2\/3{width:66.666667%}.envive-tw-w-20{width:80px}.envive-tw-w-24{width:96px}.envive-tw-w-3{width:12px}.envive-tw-w-4{width:16px}.envive-tw-w-4\/5{width:80%}.envive-tw-w-6{width:24px}.envive-tw-w-\[10px\]{width:10px}.envive-tw-w-\[112px\]{width:112px}.envive-tw-w-\[12\.58px\]{width:12.58px}.envive-tw-w-\[128px\]{width:128px}.envive-tw-w-\[200px\]{width:200px}.envive-tw-w-\[208px\]{width:208px}.envive-tw-w-\[22px\]{width:22px}.envive-tw-w-\[240px\]{width:240px}.envive-tw-w-\[248px\]{width:248px}.envive-tw-w-\[24px\]{width:24px}.envive-tw-w-\[319px\]{width:319px}.envive-tw-w-\[320px\]{width:320px}.envive-tw-w-\[32px\]{width:32px}.envive-tw-w-\[33px\]{width:33px}.envive-tw-w-\[44px\]{width:44px}.envive-tw-w-\[53px\]{width:53px}.envive-tw-w-\[54px\]{width:54px}.envive-tw-w-\[56px\]{width:56px}.envive-tw-w-\[64px\]{width:64px}.envive-tw-w-\[80\%\]{width:80%}.envive-tw-w-auto{width:auto}.envive-tw-w-fit{width:-moz-fit-content;width:fit-content}.envive-tw-w-full{width:100%}.envive-tw-min-w-\[120px\]{min-width:120px}.envive-tw-min-w-\[140px\]{min-width:140px}.envive-tw-min-w-\[276px\]{min-width:276px}.envive-tw-max-w-2xl{max-width:42rem}.envive-tw-max-w-6xl{max-width:72rem}.envive-tw-max-w-\[100px\]{max-width:100px}.envive-tw-max-w-\[300px\]{max-width:300px}.envive-tw-max-w-\[512px\]{max-width:512px}.envive-tw-max-w-\[768px\]{max-width:768px}.envive-tw-max-w-\[80px\]{max-width:80px}.envive-tw-max-w-\[90ch\]{max-width:90ch}.envive-tw-max-w-full{max-width:100%}.envive-tw-flex-1{flex:1 1 0%}.envive-tw-flex-shrink-0{flex-shrink:0}.envive-tw-flex-grow{flex-grow:1}.envive-tw--translate-y-1\/2{--tw-translate-y:-50%}.envive-tw--translate-y-1\/2,.envive-tw-translate-x-\[-1px\]{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))}.envive-tw-translate-x-\[-1px\]{--tw-translate-x:-1px}.envive-tw-translate-x-\[-30px\]{--tw-translate-x:-30px}.envive-tw-translate-x-\[-30px\],.envive-tw-translate-x-\[1px\]{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))}.envive-tw-translate-x-\[1px\]{--tw-translate-x:1px}.envive-tw-translate-y-\[-50px\]{--tw-translate-y:-50px}.envive-tw-translate-y-\[-50px\],.envive-tw-translate-y-\[73\.75\%\]{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))}.envive-tw-translate-y-\[73\.75\%\]{--tw-translate-y:73.75%}.envive-tw-rotate-180{--tw-rotate:180deg}.envive-tw-rotate-180,.envive-tw-rotate-\[-10deg\]{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))}.envive-tw-rotate-\[-10deg\]{--tw-rotate:-10deg}.envive-tw-rotate-\[10deg\]{--tw-rotate:10deg;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))}@keyframes envive-tw-pulse{50%{opacity:.5}0%{border-color:var(--envive-colors-border-light);background:var(--envive-colors-border-light);opacity:1}to{border-color:var(--envive-colors-border-light);background:var(--envive-colors-border-light);opacity:1}}.envive-tw-animate-pulse{animation:envive-tw-pulse .8s linear infinite alternate}.envive-tw-cursor-not-allowed{cursor:not-allowed}.envive-tw-cursor-pointer{cursor:pointer}.envive-tw-cursor-text{cursor:text}.envive-tw-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.envive-tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.envive-tw-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.envive-tw-grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.envive-tw-flex-row{flex-direction:row}.envive-tw-flex-row-reverse{flex-direction:row-reverse}.envive-tw-flex-col{flex-direction:column}.envive-tw-flex-col-reverse{flex-direction:column-reverse}.envive-tw-flex-wrap{flex-wrap:wrap}.envive-tw-flex-nowrap{flex-wrap:nowrap}.envive-tw-content-center{align-content:center}.envive-tw-items-start{align-items:flex-start}.envive-tw-items-end{align-items:flex-end}.envive-tw-items-center{align-items:center}.envive-tw-items-baseline{align-items:baseline}.envive-tw-items-stretch{align-items:stretch}.envive-tw-justify-start{justify-content:flex-start}.envive-tw-justify-end{justify-content:flex-end}.envive-tw-justify-center{justify-content:center}.envive-tw-justify-between{justify-content:space-between}.envive-tw-justify-around{justify-content:space-around}.envive-tw-justify-evenly{justify-content:space-evenly}.\!envive-tw-gap-6{gap:24px!important}.envive-tw-gap-0\.5{gap:2px}.envive-tw-gap-1{gap:4px}.envive-tw-gap-1\.5{gap:6px}.envive-tw-gap-10{gap:40px}.envive-tw-gap-12{gap:48px}.envive-tw-gap-14{gap:56px}.envive-tw-gap-16{gap:64px}.envive-tw-gap-2{gap:8px}.envive-tw-gap-2\.5{gap:10px}.envive-tw-gap-20{gap:80px}.envive-tw-gap-24{gap:96px}.envive-tw-gap-28{gap:112px}.envive-tw-gap-3{gap:12px}.envive-tw-gap-3\.5{gap:14px}.envive-tw-gap-32{gap:128px}.envive-tw-gap-36{gap:144px}.envive-tw-gap-4{gap:16px}.envive-tw-gap-40{gap:160px}.envive-tw-gap-44{gap:176px}.envive-tw-gap-48{gap:192px}.envive-tw-gap-5{gap:20px}.envive-tw-gap-52{gap:208px}.envive-tw-gap-56{gap:224px}.envive-tw-gap-6{gap:24px}.envive-tw-gap-60{gap:240px}.envive-tw-gap-64{gap:256px}.envive-tw-gap-7{gap:28px}.envive-tw-gap-72{gap:288px}.envive-tw-gap-8{gap:32px}.envive-tw-gap-80{gap:320px}.envive-tw-gap-9{gap:36px}.envive-tw-gap-96{gap:384px}.envive-tw-gap-\[10px\]{gap:10px}.envive-tw-gap-x-2{-moz-column-gap:8px;column-gap:8px}.envive-tw-space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(4px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4px*var(--tw-space-y-reverse))}.envive-tw-space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(48px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(48px*var(--tw-space-y-reverse))}.envive-tw-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(8px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(8px*var(--tw-space-y-reverse))}.envive-tw-space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(12px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(12px*var(--tw-space-y-reverse))}.envive-tw-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(16px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(16px*var(--tw-space-y-reverse))}.envive-tw-space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(24px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(24px*var(--tw-space-y-reverse))}.envive-tw-space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(32px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(32px*var(--tw-space-y-reverse))}.envive-tw-self-end{align-self:flex-end}.envive-tw-overflow-hidden{overflow:hidden}.envive-tw-overflow-scroll{overflow:scroll}.envive-tw-overflow-x-auto{overflow-x:auto}.envive-tw-overflow-y-auto{overflow-y:auto}.envive-tw-overflow-x-hidden{overflow-x:hidden}.envive-tw-overflow-y-hidden{overflow-y:hidden}.envive-tw-overflow-x-scroll{overflow-x:scroll}.envive-tw-text-ellipsis{text-overflow:ellipsis}.envive-tw-whitespace-nowrap{white-space:nowrap}.envive-tw-break-all{word-break:break-all}.\!envive-tw-rounded-0{border-radius:0!important}.envive-tw-rounded-4{border-radius:4px}.envive-tw-rounded-\[--envive-global-custom-border-radius\]{border-radius:var(--envive-global-custom-border-radius)}.envive-tw-rounded-\[0_50px_50px_0\]{border-radius:0 50px 50px 0}.envive-tw-rounded-\[12px\]{border-radius:12px}.envive-tw-rounded-\[16px_16px_0_16px\]{border-radius:16px 16px 0 16px}.envive-tw-rounded-\[20px\]{border-radius:20px}.envive-tw-rounded-\[4px\]{border-radius:4px}.envive-tw-rounded-\[50px\]{border-radius:50px}.envive-tw-rounded-\[50px_0_0_50px\]{border-radius:50px 0 0 50px}.envive-tw-rounded-\[8px\]{border-radius:8px}.envive-tw-rounded-\[var\(--envive-global-custom-border-radius\)\],.envive-tw-rounded-global-custom{border-radius:var(--envive-global-custom-border-radius)}.envive-tw-rounded-l-\[4px\]{border-top-left-radius:4px;border-bottom-left-radius:4px}.envive-tw-rounded-r-\[4px\]{border-top-right-radius:4px;border-bottom-right-radius:4px}.envive-tw-rounded-t-\[var\(--envive-global-custom-border-radius\)\]{border-top-left-radius:var(--envive-global-custom-border-radius);border-top-right-radius:var(--envive-global-custom-border-radius)}.envive-tw-border{border-width:1px}.envive-tw-border-0{border-width:0}.envive-tw-border-\[1px\]{border-width:1px}.envive-tw-border-b{border-bottom-width:1px}.envive-tw-border-t{border-top-width:1px}.envive-tw-border-solid{border-style:solid}.envive-tw-border-none{border-style:none}.\!envive-tw-border-border-medium{border-color:var(--envive-colors-border-medium)!important}.envive-tw-border-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_90\%\,\#000000\)\]{border-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000)}.envive-tw-border-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_90\%\,\#000000_10\%\)\]{border-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000 10%)}.envive-tw-border-\[color-mix\(in_srgb\,var\(--envive-colors-background-tertiary\)_90\%\,\#000000\)\]{border-color:color-mix(in srgb,var(--envive-colors-background-tertiary) 90%,#000)}.envive-tw-border-\[color-mix\(in_srgb\,var\(--envive-colors-button-light-background-color\)_90\%\,\#000000\)\]{border-color:color-mix(in srgb,var(--envive-colors-button-light-background-color) 90%,#000)}.envive-tw-border-background-dark{border-color:var(--envive-colors-background-dark)}.envive-tw-border-background-light{border-color:var(--envive-colors-background-light)}.envive-tw-border-border-dark{border-color:var(--envive-colors-border-dark)}.envive-tw-border-border-light{border-color:var(--envive-colors-border-light)}.envive-tw-border-button-dark-background-color{border-color:var(--envive-colors-button-dark-background-color)}.envive-tw-border-emerald-100{--tw-border-opacity:1;border-color:rgb(209 250 229/var(--tw-border-opacity,1))}.envive-tw-border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.envive-tw-border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.envive-tw-border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.envive-tw-border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.envive-tw-border-text-secondary{border-color:var(--envive-colors-text-secondary)}.envive-tw-border-b-border-dark{border-bottom-color:var(--envive-colors-border-dark)}.envive-tw-border-b-border-medium{border-bottom-color:var(--envive-colors-border-medium)}.envive-tw-bg-\[\#1f5f51\]{--tw-bg-opacity:1;background-color:rgb(31 95 81/var(--tw-bg-opacity,1))}.envive-tw-bg-\[\#FFFFFFB2\]{background-color:#ffffffb2}.envive-tw-bg-\[\#FFFFFF\]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.envive-tw-bg-\[--envive-colors-accent-primary\]{background-color:var(--envive-colors-accent-primary)}.envive-tw-bg-\[--envive-colors-accent-secondary\]{background-color:var(--envive-colors-accent-secondary)}.envive-tw-bg-\[--envive-colors-background-dark\]{background-color:var(--envive-colors-background-dark)}.envive-tw-bg-\[--envive-colors-background-light\]{background-color:var(--envive-colors-background-light)}.envive-tw-bg-\[--envive-colors-background-primary\]{background-color:var(--envive-colors-background-primary)}.envive-tw-bg-\[--envive-colors-background-secondary\]{background-color:var(--envive-colors-background-secondary)}.envive-tw-bg-\[--envive-colors-background-tertiary\]{background-color:var(--envive-colors-background-tertiary)}.envive-tw-bg-\[--envive-colors-border-dark\]{background-color:var(--envive-colors-border-dark)}.envive-tw-bg-\[--envive-colors-border-light\]{background-color:var(--envive-colors-border-light)}.envive-tw-bg-\[--envive-colors-border-medium\]{background-color:var(--envive-colors-border-medium)}.envive-tw-bg-\[--envive-colors-text-accent\]{background-color:var(--envive-colors-text-accent)}.envive-tw-bg-\[--envive-colors-text-light\]{background-color:var(--envive-colors-text-light)}.envive-tw-bg-\[--envive-colors-text-link\]{background-color:var(--envive-colors-text-link)}.envive-tw-bg-\[--envive-colors-text-primary\]{background-color:var(--envive-colors-text-primary)}.envive-tw-bg-\[--envive-colors-text-secondary\]{background-color:var(--envive-colors-text-secondary)}.envive-tw-bg-\[color-mix\(in_srgb\,var\(--envive-colors-background-light\)\,transparent_10\%\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-light),transparent 10%)}.envive-tw-bg-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_90\%\,\#000000\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000)}.envive-tw-bg-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_90\%\,\#000000_10\%\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000 10%)}.envive-tw-bg-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_95\%\,\#000000\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 95%,#000)}.envive-tw-bg-\[rgb\(from_var\(--envive-colors-background-dark\)_r_g_b_\/_10\%\)\]{background-color:rgb(from var(--envive-colors-background-dark) r g b/10%)}.envive-tw-bg-\[rgb\(from_var\(--envive-colors-background-light\)_r_g_b_\/_90\%\)\]{background-color:rgb(from var(--envive-colors-background-light) r g b/90%)}.envive-tw-bg-\[rgba\(0\,0\,0\,0\.40\)\]{background-color:rgba(0,0,0,.4)}.envive-tw-bg-background-dark{background-color:var(--envive-colors-background-dark)}.envive-tw-bg-background-light{background-color:var(--envive-colors-background-light)}.envive-tw-bg-background-primary{background-color:var(--envive-colors-background-primary)}.envive-tw-bg-background-secondary{background-color:var(--envive-colors-background-secondary)}.envive-tw-bg-background-tertiary{background-color:var(--envive-colors-background-tertiary)}.envive-tw-bg-button-dark-background-color{background-color:var(--envive-colors-button-dark-background-color)}.envive-tw-bg-button-light-background-color{background-color:var(--envive-colors-button-light-background-color)}.envive-tw-bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.envive-tw-bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.envive-tw-bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.envive-tw-bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.envive-tw-bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.envive-tw-bg-text-link{background-color:var(--envive-colors-text-link)}.envive-tw-bg-transparent{background-color:transparent}.envive-tw-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.envive-tw-bg-\[linear-gradient\(0deg\,rgba\(0\,0\,0\,0\.40\)_0\%\,rgba\(0\,0\,0\,0\.40\)_100\%\)\]{background-image:linear-gradient(0deg,rgba(0,0,0,.4),rgba(0,0,0,.4))}.envive-tw-fill-button-dark-icon-color{fill:var(--envive-colors-button-dark-icon-color)}.envive-tw-fill-button-light-icon-color{fill:var(--envive-colors-button-light-icon-color)}.envive-tw-fill-transparent{fill:transparent}.envive-tw-stroke-background-light{stroke:var(--envive-colors-background-light)}.envive-tw-stroke-button-dark-icon-color{stroke:var(--envive-colors-button-dark-icon-color)}.envive-tw-stroke-button-light-icon-color{stroke:var(--envive-colors-button-light-icon-color)}.envive-tw-object-contain{-o-object-fit:contain;object-fit:contain}.envive-tw-object-cover{-o-object-fit:cover;object-fit:cover}.envive-tw-object-fill{-o-object-fit:fill;object-fit:fill}.envive-tw-object-none{-o-object-fit:none;object-fit:none}.envive-tw-object-scale-down{-o-object-fit:scale-down;object-fit:scale-down}.envive-tw-p-2{padding:8px}.envive-tw-p-3{padding:12px}.envive-tw-p-4{padding:16px}.envive-tw-p-8{padding:32px}.envive-tw-p-\[1px\]{padding:1px}.envive-tw-px-1{padding-left:4px;padding-right:4px}.envive-tw-px-2{padding-left:8px;padding-right:8px}.envive-tw-px-3{padding-left:12px;padding-right:12px}.envive-tw-px-4{padding-left:16px;padding-right:16px}.envive-tw-px-\[6px\]{padding-left:6px;padding-right:6px}.envive-tw-py-0\.5{padding-top:2px;padding-bottom:2px}.envive-tw-py-1{padding-top:4px;padding-bottom:4px}.envive-tw-py-10{padding-top:40px;padding-bottom:40px}.envive-tw-py-16{padding-top:64px;padding-bottom:64px}.envive-tw-py-2{padding-top:8px;padding-bottom:8px}.envive-tw-py-3{padding-top:12px;padding-bottom:12px}.envive-tw-py-6{padding-top:24px;padding-bottom:24px}.envive-tw-py-8{padding-top:32px;padding-bottom:32px}.envive-tw-py-\[2px\]{padding-top:2px;padding-bottom:2px}.envive-tw-pb-4{padding-bottom:16px}.envive-tw-pb-\[131px\]{padding-bottom:131px}.envive-tw-pb-\[150px\]{padding-bottom:150px}.envive-tw-pb-\[180px\]{padding-bottom:180px}.envive-tw-pl-4{padding-left:16px}.envive-tw-pl-\[2px\]{padding-left:2px}.envive-tw-pr-2{padding-right:8px}.envive-tw-pr-4{padding-right:16px}.envive-tw-pt-1{padding-top:4px}.envive-tw-pt-2{padding-top:8px}.envive-tw-pt-3{padding-top:12px}.envive-tw-pt-4{padding-top:16px}.envive-tw-pt-6{padding-top:24px}.envive-tw-text-left{text-align:left}.envive-tw-text-center{text-align:center}.envive-tw-text-right{text-align:right}.envive-tw-text-justify{text-align:justify}.envive-tw-align-top{vertical-align:top}.envive-tw-align-middle{vertical-align:middle}.envive-tw-font-body{font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-font-header{font-family:var(--envive-typography-font-family-header),sans-serif}.envive-tw-font-title{font-family:var(--envive-typography-font-family-title),sans-serif}.envive-tw-text-2xl{font-size:1.5rem;line-height:2rem}.envive-tw-text-\[2\.25rem\]{font-size:2.25rem}.envive-tw-text-b1{font-size:var(--envive-typography-font-size-b1)}.envive-tw-text-b3{font-size:var(--envive-typography-font-size-b3)}.envive-tw-text-b4{font-size:var(--envive-typography-font-size-b4)}.envive-tw-text-b5{font-size:var(--envive-typography-font-size-b5)}.envive-tw-text-base{font-size:1rem;line-height:1.5rem}.envive-tw-text-h2{font-size:var(--envive-typography-font-size-h2)}.envive-tw-text-h3{font-size:var(--envive-typography-font-size-h3)}.envive-tw-text-lg{font-size:1.125rem;line-height:1.75rem}.envive-tw-text-sm{font-size:.875rem;line-height:1.25rem}.envive-tw-text-t1{font-size:var(--envive-typography-font-size-t1)}.envive-tw-text-t2{font-size:var(--envive-typography-font-size-t2)}.envive-tw-text-t3{font-size:var(--envive-typography-font-size-t3)}.envive-tw-text-xs{font-size:.75rem;line-height:1rem}.envive-tw-font-bold{font-weight:700}.envive-tw-font-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-font-medium{font-weight:500}.envive-tw-font-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-font-sb{font-weight:var(--envive-typography-font-weight-sb)}.envive-tw-font-semibold{font-weight:600}.envive-tw-uppercase{text-transform:uppercase}.envive-tw-capitalize{text-transform:capitalize}.envive-tw-italic{font-style:italic}.envive-tw-leading-114{line-height:var(--envive-typography-line-height-114)}.envive-tw-leading-116{line-height:var(--envive-typography-line-height-116)}.envive-tw-leading-118{line-height:var(--envive-typography-line-height-118)}.envive-tw-leading-120{line-height:var(--envive-typography-line-height-120)}.envive-tw-leading-124{line-height:var(--envive-typography-line-height-124)}.envive-tw-leading-130{line-height:var(--envive-typography-line-height-130)}.envive-tw-leading-140{line-height:var(--envive-typography-line-height-140)}.envive-tw-leading-148{line-height:var(--envive-typography-line-height-148)}.envive-tw-leading-\[0\]{line-height:0}.envive-tw-leading-\[13px\]{line-height:13px}.envive-tw-leading-relaxed{line-height:1.625}.envive-tw-tracking-tighter{letter-spacing:-.05em}.envive-tw-text-\[\#f9f6ea\]{--tw-text-opacity:1;color:rgb(249 246 234/var(--tw-text-opacity,1))}.envive-tw-text-\[--envive-colors-text-accent\]{color:var(--envive-colors-text-accent)}.envive-tw-text-\[--envive-colors-text-light\]{color:var(--envive-colors-text-light)}.envive-tw-text-\[--envive-colors-text-link\]{color:var(--envive-colors-text-link)}.envive-tw-text-\[--envive-colors-text-primary\]{color:var(--envive-colors-text-primary)}.envive-tw-text-\[--envive-colors-text-secondary\]{color:var(--envive-colors-text-secondary)}.envive-tw-text-background-dark{color:var(--envive-colors-background-dark)}.envive-tw-text-background-light{color:var(--envive-colors-background-light)}.envive-tw-text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.envive-tw-text-emerald-950{--tw-text-opacity:1;color:rgb(2 44 34/var(--tw-text-opacity,1))}.envive-tw-text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.envive-tw-text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.envive-tw-text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.envive-tw-text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.envive-tw-text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.envive-tw-text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.envive-tw-text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.envive-tw-text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.envive-tw-text-text-light{color:var(--envive-colors-text-light)}.envive-tw-text-text-link{color:var(--envive-colors-text-link)}.envive-tw-text-text-primary{color:var(--envive-colors-text-primary)}.envive-tw-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.envive-tw-underline{text-decoration-line:underline}.envive-tw-line-through{text-decoration-line:line-through}.envive-tw-opacity-0{opacity:0}.envive-tw-opacity-100{opacity:1}.envive-tw-opacity-50{opacity:.5}.envive-tw-shadow-\[2px_2px_6px_0px_rgba\(0\,0\,0\,0\.15\)\]{--tw-shadow:2px 2px 6px 0px rgba(0,0,0,.15);--tw-shadow-colored:2px 2px 6px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.envive-tw-shadow-\[2px_2px_8px_0_rgba\(0\,0\,0\,0\.25\)\]{--tw-shadow:2px 2px 8px 0 rgba(0,0,0,.25);--tw-shadow-colored:2px 2px 8px 0 var(--tw-shadow-color)}.envive-tw-shadow-\[2px_2px_8px_0_rgba\(0\,0\,0\,0\.25\)\],.envive-tw-shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.envive-tw-shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.envive-tw-shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.envive-tw-outline-none{outline:2px solid transparent;outline-offset:2px}.envive-tw-backdrop-blur-\[12px\]{--tw-backdrop-blur:blur(12px)}.envive-tw-backdrop-blur-\[12px\],.envive-tw-backdrop-blur-\[4px\]{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.envive-tw-backdrop-blur-\[4px\]{--tw-backdrop-blur:blur(4px)}.envive-tw-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.envive-tw-transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.envive-tw-duration-200{transition-duration:.2s}.envive-tw-duration-300{transition-duration:.3s}.envive-tw-ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.envive-tw-typography-ol,.envive-tw-typography-ul{list-style:inherit;margin:0;padding-left:24px;line-height:4px;&>li{list-style:inherit!important}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-normal.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-italic.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-400-normal.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-500-normal.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-600-normal.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}.placeholder\:envive-tw-text-text-secondary::-moz-placeholder{color:var(--envive-colors-text-secondary)}.placeholder\:envive-tw-text-text-secondary::placeholder{color:var(--envive-colors-text-secondary)}.focus-within\:envive-tw-border-\[--envive-colors-text-link\]:focus-within{border-color:var(--envive-colors-text-link)}@media (hover:hover) and (pointer:fine){.hover\:envive-tw-border-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_90\%\2c \#000000\)\]:hover{border-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000)}.hover\:envive-tw-border-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000\)\]:hover{border-color:color-mix(in srgb,var(--envive-colors-background-secondary) 92%,#000)}.hover\:envive-tw-border-border-dark:hover{border-color:var(--envive-colors-border-dark)}.hover\:envive-tw-border-b-border-dark:hover{border-bottom-color:var(--envive-colors-border-dark)}.hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000\)\]:hover{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 92%,#000)}.hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000_08\%\)\]:hover,.hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000_8\%\)\]:hover{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 92%,#000 8%)}.hover\:envive-tw-bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:envive-tw-text-text-primary:hover{color:var(--envive-colors-text-primary)}.hover\:envive-tw-underline:hover{text-decoration-line:underline}.hover\:envive-tw-underline-offset-2:hover{text-underline-offset:2px}}.focus\:envive-tw-border-\[\#1f5f51\]:focus{--tw-border-opacity:1;border-color:rgb(31 95 81/var(--tw-border-opacity,1))}.focus\:envive-tw-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:envive-tw-ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:envive-tw-ring-1:focus,.focus\:envive-tw-ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:envive-tw-ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:envive-tw-ring-\[\#1f5f51\]:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(31 95 81/var(--tw-ring-opacity,1))}.focus\:envive-tw-ring-offset-2:focus{--tw-ring-offset-width:2px}.focus\:placeholder\:envive-tw-text-text-primary:focus::-moz-placeholder{color:var(--envive-colors-text-primary)}.focus\:placeholder\:envive-tw-text-text-primary:focus::placeholder{color:var(--envive-colors-text-primary)}.focus-visible\:envive-tw-shadow-none:focus-visible{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus-visible\:envive-tw-outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.disabled\:envive-tw-opacity-50:disabled{opacity:.5}@media (hover:hover) and (pointer:fine){.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[30px\]{height:30px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[38px\]{height:38px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[51px\]{height:51px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[57px\]{height:57px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[72px\]{height:72px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[30px\]{width:30px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[38px\]{width:38px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[51px\]{width:51px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[62px\]{width:62px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[72px\]{width:72px}.envive-tw-group\/card:hover .group-hover\/card\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_80\%\2c \#000000_20\%\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 80%,#000 20%)}.envive-tw-group\/card:hover .group-hover\/card\:envive-tw-bg-text-primary{background-color:var(--envive-colors-text-primary)}.envive-tw-group:hover .group-hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_90\%\2c \#000000_10\%\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000 10%)}.envive-tw-group:hover .group-hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 92%,#000)}.envive-tw-group:hover .group-hover\:envive-tw-fill-background-dark{fill:var(--envive-colors-background-dark)}.envive-tw-group:hover .group-hover\:envive-tw-stroke-background-dark{stroke:var(--envive-colors-background-dark)}.envive-tw-group:hover .group-hover\:envive-tw-text-text-primary,.envive-tw-group\/card:hover .group-hover\/card\:envive-tw-text-\[--envive-colors-text-primary\]{color:var(--envive-colors-text-primary)}.envive-tw-group:hover .group-hover\:envive-tw-underline{text-decoration-line:underline}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-shadow-\[2px_2px_8px_0_rgba\(0\2c 0\2c 0\2c 0\.25\)\]{--tw-shadow:2px 2px 8px 0 rgba(0,0,0,.25);--tw-shadow-colored:2px 2px 8px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}@media (min-width:768px){.md\:envive-tw-max-w-\[450px\]{max-width:450px}.md\:envive-tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.lg\:envive-tw-max-w-\[900px\]{max-width:900px}.lg\:envive-tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:envive-tw-text-\[3rem\]{font-size:3rem}}.\[\&\>div\>div\]\:envive-tw-items-end>div>div{align-items:flex-end}.\[\&\>img\]\:envive-tw-transition-transform>img{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\[\&\>img\]\:envive-tw-duration-300>img{transition-duration:.3s}.\[\&\>img\]\:envive-tw-ease-in-out>img{transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover) and (pointer:fine){.envive-tw-group:hover .\[\&\>img\]\:group-hover\:envive-tw-scale-125>img{--tw-scale-x:1.25;--tw-scale-y:1.25;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))}}.\[\&\>line\]\:envive-tw-stroke-\[var\(--envive-colors-background-light\)\]>line{stroke:var(--envive-colors-background-light)}.\[\&\>line\]\:envive-tw-stroke-\[var\(--envive-colors-text-secondary\)\]>line{stroke:var(--envive-colors-text-secondary)}.\[\&\>path\]\:envive-tw-fill-\[var\(--envive-colors-background-dark\)\]>path{fill:var(--envive-colors-background-dark)}.\[\&\>path\]\:envive-tw-fill-\[var\(--envive-colors-background-light\)\]>path{fill:var(--envive-colors-background-light)}
|
|
1
|
+
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter Variable,Poppins,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.envive-tw-text-t1-md{font-size:var(--envive-typography-font-size-t1);line-height:var(--envive-typography-line-height-124)}.envive-tw-text-t1-md,.envive-tw-text-t2-md{font-weight:var(--envive-typography-font-weight-md);font-family:var(--envive-typography-font-family-title),sans-serif}.envive-tw-text-t2-md{font-size:var(--envive-typography-font-size-t2);line-height:var(--envive-typography-line-height-114)}.envive-tw-text-t3-md{font-size:var(--envive-typography-font-size-t3);font-weight:var(--envive-typography-font-weight-md);line-height:var(--envive-typography-line-height-118);font-family:var(--envive-typography-font-family-title),sans-serif}.envive-tw-text-h1-sb{font-weight:var(--envive-typography-font-weight-sb)}.envive-tw-text-h1-md,.envive-tw-text-h1-sb{font-size:var(--envive-typography-font-size-h1);line-height:var(--envive-typography-line-height-120);font-family:var(--envive-typography-font-family-header),sans-serif}.envive-tw-text-h1-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-h2-sb{font-weight:var(--envive-typography-font-weight-sb)}.envive-tw-text-h2-md,.envive-tw-text-h2-sb{font-size:var(--envive-typography-font-size-h2);line-height:var(--envive-typography-line-height-124);font-family:var(--envive-typography-font-family-header),sans-serif}.envive-tw-text-h2-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-h3-sb{font-weight:var(--envive-typography-font-weight-sb)}.envive-tw-text-h3-md,.envive-tw-text-h3-sb{font-size:var(--envive-typography-font-size-h3);line-height:var(--envive-typography-line-height-116);font-family:var(--envive-typography-font-family-header),sans-serif}.envive-tw-text-h3-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b1-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b1-md,.envive-tw-text-b1-rg{font-size:var(--envive-typography-font-size-b1);line-height:var(--envive-typography-line-height-120);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b1-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b2-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b2-md,.envive-tw-text-b2-rg{font-size:var(--envive-typography-font-size-b2);line-height:var(--envive-typography-line-height-148);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b2-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b3-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b3-md,.envive-tw-text-b3-rg{font-size:var(--envive-typography-font-size-b3);line-height:var(--envive-typography-line-height-140);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b3-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b4-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b4-md,.envive-tw-text-b4-rg{font-size:var(--envive-typography-font-size-b4);line-height:var(--envive-typography-line-height-130);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b4-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-b5-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-text-b5-md,.envive-tw-text-b5-rg{font-size:var(--envive-typography-font-size-b5);line-height:var(--envive-typography-line-height-130);font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-text-b5-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-text-l1-sb{font-size:var(--envive-typography-font-size-l1);line-height:var(--envive-typography-line-height-128)}.envive-tw-text-l1-sb,.envive-tw-text-l2-sb{font-weight:var(--envive-typography-font-weight-sb);font-family:var(--envive-typography-font-family-body),sans-serif;letter-spacing:var(--envive-typography-letter-spacing-wide-1)}.envive-tw-text-l2-sb{font-size:var(--envive-typography-font-size-l2);line-height:var(--envive-typography-line-height-133)}.envive-tw-pointer-events-none{pointer-events:none}.envive-tw-fixed{position:fixed}.envive-tw-absolute{position:absolute}.envive-tw-relative{position:relative}.envive-tw-bottom-5{bottom:20px}.envive-tw-bottom-\[0\],.envive-tw-bottom-\[0px\]{bottom:0}.envive-tw-bottom-\[10\%\]{bottom:10%}.envive-tw-bottom-\[170px\]{bottom:170px}.envive-tw-bottom-\[80px\]{bottom:80px}.envive-tw-left-2{left:8px}.envive-tw-left-4{left:16px}.envive-tw-left-\[0\],.envive-tw-left-\[0px\]{left:0}.envive-tw-left-\[calc\(\(100vw-768px\)\/2\)\]{left:calc(50vw - 384px)}.envive-tw-right-2{right:8px}.envive-tw-right-4{right:16px}.envive-tw-right-\[0\],.envive-tw-right-\[0px\]{right:0}.envive-tw-right-\[calc\(\(100vw-768px\)\/2\)\]{right:calc(50vw - 384px)}.envive-tw-top-1\/2{top:50%}.envive-tw-top-\[0\],.envive-tw-top-\[0px\]{top:0}.envive-tw-z-10{z-index:10}.envive-tw-z-\[1000000\]{z-index:1000000}.envive-tw-z-\[1000\]{z-index:1000}.envive-tw-col-start-1{grid-column-start:1}.envive-tw-col-start-2{grid-column-start:2}.envive-tw-col-end-3{grid-column-end:3}.envive-tw-row-start-1{grid-row-start:1}.envive-tw-row-start-2{grid-row-start:2}.envive-tw-row-end-3{grid-row-end:3}.envive-tw-m-4{margin:16px}.envive-tw-mx-4{margin-left:16px;margin-right:16px}.envive-tw-mx-auto{margin-left:auto;margin-right:auto}.envive-tw-mb-1{margin-bottom:4px}.envive-tw-mb-12{margin-bottom:48px}.envive-tw-mb-2{margin-bottom:8px}.envive-tw-mb-4{margin-bottom:16px}.envive-tw-mb-5{margin-bottom:20px}.envive-tw-mb-6{margin-bottom:24px}.envive-tw-ml-auto{margin-left:auto}.envive-tw-mt-1{margin-top:4px}.envive-tw-mt-2{margin-top:8px}.envive-tw-mt-4{margin-top:16px}.envive-tw-mt-6{margin-top:24px}.envive-tw-line-clamp-1{-webkit-line-clamp:1}.envive-tw-line-clamp-1,.envive-tw-line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.envive-tw-line-clamp-2{-webkit-line-clamp:2}.envive-tw-line-clamp-3{-webkit-line-clamp:3}.envive-tw-line-clamp-3,.envive-tw-line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.envive-tw-line-clamp-4{-webkit-line-clamp:4}.envive-tw-line-clamp-5{-webkit-line-clamp:5}.envive-tw-line-clamp-5,.envive-tw-line-clamp-6{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.envive-tw-line-clamp-6{-webkit-line-clamp:6}.envive-tw-line-clamp-\[7\]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7}.envive-tw-block{display:block}.envive-tw-inline-block{display:inline-block}.envive-tw-inline{display:inline}.envive-tw-flex{display:flex}.envive-tw-inline-flex{display:inline-flex}.envive-tw-table{display:table}.envive-tw-grid{display:grid}.envive-tw-aspect-\[3\/4\]{aspect-ratio:3/4}.envive-tw-aspect-global-custom{aspect-ratio:var(--envive-global-custom-aspect-ratio)}.envive-tw-aspect-landscape{aspect-ratio:16/9}.envive-tw-aspect-portrait{aspect-ratio:3/4}.envive-tw-aspect-square{aspect-ratio:1/1}.envive-tw-h-10{height:40px}.envive-tw-h-16{height:64px}.envive-tw-h-24{height:96px}.envive-tw-h-3{height:12px}.envive-tw-h-4{height:16px}.envive-tw-h-6{height:24px}.envive-tw-h-8{height:32px}.envive-tw-h-\[0px\]{height:0}.envive-tw-h-\[112px\]{height:112px}.envive-tw-h-\[128px\]{height:128px}.envive-tw-h-\[12px\]{height:12px}.envive-tw-h-\[13px\]{height:13px}.envive-tw-h-\[24px\]{height:24px}.envive-tw-h-\[25px\]{height:25px}.envive-tw-h-\[28px\]{height:28px}.envive-tw-h-\[29px\]{height:29px}.envive-tw-h-\[32px\]{height:32px}.envive-tw-h-\[33px\]{height:33px}.envive-tw-h-\[37\.6px\]{height:37.6px}.envive-tw-h-\[38px\]{height:38px}.envive-tw-h-\[40px\]{height:40px}.envive-tw-h-\[42px\]{height:42px}.envive-tw-h-\[44px\]{height:44px}.envive-tw-h-\[4px\]{height:4px}.envive-tw-h-\[50px\]{height:50px}.envive-tw-h-\[52px\]{height:52px}.envive-tw-h-\[56px\]{height:56px}.envive-tw-h-\[64px\]{height:64px}.envive-tw-h-fit{height:-moz-fit-content;height:fit-content}.envive-tw-h-full{height:100%}.envive-tw-min-h-screen{min-height:100vh}.envive-tw-w-16{width:64px}.envive-tw-w-2\/3{width:66.666667%}.envive-tw-w-20{width:80px}.envive-tw-w-24{width:96px}.envive-tw-w-3{width:12px}.envive-tw-w-4{width:16px}.envive-tw-w-4\/5{width:80%}.envive-tw-w-6{width:24px}.envive-tw-w-\[10px\]{width:10px}.envive-tw-w-\[112px\]{width:112px}.envive-tw-w-\[12\.58px\]{width:12.58px}.envive-tw-w-\[128px\]{width:128px}.envive-tw-w-\[200px\]{width:200px}.envive-tw-w-\[208px\]{width:208px}.envive-tw-w-\[22px\]{width:22px}.envive-tw-w-\[240px\]{width:240px}.envive-tw-w-\[248px\]{width:248px}.envive-tw-w-\[24px\]{width:24px}.envive-tw-w-\[319px\]{width:319px}.envive-tw-w-\[320px\]{width:320px}.envive-tw-w-\[32px\]{width:32px}.envive-tw-w-\[33px\]{width:33px}.envive-tw-w-\[44px\]{width:44px}.envive-tw-w-\[53px\]{width:53px}.envive-tw-w-\[54px\]{width:54px}.envive-tw-w-\[56px\]{width:56px}.envive-tw-w-\[64px\]{width:64px}.envive-tw-w-\[80\%\]{width:80%}.envive-tw-w-auto{width:auto}.envive-tw-w-fit{width:-moz-fit-content;width:fit-content}.envive-tw-w-full{width:100%}.envive-tw-min-w-\[120px\]{min-width:120px}.envive-tw-min-w-\[140px\]{min-width:140px}.envive-tw-min-w-\[276px\]{min-width:276px}.envive-tw-max-w-2xl{max-width:42rem}.envive-tw-max-w-6xl{max-width:72rem}.envive-tw-max-w-\[100px\]{max-width:100px}.envive-tw-max-w-\[300px\]{max-width:300px}.envive-tw-max-w-\[512px\]{max-width:512px}.envive-tw-max-w-\[768px\]{max-width:768px}.envive-tw-max-w-\[80px\]{max-width:80px}.envive-tw-max-w-\[90ch\]{max-width:90ch}.envive-tw-max-w-full{max-width:100%}.envive-tw-flex-1{flex:1 1 0%}.envive-tw-flex-shrink-0{flex-shrink:0}.envive-tw-flex-grow{flex-grow:1}.envive-tw--translate-y-1\/2{--tw-translate-y:-50%}.envive-tw--translate-y-1\/2,.envive-tw-translate-x-\[-1px\]{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))}.envive-tw-translate-x-\[-1px\]{--tw-translate-x:-1px}.envive-tw-translate-x-\[-30px\]{--tw-translate-x:-30px}.envive-tw-translate-x-\[-30px\],.envive-tw-translate-x-\[1px\]{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))}.envive-tw-translate-x-\[1px\]{--tw-translate-x:1px}.envive-tw-translate-y-\[-50px\]{--tw-translate-y:-50px}.envive-tw-translate-y-\[-50px\],.envive-tw-translate-y-\[73\.75\%\]{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))}.envive-tw-translate-y-\[73\.75\%\]{--tw-translate-y:73.75%}.envive-tw-rotate-180{--tw-rotate:180deg}.envive-tw-rotate-180,.envive-tw-rotate-\[-10deg\]{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))}.envive-tw-rotate-\[-10deg\]{--tw-rotate:-10deg}.envive-tw-rotate-\[10deg\]{--tw-rotate:10deg;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))}@keyframes envive-tw-pulse{50%{opacity:.5}0%{border-color:var(--envive-colors-border-light);background:var(--envive-colors-border-light);opacity:1}to{border-color:var(--envive-colors-border-light);background:var(--envive-colors-border-light);opacity:1}}.envive-tw-animate-pulse{animation:envive-tw-pulse .8s linear infinite alternate}.envive-tw-cursor-not-allowed{cursor:not-allowed}.envive-tw-cursor-pointer{cursor:pointer}.envive-tw-cursor-text{cursor:text}.envive-tw-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.envive-tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.envive-tw-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.envive-tw-grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.envive-tw-flex-row{flex-direction:row}.envive-tw-flex-row-reverse{flex-direction:row-reverse}.envive-tw-flex-col{flex-direction:column}.envive-tw-flex-col-reverse{flex-direction:column-reverse}.envive-tw-flex-wrap{flex-wrap:wrap}.envive-tw-flex-nowrap{flex-wrap:nowrap}.envive-tw-content-center{align-content:center}.envive-tw-items-start{align-items:flex-start}.envive-tw-items-end{align-items:flex-end}.envive-tw-items-center{align-items:center}.envive-tw-items-baseline{align-items:baseline}.envive-tw-items-stretch{align-items:stretch}.envive-tw-justify-start{justify-content:flex-start}.envive-tw-justify-end{justify-content:flex-end}.envive-tw-justify-center{justify-content:center}.envive-tw-justify-between{justify-content:space-between}.envive-tw-justify-around{justify-content:space-around}.envive-tw-justify-evenly{justify-content:space-evenly}.\!envive-tw-gap-6{gap:24px!important}.envive-tw-gap-0\.5{gap:2px}.envive-tw-gap-1{gap:4px}.envive-tw-gap-1\.5{gap:6px}.envive-tw-gap-10{gap:40px}.envive-tw-gap-12{gap:48px}.envive-tw-gap-14{gap:56px}.envive-tw-gap-16{gap:64px}.envive-tw-gap-2{gap:8px}.envive-tw-gap-2\.5{gap:10px}.envive-tw-gap-20{gap:80px}.envive-tw-gap-24{gap:96px}.envive-tw-gap-28{gap:112px}.envive-tw-gap-3{gap:12px}.envive-tw-gap-3\.5{gap:14px}.envive-tw-gap-32{gap:128px}.envive-tw-gap-36{gap:144px}.envive-tw-gap-4{gap:16px}.envive-tw-gap-40{gap:160px}.envive-tw-gap-44{gap:176px}.envive-tw-gap-48{gap:192px}.envive-tw-gap-5{gap:20px}.envive-tw-gap-52{gap:208px}.envive-tw-gap-56{gap:224px}.envive-tw-gap-6{gap:24px}.envive-tw-gap-60{gap:240px}.envive-tw-gap-64{gap:256px}.envive-tw-gap-7{gap:28px}.envive-tw-gap-72{gap:288px}.envive-tw-gap-8{gap:32px}.envive-tw-gap-80{gap:320px}.envive-tw-gap-9{gap:36px}.envive-tw-gap-96{gap:384px}.envive-tw-gap-\[10px\]{gap:10px}.envive-tw-gap-x-2{-moz-column-gap:8px;column-gap:8px}.envive-tw-space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(4px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4px*var(--tw-space-y-reverse))}.envive-tw-space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(48px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(48px*var(--tw-space-y-reverse))}.envive-tw-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(8px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(8px*var(--tw-space-y-reverse))}.envive-tw-space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(12px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(12px*var(--tw-space-y-reverse))}.envive-tw-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(16px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(16px*var(--tw-space-y-reverse))}.envive-tw-space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(24px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(24px*var(--tw-space-y-reverse))}.envive-tw-space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(32px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(32px*var(--tw-space-y-reverse))}.envive-tw-self-end{align-self:flex-end}.envive-tw-overflow-hidden{overflow:hidden}.envive-tw-overflow-scroll{overflow:scroll}.envive-tw-overflow-x-auto{overflow-x:auto}.envive-tw-overflow-y-auto{overflow-y:auto}.envive-tw-overflow-x-hidden{overflow-x:hidden}.envive-tw-overflow-y-hidden{overflow-y:hidden}.envive-tw-overflow-x-scroll{overflow-x:scroll}.envive-tw-text-ellipsis{text-overflow:ellipsis}.envive-tw-whitespace-nowrap{white-space:nowrap}.envive-tw-break-all{word-break:break-all}.\!envive-tw-rounded-0{border-radius:0!important}.envive-tw-rounded-4{border-radius:4px}.envive-tw-rounded-\[--envive-global-custom-border-radius\]{border-radius:var(--envive-global-custom-border-radius)}.envive-tw-rounded-\[0_50px_50px_0\]{border-radius:0 50px 50px 0}.envive-tw-rounded-\[12px\]{border-radius:12px}.envive-tw-rounded-\[16px_16px_0_16px\]{border-radius:16px 16px 0 16px}.envive-tw-rounded-\[20px\]{border-radius:20px}.envive-tw-rounded-\[4px\]{border-radius:4px}.envive-tw-rounded-\[50px\]{border-radius:50px}.envive-tw-rounded-\[50px_0_0_50px\]{border-radius:50px 0 0 50px}.envive-tw-rounded-\[8px\]{border-radius:8px}.envive-tw-rounded-\[var\(--envive-global-custom-border-radius\)\],.envive-tw-rounded-global-custom{border-radius:var(--envive-global-custom-border-radius)}.envive-tw-rounded-l-\[4px\]{border-top-left-radius:4px;border-bottom-left-radius:4px}.envive-tw-rounded-r-\[4px\]{border-top-right-radius:4px;border-bottom-right-radius:4px}.envive-tw-rounded-t-\[var\(--envive-global-custom-border-radius\)\]{border-top-left-radius:var(--envive-global-custom-border-radius);border-top-right-radius:var(--envive-global-custom-border-radius)}.envive-tw-border{border-width:1px}.envive-tw-border-0{border-width:0}.envive-tw-border-\[1px\]{border-width:1px}.envive-tw-border-b{border-bottom-width:1px}.envive-tw-border-t{border-top-width:1px}.envive-tw-border-solid{border-style:solid}.envive-tw-border-none{border-style:none}.\!envive-tw-border-border-medium{border-color:var(--envive-colors-border-medium)!important}.envive-tw-border-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_90\%\,\#000000\)\]{border-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000)}.envive-tw-border-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_90\%\,\#000000_10\%\)\]{border-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000 10%)}.envive-tw-border-\[color-mix\(in_srgb\,var\(--envive-colors-background-tertiary\)_90\%\,\#000000\)\]{border-color:color-mix(in srgb,var(--envive-colors-background-tertiary) 90%,#000)}.envive-tw-border-\[color-mix\(in_srgb\,var\(--envive-colors-button-light-background-color\)_90\%\,\#000000\)\]{border-color:color-mix(in srgb,var(--envive-colors-button-light-background-color) 90%,#000)}.envive-tw-border-background-dark{border-color:var(--envive-colors-background-dark)}.envive-tw-border-background-light{border-color:var(--envive-colors-background-light)}.envive-tw-border-border-dark{border-color:var(--envive-colors-border-dark)}.envive-tw-border-border-light{border-color:var(--envive-colors-border-light)}.envive-tw-border-border-medium{border-color:var(--envive-colors-border-medium)}.envive-tw-border-button-dark-background-color{border-color:var(--envive-colors-button-dark-background-color)}.envive-tw-border-emerald-100{--tw-border-opacity:1;border-color:rgb(209 250 229/var(--tw-border-opacity,1))}.envive-tw-border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.envive-tw-border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.envive-tw-border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.envive-tw-border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.envive-tw-border-text-secondary{border-color:var(--envive-colors-text-secondary)}.envive-tw-border-b-border-dark{border-bottom-color:var(--envive-colors-border-dark)}.envive-tw-border-b-border-medium{border-bottom-color:var(--envive-colors-border-medium)}.envive-tw-bg-\[\#1f5f51\]{--tw-bg-opacity:1;background-color:rgb(31 95 81/var(--tw-bg-opacity,1))}.envive-tw-bg-\[\#FFFFFFB2\]{background-color:#ffffffb2}.envive-tw-bg-\[\#FFFFFF\]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.envive-tw-bg-\[--envive-colors-accent-primary\]{background-color:var(--envive-colors-accent-primary)}.envive-tw-bg-\[--envive-colors-accent-secondary\]{background-color:var(--envive-colors-accent-secondary)}.envive-tw-bg-\[--envive-colors-background-dark\]{background-color:var(--envive-colors-background-dark)}.envive-tw-bg-\[--envive-colors-background-light\]{background-color:var(--envive-colors-background-light)}.envive-tw-bg-\[--envive-colors-background-primary\]{background-color:var(--envive-colors-background-primary)}.envive-tw-bg-\[--envive-colors-background-secondary\]{background-color:var(--envive-colors-background-secondary)}.envive-tw-bg-\[--envive-colors-background-tertiary\]{background-color:var(--envive-colors-background-tertiary)}.envive-tw-bg-\[--envive-colors-border-dark\]{background-color:var(--envive-colors-border-dark)}.envive-tw-bg-\[--envive-colors-border-light\]{background-color:var(--envive-colors-border-light)}.envive-tw-bg-\[--envive-colors-border-medium\]{background-color:var(--envive-colors-border-medium)}.envive-tw-bg-\[--envive-colors-text-accent\]{background-color:var(--envive-colors-text-accent)}.envive-tw-bg-\[--envive-colors-text-light\]{background-color:var(--envive-colors-text-light)}.envive-tw-bg-\[--envive-colors-text-link\]{background-color:var(--envive-colors-text-link)}.envive-tw-bg-\[--envive-colors-text-primary\]{background-color:var(--envive-colors-text-primary)}.envive-tw-bg-\[--envive-colors-text-secondary\]{background-color:var(--envive-colors-text-secondary)}.envive-tw-bg-\[color-mix\(in_srgb\,var\(--envive-colors-background-light\)\,transparent_10\%\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-light),transparent 10%)}.envive-tw-bg-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_90\%\,\#000000\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000)}.envive-tw-bg-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_90\%\,\#000000_10\%\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000 10%)}.envive-tw-bg-\[color-mix\(in_srgb\,var\(--envive-colors-background-secondary\)_95\%\,\#000000\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 95%,#000)}.envive-tw-bg-\[rgb\(from_var\(--envive-colors-background-dark\)_r_g_b_\/_10\%\)\]{background-color:rgb(from var(--envive-colors-background-dark) r g b/10%)}.envive-tw-bg-\[rgb\(from_var\(--envive-colors-background-light\)_r_g_b_\/_90\%\)\]{background-color:rgb(from var(--envive-colors-background-light) r g b/90%)}.envive-tw-bg-\[rgba\(0\,0\,0\,0\.40\)\]{background-color:rgba(0,0,0,.4)}.envive-tw-bg-background-dark{background-color:var(--envive-colors-background-dark)}.envive-tw-bg-background-light{background-color:var(--envive-colors-background-light)}.envive-tw-bg-background-primary{background-color:var(--envive-colors-background-primary)}.envive-tw-bg-background-secondary{background-color:var(--envive-colors-background-secondary)}.envive-tw-bg-background-tertiary{background-color:var(--envive-colors-background-tertiary)}.envive-tw-bg-button-dark-background-color{background-color:var(--envive-colors-button-dark-background-color)}.envive-tw-bg-button-light-background-color{background-color:var(--envive-colors-button-light-background-color)}.envive-tw-bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.envive-tw-bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.envive-tw-bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.envive-tw-bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.envive-tw-bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.envive-tw-bg-text-link{background-color:var(--envive-colors-text-link)}.envive-tw-bg-transparent{background-color:transparent}.envive-tw-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.envive-tw-bg-\[linear-gradient\(0deg\,rgba\(0\,0\,0\,0\.40\)_0\%\,rgba\(0\,0\,0\,0\.40\)_100\%\)\]{background-image:linear-gradient(0deg,rgba(0,0,0,.4),rgba(0,0,0,.4))}.envive-tw-fill-button-dark-icon-color{fill:var(--envive-colors-button-dark-icon-color)}.envive-tw-fill-button-light-icon-color{fill:var(--envive-colors-button-light-icon-color)}.envive-tw-fill-transparent{fill:transparent}.envive-tw-stroke-background-light{stroke:var(--envive-colors-background-light)}.envive-tw-stroke-button-dark-icon-color{stroke:var(--envive-colors-button-dark-icon-color)}.envive-tw-stroke-button-light-icon-color{stroke:var(--envive-colors-button-light-icon-color)}.envive-tw-object-contain{-o-object-fit:contain;object-fit:contain}.envive-tw-object-cover{-o-object-fit:cover;object-fit:cover}.envive-tw-object-fill{-o-object-fit:fill;object-fit:fill}.envive-tw-object-none{-o-object-fit:none;object-fit:none}.envive-tw-object-scale-down{-o-object-fit:scale-down;object-fit:scale-down}.envive-tw-p-2{padding:8px}.envive-tw-p-3{padding:12px}.envive-tw-p-4{padding:16px}.envive-tw-p-8{padding:32px}.envive-tw-p-\[1px\]{padding:1px}.envive-tw-px-1{padding-left:4px;padding-right:4px}.envive-tw-px-2{padding-left:8px;padding-right:8px}.envive-tw-px-3{padding-left:12px;padding-right:12px}.envive-tw-px-4{padding-left:16px;padding-right:16px}.envive-tw-px-\[6px\]{padding-left:6px;padding-right:6px}.envive-tw-py-0\.5{padding-top:2px;padding-bottom:2px}.envive-tw-py-1{padding-top:4px;padding-bottom:4px}.envive-tw-py-10{padding-top:40px;padding-bottom:40px}.envive-tw-py-16{padding-top:64px;padding-bottom:64px}.envive-tw-py-2{padding-top:8px;padding-bottom:8px}.envive-tw-py-3{padding-top:12px;padding-bottom:12px}.envive-tw-py-6{padding-top:24px;padding-bottom:24px}.envive-tw-py-8{padding-top:32px;padding-bottom:32px}.envive-tw-py-\[2px\]{padding-top:2px;padding-bottom:2px}.envive-tw-pb-4{padding-bottom:16px}.envive-tw-pb-\[131px\]{padding-bottom:131px}.envive-tw-pb-\[150px\]{padding-bottom:150px}.envive-tw-pb-\[180px\]{padding-bottom:180px}.envive-tw-pl-4{padding-left:16px}.envive-tw-pl-\[2px\]{padding-left:2px}.envive-tw-pr-2{padding-right:8px}.envive-tw-pr-4{padding-right:16px}.envive-tw-pt-1{padding-top:4px}.envive-tw-pt-2{padding-top:8px}.envive-tw-pt-3{padding-top:12px}.envive-tw-pt-4{padding-top:16px}.envive-tw-pt-6{padding-top:24px}.envive-tw-text-left{text-align:left}.envive-tw-text-center{text-align:center}.envive-tw-text-right{text-align:right}.envive-tw-text-justify{text-align:justify}.envive-tw-align-top{vertical-align:top}.envive-tw-align-middle{vertical-align:middle}.envive-tw-font-body{font-family:var(--envive-typography-font-family-body),sans-serif}.envive-tw-font-header{font-family:var(--envive-typography-font-family-header),sans-serif}.envive-tw-font-title{font-family:var(--envive-typography-font-family-title),sans-serif}.envive-tw-text-2xl{font-size:1.5rem;line-height:2rem}.envive-tw-text-\[2\.25rem\]{font-size:2.25rem}.envive-tw-text-b1{font-size:var(--envive-typography-font-size-b1)}.envive-tw-text-b3{font-size:var(--envive-typography-font-size-b3)}.envive-tw-text-b4{font-size:var(--envive-typography-font-size-b4)}.envive-tw-text-b5{font-size:var(--envive-typography-font-size-b5)}.envive-tw-text-base{font-size:1rem;line-height:1.5rem}.envive-tw-text-h2{font-size:var(--envive-typography-font-size-h2)}.envive-tw-text-h3{font-size:var(--envive-typography-font-size-h3)}.envive-tw-text-lg{font-size:1.125rem;line-height:1.75rem}.envive-tw-text-sm{font-size:.875rem;line-height:1.25rem}.envive-tw-text-t1{font-size:var(--envive-typography-font-size-t1)}.envive-tw-text-t2{font-size:var(--envive-typography-font-size-t2)}.envive-tw-text-t3{font-size:var(--envive-typography-font-size-t3)}.envive-tw-text-xs{font-size:.75rem;line-height:1rem}.envive-tw-font-bold{font-weight:700}.envive-tw-font-md{font-weight:var(--envive-typography-font-weight-md)}.envive-tw-font-medium{font-weight:500}.envive-tw-font-rg{font-weight:var(--envive-typography-font-weight-rg)}.envive-tw-font-sb{font-weight:var(--envive-typography-font-weight-sb)}.envive-tw-font-semibold{font-weight:600}.envive-tw-uppercase{text-transform:uppercase}.envive-tw-capitalize{text-transform:capitalize}.envive-tw-italic{font-style:italic}.envive-tw-leading-114{line-height:var(--envive-typography-line-height-114)}.envive-tw-leading-116{line-height:var(--envive-typography-line-height-116)}.envive-tw-leading-118{line-height:var(--envive-typography-line-height-118)}.envive-tw-leading-120{line-height:var(--envive-typography-line-height-120)}.envive-tw-leading-124{line-height:var(--envive-typography-line-height-124)}.envive-tw-leading-130{line-height:var(--envive-typography-line-height-130)}.envive-tw-leading-140{line-height:var(--envive-typography-line-height-140)}.envive-tw-leading-148{line-height:var(--envive-typography-line-height-148)}.envive-tw-leading-\[0\]{line-height:0}.envive-tw-leading-\[13px\]{line-height:13px}.envive-tw-leading-relaxed{line-height:1.625}.envive-tw-tracking-tighter{letter-spacing:-.05em}.envive-tw-text-\[\#f9f6ea\]{--tw-text-opacity:1;color:rgb(249 246 234/var(--tw-text-opacity,1))}.envive-tw-text-\[--envive-colors-text-accent\]{color:var(--envive-colors-text-accent)}.envive-tw-text-\[--envive-colors-text-light\]{color:var(--envive-colors-text-light)}.envive-tw-text-\[--envive-colors-text-link\]{color:var(--envive-colors-text-link)}.envive-tw-text-\[--envive-colors-text-primary\]{color:var(--envive-colors-text-primary)}.envive-tw-text-\[--envive-colors-text-secondary\]{color:var(--envive-colors-text-secondary)}.envive-tw-text-background-dark{color:var(--envive-colors-background-dark)}.envive-tw-text-background-light{color:var(--envive-colors-background-light)}.envive-tw-text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.envive-tw-text-emerald-950{--tw-text-opacity:1;color:rgb(2 44 34/var(--tw-text-opacity,1))}.envive-tw-text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.envive-tw-text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.envive-tw-text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.envive-tw-text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.envive-tw-text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.envive-tw-text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.envive-tw-text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.envive-tw-text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.envive-tw-text-text-light{color:var(--envive-colors-text-light)}.envive-tw-text-text-link{color:var(--envive-colors-text-link)}.envive-tw-text-text-primary{color:var(--envive-colors-text-primary)}.envive-tw-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.envive-tw-underline{text-decoration-line:underline}.envive-tw-line-through{text-decoration-line:line-through}.envive-tw-opacity-0{opacity:0}.envive-tw-opacity-100{opacity:1}.envive-tw-opacity-50{opacity:.5}.envive-tw-shadow-\[2px_2px_6px_0px_rgba\(0\,0\,0\,0\.15\)\]{--tw-shadow:2px 2px 6px 0px rgba(0,0,0,.15);--tw-shadow-colored:2px 2px 6px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.envive-tw-shadow-\[2px_2px_8px_0_rgba\(0\,0\,0\,0\.25\)\]{--tw-shadow:2px 2px 8px 0 rgba(0,0,0,.25);--tw-shadow-colored:2px 2px 8px 0 var(--tw-shadow-color)}.envive-tw-shadow-\[2px_2px_8px_0_rgba\(0\,0\,0\,0\.25\)\],.envive-tw-shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.envive-tw-shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.envive-tw-shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.envive-tw-outline-none{outline:2px solid transparent;outline-offset:2px}.envive-tw-backdrop-blur-\[12px\]{--tw-backdrop-blur:blur(12px)}.envive-tw-backdrop-blur-\[12px\],.envive-tw-backdrop-blur-\[4px\]{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.envive-tw-backdrop-blur-\[4px\]{--tw-backdrop-blur:blur(4px)}.envive-tw-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.envive-tw-transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.envive-tw-duration-200{transition-duration:.2s}.envive-tw-duration-300{transition-duration:.3s}.envive-tw-ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.envive-tw-typography-ol,.envive-tw-typography-ul{list-style:inherit;margin:0;padding-left:24px;line-height:4px;&>li{list-style:inherit!important}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-normal.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-italic.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-400-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-400-normal.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-500-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-500-normal.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-600-normal.woff2) format("woff2"),url(https://cdn.jsdelivr.net/fontsource/fonts/poppins@latest/latin-600-normal.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}.placeholder\:envive-tw-text-text-secondary::-moz-placeholder{color:var(--envive-colors-text-secondary)}.placeholder\:envive-tw-text-text-secondary::placeholder{color:var(--envive-colors-text-secondary)}.focus-within\:envive-tw-border-\[--envive-colors-text-link\]:focus-within{border-color:var(--envive-colors-text-link)}@media (hover:hover) and (pointer:fine){.hover\:envive-tw-border-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_90\%\2c \#000000\)\]:hover{border-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000)}.hover\:envive-tw-border-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000\)\]:hover{border-color:color-mix(in srgb,var(--envive-colors-background-secondary) 92%,#000)}.hover\:envive-tw-border-border-dark:hover{border-color:var(--envive-colors-border-dark)}.hover\:envive-tw-border-b-border-dark:hover{border-bottom-color:var(--envive-colors-border-dark)}.hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000\)\]:hover{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 92%,#000)}.hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000_08\%\)\]:hover,.hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000_8\%\)\]:hover{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 92%,#000 8%)}.hover\:envive-tw-bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:envive-tw-text-text-primary:hover{color:var(--envive-colors-text-primary)}.hover\:envive-tw-underline:hover{text-decoration-line:underline}.hover\:envive-tw-underline-offset-2:hover{text-underline-offset:2px}}.focus\:envive-tw-border-\[\#1f5f51\]:focus{--tw-border-opacity:1;border-color:rgb(31 95 81/var(--tw-border-opacity,1))}.focus\:envive-tw-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:envive-tw-ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:envive-tw-ring-1:focus,.focus\:envive-tw-ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:envive-tw-ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:envive-tw-ring-\[\#1f5f51\]:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(31 95 81/var(--tw-ring-opacity,1))}.focus\:envive-tw-ring-offset-2:focus{--tw-ring-offset-width:2px}.focus\:placeholder\:envive-tw-text-text-primary:focus::-moz-placeholder{color:var(--envive-colors-text-primary)}.focus\:placeholder\:envive-tw-text-text-primary:focus::placeholder{color:var(--envive-colors-text-primary)}.focus-visible\:envive-tw-shadow-none:focus-visible{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus-visible\:envive-tw-outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.disabled\:envive-tw-opacity-50:disabled{opacity:.5}@media (hover:hover) and (pointer:fine){.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[30px\]{height:30px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[38px\]{height:38px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[51px\]{height:51px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[57px\]{height:57px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-h-\[72px\]{height:72px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[30px\]{width:30px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[38px\]{width:38px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[51px\]{width:51px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[62px\]{width:62px}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-w-\[72px\]{width:72px}.envive-tw-group\/card:hover .group-hover\/card\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_80\%\2c \#000000_20\%\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 80%,#000 20%)}.envive-tw-group\/card:hover .group-hover\/card\:envive-tw-bg-text-primary{background-color:var(--envive-colors-text-primary)}.envive-tw-group:hover .group-hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_90\%\2c \#000000_10\%\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 90%,#000 10%)}.envive-tw-group:hover .group-hover\:envive-tw-bg-\[color-mix\(in_srgb\2c var\(--envive-colors-background-secondary\)_92\%\2c \#000000\)\]{background-color:color-mix(in srgb,var(--envive-colors-background-secondary) 92%,#000)}.envive-tw-group:hover .group-hover\:envive-tw-fill-background-dark{fill:var(--envive-colors-background-dark)}.envive-tw-group:hover .group-hover\:envive-tw-stroke-background-dark{stroke:var(--envive-colors-background-dark)}.envive-tw-group:hover .group-hover\:envive-tw-text-text-primary,.envive-tw-group\/card:hover .group-hover\/card\:envive-tw-text-\[--envive-colors-text-primary\]{color:var(--envive-colors-text-primary)}.envive-tw-group:hover .group-hover\:envive-tw-underline{text-decoration-line:underline}.envive-tw-group\/floatingbutton:hover .group-hover\/floatingbutton\:envive-tw-shadow-\[2px_2px_8px_0_rgba\(0\2c 0\2c 0\2c 0\.25\)\]{--tw-shadow:2px 2px 8px 0 rgba(0,0,0,.25);--tw-shadow-colored:2px 2px 8px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}@media (min-width:768px){.md\:envive-tw-max-w-\[450px\]{max-width:450px}.md\:envive-tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.lg\:envive-tw-max-w-\[900px\]{max-width:900px}.lg\:envive-tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:envive-tw-text-\[3rem\]{font-size:3rem}}.\[\&\>div\>div\]\:envive-tw-items-end>div>div{align-items:flex-end}.\[\&\>img\]\:envive-tw-transition-transform>img{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\[\&\>img\]\:envive-tw-duration-300>img{transition-duration:.3s}.\[\&\>img\]\:envive-tw-ease-in-out>img{transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (hover:hover) and (pointer:fine){.envive-tw-group:hover .\[\&\>img\]\:group-hover\:envive-tw-scale-125>img{--tw-scale-x:1.25;--tw-scale-y:1.25;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))}}.\[\&\>line\]\:envive-tw-stroke-\[var\(--envive-colors-background-light\)\]>line{stroke:var(--envive-colors-background-light)}.\[\&\>line\]\:envive-tw-stroke-\[var\(--envive-colors-text-secondary\)\]>line{stroke:var(--envive-colors-text-secondary)}.\[\&\>path\]\:envive-tw-fill-\[var\(--envive-colors-background-dark\)\]>path{fill:var(--envive-colors-background-dark)}.\[\&\>path\]\:envive-tw-fill-\[var\(--envive-colors-background-light\)\]>path{fill:var(--envive-colors-background-light)}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@envive-ai/react-toolkit-v3",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.18",
|
|
4
4
|
"description": "React component library for Envive services.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -50,8 +50,8 @@
|
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
52
|
"framer-motion": ">=12.23.24",
|
|
53
|
-
"react": "^18.3.
|
|
54
|
-
"react-dom": "^18.3.
|
|
53
|
+
"react": "^18.3.0 || ^19.0.0",
|
|
54
|
+
"react-dom": "^18.3.0 || ^19.0.0"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"@chromatic-com/storybook": "^4.1.1",
|
|
@@ -10,25 +10,28 @@ export const Carousel = ({
|
|
|
10
10
|
className,
|
|
11
11
|
elements,
|
|
12
12
|
badgeLabel,
|
|
13
|
+
badgeContent,
|
|
13
14
|
theme = Theme.GLOBAL_CUSTOM,
|
|
14
15
|
hideNavigation = false,
|
|
15
16
|
}: CarouselProps) => {
|
|
16
17
|
const finalTheme = resolveTheme(theme);
|
|
17
18
|
|
|
19
|
+
const badgeComponent =
|
|
20
|
+
badgeContent ??
|
|
21
|
+
(badgeLabel ? (
|
|
22
|
+
<CarouselComponents.Badge
|
|
23
|
+
label={badgeLabel}
|
|
24
|
+
theme={finalTheme}
|
|
25
|
+
/>
|
|
26
|
+
) : null);
|
|
27
|
+
|
|
18
28
|
return (
|
|
19
29
|
<CarouselComponents.Container
|
|
20
30
|
id={id}
|
|
21
31
|
testId={testId}
|
|
22
32
|
style={style}
|
|
23
33
|
className={className}
|
|
24
|
-
badge={
|
|
25
|
-
badgeLabel && (
|
|
26
|
-
<CarouselComponents.Badge
|
|
27
|
-
label={badgeLabel}
|
|
28
|
-
theme={finalTheme}
|
|
29
|
-
/>
|
|
30
|
-
)
|
|
31
|
-
}
|
|
34
|
+
badge={badgeComponent}
|
|
32
35
|
next={!hideNavigation && <CarouselComponents.Next />}
|
|
33
36
|
previous={!hideNavigation && <CarouselComponents.Previous />}
|
|
34
37
|
>
|
|
@@ -43,4 +43,9 @@ export type CarouselProps = {
|
|
|
43
43
|
* If empty, the badge will not be rendered.
|
|
44
44
|
*/
|
|
45
45
|
badgeLabel?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Custom badge content. When provided, takes precedence over badgeLabel.
|
|
48
|
+
* Use for custom layouts (e.g. "Most Relevant" + "Explore All" button).
|
|
49
|
+
*/
|
|
50
|
+
badgeContent?: React.ReactNode;
|
|
46
51
|
};
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { useEffect, useRef, useState } from 'react';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
ChatElementDisplayLocationV3,
|
|
5
|
+
MessageType,
|
|
6
|
+
} from '@envive-ai/react-hooks/application/models';
|
|
4
7
|
import { motion } from 'framer-motion';
|
|
5
8
|
import {
|
|
6
9
|
WidgetInteractionComponent,
|
|
@@ -28,6 +31,7 @@ import { resolveTheme } from '../utils/resolveTheme';
|
|
|
28
31
|
import { useFilteredChatMessages } from './hooks/useFilteredChatMessages';
|
|
29
32
|
import { Unit } from './hooks/useSnapCalculator';
|
|
30
33
|
import { FloatingChatProps } from './types/types';
|
|
34
|
+
import { getCleanProducts } from './utils/functions';
|
|
31
35
|
|
|
32
36
|
export const FloatingChat = ({
|
|
33
37
|
id,
|
|
@@ -286,6 +290,18 @@ export const FloatingChat = ({
|
|
|
286
290
|
/>
|
|
287
291
|
);
|
|
288
292
|
|
|
293
|
+
const handleExploreAllResults = (firstProductMessageId: string) => {
|
|
294
|
+
const messageBlock = messages.find(block =>
|
|
295
|
+
block.some(msg => msg.type === MessageType.Product && msg.id === firstProductMessageId),
|
|
296
|
+
);
|
|
297
|
+
const productMessages = messageBlock?.filter(msg => msg.type === MessageType.Product) ?? [];
|
|
298
|
+
const products = getCleanProducts(productMessages);
|
|
299
|
+
console.log('[INFO] [spiffy-ai] Explore All Results clicked', {
|
|
300
|
+
firstProductMessageId,
|
|
301
|
+
products,
|
|
302
|
+
});
|
|
303
|
+
};
|
|
304
|
+
|
|
289
305
|
const chatMessages = (
|
|
290
306
|
<FloatingChatComponents.ChatMessages
|
|
291
307
|
theme={finalTheme}
|
|
@@ -301,6 +317,7 @@ export const FloatingChat = ({
|
|
|
301
317
|
showVerifiedBuyer={showVerifiedBuyer}
|
|
302
318
|
onFormResponseSubmitted={onFormResponseSubmitted}
|
|
303
319
|
parentWidget={WidgetInteractionComponent.FLOATING_CHAT}
|
|
320
|
+
onExploreAllResults={handleExploreAllResults}
|
|
304
321
|
/>
|
|
305
322
|
);
|
|
306
323
|
|
|
@@ -42,6 +42,7 @@ export interface AgentMessageProps {
|
|
|
42
42
|
showVerifiedBuyer?: boolean;
|
|
43
43
|
onFormResponseSubmitted?: (formResponse: FormSubmittedAttributes) => void;
|
|
44
44
|
parentWidget: WidgetInteractionComponent;
|
|
45
|
+
onExploreAllResults: (firstProductMessageId: string) => void;
|
|
45
46
|
}
|
|
46
47
|
|
|
47
48
|
export const AgentMessage = ({
|
|
@@ -56,6 +57,7 @@ export const AgentMessage = ({
|
|
|
56
57
|
showVerifiedBuyer = false,
|
|
57
58
|
onFormResponseSubmitted,
|
|
58
59
|
parentWidget,
|
|
60
|
+
onExploreAllResults,
|
|
59
61
|
}: AgentMessageProps) => {
|
|
60
62
|
const handleFormSubmittedAtomFallback = useSetAtom(handleFormSubmittedAtom);
|
|
61
63
|
const finalTheme = resolveTheme(theme);
|
|
@@ -167,6 +169,11 @@ export const AgentMessage = ({
|
|
|
167
169
|
return null;
|
|
168
170
|
}
|
|
169
171
|
|
|
172
|
+
const handleExploreAllResults = () => {
|
|
173
|
+
const firstProductMessageId = messages[0]?.id ?? '';
|
|
174
|
+
onExploreAllResults?.(firstProductMessageId);
|
|
175
|
+
};
|
|
176
|
+
|
|
170
177
|
return (
|
|
171
178
|
<SalesAgentProductCardsCarousel
|
|
172
179
|
hideNavigation={products.length === 1}
|
|
@@ -174,6 +181,7 @@ export const AgentMessage = ({
|
|
|
174
181
|
numberOfProducts={products.length}
|
|
175
182
|
theme={finalTheme}
|
|
176
183
|
onProductCardClick={handleProductCardClick}
|
|
184
|
+
onExploreAllResults={handleExploreAllResults}
|
|
177
185
|
/>
|
|
178
186
|
);
|
|
179
187
|
}
|
|
@@ -32,6 +32,7 @@ export interface ChatMessagesProps {
|
|
|
32
32
|
showVerifiedBuyer?: boolean;
|
|
33
33
|
onFormResponseSubmitted?: (formResponse: FormSubmittedAttributes) => void;
|
|
34
34
|
parentWidget: WidgetInteractionComponent;
|
|
35
|
+
onExploreAllResults: (firstProductMessageId: string) => void;
|
|
35
36
|
}
|
|
36
37
|
|
|
37
38
|
export const ChatMessages = forwardRef<HTMLDivElement, ChatMessagesProps>(
|
|
@@ -50,6 +51,7 @@ export const ChatMessages = forwardRef<HTMLDivElement, ChatMessagesProps>(
|
|
|
50
51
|
showVerifiedBuyer,
|
|
51
52
|
onFormResponseSubmitted,
|
|
52
53
|
parentWidget,
|
|
54
|
+
onExploreAllResults,
|
|
53
55
|
},
|
|
54
56
|
ref,
|
|
55
57
|
) => {
|
|
@@ -143,6 +145,7 @@ export const ChatMessages = forwardRef<HTMLDivElement, ChatMessagesProps>(
|
|
|
143
145
|
showVerifiedBuyer={showVerifiedBuyer}
|
|
144
146
|
onFormResponseSubmitted={onFormResponseSubmitted}
|
|
145
147
|
parentWidget={parentWidget}
|
|
148
|
+
onExploreAllResults={onExploreAllResults}
|
|
146
149
|
/>
|
|
147
150
|
);
|
|
148
151
|
}
|
|
@@ -24,7 +24,7 @@ interface ModalSheetProps {
|
|
|
24
24
|
animation?: ValueAnimationTransition;
|
|
25
25
|
onClose: () => void;
|
|
26
26
|
onSnap?: (snap: number) => void;
|
|
27
|
-
controlRef?: React.
|
|
27
|
+
controlRef?: React.RefObject<ModalSheetControl | undefined>;
|
|
28
28
|
disableDrag?: boolean;
|
|
29
29
|
}
|
|
30
30
|
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import classNames from 'classnames';
|
|
3
|
+
import { ArrowIcon } from '../../Carousel/components/ArrowIcon';
|
|
4
|
+
import { Stack } from '../../Stack/Stack';
|
|
5
|
+
import { Typography, TypographyColor, TypographyVariant } from '../../Typography';
|
|
6
|
+
import { MOST_RELEVANT_DISPLAY_LIMIT } from '../utils/functions';
|
|
7
|
+
|
|
8
|
+
export interface ExploreAllResultsBadgeProps {
|
|
9
|
+
totalProducts: number;
|
|
10
|
+
displayLimit?: number;
|
|
11
|
+
onExploreAllResults: () => void;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const SalesAgentBadgeContent = ({
|
|
15
|
+
totalProducts,
|
|
16
|
+
displayLimit = MOST_RELEVANT_DISPLAY_LIMIT,
|
|
17
|
+
onExploreAllResults,
|
|
18
|
+
}: ExploreAllResultsBadgeProps) => {
|
|
19
|
+
return (
|
|
20
|
+
<Stack
|
|
21
|
+
direction="row"
|
|
22
|
+
justify="between"
|
|
23
|
+
align="center"
|
|
24
|
+
gap="1"
|
|
25
|
+
className="envive-tw-w-full envive-tw-rounded-global-custom envive-tw-p-2"
|
|
26
|
+
>
|
|
27
|
+
<Typography
|
|
28
|
+
variant={TypographyVariant.B3_MD}
|
|
29
|
+
color={TypographyColor.TEXT_PRIMARY}
|
|
30
|
+
>
|
|
31
|
+
Most Relevant ({displayLimit})
|
|
32
|
+
</Typography>
|
|
33
|
+
<button
|
|
34
|
+
type="button"
|
|
35
|
+
onClick={onExploreAllResults}
|
|
36
|
+
className={classNames(
|
|
37
|
+
'envive-tw-flex envive-tw-items-center envive-tw-gap-1',
|
|
38
|
+
'envive-tw-bg-background-secondary envive-tw-p-2',
|
|
39
|
+
'envive-tw-rounded-global-custom envive-tw-border envive-tw-border-border-medium',
|
|
40
|
+
'hover:envive-tw-border-border-dark',
|
|
41
|
+
)}
|
|
42
|
+
aria-label={`Explore all ${totalProducts} results`}
|
|
43
|
+
>
|
|
44
|
+
<Typography
|
|
45
|
+
variant={TypographyVariant.B3_MD}
|
|
46
|
+
color={TypographyColor.TEXT_LINK}
|
|
47
|
+
>
|
|
48
|
+
Explore All Results ({totalProducts})
|
|
49
|
+
</Typography>
|
|
50
|
+
<ArrowIcon direction="right" />
|
|
51
|
+
</button>
|
|
52
|
+
</Stack>
|
|
53
|
+
);
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
export interface GetBadgeContentAndLabelParams {
|
|
57
|
+
totalProducts: number;
|
|
58
|
+
areProductsMoreThanDisplayLimit: boolean;
|
|
59
|
+
onExploreAllResults?: () => void;
|
|
60
|
+
displayLimit?: number;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export interface BadgeContentAndLabel {
|
|
64
|
+
badgeContent: React.ReactNode;
|
|
65
|
+
badgeLabel: string | null;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export const getBadgeContentAndLabel = ({
|
|
69
|
+
totalProducts,
|
|
70
|
+
areProductsMoreThanDisplayLimit,
|
|
71
|
+
onExploreAllResults,
|
|
72
|
+
displayLimit = MOST_RELEVANT_DISPLAY_LIMIT,
|
|
73
|
+
}: GetBadgeContentAndLabelParams): BadgeContentAndLabel => {
|
|
74
|
+
const badgeContent = areProductsMoreThanDisplayLimit ? (
|
|
75
|
+
<SalesAgentBadgeContent
|
|
76
|
+
totalProducts={totalProducts}
|
|
77
|
+
displayLimit={displayLimit}
|
|
78
|
+
onExploreAllResults={onExploreAllResults}
|
|
79
|
+
/>
|
|
80
|
+
) : null;
|
|
81
|
+
|
|
82
|
+
const badgeLabel =
|
|
83
|
+
!areProductsMoreThanDisplayLimit && totalProducts > 1 ? `${totalProducts} Products` : null;
|
|
84
|
+
|
|
85
|
+
return { badgeContent, badgeLabel };
|
|
86
|
+
};
|
|
@@ -6,6 +6,8 @@ import {
|
|
|
6
6
|
SalesAgentProductCardVariant,
|
|
7
7
|
} from '../../SalesAgentProductCard/types/types';
|
|
8
8
|
import { resolveTheme } from '../../utils/resolveTheme';
|
|
9
|
+
import { getProductCarouselDisplayInfo } from '../utils/functions';
|
|
10
|
+
import { getBadgeContentAndLabel } from './SalesAgentBadgeContent';
|
|
9
11
|
|
|
10
12
|
export interface SalesAgentProductCardsCarouselProps {
|
|
11
13
|
theme: Theme;
|
|
@@ -14,6 +16,8 @@ export interface SalesAgentProductCardsCarouselProps {
|
|
|
14
16
|
products: SalesAgentProductCardProps[];
|
|
15
17
|
variant?: SalesAgentProductCardVariant;
|
|
16
18
|
onProductCardClick?: (product: SalesAgentProductCardProps) => void;
|
|
19
|
+
/** Called when user clicks "Explore All Results" (only relevant when products.length > 8) */
|
|
20
|
+
onExploreAllResults?: () => void;
|
|
17
21
|
}
|
|
18
22
|
|
|
19
23
|
export const SalesAgentProductCardsCarousel = ({
|
|
@@ -23,23 +27,30 @@ export const SalesAgentProductCardsCarousel = ({
|
|
|
23
27
|
numberOfProducts,
|
|
24
28
|
variant = SalesAgentProductCardVariant.LARGE,
|
|
25
29
|
onProductCardClick,
|
|
30
|
+
onExploreAllResults,
|
|
26
31
|
}: SalesAgentProductCardsCarouselProps) => {
|
|
27
32
|
const finalTheme = resolveTheme(theme);
|
|
33
|
+
const { totalProducts, areProductsMoreThanDisplayLimit, displayedProducts } =
|
|
34
|
+
getProductCarouselDisplayInfo(products, numberOfProducts);
|
|
28
35
|
|
|
29
|
-
const forceShowCurrentPriceSpace =
|
|
36
|
+
const forceShowCurrentPriceSpace = displayedProducts.some(
|
|
30
37
|
product => product.currentPrice && product.previousPrice !== product.currentPrice,
|
|
31
38
|
);
|
|
32
39
|
|
|
40
|
+
const { badgeContent, badgeLabel } = getBadgeContentAndLabel({
|
|
41
|
+
totalProducts,
|
|
42
|
+
areProductsMoreThanDisplayLimit,
|
|
43
|
+
onExploreAllResults,
|
|
44
|
+
});
|
|
45
|
+
|
|
33
46
|
return (
|
|
34
47
|
<Carousel
|
|
35
48
|
hideNavigation={hideNavigation}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
elements={products.map(product => (
|
|
49
|
+
badgeContent={badgeContent}
|
|
50
|
+
badgeLabel={badgeLabel}
|
|
51
|
+
elements={displayedProducts.map((product, index) => (
|
|
41
52
|
<SalesAgentProductCard
|
|
42
|
-
key={product.id}
|
|
53
|
+
key={product.id ?? `product-${index}`}
|
|
43
54
|
variant={variant}
|
|
44
55
|
productName={product.productName}
|
|
45
56
|
currentPrice={product.currentPrice}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RefObject, useMemo } from 'react';
|
|
2
2
|
import { Message } from '@envive-ai/react-hooks/application/models';
|
|
3
3
|
import { useMessageFilter } from '@envive-ai/react-hooks/hooks/MessageFilter';
|
|
4
|
-
import type { ModalSheetControl } from '../
|
|
4
|
+
import type { ModalSheetControl } from '../snapConstants';
|
|
5
5
|
|
|
6
6
|
export interface UseFilteredChatMessagesProps {
|
|
7
7
|
messages: Message[][];
|