astro-tractstack 2.0.0-rc.8 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/LICENSE +8 -97
  2. package/README.md +7 -5
  3. package/bin/create-tractstack.js +35 -11
  4. package/dist/index.js +106 -29
  5. package/package.json +10 -5
  6. package/templates/css/frontend.css +1 -1
  7. package/templates/custom/minimal/CodeHook.astro +13 -12
  8. package/templates/custom/minimal/CustomRoutes.astro +25 -31
  9. package/templates/custom/with-examples/CodeHook.astro +22 -11
  10. package/templates/custom/with-examples/CustomRoutes.astro +4 -8
  11. package/templates/custom/with-examples/ProductCard.astro +29 -0
  12. package/templates/custom/with-examples/ProductCardWrapper.astro +43 -0
  13. package/templates/custom/with-examples/ProductGrid.astro +64 -0
  14. package/templates/custom/with-examples/pages/Collections.astro +58 -98
  15. package/templates/gitignore +42 -0
  16. package/templates/prettierignore +5 -0
  17. package/templates/prettierrc +19 -0
  18. package/templates/src/client/app.js +127 -0
  19. package/templates/src/client/htmx.min.js +3519 -0
  20. package/templates/src/client/view.js +429 -0
  21. package/templates/src/components/Footer.astro +4 -9
  22. package/templates/src/components/Header.astro +67 -60
  23. package/templates/src/components/Menu.tsx +188 -52
  24. package/templates/src/components/codehooks/BunnyVideoSetup.tsx +2 -2
  25. package/templates/src/components/codehooks/EpinetDurationSelector.tsx +9 -13
  26. package/templates/src/components/codehooks/EpinetTableView.tsx +11 -7
  27. package/templates/src/components/codehooks/EpinetWrapper.tsx +1 -0
  28. package/templates/src/components/codehooks/FeaturedArticle.astro +105 -0
  29. package/templates/src/components/codehooks/FeaturedArticleSetup.tsx +318 -0
  30. package/templates/src/components/codehooks/ListContent.astro +32 -162
  31. package/templates/src/components/codehooks/ListContentSetup.tsx +43 -138
  32. package/templates/src/components/codehooks/ProductCardSetup.tsx +152 -0
  33. package/templates/src/components/codehooks/ProductGridSetup.tsx +274 -0
  34. package/templates/src/components/codehooks/SearchWidget.tsx +453 -0
  35. package/templates/src/components/compositor/Node.tsx +3 -6
  36. package/templates/src/components/compositor/PanelVisibilityWrapper.tsx +21 -11
  37. package/templates/src/components/compositor/elements/BunnyVideo.tsx +21 -20
  38. package/templates/src/components/compositor/nodes/Pane.tsx +51 -21
  39. package/templates/src/components/compositor/nodes/RenderChildren.tsx +6 -1
  40. package/templates/src/components/compositor/nodes/Widget.tsx +16 -2
  41. package/templates/src/components/compositor/preview/FeaturedArticlePreview.tsx +155 -0
  42. package/templates/src/components/compositor/preview/PaneSnapshotGenerator.tsx +20 -1
  43. package/templates/src/components/edit/Header.tsx +10 -4
  44. package/templates/src/components/edit/PanelSwitch.tsx +11 -7
  45. package/templates/src/components/edit/SettingsPanel.tsx +29 -18
  46. package/templates/src/components/edit/ToolBar.tsx +1 -28
  47. package/templates/src/components/edit/ToolMode.tsx +45 -32
  48. package/templates/src/components/edit/pane/AddPanePanel_break.tsx +12 -2
  49. package/templates/src/components/edit/pane/AddPanePanel_codehook.tsx +8 -2
  50. package/templates/src/components/edit/pane/AddPanePanel_newAICopy_modal.tsx +1 -1
  51. package/templates/src/components/edit/pane/ConfigPanePanel.tsx +17 -27
  52. package/templates/src/components/edit/pane/PageGenSelector.tsx +16 -16
  53. package/templates/src/components/edit/pane/PageGenSpecial.tsx +26 -49
  54. package/templates/src/components/edit/pane/PageGen_preview.tsx +17 -2
  55. package/templates/src/components/edit/pane/PanePanel_path.tsx +2 -4
  56. package/templates/src/components/edit/pane/PanePanel_title.tsx +243 -76
  57. package/templates/src/components/edit/panels/StyleBreakPanel.tsx +17 -19
  58. package/templates/src/components/edit/panels/StyleCodeHookPanel.tsx +48 -37
  59. package/templates/src/components/edit/panels/StyleElementPanel_add.tsx +60 -55
  60. package/templates/src/components/edit/panels/StyleImagePanel_add.tsx +56 -50
  61. package/templates/src/components/edit/panels/StyleLiElementPanel_add.tsx +54 -47
  62. package/templates/src/components/edit/panels/StyleLinkPanel_add.tsx +54 -44
  63. package/templates/src/components/edit/panels/StyleLinkPanel_config.tsx +113 -138
  64. package/templates/src/components/edit/panels/StyleParentPanel_add.tsx +54 -40
  65. package/templates/src/components/edit/panels/StyleWidgetPanel.tsx +3 -3
  66. package/templates/src/components/edit/panels/StyleWidgetPanel_add.tsx +56 -49
  67. package/templates/src/components/edit/panels/StyleWidgetPanel_config.tsx +14 -5
  68. package/templates/src/components/edit/state/SaveModal.tsx +316 -169
  69. package/templates/src/components/edit/storyfragment/StoryFragmentPanel_og.tsx +1 -1
  70. package/templates/src/components/edit/storyfragment/StoryFragmentPanel_slug.tsx +56 -55
  71. package/templates/src/components/edit/widgets/BunnyWidget.tsx +538 -59
  72. package/templates/src/components/edit/widgets/InteractiveDisclosureWidget.tsx +656 -0
  73. package/templates/src/components/edit/widgets/ToggleWidget.tsx +9 -16
  74. package/templates/src/components/fields/ArtpackImage.tsx +4 -1
  75. package/templates/src/components/fields/BackgroundImage.tsx +1 -1
  76. package/templates/src/components/fields/BackgroundImageWrapper.tsx +127 -35
  77. package/templates/src/components/fields/ColorPickerCombo.tsx +66 -62
  78. package/templates/src/components/fields/ImageUpload.tsx +1 -1
  79. package/templates/src/components/fields/ViewportComboBox.tsx +59 -42
  80. package/templates/src/components/form/ActionBuilderBeliefSelector.tsx +117 -0
  81. package/templates/src/components/form/ActionBuilderField.tsx +306 -87
  82. package/templates/src/components/search/SearchModal.tsx +420 -0
  83. package/templates/src/components/search/SearchResults.tsx +367 -0
  84. package/templates/src/components/search/SearchWrapper.tsx +46 -0
  85. package/templates/src/components/storykeep/Dashboard_Advanced.tsx +1 -1
  86. package/templates/src/components/storykeep/Dashboard_Analytics.tsx +34 -8
  87. package/templates/src/components/storykeep/Dashboard_Content.tsx +6 -0
  88. package/templates/src/components/storykeep/StoryKeepBackdrop.astro +87 -0
  89. package/templates/src/components/storykeep/controls/content/BeliefForm.tsx +37 -33
  90. package/templates/src/components/storykeep/controls/content/MenuForm.tsx +55 -7
  91. package/templates/src/components/storykeep/controls/content/ResourceForm.tsx +17 -2
  92. package/templates/src/components/storykeep/controls/content/StoryFragmentTable.tsx +5 -8
  93. package/templates/src/components/storykeep/state/FetchAnalytics.tsx +274 -228
  94. package/templates/src/components/storykeep/widgets/Wizard.tsx +14 -7
  95. package/templates/src/components/tenant/RegistrationForm.tsx +1 -1
  96. package/templates/src/components/widgets/ImpressionWrapper.tsx +0 -1
  97. package/templates/src/constants/shapes.ts +9 -0
  98. package/templates/src/constants.ts +2121 -16
  99. package/templates/src/hooks/useSearch.ts +228 -0
  100. package/templates/src/layouts/Layout.astro +213 -104
  101. package/templates/src/lib/storyData.ts +4 -1
  102. package/templates/src/pages/[...slug]/edit.astro +14 -14
  103. package/templates/src/pages/[...slug].astro +82 -21
  104. package/templates/src/pages/api/orphan-analysis.ts +0 -1
  105. package/templates/src/pages/api/tailwind.ts +23 -21
  106. package/templates/src/pages/context/[...contextSlug]/edit.astro +14 -14
  107. package/templates/src/pages/context/[...contextSlug].astro +7 -2
  108. package/templates/src/pages/storykeep/advanced.astro +5 -4
  109. package/templates/src/pages/storykeep/branding.astro +5 -4
  110. package/templates/src/pages/storykeep/content.astro +5 -4
  111. package/templates/src/pages/storykeep/init.astro +40 -1
  112. package/templates/src/pages/storykeep/login.astro +1 -1
  113. package/templates/src/pages/storykeep.astro +5 -4
  114. package/templates/src/stores/nodes.ts +59 -88
  115. package/templates/src/stores/orphanAnalysis.ts +19 -21
  116. package/templates/src/stores/storykeep.ts +7 -0
  117. package/templates/src/types/compositorTypes.ts +6 -0
  118. package/templates/src/types/tractstack.ts +17 -0
  119. package/templates/src/utils/actions/lispLexer.ts +2 -2
  120. package/templates/src/utils/actions/preParse_Action.ts +3 -0
  121. package/templates/src/utils/api/beliefHelpers.ts +12 -36
  122. package/templates/src/utils/api/menuHelpers.ts +2 -2
  123. package/templates/src/utils/api.ts +26 -0
  124. package/templates/src/utils/compositor/TemplateNodes.ts +7 -0
  125. package/templates/src/utils/compositor/allowInsert.ts +5 -3
  126. package/templates/src/utils/compositor/nodesHelper.ts +4 -0
  127. package/templates/src/utils/compositor/processMarkdown.ts +16 -2
  128. package/templates/src/utils/compositor/reduceNodesClassNames.ts +4 -0
  129. package/templates/src/utils/compositor/templateMarkdownStyles.ts +13 -13
  130. package/templates/src/utils/compositor/typeGuards.ts +1 -0
  131. package/templates/src/utils/customHelpers.ts +38 -0
  132. package/templates/src/utils/helpers.ts +2 -2
  133. package/templates/src/utils/layout.ts +65 -144
  134. package/utils/inject-files.ts +95 -18
  135. package/templates/src/client/analytics-events.js +0 -207
  136. package/templates/src/client/belief-events.js +0 -191
  137. package/templates/src/client/sse.js +0 -613
  138. package/templates/src/components/codehooks/FeaturedContent.astro +0 -273
  139. package/templates/src/components/codehooks/FeaturedContentSetup.tsx +0 -738
  140. package/templates/src/components/compositor/preview/FeaturedContentPreview.tsx +0 -128
  141. package/templates/src/components/edit/pane/PanePanel_slug.tsx +0 -219
@@ -1 +1 @@
1
- /* ! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com */*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*, ::before, ::after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: } .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0} .pointer-events-none{pointer-events:none} .pointer-events-auto{pointer-events:auto} .visible{visibility:visible} .invisible{visibility:hidden} .collapse{visibility:collapse} .static{position:static} .fixed{position:fixed} .absolute{position:absolute} .relative{position:relative} .sticky{position:sticky} .inset-0{inset:0px} .inset-x-0{left:0px;right:0px} .inset-y-0{top:0px;bottom:0px} .bottom-0{bottom:0px} .bottom-1{bottom:0.25rem} .bottom-4{bottom:1rem} .bottom-full{bottom:100%} .left-0{left:0px} .left-1\/2{left:50%} .left-2{left:0.5rem} .left-3{left:0.75rem} .right-0{right:0px} .right-1{right:0.25rem} .right-2{right:0.5rem} .right-4{right:1rem} .right-8{right:2rem} .top-0{top:0px} .top-1\/2{top:50%} .top-2{top:0.5rem} .top-4{top:1rem} .top-8{top:2rem} .top-full{top:100%} .isolate{isolation:isolate} .isolation-auto{isolation:auto} .z-10{z-index:110} .z-102{z-index:1002} .z-50{z-index:510} .col-span-1{grid-column:span 1 / span 1} .col-span-3{grid-column:span 3 / span 3} .mx-1{margin-left:0.25rem;margin-right:0.25rem} .mx-2{margin-left:0.5rem;margin-right:0.5rem} .mx-4{margin-left:1rem;margin-right:1rem} .mx-5{margin-left:1.25rem;margin-right:1.25rem} .mx-auto{margin-left:auto;margin-right:auto} .my-16{margin-top:4rem;margin-bottom:4rem} .my-2{margin-top:0.5rem;margin-bottom:0.5rem} .my-3{margin-top:0.75rem;margin-bottom:0.75rem} .my-4{margin-top:1rem;margin-bottom:1rem} .my-8{margin-top:2rem;margin-bottom:2rem} .mb-1{margin-bottom:0.25rem} .mb-12{margin-bottom:3rem} .mb-2{margin-bottom:0.5rem} .mb-3{margin-bottom:0.75rem} .mb-4{margin-bottom:1rem} .mb-6{margin-bottom:1.5rem} .mb-8{margin-bottom:2rem} .ml-1{margin-left:0.25rem} .ml-2{margin-left:0.5rem} .ml-3{margin-left:0.75rem} .ml-4{margin-left:1rem} .ml-6{margin-left:1.5rem} .ml-auto{margin-left:auto} .mr-1{margin-right:0.25rem} .mr-2{margin-right:0.5rem} .mr-3{margin-right:0.75rem} .mt-1{margin-top:0.25rem} .mt-2{margin-top:0.5rem} .mt-3{margin-top:0.75rem} .mt-4{margin-top:1rem} .mt-5{margin-top:1.25rem} .mt-6{margin-top:1.5rem} .mt-8{margin-top:2rem} .line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1} .block{display:block} .inline-block{display:inline-block} .inline{display:inline} .flex{display:flex} .inline-flex{display:inline-flex} .table{display:table} .grid{display:grid} .inline-grid{display:inline-grid} .contents{display:contents} .list-item{display:list-item} .hidden{display:none} .aspect-video{aspect-ratio:16 / 9} .h-10{height:2.5rem} .h-12{height:3rem} .h-16{height:4rem} .h-2{height:0.5rem} .h-3{height:0.75rem} .h-32{height:8rem} .h-4{height:1rem} .h-48{height:12rem} .h-5{height:1.25rem} .h-6{height:1.5rem} .h-64{height:16rem} .h-8{height:2rem} .h-9{height:2.25rem} .h-96{height:24rem} .h-auto{height:auto} .h-full{height:100%} .max-h-32{max-height:8rem} .max-h-40{max-height:10rem} .max-h-56{max-height:14rem} .max-h-60{max-height:15rem} .max-h-64{max-height:16rem} .max-h-96{max-height:24rem} .min-h-16{min-height:4rem} .min-h-9{min-height:2.25rem} .min-h-screen{min-height:100vh} .w-1\/2{width:50%} .w-1\/3{width:33.333333%} .w-10{width:2.5rem} .w-11{width:2.75rem} .w-12{width:3rem} .w-16{width:4rem} .w-2{width:0.5rem} .w-2\/3{width:66.666667%} .w-20{width:5rem} .w-24{width:6rem} .w-3{width:0.75rem} .w-4{width:1rem} .w-40{width:10rem} .w-5{width:1.25rem} .w-6{width:1.5rem} .w-64{width:16rem} .w-8{width:2rem} .w-9{width:2.25rem} .w-96{width:24rem} .w-fit{width:fit-content} .w-full{width:100%} .w-screen{width:100vw} .min-w-0{min-width:0px} .min-w-24{min-width:6rem} .min-w-48{min-width:12rem} .min-w-64{min-width:16rem} .min-w-full{min-width:100%} .max-w-2xl{max-width:42rem} .max-w-3xl{max-width:48rem} .max-w-48{max-width:12rem} .max-w-4xl{max-width:56rem} .max-w-7xl{max-width:80rem} .max-w-full{max-width:100%} .max-w-lg{max-width:32rem} .max-w-md{max-width:28rem} .max-w-none{max-width:none} .max-w-xl{max-width:36rem} .flex-1{flex:1 1 0%} .flex-auto{flex:1 1 auto} .flex-shrink-0{flex-shrink:0} .shrink-0{flex-shrink:0} .flex-grow{flex-grow:1} .translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-x-1{--tw-translate-x:0.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-x-5{--tw-translate-x:1.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-x-6{--tw-translate-x:1.5rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-y-full{--tw-translate-y:100%;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))} .rotate-180{--tw-rotate:180deg;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))} .scale-125{--tw-scale-x:1.25;--tw-scale-y:1.25;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} @keyframes fadeIn{0%{opacity:.25}100%{opacity:1}} .animate-fadeIn{animation:fadeIn 1s ease-in} @keyframes pulse{50%{opacity:.5}} .animate-pulse{animation:pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite} @keyframes spin{to{transform:rotate(360deg)}} .animate-spin{animation:spin 1s linear infinite} .cursor-default{cursor:default} .cursor-help{cursor:help} .cursor-move{cursor:move} .cursor-not-allowed{cursor:not-allowed} .cursor-pointer{cursor:pointer} .select-none{user-select:none} .resize-y{resize:vertical} .resize{resize:both} .list-inside{list-style-position:inside} .list-disc{list-style-type:disc} .grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))} .grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))} .grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))} .flex-row{flex-direction:row} .flex-row-reverse{flex-direction:row-reverse} .flex-col{flex-direction:column} .flex-wrap{flex-wrap:wrap} .flex-nowrap{flex-wrap:nowrap} .items-start{align-items:flex-start} .items-end{align-items:flex-end} .items-center{align-items:center} .justify-start{justify-content:flex-start} .justify-end{justify-content:flex-end} .justify-center{justify-content:center} .justify-between{justify-content:space-between} .justify-around{justify-content:space-around} .gap-1{gap:0.25rem} .gap-2{gap:0.5rem} .gap-3{gap:0.75rem} .gap-4{gap:1rem} .gap-6{gap:1.5rem} .gap-x-2{column-gap:0.5rem} .gap-x-4{column-gap:1rem} .gap-x-6{column-gap:1.5rem} .gap-x-8{column-gap:2rem} .gap-y-1{row-gap:0.25rem} .gap-y-2{row-gap:0.5rem} .gap-y-3{row-gap:0.75rem} .space-x-1 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.25rem * var(--tw-space-x-reverse));margin-left:calc(0.25rem * calc(1 - var(--tw-space-x-reverse)))} .space-x-2 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.5rem * var(--tw-space-x-reverse));margin-left:calc(0.5rem * calc(1 - var(--tw-space-x-reverse)))} .space-x-3 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.75rem * var(--tw-space-x-reverse));margin-left:calc(0.75rem * calc(1 - var(--tw-space-x-reverse)))} .space-x-4 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))} .space-y-1 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.25rem * var(--tw-space-y-reverse))} .space-y-2 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.5rem * var(--tw-space-y-reverse))} .space-y-3 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.75rem * var(--tw-space-y-reverse))} .space-y-4 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))} .space-y-6 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))} .space-y-8 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))} .divide-y > :not([hidden]) ~ :not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))} .divide-gray-200 > :not([hidden]) ~ :not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))} .divide-gray-300 > :not([hidden]) ~ :not([hidden]){--tw-divide-opacity:1;border-color:rgb(209 213 219 / var(--tw-divide-opacity))} .justify-self-start{justify-self:start} .overflow-auto{overflow:auto} .overflow-hidden{overflow:hidden} .overflow-x-auto{overflow-x:auto} .overflow-y-auto{overflow-y:auto} .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap} .text-ellipsis{text-overflow:ellipsis} .text-clip{text-overflow:clip} .whitespace-normal{white-space:normal} .whitespace-nowrap{white-space:nowrap} .text-pretty{text-wrap:pretty} .break-all{word-break:break-all} .rounded{border-radius:0.25rem} .rounded-3xl{border-radius:1.5rem} .rounded-full{border-radius:9999px} .rounded-lg{border-radius:0.5rem} .rounded-md{border-radius:0.375rem} .rounded-sm{border-radius:0.125rem} .rounded-xl{border-radius:0.75rem} .rounded-b-md{border-bottom-right-radius:0.375rem;border-bottom-left-radius:0.375rem} .rounded-l-md{border-top-left-radius:0.375rem;border-bottom-left-radius:0.375rem} .rounded-r-md{border-top-right-radius:0.375rem;border-bottom-right-radius:0.375rem} .rounded-t-md{border-top-left-radius:0.375rem;border-top-right-radius:0.375rem} .border{border-width:1px} .border-0{border-width:0px} .border-2{border-width:2px} .border-4{border-width:4px} .border-b{border-bottom-width:1px} .border-b-2{border-bottom-width:2px} .border-l-2{border-left-width:2px} .border-t{border-top-width:1px} .border-solid{border-style:solid} .border-dashed{border-style:dashed} .border-dotted{border-style:dotted} .border-none{border-style:none} .border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138 / var(--tw-border-opacity))} .border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77 / var(--tw-border-opacity))} .border-black\/10{border-color:rgb(0 0 0 / 0.1)} .border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254 / var(--tw-border-opacity))} .border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246 / var(--tw-border-opacity))} .border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235 / var(--tw-border-opacity))} .border-cyan-200{--tw-border-opacity:1;border-color:rgb(165 243 252 / var(--tw-border-opacity))} .border-cyan-400{--tw-border-opacity:1;border-color:rgb(34 211 238 / var(--tw-border-opacity))} .border-cyan-500{--tw-border-opacity:1;border-color:rgb(6 182 212 / var(--tw-border-opacity))} .border-cyan-600{--tw-border-opacity:1;border-color:rgb(8 145 178 / var(--tw-border-opacity))} .border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity))} .border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity))} .border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity))} .border-gray-500{--tw-border-opacity:1;border-color:rgb(107 114 128 / var(--tw-border-opacity))} .border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208 / var(--tw-border-opacity))} .border-green-300{--tw-border-opacity:1;border-color:rgb(134 239 172 / var(--tw-border-opacity))} .border-myblue{--tw-border-opacity:1;border-color:rgb(41 63 88 / var(--tw-border-opacity))} .border-myblue\/20{border-color:rgb(41 63 88 / 0.2)} .border-mydarkgrey{--tw-border-opacity:1;border-color:rgb(57 61 52 / var(--tw-border-opacity))} .border-mydarkgrey\/30{border-color:rgb(57 61 52 / 0.3)} .border-mylightgrey{--tw-border-opacity:1;border-color:rgb(167 177 183 / var(--tw-border-opacity))} .border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170 / var(--tw-border-opacity))} .border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202 / var(--tw-border-opacity))} .border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165 / var(--tw-border-opacity))} .border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68 / var(--tw-border-opacity))} .border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240 / var(--tw-border-opacity))} .border-transparent{border-color:transparent} .border-white{--tw-border-opacity:1;border-color:rgb(255 255 255 / var(--tw-border-opacity))} .border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138 / var(--tw-border-opacity))} .border-r-transparent{border-right-color:transparent} .border-t-cyan-600{--tw-border-opacity:1;border-top-color:rgb(8 145 178 / var(--tw-border-opacity))} .border-t-gray-600{--tw-border-opacity:1;border-top-color:rgb(75 85 99 / var(--tw-border-opacity))} .border-t-gray-900{--tw-border-opacity:1;border-top-color:rgb(17 24 39 / var(--tw-border-opacity))} .border-t-red-600{--tw-border-opacity:1;border-top-color:rgb(220 38 38 / var(--tw-border-opacity))} .border-t-transparent{border-top-color:transparent} .bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199 / var(--tw-bg-opacity))} .bg-amber-400{--tw-bg-opacity:1;background-color:rgb(251 191 36 / var(--tw-bg-opacity))} .bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))} .bg-amber-600{--tw-bg-opacity:1;background-color:rgb(217 119 6 / var(--tw-bg-opacity))} .bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))} .bg-black\/10{background-color:rgb(0 0 0 / 0.1)} .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254 / var(--tw-bg-opacity))} .bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))} .bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246 / var(--tw-bg-opacity))} .bg-brand-1{background-color:var(--brand-1)} .bg-cyan-100{--tw-bg-opacity:1;background-color:rgb(207 250 254 / var(--tw-bg-opacity))} .bg-cyan-50{--tw-bg-opacity:1;background-color:rgb(236 254 255 / var(--tw-bg-opacity))} .bg-cyan-600{--tw-bg-opacity:1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))} .bg-cyan-600\/10{background-color:rgb(8 145 178 / 0.1)} .bg-cyan-700{--tw-bg-opacity:1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))} .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))} .bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))} .bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))} .bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))} .bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))} .bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))} .bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))} .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231 / var(--tw-bg-opacity))} .bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))} .bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))} .bg-lime-400{--tw-bg-opacity:1;background-color:rgb(163 230 53 / var(--tw-bg-opacity))} .bg-myblue{--tw-bg-opacity:1;background-color:rgb(41 63 88 / var(--tw-bg-opacity))} .bg-mydarkgrey{--tw-bg-opacity:1;background-color:rgb(57 61 52 / var(--tw-bg-opacity))} .bg-mylightgrey{--tw-bg-opacity:1;background-color:rgb(167 177 183 / var(--tw-bg-opacity))} .bg-myoffwhite{--tw-bg-opacity:1;background-color:rgb(227 227 227 / var(--tw-bg-opacity))} .bg-myorange{--tw-bg-opacity:1;background-color:rgb(245 131 51 / var(--tw-bg-opacity))} .bg-mywhite{--tw-bg-opacity:1;background-color:rgb(252 252 252 / var(--tw-bg-opacity))} .bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213 / var(--tw-bg-opacity))} .bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237 / var(--tw-bg-opacity))} .bg-orange-500{--tw-bg-opacity:1;background-color:rgb(249 115 22 / var(--tw-bg-opacity))} .bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12 / var(--tw-bg-opacity))} .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226 / var(--tw-bg-opacity))} .bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113 / var(--tw-bg-opacity))} .bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))} .bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))} .bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))} .bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))} .bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))} .bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252 / var(--tw-bg-opacity))} .bg-teal-400{--tw-bg-opacity:1;background-color:rgb(45 212 191 / var(--tw-bg-opacity))} .bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))} .bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195 / var(--tw-bg-opacity))} .bg-yellow-300{--tw-bg-opacity:1;background-color:rgb(253 224 71 / var(--tw-bg-opacity))} .bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))} .bg-opacity-0{--tw-bg-opacity:0} .bg-opacity-20{--tw-bg-opacity:0.2} .bg-opacity-50{--tw-bg-opacity:0.5} .bg-opacity-75{--tw-bg-opacity:0.75} .bg-opacity-80{--tw-bg-opacity:0.8} .bg-opacity-90{--tw-bg-opacity:0.9} .object-contain{object-fit:contain} .object-cover{object-fit:cover} .p-0{padding:0px} .p-1{padding:0.25rem} .p-2{padding:0.5rem} .p-3{padding:0.75rem} .p-4{padding:1rem} .p-6{padding:1.5rem} .p-8{padding:2rem} .px-1{padding-left:0.25rem;padding-right:0.25rem} .px-2{padding-left:0.5rem;padding-right:0.5rem} .px-3{padding-left:0.75rem;padding-right:0.75rem} .px-4{padding-left:1rem;padding-right:1rem} .px-5{padding-left:1.25rem;padding-right:1.25rem} .px-6{padding-left:1.5rem;padding-right:1.5rem} .px-8{padding-left:2rem;padding-right:2rem} .px-9{padding-left:2.25rem;padding-right:2.25rem} .py-1{padding-top:0.25rem;padding-bottom:0.25rem} .py-10{padding-top:2.5rem;padding-bottom:2.5rem} .py-12{padding-top:3rem;padding-bottom:3rem} .py-2{padding-top:0.5rem;padding-bottom:0.5rem} .py-3{padding-top:0.75rem;padding-bottom:0.75rem} .py-4{padding-top:1rem;padding-bottom:1rem} .py-5{padding-top:1.25rem;padding-bottom:1.25rem} .py-6{padding-top:1.5rem;padding-bottom:1.5rem} .py-8{padding-top:2rem;padding-bottom:2rem} .pb-2{padding-bottom:0.5rem} .pb-4{padding-bottom:1rem} .pb-6{padding-bottom:1.5rem} .pl-10{padding-left:2.5rem} .pl-12{padding-left:3rem} .pl-2{padding-left:0.5rem} .pl-3{padding-left:0.75rem} .pl-5{padding-left:1.25rem} .pl-6{padding-left:1.5rem} .pr-0{padding-right:0px} .pr-10{padding-right:2.5rem} .pr-12{padding-right:3rem} .pr-16{padding-right:4rem} .pr-2{padding-right:0.5rem} .pr-3{padding-right:0.75rem} .pr-4{padding-right:1rem} .pr-8{padding-right:2rem} .pr-9{padding-right:2.25rem} .pt-12{padding-top:3rem} .pt-2{padding-top:0.5rem} .pt-4{padding-top:1rem} .pt-6{padding-top:1.5rem} .text-left{text-align:left} .text-center{text-align:center} .text-right{text-align:right} .font-action{font-family:var(--font-action), Inter, Georgia, Times New Roman, Times, serif} .font-mono{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace} .text-2xl{font-size:1.5rem} .text-3xl{font-size:1.875rem} .text-base{font-size:1rem} .text-lg{font-size:1.125rem} .text-sm{font-size:0.875rem} .text-xl{font-size:1.25rem} .text-xs{font-size:0.75rem} .font-bold{font-weight:700} .font-medium{font-weight:500} .font-normal{font-weight:400} .font-semibold{font-weight:600} .uppercase{text-transform:uppercase} .lowercase{text-transform:lowercase} .capitalize{text-transform:capitalize} .normal-case{text-transform:none} .italic{font-style:italic} .not-italic{font-style:normal} .leading-5{line-height:1.25rem} .leading-6{line-height:1.5rem} .leading-none{line-height:1} .leading-relaxed{line-height:1.625} .tracking-tight{letter-spacing:-0.025em} .tracking-wide{letter-spacing:0.025em} .tracking-wider{letter-spacing:0.05em} .text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36 / var(--tw-text-opacity))} .text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11 / var(--tw-text-opacity))} .text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6 / var(--tw-text-opacity))} .text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9 / var(--tw-text-opacity))} .text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14 / var(--tw-text-opacity))} .text-black{--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity))} .text-black\/20{color:rgb(0 0 0 / 0.2)} .text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246 / var(--tw-text-opacity))} .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235 / var(--tw-text-opacity))} .text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216 / var(--tw-text-opacity))} .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175 / var(--tw-text-opacity))} .text-cyan-500{--tw-text-opacity:1;color:rgb(6 182 212 / var(--tw-text-opacity))} .text-cyan-600{--tw-text-opacity:1;color:rgb(8 145 178 / var(--tw-text-opacity))} .text-cyan-700{--tw-text-opacity:1;color:rgb(14 116 144 / var(--tw-text-opacity))} .text-cyan-800{--tw-text-opacity:1;color:rgb(21 94 117 / var(--tw-text-opacity))} .text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219 / var(--tw-text-opacity))} .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity))} .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity))} .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity))} .text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity))} .text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity))} .text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity))} .text-green-400{--tw-text-opacity:1;color:rgb(74 222 128 / var(--tw-text-opacity))} .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94 / var(--tw-text-opacity))} .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74 / var(--tw-text-opacity))} .text-green-700{--tw-text-opacity:1;color:rgb(21 128 61 / var(--tw-text-opacity))} .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52 / var(--tw-text-opacity))} .text-myblack{--tw-text-opacity:1;color:rgb(16 18 13 / var(--tw-text-opacity))} .text-myblue{--tw-text-opacity:1;color:rgb(41 63 88 / var(--tw-text-opacity))} .text-mydarkgrey{--tw-text-opacity:1;color:rgb(57 61 52 / var(--tw-text-opacity))} .text-mylightgrey{--tw-text-opacity:1;color:rgb(167 177 183 / var(--tw-text-opacity))} .text-myorange{--tw-text-opacity:1;color:rgb(245 131 51 / var(--tw-text-opacity))} .text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60 / var(--tw-text-opacity))} .text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22 / var(--tw-text-opacity))} .text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12 / var(--tw-text-opacity))} .text-orange-700{--tw-text-opacity:1;color:rgb(194 65 12 / var(--tw-text-opacity))} .text-orange-800{--tw-text-opacity:1;color:rgb(154 52 18 / var(--tw-text-opacity))} .text-red-400{--tw-text-opacity:1;color:rgb(248 113 113 / var(--tw-text-opacity))} .text-red-500{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity))} .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity))} .text-red-700{--tw-text-opacity:1;color:rgb(185 28 28 / var(--tw-text-opacity))} .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27 / var(--tw-text-opacity))} .text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity))} .text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7 / var(--tw-text-opacity))} .text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14 / var(--tw-text-opacity))} .underline{text-decoration-line:underline} .overline{text-decoration-line:overline} .line-through{text-decoration-line:line-through} .no-underline{text-decoration-line:none} .underline-offset-4{text-underline-offset:4px} .placeholder-gray-400::placeholder{--tw-placeholder-opacity:1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))} .placeholder-gray-500::placeholder{--tw-placeholder-opacity:1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))} .opacity-0{opacity:0} .opacity-100{opacity:1} .opacity-25{opacity:0.25} .opacity-50{opacity:0.5} .opacity-60{opacity:0.6} .opacity-75{opacity:0.75} .mix-blend-difference{mix-blend-mode:difference} .shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgb(0 0 0 / 0.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-xl{--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .outline{outline-style:solid} .outline-dashed{outline-style:dashed} .outline-dotted{outline-style:dotted} .outline-2{outline-width:2px} .outline-4{outline-width:4px} .outline-offset-2{outline-offset:2px} .outline-cyan-500{outline-color:#06b6d4} .outline-cyan-600{outline-color:#0891b2} .outline-red-700{outline-color:#b91c1c} .ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .ring-inset{--tw-ring-inset:inset} .ring-black{--tw-ring-opacity:1;--tw-ring-color:rgb(0 0 0 / var(--tw-ring-opacity))} .ring-black\/5{--tw-ring-color:rgb(0 0 0 / 0.05)} .ring-cyan-600{--tw-ring-opacity:1;--tw-ring-color:rgb(8 145 178 / var(--tw-ring-opacity))} .ring-gray-300{--tw-ring-opacity:1;--tw-ring-color:rgb(209 213 219 / var(--tw-ring-opacity))} .ring-mydarkgrey\/5{--tw-ring-color:rgb(57 61 52 / 0.05)} .ring-mygreen{--tw-ring-opacity:1;--tw-ring-color:rgb(200 223 140 / var(--tw-ring-opacity))} .ring-orange-500{--tw-ring-opacity:1;--tw-ring-color:rgb(249 115 22 / var(--tw-ring-opacity))} .ring-red-300{--tw-ring-opacity:1;--tw-ring-color:rgb(252 165 165 / var(--tw-ring-opacity))} .ring-opacity-5{--tw-ring-opacity:0.05} .blur{--tw-blur:blur(8px);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)} .drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));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)} .grayscale{--tw-grayscale:grayscale(100%);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)} .invert{--tw-invert:invert(100%);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)} .sepia{--tw-sepia:sepia(100%);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)} .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)} .backdrop-blur{--tw-backdrop-blur:blur(8px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-blur-sm{--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-grayscale{--tw-backdrop-grayscale:grayscale(100%);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-invert{--tw-backdrop-invert:invert(100%);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-sepia{--tw-backdrop-sepia:sepia(100%);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-colors{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .duration-150{transition-duration:150ms} .duration-200{transition-duration:200ms} .duration-300{transition-duration:300ms} .ease-in{transition-timing-function:cubic-bezier(0.4, 0, 1, 1)} .ease-in-out{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)} .ease-out{transition-timing-function:cubic-bezier(0, 0, 0.2, 1)} @media (min-width: 801px){.md\:mx-10{margin-left:2.5rem;margin-right:2.5rem}.md\:px-14{padding-left:3.5rem;padding-right:3.5rem}} @media (min-width: 1367px){.xl\:max-w-screen-xl{max-width:1367px}.xl\:px-32{padding-left:8rem;padding-right:8rem}}
1
+ /* ! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com */*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*, ::before, ::after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: } .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0} .pointer-events-none{pointer-events:none} .pointer-events-auto{pointer-events:auto} .visible{visibility:visible} .invisible{visibility:hidden} .collapse{visibility:collapse} .static{position:static} .fixed{position:fixed} .absolute{position:absolute} .relative{position:relative} .sticky{position:sticky} .inset-0{inset:0px} .inset-y-0{top:0px;bottom:0px} .-right-1{right:-0.25rem} .-top-1{top:-0.25rem} .bottom-0{bottom:0px} .bottom-1{bottom:0.25rem} .bottom-16{bottom:4rem} .bottom-4{bottom:1rem} .bottom-full{bottom:100%} .left-0{left:0px} .left-1\/2{left:50%} .left-2{left:0.5rem} .left-3{left:0.75rem} .right-0{right:0px} .right-1{right:0.25rem} .right-2{right:0.5rem} .right-4{right:1rem} .right-8{right:2rem} .top-0{top:0px} .top-1\/2{top:50%} .top-2{top:0.5rem} .top-4{top:1rem} .top-6{top:1.5rem} .top-8{top:2rem} .top-full{top:100%} .isolate{isolation:isolate} .isolation-auto{isolation:auto} .z-0{z-index:0} .z-10{z-index:110} .z-101{z-index:1001} .z-102{z-index:1002} .z-50{z-index:510} .col-span-1{grid-column:span 1 / span 1} .col-span-2{grid-column:span 2 / span 2} .col-span-3{grid-column:span 3 / span 3} .mx-1{margin-left:0.25rem;margin-right:0.25rem} .mx-2{margin-left:0.5rem;margin-right:0.5rem} .mx-4{margin-left:1rem;margin-right:1rem} .mx-5{margin-left:1.25rem;margin-right:1.25rem} .mx-auto{margin-left:auto;margin-right:auto} .my-0{margin-top:0px;margin-bottom:0px} .my-1{margin-top:0.25rem;margin-bottom:0.25rem} .my-16{margin-top:4rem;margin-bottom:4rem} .my-2{margin-top:0.5rem;margin-bottom:0.5rem} .my-3{margin-top:0.75rem;margin-bottom:0.75rem} .my-4{margin-top:1rem;margin-bottom:1rem} .my-8{margin-top:2rem;margin-bottom:2rem} .-mb-px{margin-bottom:-1px} .-ml-1{margin-left:-0.25rem} .-mt-20{margin-top:-5rem} .mb-0{margin-bottom:0px} .mb-1{margin-bottom:0.25rem} .mb-12{margin-bottom:3rem} .mb-2{margin-bottom:0.5rem} .mb-3{margin-bottom:0.75rem} .mb-4{margin-bottom:1rem} .mb-6{margin-bottom:1.5rem} .mb-8{margin-bottom:2rem} .ml-1{margin-left:0.25rem} .ml-2{margin-left:0.5rem} .ml-3{margin-left:0.75rem} .ml-4{margin-left:1rem} .ml-6{margin-left:1.5rem} .ml-auto{margin-left:auto} .mr-1{margin-right:0.25rem} .mr-2{margin-right:0.5rem} .mr-3{margin-right:0.75rem} .mr-4{margin-right:1rem} .mr-6{margin-right:1.5rem} .mt-0{margin-top:0px} .mt-1{margin-top:0.25rem} .mt-12{margin-top:3rem} .mt-16{margin-top:4rem} .mt-2{margin-top:0.5rem} .mt-3{margin-top:0.75rem} .mt-4{margin-top:1rem} .mt-5{margin-top:1.25rem} .mt-6{margin-top:1.5rem} .mt-8{margin-top:2rem} .line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1} .line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2} .block{display:block} .inline-block{display:inline-block} .inline{display:inline} .flex{display:flex} .inline-flex{display:inline-flex} .table{display:table} .grid{display:grid} .inline-grid{display:inline-grid} .contents{display:contents} .list-item{display:list-item} .hidden{display:none} .aspect-square{aspect-ratio:1 / 1} .aspect-video{aspect-ratio:16 / 9} .h-1{height:0.25rem} .h-10{height:2.5rem} .h-12{height:3rem} .h-14{height:3.5rem} .h-16{height:4rem} .h-2{height:0.5rem} .h-3{height:0.75rem} .h-32{height:8rem} .h-4{height:1rem} .h-48{height:12rem} .h-5{height:1.25rem} .h-6{height:1.5rem} .h-64{height:16rem} .h-8{height:2rem} .h-9{height:2.25rem} .h-96{height:24rem} .h-auto{height:auto} .h-fit{height:fit-content} .h-full{height:100%} .max-h-32{max-height:8rem} .max-h-40{max-height:10rem} .max-h-56{max-height:14rem} .max-h-60{max-height:15rem} .max-h-64{max-height:16rem} .max-h-96{max-height:24rem} .max-h-full{max-height:100%} .min-h-0{min-height:0px} .min-h-16{min-height:4rem} .min-h-9{min-height:2.25rem} .min-h-full{min-height:100%} .min-h-screen{min-height:100vh} .w-1\/2{width:50%} .w-1\/3{width:33.333333%} .w-10{width:2.5rem} .w-11{width:2.75rem} .w-12{width:3rem} .w-16{width:4rem} .w-2{width:0.5rem} .w-2\/3{width:66.666667%} .w-2\/5{width:40%} .w-20{width:5rem} .w-24{width:6rem} .w-28{width:7rem} .w-3{width:0.75rem} .w-3\/5{width:60%} .w-32{width:8rem} .w-36{width:9rem} .w-4{width:1rem} .w-40{width:10rem} .w-5{width:1.25rem} .w-6{width:1.5rem} .w-64{width:16rem} .w-8{width:2rem} .w-80{width:20rem} .w-9{width:2.25rem} .w-96{width:24rem} .w-auto{width:auto} .w-fit{width:fit-content} .w-full{width:100%} .w-screen{width:100vw} .min-w-0{min-width:0px} .min-w-24{min-width:6rem} .min-w-48{min-width:12rem} .min-w-64{min-width:16rem} .min-w-full{min-width:100%} .max-w-2xl{max-width:42rem} .max-w-3xl{max-width:48rem} .max-w-48{max-width:12rem} .max-w-4xl{max-width:56rem} .max-w-5xl{max-width:64rem} .max-w-7xl{max-width:80rem} .max-w-full{max-width:100%} .max-w-lg{max-width:32rem} .max-w-md{max-width:28rem} .max-w-none{max-width:none} .max-w-sm{max-width:24rem} .max-w-xl{max-width:36rem} .flex-1{flex:1 1 0%} .flex-auto{flex:1 1 auto} .flex-shrink-0{flex-shrink:0} .shrink-0{flex-shrink:0} .flex-grow{flex-grow:1} .-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .-translate-y-1\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-x-1{--tw-translate-x:0.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-x-5{--tw-translate-x:1.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-x-6{--tw-translate-x:1.5rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .translate-y-full{--tw-translate-y:100%;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))} .-rotate-2{--tw-rotate:-2deg;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))} .rotate-180{--tw-rotate:180deg;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))} .scale-125{--tw-scale-x:1.25;--tw-scale-y:1.25;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} .scale-x-0{--tw-scale-x:0;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))} .transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} @keyframes fadeIn{0%{opacity:.25}100%{opacity:1}} .animate-fadeIn{animation:fadeIn 1s ease-in} @keyframes pulse{50%{opacity:.5}} .animate-pulse{animation:pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite} @keyframes spin{to{transform:rotate(360deg)}} .animate-spin{animation:spin 1s linear infinite} .cursor-default{cursor:default} .cursor-help{cursor:help} .cursor-not-allowed{cursor:not-allowed} .cursor-pointer{cursor:pointer} .select-none{user-select:none} .resize-y{resize:vertical} .resize{resize:both} .list-inside{list-style-position:inside} .list-disc{list-style-type:disc} .grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))} .grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))} .grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))} .flex-row{flex-direction:row} .flex-row-reverse{flex-direction:row-reverse} .flex-col{flex-direction:column} .flex-wrap{flex-wrap:wrap} .flex-nowrap{flex-wrap:nowrap} .items-start{align-items:flex-start} .items-end{align-items:flex-end} .items-center{align-items:center} .justify-start{justify-content:flex-start} .justify-end{justify-content:flex-end} .justify-center{justify-content:center} .justify-between{justify-content:space-between} .justify-around{justify-content:space-around} .gap-1{gap:0.25rem} .gap-12{gap:3rem} .gap-2{gap:0.5rem} .gap-3{gap:0.75rem} .gap-4{gap:1rem} .gap-6{gap:1.5rem} .gap-8{gap:2rem} .gap-x-16{column-gap:4rem} .gap-x-2{column-gap:0.5rem} .gap-x-4{column-gap:1rem} .gap-x-6{column-gap:1.5rem} .gap-x-8{column-gap:2rem} .gap-y-1{row-gap:0.25rem} .gap-y-12{row-gap:3rem} .gap-y-2{row-gap:0.5rem} .gap-y-3{row-gap:0.75rem} .-space-x-px > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-1px * var(--tw-space-x-reverse));margin-left:calc(-1px * calc(1 - var(--tw-space-x-reverse)))} .space-x-1 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.25rem * var(--tw-space-x-reverse));margin-left:calc(0.25rem * calc(1 - var(--tw-space-x-reverse)))} .space-x-2 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.5rem * var(--tw-space-x-reverse));margin-left:calc(0.5rem * calc(1 - var(--tw-space-x-reverse)))} .space-x-3 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.75rem * var(--tw-space-x-reverse));margin-left:calc(0.75rem * calc(1 - var(--tw-space-x-reverse)))} .space-x-4 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))} .space-y-1 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.25rem * var(--tw-space-y-reverse))} .space-y-12 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem * var(--tw-space-y-reverse))} .space-y-2 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.5rem * var(--tw-space-y-reverse))} .space-y-3 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.75rem * var(--tw-space-y-reverse))} .space-y-4 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))} .space-y-6 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))} .space-y-8 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))} .divide-y > :not([hidden]) ~ :not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))} .divide-gray-100 > :not([hidden]) ~ :not([hidden]){--tw-divide-opacity:1;border-color:rgb(243 244 246 / var(--tw-divide-opacity))} .divide-gray-200 > :not([hidden]) ~ :not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235 / var(--tw-divide-opacity))} .divide-gray-300 > :not([hidden]) ~ :not([hidden]){--tw-divide-opacity:1;border-color:rgb(209 213 219 / var(--tw-divide-opacity))} .justify-self-start{justify-self:start} .overflow-auto{overflow:auto} .overflow-hidden{overflow:hidden} .overflow-visible{overflow:visible} .overflow-x-auto{overflow-x:auto} .overflow-y-auto{overflow-y:auto} .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap} .text-ellipsis{text-overflow:ellipsis} .text-clip{text-overflow:clip} .whitespace-normal{white-space:normal} .whitespace-nowrap{white-space:nowrap} .text-balance{text-wrap:balance} .text-pretty{text-wrap:pretty} .break-all{word-break:break-all} .rounded{border-radius:0.25rem} .rounded-2xl{border-radius:1rem} .rounded-3xl{border-radius:1.5rem} .rounded-full{border-radius:9999px} .rounded-lg{border-radius:0.5rem} .rounded-md{border-radius:0.375rem} .rounded-sm{border-radius:0.125rem} .rounded-xl{border-radius:0.75rem} .rounded-b-md{border-bottom-right-radius:0.375rem;border-bottom-left-radius:0.375rem} .rounded-l-md{border-top-left-radius:0.375rem;border-bottom-left-radius:0.375rem} .rounded-r-md{border-top-right-radius:0.375rem;border-bottom-right-radius:0.375rem} .rounded-t-md{border-top-left-radius:0.375rem;border-top-right-radius:0.375rem} .border{border-width:1px} .border-0{border-width:0px} .border-2{border-width:2px} .border-4{border-width:4px} .border-b{border-bottom-width:1px} .border-b-2{border-bottom-width:2px} .border-l-2{border-left-width:2px} .border-t{border-top-width:1px} .border-solid{border-style:solid} .border-dashed{border-style:dashed} .border-dotted{border-style:dotted} .border-none{border-style:none} .border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138 / var(--tw-border-opacity))} .border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77 / var(--tw-border-opacity))} .border-black\/10{border-color:rgb(0 0 0 / 0.1)} .border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254 / var(--tw-border-opacity))} .border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246 / var(--tw-border-opacity))} .border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235 / var(--tw-border-opacity))} .border-brand-7{border-color:var(--brand-7)} .border-cyan-200{--tw-border-opacity:1;border-color:rgb(165 243 252 / var(--tw-border-opacity))} .border-cyan-400{--tw-border-opacity:1;border-color:rgb(34 211 238 / var(--tw-border-opacity))} .border-cyan-500{--tw-border-opacity:1;border-color:rgb(6 182 212 / var(--tw-border-opacity))} .border-cyan-600{--tw-border-opacity:1;border-color:rgb(8 145 178 / var(--tw-border-opacity))} .border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity))} .border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity))} .border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity))} .border-gray-500{--tw-border-opacity:1;border-color:rgb(107 114 128 / var(--tw-border-opacity))} .border-gray-900{--tw-border-opacity:1;border-color:rgb(17 24 39 / var(--tw-border-opacity))} .border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208 / var(--tw-border-opacity))} .border-green-300{--tw-border-opacity:1;border-color:rgb(134 239 172 / var(--tw-border-opacity))} .border-myblue{--tw-border-opacity:1;border-color:rgb(41 63 88 / var(--tw-border-opacity))} .border-myblue\/20{border-color:rgb(41 63 88 / 0.2)} .border-mydarkgrey{--tw-border-opacity:1;border-color:rgb(57 61 52 / var(--tw-border-opacity))} .border-mydarkgrey\/20{border-color:rgb(57 61 52 / 0.2)} .border-mydarkgrey\/30{border-color:rgb(57 61 52 / 0.3)} .border-mylightgrey{--tw-border-opacity:1;border-color:rgb(167 177 183 / var(--tw-border-opacity))} .border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170 / var(--tw-border-opacity))} .border-purple-200{--tw-border-opacity:1;border-color:rgb(233 213 255 / var(--tw-border-opacity))} .border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202 / var(--tw-border-opacity))} .border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165 / var(--tw-border-opacity))} .border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68 / var(--tw-border-opacity))} .border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240 / var(--tw-border-opacity))} .border-transparent{border-color:transparent} .border-white{--tw-border-opacity:1;border-color:rgb(255 255 255 / var(--tw-border-opacity))} .border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138 / var(--tw-border-opacity))} .border-r-transparent{border-right-color:transparent} .border-t-cyan-600{--tw-border-opacity:1;border-top-color:rgb(8 145 178 / var(--tw-border-opacity))} .border-t-gray-600{--tw-border-opacity:1;border-top-color:rgb(75 85 99 / var(--tw-border-opacity))} .border-t-gray-900{--tw-border-opacity:1;border-top-color:rgb(17 24 39 / var(--tw-border-opacity))} .border-t-red-600{--tw-border-opacity:1;border-top-color:rgb(220 38 38 / var(--tw-border-opacity))} .border-t-transparent{border-top-color:transparent} .bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199 / var(--tw-bg-opacity))} .bg-amber-400{--tw-bg-opacity:1;background-color:rgb(251 191 36 / var(--tw-bg-opacity))} .bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))} .bg-amber-600{--tw-bg-opacity:1;background-color:rgb(217 119 6 / var(--tw-bg-opacity))} .bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))} .bg-black\/10{background-color:rgb(0 0 0 / 0.1)} .bg-black\/70{background-color:rgb(0 0 0 / 0.7)} .bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254 / var(--tw-bg-opacity))} .bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))} .bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246 / var(--tw-bg-opacity))} .bg-brand-1{background-color:var(--brand-1)} .bg-brand-5{background-color:var(--brand-5)} .bg-brand-7{background-color:var(--brand-7)} .bg-cyan-100{--tw-bg-opacity:1;background-color:rgb(207 250 254 / var(--tw-bg-opacity))} .bg-cyan-50{--tw-bg-opacity:1;background-color:rgb(236 254 255 / var(--tw-bg-opacity))} .bg-cyan-600{--tw-bg-opacity:1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))} .bg-cyan-600\/10{background-color:rgb(8 145 178 / 0.1)} .bg-cyan-700{--tw-bg-opacity:1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))} .bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))} .bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))} .bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))} .bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))} .bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))} .bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity))} .bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39 / var(--tw-bg-opacity))} .bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231 / var(--tw-bg-opacity))} .bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244 / var(--tw-bg-opacity))} .bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))} .bg-lime-400{--tw-bg-opacity:1;background-color:rgb(163 230 53 / var(--tw-bg-opacity))} .bg-myblue{--tw-bg-opacity:1;background-color:rgb(41 63 88 / var(--tw-bg-opacity))} .bg-myblue\/20{background-color:rgb(41 63 88 / 0.2)} .bg-mydarkgrey{--tw-bg-opacity:1;background-color:rgb(57 61 52 / var(--tw-bg-opacity))} .bg-mylightgrey{--tw-bg-opacity:1;background-color:rgb(167 177 183 / var(--tw-bg-opacity))} .bg-myoffwhite{--tw-bg-opacity:1;background-color:rgb(227 227 227 / var(--tw-bg-opacity))} .bg-myorange{--tw-bg-opacity:1;background-color:rgb(245 131 51 / var(--tw-bg-opacity))} .bg-mywhite{--tw-bg-opacity:1;background-color:rgb(252 252 252 / var(--tw-bg-opacity))} .bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213 / var(--tw-bg-opacity))} .bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237 / var(--tw-bg-opacity))} .bg-orange-500{--tw-bg-opacity:1;background-color:rgb(249 115 22 / var(--tw-bg-opacity))} .bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12 / var(--tw-bg-opacity))} .bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255 / var(--tw-bg-opacity))} .bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226 / var(--tw-bg-opacity))} .bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113 / var(--tw-bg-opacity))} .bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))} .bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68 / var(--tw-bg-opacity))} .bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))} .bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))} .bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))} .bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252 / var(--tw-bg-opacity))} .bg-teal-400{--tw-bg-opacity:1;background-color:rgb(45 212 191 / var(--tw-bg-opacity))} .bg-transparent{background-color:transparent} .bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))} .bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195 / var(--tw-bg-opacity))} .bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232 / var(--tw-bg-opacity))} .bg-opacity-0{--tw-bg-opacity:0} .bg-opacity-20{--tw-bg-opacity:0.2} .bg-opacity-50{--tw-bg-opacity:0.5} .bg-opacity-75{--tw-bg-opacity:0.75} .bg-opacity-80{--tw-bg-opacity:0.8} .bg-opacity-85{--tw-bg-opacity:0.85} .bg-opacity-90{--tw-bg-opacity:0.9} .bg-gradient-to-b{background-image:linear-gradient(to bottom, var(--tw-gradient-stops))} .bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--tw-gradient-stops))} .bg-gradient-to-t{background-image:linear-gradient(to top, var(--tw-gradient-stops))} .from-amber-50{--tw-gradient-from:#fffbeb var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 251 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)} .from-black\/80{--tw-gradient-from:rgb(0 0 0 / 0.8) var(--tw-gradient-from-position);--tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)} .from-transparent{--tw-gradient-from:transparent var(--tw-gradient-from-position);--tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)} .via-black\/50{--tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), rgb(0 0 0 / 0.5) var(--tw-gradient-via-position), var(--tw-gradient-to)} .to-amber-100{--tw-gradient-to:#fef3c7 var(--tw-gradient-to-position)} .to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)} .to-white{--tw-gradient-to:#fff var(--tw-gradient-to-position)} .object-contain{object-fit:contain} .object-cover{object-fit:cover} .p-0{padding:0px} .p-1{padding:0.25rem} .p-2{padding:0.5rem} .p-3{padding:0.75rem} .p-4{padding:1rem} .p-6{padding:1.5rem} .p-8{padding:2rem} .px-1{padding-left:0.25rem;padding-right:0.25rem} .px-2{padding-left:0.5rem;padding-right:0.5rem} .px-3{padding-left:0.75rem;padding-right:0.75rem} .px-3\.5{padding-left:0.875rem;padding-right:0.875rem} .px-4{padding-left:1rem;padding-right:1rem} .px-5{padding-left:1.25rem;padding-right:1.25rem} .px-6{padding-left:1.5rem;padding-right:1.5rem} .px-8{padding-left:2rem;padding-right:2rem} .px-9{padding-left:2.25rem;padding-right:2.25rem} .py-0{padding-top:0px;padding-bottom:0px} .py-1{padding-top:0.25rem;padding-bottom:0.25rem} .py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem} .py-10{padding-top:2.5rem;padding-bottom:2.5rem} .py-12{padding-top:3rem;padding-bottom:3rem} .py-16{padding-top:4rem;padding-bottom:4rem} .py-2{padding-top:0.5rem;padding-bottom:0.5rem} .py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem} .py-24{padding-top:6rem;padding-bottom:6rem} .py-3{padding-top:0.75rem;padding-bottom:0.75rem} .py-4{padding-top:1rem;padding-bottom:1rem} .py-5{padding-top:1.25rem;padding-bottom:1.25rem} .py-6{padding-top:1.5rem;padding-bottom:1.5rem} .py-8{padding-top:2rem;padding-bottom:2rem} .pb-0{padding-bottom:0px} .pb-16{padding-bottom:4rem} .pb-2{padding-bottom:0.5rem} .pb-2\.5{padding-bottom:0.625rem} .pb-3{padding-bottom:0.75rem} .pb-4{padding-bottom:1rem} .pb-6{padding-bottom:1.5rem} .pb-8{padding-bottom:2rem} .pl-10{padding-left:2.5rem} .pl-12{padding-left:3rem} .pl-16{padding-left:4rem} .pl-2{padding-left:0.5rem} .pl-3{padding-left:0.75rem} .pl-5{padding-left:1.25rem} .pl-6{padding-left:1.5rem} .pr-0{padding-right:0px} .pr-10{padding-right:2.5rem} .pr-12{padding-right:3rem} .pr-16{padding-right:4rem} .pr-2{padding-right:0.5rem} .pr-3{padding-right:0.75rem} .pr-4{padding-right:1rem} .pr-5{padding-right:1.25rem} .pr-8{padding-right:2rem} .pr-9{padding-right:2.25rem} .pt-0{padding-top:0px} .pt-12{padding-top:3rem} .pt-16{padding-top:4rem} .pt-2{padding-top:0.5rem} .pt-20{padding-top:5rem} .pt-3{padding-top:0.75rem} .pt-4{padding-top:1rem} .pt-6{padding-top:1.5rem} .pt-8{padding-top:2rem} .text-left{text-align:left} .text-center{text-align:center} .text-right{text-align:right} .font-action{font-family:var(--font-action), Inter, Georgia, Times New Roman, Times, serif} .font-main{font-family:var(--font-main), Inter, Arial, Helvetica Neue, Helvetica, sans-serif} .font-mono{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace} .font-sans{font-family:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"} .text-2xl{font-size:1.5rem} .text-3xl{font-size:1.875rem} .text-4xl{font-size:2.25rem} .text-5xl{font-size:3rem} .text-6xl{font-size:3.75rem} .text-base{font-size:1rem} .text-lg{font-size:1.125rem} .text-sm{font-size:0.875rem} .text-xl{font-size:1.25rem} .text-xs{font-size:0.75rem} .font-bold{font-weight:700} .font-medium{font-weight:500} .font-normal{font-weight:400} .font-semibold{font-weight:600} .uppercase{text-transform:uppercase} .lowercase{text-transform:lowercase} .capitalize{text-transform:capitalize} .normal-case{text-transform:none} .italic{font-style:italic} .not-italic{font-style:normal} .leading-5{line-height:1.25rem} .leading-6{line-height:1.5rem} .leading-9{line-height:2.25rem} .leading-loose{line-height:2} .leading-none{line-height:1} .leading-relaxed{line-height:1.625} .leading-snug{line-height:1.375} .leading-tight{line-height:1.25} .tracking-tight{letter-spacing:-0.025em} .tracking-wide{letter-spacing:0.025em} .tracking-wider{letter-spacing:0.05em} .text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36 / var(--tw-text-opacity))} .text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11 / var(--tw-text-opacity))} .text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6 / var(--tw-text-opacity))} .text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9 / var(--tw-text-opacity))} .text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14 / var(--tw-text-opacity))} .text-black{--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity))} .text-black\/20{color:rgb(0 0 0 / 0.2)} .text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253 / var(--tw-text-opacity))} .text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246 / var(--tw-text-opacity))} .text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235 / var(--tw-text-opacity))} .text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216 / var(--tw-text-opacity))} .text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175 / var(--tw-text-opacity))} .text-brand-2{color:var(--brand-2)} .text-brand-5{color:var(--brand-5)} .text-brand-7{color:var(--brand-7)} .text-cyan-500{--tw-text-opacity:1;color:rgb(6 182 212 / var(--tw-text-opacity))} .text-cyan-600{--tw-text-opacity:1;color:rgb(8 145 178 / var(--tw-text-opacity))} .text-cyan-700{--tw-text-opacity:1;color:rgb(14 116 144 / var(--tw-text-opacity))} .text-cyan-800{--tw-text-opacity:1;color:rgb(21 94 117 / var(--tw-text-opacity))} .text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219 / var(--tw-text-opacity))} .text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity))} .text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity))} .text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity))} .text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity))} .text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity))} .text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity))} .text-green-400{--tw-text-opacity:1;color:rgb(74 222 128 / var(--tw-text-opacity))} .text-green-500{--tw-text-opacity:1;color:rgb(34 197 94 / var(--tw-text-opacity))} .text-green-600{--tw-text-opacity:1;color:rgb(22 163 74 / var(--tw-text-opacity))} .text-green-700{--tw-text-opacity:1;color:rgb(21 128 61 / var(--tw-text-opacity))} .text-green-800{--tw-text-opacity:1;color:rgb(22 101 52 / var(--tw-text-opacity))} .text-myblack{--tw-text-opacity:1;color:rgb(16 18 13 / var(--tw-text-opacity))} .text-myblue{--tw-text-opacity:1;color:rgb(41 63 88 / var(--tw-text-opacity))} .text-myblue\/80{color:rgb(41 63 88 / 0.8)} .text-mydarkgrey{--tw-text-opacity:1;color:rgb(57 61 52 / var(--tw-text-opacity))} .text-mylightgrey{--tw-text-opacity:1;color:rgb(167 177 183 / var(--tw-text-opacity))} .text-myorange{--tw-text-opacity:1;color:rgb(245 131 51 / var(--tw-text-opacity))} .text-mywhite{--tw-text-opacity:1;color:rgb(252 252 252 / var(--tw-text-opacity))} .text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60 / var(--tw-text-opacity))} .text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22 / var(--tw-text-opacity))} .text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12 / var(--tw-text-opacity))} .text-orange-700{--tw-text-opacity:1;color:rgb(194 65 12 / var(--tw-text-opacity))} .text-orange-800{--tw-text-opacity:1;color:rgb(154 52 18 / var(--tw-text-opacity))} .text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234 / var(--tw-text-opacity))} .text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168 / var(--tw-text-opacity))} .text-red-400{--tw-text-opacity:1;color:rgb(248 113 113 / var(--tw-text-opacity))} .text-red-500{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity))} .text-red-600{--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity))} .text-red-700{--tw-text-opacity:1;color:rgb(185 28 28 / var(--tw-text-opacity))} .text-red-800{--tw-text-opacity:1;color:rgb(153 27 27 / var(--tw-text-opacity))} .text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity))} .text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7 / var(--tw-text-opacity))} .text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14 / var(--tw-text-opacity))} .underline{text-decoration-line:underline} .overline{text-decoration-line:overline} .line-through{text-decoration-line:line-through} .no-underline{text-decoration-line:none} .underline-offset-4{text-underline-offset:4px} .placeholder-gray-400::placeholder{--tw-placeholder-opacity:1;color:rgb(156 163 175 / var(--tw-placeholder-opacity))} .placeholder-gray-500::placeholder{--tw-placeholder-opacity:1;color:rgb(107 114 128 / var(--tw-placeholder-opacity))} .opacity-0{opacity:0} .opacity-100{opacity:1} .opacity-25{opacity:0.25} .opacity-50{opacity:0.5} .opacity-60{opacity:0.6} .opacity-75{opacity:0.75} .mix-blend-difference{mix-blend-mode:difference} .shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0 / 0.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgb(0 0 0 / 0.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .shadow-xl{--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .outline-none{outline:2px solid transparent;outline-offset:2px} .outline{outline-style:solid} .outline-dashed{outline-style:dashed} .outline-dotted{outline-style:dotted} .outline-1{outline-width:1px} .outline-2{outline-width:2px} .outline-4{outline-width:4px} .outline-offset-2{outline-offset:2px} .outline-cyan-500{outline-color:#06b6d4} .outline-cyan-600{outline-color:#0891b2} .outline-gray-300{outline-color:#d1d5db} .outline-red-700{outline-color:#b91c1c} .ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .ring-inset{--tw-ring-inset:inset} .ring-black{--tw-ring-opacity:1;--tw-ring-color:rgb(0 0 0 / var(--tw-ring-opacity))} .ring-black\/5{--tw-ring-color:rgb(0 0 0 / 0.05)} .ring-cyan-600{--tw-ring-opacity:1;--tw-ring-color:rgb(8 145 178 / var(--tw-ring-opacity))} .ring-gray-300{--tw-ring-opacity:1;--tw-ring-color:rgb(209 213 219 / var(--tw-ring-opacity))} .ring-mydarkgrey\/5{--tw-ring-color:rgb(57 61 52 / 0.05)} .ring-mygreen{--tw-ring-opacity:1;--tw-ring-color:rgb(200 223 140 / var(--tw-ring-opacity))} .ring-mylightgrey{--tw-ring-opacity:1;--tw-ring-color:rgb(167 177 183 / var(--tw-ring-opacity))} .ring-orange-500{--tw-ring-opacity:1;--tw-ring-color:rgb(249 115 22 / var(--tw-ring-opacity))} .ring-red-300{--tw-ring-opacity:1;--tw-ring-color:rgb(252 165 165 / var(--tw-ring-opacity))} .ring-opacity-5{--tw-ring-opacity:0.05} .blur{--tw-blur:blur(8px);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)} .drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));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)} .grayscale{--tw-grayscale:grayscale(100%);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)} .invert{--tw-invert:invert(100%);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)} .sepia{--tw-sepia:sepia(100%);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)} .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)} .backdrop-blur{--tw-backdrop-blur:blur(8px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-blur-sm{--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-grayscale{--tw-backdrop-grayscale:grayscale(100%);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-invert{--tw-backdrop-invert:invert(100%);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-sepia{--tw-backdrop-sepia:sepia(100%);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .backdrop-filter{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)} .transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-colors{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms} .duration-150{transition-duration:150ms} .duration-200{transition-duration:200ms} .duration-300{transition-duration:300ms} .ease-in{transition-timing-function:cubic-bezier(0.4, 0, 1, 1)} .ease-in-out{transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)} .ease-out{transition-timing-function:cubic-bezier(0, 0, 0.2, 1)} .placeholder\:text-gray-400::placeholder{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity))} .placeholder\:text-mydarkgrey::placeholder{--tw-text-opacity:1;color:rgb(57 61 52 / var(--tw-text-opacity))} .placeholder\:text-mylightgrey::placeholder{--tw-text-opacity:1;color:rgb(167 177 183 / var(--tw-text-opacity))} .before\:pointer-events-none::before{content:var(--tw-content);pointer-events:none} .before\:absolute::before{content:var(--tw-content);position:absolute} .before\:inset-0::before{content:var(--tw-content);inset:0px} .before\:opacity-50::before{content:var(--tw-content);opacity:0.5} .before\:outline-dashed::before{content:var(--tw-content);outline-style:dashed} .before\:outline-4::before{content:var(--tw-content);outline-width:4px} .before\:outline-red-700::before{content:var(--tw-content);outline-color:#b91c1c} .last\:border-b-0:last-child{border-bottom-width:0px} .focus-within\:border-myblue:focus-within{--tw-border-opacity:1;border-color:rgb(41 63 88 / var(--tw-border-opacity))} .focus-within\:ring-1:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .focus-within\:ring-myblue:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(41 63 88 / var(--tw-ring-opacity))} .hover\:rotate-1:hover{--tw-rotate:1deg;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))} .hover\:rotate-2:hover{--tw-rotate:2deg;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))} .hover\:rotate-3:hover{--tw-rotate:3deg;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))} .hover\:rotate-6:hover{--tw-rotate:6deg;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))} .hover\:rounded:hover{border-radius:0.25rem} .hover\:border-black:hover{--tw-border-opacity:1;border-color:rgb(0 0 0 / var(--tw-border-opacity))} .hover\:border-cyan-100:hover{--tw-border-opacity:1;border-color:rgb(207 250 254 / var(--tw-border-opacity))} .hover\:border-cyan-400:hover{--tw-border-opacity:1;border-color:rgb(34 211 238 / var(--tw-border-opacity))} .hover\:border-cyan-500:hover{--tw-border-opacity:1;border-color:rgb(6 182 212 / var(--tw-border-opacity))} .hover\:border-cyan-600:hover{--tw-border-opacity:1;border-color:rgb(8 145 178 / var(--tw-border-opacity))} .hover\:border-cyan-700:hover{--tw-border-opacity:1;border-color:rgb(14 116 144 / var(--tw-border-opacity))} .hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity))} .hover\:bg-amber-50:hover{--tw-bg-opacity:1;background-color:rgb(255 251 235 / var(--tw-bg-opacity))} .hover\:bg-amber-700:hover{--tw-bg-opacity:1;background-color:rgb(180 83 9 / var(--tw-bg-opacity))} .hover\:bg-black:hover{--tw-bg-opacity:1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))} .hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))} .hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))} .hover\:bg-brand-3:hover{background-color:var(--brand-3)} .hover\:bg-cyan-100:hover{--tw-bg-opacity:1;background-color:rgb(207 250 254 / var(--tw-bg-opacity))} .hover\:bg-cyan-50:hover{--tw-bg-opacity:1;background-color:rgb(236 254 255 / var(--tw-bg-opacity))} .hover\:bg-cyan-50\/20:hover{background-color:rgb(236 254 255 / 0.2)} .hover\:bg-cyan-500:hover{--tw-bg-opacity:1;background-color:rgb(6 182 212 / var(--tw-bg-opacity))} .hover\:bg-cyan-600:hover{--tw-bg-opacity:1;background-color:rgb(8 145 178 / var(--tw-bg-opacity))} .hover\:bg-cyan-600\/20:hover{background-color:rgb(8 145 178 / 0.2)} .hover\:bg-cyan-700:hover{--tw-bg-opacity:1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))} .hover\:bg-cyan-800:hover{--tw-bg-opacity:1;background-color:rgb(21 94 117 / var(--tw-bg-opacity))} .hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity))} .hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))} .hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))} .hover\:bg-gray-400:hover{--tw-bg-opacity:1;background-color:rgb(156 163 175 / var(--tw-bg-opacity))} .hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity))} .hover\:bg-gray-700:hover{--tw-bg-opacity:1;background-color:rgb(55 65 81 / var(--tw-bg-opacity))} .hover\:bg-myblack:hover{--tw-bg-opacity:1;background-color:rgb(16 18 13 / var(--tw-bg-opacity))} .hover\:bg-myblue\/10:hover{background-color:rgb(41 63 88 / 0.1)} .hover\:bg-mydarkgrey\/10:hover{background-color:rgb(57 61 52 / 0.1)} .hover\:bg-mygreen\/20:hover{background-color:rgb(200 223 140 / 0.2)} .hover\:bg-mylightgrey:hover{--tw-bg-opacity:1;background-color:rgb(167 177 183 / var(--tw-bg-opacity))} .hover\:bg-myorange:hover{--tw-bg-opacity:1;background-color:rgb(245 131 51 / var(--tw-bg-opacity))} .hover\:bg-mywhite:hover{--tw-bg-opacity:1;background-color:rgb(252 252 252 / var(--tw-bg-opacity))} .hover\:bg-orange-100:hover{--tw-bg-opacity:1;background-color:rgb(255 237 213 / var(--tw-bg-opacity))} .hover\:bg-orange-200:hover{--tw-bg-opacity:1;background-color:rgb(254 215 170 / var(--tw-bg-opacity))} .hover\:bg-orange-500:hover{--tw-bg-opacity:1;background-color:rgb(249 115 22 / var(--tw-bg-opacity))} .hover\:bg-orange-600:hover{--tw-bg-opacity:1;background-color:rgb(234 88 12 / var(--tw-bg-opacity))} .hover\:bg-red-200:hover{--tw-bg-opacity:1;background-color:rgb(254 202 202 / var(--tw-bg-opacity))} .hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity))} .hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))} .hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))} .hover\:bg-white\/50:hover{background-color:rgb(255 255 255 / 0.5)} .hover\:bg-opacity-100:hover{--tw-bg-opacity:1} .hover\:bg-opacity-20:hover{--tw-bg-opacity:0.2} .hover\:font-bold:hover{font-weight:700} .hover\:text-black:hover{--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity))} .hover\:text-cyan-600:hover{--tw-text-opacity:1;color:rgb(8 145 178 / var(--tw-text-opacity))} .hover\:text-cyan-700:hover{--tw-text-opacity:1;color:rgb(14 116 144 / var(--tw-text-opacity))} .hover\:text-cyan-800:hover{--tw-text-opacity:1;color:rgb(21 94 117 / var(--tw-text-opacity))} .hover\:text-cyan-900:hover{--tw-text-opacity:1;color:rgb(22 78 99 / var(--tw-text-opacity))} .hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity))} .hover\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity))} .hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity))} .hover\:text-gray-800:hover{--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity))} .hover\:text-gray-900:hover{--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity))} .hover\:text-green-500:hover{--tw-text-opacity:1;color:rgb(34 197 94 / var(--tw-text-opacity))} .hover\:text-green-800:hover{--tw-text-opacity:1;color:rgb(22 101 52 / var(--tw-text-opacity))} .hover\:text-myblack:hover{--tw-text-opacity:1;color:rgb(16 18 13 / var(--tw-text-opacity))} .hover\:text-myblue:hover{--tw-text-opacity:1;color:rgb(41 63 88 / var(--tw-text-opacity))} .hover\:text-myorange:hover{--tw-text-opacity:1;color:rgb(245 131 51 / var(--tw-text-opacity))} .hover\:text-orange-600:hover{--tw-text-opacity:1;color:rgb(234 88 12 / var(--tw-text-opacity))} .hover\:text-orange-800:hover{--tw-text-opacity:1;color:rgb(154 52 18 / var(--tw-text-opacity))} .hover\:text-purple-800:hover{--tw-text-opacity:1;color:rgb(107 33 168 / var(--tw-text-opacity))} .hover\:text-red-600:hover{--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity))} .hover\:text-red-700:hover{--tw-text-opacity:1;color:rgb(185 28 28 / var(--tw-text-opacity))} .hover\:text-red-800:hover{--tw-text-opacity:1;color:rgb(153 27 27 / var(--tw-text-opacity))} .hover\:text-red-900:hover{--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity))} .hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity))} .hover\:underline:hover{text-decoration-line:underline} .hover\:decoration-dashed:hover{text-decoration-style:dashed} .hover\:decoration-4:hover{text-decoration-thickness:4px} .hover\:underline-offset-4:hover{text-underline-offset:4px} .hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} .hover\:outline:hover{outline-style:solid} .hover\:ring-2:hover{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .hover\:ring-cyan-600:hover{--tw-ring-opacity:1;--tw-ring-color:rgb(8 145 178 / var(--tw-ring-opacity))} .hover\:ring-offset-2:hover{--tw-ring-offset-width:2px} .hover\:before\:bg-red-600\/50:hover::before{content:var(--tw-content);background-color:rgb(220 38 38 / 0.5)} .hover\:before\:opacity-100:hover::before{content:var(--tw-content);opacity:1} .focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:rgb(59 130 246 / var(--tw-border-opacity))} .focus\:border-cyan-500:focus{--tw-border-opacity:1;border-color:rgb(6 182 212 / var(--tw-border-opacity))} .focus\:border-cyan-600:focus{--tw-border-opacity:1;border-color:rgb(8 145 178 / var(--tw-border-opacity))} .focus\:border-cyan-700:focus{--tw-border-opacity:1;border-color:rgb(14 116 144 / var(--tw-border-opacity))} .focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:rgb(99 102 241 / var(--tw-border-opacity))} .focus\:border-myblue:focus{--tw-border-opacity:1;border-color:rgb(41 63 88 / var(--tw-border-opacity))} .focus\:border-red-500:focus{--tw-border-opacity:1;border-color:rgb(239 68 68 / var(--tw-border-opacity))} .focus\:bg-brand-7:focus{background-color:var(--brand-7)} .focus\:bg-cyan-700:focus{--tw-bg-opacity:1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))} .focus\:text-black:focus{--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity))} .focus\:text-gray-600:focus{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity))} .focus\:text-red-600:focus{--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity))} .focus\:text-white:focus{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity))} .focus\:underline:focus{text-decoration-line:underline} .focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px} .focus\:outline-offset-0:focus{outline-offset:0px} .focus\:ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)} .focus\:ring-inset:focus{--tw-ring-inset:inset} .focus\:ring-amber-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(245 158 11 / var(--tw-ring-opacity))} .focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246 / var(--tw-ring-opacity))} .focus\:ring-blue-500\/50:focus{--tw-ring-color:rgb(59 130 246 / 0.5)} .focus\:ring-brand-1:focus{--tw-ring-color:var(--brand-1)} .focus\:ring-cyan-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(6 182 212 / var(--tw-ring-opacity))} .focus\:ring-cyan-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(8 145 178 / var(--tw-ring-opacity))} .focus\:ring-cyan-700:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(14 116 144 / var(--tw-ring-opacity))} .focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(99 102 241 / var(--tw-ring-opacity))} .focus\:ring-myblue:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(41 63 88 / var(--tw-ring-opacity))} .focus\:ring-myorange:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(245 131 51 / var(--tw-ring-opacity))} .focus\:ring-red-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(239 68 68 / var(--tw-ring-opacity))} .focus\:ring-offset-2:focus{--tw-ring-offset-width:2px} .focus\:before\:bg-red-600\/50:focus::before{content:var(--tw-content);background-color:rgb(220 38 38 / 0.5)} .focus\:before\:opacity-100:focus::before{content:var(--tw-content);opacity:1} .focus-visible\:outline:focus-visible{outline-style:solid} .focus-visible\:outline-2:focus-visible{outline-width:2px} .focus-visible\:outline-offset-2:focus-visible{outline-offset:2px} .focus-visible\:outline-cyan-600:focus-visible{outline-color:#0891b2} .focus-visible\:outline-myorange:focus-visible{outline-color:#f58333} .disabled\:cursor-not-allowed:disabled{cursor:not-allowed} .disabled\:text-gray-400:disabled{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity))} .disabled\:opacity-50:disabled{opacity:0.5} .disabled\:hover\:bg-transparent:hover:disabled{background-color:transparent} .group:focus-within .group-focus-within\:bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))} .group:focus-within .group-focus-within\:text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity))} .group:focus-within .group-focus-within\:opacity-100{opacity:1} .group:hover .group-hover\:visible{visibility:visible} .group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;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))} .group:hover .group-hover\:bg-cyan-200{--tw-bg-opacity:1;background-color:rgb(165 243 252 / var(--tw-bg-opacity))} .group:hover .group-hover\:bg-red-700{--tw-bg-opacity:1;background-color:rgb(185 28 28 / var(--tw-bg-opacity))} .group:hover .group-hover\:bg-slate-200\/20{background-color:rgb(226 232 240 / 0.2)} .group:hover .group-hover\:text-amber-200{--tw-text-opacity:1;color:rgb(253 230 138 / var(--tw-text-opacity))} .group:hover .group-hover\:text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity))} .group:hover .group-hover\:text-myblue{--tw-text-opacity:1;color:rgb(41 63 88 / var(--tw-text-opacity))} .group:hover .group-hover\:text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity))} .group:hover .group-hover\:opacity-100{opacity:1} .group:hover .group-hover\:shadow-xl{--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)} @media (prefers-reduced-motion: no-preference){@keyframes bounce{0%, 100%{transform:translateY(-25%);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,0.2,1)}}.motion-safe\:animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.motion-safe\:animate-pulse{animation:pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite}@keyframes wiggle{0%, 100%{transform:translateX(3%)}50%{transform:translateX(0)}}.motion-safe\:animate-wig{animation:wiggle 1s ease-in-out infinite}.motion-safe\:scroll-smooth{scroll-behavior:smooth}} @media (min-width: 0px){.xs\:inline-block{display:inline-block}.xs\:flex{display:flex}.xs\:hidden{display:none}.xs\:flex-row{flex-direction:row}.xs\:items-start{align-items:flex-start}.xs\:justify-between{justify-content:space-between}.xs\:text-sm{font-size:0.875rem}.xs\:leading-6{line-height:1.5rem}} @media (min-width: 801px){.md\:static{position:static}.md\:fixed{position:fixed}.md\:sticky{position:sticky}.md\:bottom-2{bottom:0.5rem}.md\:bottom-auto{bottom:auto}.md\:left-0{left:0px}.md\:top-24{top:6rem}.md\:col-span-1{grid-column:span 1 / span 1}.md\:col-span-2{grid-column:span 2 / span 2}.md\:mx-10{margin-left:2.5rem;margin-right:2.5rem}.md\:my-0{margin-top:0px;margin-bottom:0px}.md\:my-6{margin-top:1.5rem;margin-bottom:1.5rem}.md\:my-8{margin-top:2rem;margin-bottom:2rem}.md\:mb-10{margin-bottom:2.5rem}.md\:mt-0{margin-top:0px}.md\:mt-12{margin-top:3rem}.md\:mt-16{margin-top:4rem}.md\:mt-2{margin-top:0.5rem}.md\:mt-24{margin-top:6rem}.md\:block{display:block}.md\:inline-block{display:inline-block}.md\:flex{display:flex}.md\:table-cell{display:table-cell}.md\:hidden{display:none}.md\:h-8{height:2rem}.md\:h-screen{height:100vh}.md\:w-1\/2{width:50%}.md\:w-16{width:4rem}.md\:w-48{width:12rem}.md\:w-auto{width:auto}.md\:max-w-72{max-width:18rem}.md\:max-w-lg{max-width:32rem}.md\:max-w-xs{max-width:20rem}.md\:flex-1{flex:1 1 0%}.md\:flex-shrink-0{flex-shrink:0}.md\:grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}.md\:flex-row{flex-direction:row}.md\:flex-col{flex-direction:column}.md\:items-start{align-items:flex-start}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-10{gap:2.5rem}.md\:gap-2{gap:0.5rem}.md\:gap-4{gap:1rem}.md\:gap-8{gap:2rem}.md\:space-x-0 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0px * var(--tw-space-x-reverse));margin-left:calc(0px * calc(1 - var(--tw-space-x-reverse)))}.md\:space-x-6 > :not([hidden]) ~ :not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem * var(--tw-space-x-reverse));margin-left:calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-y-0 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.md\:space-y-2 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.5rem * var(--tw-space-y-reverse))}.md\:rounded-lg{border-radius:0.5rem}.md\:p-4{padding:1rem}.md\:p-8{padding:2rem}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:px-14{padding-left:3.5rem;padding-right:3.5rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-0{padding-top:0px;padding-bottom:0px}.md\:py-1{padding-top:0.25rem;padding-bottom:0.25rem}.md\:py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem}.md\:py-12{padding-top:3rem;padding-bottom:3rem}.md\:py-2{padding-top:0.5rem;padding-bottom:0.5rem}.md\:py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem}.md\:py-3{padding-top:0.75rem;padding-bottom:0.75rem}.md\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\:py-8{padding-top:2rem;padding-bottom:2rem}.md\:pb-0{padding-bottom:0px}.md\:pb-24{padding-bottom:6rem}.md\:pb-3{padding-bottom:0.75rem}.md\:pb-3\.5{padding-bottom:0.875rem}.md\:pb-8{padding-bottom:2rem}.md\:pt-0{padding-top:0px}.md\:pt-12{padding-top:3rem}.md\:pt-2{padding-top:0.5rem}.md\:pt-24{padding-top:6rem}.md\:pt-6{padding-top:1.5rem}.md\:pt-8{padding-top:2rem}.md\:pt-9{padding-top:2.25rem}.md\:text-2xl{font-size:1.5rem}.md\:text-3xl{font-size:1.875rem}.md\:text-4xl{font-size:2.25rem}.md\:text-5xl{font-size:3rem}.md\:text-6xl{font-size:3.75rem}.md\:text-7xl{font-size:4.5rem}.md\:text-lg{font-size:1.125rem}.md\:text-xl{font-size:1.25rem}.md\:leading-relaxed{line-height:1.625}} @media (min-width: 1367px){.xl\:my-8{margin-top:2rem;margin-bottom:2rem}.xl\:mt-32{margin-top:8rem}.xl\:block{display:block}.xl\:inline-block{display:inline-block}.xl\:table-cell{display:table-cell}.xl\:hidden{display:none}.xl\:w-72{width:18rem}.xl\:max-w-2xl{max-width:42rem}.xl\:max-w-screen-xl{max-width:1367px}.xl\:grid-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}.xl\:gap-12{gap:3rem}.xl\:px-32{padding-left:8rem;padding-right:8rem}.xl\:px-6{padding-left:1.5rem;padding-right:1.5rem}.xl\:pt-12{padding-top:3rem}.xl\:text-3xl{font-size:1.875rem}.xl\:text-5xl{font-size:3rem}.xl\:text-6xl{font-size:3.75rem}.xl\:text-8xl{font-size:6rem}.xl\:text-xl{font-size:1.25rem}} @media (prefers-color-scheme: dark){.dark\:border-cyan-600{--tw-border-opacity:1;border-color:rgb(8 145 178 / var(--tw-border-opacity))}.dark\:bg-cyan-800{--tw-bg-opacity:1;background-color:rgb(21 94 117 / var(--tw-bg-opacity))}.dark\:bg-cyan-900{--tw-bg-opacity:1;background-color:rgb(22 78 99 / var(--tw-bg-opacity))}.dark\:text-cyan-300{--tw-text-opacity:1;color:rgb(103 232 249 / var(--tw-text-opacity))}.dark\:hover\:bg-cyan-800:hover{--tw-bg-opacity:1;background-color:rgb(21 94 117 / var(--tw-bg-opacity))}.group:hover .dark\:group-hover\:bg-cyan-700{--tw-bg-opacity:1;background-color:rgb(14 116 144 / var(--tw-bg-opacity))}}
@@ -1,17 +1,17 @@
1
1
  ---
2
- // CodeHook Dispatcher - Minimal Version
3
- // Framework components are always available, custom components are commented for guidance
4
-
5
- import FeaturedContent from '@/components/codehooks/FeaturedContent.astro';
2
+ import FeaturedArticle from '@/components/codehooks/FeaturedArticle.astro';
6
3
  import ListContent from '@/components/codehooks/ListContent.astro';
4
+ import SearchWidget from '@/components/codehooks/SearchWidget.tsx';
7
5
  import BunnyVideoWrapper from '@/components/codehooks/BunnyVideoWrapper.astro';
8
6
  import EpinetWrapper from '@/components/codehooks/EpinetWrapper';
9
7
  import type { FullContentMapItem } from '@/types/tractstack';
8
+ import type { ResourceNode } from '@/types/compositorTypes';
10
9
  // import CustomHero from './CustomHero.astro'; // Uncomment to add custom components
11
10
 
12
11
  export interface Props {
13
12
  target: string;
14
13
  fullContentMap: FullContentMapItem[];
14
+ resourcesPayload?: Record<string, ResourceNode[]>;
15
15
  options?: {
16
16
  params?: {
17
17
  options?: string;
@@ -19,12 +19,14 @@ export interface Props {
19
19
  };
20
20
  }
21
21
 
22
- const { target, options, fullContentMap } = Astro.props;
22
+ const { target, options, fullContentMap /*, resourcesPayload */ } = Astro.props;
23
23
 
24
24
  export const components = {
25
+ 'featured-article': true,
25
26
  'featured-content': true,
26
27
  'list-content': true,
27
- 'bunny-video': true,
28
+ 'search-widget': true,
29
+ 'bunny-video': import.meta.env.PUBLIC_ENABLE_BUNNY === 'true',
28
30
  epinet: true,
29
31
  // "custom-hero": true, // Uncomment when you create CustomHero.astro
30
32
  };
@@ -33,9 +35,11 @@ export const components = {
33
35
  {
34
36
  target === 'list-content' ? (
35
37
  <ListContent options={options} contentMap={fullContentMap} />
36
- ) : target === 'featured-content' ? (
37
- <FeaturedContent options={options} contentMap={fullContentMap} />
38
- ) : target === 'bunny-video' ? (
38
+ ) : target === 'featured-article' ? (
39
+ <FeaturedArticle options={options} contentMap={fullContentMap} />
40
+ ) : target === 'search-widget' ? (
41
+ <SearchWidget fullContentMap={fullContentMap} client:load />
42
+ ) : target === 'bunny-video' && import.meta.env.PUBLIC_ENABLE_BUNNY ? (
39
43
  <BunnyVideoWrapper options={options} />
40
44
  ) : target === 'epinet' ? (
41
45
  <EpinetWrapper fullContentMap={fullContentMap} client:only="react" /> /*
@@ -45,9 +49,6 @@ export const components = {
45
49
  ) : (
46
50
  <div class="rounded-lg bg-gray-50 p-8 text-center">
47
51
  <p class="text-gray-600">CodeHook target "{target}" not found</p>
48
- <p class="mt-2 text-sm text-gray-500">
49
- Available: list-content, featured-content, bunny-video, epinet
50
- </p>
51
52
  </div>
52
53
  )
53
54
  }
@@ -1,46 +1,40 @@
1
1
  ---
2
- // V2 Custom Routes - Minimal Version
3
- // This is a stub - implement your custom routes here
2
+ //import Collections from './pages/Collections.astro';
3
+ import type { ResourceNode } from '@/types/compositorTypes';
4
4
 
5
5
  export interface Props {
6
6
  route: string;
7
7
  slug: string;
8
- resources: any[];
8
+ resources: ResourceNode[];
9
9
  variation?: string;
10
10
  }
11
11
 
12
- const { route, slug, resources } = Astro.props;
12
+ const { route, slug /*, resources */ } = Astro.props;
13
13
 
14
- // Define available routes here
15
- export const routes = {
16
- // collections: true, // Uncomment to enable collections route
17
- };
18
-
19
- // Example implementation for collections:
20
- // const payload = resources; // V2 resources are already filtered by backend
14
+ // list all here !
15
+ export const routes = {};
21
16
  ---
22
17
 
23
18
  {
24
- (
25
- /*
26
- Uncomment and customize routes as needed:
27
-
28
- route === "collections" ? (
19
+ /*
20
+ route === 'collections' ? (
29
21
  <Collections route={route} slug={slug} resources={payload} />
30
- ) :
22
+ ) : (
31
23
  */
32
- <div class="rounded-lg bg-gray-50 p-8 text-center">
33
- <p class="text-gray-600">Custom route "{route}" not implemented</p>
34
- <p class="mt-2 text-sm text-gray-500">
35
- Edit <code>src/custom/CustomRoutes.astro</code> to add your custom
36
- routes
37
- </p>
38
- <div class="mt-4 rounded border bg-white p-4 text-left text-xs">
39
- <p class="mb-2 font-bold">Route Data:</p>
40
- <p>Route: {route}</p>
41
- <p>Slug: {slug}</p>
42
- <p>Resources: {resources.length} items</p>
43
- </div>
44
- </div>
45
- )
24
+ }
25
+
26
+ <div class="rounded-lg bg-gray-50 p-8 text-center">
27
+ <p class="text-gray-600">Custom route "{route}" not found</p>
28
+ <p class="mt-2 text-sm text-gray-500">Available routes: collections</p>
29
+ <div class="mt-4 rounded border bg-white p-4 text-left text-xs">
30
+ <p class="mb-2 font-bold">Route Data:</p>
31
+ <p>Route: {route}</p>
32
+ <p>Slug: {slug}</p>
33
+ </div>
34
+ </div>
35
+
36
+ {
37
+ /*
38
+ ) }
39
+ */
46
40
  }
@@ -1,17 +1,19 @@
1
1
  ---
2
- // V2 CodeHook Dispatcher - With Examples
3
- // Framework components and custom examples are available
4
-
5
2
  import CustomHero from './CustomHero.astro';
6
- import FeaturedContent from '@/components/codehooks/FeaturedContent.astro';
3
+ import SearchWidget from '@/components/codehooks/SearchWidget.tsx';
4
+ import FeaturedArticle from '@/components/codehooks/FeaturedArticle.astro';
7
5
  import ListContent from '@/components/codehooks/ListContent.astro';
8
6
  import BunnyVideoWrapper from '@/components/codehooks/BunnyVideoWrapper.astro';
9
7
  import EpinetWrapper from '@/components/codehooks/EpinetWrapper';
8
+ import ProductCardWrapper from './ProductCardWrapper.astro';
9
+ import ProductGrid from './ProductGrid.astro';
10
10
  import type { FullContentMapItem } from '@/types/tractstack';
11
+ import type { ResourceNode } from '@/types/compositorTypes';
11
12
 
12
13
  export interface Props {
13
14
  target: string;
14
15
  fullContentMap: FullContentMapItem[];
16
+ resourcesPayload?: Record<string, ResourceNode[]>;
15
17
  options?: {
16
18
  params?: {
17
19
  options?: string;
@@ -19,23 +21,32 @@ export interface Props {
19
21
  };
20
22
  }
21
23
 
22
- const { target, options, fullContentMap } = Astro.props;
24
+ const { target, options, fullContentMap, resourcesPayload } = Astro.props;
23
25
 
24
26
  export const components = {
25
27
  'custom-hero': true,
26
- 'featured-content': true,
28
+ 'featured-article': true,
27
29
  'list-content': true,
28
- 'bunny-video': true,
30
+ 'search-widget': true,
31
+ 'product-card': true,
32
+ 'product-grid': true,
33
+ 'bunny-video': import.meta.env.PUBLIC_ENABLE_BUNNY === 'true',
29
34
  epinet: true,
30
35
  };
31
36
  ---
32
37
 
33
38
  {
34
- target === 'list-content' ? (
39
+ target === 'product-card' ? (
40
+ <ProductCardWrapper options={options} resourcesPayload={resourcesPayload} />
41
+ ) : target === 'product-grid' ? (
42
+ <ProductGrid options={options} resourcesPayload={resourcesPayload} />
43
+ ) : target === 'list-content' ? (
35
44
  <ListContent options={options} contentMap={fullContentMap} />
36
- ) : target === 'featured-content' ? (
37
- <FeaturedContent options={options} contentMap={fullContentMap} />
38
- ) : target === 'bunny-video' ? (
45
+ ) : target === 'featured-article' ? (
46
+ <FeaturedArticle options={options} contentMap={fullContentMap} />
47
+ ) : target === 'search-widget' ? (
48
+ <SearchWidget fullContentMap={fullContentMap} client:load />
49
+ ) : target === 'bunny-video' && import.meta.env.PUBLIC_ENABLE_BUNNY ? (
39
50
  <BunnyVideoWrapper options={options} />
40
51
  ) : target === 'custom-hero' ? (
41
52
  <CustomHero />
@@ -1,29 +1,25 @@
1
1
  ---
2
- // V2 Custom Routes - With Examples
3
- // Full Collections implementation included
4
-
5
2
  import Collections from './pages/Collections.astro';
3
+ import type { ResourceNode } from '@/types/compositorTypes';
6
4
 
7
5
  export interface Props {
8
6
  route: string;
9
7
  slug: string;
10
- resources: any[];
8
+ resources: ResourceNode[];
11
9
  variation?: string;
12
10
  }
13
11
 
14
12
  const { route, slug, resources } = Astro.props;
15
13
 
14
+ // list all here !
16
15
  export const routes = {
17
16
  collections: true,
18
17
  };
19
-
20
- // V2: Resources are already filtered by backend, no client-side extraction needed
21
- const payload = resources;
22
18
  ---
23
19
 
24
20
  {
25
21
  route === 'collections' ? (
26
- <Collections route={route} slug={slug} resources={payload} />
22
+ <Collections route={route} slug={slug} resources={resources} />
27
23
  ) : (
28
24
  <div class="rounded-lg bg-gray-50 p-8 text-center">
29
25
  <p class="text-gray-600">Custom route "{route}" not found</p>
@@ -0,0 +1,29 @@
1
+ ---
2
+ import type { ResourceNode } from '@/types/compositorTypes';
3
+
4
+ export interface Props {
5
+ product?: ResourceNode;
6
+ }
7
+
8
+ const { product } = Astro.props;
9
+ ---
10
+
11
+ <div class="rounded-lg border bg-white p-6 shadow-sm">
12
+ <h2 class="mb-4 text-xl font-bold text-gray-900">
13
+ Product Card (Parameter Dump)
14
+ </h2>
15
+
16
+ {
17
+ product ? (
18
+ <pre class="whitespace-pre-wrap rounded-md bg-gray-50 p-4 text-xs text-gray-700">
19
+ {JSON.stringify(product, null, 2)}
20
+ </pre>
21
+ ) : (
22
+ <div class="rounded-md bg-red-50 p-4 text-center">
23
+ <p class="font-bold text-red-800">
24
+ Error: ProductCard component received no product data.
25
+ </p>
26
+ </div>
27
+ )
28
+ }
29
+ </div>
@@ -0,0 +1,43 @@
1
+ ---
2
+ import type { ResourceNode } from '@/types/compositorTypes';
3
+ import ProductCard from './ProductCard.astro';
4
+
5
+ export interface Props {
6
+ options?: {
7
+ params?: {
8
+ options?: string;
9
+ };
10
+ };
11
+ resourcesPayload?: Record<string, ResourceNode[]>;
12
+ }
13
+
14
+ const { options, resourcesPayload } = Astro.props;
15
+
16
+ let product: ResourceNode | undefined = undefined;
17
+ let parsedOptions: { slug?: string } = {};
18
+
19
+ if (options?.params?.options && typeof options.params.options === 'string') {
20
+ try {
21
+ parsedOptions = JSON.parse(options.params.options);
22
+ } catch (e) {
23
+ console.error('Failed to parse ProductCard options JSON:', e);
24
+ }
25
+ }
26
+
27
+ const targetSlug = parsedOptions?.slug;
28
+
29
+ if (targetSlug && resourcesPayload) {
30
+ for (const key in resourcesPayload) {
31
+ const resourceArray = resourcesPayload[key] as ResourceNode[];
32
+ const found = resourceArray.find(
33
+ (resource) => resource.slug === targetSlug
34
+ );
35
+ if (found) {
36
+ product = found;
37
+ break;
38
+ }
39
+ }
40
+ }
41
+ ---
42
+
43
+ <ProductCard product={product} />
@@ -0,0 +1,64 @@
1
+ ---
2
+ import type { ResourceNode } from '@/types/compositorTypes';
3
+ import ProductCard from './ProductCard.astro';
4
+
5
+ export interface Props {
6
+ options?: {
7
+ params?: {
8
+ options?: string;
9
+ };
10
+ };
11
+ resourcesPayload?: Record<string, ResourceNode[]>;
12
+ }
13
+
14
+ const { options, resourcesPayload } = Astro.props;
15
+
16
+ let productsToDisplay: ResourceNode[] = [];
17
+ let allFetchedProducts: ResourceNode[] = [];
18
+ let parsedOptions: { productType?: string; category?: string; slugs?: string } =
19
+ {};
20
+
21
+ if (options?.params?.options && typeof options.params.options === 'string') {
22
+ try {
23
+ parsedOptions = JSON.parse(options.params.options);
24
+ } catch (e) {
25
+ console.error('Failed to parse ProductGrid options JSON:', e);
26
+ }
27
+ }
28
+
29
+ if (resourcesPayload) {
30
+ for (const key in resourcesPayload) {
31
+ allFetchedProducts = resourcesPayload[key] as ResourceNode[];
32
+ break;
33
+ }
34
+ }
35
+
36
+ if (parsedOptions?.productType) {
37
+ productsToDisplay = allFetchedProducts.filter(
38
+ (product) =>
39
+ product.optionsPayload?.productType === parsedOptions.productType
40
+ );
41
+ } else {
42
+ productsToDisplay = allFetchedProducts;
43
+ }
44
+ ---
45
+
46
+ <div class="space-y-6">
47
+ {
48
+ productsToDisplay.length > 0 ? (
49
+ <div class="grid grid-cols-1 gap-6 md:grid-cols-2 xl:grid-cols-3">
50
+ {productsToDisplay.map((product) => (
51
+ <ProductCard product={product} />
52
+ ))}
53
+ </div>
54
+ ) : (
55
+ <div class="rounded-lg border bg-yellow-50 p-6 text-center shadow-sm">
56
+ <p class="font-medium text-yellow-800">No products to display.</p>
57
+ <p class="mt-1 text-sm text-yellow-700">
58
+ Check the grid configuration or ensure products match the specified
59
+ filters.
60
+ </p>
61
+ </div>
62
+ )
63
+ }
64
+ </div>