ocearo-ui 2.1.1 → 2.1.2

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 (55) hide show
  1. package/404.html +1 -1
  2. package/__next.__PAGE__.txt +3 -3
  3. package/__next._full.txt +3 -3
  4. package/__next._tree.txt +2 -2
  5. package/_next/static/chunks/0-19-ljntm5ig.js +1 -0
  6. package/_next/static/chunks/{096zaxs1gf_3q.js → 0-g-ujyrfgutp.js} +2 -2
  7. package/_next/static/chunks/0c91q-13wh8hk.js +1 -0
  8. package/_next/static/chunks/{2aivnrnff0avu.js → 0fv1wwxeyagln.js} +2 -2
  9. package/_next/static/chunks/0nq1o9-m7bhjg.js +1 -0
  10. package/_next/static/chunks/0o7hu-sypv2u9.js +1 -0
  11. package/_next/static/chunks/{2wayx8t5r5fi9.js → 0ujzg6ofy2r73.js} +1 -1
  12. package/_next/static/chunks/162bfkgcudvew.js +9 -0
  13. package/_next/static/chunks/{1l-jew0-1-3eq.js → 1bvrvkcwf3ge-.js} +2 -2
  14. package/_next/static/chunks/{33u782y6vhw-f.js → 1do-2zwq3ws0f.js} +1 -1
  15. package/_next/static/chunks/{2mzecccvvbjr1.js → 1ho2ekxa9io1_.js} +1 -1
  16. package/_next/static/chunks/1m3-nchdgcxy1.css +3 -0
  17. package/_next/static/chunks/{3qik_nv7zlj4e.js → 1quvj-861o57h.js} +1 -1
  18. package/_next/static/chunks/{0j11dppxb9l0b.js → 1zuex-na8y-w4.js} +1 -1
  19. package/_next/static/chunks/{2r98jty3a4wel.js → 271ys-u920uqd.js} +5 -5
  20. package/_next/static/chunks/2_iau6x7s0vil.js +1131 -0
  21. package/_next/static/chunks/2ab6q6u6uo_bf.js +1 -0
  22. package/_next/static/chunks/2pt-apz8_pa4j.js +1 -0
  23. package/_next/static/chunks/2rnpgrmuyhpkd.js +119 -0
  24. package/_next/static/chunks/3e5jmzthktu9w.js +1 -0
  25. package/_next/static/chunks/3l25j666ze4c1.js +1 -0
  26. package/_next/static/chunks/{2gr1d26f-ymoh.js → 3utjjgdhnlx86.js} +1 -1
  27. package/_next/static/chunks/44f5hh9caupby.js +1 -0
  28. package/_not-found/__next._full.txt +2 -2
  29. package/_not-found/__next._not-found.__PAGE__.txt +2 -2
  30. package/_not-found/__next._tree.txt +2 -2
  31. package/_not-found.html +1 -1
  32. package/_not-found.txt +2 -2
  33. package/index.html +1 -1
  34. package/index.txt +3 -3
  35. package/package.json +1 -1
  36. package/settings/__next._full.txt +2 -2
  37. package/settings/__next._tree.txt +2 -2
  38. package/settings/__next.settings.__PAGE__.txt +2 -2
  39. package/settings.html +1 -1
  40. package/settings.txt +2 -2
  41. package/_next/static/chunks/0b3cus8izqkmg.js +0 -119
  42. package/_next/static/chunks/0zvzu5fnwh4_a.js +0 -9
  43. package/_next/static/chunks/1_g85m2d7jjpo.css +0 -3
  44. package/_next/static/chunks/1arvue9o-atui.js +0 -739
  45. package/_next/static/chunks/1cp1kkarm5gxz.js +0 -1
  46. package/_next/static/chunks/1hz_mzl8l35j8.js +0 -1
  47. package/_next/static/chunks/1k72cpd0x8veh.js +0 -1
  48. package/_next/static/chunks/2fthh9f57zzm2.js +0 -1
  49. package/_next/static/chunks/2v6ebsavxlgyw.js +0 -1
  50. package/_next/static/chunks/3qzb9nvvw-b-k.js +0 -1
  51. package/_next/static/chunks/3td9mnhvcj9cq.js +0 -1
  52. package/_next/static/chunks/432vtxrssprta.js +0 -1
  53. /package/_next/static/{QMD1VkISjzTIQCzLSHPpB → m52l9mE01yTljNwbWjYQ7}/_buildManifest.js +0 -0
  54. /package/_next/static/{QMD1VkISjzTIQCzLSHPpB → m52l9mE01yTljNwbWjYQ7}/_clientMiddlewareManifest.js +0 -0
  55. /package/_next/static/{QMD1VkISjzTIQCzLSHPpB → m52l9mE01yTljNwbWjYQ7}/_ssgManifest.js +0 -0
package/settings.html CHANGED
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><link rel="preconnect" href="/" crossorigin=""/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover"/><link rel="stylesheet" href="/ocearo-ui/_next/static/chunks/1_g85m2d7jjpo.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/ocearo-ui/_next/static/chunks/3s6nzrbk-8mnv.js"/><script src="/ocearo-ui/_next/static/chunks/0on1skx9l54-9.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/32yn_fc-es66m.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/34wvn5zw0a69w.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/0y-dctk-kmqss.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/turbopack-1h111qg8l92rw.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/3r8nellt-dsed.js" async=""></script><meta name="theme-color" content="#f7f8f9" media="(prefers-color-scheme: light)"/><meta name="theme-color" content="#101216" media="(prefers-color-scheme: dark)"/><title>Ocearo</title><meta name="description" content="Sailing made smarter"/><link rel="manifest" href="./manifest.json"/><meta name="format-detection" content="telephone=no"/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="Ocearo"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><link rel="shortcut icon" href="./favicon.ico"/><link rel="icon" href="./favicon.ico" type="image/x-icon"/><link rel="icon" href="./favicon.svg" type="image/svg+xml" sizes="any"/><link rel="icon" href="./favicon-96x96.png" type="image/png" sizes="96x96"/><link rel="apple-touch-icon" href="./apple-touch-icon.png"/><meta name="next-size-adjust" content=""/><meta name="apple-mobile-web-app-capable" content="yes"/><meta name="description" content="Sailing made smarter with Ocearo: touchscreen-first sailing dashboard with navigation, weather, and instrumentation."/><script src="/ocearo-ui/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body class="geistsans_fce11f57-module__b_bU6G__variable geistmono_ed61a5f9-module__6fgesq__variable antialiased"><div hidden=""><!--$--><!--/$--></div><!--$--><!--/$--><script src="/ocearo-ui/_next/static/chunks/3s6nzrbk-8mnv.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"default\"]\n3:I[37457,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"default\"]\n4:I[47257,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"ClientPageRoot\"]\n5:I[5445,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\",\"/ocearo-ui/_next/static/chunks/3r8nellt-dsed.js\"],\"default\"]\n8:I[97367,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"OutletBoundary\"]\n9:\"$Sreact.suspense\"\nc:I[97367,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"ViewportBoundary\"]\ne:I[97367,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"MetadataBoundary\"]\n10:I[68027,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"default\",1]\n:HL[\"/ocearo-ui/_next/static/chunks/1_g85m2d7jjpo.css\",\"style\"]\n:HC[\"/\",\"\"]\nb:X\n0:{\"P\":null,\"c\":[\"\",\"settings\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"settings\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/ocearo-ui/_next/static/chunks/1_g85m2d7jjpo.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"name\":\"apple-mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",null,{\"name\":\"description\",\"content\":\"Sailing made smarter with Ocearo: touchscreen-first sailing dashboard with navigation, weather, and instrumentation.\"}]]}],[\"$\",\"body\",null,{\"className\":\"geistsans_fce11f57-module__b_bU6G__variable geistmono_ed61a5f9-module__6fgesq__variable antialiased\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{\"Component\":\"$5\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@6\",\"$@7\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/ocearo-ui/_next/static/chunks/3r8nellt-dsed.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L8\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@a\"}]}]]}],{},null,false,null]},null,false,\"$b\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lc\",null,{\"children\":\"$Ld\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Le\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/ocearo-ui/_next/static/chunks/1_g85m2d7jjpo.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"QMD1VkISjzTIQCzLSHPpB\"}\nb:C\n6:{}\n7:\"$0:f:0:1:1:children:1:children:0:props:children:0:props:serverProvidedParams:params\"\nd:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#f7f8f9\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#101216\",\"media\":\"(prefers-color-scheme: dark)\"}]]\n11:I[27201,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"IconMark\"]\na:null\nf:[[\"$\",\"title\",\"0\",{\"children\":\"Ocearo\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Sailing made smarter\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"./manifest.json\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"3\",{\"name\":\"format-detection\",\"content\":\"telephone=no\"}],[\"$\",\"meta\",\"4\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"5\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"Ocearo\"}],[\"$\",\"meta\",\"6\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"link\",\"7\",{\"rel\":\"shortcut icon\",\"href\":\"./favicon.ico\"}],[\"$\",\"link\",\"8\",{\"rel\":\"icon\",\"href\":\"./favicon.ico\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"./favicon.svg\",\"type\":\"image/svg+xml\",\"sizes\":\"any\"}],[\"$\",\"link\",\"10\",{\"rel\":\"icon\",\"href\":\"./favicon-96x96.png\",\"type\":\"image/png\",\"sizes\":\"96x96\"}],[\"$\",\"link\",\"11\",{\"rel\":\"apple-touch-icon\",\"href\":\"./apple-touch-icon.png\"}],[\"$\",\"$L11\",\"12\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><link rel="preconnect" href="/" crossorigin=""/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover"/><link rel="stylesheet" href="/ocearo-ui/_next/static/chunks/1m3-nchdgcxy1.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/ocearo-ui/_next/static/chunks/3s6nzrbk-8mnv.js"/><script src="/ocearo-ui/_next/static/chunks/0on1skx9l54-9.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/32yn_fc-es66m.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/34wvn5zw0a69w.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/0y-dctk-kmqss.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/turbopack-1h111qg8l92rw.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js" async=""></script><script src="/ocearo-ui/_next/static/chunks/3r8nellt-dsed.js" async=""></script><meta name="theme-color" content="#f7f8f9" media="(prefers-color-scheme: light)"/><meta name="theme-color" content="#101216" media="(prefers-color-scheme: dark)"/><title>Ocearo</title><meta name="description" content="Sailing made smarter"/><link rel="manifest" href="./manifest.json"/><meta name="format-detection" content="telephone=no"/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="Ocearo"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><link rel="shortcut icon" href="./favicon.ico"/><link rel="icon" href="./favicon.ico" type="image/x-icon"/><link rel="icon" href="./favicon.svg" type="image/svg+xml" sizes="any"/><link rel="icon" href="./favicon-96x96.png" type="image/png" sizes="96x96"/><link rel="apple-touch-icon" href="./apple-touch-icon.png"/><meta name="next-size-adjust" content=""/><meta name="apple-mobile-web-app-capable" content="yes"/><meta name="description" content="Sailing made smarter with Ocearo: touchscreen-first sailing dashboard with navigation, weather, and instrumentation."/><script src="/ocearo-ui/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body class="geistsans_fce11f57-module__b_bU6G__variable geistmono_ed61a5f9-module__6fgesq__variable antialiased"><div hidden=""><!--$--><!--/$--></div><!--$--><!--/$--><script src="/ocearo-ui/_next/static/chunks/3s6nzrbk-8mnv.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"default\"]\n3:I[37457,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"default\"]\n4:I[47257,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"ClientPageRoot\"]\n5:I[5445,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\",\"/ocearo-ui/_next/static/chunks/3r8nellt-dsed.js\"],\"default\"]\n8:I[97367,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"OutletBoundary\"]\n9:\"$Sreact.suspense\"\nc:I[97367,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"ViewportBoundary\"]\ne:I[97367,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"MetadataBoundary\"]\n10:I[68027,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"default\",1]\n:HL[\"/ocearo-ui/_next/static/chunks/1m3-nchdgcxy1.css\",\"style\"]\n:HC[\"/\",\"\"]\nb:X\n0:{\"P\":null,\"c\":[\"\",\"settings\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"settings\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/ocearo-ui/_next/static/chunks/1m3-nchdgcxy1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"name\":\"apple-mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",null,{\"name\":\"description\",\"content\":\"Sailing made smarter with Ocearo: touchscreen-first sailing dashboard with navigation, weather, and instrumentation.\"}]]}],[\"$\",\"body\",null,{\"className\":\"geistsans_fce11f57-module__b_bU6G__variable geistmono_ed61a5f9-module__6fgesq__variable antialiased\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{\"Component\":\"$5\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@6\",\"$@7\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/ocearo-ui/_next/static/chunks/3r8nellt-dsed.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L8\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@a\"}]}]]}],{},null,false,null]},null,false,\"$b\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lc\",null,{\"children\":\"$Ld\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Le\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/ocearo-ui/_next/static/chunks/1m3-nchdgcxy1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"m52l9mE01yTljNwbWjYQ7\"}\nb:C\n6:{}\n7:\"$0:f:0:1:1:children:1:children:0:props:children:0:props:serverProvidedParams:params\"\nd:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#f7f8f9\",\"media\":\"(prefers-color-scheme: light)\"}],[\"$\",\"meta\",\"3\",{\"name\":\"theme-color\",\"content\":\"#101216\",\"media\":\"(prefers-color-scheme: dark)\"}]]\n11:I[27201,[\"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js\"],\"IconMark\"]\na:null\nf:[[\"$\",\"title\",\"0\",{\"children\":\"Ocearo\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Sailing made smarter\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"./manifest.json\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"meta\",\"3\",{\"name\":\"format-detection\",\"content\":\"telephone=no\"}],[\"$\",\"meta\",\"4\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"5\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"Ocearo\"}],[\"$\",\"meta\",\"6\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"link\",\"7\",{\"rel\":\"shortcut icon\",\"href\":\"./favicon.ico\"}],[\"$\",\"link\",\"8\",{\"rel\":\"icon\",\"href\":\"./favicon.ico\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"./favicon.svg\",\"type\":\"image/svg+xml\",\"sizes\":\"any\"}],[\"$\",\"link\",\"10\",{\"rel\":\"icon\",\"href\":\"./favicon-96x96.png\",\"type\":\"image/png\",\"sizes\":\"96x96\"}],[\"$\",\"link\",\"11\",{\"rel\":\"apple-touch-icon\",\"href\":\"./apple-touch-icon.png\"}],[\"$\",\"$L11\",\"12\",{}]]\n"])</script></body></html>
package/settings.txt CHANGED
@@ -8,10 +8,10 @@
8
8
  c:I[97367,["/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js"],"ViewportBoundary"]
9
9
  e:I[97367,["/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js"],"MetadataBoundary"]
10
10
  10:I[68027,["/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js"],"default",1]
11
- :HL["/ocearo-ui/_next/static/chunks/1_g85m2d7jjpo.css","style"]
11
+ :HL["/ocearo-ui/_next/static/chunks/1m3-nchdgcxy1.css","style"]
12
12
  :HC["/",""]
13
13
  b:X
14
- 0:{"P":null,"c":["","settings"],"q":"","i":false,"f":[[["",{"children":["settings",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/ocearo-ui/_next/static/chunks/1_g85m2d7jjpo.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":[["$","head",null,{"children":[["$","meta",null,{"name":"apple-mobile-web-app-capable","content":"yes"}],["$","meta",null,{"name":"description","content":"Sailing made smarter with Ocearo: touchscreen-first sailing dashboard with navigation, weather, and instrumentation."}]]}],["$","body",null,{"className":"geistsans_fce11f57-module__b_bU6G__variable geistmono_ed61a5f9-module__6fgesq__variable antialiased","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@6","$@7"]}}],[["$","script","script-0",{"src":"/ocearo-ui/_next/static/chunks/3r8nellt-dsed.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,null]},null,false,"$b"]},null,false,null],["$","$1","h",{"children":[null,["$","$Lc",null,{"children":"$Ld"}],["$","div",null,{"hidden":true,"children":["$","$Le",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Lf"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$10",[["$","link","0",{"rel":"stylesheet","href":"/ocearo-ui/_next/static/chunks/1_g85m2d7jjpo.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"QMD1VkISjzTIQCzLSHPpB"}
14
+ 0:{"P":null,"c":["","settings"],"q":"","i":false,"f":[[["",{"children":["settings",{"children":["__PAGE__",{},"$undefined","$undefined",4608]},"$undefined","$undefined",4608]},"$undefined","$undefined",4624],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/ocearo-ui/_next/static/chunks/1m3-nchdgcxy1.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/ocearo-ui/_next/static/chunks/0h2qsuyze9ds1.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","children":[["$","head",null,{"children":[["$","meta",null,{"name":"apple-mobile-web-app-capable","content":"yes"}],["$","meta",null,{"name":"description","content":"Sailing made smarter with Ocearo: touchscreen-first sailing dashboard with navigation, weather, and instrumentation."}]]}],["$","body",null,{"className":"geistsans_fce11f57-module__b_bU6G__variable geistmono_ed61a5f9-module__6fgesq__variable antialiased","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{"Component":"$5","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@6","$@7"]}}],[["$","script","script-0",{"src":"/ocearo-ui/_next/static/chunks/3r8nellt-dsed.js","async":true,"nonce":"$undefined"}]],["$","$L8",null,{"children":["$","$9",null,{"name":"Next.MetadataOutlet","children":"$@a"}]}]]}],{},null,false,null]},null,false,"$b"]},null,false,null],["$","$1","h",{"children":[null,["$","$Lc",null,{"children":"$Ld"}],["$","div",null,{"hidden":true,"children":["$","$Le",null,{"children":["$","$9",null,{"name":"Next.Metadata","children":"$Lf"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$10",[["$","link","0",{"rel":"stylesheet","href":"/ocearo-ui/_next/static/chunks/1m3-nchdgcxy1.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]]],"S":true,"h":null,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"m52l9mE01yTljNwbWjYQ7"}
15
15
  b:C
16
16
  6:{}
17
17
  7:"$0:f:0:1:1:children:1:children:0:props:children:0:props:serverProvidedParams:params"
@@ -1,119 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,84226,e=>{"use strict";var t=e.i(43476),a=e.i(71645),r=e.i(57384);e.i(67561);var n=e.i(46991),i=e.i(85709),o=e.i(83402),l=e.i(90072),s=e.i(16196),u=e.i(83646);let d=({position:e=[0,0,0],rotation:a=[0,0,0],speed:r,color:n,fontSize:i=.5,textPosition:o=[0,.8,0],arrowSize:d=1})=>{let{scene:c}=(0,u.default)(),h=n||c.wind;return(0,t.jsxs)("group",{position:e,rotation:a,children:[(0,t.jsx)(s.Text,{characters:".0123456789",color:h,fontSize:i*d,position:o,font:"fonts/Roboto-Bold.ttf",anchorX:"center",anchorY:"middle",children:r.toFixed(1)}),(0,t.jsxs)("mesh",{children:[(0,t.jsx)("shapeGeometry",{args:[new l.Shape([new l.Vector2(0,0),new l.Vector2(.5*d*Math.cos(5*Math.PI/6),.5*d*Math.sin(5*Math.PI/6)),new l.Vector2(0,-.577*d),new l.Vector2(0,-.577*d),new l.Vector2(-.5*d*Math.cos(5*Math.PI/6),.5*d*Math.sin(5*Math.PI/6)),new l.Vector2(0,0)])]}),(0,t.jsx)("meshStandardMaterial",{color:h,side:l.DoubleSide})]})]})};d.propTypes={position:r.default.oneOfType([r.default.instanceOf(l.Vector3),r.default.arrayOf(r.default.number)]).isRequired,rotation:r.default.arrayOf(r.default.number).isRequired,speed:r.default.number.isRequired,color:r.default.oneOfType([r.default.string,r.default.number]).isRequired,fontSize:r.default.number,textPosition:r.default.arrayOf(r.default.number),arrowSize:r.default.number};let c=({outerRadius:e})=>{let r=o.default.get("preferredWindSpeedPath")||"speedTrue",s=o.default.get("preferredWindDirectionPath")||"directionTrue",c=o.default.get("preferredHeadingPath")||"courseOverGroundTrue",h=(0,a.useMemo)(()=>["environment.wind.angleTrueGround","environment.wind.speedOverGround","environment.wind.directionTrue","environment.wind.speedTrue","environment.wind.angleApparent","environment.wind.speedApparent","environment.wind.angleTrueWater","navigation.headingTrue","navigation.headingMagnetic","navigation.courseOverGroundTrue","navigation.courseOverGroundMagnetic"],[]),m=(0,i.useSignalKPaths)(h),f=(0,a.useMemo)(()=>{if("directionTrue"===s){let e=m[`environment.wind.${s}`]??m["environment.wind.directionTrue"];if(null!=e)return Math.PI/2-(e-(m[`navigation.${c}`]??m["navigation.headingTrue"]??m["navigation.courseOverGroundTrue"]??0));let t=m["environment.wind.angleTrueGround"]??m["environment.wind.angleTrueWater"];if(null!=t)return Math.PI/2-t}else{let e=m[`environment.wind.${s}`]??m["environment.wind.angleTrueGround"]??m["environment.wind.angleTrueWater"];if(null!=e)return Math.PI/2-e;let t=m["environment.wind.directionTrue"];if(null!=t)return Math.PI/2-(t-(m[`navigation.${c}`]??m["navigation.headingTrue"]??m["navigation.courseOverGroundTrue"]??0))}return Math.PI/2},[m,s,c]),p=(0,a.useMemo)(()=>{let e=m[`environment.wind.${r}`]??m["environment.wind.speedOverGround"]??m["environment.wind.speedTrue"];return(0,n.convertSpeedUnit)(e)||0},[m,r]),g=(0,a.useMemo)(()=>Math.PI/2-(m["environment.wind.angleApparent"]||0),[m]),v=(0,a.useMemo)(()=>(0,n.convertSpeedUnit)(m["environment.wind.speedApparent"])||0,[m]),y=(0,a.useMemo)(()=>new l.Vector3((e+.7)*Math.cos(f),0,-(e+.7)*Math.sin(f)),[e,f]),w=(0,a.useMemo)(()=>new l.Vector3((e+.7)*Math.cos(g),0,-(e+.7)*Math.sin(g)),[e,g]),M=(0,u.default)();return(0,t.jsxs)("group",{children:[p>0&&!0!==o.default.get("hideTrueWind")&&(0,t.jsx)(d,{position:y,rotation:[-Math.PI/2,0,-(Math.PI/2-f)],speed:p,color:M.ok,fontSize:1}),v>0&&(0,t.jsx)(d,{position:w,rotation:[-Math.PI/2,0,-(Math.PI/2-g)],speed:v,color:M.accent,fontSize:1})]})};c.propTypes={outerRadius:r.default.number.isRequired},e.s(["default",0,c])},88608,e=>{"use strict";let t=0,a=new Set;e.s(["getForecastHour",0,()=>t,"setForecastHour",0,e=>{t=Math.max(0,e),a.forEach(e=>e(t))},"subscribeForecast",0,e=>(a.add(e),()=>a.delete(e))])},3666,3950,e=>{"use strict";let t="ocearo-offline-v2",a=["ocearo-offline-v1"],r=!1,n=async(e,{kind:n="tile"}={})=>{if(!("u">typeof caches))return fetch(e,{referrerPolicy:"strict-origin-when-cross-origin"});r||(r=!0,a.forEach(e=>caches.delete(e).catch(()=>{})));let i=await caches.open(t);if("tile"===n){let t=await i.match(e);if(t)return t}try{let t=await fetch(e,{mode:"cors",referrerPolicy:"strict-origin-when-cross-origin"});return t.ok&&await i.put(e,t.clone()),t}catch(a){let t=await i.match(e);if(t)return t;throw a}},i=async e=>{let t=await n(e,{kind:"tile"});if(!t.ok)throw Error(`${t.status} ${e}`);return createImageBitmap(await t.blob())},o=(e,t,a,r)=>{let n=2**r,i=(e,t)=>({x:Math.floor((t+180)/360*n),y:Math.floor((1-Math.log(Math.tan(e*Math.PI/180)+1/Math.cos(e*Math.PI/180))/Math.PI)/2*n)}),o=a/111320,l=a/(111320*Math.cos(e*Math.PI/180)),s=i(e+o,t-l),u=i(e-o,t+l),d=[];for(let e=s.x;e<=u.x;e++)for(let t=s.y;t<=u.y;t++)d.push({z:r,x:e,y:t});return d},l=async({lat:e,lon:t,radiusM:a,layers:r,urls:i=[],onProgress:l})=>{let s=[];for(let{template:n,zooms:i}of r)for(let r of i)for(let i of o(e,t,a,r))s.push(n.replace("{z}",i.z).replace("{x}",i.x).replace("{y}",i.y));s.push(...i);let u=0,d=0,c=[...s],h=async()=>{for(;c.length;){let e=c.shift();try{!(await n(e,{kind:e.includes("forecast")?"forecast":"tile"})).ok&&d++}catch{d++}u++,l?.(u,s.length,d)}};return await Promise.all(Array.from({length:4},h)),{done:u,failed:d,total:s.length}},s=async()=>{if(navigator.storage?.estimate){let{usage:e}=await navigator.storage.estimate();return e}return null},u=async(e,a)=>{if(!("u">typeof caches))return!1;let r=await caches.open(t);return await r.put(e,a),!0},d=async e=>{if(!("u">typeof caches))return null;let a=await caches.open(t);return await a.match(e)||null};e.s(["cachedFetch",0,n,"cachedImage",0,i,"clearOfflineCache",0,()=>"u">typeof caches?caches.delete(t):Promise.resolve(!1),"offlineCacheSize",0,s,"prefetchArea",0,l,"readCached",0,d,"storeCached",0,u],3950);let c={key:null,at:0,field:null},h=(e,t,a,r)=>({lat:e+(r/8*2-1)*4e4/6371e3*180/Math.PI,lon:t+(a/8*2-1)*4e4/(6371e3*Math.cos(e*Math.PI/180))*180/Math.PI}),m=(e,t)=>{let a=[],r=[];for(let n=0;n<9;n++)for(let i=0;i<9;i++){let o=h(e,t,i,n);a.push(o.lat.toFixed(4)),r.push(o.lon.toFixed(4))}return`https://api.open-meteo.com/v1/forecast?latitude=${a.join(",")}&longitude=${r.join(",")}&hourly=wind_speed_10m,wind_direction_10m&wind_speed_unit=ms&forecast_hours=48&timezone=GMT`},f=async(e,t)=>{let a=`${e.toFixed(1)},${t.toFixed(1)}`;if(c.field&&c.key===a&&Date.now()-c.at<18e5)return c.field;let r=m(e,t),i=await n(r,{kind:"forecast"});if(!i.ok)throw Error(`Open-Meteo ${i.status}`);let o=await i.json(),l=Array.isArray(o)?o:[o],s=l[0]?.hourly?.time||[],u=s.length,d=[],h=[];for(let e=0;e<u;e++){let t=new Float32Array(81),a=new Float32Array(81);l.forEach((r,n)=>{let i=r.hourly.wind_speed_10m[e]??0,o=(r.hourly.wind_direction_10m[e]??0)*Math.PI/180;t[n]=-i*Math.sin(o),a[n]=-i*Math.cos(o)}),d.push(t),h.push(a)}let f={origin:{lat:e,lon:t},start:Date.parse(`${s[0]}Z`),hours:u,u:d,v:h,source:"open-meteo"};return c={key:a,at:Date.now(),field:f},f},p=[[0,[98,113,183]],[1,[57,97,159]],[3,[74,148,169]],[5,[77,141,123]],[7,[83,165,83]],[9,[53,159,53]],[11,[167,157,81]],[13,[159,127,58]],[15,[161,108,92]],[17,[129,58,78]],[19,[175,80,136]],[21,[117,74,147]],[24,[109,97,163]],[27,[68,105,141]],[29,[92,144,152]],[36,[125,68,165]]];e.s(["HALF_EXTENT_M",0,4e4,"WINDY_SCALE",0,p,"fetchWindField",0,f,"sampleWind",0,(e,t,a,r=0)=>{let n=Math.min(9-1.001,Math.max(0,(t/4e4+1)/2*8)),i=Math.min(9-1.001,Math.max(0,(a/4e4+1)/2*8)),o=Math.floor(n),l=Math.floor(i),s=n-o,u=i-l,d=Math.min(e.hours-1,Math.max(0,Math.floor(r))),c=Math.min(e.hours-1,d+1),h=Math.min(1,Math.max(0,r-d)),m=(e,t)=>{let a=e[t],r=9*l+o;return(a[r]*(1-s)+a[r+1]*s)*(1-u)+(a[r+9]*(1-s)+a[r+9+1]*s)*u};return{u:m(e.u,d)*(1-h)+m(e.u,c)*h,v:m(e.v,d)*(1-h)+m(e.v,c)*h}},"uniformField",0,(e,t,a,r)=>{let n=new Float32Array(81).fill(-a*Math.sin(r)),i=new Float32Array(81).fill(-a*Math.cos(r));return{origin:{lat:e,lon:t},start:Date.now(),hours:1,u:[n],v:[i],source:"boat"}},"windColor",0,e=>{if(e<=p[0][0])return p[0][1];for(let t=1;t<p.length;t++)if(e<=p[t][0]){let[a,r]=p[t-1],[n,i]=p[t],o=(e-a)/(n-a);return r.map((e,t)=>e+(i[t]-e)*o)}return p[p.length-1][1]},"windFieldUrl",0,m],3666)},71415,e=>{"use strict";var t=e.i(43476),a=e.i(71645),r=e.i(90072),n=e.i(60099),i=e.i(43216),o=e.i(83646),l=e.i(83402),s=e.i(85709),u=e.i(78461),d=e.i(3950),c=e.i(48390);e.i(85269);var h=e.i(22831);let m="https://elevation-tiles-prod.s3.amazonaws.com/terrarium/{z}/{x}/{y}.png",f=10,p=.1,g=["navigation.position","design.draft","environment.tide.heightNow","environment.tide.heightHigh","environment.tide.heightLow","environment.depth.belowSurface","environment.depth.belowKeel"],v=(e,t,a)=>{let r=2**a,n=e*Math.PI/180,i=(1-Math.log(Math.tan(n)+1/Math.cos(n))/Math.PI)/2*r;return{x:(t+180)/360*r,y:i}},y=(e,t,a)=>{let r=2**a;return{lat:180*Math.atan(Math.sinh(Math.PI*(1-2*t/r)))/Math.PI,lon:e/r*360-180}},w=new Map,M=async(e,t,a=m,r=f)=>{let n=v(e,t,r),i=Math.floor(n.x)-1,o=Math.floor(n.y)-1,l=`${a}|${r}/${i},${o}`;if(w.has(l))return w.get(l);let s=document.createElement("canvas");s.width=768,s.height=768;let u=s.getContext("2d",{willReadFrequently:!0});if(!(await Promise.all(Array.from({length:9},async(e,t)=>{let n=i+t%3,l=o+Math.floor(t/3),s=a.replace("{z}",r).replace("{x}",n).replace("{y}",l);try{let e=await (0,d.cachedImage)(s);return u.drawImage(e,t%3*256,256*Math.floor(t/3)),!0}catch{return!1}}))).some(Boolean))return null;let c=u.getImageData(0,0,768,768).data,h=new Float32Array(589824);for(let e=0;e<589824;e++)h[e]=c[4*e+3]<255?NaN:256*c[4*e]+c[4*e+1]+c[4*e+2]/256-32768;let p={heights:h,size:768,nw:y(i,o,r),se:y(i+3,o+3,r),z:r};return w.set(l,p),p},b=async(e,t)=>{let a=(0,c.bathymetryTileTemplate)(),[r,n]=await Promise.all([M(e,t),a?M(e,t,a,13).catch(()=>null):null]);if(!r&&!n)throw Error("No bathymetry");return{global:r,shom:n}},x=(e,t,a)=>{let{heights:r,size:n,nw:i,se:o,z:l}=e,s=(a-i.lon)/(o.lon-i.lon)*(n-1),u=v(i.lat,i.lon,l),d=v(o.lat,o.lon,l),c=(v(t,a,l).y-u.y)/(d.y-u.y)*(n-1);if(s<0||c<0||s>n-1||c>n-1)return NaN;let h=Math.min(n-2,Math.floor(s)),m=Math.min(n-2,Math.floor(c)),f=s-h,p=c-m,g=(e,t)=>r[t*n+e];return(g(h,m)*(1-f)+g(h+1,m)*f)*(1-p)+(g(h,m+1)*(1-f)+g(h+1,m+1)*f)*p},F=`
2
- attribute float aDepth;
3
- attribute float aDrying;
4
- attribute vec2 aGround;
5
- varying float vDepth;
6
- varying float vDrying;
7
- varying vec2 vGround;
8
- varying vec3 vWorld;
9
- void main() {
10
- vDepth = aDepth;
11
- vDrying = aDrying;
12
- vGround = aGround;
13
- vec4 w = modelMatrix * vec4(position, 1.0);
14
- vWorld = w.xyz;
15
- gl_Position = projectionMatrix * viewMatrix * w;
16
- }
17
- `,P=`
18
- uniform float uDanger;
19
- uniform vec3 uShallow;
20
- uniform vec3 uMid;
21
- uniform vec3 uDeep;
22
- uniform vec3 uLand;
23
- uniform vec3 uDrying;
24
- uniform vec3 uLine;
25
- uniform vec3 uDangerColor;
26
- uniform vec3 uFade;
27
- uniform float uFadeNear;
28
- uniform float uFadeFar;
29
- varying float vDepth;
30
- varying float vDrying;
31
- varying vec2 vGround;
32
- varying vec3 vWorld;
33
-
34
- float contour(float d, float level, float width) {
35
- float w = fwidth(d);
36
- return 1.0 - smoothstep(0.0, w * width, abs(d - level));
37
- }
38
- float gridLines(vec2 p, float spacing, float width) {
39
- vec2 g = abs(fract(p / spacing - 0.5) - 0.5) * spacing;
40
- vec2 w = fwidth(p) * width;
41
- vec2 l = 1.0 - smoothstep(vec2(0.0), w, g);
42
- return max(l.x, l.y);
43
- }
44
-
45
- void main() {
46
- vec3 c;
47
- if (vDepth <= 0.0) {
48
- c = vDrying > 0.5 ? uDrying : uLand;
49
- } else if (vDepth < 6.0) {
50
- c = mix(uShallow, uMid, vDepth / 6.0);
51
- } else {
52
- // Darker with depth, as light fades under water: the relief reads at a glance
53
- c = mix(uMid, uDeep, clamp((vDepth - 6.0) / 18.0, 0.0, 1.0));
54
- }
55
- // Relief: hill shading from the north-west, as on a shaded survey
56
- vec3 n = normalize(cross(dFdx(vWorld), dFdy(vWorld)));
57
- if (n.y < 0.0) n = -n;
58
- c *= 0.5 + 0.65 * clamp(dot(n, normalize(vec3(-0.6, 0.7, -0.5))), 0.0, 1.0);
59
- // Too shallow for us: orange hatching (not a fill, which reads as land)
60
- if (vDepth > 0.0 && vDepth < uDanger) {
61
- float hatch = step(0.55, fract((vGround.x + vGround.y) / 14.0));
62
- c = mix(c, uDangerColor, 0.25 + 0.45 * hatch);
63
- }
64
- // The survey grid, fading out with distance before it shimmers
65
- float dist = length(vWorld.xz);
66
- float gridFade = 1.0 - smoothstep(900.0, 1700.0, dist);
67
- float minor = gridLines(vGround, 50.0, 1.5) * 0.55;
68
- float major = gridLines(vGround, 250.0, 2.4) * 0.85;
69
- c = mix(c, uLine, max(minor, major) * gridFade * (vDepth > 0.0 ? 1.0 : 0.4));
70
- // Isobaths, the drying line bold
71
- float lines = max(max(contour(vDepth, 2.0, 1.5), contour(vDepth, 5.0, 1.5)), max(contour(vDepth, 10.0, 1.5), contour(vDepth, 20.0, 1.5)));
72
- lines = max(lines, max(contour(vDepth, 30.0, 1.2), contour(vDepth, 50.0, 1.2)) * 0.7);
73
- lines = max(lines, contour(vDepth, 0.0, 2.5));
74
- lines = max(lines, contour(vDepth, uDanger, 2.0) * 0.9);
75
- c = mix(c, uLine * 0.75, clamp(lines, 0.0, 1.0) * 0.85);
76
- c = mix(c, uFade, smoothstep(uFadeNear, uFadeFar, dist));
77
- gl_FragColor = vec4(c, 1.0);
78
- #include <colorspace_fragment>
79
- }
80
- `,k={light:{water:"#8fd3ff",waterOpacity:.18,shallow:"#b5e0f2",mid:"#5fa8d8",deep:"#1c4f86",land:"#e2d6b8",drying:"#c7d3a6",line:"#0f3557",danger:"#e8873a",fade:"#e8eef3",text:"#0f2f4f",halo:"#ffffff"},dark:{water:"#7cc8f2",waterOpacity:.12,shallow:"#3a8fbc",mid:"#1d5f8c",deep:"#0b2238",land:"#4a4434",drying:"#34472e",line:"#8fdcff",danger:"#f0a060",fade:"#16191e",text:"#e6f4ff",halo:"#101216"},night:{water:"#c0503c",waterOpacity:.1,shallow:"#7a2a1e",mid:"#4f1a12",deep:"#24100c",land:"#3a1a10",drying:"#3a2410",line:"#ff8a72",danger:"#ffad80",fade:"#120807",text:"#ffb3a3",halo:"#0f0706"}},D=[96,40],S=`
81
- attribute vec3 aCenter;
82
- attribute vec2 aCell;
83
- uniform vec2 uAtlas;
84
- uniform float uSize;
85
- varying vec2 vUv;
86
- varying float vFade;
87
- void main() {
88
- vec4 mv = modelViewMatrix * vec4(aCenter, 1.0);
89
- float d = -mv.z;
90
- // Constant size on screen (like the HUD text), none right under the camera
91
- float size = d * uSize;
92
- mv.xy += position.xy * vec2(size * 2.4, size);
93
- vUv = (aCell + vec2(position.x + 0.5, 0.5 - position.y)) / uAtlas;
94
- vFade = (1.0 - smoothstep(1100.0, 1700.0, length(aCenter.xz))) * smoothstep(25.0, 60.0, d);
95
- gl_Position = projectionMatrix * mv;
96
- }
97
- `,N=`
98
- uniform sampler2D uMap;
99
- varying vec2 vUv;
100
- varying float vFade;
101
- void main() {
102
- vec4 t = texture2D(uMap, vUv);
103
- if (t.a * vFade < 0.05) discard;
104
- gl_FragColor = vec4(t.rgb, t.a * vFade);
105
- #include <colorspace_fragment>
106
- }
107
- `,T=({items:e,palette:n})=>{let{geometry:i,material:o}=(0,a.useMemo)(()=>{if(!e.length)return{};let[t,a]=D,i=Math.ceil(e.length/16),o=document.createElement("canvas");o.width=16*t,o.height=a*i;let l=o.getContext("2d");l.textAlign="center",l.textBaseline="middle";let s=new r.PlaneGeometry(1,1),u=new r.InstancedBufferGeometry;u.index=s.index,u.setAttribute("position",s.attributes.position);let d=new Float32Array(3*e.length),c=new Float32Array(2*e.length);e.forEach((e,r)=>{let i=r%16*t,o=Math.floor(r/16)*a;l.font=`${e.danger?700:600} 28px Inter, Roboto, Arial, sans-serif`,l.lineWidth=7,l.strokeStyle=n.halo,l.strokeText(e.text,i+t/2,o+a/2+1),l.fillStyle=e.danger?n.danger:n.text,l.fillText(e.text,i+t/2,o+a/2+1),d.set(e.position,3*r),c.set([r%16,Math.floor(r/16)],2*r)}),u.setAttribute("aCenter",new r.InstancedBufferAttribute(d,3)),u.setAttribute("aCell",new r.InstancedBufferAttribute(c,2)),u.instanceCount=e.length;let h=new r.CanvasTexture(o);h.colorSpace=r.SRGBColorSpace,h.flipY=!1,h.anisotropy=4;let m=new r.ShaderMaterial({uniforms:{uMap:{value:h},uAtlas:{value:new r.Vector2(16,i)},uSize:{value:.03}},vertexShader:S,fragmentShader:N,transparent:!0,depthWrite:!1});return s.dispose(),{geometry:u,material:m}},[e,n]);return((0,a.useEffect)(()=>()=>{i?.dispose(),o?.uniforms.uMap.value.dispose(),o?.dispose()},[i,o]),i)?(0,t.jsx)("mesh",{geometry:i,material:o,frustumCulled:!1,renderOrder:3}):null},C=e=>e<10?e.toFixed(1):String(Math.round(e));e.s(["BATHY_ZOOM",0,10,"TERRARIUM",0,m,"default",0,({y:e=-.1})=>{let d,c=(0,s.useSignalKPaths)(g),{t:m}=(0,h.useTranslation)(),{id:y}=(0,o.default)(),w=c["navigation.position"],{heading:M}=(0,u.default)(),[D,S]=(0,a.useState)(null),N=l.default.get("aisLengthScalingFactor")||.7,I=Number.isFinite(c["design.draft"]?.maximum)?c["design.draft"].maximum:Number(l.default.get("boatDraft"))||2,_=c["environment.depth.belowSurface"],A=c["environment.depth.belowKeel"],O=Number.isFinite(_)?_:Number.isFinite(A)?A+I:null,j=k[y]||k.light,$=w?.latitude,G=w?.longitude,E=Number.isFinite($)?(d=v($,G,f),`${Math.floor(d.x)},${Math.floor(d.y)}`):null;(0,a.useEffect)(()=>{if(!E)return;let e=!1;return b($,G).then(t=>{e||S(t)}).catch(()=>{}),()=>{e=!0}},[E]);let R=Number.isFinite($)?Math.round(5e3*$):null,z=Number.isFinite(G)?Math.round(5e3*G):null,L=(0,a.useMemo)(()=>D&&null!==R?{survey:D.shom?x(D.shom,$,G):NaN,global:D.global?x(D.global,$,G):NaN}:{},[D,R,z]),W=(({tideNow:e,tideHigh:t,tideLow:a,measured:r,surveyHere:n,globalHere:i})=>{let o=(e,t=p)=>Math.round(e/t)*t;if(Number.isFinite(e)){let r=Number.isFinite(t)&&Number.isFinite(a)?e-(t+a)/2:0;return{cd:o(e),msl:o(r),source:"tide"}}if(Number.isFinite(r)&&(Number.isFinite(n)||Number.isFinite(i))){let e=Number.isFinite(n)?r+n:0,t=Number.isFinite(i)?r+i:0;return{cd:o(e,.5),msl:o(t,.5),source:"sounder"}}return{cd:0,msl:0,source:"datum"}})({tideNow:c["environment.tide.heightNow"],tideHigh:c["environment.tide.heightHigh"],tideLow:c["environment.tide.heightLow"],measured:O,surveyHere:L.survey,globalHere:L.global}),B=W.cd,H=W.msl,U=(0,a.useMemo)(()=>D?(e,t)=>{let a=D.shom?x(D.shom,e,t):NaN;if(Number.isFinite(a))return{h:a-B,drying:a<6.5};let r=D.global?x(D.global,e,t):NaN;return Number.isFinite(r)?{h:r-H,drying:r<3}:null}:null,[D,B,H]),V=(0,a.useMemo)(()=>{let e,t;if(!U||!Number.isFinite($))return null;let a=D.shom?240:160,n=D.shom?9:5,i=new r.PlaneGeometry(6e3*N,6e3*N,a,a),o=i.attributes.position,l=new Float32Array(o.count),s=new Float32Array(o.count),u=new Float32Array(2*o.count),d=111320*Math.cos($*Math.PI/180),c=(e=Math.round(10*$)/10,t=Math.round(10*G)/10,{east:(G-t)*111320*Math.cos(e*Math.PI/180),north:($-e)*111320});for(let e=0;e<o.count;e++){let t=o.getX(e)/N,a=o.getY(e)/N,r=U($+a/111320,G+t/d),i=r?r.h:0;l[e]=-i,s[e]=+!!r?.drying,u[2*e]=c.east+t,u[2*e+1]=c.north+a,o.setZ(e,i<0?i*n*N:(.15+3*Math.min(i,4))*N)}i.setAttribute("aDepth",new r.BufferAttribute(l,1)),i.setAttribute("aDrying",new r.BufferAttribute(s,1)),i.setAttribute("aGround",new r.BufferAttribute(u,2)),i.computeVertexNormals();let h=[],m=250*Math.ceil((c.east-1500)/250),f=250*Math.ceil((c.north-1500)/250);for(let e=m;e<=c.east+1500;e+=250)for(let t=f;t<=c.north+1500;t+=250){let a=e-c.east+125,r=t-c.north+125;if(Math.hypot(a,r)>1500)continue;let i=U($+r/111320,G+a/d);if(!i||i.h>=-.1)continue;let o=-i.h;h.push({text:C(o),danger:o<I+1,position:[a*N,i.h*n*N+2,-r*N]})}let p=U($,G);return{geometry:i,items:h,exaggeration:n,bottom:p&&p.h<0?p.h*n*N:null,depthHere:p?-p.h:null}},[U,N,I,$&&Math.round(500*$),G&&Math.round(500*G)]);(0,a.useEffect)(()=>()=>V?.geometry.dispose(),[V]);let K=(0,a.useMemo)(()=>new r.ShaderMaterial({uniforms:{uDanger:{value:3},uShallow:{value:new r.Color},uMid:{value:new r.Color},uDeep:{value:new r.Color},uLand:{value:new r.Color},uDrying:{value:new r.Color},uLine:{value:new r.Color},uDangerColor:{value:new r.Color},uFade:{value:new r.Color},uFadeNear:{value:1500},uFadeFar:{value:2100}},vertexShader:F,fragmentShader:P}),[]);(0,a.useEffect)(()=>{let e=K.uniforms;e.uDanger.value=I+1,e.uShallow.value.set(j.shallow),e.uMid.value.set(j.mid),e.uDeep.value.set(j.deep),e.uLand.value.set(j.land),e.uDrying.value.set(j.drying),e.uLine.value.set(j.line),e.uDangerColor.value.set(j.danger),e.uFade.value.set(j.fade)},[K,I,j]),(0,a.useEffect)(()=>()=>K.dispose(),[K]);let q=(0,a.useMemo)(()=>new r.ShaderMaterial({uniforms:{uColor:{value:new r.Color},uOpacity:{value:.16}},vertexShader:`
108
- varying float vDist;
109
- void main() {
110
- vDist = length(position.xy);
111
- gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
112
- }`,fragmentShader:`
113
- uniform vec3 uColor;
114
- uniform float uOpacity;
115
- varying float vDist;
116
- void main() {
117
- gl_FragColor = vec4(uColor, uOpacity * (1.0 - smoothstep(1500.0, 2100.0, vDist)));
118
- #include <colorspace_fragment>
119
- }`,transparent:!0,depthWrite:!1,side:r.DoubleSide}),[]);if((0,a.useEffect)(()=>{let e=q.uniforms;e.uColor.value.set(j.water),e.uOpacity.value=j.waterOpacity},[q,j]),(0,a.useEffect)(()=>()=>q.dispose(),[q]),!V||!Number.isFinite($))return null;let X=V.depthHere,Y=Number.isFinite(O)&&Number.isFinite(X)&&"tide"===W.source?O-X:null,Z=(Number.isFinite(O)?-O*V.exaggeration*N:null)??V.bottom,J=null!==Y&&Math.abs(Y)>=.3,Q=Number.isFinite(O)?O:X,ee=-I*N;return(0,t.jsxs)("group",{rotation:[0,M,0],position:[0,e,0],children:[(0,t.jsx)("mesh",{rotation:[-Math.PI/2,0,0],geometry:V.geometry,material:K,renderOrder:-2}),(0,t.jsx)("mesh",{rotation:[-Math.PI/2,0,0],material:q,renderOrder:1,children:(0,t.jsx)("circleGeometry",{args:[3e3*N,96]})}),(0,t.jsx)(T,{items:V.items,palette:j}),null!==Z&&Z<ee&&(0,t.jsxs)("group",{children:[(0,t.jsx)(i.Line,{points:[[0,ee,0],[0,Z,0]],color:j.line,lineWidth:2,dashed:!0,dashSize:1.2,gapSize:.8}),(0,t.jsxs)("mesh",{position:[0,Z,0],rotation:[-Math.PI/2,0,0],children:[(0,t.jsx)("ringGeometry",{args:[1.2,1.8,32]}),(0,t.jsx)("meshBasicMaterial",{color:j.line,transparent:!0,opacity:.8,side:r.DoubleSide})]}),J&&null!==V.bottom&&(0,t.jsxs)("mesh",{position:[0,V.bottom,0],rotation:[-Math.PI/2,0,0],children:[(0,t.jsx)("ringGeometry",{args:[1,1.4,32]}),(0,t.jsx)("meshBasicMaterial",{color:j.danger,transparent:!0,opacity:.8,side:r.DoubleSide})]}),Number.isFinite(Q)&&(0,t.jsx)(n.Html,{position:[0,Z/2,0],zIndexRange:[5,0],style:{pointerEvents:"none"},children:(0,t.jsxs)("div",{className:"ml-3 -translate-y-1/2 whitespace-nowrap px-1.5 py-px rounded-md text-caption font-semibold tabular-nums text-hud-main bg-hud-bg/70 backdrop-blur-sm",children:[C(Q)," m",J&&(0,t.jsxs)("span",{className:"ml-1.5 font-normal text-hud-muted",children:[m("bathymetry.chartDepth",{depth:C(X)})," ","(",Y>0?"+":"−",Math.abs(Y).toFixed(1),")"]}),"sounder"===W.source&&(0,t.jsx)("span",{className:"ml-1.5 font-normal text-hud-muted",children:m("bathymetry.levelFromSounder")})]})})]})]})}])},20705,e=>{"use strict";let t=["north","east","south","west"],a=["port","starboard","preferred_channel_port","preferred_channel_starboard"],r=e=>{let r=Number(e);return r>=9&&r<=12?{kind:"cardinal",beacon:!0,category:t[r-9]}:r>=13&&r<=16?{kind:"lateral",beacon:!0,category:a[r-13]}:17===r?{kind:"isolated_danger",beacon:!0}:18===r?{kind:"safe_water",beacon:!0}:19===r?{kind:"special_purpose",beacon:!0}:r>=20&&r<=23?{kind:"cardinal",beacon:!1,category:t[r-20]}:r>=24&&r<=27?{kind:"lateral",beacon:!1,category:a[r-24]}:28===r?{kind:"isolated_danger",beacon:!1}:29===r?{kind:"safe_water",beacon:!1}:30===r?{kind:"special_purpose",beacon:!1}:4===r?{kind:"special_purpose",beacon:!1,colours:["blue","yellow"],pattern:"vertical",topmark:{shape:"cross",colours:["yellow"]}}:{kind:"station",beacon:!0}},n=e=>{let t=r(e.atonType);return{id:`ais:${e.id}`,lat:e.latitude,lon:e.longitude,name:e.name||"",kind:t.kind,beacon:t.beacon,category:t.category||"",shape:"",colours:t.colours||[],pattern:t.pattern||"",system:"",height:null,topmark:t.topmark||null,light:null,ais:!0,virtual:e.virtual,offPosition:e.offPosition}},i=(e,t)=>Math.hypot((t.lat-e.lat)*111320,(t.lon-e.lon)*111320*Math.cos(e.lat*Math.PI/180));e.s(["atonKind",0,r,"mergeAtons",0,(e,t)=>{if(!t.length)return e;let a=e.map(e=>({...e})),r=[];for(let e of t){if(!Number.isFinite(e.latitude)||!Number.isFinite(e.longitude))continue;let t=n(e),o=!t.virtual&&a.find(e=>!e.ais&&("station"===t.kind||e.kind===t.kind)&&60>=i(e,t));o?(o.ais=!0,o.offPosition=t.offPosition,o.name||(o.name=t.name)):r.push(t)}return[...a,...r]}])},97776,e=>{"use strict";var t=e.i(3950);let a=["https://overpass-api.de/api/interpreter","https://maps.mail.ru/osm/tools/overpass/api/interpreter"],r=["cardinal","lateral","isolated_danger","safe_water","special_purpose"],n=`^(buoy|beacon)_(${r.join("|")})$`,i=e=>Math.round(10*e)/10,o=(e,t,a)=>{let r=a/111320,n=a/(111320*Math.max(.1,Math.cos(e*Math.PI/180))),o=[];for(let a=Math.floor((e-r)/.1);a<=Math.floor((e+r)/.1);a++)for(let e=Math.floor((t-n)/.1);e<=Math.floor((t+n)/.1);e++)o.push({s:i(.1*a),w:i(.1*e),key:`${a}:${e}`});return o},l=({s:e,w:t})=>`${a[0]}?data=${encodeURIComponent(`[out:json];node["seamark:type"~"${n}"](${e},${t},${i(e+.1)},${i(t+.1)});out body;`)}`,s=e=>e?String(e).split(";").map(e=>e.trim().toLowerCase()).filter(Boolean):[],u=e=>{let t=parseFloat(e);return Number.isFinite(t)?t:null},d=e=>{let t=e.tags||{},a=t["seamark:type"]||"",[r,...n]=a.split("_"),i=n.join("_"),o=e=>t[`seamark:${a}:${e}`],l=t["seamark:light:character"]?{character:t["seamark:light:character"],group:t["seamark:light:group"]||"",period:u(t["seamark:light:period"]),colour:s(t["seamark:light:colour"])[0]||"white"}:null;return{id:e.id,lat:e.lat,lon:e.lon,name:t["seamark:name"]||t.name||"",kind:i,beacon:"beacon"===r,category:(o("category")||"").toLowerCase(),shape:(o("shape")||"").toLowerCase(),colours:s(o("colour")),pattern:(o("colour_pattern")||"").toLowerCase(),system:(o("system")||"").toLowerCase(),height:u(o("height")),topmark:t["seamark:topmark:shape"]?{shape:t["seamark:topmark:shape"].toLowerCase(),colours:s(t["seamark:topmark:colour"])}:null,light:l}},c=0,h=e=>e.filter(e=>"node"===e.type&&Number.isFinite(e.lat)&&Number.isFinite(e.lon)).map(d).filter(e=>r.includes(e.kind)),m=async(e,r=25)=>{let o=Math.min(...e.map(e=>e.s)),s=Math.min(...e.map(e=>e.w)),u=i(Math.max(...e.map(e=>e.s))+.1),d=i(Math.max(...e.map(e=>e.w))+.1),c=`[out:json][timeout:${r}];node["seamark:type"~"${n}"](${o},${s},${u},${d});out body;`;for(let r of a)try{let a=await fetch(`${r}?data=${encodeURIComponent(c)}`,{referrerPolicy:"strict-origin-when-cross-origin"});if(!a.ok)continue;let n=await a.json();if(n.remark&&/error|timeout|runtime/i.test(n.remark))continue;let i=n.elements||[],o={};return await Promise.all(e.map(e=>{o[e.key]=i.filter(t=>t.lat>=e.s&&t.lat<e.s+.1&&t.lon>=e.w&&t.lon<e.w+.1);let a=JSON.stringify({elements:o[e.key]});return(0,t.storeCached)(l(e),new Response(a,{headers:{"Content-Type":"application/json"}}))})),o}catch{}throw Error("Overpass unreachable")},f=async e=>{let a={},r=[];for(let n of e){let e=await (0,t.readCached)(l(n)).catch(()=>null);e?a[n.key]=h((await e.json()).elements||[]):r.push(n)}if(r.length&&Date.now()>=c)try{let e=await m(r);Object.entries(e).forEach(([e,t])=>{a[e]=h(t)})}catch{c=Date.now()+12e4}return a},p=async(e,t,a)=>{let r=o(e,t,a);return r.length?Object.keys(await m(r,90)).length:0};e.s(["cellsAround",0,o,"loadCells",0,f,"prefetchSeamarks",0,p])},83524,e=>{"use strict";var t=e.i(71645),a=e.i(62588),r=e.i(85709),n=e.i(61969),i=e.i(90669),o=e.i(539),l=e.i(83402),s=e.i(77291);let u=Math.PI/180,d=3*u,c=60*u,h=5*u,m=90*u,f=["navigation.speedOverGround","navigation.courseOverGroundTrue"];e.s(["default",0,()=>{let{targets:e}=(0,a.useAIS)({passive:!0}),u=(0,n.default)(),p=(0,r.useSignalKPaths)(f),g=(0,t.useMemo)(()=>(0,i.getCollisionThresholds)(),[]),v=(0,s.default)(),y=l.default.get("aisLengthScalingFactor")||.7;return(0,t.useMemo)(()=>{let t=p["navigation.speedOverGround"],a=p["navigation.courseOverGroundTrue"]??u.heading,r=v.giveWayTo||v.primary;if(r&&Number.isFinite(t)&&t>.3&&Number.isFinite(a)){let{target:n,role:l}=r,s={targetName:n.name,rule:l.rule,reason:l.reason},u="stand-on"===l.ownRole&&Number.isFinite(n.tcpaSeconds)&&n.tcpaSeconds<180&&Number.isFinite(n.cpaMeters)&&n.cpaMeters<.3*g.cpaMeters;if("stand-on"===l.ownRole&&!u)return{kind:"standOn",change:0,heading:a,...s};let d=Math.sign(Math.sin(Math.atan2(n.sceneX,-n.sceneZ)-a))||1,c=(({targets:e,sog:t,cog:a,scale:r,thresholds:n,preferSide:o=0})=>{let l=e.filter(e=>null!==e.distanceMeters&&null!==e.sceneX&&Number.isFinite(e.sog)&&Number.isFinite(e.cog??e.cogMagnetic)),s=(e,a=n.cpaMeters)=>l.every(o=>{let l=(0,i.closestApproach)({rx:o.sceneX/r,ry:-o.sceneZ/r,ownSog:t,ownCog:e,targetSog:o.sog,targetCog:o.cog??o.cogMagnetic});return!l||l.tcpa<=0||l.tcpa>n.tcpaSeconds||l.cpa>=a}),u=o<0?[-1,1]:[1,-1],d=(e,t)=>{for(let r=h;r<=m+1e-9;r+=h)if(s(a+e*r,t))return e*r;return null};if(0!==o)return d(u[0])??d(u[0],n.cpaMeters/2)??d(u[1]);for(let e=h;e<=m+1e-9;e+=h){if(s(a+e))return e;if(s(a-e))return-e}return null})({targets:e,sog:t,cog:a,scale:y,thresholds:g,preferSide:"both"===l.ownRole||"power"===v.ownCategory||u?1:d});return null!==c?{kind:"avoid",change:c,heading:(0,o.wrapPi)(a+c),lastMoment:u,...s}:{kind:"avoid",change:null,heading:a,lastMoment:u,noSolution:!0,...s}}let n=u.vmc;if(n&&Number.isFinite(n.current)&&Number.isFinite(u.heading)){let e=(0,o.wrapPi)(n.best.heading-u.heading),t=(n.best.vmc-n.current)*1.943844;if(t>=.15&&Math.abs(e)>=d&&Math.abs(e)<=c)return{kind:"vmg",change:e,heading:n.best.heading,gainKn:t}}return null},[e,u,p,y,g,v])}])},71029,e=>{"use strict";var t=e.i(71645),a=e.i(85709),r=e.i(66799),n=e.i(46991);let i="notifications.mob",o=e=>e*Math.PI/180;e.s(["distanceAndBearing",0,(e,t)=>{if(!Number.isFinite(e?.latitude)||!Number.isFinite(e?.longitude)||!Number.isFinite(t?.latitude)||!Number.isFinite(t?.longitude))return null;let a=o(e.latitude),r=o(t.latitude),i=o(t.longitude-e.longitude),l=Math.sin((r-a)/2)**2+Math.cos(a)*Math.cos(r)*Math.sin(i/2)**2;return{distance:2*n.EARTH_RADIUS_METERS*Math.asin(Math.min(1,Math.sqrt(l))),bearing:(180*Math.atan2(Math.sin(i)*Math.cos(r),Math.cos(a)*Math.sin(r)-Math.sin(a)*Math.cos(r)*Math.cos(i))/Math.PI+360)%360}},"useActiveMobs",0,()=>{let e=(0,a.useSignalKPrefix)(i);return(0,t.useMemo)(()=>Object.entries(e).filter(([e,t])=>(e===i||e.startsWith(`${i}.`))&&t?.state&&"normal"!==t.state).map(([e,t])=>({...t,path:e})).sort((e,t)=>String(e.createdAt??"").localeCompare(String(t.createdAt??""))),[e])},"useMobSupport",0,()=>{let e=(()=>{let[e,a]=(0,t.useState)(null);return(0,t.useEffect)(()=>{let e=!1,t=null,n=async()=>{let i=await r.default.getFeatures();e||(i?a(i):t=setTimeout(n,3e4))};return n(),()=>{e=!0,clearTimeout(t)}},[]),e})();return(0,t.useMemo)(()=>({raise:!!e?.apis.includes("notifications"),navigate:!!e?.apis.includes("course")}),[e])}],71029)},32189,(e,t,a)=>{"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},65156,(e,t,a)=>{"use strict";var r=e.r(32189);function n(){}function i(){}i.resetWarningCache=n,t.exports=function(){function e(e,t,a,n,i,o){if(o!==r){var l=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}}function t(){return e}e.isRequired=e;var a={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:n};return a.PropTypes=a,a}},57384,(e,t,a)=>{e.i(47167),t.exports=e.r(65156)()}]);
@@ -1,9 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,68192,e=>{"use strict";var t=e.i(43476),s=e.i(71645),n=e.i(70703),o=e.i(46932),l=e.i(88653);e.i(85269);var r=e.i(22831),a=e.i(85709),i=e.i(83402);let u=({messageKey:e})=>{let{t:s}=(0,r.useTranslation)();return(0,t.jsx)("div",{className:"w-full h-full flex items-center justify-center text-hud-main",children:s(e)})},c=(0,n.default)(()=>e.A(26949),{loadableGenerated:{modules:[23298]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loadingDocuments"})}),d=(0,n.default)(()=>e.A(22155),{loadableGenerated:{modules:[34900]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loadingSettings"})}),m=(0,n.default)(()=>e.A(30455),{loadableGenerated:{modules:[13268]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loadingMediaPlayer"})}),h=(0,n.default)(()=>e.A(71074),{loadableGenerated:{modules:[65862]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loadingBatteryMonitor"})}),f=(0,n.default)(()=>e.A(3523),{loadableGenerated:{modules:[8161]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loadingEngineMonitor"})}),p=(0,n.default)(()=>e.A(88913),{loadableGenerated:{modules:[25294]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loadingDashboard"})}),g=(0,n.default)(()=>e.A(26371),{loadableGenerated:{modules:[70127]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loadingLogbook"})}),x=(0,n.default)(()=>e.A(58293),{loadableGenerated:{modules:[33946]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loadingAutopilot"})}),j=(0,n.default)(()=>e.A(47853),{loadableGenerated:{modules:[58652]},loading:()=>(0,t.jsx)(u,{messageKey:"common.loading"})}),y={latitude:46.1591,longitude:-1.1522},b={navigation:e=>!e||e.includes("localhost:3000")?null:`${e}/@signalk/freeboard-sk/`,instrument:e=>`${e}/@mxtommy/kip/`,dashboard:e=>e.replace(":3000",":3001")+"/grafana",webcam1:()=>"https://pv.viewsurf.com/2080/Chatelaillon-Port?i=NzU4Mjp1bmRlZmluZWQ",webcam2:()=>"https://pv.viewsurf.com/1478/Chatelaillon-Plage?i=NTkyMDp1bmRlZmluZWQ",weather:(e,t)=>t&&`https://embed.windy.com/embed.html?type=map&location=coordinates&metricRain=mm&metricTemp=\xb0C&metricWind=kt&zoom=10&overlay=wind&product=ecmwf&level=surface&lat=${t.latitude}&lon=${t.longitude}&message=true`};e.s(["default",0,({view:e})=>{let{t:n}=(0,r.useTranslation)(),[u,v]=(0,s.useState)(y),[k,w]=(0,s.useState)(null);i.default.getAll();let P=i.default.getSignalKUrl(),E=(0,a.useSignalKPath)("navigation.position");(0,s.useEffect)(()=>{w(null)},[e]),(0,s.useEffect)(()=>{E&&v(e=>e?Math.abs(e.latitude-E.latitude)>.01||Math.abs(e.longitude-E.longitude)>.01?E:e:E)},[E]);let C=(0,s.useMemo)(()=>{let t=i.default.getAll(),s=t.customExternalUrls||{};if(t.showCustomUrls&&s[e])try{if("string"==typeof s[e]&&s[e].includes("${signalkUrl}"))return s[e].replace("${signalkUrl}",P).replace("${latitude}",u?.latitude||y.latitude).replace("${longitude}",u?.longitude||y.longitude);return s[e]}catch(e){console.error("Error using custom URL:",e)}let n=b[e];if(!n)return null;try{return n(P,u)}catch(e){return console.error("Error generating URL:",e),null}},[e,u,P]),$=["motor","logbook","autopilot","battery","dashboard","debug"].includes(e);return(0,t.jsx)("div",{className:"flex flex-col w-full h-full overflow-hidden bg-hud-bg backdrop-blur-sm relative z-0",children:(0,t.jsx)(l.AnimatePresence,{mode:"wait",children:(0,t.jsx)(o.motion.div,{initial:{opacity:0,x:10,scale:.99},animate:{opacity:1,x:0,scale:1},exit:{opacity:0,x:-10,scale:.99},transition:{duration:.4,ease:[.16,1,.3,1]},style:{flex:"1 1 0%",minHeight:0},className:`flex flex-col w-full absolute inset-0 ${$?"overflow-hidden":"overflow-auto"}`,children:(()=>{if(k)return(0,t.jsx)("div",{className:"text-oRed p-4 font-semibold uppercase text-caption",children:k});switch(e){case"manual":return(0,t.jsx)(c,{path:"./docs"});case"settings":return(0,t.jsx)(d,{});case"mediaplayer":return(0,t.jsx)(m,{});case"battery":return(0,t.jsx)(h,{});case"motor":return(0,t.jsx)(f,{});case"dashboard":return(0,t.jsx)(p,{});case"logbook":return(0,t.jsx)(g,{});case"autopilot":return(0,t.jsx)(x,{});case"debug":return(0,t.jsx)(j,{});default:if(!C)return(0,t.jsx)("div",{className:"text-hud-muted p-4 text-label",children:n("errors.failedToLoadExternal")});return(0,t.jsx)("iframe",{className:"flex-grow border-none",src:C,title:"External Application",onError:()=>w(n("errors.failedToLoadExternal"))})}})()},e)})})}])},42602,function(e){e.n(e.i(68192))},58293,e=>{e.v(t=>Promise.all(["static/chunks/2dvwb-mfasp68.js","static/chunks/2gr1d26f-ymoh.js"].map(t=>e.l(t))).then(()=>t(33946)))},71074,e=>{e.v(t=>Promise.all(["static/chunks/1xekc18cyi4sx.js","static/chunks/2gr1d26f-ymoh.js","static/chunks/2s6w3x5jnc2tg.js"].map(t=>e.l(t))).then(()=>t(65862)))},88913,e=>{e.v(t=>Promise.all(["static/chunks/1k72cpd0x8veh.js","static/chunks/2gr1d26f-ymoh.js","static/chunks/3qik_nv7zlj4e.js"].map(t=>e.l(t))).then(()=>t(25294)))},47853,e=>{e.v(t=>Promise.all(["static/chunks/2fdpvhx4oo81h.js"].map(t=>e.l(t))).then(()=>t(58652)))},26949,e=>{e.v(t=>Promise.all(["static/chunks/1e-w_-usen7fy.js","static/chunks/2gr1d26f-ymoh.js"].map(t=>e.l(t))).then(()=>t(23298)))},3523,e=>{e.v(t=>Promise.all(["static/chunks/1pa1cfmfts0i9.js","static/chunks/2gr1d26f-ymoh.js"].map(t=>e.l(t))).then(()=>t(8161)))},26371,e=>{e.v(t=>Promise.all(["static/chunks/3wwn1rti8oc_r.js","static/chunks/2gr1d26f-ymoh.js"].map(t=>e.l(t))).then(()=>t(70127)))},30455,e=>{e.v(t=>Promise.all(["static/chunks/0n95joti2n2py.js","static/chunks/2gr1d26f-ymoh.js"].map(t=>e.l(t))).then(()=>t(13268)))},22155,e=>{e.v(t=>Promise.all(["static/chunks/0jucaltuccn03.js","static/chunks/2r98jty3a4wel.js","static/chunks/2gr1d26f-ymoh.js","static/chunks/0ohleay4roayh.js"].map(t=>e.l(t))).then(()=>t(34900)))},88653,e=>{"use strict";var t=e.i(43476),s=e.i(71645),n=e.i(31178),o=e.i(47414),l=e.i(74008),r=e.i(21476),a=e.i(72846),i=s,u=e.i(37806);function c(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}class d extends i.Component{getSnapshotBeforeUpdate(e){let t=this.props.childRef.current;if((0,a.isHTMLElement)(t)&&e.isPresent&&!this.props.isPresent&&!1!==this.props.pop){let e=t.offsetParent,s=(0,a.isHTMLElement)(e)&&e.offsetWidth||0,n=(0,a.isHTMLElement)(e)&&e.offsetHeight||0,o=getComputedStyle(t),l=this.props.sizeRef.current;l.height=parseFloat(o.height),l.width=parseFloat(o.width),l.top=t.offsetTop,l.left=t.offsetLeft,l.right=s-l.width-l.left,l.bottom=n-l.height-l.top,l.direction=o.direction}return null}componentDidUpdate(){}render(){return this.props.children}}function m({children:e,isPresent:n,anchorX:o,anchorY:l,root:r,pop:a}){let h=(0,i.useId)(),f=(0,i.useRef)(null),p=(0,i.useRef)({width:0,height:0,top:0,left:0,right:0,bottom:0,direction:"ltr"}),{nonce:g}=(0,i.useContext)(u.MotionConfigContext),x=function(...e){return s.useCallback(function(...e){return t=>{let s=!1,n=e.map(e=>{let n=c(e,t);return s||"function"!=typeof n||(s=!0),n});if(s)return()=>{for(let t=0;t<n.length;t++){let s=n[t];"function"==typeof s?s():c(e[t],null)}}}}(...e),e)}(f,!1!==a?e.props?.ref??e?.ref:void 0);return(0,i.useInsertionEffect)(()=>{let{width:e,height:t,top:s,left:i,right:u,bottom:c,direction:d}=p.current;if(n||!1===a||!f.current||!e||!t)return;let m="rtl"===d,x="left"===o?m?`right: ${u}`:`left: ${i}`:m?`left: ${i}`:`right: ${u}`,j="bottom"===l?`bottom: ${c}`:`top: ${s}`;f.current.dataset.motionPopId=h;let y=document.createElement("style");g&&(y.nonce=g);let b=r??document.head;return b.appendChild(y),y.sheet&&y.sheet.insertRule(`
2
- [data-motion-pop-id="${h}"] {
3
- position: absolute !important;
4
- width: ${e}px !important;
5
- height: ${t}px !important;
6
- ${x}px !important;
7
- ${j}px !important;
8
- }
9
- `),()=>{f.current?.removeAttribute("data-motion-pop-id"),b.contains(y)&&b.removeChild(y)}},[n]),(0,t.jsx)(d,{isPresent:n,childRef:f,sizeRef:p,pop:a,children:!1===a?e:i.cloneElement(e,{ref:x})})}let h=({children:e,initial:n,isPresent:a,onExitComplete:i,custom:u,presenceAffectsLayout:c,mode:d,anchorX:h,anchorY:p,root:g})=>{let x=(0,o.useConstant)(f),j=(0,s.useId)(),y=(0,s.useRef)(a),b=(0,s.useRef)(i);(0,l.useIsomorphicLayoutEffect)(()=>{y.current=a,b.current=i});let v=!0,k=(0,s.useMemo)(()=>(v=!1,{id:j,initial:n,isPresent:a,custom:u,onExitComplete:e=>{for(let t of(x.set(e,!0),x.values()))if(!t)return;i&&i()},register:e=>(x.set(e,!1),()=>{x.delete(e),y.current||x.size||b.current?.()})}),[a,x,i]);return c&&v&&(k={...k}),(0,s.useMemo)(()=>{x.forEach((e,t)=>x.set(t,!1))},[a]),s.useEffect(()=>{a||x.size||!i||i()},[a]),e=(0,t.jsx)(m,{pop:"popLayout"===d,isPresent:a,anchorX:h,anchorY:p,root:g,children:e}),(0,t.jsx)(r.PresenceContext.Provider,{value:k,children:e})};function f(){return new Map}var p=e.i(64978);let g=e=>e.key||"";function x(e){let t=[];return s.Children.forEach(e,e=>{(0,s.isValidElement)(e)&&t.push(e)}),t}e.s(["AnimatePresence",0,({children:e,custom:r,initial:a=!0,onExitComplete:i,presenceAffectsLayout:u=!0,mode:c="sync",propagate:d=!1,anchorX:m="left",anchorY:f="top",root:j})=>{let[y,b]=(0,p.usePresence)(d),v=(0,s.useMemo)(()=>x(e),[e]),k=d&&!y?[]:v.map(g),w=(0,s.useRef)(!0),P=(0,o.useConstant)(()=>new Map),E=(0,s.useRef)(new Set),[C,$]=(0,s.useState)(v),[A,R]=(0,s.useState)(v);(0,l.useIsomorphicLayoutEffect)(()=>{!d||y||A.length||b?.()},[y,d,A.length,b]),(0,l.useIsomorphicLayoutEffect)(()=>{w.current=!1;for(let e=0;e<A.length;e++){let t=g(A[e]);k.includes(t)?(P.delete(t),E.current.delete(t)):!0!==P.get(t)&&P.set(t,!1)}},[A,k.length,k.join("-")]);let M=[];if(v!==C){let e=[...v],t=0;for(let s of A){let n=k.indexOf(g(s));-1===n?(e.splice(t++,0,s),M.push(s)):t=n+M.length+1}return M.every(e=>P.get(g(e)))?e=v:"wait"===c&&(e=M),R(x(e)),$(v),null}let{forceRender:L}=(0,s.useContext)(n.LayoutGroupContext);return(0,t.jsx)(t.Fragment,{children:A.map(e=>{let s=g(e),n=(!d||!!y)&&(v===A||k.includes(s));return(0,t.jsx)(h,{isPresent:n,initial:(!w.current||!!a)&&void 0,custom:r,presenceAffectsLayout:u,mode:c,root:j,onExitComplete:n?void 0:()=>{if(E.current.has(s)||!P.has(s))return;E.current.add(s),P.set(s,!0);let e=!0;P.forEach(t=>{t||(e=!1)}),e&&(L?.(),$([]),d&&b?.(),i&&i())},anchorX:m,anchorY:f,children:e},s)})})}],88653)}]);
@@ -1,3 +0,0 @@
1
- @font-face{font-family:geistSans;src:url(../media/GeistVF-s.0e569l9b0bre8.woff)format("woff");font-display:swap;font-weight:100 900}@font-face{font-family:geistSans Fallback;src:local(Arial);ascent-override:85.83%;descent-override:20.52%;line-gap-override:9.33%;size-adjust:107.19%}.geistsans_fce11f57-module__b_bU6G__className{font-family:geistSans,geistSans Fallback}.geistsans_fce11f57-module__b_bU6G__variable{--font-geist-sans:"geistSans", "geistSans Fallback"}
2
- @font-face{font-family:geistMono;src:url(../media/GeistMonoVF-s.1lv5tp2fpjxdz.woff)format("woff");font-display:swap;font-weight:100 900}@font-face{font-family:geistMono Fallback;src:local(Arial);ascent-override:69.97%;descent-override:16.73%;line-gap-override:7.61%;size-adjust:131.49%}.geistmono_ed61a5f9-module__6fgesq__className{font-family:geistMono,geistMono Fallback}.geistmono_ed61a5f9-module__6fgesq__variable{--font-geist-mono:"geistMono", "geistMono Fallback"}
3
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-600:#155dfc;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--drop-shadow-lg:0 4px 4px #00000026;--drop-shadow-2xl:0 25px 25px #00000026;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--blur-md:12px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-leftPaneBg:#0e0e0e;--color-rightPaneBg:#1e1e1e;--hud-bg:#0003;--hud-bg-elevated:#ffffff0d;--hud-card-bg:#ffffff05;--hud-border:#ffffff0d;--hud-text-main:#fff;--hud-text-secondary:#fff6;--hud-text-muted:#ffffff4d;--hud-text-dim:#fff3;--color-oBlue:#09bfff;--color-oRed:#cc000c;--color-oYellow:#ffbe00;--color-oGreen:#0fcd4f;--color-oGray:#989898;--color-oGray2:#424242;--color-oNight:#ef4444;--color-onAccent:#fff;--shadow-soft:0 4px 20px #0000004d;--shadow-subtle:0 2px 10px #0003;--text-hero:3.5rem;--text-hero--line-height:1;--text-value:1.5rem;--text-value--line-height:1.15;--text-label:.875rem;--text-label--line-height:1.25;--text-caption:.75rem;--text-caption--line-height:1rem}@supports (color:lab(0% 0 0)){:root,:host{--color-blue-600:lab(44.0605% 29.0279 -86.0352)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}[data-scene=light]{--hud-bg:#fff9;--hud-bg-elevated:#00000008;--hud-card-bg:#fffc;--hud-border:#0000000f;--hud-text-main:#1a1a1a;--hud-text-secondary:#0000008c;--hud-text-muted:#0006;--hud-text-dim:#00000040}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-2{inset-inline:calc(var(--spacing) * 2)}.-top-5{top:calc(var(--spacing) * -5)}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-4{top:calc(var(--spacing) * 4)}.top-14{top:calc(var(--spacing) * 14)}.top-28{top:calc(var(--spacing) * 28)}.top-\[calc\(0\.75rem\+env\(safe-area-inset-top\)\)\]{top:calc(.75rem + env(safe-area-inset-top))}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.-bottom-1{bottom:calc(var(--spacing) * -1)}.bottom-0{bottom:0}.bottom-2{bottom:calc(var(--spacing) * 2)}.bottom-3{bottom:calc(var(--spacing) * 3)}.bottom-20{bottom:calc(var(--spacing) * 20)}.bottom-24{bottom:calc(var(--spacing) * 24)}.bottom-\[calc\(5rem\+env\(safe-area-inset-bottom\)\)\]{bottom:calc(5rem + env(safe-area-inset-bottom))}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.left-4{left:calc(var(--spacing) * 4)}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.mx-0\.5{margin-inline:calc(var(--spacing) * .5)}.mx-1{margin-inline:var(--spacing)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-14{margin-top:calc(var(--spacing) * 14)}.-mr-1{margin-right:calc(var(--spacing) * -1)}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-3{margin-right:calc(var(--spacing) * 3)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.ml-1{margin-left:var(--spacing)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-60{height:calc(var(--spacing) * 60)}.h-\[1px\]{height:1px}.h-\[2px\]{height:2px}.h-\[8px\]{height:8px}.h-\[60px\]{height:60px}.h-\[100dvh\]{height:100dvh}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-40{max-height:calc(var(--spacing) * 40)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-\[45vh\]{max-height:45vh}.max-h-\[70\%\]{max-height:70%}.max-h-\[90vh\]{max-height:90vh}.max-h-\[calc\(100\%-4\.5rem\)\]{max-height:calc(100% - 4.5rem)}.max-h-\[calc\(100\%-5rem\)\]{max-height:calc(100% - 5rem)}.max-h-full{max-height:100%}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-\[4rem\]{min-height:4rem}.min-h-\[120px\]{min-height:120px}.min-h-\[200px\]{min-height:200px}.min-h-\[220px\]{min-height:220px}.min-h-screen{min-height:100vh}.w-1{width:var(--spacing)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-2\/5{width:40%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/5{width:60%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-20{width:calc(var(--spacing) * 20)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-48{width:calc(var(--spacing) * 48)}.w-96{width:calc(var(--spacing) * 96)}.w-\[1px\]{width:1px}.w-\[17rem\]{width:17rem}.w-\[19rem\]{width:19rem}.w-\[95vw\]{width:95vw}.w-\[min\(24rem\,58\%\)\]{width:min(24rem,58%)}.w-\[min\(30rem\,100\%\)\]{width:min(30rem,100%)}.w-\[min\(32rem\,calc\(100\%-2rem\)\)\]{width:min(32rem,100% - 2rem)}.w-\[min\(40rem\,100\%\)\]{width:min(40rem,100%)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[9rem\]{max-width:9rem}.max-w-\[10rem\]{max-width:10rem}.max-w-\[19rem\]{max-width:19rem}.max-w-\[20rem\]{max-width:20rem}.max-w-\[30rem\]{max-width:30rem}.max-w-\[calc\(100\%-1rem\)\]{max-width:calc(100% - 1rem)}.max-w-\[calc\(100\%-9rem\)\]{max-width:calc(100% - 9rem)}.max-w-\[calc\(100\%-10rem\)\]{max-width:calc(100% - 10rem)}.max-w-\[calc\(100\%-12rem\)\]{max-width:calc(100% - 12rem)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-prose{max-width:65ch}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-\[28px\]{min-width:28px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.origin-center{transform-origin:50%}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-1{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-5{--tw-translate-x:calc(var(--spacing) * 5);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-125{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.-rotate-90{rotate:-90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.scrollbar-thin{scrollbar-width:thin}.appearance-none{appearance:none}.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))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}:where(.space-x-0\.5>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * .5) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-3>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 3) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-white\/30>:not(:last-child)){border-color:#ffffff4d}@supports (color:color-mix(in lab, red, red)){:where(.divide-white\/30>:not(:last-child)){border-color:color-mix(in oklab, var(--color-white) 30%, transparent)}}.self-end{align-self:flex-end}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.\!rounded-2xl{border-radius:var(--radius-2xl)!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-none{--tw-border-style:none;border-style:none}.border-leftPaneBg{border-color:var(--color-leftPaneBg)}.border-oBlue{border-color:var(--color-oBlue)}.border-oBlue\/10{border-color:#09bfff1a}@supports (color:color-mix(in lab, red, red)){.border-oBlue\/10{border-color:color-mix(in oklab, var(--color-oBlue) 10%, transparent)}}.border-oBlue\/20{border-color:#09bfff33}@supports (color:color-mix(in lab, red, red)){.border-oBlue\/20{border-color:color-mix(in oklab, var(--color-oBlue) 20%, transparent)}}.border-oBlue\/30{border-color:#09bfff4d}@supports (color:color-mix(in lab, red, red)){.border-oBlue\/30{border-color:color-mix(in oklab, var(--color-oBlue) 30%, transparent)}}.border-oBlue\/40{border-color:#09bfff66}@supports (color:color-mix(in lab, red, red)){.border-oBlue\/40{border-color:color-mix(in oklab, var(--color-oBlue) 40%, transparent)}}.border-oGreen{border-color:var(--color-oGreen)}.border-oGreen\/10{border-color:#0fcd4f1a}@supports (color:color-mix(in lab, red, red)){.border-oGreen\/10{border-color:color-mix(in oklab, var(--color-oGreen) 10%, transparent)}}.border-oGreen\/20{border-color:#0fcd4f33}@supports (color:color-mix(in lab, red, red)){.border-oGreen\/20{border-color:color-mix(in oklab, var(--color-oGreen) 20%, transparent)}}.border-oGreen\/30{border-color:#0fcd4f4d}@supports (color:color-mix(in lab, red, red)){.border-oGreen\/30{border-color:color-mix(in oklab, var(--color-oGreen) 30%, transparent)}}.border-oGreen\/40{border-color:#0fcd4f66}@supports (color:color-mix(in lab, red, red)){.border-oGreen\/40{border-color:color-mix(in oklab, var(--color-oGreen) 40%, transparent)}}.border-oGreen\/50{border-color:#0fcd4f80}@supports (color:color-mix(in lab, red, red)){.border-oGreen\/50{border-color:color-mix(in oklab, var(--color-oGreen) 50%, transparent)}}.border-oRed{border-color:var(--color-oRed)}.border-oRed\/10{border-color:#cc000c1a}@supports (color:color-mix(in lab, red, red)){.border-oRed\/10{border-color:color-mix(in oklab, var(--color-oRed) 10%, transparent)}}.border-oRed\/20{border-color:#cc000c33}@supports (color:color-mix(in lab, red, red)){.border-oRed\/20{border-color:color-mix(in oklab, var(--color-oRed) 20%, transparent)}}.border-oRed\/30{border-color:#cc000c4d}@supports (color:color-mix(in lab, red, red)){.border-oRed\/30{border-color:color-mix(in oklab, var(--color-oRed) 30%, transparent)}}.border-oRed\/40{border-color:#cc000c66}@supports (color:color-mix(in lab, red, red)){.border-oRed\/40{border-color:color-mix(in oklab, var(--color-oRed) 40%, transparent)}}.border-oRed\/50{border-color:#cc000c80}@supports (color:color-mix(in lab, red, red)){.border-oRed\/50{border-color:color-mix(in oklab, var(--color-oRed) 50%, transparent)}}.border-oRed\/60{border-color:#cc000c99}@supports (color:color-mix(in lab, red, red)){.border-oRed\/60{border-color:color-mix(in oklab, var(--color-oRed) 60%, transparent)}}.border-oYellow{border-color:var(--color-oYellow)}.border-oYellow\/20{border-color:#ffbe0033}@supports (color:color-mix(in lab, red, red)){.border-oYellow\/20{border-color:color-mix(in oklab, var(--color-oYellow) 20%, transparent)}}.border-oYellow\/30{border-color:#ffbe004d}@supports (color:color-mix(in lab, red, red)){.border-oYellow\/30{border-color:color-mix(in oklab, var(--color-oYellow) 30%, transparent)}}.border-oYellow\/40{border-color:#ffbe0066}@supports (color:color-mix(in lab, red, red)){.border-oYellow\/40{border-color:color-mix(in oklab, var(--color-oYellow) 40%, transparent)}}.border-white\/60{border-color:#fff9}@supports (color:color-mix(in lab, red, red)){.border-white\/60{border-color:color-mix(in oklab, var(--color-white) 60%, transparent)}}.border-white\/80{border-color:#fffc}@supports (color:color-mix(in lab, red, red)){.border-white\/80{border-color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.bg-black\/30{background-color:#0000004d}@supports (color:color-mix(in lab, red, red)){.bg-black\/30{background-color:color-mix(in oklab, var(--color-black) 30%, transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab, red, red)){.bg-black\/60{background-color:color-mix(in oklab, var(--color-black) 60%, transparent)}}.bg-leftPaneBg{background-color:var(--color-leftPaneBg)}.bg-oBlue{background-color:var(--color-oBlue)}.bg-oBlue\/5{background-color:#09bfff0d}@supports (color:color-mix(in lab, red, red)){.bg-oBlue\/5{background-color:color-mix(in oklab, var(--color-oBlue) 5%, transparent)}}.bg-oBlue\/10{background-color:#09bfff1a}@supports (color:color-mix(in lab, red, red)){.bg-oBlue\/10{background-color:color-mix(in oklab, var(--color-oBlue) 10%, transparent)}}.bg-oBlue\/15{background-color:#09bfff26}@supports (color:color-mix(in lab, red, red)){.bg-oBlue\/15{background-color:color-mix(in oklab, var(--color-oBlue) 15%, transparent)}}.bg-oBlue\/40{background-color:#09bfff66}@supports (color:color-mix(in lab, red, red)){.bg-oBlue\/40{background-color:color-mix(in oklab, var(--color-oBlue) 40%, transparent)}}.bg-oGreen{background-color:var(--color-oGreen)}.bg-oGreen\/5{background-color:#0fcd4f0d}@supports (color:color-mix(in lab, red, red)){.bg-oGreen\/5{background-color:color-mix(in oklab, var(--color-oGreen) 5%, transparent)}}.bg-oGreen\/10{background-color:#0fcd4f1a}@supports (color:color-mix(in lab, red, red)){.bg-oGreen\/10{background-color:color-mix(in oklab, var(--color-oGreen) 10%, transparent)}}.bg-oGreen\/20{background-color:#0fcd4f33}@supports (color:color-mix(in lab, red, red)){.bg-oGreen\/20{background-color:color-mix(in oklab, var(--color-oGreen) 20%, transparent)}}.bg-oGreen\/40{background-color:#0fcd4f66}@supports (color:color-mix(in lab, red, red)){.bg-oGreen\/40{background-color:color-mix(in oklab, var(--color-oGreen) 40%, transparent)}}.bg-oGreen\/80{background-color:#0fcd4fcc}@supports (color:color-mix(in lab, red, red)){.bg-oGreen\/80{background-color:color-mix(in oklab, var(--color-oGreen) 80%, transparent)}}.bg-oRed{background-color:var(--color-oRed)}.bg-oRed\/5{background-color:#cc000c0d}@supports (color:color-mix(in lab, red, red)){.bg-oRed\/5{background-color:color-mix(in oklab, var(--color-oRed) 5%, transparent)}}.bg-oRed\/10{background-color:#cc000c1a}@supports (color:color-mix(in lab, red, red)){.bg-oRed\/10{background-color:color-mix(in oklab, var(--color-oRed) 10%, transparent)}}.bg-oRed\/15{background-color:#cc000c26}@supports (color:color-mix(in lab, red, red)){.bg-oRed\/15{background-color:color-mix(in oklab, var(--color-oRed) 15%, transparent)}}.bg-oRed\/20{background-color:#cc000c33}@supports (color:color-mix(in lab, red, red)){.bg-oRed\/20{background-color:color-mix(in oklab, var(--color-oRed) 20%, transparent)}}.bg-oRed\/30{background-color:#cc000c4d}@supports (color:color-mix(in lab, red, red)){.bg-oRed\/30{background-color:color-mix(in oklab, var(--color-oRed) 30%, transparent)}}.bg-oRed\/40{background-color:#cc000c66}@supports (color:color-mix(in lab, red, red)){.bg-oRed\/40{background-color:color-mix(in oklab, var(--color-oRed) 40%, transparent)}}.bg-oYellow{background-color:var(--color-oYellow)}.bg-oYellow\/5{background-color:#ffbe000d}@supports (color:color-mix(in lab, red, red)){.bg-oYellow\/5{background-color:color-mix(in oklab, var(--color-oYellow) 5%, transparent)}}.bg-oYellow\/10{background-color:#ffbe001a}@supports (color:color-mix(in lab, red, red)){.bg-oYellow\/10{background-color:color-mix(in oklab, var(--color-oYellow) 10%, transparent)}}.bg-oYellow\/15{background-color:#ffbe0026}@supports (color:color-mix(in lab, red, red)){.bg-oYellow\/15{background-color:color-mix(in oklab, var(--color-oYellow) 15%, transparent)}}.bg-oYellow\/20{background-color:#ffbe0033}@supports (color:color-mix(in lab, red, red)){.bg-oYellow\/20{background-color:color-mix(in oklab, var(--color-oYellow) 20%, transparent)}}.bg-oYellow\/40{background-color:#ffbe0066}@supports (color:color-mix(in lab, red, red)){.bg-oYellow\/40{background-color:color-mix(in oklab, var(--color-oYellow) 40%, transparent)}}.bg-rightPaneBg{background-color:var(--color-rightPaneBg)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-oGreen\/60{--tw-gradient-from:#0fcd4f99}@supports (color:color-mix(in lab, red, red)){.from-oGreen\/60{--tw-gradient-from:color-mix(in oklab, var(--color-oGreen) 60%, transparent)}}.from-oGreen\/60{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-oRed\/10{--tw-gradient-from:#cc000c1a}@supports (color:color-mix(in lab, red, red)){.from-oRed\/10{--tw-gradient-from:color-mix(in oklab, var(--color-oRed) 10%, transparent)}}.from-oRed\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-oRed\/60{--tw-gradient-from:#cc000c99}@supports (color:color-mix(in lab, red, red)){.from-oRed\/60{--tw-gradient-from:color-mix(in oklab, var(--color-oRed) 60%, transparent)}}.from-oRed\/60{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-oYellow\/10{--tw-gradient-via:#ffbe001a}@supports (color:color-mix(in lab, red, red)){.via-oYellow\/10{--tw-gradient-via:color-mix(in oklab, var(--color-oYellow) 10%, transparent)}}.via-oYellow\/10{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-oYellow\/60{--tw-gradient-via:#ffbe0099}@supports (color:color-mix(in lab, red, red)){.via-oYellow\/60{--tw-gradient-via:color-mix(in oklab, var(--color-oYellow) 60%, transparent)}}.via-oYellow\/60{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-oGreen{--tw-gradient-to:var(--color-oGreen);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-oGreen\/10{--tw-gradient-to:#0fcd4f1a}@supports (color:color-mix(in lab, red, red)){.to-oGreen\/10{--tw-gradient-to:color-mix(in oklab, var(--color-oGreen) 10%, transparent)}}.to-oGreen\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-oGreen\/60{--tw-gradient-to:#0fcd4f99}@supports (color:color-mix(in lab, red, red)){.to-oGreen\/60{--tw-gradient-to:color-mix(in oklab, var(--color-oGreen) 60%, transparent)}}.to-oGreen\/60{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.object-contain{object-fit:contain}.\!p-0{padding:0!important}.\!p-3{padding:calc(var(--spacing) * 3)!important}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-px{padding-block:1px}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-\[env\(safe-area-inset-top\)\]{padding-top:env(safe-area-inset-top)}.pr-\[env\(safe-area-inset-right\)\]{padding-right:env(safe-area-inset-right)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-\[env\(safe-area-inset-bottom\)\]{padding-bottom:env(safe-area-inset-bottom)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-\[env\(safe-area-inset-left\)\]{padding-left:env(safe-area-inset-left)}.text-center{text-align:center}.text-end{text-align:end}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-caption{font-size:var(--text-caption);line-height:var(--tw-leading,var(--text-caption--line-height))}.text-hero{font-size:var(--text-hero);line-height:var(--tw-leading,var(--text-hero--line-height))}.text-label{font-size:var(--text-label);line-height:var(--tw-leading,var(--text-label--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-value{font-size:var(--text-value);line-height:var(--tw-leading,var(--text-value--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.65rem\]{font-size:.65rem}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-\[0\.15em\]{--tw-tracking:.15em;letter-spacing:.15em}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-black{color:var(--color-black)}.text-oBlue{color:var(--color-oBlue)}.text-oGreen{color:var(--color-oGreen)}.text-oGreen\/40{color:#0fcd4f66}@supports (color:color-mix(in lab, red, red)){.text-oGreen\/40{color:color-mix(in oklab, var(--color-oGreen) 40%, transparent)}}.text-oGreen\/70{color:#0fcd4fb3}@supports (color:color-mix(in lab, red, red)){.text-oGreen\/70{color:color-mix(in oklab, var(--color-oGreen) 70%, transparent)}}.text-oRed{color:var(--color-oRed)}.text-oRed\/40{color:#cc000c66}@supports (color:color-mix(in lab, red, red)){.text-oRed\/40{color:color-mix(in oklab, var(--color-oRed) 40%, transparent)}}.text-oRed\/80{color:#cc000ccc}@supports (color:color-mix(in lab, red, red)){.text-oRed\/80{color:color-mix(in oklab, var(--color-oRed) 80%, transparent)}}.text-oYellow{color:var(--color-oYellow)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-oBlue{accent-color:var(--color-oBlue)}.accent-oGreen{accent-color:var(--color-oGreen)}.accent-oYellow{accent-color:var(--color-oYellow)}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-95{opacity:.95}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_6px_var\(--color-oGreen\)\]{--tw-shadow:0 0 6px var(--tw-shadow-color,var(--color-oGreen));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_12px_var\(--color-oGreen\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,var(--color-oGreen));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_15px_var\(--hud-text-main\)\]{--tw-shadow:0 0 15px var(--tw-shadow-color,var(--hud-text-main));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-soft{--tw-shadow:0 4px 20px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-oBlue\/10{--tw-shadow-color:#09bfff1a}@supports (color:color-mix(in lab, red, red)){.shadow-oBlue\/10{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-oBlue) 10%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-oBlue\/20{--tw-shadow-color:#09bfff33}@supports (color:color-mix(in lab, red, red)){.shadow-oBlue\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-oBlue) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-oGreen\/20{--tw-shadow-color:#0fcd4f33}@supports (color:color-mix(in lab, red, red)){.shadow-oGreen\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-oGreen) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-oRed\/10{--tw-shadow-color:#cc000c1a}@supports (color:color-mix(in lab, red, red)){.shadow-oRed\/10{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-oRed) 10%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-oRed\/20{--tw-shadow-color:#cc000c33}@supports (color:color-mix(in lab, red, red)){.shadow-oRed\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-oRed) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-white{--tw-ring-color:var(--color-white)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.drop-shadow-2xl{--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));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-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg));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,)}.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);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}.group-open\:rotate-180:is(:where(.group):is([open],:popover-open,:open) *){rotate:180deg}@media (hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:scale-\[1\.02\]:is(:where(.group):hover *){scale:1.02}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.peer-checked\:bg-oBlue:is(:where(.peer):checked~*){background-color:var(--color-oBlue)}.peer-checked\:bg-oYellow:is(:where(.peer):checked~*){background-color:var(--color-oYellow)}.peer-focus\:outline-none:is(:where(.peer):focus~*){--tw-outline-style:none;outline-style:none}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:start-\[2px\]:after{content:var(--tw-content);inset-inline-start:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-5:after{content:var(--tw-content);height:calc(var(--spacing) * 5)}.after\:w-5:after{content:var(--tw-content);width:calc(var(--spacing) * 5)}.after\:rounded-full:after{content:var(--tw-content);border-radius:3.40282e38px}.after\:border:after{content:var(--tw-content);border-style:var(--tw-border-style);border-width:1px}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.peer-checked\:after\:translate-x-full:is(:where(.peer):checked~*):after{content:var(--tw-content);--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.first\:pt-0:first-child{padding-top:0}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.empty\:hidden:empty{display:none}@media (hover:hover){.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:bg-blue-600:hover{background-color:var(--color-blue-600)}.hover\:bg-oBlue\/10:hover{background-color:#09bfff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oBlue\/10:hover{background-color:color-mix(in oklab, var(--color-oBlue) 10%, transparent)}}.hover\:bg-oBlue\/80:hover{background-color:#09bfffcc}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oBlue\/80:hover{background-color:color-mix(in oklab, var(--color-oBlue) 80%, transparent)}}.hover\:bg-oGreen:hover{background-color:var(--color-oGreen)}.hover\:bg-oGreen\/20:hover{background-color:#0fcd4f33}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oGreen\/20:hover{background-color:color-mix(in oklab, var(--color-oGreen) 20%, transparent)}}.hover\:bg-oGreen\/40:hover{background-color:#0fcd4f66}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oGreen\/40:hover{background-color:color-mix(in oklab, var(--color-oGreen) 40%, transparent)}}.hover\:bg-oGreen\/60:hover{background-color:#0fcd4f99}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oGreen\/60:hover{background-color:color-mix(in oklab, var(--color-oGreen) 60%, transparent)}}.hover\:bg-oGreen\/80:hover{background-color:#0fcd4fcc}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oGreen\/80:hover{background-color:color-mix(in oklab, var(--color-oGreen) 80%, transparent)}}.hover\:bg-oRed:hover{background-color:var(--color-oRed)}.hover\:bg-oRed\/40:hover{background-color:#cc000c66}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oRed\/40:hover{background-color:color-mix(in oklab, var(--color-oRed) 40%, transparent)}}.hover\:bg-oRed\/60:hover{background-color:#cc000c99}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oRed\/60:hover{background-color:color-mix(in oklab, var(--color-oRed) 60%, transparent)}}.hover\:bg-oRed\/80:hover{background-color:#cc000ccc}@supports (color:color-mix(in lab, red, red)){.hover\:bg-oRed\/80:hover{background-color:color-mix(in oklab, var(--color-oRed) 80%, transparent)}}.hover\:bg-white\/20:hover{background-color:#fff3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/20:hover{background-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.hover\:text-oRed:hover{color:var(--color-oRed)}}.focus\:border-oBlue:focus{border-color:var(--color-oBlue)}.focus\:border-oBlue\/50:focus{border-color:#09bfff80}@supports (color:color-mix(in lab, red, red)){.focus\:border-oBlue\/50:focus{border-color:color-mix(in oklab, var(--color-oBlue) 50%, transparent)}}.focus\:border-oGreen\/50:focus{border-color:#0fcd4f80}@supports (color:color-mix(in lab, red, red)){.focus\:border-oGreen\/50:focus{border-color:color-mix(in oklab, var(--color-oGreen) 50%, transparent)}}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-oBlue:focus{--tw-ring-color:var(--color-oBlue)}.focus\:ring-oBlue\/50:focus{--tw-ring-color:#09bfff80}@supports (color:color-mix(in lab, red, red)){.focus\:ring-oBlue\/50:focus{--tw-ring-color:color-mix(in oklab, var(--color-oBlue) 50%, transparent)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:40rem){.sm\:relative{position:relative}.sm\:right-auto{right:auto}.sm\:left-1\/2{left:50%}.sm\:left-auto{left:auto}.sm\:col-span-2{grid-column:span 2/span 2}.sm\:row-span-2{grid-row:span 2/span 2}.sm\:mx-2{margin-inline:calc(var(--spacing) * 2)}.sm\:mr-3{margin-right:calc(var(--spacing) * 3)}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:h-7{height:calc(var(--spacing) * 7)}.sm\:h-8{height:calc(var(--spacing) * 8)}.sm\:h-10{height:calc(var(--spacing) * 10)}.sm\:w-7{width:calc(var(--spacing) * 7)}.sm\:w-8{width:calc(var(--spacing) * 8)}.sm\:w-10{width:calc(var(--spacing) * 10)}.sm\:w-\[26rem\]{width:26rem}.sm\:w-full{width:100%}.sm\:max-w-\[calc\(100\%-12rem\)\]{max-width:calc(100% - 12rem)}.sm\:flex-1{flex:1}.sm\:-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-4{gap:calc(var(--spacing) * 4)}:where(.sm\:space-x-3>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 3) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-x-reverse)))}:where(.sm\:space-x-6>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 6) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-x-reverse)))}:where(.sm\:space-x-8>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 8) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-x-reverse)))}.sm\:p-2{padding:calc(var(--spacing) * 2)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-0{padding-inline:0}.sm\:px-3{padding-inline:calc(var(--spacing) * 3)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-label{font-size:var(--text-label);line-height:var(--tw-leading,var(--text-label--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-value{font-size:var(--text-value);line-height:var(--tw-leading,var(--text-value--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.sm\:tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}}@media (min-width:48rem){.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))}}@media (min-width:64rem){.lg\:flex{display:flex}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.rtl\:peer-checked\:after\:-translate-x-full:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *):is(:where(.peer):checked~*):after{content:var(--tw-content);--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>\*\]\:pointer-events-auto>*{pointer-events:auto}.\[\&\>\*\]\:max-w-none>*{max-width:none}.tesla-card{background-color:var(--hud-card-bg);border:1px solid var(--hud-border);box-shadow:var(--shadow-soft);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;border-radius:1rem;padding:1rem;transition-duration:.3s}.hud-stack .tesla-card{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.hud-stack .tesla-card{background-color:color-mix(in srgb, var(--background) 94%, transparent)}}.hud-stack .tesla-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tesla-card .tesla-card{background-color:var(--hud-bg-elevated);box-shadow:none;border-color:#0000;border-radius:.75rem;min-width:0;padding:.75rem}.tesla-card .tesla-card .text-value{white-space:nowrap}.card-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));grid-auto-rows:minmax(17.5rem,auto);gap:1rem;min-height:100%;display:grid}.hud-halo{text-shadow:0 0 6px var(--background), 0 0 2px var(--background)}.hud-halo svg{filter:drop-shadow(0 0 2px var(--background)) drop-shadow(0 0 4px var(--background))}.tile-grid{gap:.75rem;display:grid}.tesla-hover{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;transition-duration:.3s}.tesla-hover:hover{background-color:var(--hud-bg-elevated)}.text-hud-main{color:var(--hud-text-main)}.text-hud-secondary{color:var(--hud-text-secondary)}.text-hud-muted{color:var(--hud-text-muted)}.text-hud-dim{color:var(--hud-text-dim)}[data-scene=light] .text-white{color:#1a1a1a}.bg-oBlue,.bg-oBlue *{color:var(--color-onAccent)!important}.bg-hud-bg{background-color:var(--hud-bg)}.bg-hud-elevated{background-color:var(--hud-bg-elevated)}.border-hud{border-color:var(--hud-border)}.gliding-value{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.7s;transition-duration:.7s;transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes soft-pulse{0%,to{opacity:1;filter:brightness()}50%{opacity:.8;filter:brightness(1.2)}}.animate-soft-pulse{animation:3s cubic-bezier(.4,0,.6,1) infinite soft-pulse}.ocearo-large-label{display:none}@media (min-width:1366px){.ocearo-large-label{display:block}}.ocearo-appmenu-scroll{max-height:70vh;overflow-y:auto}@media (min-width:1366px){.ocearo-appmenu-scroll{max-height:none;overflow-y:visible}}}:root{--background:#0a0a0a;--foreground:#fff}body{color:var(--foreground);background:var(--background);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;font-variant-numeric:tabular-nums}.scrollbar-hide{scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}