@nyris/nyris-webapp 0.3.95 → 0.3.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/build/asset-manifest.json +6 -6
  2. package/build/index.html +1 -1
  3. package/build/js/settings.example.js +6 -1
  4. package/build/static/css/main.7c7f5447.css +4 -0
  5. package/build/static/css/main.7c7f5447.css.map +1 -0
  6. package/build/static/js/main.9e7fb38a.js +3 -0
  7. package/build/static/js/{main.b80e9533.js.map → main.9e7fb38a.js.map} +1 -1
  8. package/package.json +3 -3
  9. package/public/js/settings.example.js +6 -1
  10. package/src/components/Cart.tsx +200 -85
  11. package/src/components/Header.tsx +1 -1
  12. package/src/components/Inquiry/InquiryModal.tsx +2 -2
  13. package/src/components/PostFilter/PostFilter.tsx +36 -3
  14. package/src/components/PostFilter/PostFilterFindApi.tsx +157 -65
  15. package/src/components/PreFilter/PreFilter.tsx +39 -5
  16. package/src/components/Product/Product.tsx +2 -2
  17. package/src/components/Product/ProductDetailView.tsx +2 -2
  18. package/src/components/Product/ProductList.tsx +4 -0
  19. package/src/components/ScopeMissing.tsx +50 -0
  20. package/src/components/SmartFilter.tsx +59 -69
  21. package/src/components/TextSearch.tsx +3 -1
  22. package/src/hooks/useEffectiveGroundingResults.ts +6 -1
  23. package/src/hooks/useImageSearch.ts +49 -6
  24. package/src/hooks/useResultEvaluator.ts +8 -8
  25. package/src/layouts/AppLayout.tsx +27 -6
  26. package/src/pages/Result.tsx +2 -1
  27. package/src/routes/ProctedRoute.tsx +52 -9
  28. package/src/services/filter.ts +13 -0
  29. package/src/services/visualSearch.ts +10 -1
  30. package/src/stores/result/prodcuts/products.initialState.ts +2 -0
  31. package/src/stores/result/prodcuts/products.slice.ts +8 -0
  32. package/src/stores/scope/scopeStore.ts +35 -0
  33. package/src/stores/types.ts +9 -0
  34. package/src/styles/Cart.scss +22 -0
  35. package/src/types.ts +6 -1
  36. package/build/static/css/main.5fff4ca0.css +0 -4
  37. package/build/static/css/main.5fff4ca0.css.map +0 -1
  38. package/build/static/js/main.b80e9533.js +0 -3
  39. /package/build/static/js/{main.b80e9533.js.LICENSE.txt → main.9e7fb38a.js.LICENSE.txt} +0 -0
@@ -19,8 +19,12 @@ import useConversationStore from 'stores/chat/conversationStore';
19
19
  import { useGroundedSearch } from './useGroundedSearch';
20
20
  import { generateSmartFilters } from '../services/vizo';
21
21
  import { cropImage } from 'utils/cropImageToBase64';
22
+ import { invalidatePostFilterRequests } from 'components/PostFilter/PostFilterFindApi';
23
+ import { useAuth0 } from '@auth0/auth0-react';
22
24
 
23
25
  export const useImageSearch = () => {
26
+ const { user } = useAuth0();
27
+
24
28
  const setRegions = useRequestStore(state => state.setRegions);
25
29
  const query = useRequestStore(state => state.query);
26
30
 
@@ -68,6 +72,12 @@ export const useImageSearch = () => {
68
72
  state => state.setGroundingFilterResult,
69
73
  );
70
74
  const setSmartFilters = useResultStore(state => state.setSmartFilters);
75
+ const setPostFilterFacets = useResultStore(
76
+ state => state.setPostFilterFacets,
77
+ );
78
+ const setInitialFindSearchSnapshot = useResultStore(
79
+ state => state.setInitialFindSearchSnapshot,
80
+ );
71
81
 
72
82
  const setGroundingError = useResultStore(state => state.setGroundingError);
73
83
 
@@ -110,6 +120,8 @@ export const useImageSearch = () => {
110
120
  setGroundingFilterResult([]);
111
121
  setGoogleGroundingResponse(null);
112
122
  setGroundingError(null);
123
+ setPostFilterFacets([]);
124
+ setInitialFindSearchSnapshot(null);
113
125
  if (isSmartFiltersEnabled) {
114
126
  setSmartFilters({
115
127
  status: 'idle',
@@ -185,14 +197,23 @@ export const useImageSearch = () => {
185
197
  }
186
198
  }
187
199
 
200
+ const preFilterList = useRequestStore.getState().preFilterList;
201
+ const preFilterApiKey =
202
+ preFilterList.find(
203
+ filter =>
204
+ filter.key?.toLocaleLowerCase() ===
205
+ settings.visualSearchFilterKey?.toLocaleLowerCase(),
206
+ )?.key ?? settings.visualSearchFilterKey;
207
+
188
208
  const preFilterValues = [
189
209
  {
190
- key: settings.visualSearchFilterKey,
210
+ key: preFilterApiKey,
191
211
  values: Object.keys(preFilterParams || preFilter),
192
212
  },
193
213
  ];
194
214
 
195
215
  let smartFilterPromise: Promise<void> | null = null;
216
+
196
217
  if (isSmartFiltersEnabled && requestImage && (newSearch || imageRegion)) {
197
218
  setSmartFilters({
198
219
  status: 'loading',
@@ -272,6 +293,22 @@ export const useImageSearch = () => {
272
293
  });
273
294
  }
274
295
 
296
+ const shouldResetPostFilters =
297
+ clearPostFilter ||
298
+ (!settings.algolia?.enabled &&
299
+ !requestImage &&
300
+ settings.postFilterOption);
301
+
302
+ if (shouldResetPostFilters) {
303
+ invalidatePostFilterRequests();
304
+ refine();
305
+ clearPostFilterSelections();
306
+ if (clearPostFilter) {
307
+ setPostFilterFacets([]);
308
+ setInitialFindSearchSnapshot(null);
309
+ }
310
+ }
311
+
275
312
  try {
276
313
  res = await find({
277
314
  image: requestImage,
@@ -281,7 +318,7 @@ export const useImageSearch = () => {
281
318
  : metaFilter
282
319
  ? [
283
320
  {
284
- key: settings.visualSearchFilterKey,
321
+ key: preFilterApiKey,
285
322
  values: [metaFilter],
286
323
  },
287
324
  ]
@@ -293,14 +330,17 @@ export const useImageSearch = () => {
293
330
  ? query
294
331
  : text
295
332
  : undefined,
333
+ scopeIds: window.settings?.scopeFilter ? user?.email : undefined,
296
334
  });
297
335
  useResultStore.getState().resetGrounding();
298
- if (clearPostFilter) {
299
- refine();
300
- clearPostFilterSelections();
301
- }
302
336
 
303
337
  setFindApiProducts(res?.results);
338
+ const initialFacets = res?.facets || [];
339
+ setPostFilterFacets(initialFacets);
340
+ setInitialFindSearchSnapshot({
341
+ results: res?.results || [],
342
+ postFilterFacets: initialFacets,
343
+ });
304
344
  setImageAnalysis(res?.image_analysis);
305
345
  setSessionId(res?.session);
306
346
  setRequestId(res?.id);
@@ -386,6 +426,9 @@ export const useImageSearch = () => {
386
426
  setFirstSearchPreFilter,
387
427
  setFirstRequestImageAnalysis,
388
428
  setSmartFilters,
429
+ setPostFilterFacets,
430
+ setInitialFindSearchSnapshot,
431
+ user,
389
432
  ],
390
433
  );
391
434
 
@@ -339,14 +339,14 @@ Evaluate if these results match the image. If they do (same type of product), ro
339
339
 
340
340
  // Enforce ≤5 rule: if initial results are ≤5, strip filter options, keep only text_search_prompt
341
341
  if (activeProducts.length <= 5 && activeProducts.length > 0) {
342
- mappedOptions = [
343
- {
344
- label: "Describe what you're looking for",
345
- action_type: 'text_search_prompt' as const,
346
- key: 'text_search',
347
- value: 'text_search',
348
- },
349
- ];
342
+ // mappedOptions = [
343
+ // {
344
+ // label: "Describe what you're looking for",
345
+ // action_type: 'text_search_prompt' as const,
346
+ // key: 'text_search',
347
+ // value: 'text_search',
348
+ // },
349
+ // ];
350
350
 
351
351
  if (
352
352
  window.settings.vizo?.findRelatedParts &&
@@ -22,6 +22,7 @@ import { getFilters } from 'services/filter';
22
22
  import { useUploadSearch } from 'hooks/useUploadSearch';
23
23
  import { ToastHelper } from 'helpers/ToastHelper';
24
24
  import { useTranslation } from 'react-i18next';
25
+ import useScopeStore from 'stores/scope/scopeStore';
25
26
 
26
27
  i18n.use(initReactI18next).init({
27
28
  resources: translations,
@@ -49,6 +50,7 @@ function AppLayout(): JSX.Element {
49
50
 
50
51
  const algoliaFilter = useRequestStore(state => state.algoliaFilter);
51
52
  const metaFilter = useRequestStore(state => state.metaFilter);
53
+ const scopeItemKeys = useScopeStore(state => state.filterAttributes);
52
54
 
53
55
  const setAlgoliaProducts = useResultStore(state => state.setAlgoliaProducts);
54
56
  const setIsAlgoliaLoading = useUiStore(state => state.setIsAlgoliaLoading);
@@ -88,7 +90,7 @@ function AppLayout(): JSX.Element {
88
90
  useEffect(() => {
89
91
  setAlgoliaProducts(items);
90
92
  // eslint-disable-next-line react-hooks/exhaustive-deps
91
- }, [items]);
93
+ }, [items, scopeItemKeys]);
92
94
 
93
95
  useEffect(() => {
94
96
  if (status === 'loading' || status === 'stalled') {
@@ -145,10 +147,10 @@ function AppLayout(): JSX.Element {
145
147
  }, [settings, setPreFilterList, setPreFilterLoading]);
146
148
 
147
149
  useEffect(() => {
148
- if (showPreFilter) {
150
+ if (showPreFilter && !settings.scopeFilter) {
149
151
  getPreFilters();
150
152
  }
151
- }, [getPreFilters, showPreFilter]);
153
+ }, [getPreFilters, showPreFilter, settings.scopeFilter]);
152
154
 
153
155
  const getImageFromClipboard = useCallback(
154
156
  (event: ClipboardEvent): File | null => {
@@ -213,6 +215,25 @@ function AppLayout(): JSX.Element {
213
215
  };
214
216
  }, [handleClipboardPaste, showLayout]);
215
217
 
218
+ const applyScopeFilter = (filters: string | undefined) => {
219
+ const scopeFilterClause =
220
+ window.settings.scopeFilter && scopeItemKeys.length
221
+ ? `(${scopeItemKeys[0].values.map(key => `${window.settings.alogoliaFilterField}:'${key}'`).join(' OR ')})`
222
+ : '';
223
+
224
+ if (!window.settings.scopeFilter || !window.settings.auth0?.enabled) {
225
+ return filters;
226
+ }
227
+
228
+ if (!scopeFilterClause) {
229
+ return `sku:NOT_FOUND`;
230
+ }
231
+
232
+ return filters
233
+ ? `${scopeFilterClause} AND (${filters})`
234
+ : scopeFilterClause;
235
+ };
236
+
216
237
  if (!showLayout) {
217
238
  return <Outlet />;
218
239
  }
@@ -226,7 +247,7 @@ function AppLayout(): JSX.Element {
226
247
  {window.settings?.algolia.enabled && (
227
248
  <Configure
228
249
  query={query}
229
- filters={
250
+ filters={applyScopeFilter(
230
251
  specifications && !requestImages.length
231
252
  ? `${alogoliaFilterField}:'${specifications.prefilter_value}'`
232
253
  : !query && !algoliaFilter.includes('score=1')
@@ -237,8 +258,8 @@ function AppLayout(): JSX.Element {
237
258
  algoliaFilter ? 'AND ' : ''
238
259
  }${alogoliaFilterField}:'${metaFilter}'`
239
260
  : ''
240
- }`
241
- }
261
+ }`,
262
+ )}
242
263
  // facets={['brand', 'keyword_0']}
243
264
  hitsPerPage={20}
244
265
  />
@@ -322,7 +322,7 @@ function Results() {
322
322
  >
323
323
  {t('Showing results for machine', {
324
324
  prefilter_title:
325
- window.settings.preFilterTitle?.toLocaleLowerCase(),
325
+ window.settings.visualSearchFilterKey,
326
326
  prefilter_value: specifications.prefilter_value,
327
327
  })}
328
328
  </div>
@@ -570,6 +570,7 @@ function Results() {
570
570
  onClose={() => {
571
571
  setOpenModalCamera(s => !s);
572
572
  }}
573
+ newSearch={true}
573
574
  />
574
575
  {isAiModeOpen && (
575
576
  <div className="desktop:hidden">
@@ -1,15 +1,25 @@
1
1
  import { useAuth0 } from '@auth0/auth0-react';
2
2
  import EmailVerification from 'components/EmailVerification';
3
+ import ScopeMissing from 'components/ScopeMissing';
3
4
  import { useEffect, ReactElement } from 'react';
5
+ import { getScopes } from 'services/filter';
6
+ import useScopeStore from 'stores/scope/scopeStore';
4
7
 
5
8
  export default function ProtectedRoute({
6
9
  children,
7
10
  }: {
8
11
  children: ReactElement;
9
12
  }) {
10
- const { auth0 } = window.settings;
13
+ const { auth0, scopeFilter } = window.settings;
11
14
 
12
15
  const { user, isAuthenticated, isLoading, loginWithRedirect } = useAuth0();
16
+ const setScope = useScopeStore(state => state.setScope);
17
+ const filterAttributes = useScopeStore(state => state.filterAttributes);
18
+
19
+ const setScopeLoading = useScopeStore(state => state.setScopeLoading);
20
+ const scopeIsLoading = useScopeStore(state => state.isLoading);
21
+ const hasFetchedScope = useScopeStore(state => state.hasFetched);
22
+ const setScopeFetched = useScopeStore(state => state.setScopeFetched);
13
23
 
14
24
  useEffect(() => {
15
25
  if (!isLoading && !user && !isAuthenticated && auth0.enabled) {
@@ -17,21 +27,54 @@ export default function ProtectedRoute({
17
27
  }
18
28
  }, [loginWithRedirect, isLoading, user, isAuthenticated, auth0]);
19
29
 
30
+ useEffect(() => {
31
+ if (!scopeFilter || !isAuthenticated || !user?.email || hasFetchedScope) {
32
+ return;
33
+ }
34
+ setScopeFetched(true);
35
+ setScopeLoading(true);
36
+ getScopes(user.email, window.settings)
37
+ .then(response => {
38
+ setScope(response.itemKeys || [], response.filterAttributes || []);
39
+ })
40
+ .catch((e: any) => {
41
+ console.log('err getScopes', e);
42
+ })
43
+ .finally(() => {
44
+ setScopeLoading(false);
45
+ });
46
+ }, [
47
+ scopeFilter,
48
+ isAuthenticated,
49
+ user,
50
+ hasFetchedScope,
51
+ setScope,
52
+ setScopeLoading,
53
+ setScopeFetched,
54
+ ]);
55
+
20
56
  if (!auth0.enabled) {
21
57
  return children;
22
58
  }
23
59
 
24
- // if (isLoading) {
25
- // return <div>Loading...</div>;
26
- // }
27
-
28
- if (!isLoading && isAuthenticated && user?.email_verified) {
29
- return children;
60
+ if (isLoading || !isAuthenticated) {
61
+ return <div></div>;
30
62
  }
31
63
 
32
- if (!isLoading && isAuthenticated && !user?.email_verified) {
64
+ if (!user?.email_verified) {
33
65
  return <EmailVerification />;
34
66
  }
35
67
 
36
- return <div></div>;
68
+ if (scopeFilter) {
69
+ // wait for the scope fetch to finish before deciding access, otherwise ScopeMissing flashes early
70
+ if (scopeIsLoading || !hasFetchedScope) {
71
+ return <div></div>;
72
+ }
73
+
74
+ if (filterAttributes.length === 0) {
75
+ return <ScopeMissing />;
76
+ }
77
+ }
78
+
79
+ return children;
37
80
  }
@@ -22,3 +22,16 @@ export const searchFilters = async (
22
22
  const newValue = value ? value : '';
23
23
  return nyrisApi.searchFilters(key, newValue);
24
24
  };
25
+
26
+ export interface ScopeResponse {
27
+ itemKeys: string[];
28
+ filterAttributes: Filter[];
29
+ }
30
+
31
+ export const getScopes = async (
32
+ scopeIds: string,
33
+ settings: NyrisAPISettings,
34
+ ): Promise<ScopeResponse> => {
35
+ const nyrisApi = new NyrisAPI(settings);
36
+ return nyrisApi.getScopes(scopeIds);
37
+ };
@@ -58,12 +58,14 @@ export const find = async ({
58
58
  region,
59
59
  filters,
60
60
  text,
61
+ scopeIds,
61
62
  }: {
62
63
  image?: HTMLCanvasElement;
63
64
  settings: NyrisAPISettings;
64
65
  region?: RectCoords;
65
66
  filters?: Filter[];
66
67
  text?: string;
68
+ scopeIds?: string;
67
69
  }) => {
68
70
  const nyrisApi = new NyrisAPI(settings);
69
71
  let options: ImageSearchOptions = text ? { text } : {};
@@ -82,7 +84,14 @@ export const find = async ({
82
84
  if (region) {
83
85
  options = { ...options, cropRect: region };
84
86
  }
85
- return nyrisApi.find(options, image, filters);
87
+ return nyrisApi.find(
88
+ options,
89
+ image,
90
+ filters,
91
+ undefined,
92
+ undefined,
93
+ scopeIds ? [scopeIds] : [],
94
+ );
86
95
  };
87
96
 
88
97
  export const findCad = ({
@@ -31,4 +31,6 @@ export const initialState: ProductsState = {
31
31
  rerankStatus: 'idle',
32
32
  errorMessage: null,
33
33
  },
34
+ postFilterFacets: [],
35
+ initialFindSearchSnapshot: null,
34
36
  };
@@ -61,6 +61,14 @@ const productsSlice: StateCreator<ProductsState & ProductsAction> = set => ({
61
61
  set(() => ({
62
62
  smartFilters,
63
63
  })),
64
+ setPostFilterFacets: facets =>
65
+ set(() => ({
66
+ postFilterFacets: facets,
67
+ })),
68
+ setInitialFindSearchSnapshot: snapshot =>
69
+ set(() => ({
70
+ initialFindSearchSnapshot: snapshot,
71
+ })),
64
72
  });
65
73
 
66
74
  export default productsSlice;
@@ -0,0 +1,35 @@
1
+ import { create } from 'zustand';
2
+ import { Filter } from '@nyris/nyris-api';
3
+
4
+ interface ScopeState {
5
+ itemKeys: string[];
6
+ filterAttributes: Filter[];
7
+ isLoading: boolean;
8
+ hasFetched: boolean;
9
+ }
10
+
11
+ interface ScopeAction {
12
+ setScope: (itemKeys: string[], filterAttributes: Filter[]) => void;
13
+ setScopeLoading: (isLoading: boolean) => void;
14
+ setScopeFetched: (hasFetched: boolean) => void;
15
+ resetScope: () => void;
16
+ }
17
+
18
+ const initialState: ScopeState = {
19
+ itemKeys: [],
20
+ filterAttributes: [],
21
+ isLoading: false,
22
+ hasFetched: false,
23
+ };
24
+
25
+ const useScopeStore = create<ScopeState & ScopeAction>()(set => ({
26
+ ...initialState,
27
+
28
+ setScope: (itemKeys, filterAttributes) =>
29
+ set({ itemKeys, filterAttributes, hasFetched: true }),
30
+ setScopeLoading: isLoading => set({ isLoading }),
31
+ setScopeFetched: hasFetched => set({ hasFetched }),
32
+ resetScope: () => set(initialState),
33
+ }));
34
+
35
+ export default useScopeStore;
@@ -85,6 +85,11 @@ export interface ProductsState {
85
85
  rerankStatus: 'idle' | 'loading' | 'success' | 'error';
86
86
  errorMessage: string | null;
87
87
  };
88
+ postFilterFacets: any[];
89
+ initialFindSearchSnapshot: {
90
+ results: any[];
91
+ postFilterFacets: any[];
92
+ } | null;
88
93
  }
89
94
 
90
95
  export interface ProductsAction {
@@ -105,6 +110,10 @@ export interface ProductsAction {
105
110
  setFullResultPool: (products: any[]) => void;
106
111
  resetGrounding: () => void;
107
112
  setSmartFilters: (smartFilters: ProductsState['smartFilters']) => void;
113
+ setPostFilterFacets: (facets: any[]) => void;
114
+ setInitialFindSearchSnapshot: (
115
+ snapshot: ProductsState['initialFindSearchSnapshot'],
116
+ ) => void;
108
117
  }
109
118
 
110
119
  export interface DetectedRegionsState {
@@ -205,6 +205,28 @@
205
205
  margin-right: 8px;
206
206
  }
207
207
  }
208
+ .cart-email-button {
209
+ background-color: #fff;
210
+ color: #3e36dc;
211
+ border: 1px solid #3e36dc;
212
+ width: 100%;
213
+ height: 48px;
214
+ display: flex;
215
+ flex-direction: row;
216
+ align-items: center;
217
+ justify-content: center;
218
+ font-weight: 600;
219
+ font-size: 16px;
220
+ border-radius: 8px;
221
+ margin-top: 8px;
222
+ &:disabled {
223
+ opacity: 0.6;
224
+ cursor: not-allowed;
225
+ }
226
+ svg {
227
+ margin-right: 8px;
228
+ }
229
+ }
208
230
  }
209
231
  }
210
232
  }
package/src/types.ts CHANGED
@@ -79,7 +79,11 @@ export interface AppSettings extends NyrisAPISettings {
79
79
  brandName?: string;
80
80
  cadenas?: Cadenas;
81
81
  cadSearch?: boolean;
82
- cart?: boolean;
82
+ cart?: {
83
+ enabled: boolean;
84
+ buttonText: string;
85
+ emailTemplateId: string;
86
+ };
83
87
  clarityId?: string;
84
88
  CTAButton?: CTAButtonSettings;
85
89
  experienceVisualSearch?: boolean;
@@ -110,6 +114,7 @@ export interface AppSettings extends NyrisAPISettings {
110
114
  refinements?: any;
111
115
  regions: boolean;
112
116
  rfq?: Rfq;
117
+ scopeFilter?: boolean;
113
118
  secondaryCTAButton?: SecondaryCTAButton;
114
119
  secondaryCTAButtonText?: string;
115
120
  secondaryTitle: string;
@@ -1,4 +0,0 @@
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: }/*
2
- ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
3
- */*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}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-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height: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::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:400px){.\!container{max-width:400px!important}.container{max-width:400px}}@media (min-width:777px){.\!container{max-width:777px!important}.container{max-width:777px}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.-right-1{right:-.25rem}.-right-2{right:-.5rem}.-top-0\.5{top:-.125rem}.-top-1{top:-.25rem}.-top-3\.5{top:-.875rem}.-top-4{top:-1rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-12{bottom:3rem}.bottom-2{bottom:.5rem}.bottom-24{bottom:6rem}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.bottom-\[49px\]{bottom:49px}.left-0{left:0}.left-1{left:.25rem}.left-2{left:.5rem}.left-4{left:1rem}.left-8{left:2rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-3{right:.75rem}.right-4{right:1rem}.right-7{right:1.75rem}.top-0{top:0}.top-1{top:.25rem}.top-2{top:.5rem}.top-2\.5{top:.625rem}.top-3{top:.75rem}.top-4{top:1rem}.top-7{top:1.75rem}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-50{z-index:50}.z-\[-1\]{z-index:-1}.z-\[50\]{z-index:50}.z-\[51\]{z-index:51}.z-\[9999\]{z-index:9999}.col-span-full{grid-column:1/-1}.m-0{margin:0}.m-4{margin:1rem}.m-auto{margin:auto}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-bottom:1rem;margin-top:1rem}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.my-8{margin-bottom:2rem;margin-top:2rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-20{margin-bottom:5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-\[80px\]{margin-bottom:80px}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-\[30px\]{margin-left:30px}.ml-auto{margin-left:auto}.mr-16{margin-right:4rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-3\.5{margin-right:.875rem}.mr-4{margin-right:1rem}.mr-auto{margin-right:auto}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-24{margin-top:6rem}.mt-3{margin-top:.75rem}.mt-3\.5{margin-top:.875rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-8{margin-top:2rem}.mt-9{margin-top:2.25rem}.mt-\[180px\]{margin-top:180px}.mt-\[6px\]{margin-top:6px}.mt-\[calc\(50vh-110px\)\]{margin-top:calc(50vh - 110px)}.mt-\[calc\(50vh-156px\)\]{margin-top:calc(50vh - 156px)}.mt-auto{margin-top:auto}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-0{height:0}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-36{height:9rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[10px\]{height:10px}.h-\[12px\]{height:12px}.h-\[168px\]{height:168px}.h-\[22px\]{height:22px}.h-\[368px\]{height:368px}.h-\[48px\]{height:48px}.h-\[50px\]{height:50px}.h-\[52px\]{height:52px}.h-\[56px\]{height:56px}.h-\[60px\]{height:60px}.h-\[70px\]{height:70px}.h-\[72px\]{height:72px}.h-\[80\%\]{height:80%}.h-\[8px\]{height:8px}.h-auto{height:auto}.h-fit{height:-webkit-fit-content;height:fit-content}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[100px\]{max-height:100px}.max-h-\[368px\]{max-height:368px}.max-h-\[50vh\]{max-height:50vh}.max-h-\[90svh\]{max-height:90svh}.max-h-\[95vh\]{max-height:95vh}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-10{min-height:2.5rem}.min-h-5{min-height:1.25rem}.min-h-8{min-height:2rem}.min-h-\[106px\]{min-height:106px}.min-h-\[120px\]{min-height:120px}.min-h-\[268px\]{min-height:268px}.min-h-\[56px\]{min-height:56px}.min-h-\[60px\]{min-height:60px}.min-h-full{min-height:100%}.w-0{width:0}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-3{width:.75rem}.w-36{width:9rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-\[10px\]{width:10px}.w-\[110px\]{width:110px}.w-\[12px\]{width:12px}.w-\[180px\]{width:180px}.w-\[215px\]{width:215px}.w-\[22px\]{width:22px}.w-\[295px\]{width:295px}.w-\[325px\]{width:325px}.w-\[334px\]{width:334px}.w-\[360px\]{width:360px}.w-\[410px\]{width:410px}.w-\[48px\]{width:48px}.w-\[50px\]{width:50px}.w-\[60px\]{width:60px}.w-\[636px\]{width:636px}.w-\[70px\]{width:70px}.w-\[8px\]{width:8px}.w-\[90\%\]{width:90%}.w-fit{width:-webkit-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-webkit-max-content;width:max-content}.w-screen{width:100vw}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-14{min-width:3.5rem}.min-w-4{min-width:1rem}.min-w-6{min-width:1.5rem}.min-w-\[268px\]{min-width:268px}.min-w-\[325px\]{min-width:325px}.min-w-\[334px\]{min-width:334px}.min-w-\[56px\]{min-width:56px}.min-w-\[90px\]{min-width:90px}.max-w-0{max-width:0}.max-w-\[100\%\]{max-width:100%}.max-w-\[1500px\]{max-width:1500px}.max-w-\[175px\]{max-width:175px}.max-w-\[190px\]{max-width:190px}.max-w-\[200px\]{max-width:200px}.max-w-\[325px\]{max-width:325px}.max-w-\[350px\]{max-width:350px}.max-w-\[360px\]{max-width:360px}.max-w-\[531px\]{max-width:531px}.max-w-\[532px\]{max-width:532px}.max-w-\[840px\]{max-width:840px}.max-w-\[85\%\]{max-width:85%}.max-w-fit{max-width:-webkit-fit-content;max-width:fit-content}.max-w-full{max-width:100%}.flex-1{flex:1 1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-x-\[-50\%\],.translate-y-\[-50\%\]{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))}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform{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 pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize{resize:both}.scroll-pt-5{scroll-padding-top:1.25rem}.grid-cols-\[repeat\(auto-fit\2c _minmax\(180px\2c _0px\)\)\]{grid-template-columns:repeat(auto-fit,minmax(180px,0))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-items-center{justify-items:center}.gap-0{gap:0}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-\[11px\]{gap:11px}.gap-x-1{column-gap:.25rem}.gap-x-2{column-gap:.5rem}.gap-x-5{column-gap:1.25rem}.gap-x-8{column-gap:2rem}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.625rem*var(--tw-space-y-reverse));margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-keep{word-break:keep-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[12px\]{border-radius:12px}.rounded-\[16px\]{border-radius:16px}.rounded-\[1px\]{border-radius:1px}.rounded-\[21px\]{border-radius:21px}.rounded-\[24px\]{border-radius:24px}.rounded-\[32px\]{border-radius:32px}.rounded-\[4px\]{border-radius:4px}.rounded-\[50\%\]{border-radius:50%}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-\[24px\]{border-top-left-radius:24px;border-top-right-radius:24px}.rounded-bl-\[16px\]{border-bottom-left-radius:16px}.rounded-bl-sm{border-bottom-left-radius:.125rem}.rounded-br-\[16px\]{border-bottom-right-radius:16px}.rounded-tl-\[16px\]{border-top-left-radius:16px}.rounded-tr-\[8px\]{border-top-right-radius:8px}.border{border-width:1px}.border-2,.border-\[2px\]{border-width:2px}.border-b{border-bottom-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[\#3E36DC\]{--tw-border-opacity:1;border-color:#3e36dc;border-color:rgb(62 54 220/var(--tw-border-opacity,1))}.border-\[\#545987\]{--tw-border-opacity:1;border-color:#545987;border-color:rgb(84 89 135/var(--tw-border-opacity,1))}.border-\[\#655EE3\]{--tw-border-opacity:1;border-color:#655ee3;border-color:rgb(101 94 227/var(--tw-border-opacity,1))}.border-\[\#AAABB5\]{--tw-border-opacity:1;border-color:#aaabb5;border-color:rgb(170 171 181/var(--tw-border-opacity,1))}.border-\[\#BBBDCF\]{--tw-border-opacity:1;border-color:#bbbdcf;border-color:rgb(187 189 207/var(--tw-border-opacity,1))}.border-\[\#C7D2FE\]{--tw-border-opacity:1;border-color:#c7d2fe;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-\[\#DDDEE7\]{--tw-border-opacity:1;border-color:#dddee7;border-color:rgb(221 222 231/var(--tw-border-opacity,1))}.border-\[\#E0E0E0\]{--tw-border-opacity:1;border-color:#e0e0e0;border-color:rgb(224 224 224/var(--tw-border-opacity,1))}.border-\[\#E31B5D\]{--tw-border-opacity:1;border-color:#e31b5d;border-color:rgb(227 27 93/var(--tw-border-opacity,1))}.border-\[\#E67E22\]{--tw-border-opacity:1;border-color:#e67e22;border-color:rgb(230 126 34/var(--tw-border-opacity,1))}.border-\[\#E7E8F1\]{--tw-border-opacity:1;border-color:#e7e8f1;border-color:rgb(231 232 241/var(--tw-border-opacity,1))}.border-\[\#e0e0e0\]{--tw-border-opacity:1;border-color:#e0e0e0;border-color:rgb(224 224 224/var(--tw-border-opacity,1))}.border-\[\#e4e3ff\]{--tw-border-opacity:1;border-color:#e4e3ff;border-color:rgb(228 227 255/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:#fecaca;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity:1;border-color:#fff;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.\!bg-\[\#2B2C46\]{--tw-bg-opacity:1!important;background-color:#2b2c46!important;background-color:rgb(43 44 70/var(--tw-bg-opacity,1))!important}.\!bg-\[\#55566B\]{--tw-bg-opacity:1!important;background-color:#55566b!important;background-color:rgb(85 86 107/var(--tw-bg-opacity,1))!important}.bg-\[\#00000080\]{background-color:#00000080}.bg-\[\#10b981\]{--tw-bg-opacity:1;background-color:#10b981;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-\[\#2B2C46\]{--tw-bg-opacity:1;background-color:#2b2c46;background-color:rgb(43 44 70/var(--tw-bg-opacity,1))}.bg-\[\#373b53\]{--tw-bg-opacity:1;background-color:#373b53;background-color:rgb(55 59 83/var(--tw-bg-opacity,1))}.bg-\[\#3B3E5F\]{--tw-bg-opacity:1;background-color:#3b3e5f;background-color:rgb(59 62 95/var(--tw-bg-opacity,1))}.bg-\[\#3E36DC\]{--tw-bg-opacity:1;background-color:#3e36dc;background-color:rgb(62 54 220/var(--tw-bg-opacity,1))}.bg-\[\#545987\]{--tw-bg-opacity:1;background-color:#545987;background-color:rgb(84 89 135/var(--tw-bg-opacity,1))}.bg-\[\#55566B\]{--tw-bg-opacity:1;background-color:#55566b;background-color:rgb(85 86 107/var(--tw-bg-opacity,1))}.bg-\[\#615e669f\]{background-color:#615e669f}.bg-\[\#E0E0E0\]{--tw-bg-opacity:1;background-color:#e0e0e0;background-color:rgb(224 224 224/var(--tw-bg-opacity,1))}.bg-\[\#E31B5D\]{--tw-bg-opacity:1;background-color:#e31b5d;background-color:rgb(227 27 93/var(--tw-bg-opacity,1))}.bg-\[\#E7E8F1\]{--tw-bg-opacity:1;background-color:#e7e8f1;background-color:rgb(231 232 241/var(--tw-bg-opacity,1))}.bg-\[\#E9E9EC\]{--tw-bg-opacity:1;background-color:#e9e9ec;background-color:rgb(233 233 236/var(--tw-bg-opacity,1))}.bg-\[\#EEF2FF\]{--tw-bg-opacity:1;background-color:#eef2ff;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.bg-\[\#F0EFFF\]{--tw-bg-opacity:1;background-color:#f0efff;background-color:rgb(240 239 255/var(--tw-bg-opacity,1))}.bg-\[\#F2FBF3\]{--tw-bg-opacity:1;background-color:#f2fbf3;background-color:rgb(242 251 243/var(--tw-bg-opacity,1))}.bg-\[\#F3F3F5\]{--tw-bg-opacity:1;background-color:#f3f3f5;background-color:rgb(243 243 245/var(--tw-bg-opacity,1))}.bg-\[\#F3F4F8\]{--tw-bg-opacity:1;background-color:#f3f4f8;background-color:rgb(243 244 248/var(--tw-bg-opacity,1))}.bg-\[\#F8F8FF\]{--tw-bg-opacity:1;background-color:#f8f8ff;background-color:rgb(248 248 255/var(--tw-bg-opacity,1))}.bg-\[\#FAFAFA\]{--tw-bg-opacity:1;background-color:#fafafa;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.bg-\[\#FFE5EF4D\]{background-color:#ffe5ef4d}.bg-\[\#FFE5EF\]{--tw-bg-opacity:1;background-color:#ffe5ef;background-color:rgb(255 229 239/var(--tw-bg-opacity,1))}.bg-\[\#FFF8F0\]{--tw-bg-opacity:1;background-color:#fff8f0;background-color:rgb(255 248 240/var(--tw-bg-opacity,1))}.bg-\[\#FFF8FB\]{--tw-bg-opacity:1;background-color:#fff8fb;background-color:rgb(255 248 251/var(--tw-bg-opacity,1))}.bg-\[\#FFFFFF\]{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-\[\#e0e0e0\]{--tw-bg-opacity:1;background-color:#e0e0e0;background-color:rgb(224 224 224/var(--tw-bg-opacity,1))}.bg-\[\#e4e3ff\]{--tw-bg-opacity:1;background-color:#e4e3ff;background-color:rgb(228 227 255/var(--tw-bg-opacity,1))}.bg-\[\#e9e9ec\]{--tw-bg-opacity:1;background-color:#e9e9ec;background-color:rgb(233 233 236/var(--tw-bg-opacity,1))}.bg-\[\#e9e9ef\]{--tw-bg-opacity:1;background-color:#e9e9ef;background-color:rgb(233 233 239/var(--tw-bg-opacity,1))}.bg-\[\#f3f3f5\]{--tw-bg-opacity:1;background-color:#f3f3f5;background-color:rgb(243 243 245/var(--tw-bg-opacity,1))}.bg-\[\#fafafa\]{--tw-bg-opacity:1;background-color:#fafafa;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.bg-\[\#fff\]{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-\[rgba\(243\2c 243\2c 245\2c 0\.4\)\]{background-color:hsla(240,9%,96%,.4)}.bg-black\/20{background-color:rgba(0,0,0,.2)}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-black\/80{background-color:rgba(0,0,0,.8)}.bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:#22c55e;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-neutral-50{--tw-bg-opacity:1;background-color:#fafafa;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.bg-primary{--tw-bg-opacity:1;background-color:#3b3e5f;background-color:rgb(59 62 95/var(--tw-bg-opacity,1))}.bg-primary\/10{background-color:rgba(59,62,95,.1)}.bg-red-50{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/40{background-color:hsla(0,0%,100%,.4)}.bg-white\/50{background-color:hsla(0,0%,100%,.5)}.bg-white\/60{background-color:hsla(0,0%,100%,.6)}.bg-white\/80{background-color:hsla(0,0%,100%,.8)}.bg-\[radial-gradient\(ellipse_at_70\%_7\%\2c _\#F3F4F8_50\%\2c _\#E4E3FF_100\%\)\]{background-image:radial-gradient(ellipse at 70% 7%,#f3f4f8 50%,#e4e3ff 100%)}.fill-\[\#2B2C46\]{fill:#2b2c46}.fill-\[\#3B3E5F\]{fill:#3b3e5f}.fill-\[\#55566B\]{fill:#55566b}.fill-\[\#989BB7\]{fill:#989bb7}.fill-\[\#BBBDCF\]{fill:#bbbdcf}.fill-theme-primary{fill:var(--primary-color)}.fill-white{fill:#fff}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-\[10px\]{padding-left:10px;padding-right:10px}.py-0{padding-bottom:0;padding-top:0}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-10{padding-bottom:2.5rem;padding-top:2.5rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-\[3px\]{padding-bottom:3px;padding-top:3px}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pl-1{padding-left:.25rem}.pl-1\.5{padding-left:.375rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pr-0\.5{padding-right:.125rem}.pr-1{padding-right:.25rem}.pr-1\.5{padding-right:.375rem}.pr-14{padding-right:3.5rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pr-5{padding-right:1.25rem}.pr-6{padding-right:1.5rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-\[15px\]{padding-top:15px}.text-left{text-align:left}.text-center{text-align:center}.text-start{text-align:start}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[25px\]{font-size:25px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.normal-case{text-transform:none}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-\[18px\]{line-height:18px}.leading-\[22\.78px\]{line-height:22.78px}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-\[0\.16px\]{letter-spacing:.16px}.tracking-tight{letter-spacing:-.025em}.text-\[\#22C55E\]{--tw-text-opacity:1;color:#22c55e;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-\[\#2B2C46\],.text-\[\#2b2c46\]{--tw-text-opacity:1;color:#2b2c46;color:rgb(43 44 70/var(--tw-text-opacity,1))}.text-\[\#3B3E5F\]{--tw-text-opacity:1;color:#3b3e5f;color:rgb(59 62 95/var(--tw-text-opacity,1))}.text-\[\#3E36DC\],.text-\[\#3e36dc\]{--tw-text-opacity:1;color:#3e36dc;color:rgb(62 54 220/var(--tw-text-opacity,1))}.text-\[\#4a5568\]{--tw-text-opacity:1;color:#4a5568;color:rgb(74 85 104/var(--tw-text-opacity,1))}.text-\[\#655EE3\]{--tw-text-opacity:1;color:#655ee3;color:rgb(101 94 227/var(--tw-text-opacity,1))}.text-\[\#666\]{--tw-text-opacity:1;color:#666;color:rgb(102 102 102/var(--tw-text-opacity,1))}.text-\[\#767A9F\]{--tw-text-opacity:1;color:#767a9f;color:rgb(118 122 159/var(--tw-text-opacity,1))}.text-\[\#989BB7\]{--tw-text-opacity:1;color:#989bb7;color:rgb(152 155 183/var(--tw-text-opacity,1))}.text-\[\#999\]{--tw-text-opacity:1;color:#999;color:rgb(153 153 153/var(--tw-text-opacity,1))}.text-\[\#AAABB5\]{--tw-text-opacity:1;color:#aaabb5;color:rgb(170 171 181/var(--tw-text-opacity,1))}.text-\[\#BBBDCF\]{--tw-text-opacity:1;color:#bbbdcf;color:rgb(187 189 207/var(--tw-text-opacity,1))}.text-\[\#CACAD1\]{--tw-text-opacity:1;color:#cacad1;color:rgb(202 202 209/var(--tw-text-opacity,1))}.text-\[\#D14343\]{--tw-text-opacity:1;color:#d14343;color:rgb(209 67 67/var(--tw-text-opacity,1))}.text-\[\#E0E0E0\]{--tw-text-opacity:1;color:#e0e0e0;color:rgb(224 224 224/var(--tw-text-opacity,1))}.text-\[\#E31B5D\]{--tw-text-opacity:1;color:#e31b5d;color:rgb(227 27 93/var(--tw-text-opacity,1))}.text-\[\#E67E22\]{--tw-text-opacity:1;color:#e67e22;color:rgb(230 126 34/var(--tw-text-opacity,1))}.text-\[\#e31b5d\]{--tw-text-opacity:1;color:#e31b5d;color:rgb(227 27 93/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:#000;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:#3b82f6;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:#4f46e5;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-primary{--tw-text-opacity:1;color:#3b3e5f;color:rgb(59 62 95/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:#b91c1c;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:#0f172a;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.placeholder-\[\#989BB7\]::placeholder{--tw-placeholder-opacity:1;color:#989bb7;color:rgb(152 155 183/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-\[0px_0px_32px_0px_rgba\(152\2c 155\2c 183\2c 1\)\]{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0px_0px_32px_0px_rgba\(152\2c 155\2c 183\2c 1\)\]{--tw-shadow:0px 0px 32px 0px #989bb7;--tw-shadow-colored:0px 0px 32px 0px var(--tw-shadow-color)}.shadow-ds-1{--tw-shadow:0 0 16px 0 rgba(221,222,231,.5);--tw-shadow-colored:0 0 16px 0 var(--tw-shadow-color)}.shadow-ds-1,.shadow-ds-2{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-ds-2{--tw-shadow:0 0 20px 0 rgba(221,222,231,.5);--tw-shadow-colored:0 0 20px 0 var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.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)}.shadow-outer{--tw-shadow:0 0 16px 0 hsla(240,7%,81%,.5);--tw-shadow-colored:0 0 16px 0 var(--tw-shadow-color)}.shadow-outer,.shadow-sm{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--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(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[8px\]{--tw-backdrop-blur:blur(8px);-webkit-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);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)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.delay-150{transition-delay:.15s}.delay-300{transition-delay:.3s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#3b3e5f;font-family:-apple-system,BlinkMacSystemFont,Source Sans\ 3,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}@font-face{font-display:swap;font-family:Source Sans\ 3;font-style:normal;font-weight:300;src:url(/static/media/SourceSans3-Light.37264fa35ee0d5f209ea.ttf)}@font-face{font-display:swap;font-family:Source Sans\ 3;font-style:normal;font-weight:400;src:url(/static/media/SourceSans3-Regular.c69f9658f16351f79f33.ttf)}@font-face{font-display:swap;font-family:Source Sans\ 3;font-style:medium;font-weight:500;src:url(/static/media/SourceSans3-Medium.c82b4c53fc5d38ef5784.ttf)}@font-face{font-display:swap;font-family:Source Sans\ 3;font-style:medium;font-weight:600;src:url(/static/media/SourceSans3-SemiBold.5ad6683a8a06e3ccea94.ttf)}@font-face{font-display:swap;font-family:Source Sans\ 3;font-style:medium;font-weight:700;src:url(/static/media/SourceSans3-Bold.17e068739e42bdb30d1c.ttf)}*,body{margin:0}*{font-family:Source Sans\ 3,sans-serif!important;padding:0}.sidepanel-scroll{-webkit-clip-path:inset(0 round 1px);clip-path:inset(0 round 1px);position:relative;scrollbar-color:transparent transparent;scrollbar-gutter:stable;scrollbar-width:thin}.sidepanel-scroll:hover{scrollbar-color:#c3c6cf transparent}.sidepanel-scroll::-webkit-scrollbar,.sidepanel-scroll:hover::-webkit-scrollbar{width:8px}.sidepanel-scroll::-webkit-scrollbar-track{background:transparent;margin:16px 0}.sidepanel-scroll::-webkit-scrollbar-thumb{background:transparent;background-clip:padding-box;border:2px solid transparent;border-radius:999px}.sidepanel-scroll:hover::-webkit-scrollbar-thumb{background:#c3c6cf}.sidepanel-scroll:after,.sidepanel-scroll:before{background:#fff;content:"";height:16px;pointer-events:none;position:absolute;right:0;width:8px;z-index:1}.sidepanel-scroll:before{border-top-right-radius:32px;top:0}.sidepanel-scroll:after{border-bottom-right-radius:32px;bottom:0}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{border:0;font:inherit;margin:0;padding:0}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body,button,input,select,textarea{-webkit-font-smoothing:antialiased;font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#2b2c46;font-family:Roboto,Arial,Helvetica,sans-serif;font-size:17px;font-weight:400;line-height:1.5;text-rendering:optimizeLegibility}a,b,h1,h2,h3,h4,h5,h6,strong{font-weight:700}body{background:#fafafa}h1,h2,h3,h4,h5,h6{line-height:1}h1,h2{color:#031f2b;line-height:1.618}h1{font-size:25px;margin:0 auto 25px}h1.entry-title a{color:#031f2b;font-size:25px}h2{font-size:16px;margin:15px auto 25px}h2.entry-title a{color:#031f2b;font-size:25px}h1 p,h2 p{margin-bottom:0}@media only screen and (min-width:530px) and (max-width:750px){h1 br,h2 br{display:none}}h3{color:#031f2b;font-size:17px;line-height:1.5;margin:22px auto 16px}h4{font-size:15px;margin:22px auto 12px}h5{font-size:13px;margin:22px auto 10px}h6{font-size:11px;margin:22px auto 8px}p a{text-decoration:underline}em{font-style:italic}iframe,img{height:auto;max-width:100%}a{color:rgba(3,31,43,.54);text-decoration:none}a:hover{color:rgba(3,31,43,.7);cursor:pointer}ol,ul{list-style:none;padding-left:20px}ol li,ul li{list-style:disc;margin-bottom:10px;padding-left:10px}.d-flex{display:flex!important}.justify-center{justify-content:center}.flex-end{align-items:flex-end}.flex-center{align-items:center}.hover\:w-\[215px\]:hover{width:215px}.hover\:cursor-pointer:hover{cursor:pointer}.hover\:gap-2:hover{gap:.5rem}.hover\:border-\[\#3E36DC\]:hover{--tw-border-opacity:1;border-color:#3e36dc;border-color:rgb(62 54 220/var(--tw-border-opacity,1))}.hover\:border-\[\#DDDEE7\]:hover{--tw-border-opacity:1;border-color:#dddee7;border-color:rgb(221 222 231/var(--tw-border-opacity,1))}.hover\:border-\[\#E7E8F1\]:hover{--tw-border-opacity:1;border-color:#e7e8f1;border-color:rgb(231 232 241/var(--tw-border-opacity,1))}.hover\:bg-\[\#2d3145\]:hover{--tw-bg-opacity:1;background-color:#2d3145;background-color:rgb(45 49 69/var(--tw-bg-opacity,1))}.hover\:bg-\[\#333653\]:hover{--tw-bg-opacity:1;background-color:#333653;background-color:rgb(51 54 83/var(--tw-bg-opacity,1))}.hover\:bg-\[\#3B3E5F\]:hover{--tw-bg-opacity:1;background-color:#3b3e5f;background-color:rgb(59 62 95/var(--tw-bg-opacity,1))}.hover\:bg-\[\#545987\]:hover{--tw-bg-opacity:1;background-color:#545987;background-color:rgb(84 89 135/var(--tw-bg-opacity,1))}.hover\:bg-\[\#E0E7FF\]:hover{--tw-bg-opacity:1;background-color:#e0e7ff;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.hover\:bg-\[\#E67E22\]:hover{--tw-bg-opacity:1;background-color:#e67e22;background-color:rgb(230 126 34/var(--tw-bg-opacity,1))}.hover\:bg-\[\#E9E9EC\]:hover{--tw-bg-opacity:1;background-color:#e9e9ec;background-color:rgb(233 233 236/var(--tw-bg-opacity,1))}.hover\:bg-\[\#F3F3F5\]:hover{--tw-bg-opacity:1;background-color:#f3f3f5;background-color:rgb(243 243 245/var(--tw-bg-opacity,1))}.hover\:bg-\[\#F3F4F8\]:hover{--tw-bg-opacity:1;background-color:#f3f4f8;background-color:rgb(243 244 248/var(--tw-bg-opacity,1))}.hover\:bg-blue-100\/40:hover{background-color:rgba(219,234,254,.4)}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-gradient-to-r:hover{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.hover\:from-white:hover{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-\[\#E4E3FF\]:hover{--tw-gradient-to:#e4e3ff var(--tw-gradient-to-position)}.hover\:fill-\[url\(\#powered_by_nyris_colored_svg__gradient\)\]:hover{fill:url(#powered_by_nyris_colored_svg__gradient)}.hover\:px-0:hover{padding-left:0;padding-right:0}.hover\:px-0\.5:hover{padding-left:.125rem;padding-right:.125rem}.hover\:font-bold:hover{font-weight:700}.hover\:font-semibold:hover{font-weight:600}.hover\:text-\[\#2F29B7\]:hover{--tw-text-opacity:1;color:#2f29b7;color:rgb(47 41 183/var(--tw-text-opacity,1))}.hover\:text-\[\#3B3E5F\]:hover{--tw-text-opacity:1;color:#3b3e5f;color:rgb(59 62 95/var(--tw-text-opacity,1))}.hover\:text-\[\#3E36DC\]:hover{--tw-text-opacity:1;color:#3e36dc;color:rgb(62 54 220/var(--tw-text-opacity,1))}.hover\:text-\[\#F3F4F8\]:hover{--tw-text-opacity:1;color:#f3f4f8;color:rgb(243 244 248/var(--tw-text-opacity,1))}.hover\:text-primary:hover{--tw-text-opacity:1;color:#3b3e5f;color:rgb(59 62 95/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_6px_0_\#DDDEE7\]:hover{--tw-shadow:0 0 6px 0 #dddee7;--tw-shadow-colored:0 0 6px 0 var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:bg-\[\#FFFFFF\]:focus{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:max-w-fit{max-width:-webkit-fit-content;max-width:fit-content}.group:hover .group-hover\:flex-grow{flex-grow:1}.group:hover .group-hover\:fill-\[url\(\#powered_by_nyris_colored_svg__gradient\)\]{fill:url(#powered_by_nyris_colored_svg__gradient)}.group:hover .group-hover\:text-\[\#5a5b61\]{--tw-text-opacity:1;color:#5a5b61;color:rgb(90 91 97/var(--tw-text-opacity,1))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.group[data-state=closed] .group-data-\[state\=closed\]\:hidden,.group[data-state=open] .group-data-\[state\=open\]\:hidden{display:none}@media (min-width:400px){.mobile-md\:mx-2{margin-left:.5rem;margin-right:.5rem}}@media (min-width:777px){.desktop\:left-8{left:2rem}.desktop\:left-\[26px\]{left:26px}.desktop\:top-\[1px\]{top:1px}.desktop\:m-auto{margin:auto}.desktop\:mx-4{margin-left:1rem;margin-right:1rem}.desktop\:-mb-2{margin-bottom:-.5rem}.desktop\:mb-0{margin-bottom:0}.desktop\:mb-2{margin-bottom:.5rem}.desktop\:mb-8{margin-bottom:2rem}.desktop\:mt-0{margin-top:0}.desktop\:mt-4{margin-top:1rem}.desktop\:mt-6{margin-top:1.5rem}.desktop\:block{display:block}.desktop\:flex{display:flex}.desktop\:inline-flex{display:inline-flex}.desktop\:hidden{display:none}.desktop\:h-0{height:0}.desktop\:h-12{height:3rem}.desktop\:h-8{height:2rem}.desktop\:h-\[100\%\]{height:100%}.desktop\:h-\[18px\]{height:18px}.desktop\:h-\[456px\]{height:456px}.desktop\:h-\[52px\]{height:52px}.desktop\:h-\[68px\]{height:68px}.desktop\:h-\[8px\]{height:8px}.desktop\:h-full{height:100%}.desktop\:max-h-\[100\%\]{max-height:100%}.desktop\:max-h-\[456px\]{max-height:456px}.desktop\:min-h-0{min-height:0}.desktop\:min-h-10{min-height:2.5rem}.desktop\:min-h-\[468px\]{min-height:468px}.desktop\:min-h-\[68px\]{min-height:68px}.desktop\:w-0{width:0}.desktop\:w-8{width:2rem}.desktop\:w-\[18px\]{width:18px}.desktop\:w-\[190px\]{width:190px}.desktop\:w-\[378px\]{width:378px}.desktop\:w-\[500px\]{width:500px}.desktop\:w-\[600px\]{width:600px}.desktop\:w-\[8px\]{width:8px}.desktop\:w-fit{width:-webkit-fit-content;width:fit-content}.desktop\:min-w-10{min-width:2.5rem}.desktop\:min-w-\[18px\]{min-width:18px}.desktop\:min-w-\[68px\]{min-width:68px}.desktop\:max-w-\[600px\]{max-width:600px}.desktop\:grid-cols-\[repeat\(auto-fit\2c _minmax\(190px\2c _0px\)\)\]{grid-template-columns:repeat(auto-fit,minmax(190px,0))}.desktop\:flex-row{flex-direction:row}.desktop\:items-start{align-items:flex-start}.desktop\:gap-1\.5{gap:.375rem}.desktop\:gap-6{gap:1.5rem}.desktop\:overflow-hidden{overflow:hidden}.desktop\:overflow-y-auto{overflow-y:auto}.desktop\:bg-\[\#E7E8F1\]{--tw-bg-opacity:1;background-color:#e7e8f1;background-color:rgb(231 232 241/var(--tw-bg-opacity,1))}.desktop\:bg-\[\#FAFAFA\]{--tw-bg-opacity:1;background-color:#fafafa;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.desktop\:bg-theme-primary{background-color:var(--primary-color)}.desktop\:bg-transparent{background-color:transparent}.desktop\:fill-\[\#3B3E5F\]{fill:#3b3e5f}.desktop\:p-3{padding:.75rem}.desktop\:p-6{padding:1.5rem}.desktop\:px-4{padding-left:1rem;padding-right:1rem}.desktop\:px-5{padding-left:1.25rem;padding-right:1.25rem}.desktop\:py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.desktop\:pb-0{padding-bottom:0}.desktop\:pl-1\.5{padding-left:.375rem}.desktop\:pl-16{padding-left:4rem}.desktop\:pt-0{padding-top:0}.desktop\:pt-4{padding-top:1rem}.desktop\:pt-8{padding-top:2rem}.desktop\:text-\[10px\]{font-size:10px}.desktop\:shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.desktop\:hover\:bg-\[\#FAFAFA\]:hover{--tw-bg-opacity:1;background-color:#fafafa;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))}.desktop\:has-\[input\:focus\]\:bg-\[\#FFFFFF\]:has(input:focus){--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.desktop\:has-\[input\:focus\]\:shadow-ds-2:has(input:focus){--tw-shadow:0 0 20px 0 rgba(221,222,231,.5);--tw-shadow-colored:0 0 20px 0 var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}.take-photo{padding:3px}.take-photo,.take-photo .take-photo-wrapper{border-radius:100%}.take-photo .take-photo-wrapper .outer{border-radius:100%;box-shadow:0 0 40px 0 #dddee7;display:block}.take-photo .take-photo-wrapper .inner{align-items:center;background:linear-gradient(180deg,#fff 30.73%,#dddee7);border-radius:100%;display:flex;height:260px;justify-content:center;width:260px}body.overflow-hidden{overflow:hidden}.experience-visual-button{align-items:center;background-color:#3e36dc;border-radius:25px;cursor:pointer;display:flex;flex-direction:row;height:40px;justify-content:center;margin:32px auto 0;width:40px}.experience-visual-button.hover,.experience-visual-button:hover{border-radius:25px;transition:.5s;width:197px}.experience-visual-button.hover span,.experience-visual-button:hover span{display:inline;font-family:Source Sans\ 3,sans-serif;font-size:14px;font-weight:600;line-height:16px;margin-right:8px;overflow:hidden;text-align:center;white-space:nowrap;width:149px}.experience-visual-button.hover span:before,.experience-visual-button:hover span:before{color:#fff;content:"Experience Visual Search"}.custom-modal-body{background-color:#f3f3f5;height:100%;padding:32px 16px;position:relative;width:100%}.custom-modal-body .close-icon{position:absolute;right:8px;top:8px}.custom-modal-body-title{font-family:Source Sans\ 3,sans-serif;font-size:20px;font-weight:700;line-height:24px;text-align:left}.custom-modal-body-content.experience-visual-search-images{display:flex;flex-direction:row;flex-wrap:wrap;gap:16px;height:auto;justify-content:center;margin:32px auto;width:376px}.custom-modal-body-content.experience-visual-search-images .experience-visual-search-image-container{border-radius:4px;cursor:pointer;height:180px;overflow:hidden;position:relative;width:180px}.custom-modal-body-content.experience-visual-search-images .experience-visual-search-image-container .experience-visual-search-image{background-position:50%;background-size:cover;height:180px;transform:scale(1);width:180px}.custom-modal-body-content.experience-visual-search-images .experience-visual-search-image-container .experience-visual-search-image:hover{transform:scale(1.1);transition:all .3s}.custom-modal-body-content.experience-visual-search-images .experience-visual-search-image-container .box-icon-modal{align-items:center;background-color:#f3f3f5;border-radius:100%;bottom:6px;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;position:absolute;right:6px;width:32px;z-index:11}@media only screen and (min-width:900px){.custom-modal-body{border-radius:4px;height:380px;max-width:900px;width:900px}.custom-modal-body-subtitle,.custom-modal-body-title{margin-left:24px}.custom-modal-body-content.experience-visual-search-images{width:770px}}@media only screen and (min-width:776px)and (max-width:899px){.custom-modal-body{border-radius:4px;height:600px;max-width:600px;padding:32px;width:600px}}@media only screen and (max-width:776px){.experience-visual-button{width:197px}.experience-visual-button span{display:inline;font-family:Source Sans\ 3,sans-serif;font-size:14px;font-weight:600;line-height:16px;margin-right:8px;overflow:hidden;text-align:center;white-space:nowrap;width:149px}.experience-visual-button span:before{color:#fff;content:"Experience Visual Search"}}@media only screen and (max-width:408px){.custom-modal-body{padding:32px 8px}.custom-modal-body-content.experience-visual-search-images{gap:8px;max-width:calc(100vw - 32px);width:300px}.custom-modal-body-content.experience-visual-search-images .experience-visual-search-image-container,.custom-modal-body-content.experience-visual-search-images .experience-visual-search-image-container .experience-visual-search-image{height:145px;width:145px}}.wrap-main-item-result{display:flex;flex-direction:column;overflow:hidden}@media screen and (max-width:776px){.wrap-main-item-result .wrap-main-item-result{max-width:180px!important;width:180px}.wrap-main-item-result .wrap-main-item-result:first-child{margin-top:0!important}}.box-icon-modal{right:6px}.box-icon-modal,.box-icon-modal-3d{align-items:center;background-color:#f3f3f5;border-radius:100%;bottom:6px;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;position:absolute;width:32px;z-index:11}.box-icon-modal-3d{left:6px}.attribute-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;width:100%}.attribute-container .item-attribute{width:calc(50% - 4px)}.attribute-container .item-attribute:nth-child(odd):last-child{width:100%}.info-container{padding:16px 0 0}.info-container .info-sku{font-size:18px;font-weight:700;line-height:25.63px;padding-left:4px}.info-container .info-marking{background:#e0e0e0;border-radius:2px;font-size:16px;font-weight:400;letter-spacing:.2285714447px;line-height:12px;padding:4px;text-align:left;width:-webkit-max-content;width:max-content;word-break:break-all}.info-container .info-description{font-size:16px;font-weight:400;letter-spacing:.2285714447px;line-height:22.78px;padding:8px 0 0 4px}.info-container-card{background-color:#f3f3f5;display:flex;flex-direction:column;flex-grow:1;height:140px;padding:8px;z-index:40}.info-container-card.w-cta{height:168px}.info-container-card .info-sku{font-size:16px;font-weight:700;letter-spacing:.2285714447px;line-height:22.78px;padding-left:4px}.info-container-card .info-marking{-webkit-line-clamp:2;line-clamp:2;background:#e0e0e0;border-radius:2px;line-height:14px;max-width:-webkit-max-content;max-width:max-content;padding:2px 4px}.info-container-card .info-description,.info-container-card .info-marking{-webkit-box-orient:vertical;display:-webkit-box;font-size:14px;font-weight:400;letter-spacing:.2285714447px;overflow:hidden;word-break:break-all}.info-container-card .info-description{-webkit-line-clamp:3;line-clamp:2;line-height:19.94px;margin-top:8px;padding-left:4px}.splide__arrow{align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:flex;height:2em;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:flex;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}.splide__track.splide__track--slide{margin:0 46px}.splide__arrow{background:transparent}.splide__arrow svg{fill:#a3a3a3}.splide__track--nav>.splide__list>.splide__slide.is-active{border:2px solid #e0e0e0;border-radius:2px}.img-container,.thumbs-list{display:flex;justify-content:center}.img-container img{max-height:400px}.box-carosel .splide.splide--slide{align-items:center;display:flex;height:calc(100% - 48px);justify-content:center}.box-carosel .splide.splide--slide .splide__track{height:100%;padding-bottom:8px}.feedback-floating{display:flex;height:-webkit-fit-content;height:fit-content;justify-content:flex-end;position:absolute;right:0;z-index:42}.feedback-floating .feedback-section{border-radius:26px;bottom:40px;min-height:48px;min-width:332px;position:fixed}@media screen and (max-width:776px){.feedback-floating .feedback-section{bottom:80px;display:flex;height:-webkit-fit-content!important;height:fit-content!important;justify-content:center;left:50%;margin-left:0;min-height:40px;min-width:300px;transform:translateX(-50%)}.feedback-floating{left:0;margin-left:auto;margin-right:auto;right:0;width:77%}}.feedback-backdrop-blur{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.feedback-wrapper{align-items:center;border-radius:24px;color:#2b2c46;column-gap:22px;display:flex;flex-shrink:0;height:-webkit-fit-content;height:fit-content;justify-content:center;mix-blend-mode:multiply;padding:8px 8px 8px 24px;width:-webkit-fit-content;width:fit-content}@media screen and (max-width:776px){.feedback-wrapper{padding-left:16px;padding-right:6px;padding-top:6px}}.feedback-wrapper p{font-size:14px;font-weight:600}@media screen and (max-width:776px){.feedback-wrapper p{font-size:12px}}.feedback-wrapper .feedback-icon-wrapper{align-items:center;border-radius:100%;display:flex;justify-content:center;min-height:32px;min-width:32px}@media screen and (max-width:776px){.feedback-wrapper .feedback-icon-wrapper{min-height:28px;min-width:28px}}.feedback-wrapper .feedback-icon-wrapper-close{align-items:center;border-radius:100%;display:flex;justify-content:center;min-height:32px;min-width:32px}@media screen and (max-width:776px){.feedback-wrapper .feedback-icon-wrapper-close{min-height:28px;min-width:28px}}.feedback-wrapper .feedback-icon-wrapper-close:hover{background-color:#d3d1ff;cursor:pointer}.feedback-wrapper .feedback-icon-wrapper:hover{background-color:#fff;box-shadow:0 0 7.04px 0 rgba(0,0,0,.1);cursor:pointer}.feedback-wrapper .feedback-icon-wrapper svg{height:16px;width:16px}@media screen and (max-width:776px){.feedback-wrapper .feedback-icon-wrapper svg{height:14px;width:14px}.feedback-wrapper .feedback-icon-wrapper{height:25px;width:25px}}.feedback-success{align-items:center;background-color:#2b2c46;border-radius:26px;color:#fff;display:flex;font-size:14px;font-weight:600;justify-content:center;min-height:48px;text-align:center;width:100%}@media screen and (max-width:776px){.feedback-success{font-size:12px;min-height:42px}}.full-height{height:100dvh}.max-line-1{-webkit-line-clamp:1;max-height:33px}.max-line-1,.max-line-2{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.max-line-2{-webkit-line-clamp:2;max-height:66px}.box-wrap-loading{background:rgba(0,0,0,.459);height:100%;left:0;position:fixed;top:0;width:100%;z-index:1000}.loadingSpinCT{border-radius:100%;height:104px;left:0;margin:auto;position:absolute;right:0;width:104px;z-index:111}.loading-spinner{animation:spin 3s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.rfq-box{padding:24px 40px}@media screen and (max-width:776px){.rfq-box{padding:16px}}@media screen and (max-width:820px){.rfq-box{padding:16px}}.rfq-box .support-button-wrapper{flex-wrap:nowrap}@media screen and (max-width:820px){.rfq-box .support-button-wrapper{gap:8px}}.psol-comp-webviewer3d-container{border-radius:12px!important}.psol-comp-viewbase-iconbutton-44{height:32px!important;width:32px!important}.psol-comp-viewbase-iconbutton-44 .psol-comp-viewbase-svgicon{height:16px!important;width:16px!important}.psol-comp-webviewer3d-copyright-container a{color:#55566b!important;font-size:10px!important}.psol-comp-webviewer3d-copyright-container{margin-bottom:-2px!important}.ComponentCustomizeWebViewer3DFavoriteButtonsBarContainer{padding-bottom:6px!important}.psol-comp-viewbase-svgcontainer{display:none!important}.drag-n-drop-label{background-color:transparent;padding:24px}.drag-n-drop-label:hover{background-color:#fff;border-radius:24px;box-shadow:0 4px 12px rgba(0,0,0,.2)}.drag-n-drop-label:hover .drag-n-drop-inner{background-color:#f0efff;border-color:#e0e0e0;color:#2b2c46}.custom-modal{align-items:center;background-color:hsla(0,0%,9%,.502);bottom:0;display:flex;height:100vh;justify-content:center;left:0;position:absolute;right:0;top:0;width:100vw;z-index:99999}.custom-modal-body{background:#f3f3f5;overflow-y:auto;padding:32px}.custom-modal-body.geolocation{align-items:flex-start;display:flex;flex-direction:column;font-size:14px;font-weight:400;height:200px;justify-content:space-between;letter-spacing:.16px;line-height:16px;width:400px}.custom-modal-body.geolocation .geolocation-title{font-size:20px;font-weight:700;letter-spacing:0;line-height:24px}.custom-modal-body.geolocation button{align-self:flex-end;border:2px solid #3e36dc;border-radius:4px;font-size:16px;font-weight:600;letter-spacing:.16px;line-height:18px;padding:8px 32px}
4
- /*# sourceMappingURL=main.5fff4ca0.css.map*/