@inploi/plugin-job-search 0.15.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -575,6 +575,377 @@ function j$2(t2, c2, l2, u2, f2, h2, d2) {
575
575
  return Array.isArray(G2) ? [Y2].concat(G2, [X2]) : "string" != typeof G2 ? [Y2, G2, X2] : Y2 + G2 + X2;
576
576
  }
577
577
  var D$2 = /* @__PURE__ */ new Set(["area", "base", "br", "col", "command", "embed", "hr", "img", "input", "keygen", "link", "meta", "param", "source", "track", "wbr"]);
578
+ var default_format = "RFC3986";
579
+ var formatters = {
580
+ RFC1738: (v2) => String(v2).replace(/%20/g, "+"),
581
+ RFC3986: (v2) => String(v2)
582
+ };
583
+ var RFC1738 = "RFC1738";
584
+ var is_array = Array.isArray;
585
+ var hex_table = (() => {
586
+ const array2 = [];
587
+ for (let i2 = 0; i2 < 256; ++i2) {
588
+ array2.push("%" + ((i2 < 16 ? "0" : "") + i2.toString(16)).toUpperCase());
589
+ }
590
+ return array2;
591
+ })();
592
+ var limit = 1024;
593
+ var encode = (str, _defaultEncoder, charset, _kind, format) => {
594
+ if (str.length === 0) {
595
+ return str;
596
+ }
597
+ let string2 = str;
598
+ if (typeof str === "symbol") {
599
+ string2 = Symbol.prototype.toString.call(str);
600
+ } else if (typeof str !== "string") {
601
+ string2 = String(str);
602
+ }
603
+ if (charset === "iso-8859-1") {
604
+ return escape(string2).replace(/%u[0-9a-f]{4}/gi, function($0) {
605
+ return "%26%23" + parseInt($0.slice(2), 16) + "%3B";
606
+ });
607
+ }
608
+ let out = "";
609
+ for (let j2 = 0; j2 < string2.length; j2 += limit) {
610
+ const segment = string2.length >= limit ? string2.slice(j2, j2 + limit) : string2;
611
+ const arr = [];
612
+ for (let i2 = 0; i2 < segment.length; ++i2) {
613
+ let c2 = segment.charCodeAt(i2);
614
+ if (c2 === 45 || // -
615
+ c2 === 46 || // .
616
+ c2 === 95 || // _
617
+ c2 === 126 || // ~
618
+ c2 >= 48 && c2 <= 57 || // 0-9
619
+ c2 >= 65 && c2 <= 90 || // a-z
620
+ c2 >= 97 && c2 <= 122 || // A-Z
621
+ format === RFC1738 && (c2 === 40 || c2 === 41)) {
622
+ arr[arr.length] = segment.charAt(i2);
623
+ continue;
624
+ }
625
+ if (c2 < 128) {
626
+ arr[arr.length] = hex_table[c2];
627
+ continue;
628
+ }
629
+ if (c2 < 2048) {
630
+ arr[arr.length] = hex_table[192 | c2 >> 6] + hex_table[128 | c2 & 63];
631
+ continue;
632
+ }
633
+ if (c2 < 55296 || c2 >= 57344) {
634
+ arr[arr.length] = hex_table[224 | c2 >> 12] + hex_table[128 | c2 >> 6 & 63] + hex_table[128 | c2 & 63];
635
+ continue;
636
+ }
637
+ i2 += 1;
638
+ c2 = 65536 + ((c2 & 1023) << 10 | segment.charCodeAt(i2) & 1023);
639
+ arr[arr.length] = hex_table[240 | c2 >> 18] + hex_table[128 | c2 >> 12 & 63] + hex_table[128 | c2 >> 6 & 63] + hex_table[128 | c2 & 63];
640
+ }
641
+ out += arr.join("");
642
+ }
643
+ return out;
644
+ };
645
+ function is_buffer(obj) {
646
+ if (!obj || typeof obj !== "object") {
647
+ return false;
648
+ }
649
+ return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
650
+ }
651
+ function maybe_map(val, fn2) {
652
+ if (is_array(val)) {
653
+ const mapped = [];
654
+ for (let i2 = 0; i2 < val.length; i2 += 1) {
655
+ mapped.push(fn2(val[i2]));
656
+ }
657
+ return mapped;
658
+ }
659
+ return fn2(val);
660
+ }
661
+ var has3 = Object.prototype.hasOwnProperty;
662
+ var array_prefix_generators = {
663
+ brackets(prefix) {
664
+ return String(prefix) + "[]";
665
+ },
666
+ comma: "comma",
667
+ indices(prefix, key) {
668
+ return String(prefix) + "[" + key + "]";
669
+ },
670
+ repeat(prefix) {
671
+ return String(prefix);
672
+ }
673
+ };
674
+ var is_array2 = Array.isArray;
675
+ var push = Array.prototype.push;
676
+ var push_to_array = function(arr, value_or_array) {
677
+ push.apply(arr, is_array2(value_or_array) ? value_or_array : [value_or_array]);
678
+ };
679
+ var to_ISO = Date.prototype.toISOString;
680
+ var defaults2 = {
681
+ addQueryPrefix: false,
682
+ allowDots: false,
683
+ allowEmptyArrays: false,
684
+ arrayFormat: "indices",
685
+ charset: "utf-8",
686
+ charsetSentinel: false,
687
+ delimiter: "&",
688
+ encode: true,
689
+ encodeDotInKeys: false,
690
+ encoder: encode,
691
+ encodeValuesOnly: false,
692
+ format: default_format,
693
+ formatter: formatters[default_format],
694
+ /** @deprecated */
695
+ indices: false,
696
+ serializeDate(date) {
697
+ return to_ISO.call(date);
698
+ },
699
+ skipNulls: false,
700
+ strictNullHandling: false
701
+ };
702
+ function is_non_nullish_primitive(v2) {
703
+ return typeof v2 === "string" || typeof v2 === "number" || typeof v2 === "boolean" || typeof v2 === "symbol" || typeof v2 === "bigint";
704
+ }
705
+ var sentinel = {};
706
+ function inner_stringify(object2, prefix, generateArrayPrefix, commaRoundTrip, allowEmptyArrays, strictNullHandling, skipNulls, encodeDotInKeys, encoder, filter, sort, allowDots, serializeDate, format, formatter, encodeValuesOnly, charset, sideChannel) {
707
+ let obj = object2;
708
+ let tmp_sc = sideChannel;
709
+ let step = 0;
710
+ let find_flag = false;
711
+ while ((tmp_sc = tmp_sc.get(sentinel)) !== void 0 && !find_flag) {
712
+ const pos = tmp_sc.get(object2);
713
+ step += 1;
714
+ if (typeof pos !== "undefined") {
715
+ if (pos === step) {
716
+ throw new RangeError("Cyclic object value");
717
+ } else {
718
+ find_flag = true;
719
+ }
720
+ }
721
+ if (typeof tmp_sc.get(sentinel) === "undefined") {
722
+ step = 0;
723
+ }
724
+ }
725
+ if (typeof filter === "function") {
726
+ obj = filter(prefix, obj);
727
+ } else if (obj instanceof Date) {
728
+ obj = serializeDate == null ? void 0 : serializeDate(obj);
729
+ } else if (generateArrayPrefix === "comma" && is_array2(obj)) {
730
+ obj = maybe_map(obj, function(value) {
731
+ if (value instanceof Date) {
732
+ return serializeDate == null ? void 0 : serializeDate(value);
733
+ }
734
+ return value;
735
+ });
736
+ }
737
+ if (obj === null) {
738
+ if (strictNullHandling) {
739
+ return encoder && !encodeValuesOnly ? (
740
+ // @ts-expect-error
741
+ encoder(prefix, defaults2.encoder, charset, "key", format)
742
+ ) : prefix;
743
+ }
744
+ obj = "";
745
+ }
746
+ if (is_non_nullish_primitive(obj) || is_buffer(obj)) {
747
+ if (encoder) {
748
+ const key_value = encodeValuesOnly ? prefix : (
749
+ // @ts-expect-error
750
+ encoder(prefix, defaults2.encoder, charset, "key", format)
751
+ );
752
+ return [
753
+ (formatter == null ? void 0 : formatter(key_value)) + "=" + // @ts-expect-error
754
+ (formatter == null ? void 0 : formatter(encoder(obj, defaults2.encoder, charset, "value", format)))
755
+ ];
756
+ }
757
+ return [(formatter == null ? void 0 : formatter(prefix)) + "=" + (formatter == null ? void 0 : formatter(String(obj)))];
758
+ }
759
+ const values = [];
760
+ if (typeof obj === "undefined") {
761
+ return values;
762
+ }
763
+ let obj_keys;
764
+ if (generateArrayPrefix === "comma" && is_array2(obj)) {
765
+ if (encodeValuesOnly && encoder) {
766
+ obj = maybe_map(obj, encoder);
767
+ }
768
+ obj_keys = [{ value: obj.length > 0 ? obj.join(",") || null : void 0 }];
769
+ } else if (is_array2(filter)) {
770
+ obj_keys = filter;
771
+ } else {
772
+ const keys = Object.keys(obj);
773
+ obj_keys = sort ? keys.sort(sort) : keys;
774
+ }
775
+ const encoded_prefix = encodeDotInKeys ? String(prefix).replace(/\./g, "%2E") : String(prefix);
776
+ const adjusted_prefix = commaRoundTrip && is_array2(obj) && obj.length === 1 ? encoded_prefix + "[]" : encoded_prefix;
777
+ if (allowEmptyArrays && is_array2(obj) && obj.length === 0) {
778
+ return adjusted_prefix + "[]";
779
+ }
780
+ for (let j2 = 0; j2 < obj_keys.length; ++j2) {
781
+ const key = obj_keys[j2];
782
+ const value = (
783
+ // @ts-expect-error
784
+ typeof key === "object" && typeof key.value !== "undefined" ? key.value : obj[key]
785
+ );
786
+ if (skipNulls && value === null) {
787
+ continue;
788
+ }
789
+ const encoded_key = allowDots && encodeDotInKeys ? key.replace(/\./g, "%2E") : key;
790
+ const key_prefix = is_array2(obj) ? typeof generateArrayPrefix === "function" ? generateArrayPrefix(adjusted_prefix, encoded_key) : adjusted_prefix : adjusted_prefix + (allowDots ? "." + encoded_key : "[" + encoded_key + "]");
791
+ sideChannel.set(object2, step);
792
+ const valueSideChannel = /* @__PURE__ */ new WeakMap();
793
+ valueSideChannel.set(sentinel, sideChannel);
794
+ push_to_array(
795
+ values,
796
+ inner_stringify(
797
+ value,
798
+ key_prefix,
799
+ generateArrayPrefix,
800
+ commaRoundTrip,
801
+ allowEmptyArrays,
802
+ strictNullHandling,
803
+ skipNulls,
804
+ encodeDotInKeys,
805
+ // @ts-expect-error
806
+ generateArrayPrefix === "comma" && encodeValuesOnly && is_array2(obj) ? null : encoder,
807
+ filter,
808
+ sort,
809
+ allowDots,
810
+ serializeDate,
811
+ format,
812
+ formatter,
813
+ encodeValuesOnly,
814
+ charset,
815
+ valueSideChannel
816
+ )
817
+ );
818
+ }
819
+ return values;
820
+ }
821
+ function normalize_stringify_options(opts = defaults2) {
822
+ if (typeof opts.allowEmptyArrays !== "undefined" && typeof opts.allowEmptyArrays !== "boolean") {
823
+ throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");
824
+ }
825
+ if (typeof opts.encodeDotInKeys !== "undefined" && typeof opts.encodeDotInKeys !== "boolean") {
826
+ throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");
827
+ }
828
+ if (opts.encoder !== null && typeof opts.encoder !== "undefined" && typeof opts.encoder !== "function") {
829
+ throw new TypeError("Encoder has to be a function.");
830
+ }
831
+ const charset = opts.charset || defaults2.charset;
832
+ if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") {
833
+ throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");
834
+ }
835
+ let format = default_format;
836
+ if (typeof opts.format !== "undefined") {
837
+ if (!has3.call(formatters, opts.format)) {
838
+ throw new TypeError("Unknown format option provided.");
839
+ }
840
+ format = opts.format;
841
+ }
842
+ const formatter = formatters[format];
843
+ let filter = defaults2.filter;
844
+ if (typeof opts.filter === "function" || is_array2(opts.filter)) {
845
+ filter = opts.filter;
846
+ }
847
+ let arrayFormat;
848
+ if (opts.arrayFormat && opts.arrayFormat in array_prefix_generators) {
849
+ arrayFormat = opts.arrayFormat;
850
+ } else if ("indices" in opts) {
851
+ arrayFormat = opts.indices ? "indices" : "repeat";
852
+ } else {
853
+ arrayFormat = defaults2.arrayFormat;
854
+ }
855
+ if ("commaRoundTrip" in opts && typeof opts.commaRoundTrip !== "boolean") {
856
+ throw new TypeError("`commaRoundTrip` must be a boolean, or absent");
857
+ }
858
+ const allowDots = typeof opts.allowDots === "undefined" ? !!opts.encodeDotInKeys === true ? true : defaults2.allowDots : !!opts.allowDots;
859
+ return {
860
+ addQueryPrefix: typeof opts.addQueryPrefix === "boolean" ? opts.addQueryPrefix : defaults2.addQueryPrefix,
861
+ // @ts-ignore
862
+ allowDots,
863
+ allowEmptyArrays: typeof opts.allowEmptyArrays === "boolean" ? !!opts.allowEmptyArrays : defaults2.allowEmptyArrays,
864
+ arrayFormat,
865
+ charset,
866
+ charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults2.charsetSentinel,
867
+ commaRoundTrip: !!opts.commaRoundTrip,
868
+ delimiter: typeof opts.delimiter === "undefined" ? defaults2.delimiter : opts.delimiter,
869
+ encode: typeof opts.encode === "boolean" ? opts.encode : defaults2.encode,
870
+ encodeDotInKeys: typeof opts.encodeDotInKeys === "boolean" ? opts.encodeDotInKeys : defaults2.encodeDotInKeys,
871
+ encoder: typeof opts.encoder === "function" ? opts.encoder : defaults2.encoder,
872
+ encodeValuesOnly: typeof opts.encodeValuesOnly === "boolean" ? opts.encodeValuesOnly : defaults2.encodeValuesOnly,
873
+ filter,
874
+ format,
875
+ formatter,
876
+ serializeDate: typeof opts.serializeDate === "function" ? opts.serializeDate : defaults2.serializeDate,
877
+ skipNulls: typeof opts.skipNulls === "boolean" ? opts.skipNulls : defaults2.skipNulls,
878
+ // @ts-expect-error
879
+ sort: typeof opts.sort === "function" ? opts.sort : null,
880
+ strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults2.strictNullHandling
881
+ };
882
+ }
883
+ function stringify(object2, opts = {}) {
884
+ let obj = object2;
885
+ const options = normalize_stringify_options(opts);
886
+ let obj_keys;
887
+ let filter;
888
+ if (typeof options.filter === "function") {
889
+ filter = options.filter;
890
+ obj = filter("", obj);
891
+ } else if (is_array2(options.filter)) {
892
+ filter = options.filter;
893
+ obj_keys = filter;
894
+ }
895
+ const keys = [];
896
+ if (typeof obj !== "object" || obj === null) {
897
+ return "";
898
+ }
899
+ const generateArrayPrefix = array_prefix_generators[options.arrayFormat];
900
+ const commaRoundTrip = generateArrayPrefix === "comma" && options.commaRoundTrip;
901
+ if (!obj_keys) {
902
+ obj_keys = Object.keys(obj);
903
+ }
904
+ if (options.sort) {
905
+ obj_keys.sort(options.sort);
906
+ }
907
+ const sideChannel = /* @__PURE__ */ new WeakMap();
908
+ for (let i2 = 0; i2 < obj_keys.length; ++i2) {
909
+ const key = obj_keys[i2];
910
+ if (options.skipNulls && obj[key] === null) {
911
+ continue;
912
+ }
913
+ push_to_array(
914
+ keys,
915
+ inner_stringify(
916
+ obj[key],
917
+ key,
918
+ // @ts-expect-error
919
+ generateArrayPrefix,
920
+ commaRoundTrip,
921
+ options.allowEmptyArrays,
922
+ options.strictNullHandling,
923
+ options.skipNulls,
924
+ options.encodeDotInKeys,
925
+ options.encode ? options.encoder : null,
926
+ options.filter,
927
+ options.sort,
928
+ options.allowDots,
929
+ options.serializeDate,
930
+ options.format,
931
+ options.formatter,
932
+ options.encodeValuesOnly,
933
+ options.charset,
934
+ sideChannel
935
+ )
936
+ );
937
+ }
938
+ const joined = keys.join(options.delimiter);
939
+ let prefix = options.addQueryPrefix === true ? "?" : "";
940
+ if (options.charsetSentinel) {
941
+ if (options.charset === "iso-8859-1") {
942
+ prefix += "utf8=%26%2310003%3B&";
943
+ } else {
944
+ prefix += "utf8=%E2%9C%93&";
945
+ }
946
+ }
947
+ return joined.length > 0 ? prefix + joined : "";
948
+ }
578
949
  var ValiError = class extends Error {
579
950
  /**
580
951
  * Creates a Valibot error with useful information.
@@ -1234,8 +1605,19 @@ const JobSearchResponseSchema = transform(
1234
1605
  results: schema.data
1235
1606
  })
1236
1607
  );
1608
+ const getFilterValue = (filterValue) => {
1609
+ if (!filterValue)
1610
+ return null;
1611
+ if (Array.isArray(filterValue) && filterValue.length === 0)
1612
+ return null;
1613
+ return filterValue;
1614
+ };
1237
1615
  const filtersToPayload = (filters) => {
1238
- return Object.fromEntries(Object.entries(filters).map(([key, filter]) => [key, (filter == null ? void 0 : filter.value) ?? null]));
1616
+ return Object.fromEntries(
1617
+ Object.entries(filters).map(([key, filter]) => {
1618
+ return [key, getFilterValue(filter == null ? void 0 : filter.value)];
1619
+ })
1620
+ );
1239
1621
  };
1240
1622
  const getAvailableFilters = async ({
1241
1623
  apiClient,
@@ -1244,11 +1626,13 @@ const getAvailableFilters = async ({
1244
1626
  signal
1245
1627
  }) => {
1246
1628
  try {
1247
- const response = await apiClient.fetch(`/search/filters`, {
1248
- method: "POST",
1249
- body: JSON.stringify({
1629
+ const searchParams = new URLSearchParams(
1630
+ stringify({
1250
1631
  filters: filtersToPayload(filters)
1251
- }),
1632
+ })
1633
+ );
1634
+ const baseUrl = "/search/filters";
1635
+ const response = await apiClient.fetch([baseUrl, searchParams.toString()].filter(Boolean).join("?"), {
1252
1636
  signal
1253
1637
  });
1254
1638
  return parse(AvailablePropertiesSchema, response);
@@ -1269,11 +1653,15 @@ const getJobSearchResults = async ({
1269
1653
  page = 1
1270
1654
  }) => {
1271
1655
  try {
1272
- const response = await apiClient.fetch(`/search/results?page=${page}&per_page=${PAGE_SIZE}`, {
1273
- method: "POST",
1274
- body: JSON.stringify({
1656
+ const searchParams = new URLSearchParams(
1657
+ stringify({
1275
1658
  filters: filtersToPayload(filters)
1276
- }),
1659
+ })
1660
+ );
1661
+ searchParams.set("page", page.toString());
1662
+ searchParams.set("per_page", PAGE_SIZE.toString());
1663
+ const baseUrl = "/search/results";
1664
+ const response = await apiClient.fetch([baseUrl, searchParams.toString()].filter(Boolean).join("?"), {
1277
1665
  signal
1278
1666
  });
1279
1667
  return parse(JobSearchResponseSchema, response);
@@ -3379,7 +3767,7 @@ const suggestionsListClass = cva({
3379
3767
  }
3380
3768
  });
3381
3769
  const suggestionItemClass = cva({
3382
- base: "max-w-full origin-top group ease-expo-out transition-all duration-snappy",
3770
+ base: "max-w-full origin-top group/tag ease-expo-out transition-all duration-snappy",
3383
3771
  variants: {
3384
3772
  type: {
3385
3773
  pill: "",
@@ -3388,7 +3776,7 @@ const suggestionItemClass = cva({
3388
3776
  }
3389
3777
  });
3390
3778
  const tagLongClass = cva({
3391
- base: "cursor-pointer flex fr gap-2 font-style-tag group-[&:first-child]:rounded-t-tag group-[&:last-child]:rounded-b-tag ease-expo-out transition-all duration-snappy py-2.5 px-2.5 font-family-tag font-weight-tag text-style-tag focus:relative w-full justify-between",
3779
+ base: "cursor-pointer flex fr gap-2 font-style-tag group-[&:first-child]/tag:rounded-t-tag group-[&:last-child]/tag:rounded-b-tag ease-expo-out transition-all duration-snappy py-2.5 px-2.5 font-family-tag font-weight-tag text-style-tag focus:relative w-full justify-between",
3392
3780
  variants: {
3393
3781
  active: {
3394
3782
  true: "bg-accent-2 text-accent-11",
@@ -3399,6 +3787,13 @@ const tagLongClass = cva({
3399
3787
  false: ""
3400
3788
  }
3401
3789
  },
3790
+ compoundVariants: [
3791
+ {
3792
+ disabled: false,
3793
+ active: false,
3794
+ class: "hover:bg-neutral-2"
3795
+ }
3796
+ ],
3402
3797
  defaultVariants: {
3403
3798
  disabled: false,
3404
3799
  active: false
@@ -3431,15 +3826,16 @@ const coerceToNumberLoosely = (value) => {
3431
3826
  return isNaN(number2) ? 0 : number2;
3432
3827
  };
3433
3828
  const sortResults = (results, sort = { by: "results-count", order: "descending" }) => {
3829
+ const newResults = [...results];
3434
3830
  switch (sort.by) {
3435
3831
  case "results-count":
3436
- results.sort((a2, b2) => b2.jobs - a2.jobs);
3832
+ newResults.sort((a2, b2) => a2.jobs - b2.jobs);
3437
3833
  break;
3438
3834
  case "alphabetically":
3439
- results.sort((a2, b2) => a2.label.localeCompare(b2.label));
3835
+ newResults.sort((a2, b2) => a2.label.localeCompare(b2.label));
3440
3836
  break;
3441
3837
  case "numerically":
3442
- results.sort((a2, b2) => {
3838
+ newResults.sort((a2, b2) => {
3443
3839
  const aValue = coerceToNumberLoosely(a2.value);
3444
3840
  const bValue = coerceToNumberLoosely(b2.value);
3445
3841
  return aValue - bValue;
@@ -3447,8 +3843,8 @@ const sortResults = (results, sort = { by: "results-count", order: "descending"
3447
3843
  break;
3448
3844
  }
3449
3845
  if (sort.order === "descending")
3450
- results.reverse();
3451
- return results;
3846
+ newResults.reverse();
3847
+ return newResults;
3452
3848
  };
3453
3849
  const isSuggestionDisabled = (filteredJobsPerSuggestion, suggestion) => {
3454
3850
  if (filteredJobsPerSuggestion === null)
@@ -3600,7 +3996,8 @@ const FilterContentActive = ({
3600
3996
  }
3601
3997
  },
3602
3998
  class: isLongList ? tagLongClass({
3603
- active
3999
+ active,
4000
+ disabled: suggestion.disabled
3604
4001
  }) : tagClass({
3605
4002
  size: "lg",
3606
4003
  variant: active ? "accentStrong" : "neutralStrong",
@@ -4694,7 +5091,7 @@ const JobSearch = ({
4694
5091
  ) }) }) })
4695
5092
  ] }) });
4696
5093
  };
4697
- const tailwind = "#ijs {\n font-size: 16px;\n --tw-content: '';\n}\n\n #ijs * {\n box-sizing: border-box;\n border-style: solid;\n border-width: 0;\n -webkit-tap-highlight-color: transparent;\n font-family: inherit;\n font-style: inherit;\n font-weight: inherit;\n }\n\n #ijs ::before,\n #ijs ::after {\n box-sizing: border-box;\n }\n\n #ijs :is(a) {\n text-decoration: none;\n }\n\n #ijs :is(ul, ol) {\n list-style: none;\n padding: 0;\n margin: 0;\n }\n\n #ijs :is(p) {\n margin: 0;\n padding: 0;\n }\n\n #ijs :is(li) {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n #ijs :is(button),\n #ijs :is(a) {\n display: block;\n margin: 0;\n padding: 0;\n border: unset;\n background: unset;\n text-align: unset;\n }\n\n #ijs :is(input),\n #ijs :is(textarea) {\n display: block;\n margin: 0;\n padding: 0;\n min-width: 0;\n max-width: unset;\n width: 100%;\n }\n\n #ijs :is(svg) {\n display: block;\n }\n\n #ijs.reduced-motion * {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n scroll-behavior: auto !important;\n animation-delay: 0s !important;\n }\n\n @media (prefers-reduced-motion) {\n #ijs * {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n scroll-behavior: auto !important;\n animation-delay: 0s !important;\n }\n }\n\n #ijs *, #ijs ::before, #ijs ::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-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\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 --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n #ijs ::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-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\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 --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n #ijs .container {\n width: 100%;\n}\n\n @media (min-width: 640px) {\n\n #ijs .container {\n max-width: 640px;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .container {\n max-width: 768px;\n }\n}\n\n @media (min-width: 1024px) {\n\n #ijs .container {\n max-width: 1024px;\n }\n}\n\n @media (min-width: 1280px) {\n\n #ijs .container {\n max-width: 1280px;\n }\n}\n\n @media (min-width: 1536px) {\n\n #ijs .container {\n max-width: 1536px;\n }\n}\n\n #ijs .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n #ijs .not-sr-only {\n position: static;\n width: auto;\n height: auto;\n padding: 0;\n margin: 0;\n overflow: visible;\n clip: auto;\n white-space: normal;\n}\n\n #ijs .pointer-events-none {\n pointer-events: none;\n}\n\n #ijs .visible {\n visibility: visible;\n}\n\n #ijs .invisible {\n visibility: hidden;\n}\n\n #ijs .collapse {\n visibility: collapse;\n}\n\n #ijs .static {\n position: static;\n}\n\n #ijs .fixed {\n position: fixed;\n}\n\n #ijs .absolute {\n position: absolute;\n}\n\n #ijs .relative {\n position: relative;\n}\n\n #ijs .sticky {\n position: sticky;\n}\n\n #ijs .bottom-0 {\n bottom: 0px;\n}\n\n #ijs .right-0 {\n right: 0px;\n}\n\n #ijs .top-0 {\n top: 0px;\n}\n\n #ijs .isolate {\n isolation: isolate;\n}\n\n #ijs .z-50 {\n z-index: 50;\n}\n\n #ijs .order-1 {\n order: 1;\n}\n\n #ijs .order-2 {\n order: 2;\n}\n\n #ijs .col-span-full {\n grid-column: 1 / -1;\n}\n\n #ijs .row-span-full {\n grid-row: 1 / -1;\n}\n\n #ijs .-m-4 {\n margin: -1rem;\n}\n\n #ijs .m-0 {\n margin: 0px;\n}\n\n #ijs .m-11 {\n margin: 2.75rem;\n}\n\n #ijs .m-3 {\n margin: 0.75rem;\n}\n\n #ijs .m-4 {\n margin: 1rem;\n}\n\n #ijs .mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n #ijs .ml-auto {\n margin-left: auto;\n}\n\n #ijs .mt-0\\.5 {\n margin-top: 0.125rem;\n}\n\n #ijs .block {\n display: block;\n}\n\n #ijs .inline-block {\n display: inline-block;\n}\n\n #ijs .inline {\n display: inline;\n}\n\n #ijs .flex {\n display: flex;\n}\n\n #ijs .inline-flex {\n display: inline-flex;\n}\n\n #ijs .table {\n display: table;\n}\n\n #ijs .table-row {\n display: table-row;\n}\n\n #ijs .flow-root {\n display: flow-root;\n}\n\n #ijs .grid {\n display: grid;\n}\n\n #ijs .inline-grid {\n display: inline-grid;\n}\n\n #ijs .contents {\n display: contents;\n}\n\n #ijs .list-item {\n display: list-item;\n}\n\n #ijs .\\!hidden {\n display: none !important;\n}\n\n #ijs .hidden {\n display: none;\n}\n\n #ijs .h-12 {\n height: 3rem;\n}\n\n #ijs .h-4 {\n height: 1rem;\n}\n\n #ijs .h-8 {\n height: 2rem;\n}\n\n #ijs .h-\\[1lh\\] {\n height: 1lh;\n}\n\n #ijs .h-full {\n height: 100%;\n}\n\n #ijs .max-h-\\[var\\(--maxHeight\\)\\] {\n max-height: var(--maxHeight);\n}\n\n #ijs .min-h-\\[1em\\] {\n min-height: 1em;\n}\n\n #ijs .min-h-\\[36px\\] {\n min-height: 36px;\n}\n\n #ijs .min-h-screen {\n min-height: 100vh;\n}\n\n #ijs .w-4 {\n width: 1rem;\n}\n\n #ijs .w-64 {\n width: 16rem;\n}\n\n #ijs .w-\\[10ch\\] {\n width: 10ch;\n}\n\n #ijs .w-\\[2\\.5ch\\] {\n width: 2.5ch;\n}\n\n #ijs .w-\\[6ch\\] {\n width: 6ch;\n}\n\n #ijs .w-\\[8ch\\] {\n width: 8ch;\n}\n\n #ijs .w-full {\n width: 100%;\n}\n\n #ijs .min-w-0 {\n min-width: 0px;\n}\n\n #ijs .max-w-\\[var\\(--radix-popover-content-available-width\\)\\] {\n max-width: var(--radix-popover-content-available-width);\n}\n\n #ijs .max-w-full {\n max-width: 100%;\n}\n\n #ijs .max-w-screen-lg {\n max-width: 1024px;\n}\n\n #ijs .flex-1 {\n flex: 1 1 0%;\n}\n\n #ijs .flex-none {\n flex: none;\n}\n\n #ijs .flex-shrink {\n flex-shrink: 1;\n}\n\n #ijs .shrink {\n flex-shrink: 1;\n}\n\n #ijs .shrink-0 {\n flex-shrink: 0;\n}\n\n #ijs .flex-grow {\n flex-grow: 1;\n}\n\n #ijs .grow {\n flex-grow: 1;\n}\n\n #ijs .border-collapse {\n border-collapse: collapse;\n}\n\n #ijs .origin-\\[50\\%_1\\.75rem\\] {\n transform-origin: 50% 1.75rem;\n}\n\n #ijs .origin-top {\n transform-origin: top;\n}\n\n #ijs .translate-y-0 {\n --tw-translate-y: 0px;\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\n #ijs .transform {\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\n @keyframes selected-tag {\n\n 0% {\n transform: scale(1.11);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n #ijs .animate-selected-tag {\n animation: selected-tag .9s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n @keyframes skeleton {\n\n 0% {\n opacity: 0.2;\n }\n\n 50% {\n opacity: 0.6;\n }\n\n 100% {\n opacity: 0.25;\n }\n}\n\n #ijs .animate-skeleton {\n animation: skeleton 1.2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n\n @keyframes slide-in-bottom {\n\n 0% {\n transform: translateY(-50%);\n }\n\n 100% {\n transform: translateY(0);\n }\n}\n\n #ijs .animate-slide-in-bottom {\n animation: slide-in-bottom .4s cubic-bezier(0.16, 1, 0.3, 1) both;\n}\n\n #ijs .cursor-default {\n cursor: default;\n}\n\n #ijs .cursor-pointer {\n cursor: pointer;\n}\n\n #ijs .select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n #ijs .resize {\n resize: both;\n}\n\n #ijs .appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n #ijs .flex-col {\n flex-direction: column;\n}\n\n #ijs .flex-wrap {\n flex-wrap: wrap;\n}\n\n #ijs .items-start {\n align-items: flex-start;\n}\n\n #ijs .items-center {\n align-items: center;\n}\n\n #ijs .items-stretch {\n align-items: stretch;\n}\n\n #ijs .justify-end {\n justify-content: flex-end;\n}\n\n #ijs .justify-center {\n justify-content: center;\n}\n\n #ijs .justify-between {\n justify-content: space-between;\n}\n\n #ijs .gap-1 {\n gap: 0.25rem;\n}\n\n #ijs .gap-1\\.5 {\n gap: 0.375rem;\n}\n\n #ijs .gap-2 {\n gap: 0.5rem;\n}\n\n #ijs .gap-2\\.5 {\n gap: 0.625rem;\n}\n\n #ijs .gap-3 {\n gap: 0.75rem;\n}\n\n #ijs .gap-4 {\n gap: 1rem;\n}\n\n #ijs .gap-logo {\n gap: var(--i-logo-gap);\n}\n\n #ijs .self-center {\n align-self: center;\n}\n\n #ijs .overflow-hidden {\n overflow: hidden;\n}\n\n #ijs .overflow-y-auto {\n overflow-y: auto;\n}\n\n #ijs .truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n #ijs .text-pretty {\n text-wrap: pretty;\n}\n\n #ijs .rounded-app {\n border-radius: var(--i-radius-app);\n}\n\n #ijs .rounded-input {\n border-radius: var(--i-radius-input);\n}\n\n #ijs .rounded-interactive {\n border-radius: var(--i-radius-interactive);\n}\n\n #ijs .rounded-job-card {\n border-radius: var(--i-radius-job-card);\n}\n\n #ijs .rounded-job-tag {\n border-radius: var(--i-radius-job-tag);\n}\n\n #ijs .rounded-logo {\n border-radius: var(--i-radius-logo);\n}\n\n #ijs .rounded-section {\n border-radius: var(--i-radius-section);\n}\n\n #ijs .rounded-tag {\n border-radius: var(--i-radius-job-tag);\n}\n\n #ijs .border-px {\n border-width: 1px;\n}\n\n #ijs .border-solid {\n border-style: solid;\n}\n\n #ijs .border-neutral-2 {\n border-color: var(--i-color-n-2);\n}\n\n #ijs .border-tag-accent-strong-stroke {\n border-color: var(--i-tag-accent-strong-stroke-color);\n}\n\n #ijs .border-tag-monetary-weak-stroke {\n border-color: var(--i-tag-monetary-weak-stroke-color);\n}\n\n #ijs .border-tag-neutral-strong-stroke {\n border-color: var(--i-tag-neutral-strong-stroke-color);\n}\n\n #ijs .border-tag-neutral-weak-stroke {\n border-color: var(--i-tag-neutral-weak-stroke-color);\n}\n\n #ijs .border-transparent {\n border-color: transparent;\n}\n\n #ijs .bg-\\[currentColor\\] {\n background-color: currentColor;\n}\n\n #ijs .bg-accent-2 {\n background-color: var(--i-color-a-2);\n}\n\n #ijs .bg-accent-4 {\n background-color: var(--i-color-a-4);\n}\n\n #ijs .bg-accent-9 {\n background-color: var(--i-color-a-9);\n}\n\n #ijs .bg-app {\n background-color: var(--i-app-bg);\n}\n\n #ijs .bg-copy-neutral {\n background-color: var(--i-copy);\n}\n\n #ijs .bg-interactive-accent-bg {\n background-color: var(--i-interactive-accent-bg);\n}\n\n #ijs .bg-interactive-neutral-bg {\n background-color: var(--i-interactive-neutral-bg);\n}\n\n #ijs .bg-job-card-bg {\n background-color: var(--i-job-card-bg);\n}\n\n #ijs .bg-lowest {\n background-color: var(--i-color-lowest);\n}\n\n #ijs .bg-neutral-1 {\n background-color: var(--i-color-n-1);\n}\n\n #ijs .bg-neutral-12 {\n background-color: var(--i-color-n-12);\n}\n\n #ijs .bg-neutral-2 {\n background-color: var(--i-color-n-2);\n}\n\n #ijs .bg-section-strong-bg {\n background-color: var(--i-section-strong-bg);\n}\n\n #ijs .bg-section-weak-bg {\n background-color: var(--i-section-weak-bg);\n}\n\n #ijs .bg-tag-accent-strong-bg {\n background-color: var(--i-tag-accent-strong-bg);\n}\n\n #ijs .bg-tag-monetary-weak-bg {\n background-color: var(--i-tag-monetary-weak-bg);\n}\n\n #ijs .bg-tag-neutral-strong-bg {\n background-color: var(--i-tag-neutral-strong-bg);\n}\n\n #ijs .bg-tag-neutral-weak-bg {\n background-color: var(--i-tag-neutral-weak-bg);\n}\n\n #ijs .object-contain {\n -o-object-fit: contain;\n object-fit: contain;\n}\n\n #ijs .p-0 {\n padding: 0px;\n}\n\n #ijs .p-1 {\n padding: 0.25rem;\n}\n\n #ijs .p-2 {\n padding: 0.5rem;\n}\n\n #ijs .p-4 {\n padding: 1rem;\n}\n\n #ijs .p-6 {\n padding: 1.5rem;\n}\n\n #ijs .px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n\n #ijs .px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n #ijs .px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n\n #ijs .px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n #ijs .px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n #ijs .px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n\n #ijs .py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n #ijs .py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n\n #ijs .py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n #ijs .py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n\n #ijs .py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n #ijs .pb-4 {\n padding-bottom: 1rem;\n}\n\n #ijs .pl-1 {\n padding-left: 0.25rem;\n}\n\n #ijs .pl-2 {\n padding-left: 0.5rem;\n}\n\n #ijs .pl-2\\.5 {\n padding-left: 0.625rem;\n}\n\n #ijs .pl-3 {\n padding-left: 0.75rem;\n}\n\n #ijs .pl-4 {\n padding-left: 1rem;\n}\n\n #ijs .pl-5 {\n padding-left: 1.25rem;\n}\n\n #ijs .pr-1 {\n padding-right: 0.25rem;\n}\n\n #ijs .pr-2\\.5 {\n padding-right: 0.625rem;\n}\n\n #ijs .pr-3 {\n padding-right: 0.75rem;\n}\n\n #ijs .pr-5 {\n padding-right: 1.25rem;\n}\n\n #ijs .pr-8 {\n padding-right: 2rem;\n}\n\n #ijs .pt-1 {\n padding-top: 0.25rem;\n}\n\n #ijs .text-center {\n text-align: center;\n}\n\n #ijs .text-justify {\n text-align: justify;\n}\n\n #ijs .align-middle {\n vertical-align: middle;\n}\n\n #ijs .font-family-default {\n font-family: var(--i-font);\n}\n\n #ijs .font-family-filter {\n font-family: var(--i-font-filter);\n}\n\n #ijs .font-family-job-heading {\n font-family: var(--i-font-job-heading);\n}\n\n #ijs .font-family-tag {\n font-family: var(--i-font-tag);\n}\n\n #ijs .text-\\[10px\\] {\n font-size: 10px;\n}\n\n #ijs .text-style-filter {\n font-size: 1rem;\n line-height: 1.5rem;\n letter-spacing: -0.01em;\n}\n\n #ijs .text-style-input {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n #ijs .text-style-job-card {\n font-size: 0.875rem;\n line-height: 1.125rem;\n}\n\n #ijs .text-style-job-card-info {\n font-size: 0.75rem;\n line-height: 1.125rem;\n}\n\n #ijs .text-style-job-heading {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n #ijs .text-style-tag {\n font-size: 0.875rem;\n line-height: 1.5rem;\n}\n\n #ijs .font-weight-default {\n font-weight: var(--i-weight-default);\n}\n\n #ijs .font-weight-filter {\n font-weight: var(--i-weight-filter);\n}\n\n #ijs .font-weight-input {\n font-weight: var(--i-weight-input);\n}\n\n #ijs .font-weight-job-heading {\n font-weight: var(--i-weight-job-heading);\n}\n\n #ijs .font-weight-tag {\n font-weight: var(--i-weight-tag);\n}\n\n #ijs .uppercase {\n text-transform: uppercase;\n}\n\n #ijs .lowercase {\n text-transform: lowercase;\n}\n\n #ijs .capitalize {\n text-transform: capitalize;\n}\n\n #ijs .italic {\n font-style: italic;\n}\n\n #ijs .ordinal {\n --tw-ordinal: ordinal;\n font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);\n}\n\n #ijs .tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);\n}\n\n #ijs .leading-none {\n line-height: 1;\n}\n\n #ijs .leading-snug {\n line-height: 1.375;\n}\n\n #ijs .text-\\[\\#E5484D\\] {\n --tw-text-opacity: 1;\n color: rgb(229 72 77 / var(--tw-text-opacity));\n}\n\n #ijs .text-accent-1 {\n color: var(--i-color-a-1);\n}\n\n #ijs .text-accent-11 {\n color: var(--i-color-a-11);\n}\n\n #ijs .text-copy-accent {\n color: var(--i-copy-accent);\n}\n\n #ijs .text-copy-job-info {\n color: var(--i-copy-info);\n}\n\n #ijs .text-copy-neutral {\n color: var(--i-copy);\n}\n\n #ijs .text-copy-neutral-icon {\n color: var(--i-copy-icon);\n}\n\n #ijs .text-copy-neutral-lowcontrast {\n color: var(--i-copy-lowcontrast);\n}\n\n #ijs .text-interactive-accent-text {\n color: var(--i-interactive-accent-text);\n}\n\n #ijs .text-interactive-neutral-bg {\n color: var(--i-interactive-neutral-bg);\n}\n\n #ijs .text-interactive-neutral-text {\n color: var(--i-interactive-neutral-text);\n}\n\n #ijs .text-neutral-1 {\n color: var(--i-color-n-1);\n}\n\n #ijs .text-neutral-10 {\n color: var(--i-color-n-10);\n}\n\n #ijs .text-neutral-11 {\n color: var(--i-color-n-11);\n}\n\n #ijs .text-neutral-8 {\n color: var(--i-color-n-8);\n}\n\n #ijs .text-tag-accent-strong-bg {\n color: var(--i-tag-accent-strong-bg);\n}\n\n #ijs .text-tag-accent-strong-copy {\n color: var(--i-tag-accent-strong-copy);\n}\n\n #ijs .text-tag-monetary-weak-copy {\n color: var(--i-tag-monetary-weak-copy);\n}\n\n #ijs .text-tag-neutral-strong-copy {\n color: var(--i-tag-neutral-strong-copy);\n}\n\n #ijs .text-tag-neutral-weak-copy {\n color: var(--i-tag-neutral-weak-copy);\n}\n\n #ijs .underline {\n text-decoration-line: underline;\n}\n\n #ijs .caret-accent-11 {\n caret-color: var(--i-color-a-11);\n}\n\n #ijs .opacity-0 {\n opacity: 0;\n}\n\n #ijs .opacity-20 {\n opacity: 0.2;\n}\n\n #ijs .opacity-25 {\n opacity: 0.25;\n}\n\n #ijs .shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px 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\n #ijs .shadow-\\[0_0_0_1px\\] {\n --tw-shadow: 0 0 0 1px;\n --tw-shadow-colored: 0 0 0 1px 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\n #ijs .outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n #ijs .outline {\n outline-style: solid;\n}\n\n #ijs .ring-\\[1px\\] {\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\n #ijs .ring-px {\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\n #ijs .ring-width-job-card {\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(var(--i-job-card-stroke-width) + 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 #ijs .ring-width-section {\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(var(--i-section-stroke-width) + 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 #ijs .ring-job-card-stroke {\n --tw-ring-color: var(--i-job-card-stroke-color);\n}\n\n #ijs .ring-neutral-4 {\n --tw-ring-color: var(--i-color-n-4);\n}\n\n #ijs .ring-neutral-5 {\n --tw-ring-color: var(--i-color-n-5);\n}\n\n #ijs .ring-section-strong-stroke {\n --tw-ring-color: var(--i-section-strong-stroke-color);\n}\n\n #ijs .ring-section-weak-stroke {\n --tw-ring-color: var(--i-section-weak-stroke-color);\n}\n\n #ijs .ring-tag-accent-strong-bg {\n --tw-ring-color: var(--i-tag-accent-strong-bg);\n}\n\n #ijs .blur {\n --tw-blur: blur(8px);\n 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);\n}\n\n #ijs .grayscale {\n --tw-grayscale: grayscale(100%);\n 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);\n}\n\n #ijs .invert {\n --tw-invert: invert(100%);\n 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);\n}\n\n #ijs .sepia {\n --tw-sepia: sepia(100%);\n 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);\n}\n\n #ijs .filter {\n 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);\n}\n\n #ijs .backdrop-filter {\n -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);\n 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);\n}\n\n #ijs .transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .duration-medium {\n transition-duration: .6s;\n}\n\n #ijs .duration-slow {\n transition-duration: .9s;\n}\n\n #ijs .duration-snappy {\n transition-duration: .4s;\n}\n\n #ijs .ease-expo-out {\n transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n #ijs .will-change-\\[transform\\2c opacity\\] {\n will-change: transform,opacity;\n}\n\n #ijs .gutter-stable {\n scrollbar-gutter: stable;\n}\n\n #ijs .font-style-default {\n font-style: var(--i-font-style);\n}\n\n #ijs .font-style-filter {\n font-style: var(--i-style-filter);\n}\n\n #ijs .font-style-input {\n font-style: var(--i-style-input);\n}\n\n #ijs .font-style-job-heading {\n font-style: var(--i-style-job-heading);\n}\n\n #ijs .font-style-tag {\n font-style: var(--i-style-tag);\n}\n\n #ijs .top-filters {\n top: var(--i-filters-offset-top);\n}\n\n #ijs .fr {\n outline: none;\n}\n\n #ijs .fr:focus {\n outline: none;\n}\n\n #ijs .fr:focus-visible {\n outline: none;\n --tw-ring-offset-width: 1px;\n --tw-ring-offset-color: var(--i-color-lowest);\n --tw-ring-opacity: 1;\n --tw-ring-color: var(--i-color-a-9);\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 #ijs .fr-parent:has(.fr-child:focus-visible) {\n outline: none;\n --tw-ring-offset-width: 1px;\n --tw-ring-offset-color: var(--i-color-lowest);\n --tw-ring-opacity: 1;\n --tw-ring-color: var(--i-color-a-9);\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 #ijs .fr-child {}\n\n #ijs .touch-hitbox::before {\n content: '';\n position: absolute;\n display: block;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 100%;\n height: 100%;\n min-height: 44px;\n min-width: 44px;\n z-index: 9999;\n}\n\n #ijs .\\[-webkit-user-drag\\:none\\] {\n -webkit-user-drag: none;\n}\n\n #ijs .\\[a-zA-Z0-9-_\\:\\.\\$\\@\\?\\] {\n a-z-a--z0-9-_: .$@?;\n}\n\n #ijs .\\[text-wrap\\:balance\\] {\n text-wrap: balance;\n}\n\n #ijs .\\[text-wrap\\:pretty\\] {\n text-wrap: pretty;\n}\n\n #ijs .placeholder\\:text-neutral-10::-moz-placeholder {\n color: var(--i-color-n-10);\n}\n\n #ijs .placeholder\\:text-neutral-10::placeholder {\n color: var(--i-color-n-10);\n}\n\n #ijs .autofill\\:shadow-\\[inset_0_0_0_1000px_var\\(--i-color-a-2\\)\\]:-webkit-autofill {\n --tw-shadow: inset 0 0 0 1000px var(--i-color-a-2);\n --tw-shadow-colored: inset 0 0 0 1000px 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\n #ijs .autofill\\:shadow-\\[inset_0_0_0_1000px_var\\(--i-color-a-2\\)\\]:autofill {\n --tw-shadow: inset 0 0 0 1000px var(--i-color-a-2);\n --tw-shadow-colored: inset 0 0 0 1000px 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\n #ijs .autofill\\:\\[-webkit-text-fill-color\\:var\\(--i-color-a-11\\)\\]:-webkit-autofill {\n -webkit-text-fill-color: var(--i-color-a-11);\n}\n\n #ijs .autofill\\:\\[-webkit-text-fill-color\\:var\\(--i-color-a-11\\)\\]:autofill {\n -webkit-text-fill-color: var(--i-color-a-11);\n}\n\n #ijs .focus-within\\:z-10:focus-within {\n z-index: 10;\n}\n\n #ijs .hover\\:scale-\\[1\\.02\\]:hover {\n --tw-scale-x: 1.02;\n --tw-scale-y: 1.02;\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\n #ijs .focus\\:relative:focus {\n position: relative;\n}\n\n #ijs .focus\\:shadow-\\[0_0_0_2px\\]:focus {\n --tw-shadow: 0 0 0 2px;\n --tw-shadow-colored: 0 0 0 2px 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\n #ijs .focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n #ijs .autofill\\:focus\\:shadow-\\[inset_0_0_0_1000px_var\\(--i-color-a-1\\)\\]:focus:-webkit-autofill {\n --tw-shadow: inset 0 0 0 1000px var(--i-color-a-1);\n --tw-shadow-colored: inset 0 0 0 1000px 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\n #ijs .autofill\\:focus\\:shadow-\\[inset_0_0_0_1000px_var\\(--i-color-a-1\\)\\]:focus:autofill {\n --tw-shadow: inset 0 0 0 1000px var(--i-color-a-1);\n --tw-shadow-colored: inset 0 0 0 1000px 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\n #ijs .active\\:-scale-100:active {\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}\n\n #ijs .active\\:scale-95:active {\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}\n\n #ijs .active\\:scale-\\[\\.97\\]:active {\n --tw-scale-x: .97;\n --tw-scale-y: .97;\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\n #ijs .active\\:scale-\\[0\\.975\\]:active {\n --tw-scale-x: 0.975;\n --tw-scale-y: 0.975;\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\n #ijs .active\\:bg-accent-10:active {\n background-color: var(--i-color-a-10);\n}\n\n #ijs .active\\:bg-job-card-bg-active:active {\n background-color: var(--i-job-card-bg-active);\n}\n\n #ijs .active\\:ring-job-card-stroke-active:active {\n --tw-ring-color: var(--i-job-card-stroke-color-active);\n}\n\n #ijs .group:first-child .group-\\[\\&\\:first-child\\]\\:rounded-t-tag {\n border-top-left-radius: var(--i-radius-job-tag);\n border-top-right-radius: var(--i-radius-job-tag);\n}\n\n #ijs .group:last-child .group-\\[\\&\\:last-child\\]\\:rounded-b-tag {\n border-bottom-right-radius: var(--i-radius-job-tag);\n border-bottom-left-radius: var(--i-radius-job-tag);\n}\n\n #ijs .has-\\[\\[data-current-value\\=true\\]\\]\\:border-b-accent-3:has([data-current-value=true]) {\n border-bottom-color: var(--i-color-a-3);\n}\n\n #ijs .data-\\[state\\=idle\\]\\:translate-y-full[data-state=idle] {\n --tw-translate-y: 100%;\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\n #ijs .data-\\[state\\=loading\\]\\:-translate-y-full[data-state=loading] {\n --tw-translate-y: -100%;\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\n #ijs .data-\\[state\\=success\\]\\:translate-y-full[data-state=success] {\n --tw-translate-y: 100%;\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\n #ijs .data-\\[state\\=idle\\]\\:opacity-0[data-state=idle] {\n opacity: 0;\n}\n\n #ijs .data-\\[state\\=idle\\]\\:opacity-100[data-state=idle] {\n opacity: 1;\n}\n\n @media (pointer: coarse) {\n\n #ijs .pointer-coarse\\:max-h-\\\\\\[var\\\\\\(--maxHeight\\\\\\)\\\\\\] {\n max-height: var(--maxHeight);\n }\n}\n\n @media (pointer: coarse) {\n\n #ijs .pointer-coarse\\:overflow-x-auto {\n overflow-x: auto;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:flex-col {\n flex-direction: column;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:flex-wrap {\n flex-wrap: wrap;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:flex-nowrap {\n flex-wrap: nowrap;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:rounded-section {\n border-radius: var(--i-radius-section);\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:bg-app {\n background-color: var(--i-app-bg);\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:p-2 {\n padding: 0.5rem;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:ring-width-section {\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(var(--i-section-stroke-width) + 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\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:hover\\:bg-interactive-accent-bg-hover:hover {\n background-color: var(--i-interactive-accent-bg-hover);\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:hover\\:bg-interactive-neutral-bg-hover:hover {\n background-color: var(--i-interactive-neutral-bg-hover);\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .group:hover .pointer-fine\\:group-hover\\:text-copy-neutral {\n color: var(--i-copy);\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:col-span-2 {\n grid-column: span 2 / span 2;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:grid {\n display: grid;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:px-0 {\n padding-left: 0px;\n padding-right: 0px;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n}\n\n @media (min-width: 1024px) {\n\n #ijs .lg\\:ring-width-section {\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(var(--i-section-stroke-width) + 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\n #ijs .\\[\\&\\:has\\(\\.fr-child\\:active\\)\\]\\:scale-\\[0\\.975\\]:has(.fr-child:active) {\n --tw-scale-x: 0.975;\n --tw-scale-y: 0.975;\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\n #ijs .\\[\\&\\:not\\(\\:last-child\\)\\]\\:border-b-px:not(:last-child) {\n border-bottom-width: 1px;\n}\n";
5094
+ const tailwind = "#ijs {\n font-size: 16px;\n --tw-content: '';\n}\n\n #ijs * {\n box-sizing: border-box;\n border-style: solid;\n border-width: 0;\n -webkit-tap-highlight-color: transparent;\n font-family: inherit;\n font-style: inherit;\n font-weight: inherit;\n }\n\n #ijs ::before,\n #ijs ::after {\n box-sizing: border-box;\n }\n\n #ijs :is(a) {\n text-decoration: none;\n }\n\n #ijs :is(ul, ol) {\n list-style: none;\n padding: 0;\n margin: 0;\n }\n\n #ijs :is(p) {\n margin: 0;\n padding: 0;\n }\n\n #ijs :is(li) {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n #ijs :is(button),\n #ijs :is(a) {\n display: block;\n margin: 0;\n padding: 0;\n border: unset;\n background: unset;\n text-align: unset;\n }\n\n #ijs :is(input),\n #ijs :is(textarea) {\n display: block;\n margin: 0;\n padding: 0;\n min-width: 0;\n max-width: unset;\n width: 100%;\n }\n\n #ijs :is(svg) {\n display: block;\n }\n\n #ijs.reduced-motion * {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n scroll-behavior: auto !important;\n animation-delay: 0s !important;\n }\n\n @media (prefers-reduced-motion) {\n #ijs * {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n scroll-behavior: auto !important;\n animation-delay: 0s !important;\n }\n }\n\n #ijs *, #ijs ::before, #ijs ::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-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\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 --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n #ijs ::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-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\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 --tw-contain-size: ;\n --tw-contain-layout: ;\n --tw-contain-paint: ;\n --tw-contain-style: ;\n}\n\n #ijs .container {\n width: 100%;\n}\n\n @media (min-width: 640px) {\n\n #ijs .container {\n max-width: 640px;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .container {\n max-width: 768px;\n }\n}\n\n @media (min-width: 1024px) {\n\n #ijs .container {\n max-width: 1024px;\n }\n}\n\n @media (min-width: 1280px) {\n\n #ijs .container {\n max-width: 1280px;\n }\n}\n\n @media (min-width: 1536px) {\n\n #ijs .container {\n max-width: 1536px;\n }\n}\n\n #ijs .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n #ijs .not-sr-only {\n position: static;\n width: auto;\n height: auto;\n padding: 0;\n margin: 0;\n overflow: visible;\n clip: auto;\n white-space: normal;\n}\n\n #ijs .pointer-events-none {\n pointer-events: none;\n}\n\n #ijs .visible {\n visibility: visible;\n}\n\n #ijs .invisible {\n visibility: hidden;\n}\n\n #ijs .collapse {\n visibility: collapse;\n}\n\n #ijs .static {\n position: static;\n}\n\n #ijs .fixed {\n position: fixed;\n}\n\n #ijs .absolute {\n position: absolute;\n}\n\n #ijs .relative {\n position: relative;\n}\n\n #ijs .sticky {\n position: sticky;\n}\n\n #ijs .bottom-0 {\n bottom: 0px;\n}\n\n #ijs .right-0 {\n right: 0px;\n}\n\n #ijs .top-0 {\n top: 0px;\n}\n\n #ijs .isolate {\n isolation: isolate;\n}\n\n #ijs .z-50 {\n z-index: 50;\n}\n\n #ijs .order-1 {\n order: 1;\n}\n\n #ijs .order-2 {\n order: 2;\n}\n\n #ijs .col-span-full {\n grid-column: 1 / -1;\n}\n\n #ijs .row-span-full {\n grid-row: 1 / -1;\n}\n\n #ijs .-m-4 {\n margin: -1rem;\n}\n\n #ijs .m-0 {\n margin: 0px;\n}\n\n #ijs .m-11 {\n margin: 2.75rem;\n}\n\n #ijs .m-3 {\n margin: 0.75rem;\n}\n\n #ijs .m-4 {\n margin: 1rem;\n}\n\n #ijs .mx-auto {\n margin-left: auto;\n margin-right: auto;\n}\n\n #ijs .ml-auto {\n margin-left: auto;\n}\n\n #ijs .mt-0\\.5 {\n margin-top: 0.125rem;\n}\n\n #ijs .block {\n display: block;\n}\n\n #ijs .inline-block {\n display: inline-block;\n}\n\n #ijs .inline {\n display: inline;\n}\n\n #ijs .flex {\n display: flex;\n}\n\n #ijs .inline-flex {\n display: inline-flex;\n}\n\n #ijs .table {\n display: table;\n}\n\n #ijs .table-row {\n display: table-row;\n}\n\n #ijs .flow-root {\n display: flow-root;\n}\n\n #ijs .grid {\n display: grid;\n}\n\n #ijs .inline-grid {\n display: inline-grid;\n}\n\n #ijs .contents {\n display: contents;\n}\n\n #ijs .list-item {\n display: list-item;\n}\n\n #ijs .\\!hidden {\n display: none !important;\n}\n\n #ijs .hidden {\n display: none;\n}\n\n #ijs .h-12 {\n height: 3rem;\n}\n\n #ijs .h-4 {\n height: 1rem;\n}\n\n #ijs .h-8 {\n height: 2rem;\n}\n\n #ijs .h-\\[1lh\\] {\n height: 1lh;\n}\n\n #ijs .h-full {\n height: 100%;\n}\n\n #ijs .max-h-\\[var\\(--maxHeight\\)\\] {\n max-height: var(--maxHeight);\n}\n\n #ijs .min-h-\\[1em\\] {\n min-height: 1em;\n}\n\n #ijs .min-h-\\[36px\\] {\n min-height: 36px;\n}\n\n #ijs .min-h-screen {\n min-height: 100vh;\n}\n\n #ijs .w-4 {\n width: 1rem;\n}\n\n #ijs .w-64 {\n width: 16rem;\n}\n\n #ijs .w-\\[10ch\\] {\n width: 10ch;\n}\n\n #ijs .w-\\[2\\.5ch\\] {\n width: 2.5ch;\n}\n\n #ijs .w-\\[6ch\\] {\n width: 6ch;\n}\n\n #ijs .w-\\[8ch\\] {\n width: 8ch;\n}\n\n #ijs .w-full {\n width: 100%;\n}\n\n #ijs .min-w-0 {\n min-width: 0px;\n}\n\n #ijs .max-w-\\[var\\(--radix-popover-content-available-width\\)\\] {\n max-width: var(--radix-popover-content-available-width);\n}\n\n #ijs .max-w-full {\n max-width: 100%;\n}\n\n #ijs .max-w-screen-lg {\n max-width: 1024px;\n}\n\n #ijs .flex-1 {\n flex: 1 1 0%;\n}\n\n #ijs .flex-none {\n flex: none;\n}\n\n #ijs .flex-shrink {\n flex-shrink: 1;\n}\n\n #ijs .shrink {\n flex-shrink: 1;\n}\n\n #ijs .shrink-0 {\n flex-shrink: 0;\n}\n\n #ijs .flex-grow {\n flex-grow: 1;\n}\n\n #ijs .grow {\n flex-grow: 1;\n}\n\n #ijs .border-collapse {\n border-collapse: collapse;\n}\n\n #ijs .origin-\\[50\\%_1\\.75rem\\] {\n transform-origin: 50% 1.75rem;\n}\n\n #ijs .origin-top {\n transform-origin: top;\n}\n\n #ijs .translate-y-0 {\n --tw-translate-y: 0px;\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\n #ijs .transform {\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\n @keyframes selected-tag {\n\n 0% {\n transform: scale(1.11);\n }\n\n 100% {\n transform: scale(1);\n }\n}\n\n #ijs .animate-selected-tag {\n animation: selected-tag .9s cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n @keyframes skeleton {\n\n 0% {\n opacity: 0.2;\n }\n\n 50% {\n opacity: 0.6;\n }\n\n 100% {\n opacity: 0.25;\n }\n}\n\n #ijs .animate-skeleton {\n animation: skeleton 1.2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n}\n\n @keyframes slide-in-bottom {\n\n 0% {\n transform: translateY(-50%);\n }\n\n 100% {\n transform: translateY(0);\n }\n}\n\n #ijs .animate-slide-in-bottom {\n animation: slide-in-bottom .4s cubic-bezier(0.16, 1, 0.3, 1) both;\n}\n\n #ijs .cursor-default {\n cursor: default;\n}\n\n #ijs .cursor-pointer {\n cursor: pointer;\n}\n\n #ijs .select-none {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n #ijs .resize {\n resize: both;\n}\n\n #ijs .appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n #ijs .flex-col {\n flex-direction: column;\n}\n\n #ijs .flex-wrap {\n flex-wrap: wrap;\n}\n\n #ijs .items-start {\n align-items: flex-start;\n}\n\n #ijs .items-center {\n align-items: center;\n}\n\n #ijs .items-stretch {\n align-items: stretch;\n}\n\n #ijs .justify-end {\n justify-content: flex-end;\n}\n\n #ijs .justify-center {\n justify-content: center;\n}\n\n #ijs .justify-between {\n justify-content: space-between;\n}\n\n #ijs .gap-1 {\n gap: 0.25rem;\n}\n\n #ijs .gap-1\\.5 {\n gap: 0.375rem;\n}\n\n #ijs .gap-2 {\n gap: 0.5rem;\n}\n\n #ijs .gap-2\\.5 {\n gap: 0.625rem;\n}\n\n #ijs .gap-3 {\n gap: 0.75rem;\n}\n\n #ijs .gap-4 {\n gap: 1rem;\n}\n\n #ijs .gap-logo {\n gap: var(--i-logo-gap);\n}\n\n #ijs .self-center {\n align-self: center;\n}\n\n #ijs .overflow-hidden {\n overflow: hidden;\n}\n\n #ijs .overflow-y-auto {\n overflow-y: auto;\n}\n\n #ijs .truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n #ijs .text-pretty {\n text-wrap: pretty;\n}\n\n #ijs .rounded-app {\n border-radius: var(--i-radius-app);\n}\n\n #ijs .rounded-input {\n border-radius: var(--i-radius-input);\n}\n\n #ijs .rounded-interactive {\n border-radius: var(--i-radius-interactive);\n}\n\n #ijs .rounded-job-card {\n border-radius: var(--i-radius-job-card);\n}\n\n #ijs .rounded-job-tag {\n border-radius: var(--i-radius-job-tag);\n}\n\n #ijs .rounded-logo {\n border-radius: var(--i-radius-logo);\n}\n\n #ijs .rounded-section {\n border-radius: var(--i-radius-section);\n}\n\n #ijs .rounded-tag {\n border-radius: var(--i-radius-job-tag);\n}\n\n #ijs .border-px {\n border-width: 1px;\n}\n\n #ijs .border-solid {\n border-style: solid;\n}\n\n #ijs .border-neutral-2 {\n border-color: var(--i-color-n-2);\n}\n\n #ijs .border-tag-accent-strong-stroke {\n border-color: var(--i-tag-accent-strong-stroke-color);\n}\n\n #ijs .border-tag-monetary-weak-stroke {\n border-color: var(--i-tag-monetary-weak-stroke-color);\n}\n\n #ijs .border-tag-neutral-strong-stroke {\n border-color: var(--i-tag-neutral-strong-stroke-color);\n}\n\n #ijs .border-tag-neutral-weak-stroke {\n border-color: var(--i-tag-neutral-weak-stroke-color);\n}\n\n #ijs .border-transparent {\n border-color: transparent;\n}\n\n #ijs .bg-\\[currentColor\\] {\n background-color: currentColor;\n}\n\n #ijs .bg-accent-2 {\n background-color: var(--i-color-a-2);\n}\n\n #ijs .bg-accent-4 {\n background-color: var(--i-color-a-4);\n}\n\n #ijs .bg-accent-9 {\n background-color: var(--i-color-a-9);\n}\n\n #ijs .bg-app {\n background-color: var(--i-app-bg);\n}\n\n #ijs .bg-copy-neutral {\n background-color: var(--i-copy);\n}\n\n #ijs .bg-interactive-accent-bg {\n background-color: var(--i-interactive-accent-bg);\n}\n\n #ijs .bg-interactive-neutral-bg {\n background-color: var(--i-interactive-neutral-bg);\n}\n\n #ijs .bg-job-card-bg {\n background-color: var(--i-job-card-bg);\n}\n\n #ijs .bg-lowest {\n background-color: var(--i-color-lowest);\n}\n\n #ijs .bg-neutral-1 {\n background-color: var(--i-color-n-1);\n}\n\n #ijs .bg-neutral-12 {\n background-color: var(--i-color-n-12);\n}\n\n #ijs .bg-neutral-2 {\n background-color: var(--i-color-n-2);\n}\n\n #ijs .bg-section-strong-bg {\n background-color: var(--i-section-strong-bg);\n}\n\n #ijs .bg-section-weak-bg {\n background-color: var(--i-section-weak-bg);\n}\n\n #ijs .bg-tag-accent-strong-bg {\n background-color: var(--i-tag-accent-strong-bg);\n}\n\n #ijs .bg-tag-monetary-weak-bg {\n background-color: var(--i-tag-monetary-weak-bg);\n}\n\n #ijs .bg-tag-neutral-strong-bg {\n background-color: var(--i-tag-neutral-strong-bg);\n}\n\n #ijs .bg-tag-neutral-weak-bg {\n background-color: var(--i-tag-neutral-weak-bg);\n}\n\n #ijs .object-contain {\n -o-object-fit: contain;\n object-fit: contain;\n}\n\n #ijs .p-0 {\n padding: 0px;\n}\n\n #ijs .p-1 {\n padding: 0.25rem;\n}\n\n #ijs .p-2 {\n padding: 0.5rem;\n}\n\n #ijs .p-4 {\n padding: 1rem;\n}\n\n #ijs .p-6 {\n padding: 1.5rem;\n}\n\n #ijs .px-1 {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n}\n\n #ijs .px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n #ijs .px-2\\.5 {\n padding-left: 0.625rem;\n padding-right: 0.625rem;\n}\n\n #ijs .px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n #ijs .px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n\n #ijs .px-5 {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\n\n #ijs .py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n #ijs .py-1\\.5 {\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n}\n\n #ijs .py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n #ijs .py-2\\.5 {\n padding-top: 0.625rem;\n padding-bottom: 0.625rem;\n}\n\n #ijs .py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n #ijs .pb-4 {\n padding-bottom: 1rem;\n}\n\n #ijs .pl-1 {\n padding-left: 0.25rem;\n}\n\n #ijs .pl-2 {\n padding-left: 0.5rem;\n}\n\n #ijs .pl-2\\.5 {\n padding-left: 0.625rem;\n}\n\n #ijs .pl-3 {\n padding-left: 0.75rem;\n}\n\n #ijs .pl-4 {\n padding-left: 1rem;\n}\n\n #ijs .pl-5 {\n padding-left: 1.25rem;\n}\n\n #ijs .pr-1 {\n padding-right: 0.25rem;\n}\n\n #ijs .pr-2\\.5 {\n padding-right: 0.625rem;\n}\n\n #ijs .pr-3 {\n padding-right: 0.75rem;\n}\n\n #ijs .pr-5 {\n padding-right: 1.25rem;\n}\n\n #ijs .pr-8 {\n padding-right: 2rem;\n}\n\n #ijs .pt-1 {\n padding-top: 0.25rem;\n}\n\n #ijs .text-center {\n text-align: center;\n}\n\n #ijs .text-justify {\n text-align: justify;\n}\n\n #ijs .align-middle {\n vertical-align: middle;\n}\n\n #ijs .font-family-default {\n font-family: var(--i-font);\n}\n\n #ijs .font-family-filter {\n font-family: var(--i-font-filter);\n}\n\n #ijs .font-family-job-heading {\n font-family: var(--i-font-job-heading);\n}\n\n #ijs .font-family-tag {\n font-family: var(--i-font-tag);\n}\n\n #ijs .text-\\[10px\\] {\n font-size: 10px;\n}\n\n #ijs .text-style-filter {\n font-size: 1rem;\n line-height: 1.5rem;\n letter-spacing: -0.01em;\n}\n\n #ijs .text-style-input {\n font-size: 1rem;\n line-height: 1.5rem;\n}\n\n #ijs .text-style-job-card {\n font-size: 0.875rem;\n line-height: 1.125rem;\n}\n\n #ijs .text-style-job-card-info {\n font-size: 0.75rem;\n line-height: 1.125rem;\n}\n\n #ijs .text-style-job-heading {\n font-size: 1.125rem;\n line-height: 1.5rem;\n}\n\n #ijs .text-style-tag {\n font-size: 0.875rem;\n line-height: 1.5rem;\n}\n\n #ijs .font-weight-default {\n font-weight: var(--i-weight-default);\n}\n\n #ijs .font-weight-filter {\n font-weight: var(--i-weight-filter);\n}\n\n #ijs .font-weight-input {\n font-weight: var(--i-weight-input);\n}\n\n #ijs .font-weight-job-heading {\n font-weight: var(--i-weight-job-heading);\n}\n\n #ijs .font-weight-tag {\n font-weight: var(--i-weight-tag);\n}\n\n #ijs .uppercase {\n text-transform: uppercase;\n}\n\n #ijs .lowercase {\n text-transform: lowercase;\n}\n\n #ijs .capitalize {\n text-transform: capitalize;\n}\n\n #ijs .italic {\n font-style: italic;\n}\n\n #ijs .ordinal {\n --tw-ordinal: ordinal;\n font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);\n}\n\n #ijs .tabular-nums {\n --tw-numeric-spacing: tabular-nums;\n font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);\n}\n\n #ijs .leading-none {\n line-height: 1;\n}\n\n #ijs .leading-snug {\n line-height: 1.375;\n}\n\n #ijs .text-\\[\\#E5484D\\] {\n --tw-text-opacity: 1;\n color: rgb(229 72 77 / var(--tw-text-opacity));\n}\n\n #ijs .text-accent-1 {\n color: var(--i-color-a-1);\n}\n\n #ijs .text-accent-11 {\n color: var(--i-color-a-11);\n}\n\n #ijs .text-copy-accent {\n color: var(--i-copy-accent);\n}\n\n #ijs .text-copy-job-info {\n color: var(--i-copy-info);\n}\n\n #ijs .text-copy-neutral {\n color: var(--i-copy);\n}\n\n #ijs .text-copy-neutral-icon {\n color: var(--i-copy-icon);\n}\n\n #ijs .text-copy-neutral-lowcontrast {\n color: var(--i-copy-lowcontrast);\n}\n\n #ijs .text-interactive-accent-text {\n color: var(--i-interactive-accent-text);\n}\n\n #ijs .text-interactive-neutral-bg {\n color: var(--i-interactive-neutral-bg);\n}\n\n #ijs .text-interactive-neutral-text {\n color: var(--i-interactive-neutral-text);\n}\n\n #ijs .text-neutral-1 {\n color: var(--i-color-n-1);\n}\n\n #ijs .text-neutral-10 {\n color: var(--i-color-n-10);\n}\n\n #ijs .text-neutral-11 {\n color: var(--i-color-n-11);\n}\n\n #ijs .text-neutral-8 {\n color: var(--i-color-n-8);\n}\n\n #ijs .text-tag-accent-strong-bg {\n color: var(--i-tag-accent-strong-bg);\n}\n\n #ijs .text-tag-accent-strong-copy {\n color: var(--i-tag-accent-strong-copy);\n}\n\n #ijs .text-tag-monetary-weak-copy {\n color: var(--i-tag-monetary-weak-copy);\n}\n\n #ijs .text-tag-neutral-strong-copy {\n color: var(--i-tag-neutral-strong-copy);\n}\n\n #ijs .text-tag-neutral-weak-copy {\n color: var(--i-tag-neutral-weak-copy);\n}\n\n #ijs .underline {\n text-decoration-line: underline;\n}\n\n #ijs .caret-accent-11 {\n caret-color: var(--i-color-a-11);\n}\n\n #ijs .opacity-0 {\n opacity: 0;\n}\n\n #ijs .opacity-20 {\n opacity: 0.2;\n}\n\n #ijs .opacity-25 {\n opacity: 0.25;\n}\n\n #ijs .shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px 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\n #ijs .shadow-\\[0_0_0_1px\\] {\n --tw-shadow: 0 0 0 1px;\n --tw-shadow-colored: 0 0 0 1px 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\n #ijs .outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n #ijs .outline {\n outline-style: solid;\n}\n\n #ijs .ring-\\[1px\\] {\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\n #ijs .ring-px {\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\n #ijs .ring-width-job-card {\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(var(--i-job-card-stroke-width) + 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 #ijs .ring-width-section {\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(var(--i-section-stroke-width) + 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 #ijs .ring-job-card-stroke {\n --tw-ring-color: var(--i-job-card-stroke-color);\n}\n\n #ijs .ring-neutral-4 {\n --tw-ring-color: var(--i-color-n-4);\n}\n\n #ijs .ring-neutral-5 {\n --tw-ring-color: var(--i-color-n-5);\n}\n\n #ijs .ring-section-strong-stroke {\n --tw-ring-color: var(--i-section-strong-stroke-color);\n}\n\n #ijs .ring-section-weak-stroke {\n --tw-ring-color: var(--i-section-weak-stroke-color);\n}\n\n #ijs .ring-tag-accent-strong-bg {\n --tw-ring-color: var(--i-tag-accent-strong-bg);\n}\n\n #ijs .blur {\n --tw-blur: blur(8px);\n 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);\n}\n\n #ijs .grayscale {\n --tw-grayscale: grayscale(100%);\n 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);\n}\n\n #ijs .invert {\n --tw-invert: invert(100%);\n 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);\n}\n\n #ijs .sepia {\n --tw-sepia: sepia(100%);\n 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);\n}\n\n #ijs .filter {\n 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);\n}\n\n #ijs .backdrop-filter {\n -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);\n 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);\n}\n\n #ijs .transition {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n\n #ijs .duration-medium {\n transition-duration: .6s;\n}\n\n #ijs .duration-slow {\n transition-duration: .9s;\n}\n\n #ijs .duration-snappy {\n transition-duration: .4s;\n}\n\n #ijs .ease-expo-out {\n transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);\n}\n\n #ijs .will-change-\\[transform\\2c opacity\\] {\n will-change: transform,opacity;\n}\n\n #ijs .gutter-stable {\n scrollbar-gutter: stable;\n}\n\n #ijs .font-style-default {\n font-style: var(--i-font-style);\n}\n\n #ijs .font-style-filter {\n font-style: var(--i-style-filter);\n}\n\n #ijs .font-style-input {\n font-style: var(--i-style-input);\n}\n\n #ijs .font-style-job-heading {\n font-style: var(--i-style-job-heading);\n}\n\n #ijs .font-style-tag {\n font-style: var(--i-style-tag);\n}\n\n #ijs .top-filters {\n top: var(--i-filters-offset-top);\n}\n\n #ijs .fr {\n outline: none;\n}\n\n #ijs .fr:focus {\n outline: none;\n}\n\n #ijs .fr:focus-visible {\n outline: none;\n --tw-ring-offset-width: 1px;\n --tw-ring-offset-color: var(--i-color-lowest);\n --tw-ring-opacity: 1;\n --tw-ring-color: var(--i-color-a-9);\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 #ijs .fr-parent:has(.fr-child:focus-visible) {\n outline: none;\n --tw-ring-offset-width: 1px;\n --tw-ring-offset-color: var(--i-color-lowest);\n --tw-ring-opacity: 1;\n --tw-ring-color: var(--i-color-a-9);\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 #ijs .fr-child {}\n\n #ijs .touch-hitbox::before {\n content: '';\n position: absolute;\n display: block;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 100%;\n height: 100%;\n min-height: 44px;\n min-width: 44px;\n z-index: 9999;\n}\n\n #ijs .\\[-webkit-user-drag\\:none\\] {\n -webkit-user-drag: none;\n}\n\n #ijs .\\[a-zA-Z0-9-_\\:\\.\\$\\@\\?\\] {\n a-z-a--z0-9-_: .$@?;\n}\n\n #ijs .\\[text-wrap\\:balance\\] {\n text-wrap: balance;\n}\n\n #ijs .\\[text-wrap\\:pretty\\] {\n text-wrap: pretty;\n}\n\n #ijs .placeholder\\:text-neutral-10::-moz-placeholder {\n color: var(--i-color-n-10);\n}\n\n #ijs .placeholder\\:text-neutral-10::placeholder {\n color: var(--i-color-n-10);\n}\n\n #ijs .autofill\\:shadow-\\[inset_0_0_0_1000px_var\\(--i-color-a-2\\)\\]:-webkit-autofill {\n --tw-shadow: inset 0 0 0 1000px var(--i-color-a-2);\n --tw-shadow-colored: inset 0 0 0 1000px 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\n #ijs .autofill\\:shadow-\\[inset_0_0_0_1000px_var\\(--i-color-a-2\\)\\]:autofill {\n --tw-shadow: inset 0 0 0 1000px var(--i-color-a-2);\n --tw-shadow-colored: inset 0 0 0 1000px 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\n #ijs .autofill\\:\\[-webkit-text-fill-color\\:var\\(--i-color-a-11\\)\\]:-webkit-autofill {\n -webkit-text-fill-color: var(--i-color-a-11);\n}\n\n #ijs .autofill\\:\\[-webkit-text-fill-color\\:var\\(--i-color-a-11\\)\\]:autofill {\n -webkit-text-fill-color: var(--i-color-a-11);\n}\n\n #ijs .focus-within\\:z-10:focus-within {\n z-index: 10;\n}\n\n #ijs .hover\\:scale-\\[1\\.02\\]:hover {\n --tw-scale-x: 1.02;\n --tw-scale-y: 1.02;\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\n #ijs .hover\\:bg-neutral-2:hover {\n background-color: var(--i-color-n-2);\n}\n\n #ijs .focus\\:relative:focus {\n position: relative;\n}\n\n #ijs .focus\\:shadow-\\[0_0_0_2px\\]:focus {\n --tw-shadow: 0 0 0 2px;\n --tw-shadow-colored: 0 0 0 2px 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\n #ijs .focus\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n #ijs .autofill\\:focus\\:shadow-\\[inset_0_0_0_1000px_var\\(--i-color-a-1\\)\\]:focus:-webkit-autofill {\n --tw-shadow: inset 0 0 0 1000px var(--i-color-a-1);\n --tw-shadow-colored: inset 0 0 0 1000px 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\n #ijs .autofill\\:focus\\:shadow-\\[inset_0_0_0_1000px_var\\(--i-color-a-1\\)\\]:focus:autofill {\n --tw-shadow: inset 0 0 0 1000px var(--i-color-a-1);\n --tw-shadow-colored: inset 0 0 0 1000px 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\n #ijs .active\\:-scale-100:active {\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}\n\n #ijs .active\\:scale-95:active {\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}\n\n #ijs .active\\:scale-\\[\\.97\\]:active {\n --tw-scale-x: .97;\n --tw-scale-y: .97;\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\n #ijs .active\\:scale-\\[0\\.975\\]:active {\n --tw-scale-x: 0.975;\n --tw-scale-y: 0.975;\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\n #ijs .active\\:bg-accent-10:active {\n background-color: var(--i-color-a-10);\n}\n\n #ijs .active\\:bg-job-card-bg-active:active {\n background-color: var(--i-job-card-bg-active);\n}\n\n #ijs .active\\:ring-job-card-stroke-active:active {\n --tw-ring-color: var(--i-job-card-stroke-color-active);\n}\n\n #ijs .group\\/tag:first-child .group-\\[\\&\\:first-child\\]\\/tag\\:rounded-t-tag {\n border-top-left-radius: var(--i-radius-job-tag);\n border-top-right-radius: var(--i-radius-job-tag);\n}\n\n #ijs .group\\/tag:last-child .group-\\[\\&\\:last-child\\]\\/tag\\:rounded-b-tag {\n border-bottom-right-radius: var(--i-radius-job-tag);\n border-bottom-left-radius: var(--i-radius-job-tag);\n}\n\n #ijs .has-\\[\\[data-current-value\\=true\\]\\]\\:border-b-accent-3:has([data-current-value=true]) {\n border-bottom-color: var(--i-color-a-3);\n}\n\n #ijs .data-\\[state\\=idle\\]\\:translate-y-full[data-state=idle] {\n --tw-translate-y: 100%;\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\n #ijs .data-\\[state\\=loading\\]\\:-translate-y-full[data-state=loading] {\n --tw-translate-y: -100%;\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\n #ijs .data-\\[state\\=success\\]\\:translate-y-full[data-state=success] {\n --tw-translate-y: 100%;\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\n #ijs .data-\\[state\\=idle\\]\\:opacity-0[data-state=idle] {\n opacity: 0;\n}\n\n #ijs .data-\\[state\\=idle\\]\\:opacity-100[data-state=idle] {\n opacity: 1;\n}\n\n @media (pointer: coarse) {\n\n #ijs .pointer-coarse\\:max-h-\\\\\\[var\\\\\\(--maxHeight\\\\\\)\\\\\\] {\n max-height: var(--maxHeight);\n }\n}\n\n @media (pointer: coarse) {\n\n #ijs .pointer-coarse\\:overflow-x-auto {\n overflow-x: auto;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:flex-col {\n flex-direction: column;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:flex-wrap {\n flex-wrap: wrap;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:flex-nowrap {\n flex-wrap: nowrap;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:rounded-section {\n border-radius: var(--i-radius-section);\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:bg-app {\n background-color: var(--i-app-bg);\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:p-2 {\n padding: 0.5rem;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:ring-width-section {\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(var(--i-section-stroke-width) + 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\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:hover\\:bg-interactive-accent-bg-hover:hover {\n background-color: var(--i-interactive-accent-bg-hover);\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .pointer-fine\\:hover\\:bg-interactive-neutral-bg-hover:hover {\n background-color: var(--i-interactive-neutral-bg-hover);\n }\n}\n\n @media (pointer: fine) {\n\n #ijs .group:hover .pointer-fine\\:group-hover\\:text-copy-neutral {\n color: var(--i-copy);\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:col-span-2 {\n grid-column: span 2 / span 2;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:grid {\n display: grid;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:grid-cols-3 {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:px-0 {\n padding-left: 0px;\n padding-right: 0px;\n }\n}\n\n @media (min-width: 768px) {\n\n #ijs .md\\:px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n }\n}\n\n @media (min-width: 1024px) {\n\n #ijs .lg\\:ring-width-section {\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(var(--i-section-stroke-width) + 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\n #ijs .\\[\\&\\:has\\(\\.fr-child\\:active\\)\\]\\:scale-\\[0\\.975\\]:has(.fr-child:active) {\n --tw-scale-x: 0.975;\n --tw-scale-y: 0.975;\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\n #ijs .\\[\\&\\:not\\(\\:last-child\\)\\]\\:border-b-px:not(:last-child) {\n border-bottom-width: 1px;\n}\n";
4698
5095
  var COLOR_SHADES = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"];
4699
5096
  var OKLCH_PRESETS = {
4700
5097
  light: {