@cn-npm/search-autocomplete 0.2.16
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/.babelrc +3 -0
- package/.storybook/main.js +26 -0
- package/.storybook/preview.js +24 -0
- package/README.md +69 -0
- package/dist/App.d.ts +4 -0
- package/dist/bundle.js +406 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.d.ts +10 -0
- package/dist/components/Loader/Loader.d.ts +6 -0
- package/dist/components/SearchAutocomplete/SearchAutocomplete.d.ts +7 -0
- package/dist/components/SearchAutocompleteSection/SearchAutocompleteSection.d.ts +9 -0
- package/dist/components/SearchAutocompleteTag/SearchAutocompleteTag.d.ts +10 -0
- package/dist/components/index.d.ts +3 -0
- package/dist/index.d.ts +1 -0
- package/dist/reportWebVitals.d.ts +3 -0
- package/dist/search-result.d.ts +42 -0
- package/dist/setupTests.d.ts +1 -0
- package/generate-react-cli.json +15 -0
- package/package.json +110 -0
- package/postcss.config.js +6 -0
- package/public/favicon.ico +0 -0
- package/public/index.html +43 -0
- package/public/logo192.png +0 -0
- package/public/logo512.png +0 -0
- package/public/manifest.json +25 -0
- package/public/robots.txt +3 -0
- package/rollup.config.js +35 -0
- package/src/App.scss +0 -0
- package/src/App.tsx +13 -0
- package/src/assets/img/circle-close.svg +12 -0
- package/src/assets/img/search.svg +18 -0
- package/src/components/ErrorBoundary/ErrorBoundary.module.scss +1 -0
- package/src/components/ErrorBoundary/ErrorBoundary.tsx +33 -0
- package/src/components/Loader/Loader.module.scss +21 -0
- package/src/components/Loader/Loader.stories.tsx +12 -0
- package/src/components/Loader/Loader.test.tsx +12 -0
- package/src/components/Loader/Loader.tsx +18 -0
- package/src/components/SearchAutocomplete/SearchAutocomplete.module.scss +3 -0
- package/src/components/SearchAutocomplete/SearchAutocomplete.stories.tsx +41 -0
- package/src/components/SearchAutocomplete/SearchAutocomplete.test.tsx +86 -0
- package/src/components/SearchAutocomplete/SearchAutocomplete.tsx +310 -0
- package/src/components/SearchAutocompleteSection/SearchAutocompleteSection.module.scss +64 -0
- package/src/components/SearchAutocompleteSection/SearchAutocompleteSection.test.tsx +54 -0
- package/src/components/SearchAutocompleteSection/SearchAutocompleteSection.tsx +74 -0
- package/src/components/SearchAutocompleteTag/SearchAutocompleteTag.module.scss +6 -0
- package/src/components/SearchAutocompleteTag/SearchAutocompleteTag.test.tsx +52 -0
- package/src/components/SearchAutocompleteTag/SearchAutocompleteTag.tsx +67 -0
- package/src/components/index.tsx +4 -0
- package/src/index.css +320 -0
- package/src/index.tsx +19 -0
- package/src/react-app-env.d.ts +1 -0
- package/src/reportWebVitals.ts +15 -0
- package/src/search-result.ts +49 -0
- package/src/setupTests.ts +5 -0
- package/src/stories/Introduction.stories.mdx +211 -0
- package/src/stories/assets/code-brackets.svg +1 -0
- package/src/stories/assets/colors.svg +1 -0
- package/src/stories/assets/comments.svg +1 -0
- package/src/stories/assets/direction.svg +1 -0
- package/src/stories/assets/flow.svg +1 -0
- package/src/stories/assets/plugin.svg +1 -0
- package/src/stories/assets/repo.svg +1 -0
- package/src/stories/assets/stackalt.svg +1 -0
- package/tailwind.config.js +93 -0
- package/tsconfig.json +22 -0
package/.babelrc
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
module.exports = {
|
|
2
|
+
stories: ["../src/**/*.stories.mdx", "../src/**/*.stories.@(js|jsx|ts|tsx)"],
|
|
3
|
+
addons: [
|
|
4
|
+
"@storybook/addon-links",
|
|
5
|
+
"@storybook/addon-essentials",
|
|
6
|
+
"@storybook/addon-interactions",
|
|
7
|
+
"@storybook/preset-create-react-app",
|
|
8
|
+
"@storybook/addon-controls",
|
|
9
|
+
{
|
|
10
|
+
/**
|
|
11
|
+
* Fix Storybook issue with PostCSS@8
|
|
12
|
+
* @see https://github.com/storybookjs/storybook/issues/12668#issuecomment-773958085
|
|
13
|
+
*/
|
|
14
|
+
name: "@storybook/addon-postcss",
|
|
15
|
+
options: {
|
|
16
|
+
postcssLoaderOptions: {
|
|
17
|
+
implementation: require("postcss"),
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
framework: "@storybook/react",
|
|
23
|
+
core: {
|
|
24
|
+
builder: "@storybook/builder-webpack5",
|
|
25
|
+
},
|
|
26
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import "../src/index.css";
|
|
2
|
+
|
|
3
|
+
export const parameters = {
|
|
4
|
+
backgrounds: {
|
|
5
|
+
default: "white",
|
|
6
|
+
values: [
|
|
7
|
+
{
|
|
8
|
+
name: "white",
|
|
9
|
+
value: "#ffffff",
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
name: "sand",
|
|
13
|
+
value: "rgba(247,245,243, 0.5)",
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
},
|
|
17
|
+
actions: { argTypesRegex: "^on[A-Z].*" },
|
|
18
|
+
controls: {
|
|
19
|
+
matchers: {
|
|
20
|
+
color: /(background|color)$/i,
|
|
21
|
+
date: /Date$/,
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
};
|
package/README.md
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Search Autocomplete
|
|
2
|
+
|
|
3
|
+
Autocomplete search for searching CN charities.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Local project setup
|
|
8
|
+
|
|
9
|
+
### Installation
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm install
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
### Start
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npm run start
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Storybook
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
npm run storybook
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Test
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npm run test
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Build
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
npm run build
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Release (to NPM)
|
|
40
|
+
|
|
41
|
+
This step requires access to the private NPM repo.
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
npm run release
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## Usage
|
|
50
|
+
|
|
51
|
+
### Installation
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
npm install @sm2dev/search-autocomplete
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Importing component
|
|
58
|
+
|
|
59
|
+
```js
|
|
60
|
+
import { SearchAutocomplete } from "@sm2dev/search-autocomplete";
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Component
|
|
64
|
+
|
|
65
|
+
```html
|
|
66
|
+
<SearchAutocomplete />
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
---
|
package/dist/App.d.ts
ADDED
package/dist/bundle.js
ADDED
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var reactDebounceInput = require('react-debounce-input');
|
|
8
|
+
var classNames = require('classnames');
|
|
9
|
+
var Highlighter = require('react-highlight-words');
|
|
10
|
+
var CSSTransition = require('react-transition-group/CSSTransition');
|
|
11
|
+
var axios = require('axios');
|
|
12
|
+
|
|
13
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
14
|
+
|
|
15
|
+
function _interopNamespace(e) {
|
|
16
|
+
if (e && e.__esModule) return e;
|
|
17
|
+
var n = Object.create(null);
|
|
18
|
+
if (e) {
|
|
19
|
+
Object.keys(e).forEach(function (k) {
|
|
20
|
+
if (k !== 'default') {
|
|
21
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
22
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
get: function () { return e[k]; }
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
n["default"] = e;
|
|
30
|
+
return Object.freeze(n);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
34
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
35
|
+
var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
|
36
|
+
var Highlighter__default = /*#__PURE__*/_interopDefaultLegacy(Highlighter);
|
|
37
|
+
var CSSTransition__default = /*#__PURE__*/_interopDefaultLegacy(CSSTransition);
|
|
38
|
+
var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
|
|
39
|
+
|
|
40
|
+
/******************************************************************************
|
|
41
|
+
Copyright (c) Microsoft Corporation.
|
|
42
|
+
|
|
43
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
44
|
+
purpose with or without fee is hereby granted.
|
|
45
|
+
|
|
46
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
47
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
48
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
49
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
50
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
51
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
52
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
53
|
+
***************************************************************************** */
|
|
54
|
+
|
|
55
|
+
/* global Reflect, Promise */
|
|
56
|
+
var extendStatics = function (d, b) {
|
|
57
|
+
extendStatics = Object.setPrototypeOf || {
|
|
58
|
+
__proto__: []
|
|
59
|
+
} instanceof Array && function (d, b) {
|
|
60
|
+
d.__proto__ = b;
|
|
61
|
+
} || function (d, b) {
|
|
62
|
+
for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
return extendStatics(d, b);
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
function __extends(d, b) {
|
|
69
|
+
if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
70
|
+
extendStatics(d, b);
|
|
71
|
+
|
|
72
|
+
function __() {
|
|
73
|
+
this.constructor = d;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
77
|
+
}
|
|
78
|
+
var __assign = function () {
|
|
79
|
+
__assign = Object.assign || function __assign(t) {
|
|
80
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
81
|
+
s = arguments[i];
|
|
82
|
+
|
|
83
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
return t;
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
return __assign.apply(this, arguments);
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
function styleInject(css, ref) {
|
|
93
|
+
if (ref === void 0) ref = {};
|
|
94
|
+
var insertAt = ref.insertAt;
|
|
95
|
+
|
|
96
|
+
if (!css || typeof document === 'undefined') {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
var head = document.head || document.getElementsByTagName('head')[0];
|
|
101
|
+
var style = document.createElement('style');
|
|
102
|
+
style.type = 'text/css';
|
|
103
|
+
|
|
104
|
+
if (insertAt === 'top') {
|
|
105
|
+
if (head.firstChild) {
|
|
106
|
+
head.insertBefore(style, head.firstChild);
|
|
107
|
+
} else {
|
|
108
|
+
head.appendChild(style);
|
|
109
|
+
}
|
|
110
|
+
} else {
|
|
111
|
+
head.appendChild(style);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
if (style.styleSheet) {
|
|
115
|
+
style.styleSheet.cssText = css;
|
|
116
|
+
} else {
|
|
117
|
+
style.appendChild(document.createTextNode(css));
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
var css_248z$4 = ".SearchAutocomplete-module_SearchAutocomplete__7VjKd {\n position: relative;\n font-family: sofia-pro, sans-serif\n}";
|
|
122
|
+
var styles$3 = {"SearchAutocomplete":"SearchAutocomplete-module_SearchAutocomplete__7VjKd"};
|
|
123
|
+
styleInject(css_248z$4);
|
|
124
|
+
|
|
125
|
+
var css_248z$3 = ".SearchAutocompleteTag-module_SearchAutocompleteTag__edz93 {\n\n margin: 0.25rem;\n\n display: inline-block;\n\n border-radius: 0.5rem;\n\n --tw-bg-opacity: 1;\n\n background-color: rgb(242 243 247 / var(--tw-bg-opacity));\n\n padding-top: 0.5rem;\n\n padding-bottom: 0.5rem;\n\n padding-left: 0.75rem;\n\n padding-right: 0.75rem;\n\n text-align: left;\n\n font-family: sofia-pro, sans-serif;\n\n font-size: 1rem;\n\n font-weight: 400;\n\n line-height: 1.5rem;\n\n letter-spacing: 0em;\n\n --tw-text-opacity: 1;\n\n color: rgb(0 25 54 / var(--tw-text-opacity));\n\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n\n --tw-ring-color: transparent;\n\n --tw-ring-offset-width: 2px;\n\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, outline-color, focus-color;\n\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n\n transition-duration: 150ms\n}\n\n.SearchAutocompleteTag-module_SearchAutocompleteTag__edz93:hover {\n\n --tw-bg-opacity: 1;\n\n background-color: rgb(230 232 239 / var(--tw-bg-opacity))\n}\n\n.highlighted-text {\n\n font-weight: 600\n}";
|
|
126
|
+
var styles$2 = {"SearchAutocompleteTag":"SearchAutocompleteTag-module_SearchAutocompleteTag__edz93"};
|
|
127
|
+
styleInject(css_248z$3);
|
|
128
|
+
|
|
129
|
+
var Highlight = function (_a) {
|
|
130
|
+
var children = _a.children; _a.highlightIndex;
|
|
131
|
+
return (jsxRuntime.jsx("span", __assign({ className: "highlighted-text" }, { children: children })));
|
|
132
|
+
};
|
|
133
|
+
var SearchAutocompleteTag = function (props) {
|
|
134
|
+
// Custom event trigger
|
|
135
|
+
var triggerCustomEvent = function (e) {
|
|
136
|
+
e.preventDefault();
|
|
137
|
+
// Create custom event
|
|
138
|
+
var event = new CustomEvent("autocomplete-term-clicked", {
|
|
139
|
+
detail: {
|
|
140
|
+
name: props.name,
|
|
141
|
+
searchTerm: props.searchTerm,
|
|
142
|
+
section: props.section,
|
|
143
|
+
url: props.url,
|
|
144
|
+
},
|
|
145
|
+
});
|
|
146
|
+
// Trigger custom event
|
|
147
|
+
document.dispatchEvent(event);
|
|
148
|
+
if (props.url) {
|
|
149
|
+
window.location.href = props.url;
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
return (jsxRuntime.jsx("a", __assign({ href: props.url, className: classNames__default["default"](styles$2.SearchAutocompleteTag, "autocomplete-tag"
|
|
153
|
+
// ? 'bg-grey-100' : ''
|
|
154
|
+
), "data-section": props.section, "data-testid": "searchAutocompleteTag", onClick: function (e) { return triggerCustomEvent(e); } }, { children: props.searchTerm === "" ? (jsxRuntime.jsx("span", __assign({ className: "highlighted-text" }, { children: props.name }))) : (jsxRuntime.jsx(Highlighter__default["default"], { highlightTag: Highlight, searchWords: [props.searchTerm], textToHighlight: props.name })) }), props.ein));
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
var css_248z$2 = ".SearchAutocompleteSection-module_SearchAutocompleteSection__0llAG {\n\n margin-bottom: 1.5rem;\n\n font-family: sofia-pro, sans-serif\n}\n\n.autocomplete-section a:nth-child(6) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(6) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(7) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(7) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(8) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(8) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(9) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(9) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(10) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(10) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(11) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(11) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(12) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(12) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(13) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(13) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(14) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(14) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(15) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(15) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(16) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(16) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(17) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(17) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(18) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(18) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(19) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(19) {\n\n display: inline-block\n }\n}\n\n.autocomplete-section a:nth-child(20) {\n\n display: none\n}\n\n@media (min-width: 1000px) {\n\n .autocomplete-section a:nth-child(20) {\n\n display: inline-block\n }\n}";
|
|
158
|
+
var styles$1 = {"SearchAutocompleteSection":"SearchAutocompleteSection-module_SearchAutocompleteSection__0llAG"};
|
|
159
|
+
styleInject(css_248z$2);
|
|
160
|
+
|
|
161
|
+
// Custom limits based on section
|
|
162
|
+
var resultsLimit = function (title) {
|
|
163
|
+
switch (title.toLowerCase()) {
|
|
164
|
+
case "where to give now": {
|
|
165
|
+
return 3;
|
|
166
|
+
}
|
|
167
|
+
case "organizations": {
|
|
168
|
+
return 10;
|
|
169
|
+
}
|
|
170
|
+
case "causes": {
|
|
171
|
+
return 5;
|
|
172
|
+
}
|
|
173
|
+
default: {
|
|
174
|
+
return 20;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
var SearchAutocompleteSection = function (props) {
|
|
179
|
+
var _a;
|
|
180
|
+
return (jsxRuntime.jsxs("div", __assign({ className: classNames__default["default"](styles$1.SearchAutocompleteSection, "autocomplete-section"), "data-testid": "searchAutocompleteSection" }, { children: [jsxRuntime.jsx("h2", __assign({ className: "text-night-sky-800 mb-2 text-base", "data-testid": "searchResultTitle" }, { children: props.title })), jsxRuntime.jsx("div", __assign({ className: "flow-root" }, { children: jsxRuntime.jsxs("div", __assign({ className: "-m-1 flex flex-wrap autocomplete-section", "data-testid": "searchTag" }, { children: [(props.results == null || props.results.length === 0) && (jsxRuntime.jsx("p", __assign({ className: "pl-3" }, { children: "No results found" }))), props.results &&
|
|
181
|
+
props.results.length > 0 &&
|
|
182
|
+
((_a = props.results) === null || _a === void 0 ? void 0 : _a.slice(0, resultsLimit(props.title || "")).map(function (results) { return (jsxRuntime.jsx(SearchAutocompleteTag, { section: props.title || "", searchTerm: props.searchTerm, ein: results.ein, name: results.title, url: results.url }, results.url)); }))] })) }))] })));
|
|
183
|
+
};
|
|
184
|
+
|
|
185
|
+
var css_248z$1 = ".Loader-module_Loader__9Xyva {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n display: inline-block;\n border-top: 3px solid #fff;\n border-right: 3px solid transparent;\n box-sizing: border-box;\n animation: Loader-module_rotation__E9sHi 1s linear infinite;\n --tw-border-opacity: 1;\n border-top-color: rgb(53 95 254 / var(--tw-border-opacity));\n}\n\n@keyframes Loader-module_rotation__E9sHi {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}";
|
|
186
|
+
var styles = {"Loader":"Loader-module_Loader__9Xyva","rotation":"Loader-module_rotation__E9sHi"};
|
|
187
|
+
styleInject(css_248z$1);
|
|
188
|
+
|
|
189
|
+
// Loader component
|
|
190
|
+
var Loader = function (props) { return (jsxRuntime.jsx("span", { className: classNames__default["default"](styles.Loader, props.className), "data-testid": "Loader" })); };
|
|
191
|
+
|
|
192
|
+
function _extends$1() { _extends$1 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
|
|
193
|
+
|
|
194
|
+
const SvgSearch = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$1({
|
|
195
|
+
"data-name": "Layer 1",
|
|
196
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
197
|
+
viewBox: "0 0 16.14 16.14"
|
|
198
|
+
}, props), /*#__PURE__*/React__namespace.createElement("g", {
|
|
199
|
+
"data-name": "*System_Icons"
|
|
200
|
+
}, /*#__PURE__*/React__namespace.createElement("g", {
|
|
201
|
+
"data-name": "System/Icons"
|
|
202
|
+
}, /*#__PURE__*/React__namespace.createElement("g", {
|
|
203
|
+
"data-name": "atom/icon/search"
|
|
204
|
+
}, /*#__PURE__*/React__namespace.createElement("path", {
|
|
205
|
+
d: "M7 .02c-3.86 0-7 3.14-7 7s3.14 7 7 7c1.18 0 2.34-.28 3.32-.82.08.09.17.18.26.26l2 2a2.032 2.032 0 0 0 3.5-.86c.18-.74-.06-1.51-.63-2.01l-2-2c-.1-.1-.2-.18-.32-.26.54-.98.88-2.12.88-3.32A6.995 6.995 0 0 0 7.02 0L7 .02Zm0 2c2.78 0 5 2.22 5 5 0 1.32-.48 2.54-1.32 3.44l-.06.06c-.09.08-.18.17-.26.26-.88.8-2.08 1.26-3.38 1.26-2.78 0-5-2.22-5-5s2.22-5 5-5L7 2.02Z",
|
|
206
|
+
style: {
|
|
207
|
+
fillRule: "evenodd"
|
|
208
|
+
},
|
|
209
|
+
"data-name": "icon/dark/magnifying-glass"
|
|
210
|
+
})))));
|
|
211
|
+
|
|
212
|
+
var _g;
|
|
213
|
+
|
|
214
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
215
|
+
|
|
216
|
+
const SvgCircleClose = props => /*#__PURE__*/React__namespace.createElement("svg", _extends({
|
|
217
|
+
"data-name": "Layer 1",
|
|
218
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
219
|
+
viewBox: "0 0 18 18"
|
|
220
|
+
}, props), _g || (_g = /*#__PURE__*/React__namespace.createElement("g", {
|
|
221
|
+
"data-name": "*System_Icons"
|
|
222
|
+
}, /*#__PURE__*/React__namespace.createElement("g", {
|
|
223
|
+
"data-name": "System/Icons"
|
|
224
|
+
}, /*#__PURE__*/React__namespace.createElement("path", {
|
|
225
|
+
d: "M9 0a9 9 0 1 0 9 9c0-2.39-.95-4.68-2.64-6.36A9.001 9.001 0 0 0 9 0Zm4.12 12.05c.29.29.3.77 0 1.06-.29.29-.77.3-1.06 0l-2.93-2.93s-.08-.06-.14-.06-.1.02-.14.06l-2.92 2.93c-.29.29-.77.29-1.06 0a.754.754 0 0 1 0-1.06l2.92-2.92s.06-.08.06-.14-.02-.1-.06-.14L4.87 5.93c-.25-.3-.24-.74.04-1.02.28-.28.72-.29 1.02-.04l2.92 2.92s.08.06.14.06.1-.02.14-.06l2.93-2.92c.3-.25.74-.24 1.02.04.28.28.29.72.04 1.02l-2.93 2.92s-.06.08-.06.14.02.1.06.14l2.93 2.92Z",
|
|
226
|
+
"data-name": "streamline-icon-remove-circle@48x48"
|
|
227
|
+
})))));
|
|
228
|
+
|
|
229
|
+
var ErrorBoundary = /** @class */ (function (_super) {
|
|
230
|
+
__extends(ErrorBoundary, _super);
|
|
231
|
+
function ErrorBoundary(props) {
|
|
232
|
+
var _this = _super.call(this, props) || this;
|
|
233
|
+
_this.state = { hasError: false };
|
|
234
|
+
return _this;
|
|
235
|
+
}
|
|
236
|
+
ErrorBoundary.getDerivedStateFromError = function (error) {
|
|
237
|
+
// Update state so the next render will show the fallback UI.
|
|
238
|
+
return { hasError: true };
|
|
239
|
+
};
|
|
240
|
+
ErrorBoundary.prototype.componentDidCatch = function (error, errorInfo) {
|
|
241
|
+
// You can also log the error to an error reporting service
|
|
242
|
+
// logErrorToMyService(error, errorInfo);
|
|
243
|
+
};
|
|
244
|
+
ErrorBoundary.prototype.render = function () {
|
|
245
|
+
if (this.state.hasError) {
|
|
246
|
+
// Render fallback UI
|
|
247
|
+
return (jsxRuntime.jsx("div", __assign({ className: "px-6 h-full mb-12 max-h-[70vh] overflow-y-auto" }, { children: jsxRuntime.jsx("p", { children: "Sorry, there was a problem. Please try your search again." }) })));
|
|
248
|
+
}
|
|
249
|
+
return this.props.children;
|
|
250
|
+
};
|
|
251
|
+
return ErrorBoundary;
|
|
252
|
+
}(React__default["default"].Component));
|
|
253
|
+
|
|
254
|
+
var SearchAutocomplete = function (props) {
|
|
255
|
+
// Set state variables
|
|
256
|
+
var _a = React.useState(props.open || false), open = _a[0], setOpen = _a[1];
|
|
257
|
+
var _b = React.useState(props.label || "Search by Charity or Cause"), label = _b[0], setLabel = _b[1];
|
|
258
|
+
var _c = React.useState(false), loading = _c[0], setLoading = _c[1];
|
|
259
|
+
var _d = React.useState(""), searchTerm = _d[0], setSearchTerm = _d[1];
|
|
260
|
+
var _e = React.useState({
|
|
261
|
+
data: {
|
|
262
|
+
searchAutocomplete: [],
|
|
263
|
+
},
|
|
264
|
+
}), searchData = _e[0], setSearchData = _e[1];
|
|
265
|
+
var _f = React.useState(false), hasError = _f[0], setHasError = _f[1];
|
|
266
|
+
var _g = React.useState(0), selectedTag = _g[0], setSelectedTag = _g[1];
|
|
267
|
+
// On selected tag change
|
|
268
|
+
React__default["default"].useEffect(function () {
|
|
269
|
+
var tags = document.querySelectorAll(".autocomplete-tag, .autocomplete-custom-search");
|
|
270
|
+
tags.forEach(function (x, i) {
|
|
271
|
+
x.classList.remove("autocomplete-selected", "!bg-grey-100", "!ring-blue-600");
|
|
272
|
+
if (i + 1 === selectedTag) {
|
|
273
|
+
x.classList.add("autocomplete-selected", tags[i].classList.contains("autocomplete-tag")
|
|
274
|
+
? "!bg-grey-100"
|
|
275
|
+
: "none", "!ring-blue-600");
|
|
276
|
+
x.scrollIntoView({
|
|
277
|
+
behavior: "smooth",
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
});
|
|
281
|
+
}, [selectedTag]);
|
|
282
|
+
// On open props change
|
|
283
|
+
React__default["default"].useEffect(function () {
|
|
284
|
+
setOpen(props.open || false);
|
|
285
|
+
}, [props.open]);
|
|
286
|
+
// On open change
|
|
287
|
+
React__default["default"].useEffect(function () {
|
|
288
|
+
if (!open) {
|
|
289
|
+
setSelectedTag(0);
|
|
290
|
+
}
|
|
291
|
+
}, [open]);
|
|
292
|
+
// On label change
|
|
293
|
+
React__default["default"].useEffect(function () {
|
|
294
|
+
setLabel(props.label || "Search by Charity or Cause");
|
|
295
|
+
}, [props.label]);
|
|
296
|
+
// On search term change
|
|
297
|
+
React__default["default"].useEffect(function () {
|
|
298
|
+
setLoading(true);
|
|
299
|
+
setSelectedTag(0);
|
|
300
|
+
// Trigger custom event for analytics
|
|
301
|
+
if (searchTerm) {
|
|
302
|
+
// Create custom event
|
|
303
|
+
var event = new CustomEvent("autocomplete-search", {
|
|
304
|
+
detail: {
|
|
305
|
+
name: searchTerm,
|
|
306
|
+
},
|
|
307
|
+
});
|
|
308
|
+
// Trigger custom event
|
|
309
|
+
document.dispatchEvent(event);
|
|
310
|
+
}
|
|
311
|
+
var controller = new AbortController();
|
|
312
|
+
// Get results from API
|
|
313
|
+
axios__default["default"]({
|
|
314
|
+
signal: controller.signal,
|
|
315
|
+
url: "https://graph.charitynavigator.org/graphql",
|
|
316
|
+
params: {
|
|
317
|
+
user_key: "67a233b3ae2f5690bce775c1760925f2",
|
|
318
|
+
},
|
|
319
|
+
method: "post",
|
|
320
|
+
data: {
|
|
321
|
+
query: "\n query SearchQuery {\n searchAutocomplete(term: \"".concat(searchTerm, "\") {\n title\n results {\n ein\n title\n url\n }\n }\n }\n "),
|
|
322
|
+
},
|
|
323
|
+
})
|
|
324
|
+
.then(function (res) {
|
|
325
|
+
var data = res.data;
|
|
326
|
+
setSearchData(data);
|
|
327
|
+
setHasError(false);
|
|
328
|
+
setLoading(false);
|
|
329
|
+
})
|
|
330
|
+
.catch(function (e) {
|
|
331
|
+
setSearchData({});
|
|
332
|
+
setHasError(true);
|
|
333
|
+
setLoading(false);
|
|
334
|
+
});
|
|
335
|
+
return function () {
|
|
336
|
+
controller.abort();
|
|
337
|
+
};
|
|
338
|
+
}, [searchTerm]);
|
|
339
|
+
// Clear search
|
|
340
|
+
var clearSearch = function (e) {
|
|
341
|
+
e.preventDefault();
|
|
342
|
+
setSearchTerm("");
|
|
343
|
+
};
|
|
344
|
+
// Handle key events
|
|
345
|
+
var keyDownHandler = function (e) {
|
|
346
|
+
var tags = document.querySelectorAll(".autocomplete-tag, .autocomplete-custom-search");
|
|
347
|
+
switch (e.key) {
|
|
348
|
+
case "ArrowUp": {
|
|
349
|
+
setSelectedTag(Math.max(0, selectedTag - 1));
|
|
350
|
+
break;
|
|
351
|
+
}
|
|
352
|
+
case "ArrowDown": {
|
|
353
|
+
setOpen(true);
|
|
354
|
+
setSelectedTag(Math.min(tags.length, selectedTag + 1));
|
|
355
|
+
break;
|
|
356
|
+
}
|
|
357
|
+
case "ArrowLeft": {
|
|
358
|
+
if (selectedTag > 0) {
|
|
359
|
+
setSelectedTag(Math.max(0, selectedTag - 1));
|
|
360
|
+
}
|
|
361
|
+
break;
|
|
362
|
+
}
|
|
363
|
+
case "ArrowRight": {
|
|
364
|
+
setOpen(true);
|
|
365
|
+
if (selectedTag > 0) {
|
|
366
|
+
setSelectedTag(Math.min(tags.length, selectedTag + 1));
|
|
367
|
+
}
|
|
368
|
+
break;
|
|
369
|
+
}
|
|
370
|
+
case "Tab": {
|
|
371
|
+
break;
|
|
372
|
+
}
|
|
373
|
+
case "Enter": {
|
|
374
|
+
if (selectedTag > 0) {
|
|
375
|
+
e.preventDefault();
|
|
376
|
+
tags[selectedTag - 1].click();
|
|
377
|
+
}
|
|
378
|
+
break;
|
|
379
|
+
}
|
|
380
|
+
case "Space": {
|
|
381
|
+
break;
|
|
382
|
+
}
|
|
383
|
+
case "Escape": {
|
|
384
|
+
setOpen(false);
|
|
385
|
+
setSelectedTag(0);
|
|
386
|
+
break;
|
|
387
|
+
}
|
|
388
|
+
case "Home": {
|
|
389
|
+
setSelectedTag(1);
|
|
390
|
+
break;
|
|
391
|
+
}
|
|
392
|
+
case "End": {
|
|
393
|
+
setSelectedTag(tags.length);
|
|
394
|
+
break;
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
};
|
|
398
|
+
return (jsxRuntime.jsxs("div", __assign({ className: classNames__default["default"](styles$3.SearchAutocomplete, "autocomplete"), "data-testid": "SearchAutocomplete" }, { children: [jsxRuntime.jsxs("form", __assign({ action: "/search?q=".concat(searchTerm), className: "flex font-sofia-pro", autoComplete: "off" }, { children: [jsxRuntime.jsx("label", __assign({ htmlFor: "search", className: "hidden" }, { children: label })), jsxRuntime.jsxs("div", __assign({ className: "relative flex flex-grow" }, { children: [jsxRuntime.jsx(reactDebounceInput.DebounceInput, { type: "text", name: "q", id: "search", placeholder: label, className: "flex-auto pr-0 items-stretch flex-grow text-night-sky-800 ring-0 py-0 shadow-none focus:ring-0 bg-white transition-colors border-opacity-100 hover:bg-grey-100 hover:border-grey-500 hover:border-opacity-50 focus:bg-grey-100 focus:border-blue-400 inline-block sm:text-sm border-grey-500 rounded-md rounded-tr-none rounded-br-none placeholder:text-gray-600", debounceTimeout: 300, minLength: 2, value: searchTerm, onChange: function (e) { return setSearchTerm(e.target.value); }, onClick: function () { return setOpen(true); }, onFocus: function () { return setOpen(true); }, onBlur: function () { return setOpen(false); }, onKeyDown: function (e) { return keyDownHandler(e); } }), searchTerm !== "" && (jsxRuntime.jsx("button", __assign({ type: "button", className: "absolute right-3 top-[50%] -translate-y-[50%] text-night-sky-800 hover:text-blue-500 transition-colors !bg-[transparent] cursor-pointer", onClick: clearSearch }, { children: jsxRuntime.jsx(SvgCircleClose, { className: "fill-night-sky-800 hover:fill-blue-500 h-4 w-4" }) })))] })), jsxRuntime.jsx("button", __assign({ type: "submit", className: "inline-flex transition-colors items-center justify-center px-4 h-[38px] font-medium rounded-md shadow-sm border border-blue-500 text-white bg-blue-500 hover:bg-blue-600 hover:border-blue-600 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 sm:text-sm rounded-tl-none rounded-bl-none" }, { children: jsxRuntime.jsx(SvgSearch, { className: "fill-white h-4 w-4" }) }))] })), jsxRuntime.jsx("div", __assign({ className: "relative" }, { children: jsxRuntime.jsx(CSSTransition__default["default"], __assign({ mountOnEnter: true, unmountOnExit: true, in: open, timeout: 300, classNames: "fade-slide", "data-testid": "searchResults" }, { children: jsxRuntime.jsxs("div", __assign({ className: classNames__default["default"]("search-results-container absolute top-0 left-1/2 -translate-x-1/2 mt-2 bg-white py-5 rounded-[1.25rem] z-50 shadow-lg border border-[#a6abbd] border-opacity-60 w-full tablet:w-[70vw] min-h-[8rem] overflow-hidden") }, { children: [jsxRuntime.jsxs(ErrorBoundary, { children: [loading && (jsxRuntime.jsx(Loader, { "data-testid": "Loader", className: "absolute top-5 right-5" })), jsxRuntime.jsxs("div", __assign({ className: "px-6 h-full mb-12 max-h-[70vh] overflow-y-auto", "data-testid": "Sections" }, { children: [hasError && (jsxRuntime.jsx("p", { children: "Sorry, there was a problem. Please try your search again." })), searchData.data &&
|
|
399
|
+
searchData.data.searchAutocomplete &&
|
|
400
|
+
searchData.data.searchAutocomplete.map(function (section) { return (jsxRuntime.jsx(SearchAutocompleteSection, { searchTerm: searchTerm, title: section.title, results: section.results }, section.title)); })] }))] }), jsxRuntime.jsx("div", __assign({ className: "border-t border-[#a6abbd] border-opacity-60 flex items-center absolute bottom-0 left-0 w-full bg-white h-16" }, { children: jsxRuntime.jsxs("a", __assign({ href: "/search?q=".concat(searchTerm), className: "px-3 py-1 ml-6 flex items-center space-x-3 ring ring-1 ring-offset-2 ring-transparent transition-colors text-blue-500 hover:text-blue-600 rounded-lg autocomplete-custom-search" }, { children: [jsxRuntime.jsx(SvgSearch, { className: "fill-blue-500 hover:fill-blue-600 h-4 w-4" }), jsxRuntime.jsx("span", __assign({ className: "font-semibold text-[1.125rem] " }, { children: searchTerm === "" ? "Custom Search" : "View All Results" }))] })) }))] })) })) }))] })));
|
|
401
|
+
};
|
|
402
|
+
|
|
403
|
+
var css_248z = "/*\n! tailwindcss v3.1.8 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: currentColor; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: '';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user's configured `sans` font-family by default.\n*/\n\nhtml {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */ /* 3 */\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 4 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user's configured `mono` font family by default.\n2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user's configured gray 400 color.\n*/\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role=\"button\"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don't get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n[type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select {\n appearance: none;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n border-radius: 0px;\n padding-top: 0.5rem;\n padding-right: 0.75rem;\n padding-bottom: 0.5rem;\n padding-left: 0.75rem;\n font-size: 1rem;\n line-height: 1.5rem;\n --tw-shadow: 0 0 #0000;\n}\n\n[type='text']:focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #2563eb;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n border-color: #2563eb;\n}\n\ninput::placeholder,textarea::placeholder {\n color: #6b7280;\n opacity: 1;\n}\n\n::-webkit-datetime-edit-fields-wrapper {\n padding: 0;\n}\n\n::-webkit-date-and-time-value {\n min-height: 1.5em;\n}\n\n::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field {\n padding-top: 0;\n padding-bottom: 0;\n}\n\nselect {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e\");\n background-position: right 0.5rem center;\n background-repeat: no-repeat;\n background-size: 1.5em 1.5em;\n padding-right: 2.5rem;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n}\n\n[multiple] {\n background-image: initial;\n background-position: initial;\n background-repeat: unset;\n background-size: initial;\n padding-right: 0.75rem;\n -webkit-print-color-adjust: unset;\n print-color-adjust: unset;\n}\n\n[type='checkbox'],[type='radio'] {\n appearance: none;\n padding: 0;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n display: inline-block;\n vertical-align: middle;\n background-origin: border-box;\n -webkit-user-select: none;\n user-select: none;\n flex-shrink: 0;\n height: 1rem;\n width: 1rem;\n color: #2563eb;\n background-color: #fff;\n border-color: #6b7280;\n border-width: 1px;\n --tw-shadow: 0 0 #0000;\n}\n\n[type='checkbox'] {\n border-radius: 0px;\n}\n\n[type='radio'] {\n border-radius: 100%;\n}\n\n[type='checkbox']:focus,[type='radio']:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 2px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: #2563eb;\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);\n}\n\n[type='checkbox']:checked,[type='radio']:checked {\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n\n[type='checkbox']:checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\");\n}\n\n[type='radio']:checked {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\");\n}\n\n[type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n\n[type='checkbox']:indeterminate {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e\");\n border-color: transparent;\n background-color: currentColor;\n background-size: 100% 100%;\n background-position: center;\n background-repeat: no-repeat;\n}\n\n[type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus {\n border-color: transparent;\n background-color: currentColor;\n}\n\n[type='file'] {\n background: unset;\n border-color: inherit;\n border-width: 0;\n border-radius: 0;\n padding: 0;\n font-size: unset;\n line-height: inherit;\n}\n\n[type='file']:focus {\n outline: 1px solid ButtonText;\n outline: 1px auto -webkit-focus-ring-color;\n}\n @import url(\"https://p.typekit.net/p.css?s=1&k=etf0mna&ht=tk&f=24536.24553.24554.24558.24559.24539.24540.24545.24546.24547.24548.24549.24552.24580.24581.24586.24587.24588.24589.24590.24591&a=27633482&app=typekit&e=css\");\n\n @font-face {\n font-family: \"sofia-pro-soft\";\n src: url(\"https://use.typekit.net/af/745ea3/00000000000000007735a146/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/745ea3/00000000000000007735a146/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/745ea3/00000000000000007735a146/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 500;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-soft\";\n src: url(\"https://use.typekit.net/af/cdf40b/00000000000000007735a147/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/cdf40b/00000000000000007735a147/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/cdf40b/00000000000000007735a147/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 700;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-soft\";\n src: url(\"https://use.typekit.net/af/691282/00000000000000007735a149/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/691282/00000000000000007735a149/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/691282/00000000000000007735a149/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 700;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-soft\";\n src: url(\"https://use.typekit.net/af/54ce76/00000000000000007735a154/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/54ce76/00000000000000007735a154/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/54ce76/00000000000000007735a154/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 400;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-soft\";\n src: url(\"https://use.typekit.net/af/9f41be/00000000000000007735a157/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/9f41be/00000000000000007735a157/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/9f41be/00000000000000007735a157/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 400;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro\";\n src: url(\"https://use.typekit.net/af/5d97ff/00000000000000007735f999/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/5d97ff/00000000000000007735f999/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/5d97ff/00000000000000007735f999/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 700;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro\";\n src: url(\"https://use.typekit.net/af/66e20c/00000000000000007735f993/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/66e20c/00000000000000007735f993/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/66e20c/00000000000000007735f993/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 700;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro\";\n src: url(\"https://use.typekit.net/af/19ced7/00000000000000007735f992/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/19ced7/00000000000000007735f992/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/19ced7/00000000000000007735f992/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 500;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro\";\n src: url(\"https://use.typekit.net/af/33e8a4/00000000000000007735f99b/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/33e8a4/00000000000000007735f99b/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/33e8a4/00000000000000007735f99b/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 500;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro\";\n src: url(\"https://use.typekit.net/af/b718ff/00000000000000007735f98d/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/b718ff/00000000000000007735f98d/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/b718ff/00000000000000007735f98d/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 400;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro\";\n src: url(\"https://use.typekit.net/af/c09857/00000000000000007735f98c/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/c09857/00000000000000007735f98c/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/c09857/00000000000000007735f98c/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 400;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro\";\n src: url(\"https://use.typekit.net/af/262452/00000000000000007735f99a/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/262452/00000000000000007735f99a/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/262452/00000000000000007735f99a/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 600;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro\";\n src: url(\"https://use.typekit.net/af/36f509/00000000000000007735f994/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/36f509/00000000000000007735f994/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/36f509/00000000000000007735f994/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 600;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-condensed\";\n src: url(\"https://use.typekit.net/af/8b3e11/00000000000000007735a150/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/8b3e11/00000000000000007735a150/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/8b3e11/00000000000000007735a150/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 700;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-condensed\";\n src: url(\"https://use.typekit.net/af/2fe268/00000000000000007735a153/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/2fe268/00000000000000007735a153/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/2fe268/00000000000000007735a153/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 700;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-condensed\";\n src: url(\"https://use.typekit.net/af/a33c9d/00000000000000007735a15e/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/a33c9d/00000000000000007735a15e/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/a33c9d/00000000000000007735a15e/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 500;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-condensed\";\n src: url(\"https://use.typekit.net/af/fa5448/00000000000000007735a161/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/fa5448/00000000000000007735a161/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/fa5448/00000000000000007735a161/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 500;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-condensed\";\n src: url(\"https://use.typekit.net/af/cf0830/00000000000000007735a162/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/cf0830/00000000000000007735a162/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/cf0830/00000000000000007735a162/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 400;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-condensed\";\n src: url(\"https://use.typekit.net/af/7da024/00000000000000007735a164/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/7da024/00000000000000007735a164/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/7da024/00000000000000007735a164/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 400;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-condensed\";\n src: url(\"https://use.typekit.net/af/ef0e2d/00000000000000007735a166/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/ef0e2d/00000000000000007735a166/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/ef0e2d/00000000000000007735a166/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: normal;\n font-weight: 600;\n font-stretch: normal;\n }\n\n @font-face {\n font-family: \"sofia-pro-condensed\";\n src: url(\"https://use.typekit.net/af/1ff8be/00000000000000007735a168/30/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3\")\n format(\"woff2\"),\n url(\"https://use.typekit.net/af/1ff8be/00000000000000007735a168/30/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3\")\n format(\"woff\"),\n url(\"https://use.typekit.net/af/1ff8be/00000000000000007735a168/30/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3\")\n format(\"opentype\");\n font-display: auto;\n font-style: italic;\n font-weight: 600;\n font-stretch: normal;\n }\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.static {\n position: static;\n}\n.absolute {\n position: absolute;\n}\n.relative {\n position: relative;\n}\n.right-3 {\n right: 0.75rem;\n}\n.top-\\[50\\%\\] {\n top: 50%;\n}\n.top-0 {\n top: 0px;\n}\n.left-1\\/2 {\n left: 50%;\n}\n.top-5 {\n top: 1.25rem;\n}\n.right-5 {\n right: 1.25rem;\n}\n.bottom-0 {\n bottom: 0px;\n}\n.left-0 {\n left: 0px;\n}\n.z-50 {\n z-index: 50;\n}\n.-m-1 {\n margin: -0.25rem;\n}\n.mb-12 {\n margin-bottom: 3rem;\n}\n.mt-2 {\n margin-top: 0.5rem;\n}\n.ml-6 {\n margin-left: 1.5rem;\n}\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n.block {\n display: block;\n}\n.inline-block {\n display: inline-block;\n}\n.flex {\n display: flex;\n}\n.inline-flex {\n display: inline-flex;\n}\n.table {\n display: table;\n}\n.flow-root {\n display: flow-root;\n}\n.hidden {\n display: none;\n}\n.h-full {\n height: 100%;\n}\n.h-4 {\n height: 1rem;\n}\n.h-\\[38px\\] {\n height: 38px;\n}\n.h-16 {\n height: 4rem;\n}\n.max-h-\\[70vh\\] {\n max-height: 70vh;\n}\n.min-h-\\[8rem\\] {\n min-height: 8rem;\n}\n.w-4 {\n width: 1rem;\n}\n.w-full {\n width: 100%;\n}\n.flex-auto {\n flex: 1 1 auto;\n}\n.flex-grow {\n flex-grow: 1;\n}\n.-translate-y-\\[50\\%\\] {\n --tw-translate-y: -50%;\n 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));\n}\n.-translate-x-1\\/2 {\n --tw-translate-x: -50%;\n 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));\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.flex-wrap {\n flex-wrap: wrap;\n}\n.items-center {\n align-items: center;\n}\n.items-stretch {\n align-items: stretch;\n}\n.justify-center {\n justify-content: center;\n}\n.space-x-3 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.75rem * var(--tw-space-x-reverse));\n margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.overflow-hidden {\n overflow: hidden;\n}\n.overflow-y-auto {\n overflow-y: auto;\n}\n.rounded-md {\n border-radius: 0.375rem;\n}\n.rounded-\\[1\\.25rem\\] {\n border-radius: 1.25rem;\n}\n.rounded-lg {\n border-radius: 0.5rem;\n}\n.rounded-tr-none {\n border-top-right-radius: 0px;\n}\n.rounded-br-none {\n border-bottom-right-radius: 0px;\n}\n.rounded-tl-none {\n border-top-left-radius: 0px;\n}\n.rounded-bl-none {\n border-bottom-left-radius: 0px;\n}\n.border {\n border-width: 1px;\n}\n.border-t {\n border-top-width: 1px;\n}\n.border-grey-500 {\n --tw-border-opacity: 1;\n border-color: rgb(155 163 192 / var(--tw-border-opacity));\n}\n.border-blue-500 {\n --tw-border-opacity: 1;\n border-color: rgb(53 95 254 / var(--tw-border-opacity));\n}\n.border-\\[\\#a6abbd\\] {\n --tw-border-opacity: 1;\n border-color: rgb(166 171 189 / var(--tw-border-opacity));\n}\n.border-opacity-100 {\n --tw-border-opacity: 1;\n}\n.border-opacity-60 {\n --tw-border-opacity: 0.6;\n}\n.\\!bg-grey-100 {\n --tw-bg-opacity: 1 !important;\n background-color: rgb(230 232 239 / var(--tw-bg-opacity)) !important;\n}\n.bg-white {\n --tw-bg-opacity: 1;\n background-color: rgb(255 255 255 / var(--tw-bg-opacity));\n}\n.\\!bg-\\[transparent\\] {\n background-color: transparent !important;\n}\n.bg-blue-500 {\n --tw-bg-opacity: 1;\n background-color: rgb(53 95 254 / var(--tw-bg-opacity));\n}\n.bg-grey-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(230 232 239 / var(--tw-bg-opacity));\n}\n.fill-night-sky-800 {\n fill: #001936;\n}\n.fill-white {\n fill: #FFFFFF;\n}\n.fill-blue-500 {\n fill: #355FFE;\n}\n.px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.py-0 {\n padding-top: 0px;\n padding-bottom: 0px;\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.py-5 {\n padding-top: 1.25rem;\n padding-bottom: 1.25rem;\n}\n.px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n.pr-0 {\n padding-right: 0px;\n}\n.pl-3 {\n padding-left: 0.75rem;\n}\n.font-sofia-pro {\n font-family: sofia-pro, sans-serif;\n}\n.text-\\[1\\.125rem\\] {\n font-size: 1.125rem;\n}\n.text-base {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n.font-medium {\n font-weight: 500;\n}\n.font-semibold {\n font-weight: 600;\n}\n.text-night-sky-800 {\n --tw-text-opacity: 1;\n color: rgb(0 25 54 / var(--tw-text-opacity));\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity));\n}\n.text-blue-500 {\n --tw-text-opacity: 1;\n color: rgb(53 95 254 / var(--tw-text-opacity));\n}\n.shadow-none {\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n.ring-0 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.ring {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.ring-1 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n.\\!ring-blue-600 {\n --tw-ring-opacity: 1 !important;\n --tw-ring-color: rgb(35 74 224 / var(--tw-ring-opacity)) !important;\n}\n.ring-transparent {\n --tw-ring-color: transparent;\n}\n.ring-offset-2 {\n --tw-ring-offset-width: 2px;\n}\n.transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, outline-color, focus-color;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n/* Search Results Container Styles */\n.fade-slide-enter {\n --tw-translate-y: -0.75rem;\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n 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));\n opacity: 0;\n}\n\n.fade-slide-enter-active, \n.fade-slide-enter-done {\n --tw-translate-y: 0px;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n 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));\n opacity: 1;\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 300ms;\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n\n.fade-slide-exit {\n --tw-translate-y: 0px;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n 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));\n opacity: 1;\n}\n\n.fade-slide-exit-active, \n.fade-slide-exit-done {\n --tw-translate-y: -0.75rem;\n --tw-scale-x: .95;\n --tw-scale-y: .95;\n 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));\n opacity: 0;\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 300ms;\n transition-timing-function: cubic-bezier(0, 0, 0.2, 1);\n}\n\n.hover\\:border-grey-500:hover {\n --tw-border-opacity: 1;\n border-color: rgb(155 163 192 / var(--tw-border-opacity));\n}\n\n.hover\\:border-blue-600:hover {\n --tw-border-opacity: 1;\n border-color: rgb(35 74 224 / var(--tw-border-opacity));\n}\n\n.hover\\:border-opacity-50:hover {\n --tw-border-opacity: 0.5;\n}\n\n.hover\\:bg-grey-100:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(230 232 239 / var(--tw-bg-opacity));\n}\n\n.hover\\:bg-blue-600:hover {\n --tw-bg-opacity: 1;\n background-color: rgb(35 74 224 / var(--tw-bg-opacity));\n}\n\n.hover\\:fill-blue-500:hover {\n fill: #355FFE;\n}\n\n.hover\\:fill-blue-600:hover {\n fill: #234AE0;\n}\n\n.hover\\:text-blue-500:hover {\n --tw-text-opacity: 1;\n color: rgb(53 95 254 / var(--tw-text-opacity));\n}\n\n.hover\\:text-blue-600:hover {\n --tw-text-opacity: 1;\n color: rgb(35 74 224 / var(--tw-text-opacity));\n}\n\n.focus\\:border-blue-400:focus {\n --tw-border-opacity: 1;\n border-color: rgb(72 112 254 / var(--tw-border-opacity));\n}\n\n.focus\\:bg-grey-100:focus {\n --tw-bg-opacity: 1;\n background-color: rgb(230 232 239 / var(--tw-bg-opacity));\n}\n\n.focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.focus\\:ring-0:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.focus\\:ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\n\n.focus\\:ring-blue-500:focus {\n --tw-ring-opacity: 1;\n --tw-ring-color: rgb(53 95 254 / var(--tw-ring-opacity));\n}\n\n.focus\\:ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n\n@media (min-width: 1000px) {\n\n .tablet\\:w-\\[70vw\\] {\n width: 70vw;\n }\n}\n";
|
|
404
|
+
styleInject(css_248z);
|
|
405
|
+
|
|
406
|
+
exports.SearchAutocomplete = SearchAutocomplete;
|