@pollinations/ui 0.1.0-alpha.1 → 0.1.0-alpha.4

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 (88) hide show
  1. package/README.md +148 -36
  2. package/dist/Button-ByKwRtdw.d.cts +29 -0
  3. package/dist/Button-ByKwRtdw.d.ts +29 -0
  4. package/dist/Chip-v-ADv6cz.d.cts +18 -0
  5. package/dist/Chip-v-ADv6cz.d.ts +18 -0
  6. package/dist/Dialog-D3Nqt8cE.d.cts +66 -0
  7. package/dist/Dialog-D3Nqt8cE.d.ts +66 -0
  8. package/dist/app-user-menu/sdk.cjs +698 -242
  9. package/dist/app-user-menu/sdk.cjs.map +1 -1
  10. package/dist/app-user-menu/sdk.d.cts +22 -7
  11. package/dist/app-user-menu/sdk.d.ts +22 -7
  12. package/dist/app-user-menu/sdk.js +703 -240
  13. package/dist/app-user-menu/sdk.js.map +1 -1
  14. package/dist/app.css +12 -122
  15. package/dist/auth/index.cjs +1365 -85
  16. package/dist/auth/index.cjs.map +1 -1
  17. package/dist/auth/index.d.cts +91 -6
  18. package/dist/auth/index.d.ts +91 -6
  19. package/dist/auth/index.js +1362 -84
  20. package/dist/auth/index.js.map +1 -1
  21. package/dist/auth/sdk.cjs +244 -0
  22. package/dist/auth/sdk.cjs.map +1 -0
  23. package/dist/auth/sdk.d.cts +40 -0
  24. package/dist/auth/sdk.d.ts +40 -0
  25. package/dist/auth/sdk.js +213 -0
  26. package/dist/auth/sdk.js.map +1 -0
  27. package/dist/brand/lockup-horizontal-black.png +0 -0
  28. package/dist/brand/lockup-horizontal-black.svg +4 -0
  29. package/dist/brand/lockup-horizontal-white.png +0 -0
  30. package/dist/brand/lockup-horizontal-white.svg +4 -0
  31. package/dist/brand/lockup-horizontal.svg +4 -0
  32. package/dist/brand/lockup-stacked-black.png +0 -0
  33. package/dist/brand/lockup-stacked-black.svg +4 -0
  34. package/dist/brand/lockup-stacked-white.png +0 -0
  35. package/dist/brand/lockup-stacked-white.svg +4 -0
  36. package/dist/brand/lockup-stacked.svg +4 -0
  37. package/dist/brand/mark-black.png +0 -0
  38. package/dist/brand/mark-black.svg +1 -0
  39. package/dist/brand/mark-white.png +0 -0
  40. package/dist/brand/mark-white.svg +1 -0
  41. package/dist/brand/mark.svg +1 -0
  42. package/dist/brand/polli/polli-lockup-horizontal-black.png +0 -0
  43. package/dist/brand/polli/polli-lockup-horizontal-white.png +0 -0
  44. package/dist/brand/polli/polli-lockup-stacked-black.png +0 -0
  45. package/dist/brand/polli/polli-lockup-stacked-white.png +0 -0
  46. package/dist/brand/polli/polli.png +0 -0
  47. package/dist/brand/wordmark-black.png +0 -0
  48. package/dist/brand/wordmark-black.svg +1 -0
  49. package/dist/brand/wordmark-white.png +0 -0
  50. package/dist/brand/wordmark-white.svg +1 -0
  51. package/dist/brand/wordmark.svg +1 -0
  52. package/dist/fonts/geist-pixel-square.woff2 +0 -0
  53. package/dist/gen/index.cjs +427 -217
  54. package/dist/gen/index.cjs.map +1 -1
  55. package/dist/gen/index.d.cts +68 -19
  56. package/dist/gen/index.d.ts +68 -19
  57. package/dist/gen/index.js +421 -215
  58. package/dist/gen/index.js.map +1 -1
  59. package/dist/index.browser.min.js +2 -0
  60. package/dist/index.browser.min.js.map +1 -0
  61. package/dist/index.cjs +3711 -1590
  62. package/dist/index.cjs.map +1 -1
  63. package/dist/index.d.cts +548 -178
  64. package/dist/index.d.ts +548 -178
  65. package/dist/index.js +3713 -1655
  66. package/dist/index.js.map +1 -1
  67. package/dist/licenses/Geist-OFL.txt +93 -0
  68. package/dist/markdown.cjs +826 -0
  69. package/dist/markdown.cjs.map +1 -0
  70. package/dist/markdown.d.cts +16 -0
  71. package/dist/markdown.d.ts +16 -0
  72. package/dist/markdown.js +797 -0
  73. package/dist/markdown.js.map +1 -0
  74. package/dist/styles.css +1 -1
  75. package/dist/theme.css +87 -0
  76. package/dist/wallet/index.cjs +291 -64
  77. package/dist/wallet/index.cjs.map +1 -1
  78. package/dist/wallet/index.d.cts +30 -7
  79. package/dist/wallet/index.d.ts +30 -7
  80. package/dist/wallet/index.js +290 -64
  81. package/dist/wallet/index.js.map +1 -1
  82. package/package.json +106 -89
  83. package/dist/Chip-CQCq34kS.d.cts +0 -20
  84. package/dist/Chip-Cj4xG7Te.d.ts +0 -20
  85. package/dist/assets/logo-wordmark.svg +0 -1
  86. package/dist/assets/logo.svg +0 -4
  87. package/dist/theme-jRPPBmld.d.cts +0 -20
  88. package/dist/theme-jRPPBmld.d.ts +0 -20
@@ -20,21 +20,23 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/modules/auth/index.ts
21
21
  var auth_exports = {};
22
22
  __export(auth_exports, {
23
+ AuthAccessItem: () => AuthAccessItem,
24
+ AuthFlowLayout: () => AuthFlowLayout,
23
25
  AuthInfoCard: () => AuthInfoCard,
24
26
  AuthModal: () => AuthModal,
27
+ AuthModalFootnote: () => AuthModalFootnote,
25
28
  AuthModalHeader: () => AuthModalHeader,
26
29
  AuthModalLoading: () => AuthModalLoading,
27
- ErrorBanner: () => ErrorBanner
30
+ DashboardAccountMenu: () => DashboardAccountMenu,
31
+ DashboardSignIn: () => DashboardSignIn,
32
+ ErrorBanner: () => ErrorBanner,
33
+ GitHubSignInButton: () => GitHubSignInButton,
34
+ PollinationsSignInButton: () => PollinationsSignInButton
28
35
  });
29
36
  module.exports = __toCommonJS(auth_exports);
30
37
 
31
- // src/assets/logo.svg
32
- var logo_default = 'data:image/svg+xml,<?xml version="1.0" encoding="utf-8"?>%0A<svg xmlns="http://www.w3.org/2000/svg" viewBox="15 17.6409 119.9998 114.7498" width="160px" height="153px">%0A <path style="stroke:none;fill-rule:evenodd;fill:currentColor;fill-opacity:1" d="M73.832 19.293a1893.685 1893.685 0 0 0-7.742 9.047c-1.93 2.273-3.274 3.898-4.266 5.156-.988 1.258-1.62 2.149-2.117 2.957-.5.805-.86 1.531-1.309 2.453-.14.285-.277.563-.402.813-.121.254-.238.48-.332.676a20.107 20.107 0 0 1-.34.652c-.008.008-.062 0-.156-.02s-.227-.047-.383-.09c-.16-.039-.351-.09-.558-.148-.207-.059-.43-.121-.668-.191-1.079-.32-1.895-.559-2.684-.743-.79-.18-1.55-.3-2.516-.382-.96-.082-2.129-.121-3.734-.145-1.602-.02-3.64-.023-6.348-.023H35.31l-2.485-.004H30.34v20.574l-.527.059-.524.058-1.055.117c-.59.067-1.203.157-1.84.274-.636.113-1.292.25-1.968.414-.676.16-1.371.348-2.086.555-.715.21-1.445.441-2.195.695-.47.16-1.024.36-1.594.574a64.38 64.38 0 0 0-1.684.649c-.523.207-.992.398-1.328.546-.336.149-.539.246-.539.274 0 .039.07.234.191.535.118.297.29.7.485 1.156.195.453.418.961.644 1.473.227.508.461 1.02.676 1.484a52.041 52.041 0 0 0 9.54 13.926 47.507 47.507 0 0 0 6.14 5.41c2.164 1.59 4.426 2.953 6.75 4.047a51.197 51.197 0 0 0 3.414 1.461c1.129.43 2.242.805 3.36 1.125 1.112.324 2.226.59 3.343.809a39.04 39.04 0 0 0 3.375.504c.84.085 1.781.136 2.777.156a51.632 51.632 0 0 0 6.203-.266 34.786 34.786 0 0 0 2.836-.394 59.177 59.177 0 0 1 2.633-.442c.149-.02.235-.023.246-.015.043.043-.02.195-.152.414a9.01 9.01 0 0 1-.582.812c-.242.313-.527.645-.813.965-.289.316-.582.617-.851.86-.57.519-1.168.968-1.809 1.355-.64.383-1.324.703-2.07.969-.746.261-1.555.464-2.441.617-.891.156-1.856.258-2.926.316-1.36.07-2.582.207-3.703.422-1.118.211-2.13.496-3.07.871-.938.375-1.801.84-2.618 1.403a15.82 15.82 0 0 0-2.351 2 14.205 14.205 0 0 0-1.489 1.765 13.256 13.256 0 0 0-1.148 1.945 15.518 15.518 0 0 0-.856 2.207 20.834 20.834 0 0 0-.59 2.543c-.058.348-.105.61-.156.817-.05.207-.105.36-.183.484a1.184 1.184 0 0 1-.325.332c-.144.106-.332.211-.578.356a9.157 9.157 0 0 0-2.543 2.183 8.797 8.797 0 0 0-1.52 2.813 8.33 8.33 0 0 0-.382 3.113 7.995 7.995 0 0 0 .852 3.098 7.95 7.95 0 0 0 1.574 2.117 9.294 9.294 0 0 0 2.168 1.566c.789.418 1.629.715 2.469.868.84.152 1.68.167 2.472.007a7.941 7.941 0 0 0 1.188-.336c.406-.144.82-.32 1.222-.515.399-.2.79-.418 1.149-.653.36-.234.691-.476.976-.73a6.93 6.93 0 0 0 1.473-1.86c.39-.71.68-1.492.855-2.308.176-.82.243-1.676.188-2.527a8.74 8.74 0 0 0-.531-2.516 5.919 5.919 0 0 0-.68-1.281c-.289-.43-.64-.856-1.031-1.258a10.34 10.34 0 0 0-1.262-1.11 8.299 8.299 0 0 0-1.379-.847c-.414-.2-.722-.352-.95-.492-.226-.137-.366-.27-.44-.43-.075-.16-.083-.352-.043-.613.039-.266.125-.598.242-1.043.226-.871.566-1.695 1.004-2.465a10.426 10.426 0 0 1 3.672-3.754c.77-.46 1.605-.836 2.492-1.102.152-.046.386-.093.675-.144a30.829 30.829 0 0 1 2.246-.273c.43-.043.876-.075 1.317-.102a41.754 41.754 0 0 0 2.773-.25 19.813 19.813 0 0 0 2.243-.406 13.283 13.283 0 0 0 1.918-.621c.609-.246 1.199-.536 1.804-.88a20.824 20.824 0 0 0 1.774-1.116c.539-.383 1.031-.786 1.511-1.227.48-.445.942-.934 1.415-1.488.468-.559.953-1.18 1.468-1.899l.309-.426.308-.43.313-.429.309-.426v19.633l-.399.262-.402.265-.797.532a11.66 11.66 0 0 0-1.567 1.21c-.44.41-.808.837-1.113 1.305-.305.465-.55.97-.746 1.535-.2.567-.351 1.192-.473 1.903a7.401 7.401 0 0 0 .024 2.574 8.502 8.502 0 0 0 2.441 4.543 7.787 7.787 0 0 0 2.157 1.496c.804.367 1.632.61 2.46.715.829.105 1.66.082 2.47-.07a7.963 7.963 0 0 0 2.343-.828 8.831 8.831 0 0 0 2.094-1.567c.406-.402.738-.789 1.011-1.18.27-.394.48-.796.641-1.234.156-.441.266-.918.336-1.473.07-.55.102-1.171.105-1.894 0-.524 0-.93-.011-1.266a6.504 6.504 0 0 0-.074-.836 3.967 3.967 0 0 0-.192-.683c-.09-.23-.207-.485-.355-.805a7.845 7.845 0 0 0-1.594-2.262 8.117 8.117 0 0 0-1.07-.879 9.342 9.342 0 0 0-1.254-.718l-.348-.164-.348-.16-.343-.165-.348-.164v-4.957l-.004-2.476v-2.48c0-1.36.004-2.657.012-3.833.008-1.176.02-2.23.035-3.11.016-.882.035-1.589.055-2.07.02-.48.043-.734.066-.707.02.028.074.102.156.208l.301.421c.121.168.258.364.406.575.145.207.305.433.461.664.38.543.735 1.027 1.09 1.468.352.438.703.832 1.063 1.2.363.367.742.707 1.148 1.039.406.328.844.652 1.332.98.777.528 1.5.965 2.223 1.328.718.364 1.437.657 2.203.89.765.235 1.582.411 2.496.544.914.137 1.93.23 3.094.3.433.024.867.055 1.289.087a40.742 40.742 0 0 1 2.148.215c.27.035.477.07.602.101.965.234 1.898.64 2.761 1.168a11.119 11.119 0 0 1 2.34 1.93 10.355 10.355 0 0 1 1.688 2.437c.43.867.707 1.781.805 2.695l.03.313.032.309.035.316.031.309-.27.14-.538.274-.274.136c-.828.426-1.558.922-2.183 1.493a7.954 7.954 0 0 0-1.54 1.91 7.731 7.731 0 0 0-.87 2.273 9.264 9.264 0 0 0-.172 2.594c.066.96.285 1.871.64 2.703a7.903 7.903 0 0 0 1.446 2.258 8.316 8.316 0 0 0 2.14 1.683c.817.45 1.727.782 2.715.98 1.309.255 2.617.126 3.836-.3a8.813 8.813 0 0 0 3.266-2.05 8.893 8.893 0 0 0 2.117-3.239c.453-1.21.613-2.527.387-3.848a9.06 9.06 0 0 0-1.504-3.644 9.344 9.344 0 0 0-1.301-1.477 8.97 8.97 0 0 0-1.61-1.16c-.18-.097-.347-.2-.507-.293-.16-.097-.305-.183-.434-.265-.125-.082-.23-.153-.312-.211a.573.573 0 0 1-.137-.121.813.813 0 0 1-.063-.184c-.027-.094-.058-.223-.097-.375a11.147 11.147 0 0 1-.11-.512c-.039-.187-.082-.39-.12-.594-.098-.5-.227-1.023-.383-1.554a19.7 19.7 0 0 0-.551-1.594c-.207-.527-.43-1.039-.668-1.512a12.868 12.868 0 0 0-.735-1.3 12.93 12.93 0 0 0-1.582-1.954 15.064 15.064 0 0 0-1.98-1.691 15.833 15.833 0 0 0-2.27-1.355 14.35 14.35 0 0 0-2.449-.934 9.33 9.33 0 0 0-.836-.188 25.72 25.72 0 0 0-1.094-.18 40.224 40.224 0 0 0-2.605-.269 51.614 51.614 0 0 1-1.281-.11 47.27 47.27 0 0 1-1.242-.128 37.65 37.65 0 0 1-1.067-.14 12.643 12.643 0 0 1-.746-.133 11.48 11.48 0 0 1-1.508-.458c-.5-.187-.996-.414-1.472-.668a12.371 12.371 0 0 1-2.606-1.847 16.117 16.117 0 0 1-1.676-1.836 5.604 5.604 0 0 1-.465-.707c-.097-.192-.125-.324-.074-.375.016-.016.117-.012.285.004.168.015.407.047.696.09.293.039.633.093 1.008.156.37.062.78.137 1.207.215a60.65 60.65 0 0 0 1.789.304c.527.079 1.011.133 1.535.172.523.04 1.09.063 1.777.078.692.016 1.504.02 2.527.024 1.22 0 2.204-.008 3.06-.031a27.474 27.474 0 0 0 2.257-.153 20.662 20.662 0 0 0 2.047-.336 48.885 48.885 0 0 0 2.426-.59 44.634 44.634 0 0 0 5.347-1.761 42.256 42.256 0 0 0 4.98-2.387 43.059 43.059 0 0 0 4.633-3.031 46.976 46.976 0 0 0 4.329-3.692 55.822 55.822 0 0 0 3.312-3.468 49.244 49.244 0 0 0 2.879-3.63 50.142 50.142 0 0 0 2.516-3.886 57.29 57.29 0 0 0 2.23-4.258c.375-.793.691-1.48.95-2.066.257-.59.46-1.078.613-1.473.144-.398.242-.7.285-.918.047-.219.039-.351-.016-.402-.078-.07-.41-.23-.902-.442a57.272 57.272 0 0 0-1.828-.73c-.692-.262-1.434-.535-2.121-.777a36.517 36.517 0 0 0-1.778-.586 54.289 54.289 0 0 0-3.531-.879 48.341 48.341 0 0 0-1.715-.332 23.874 23.874 0 0 0-1.465-.215l-.633-.07-.312-.04-.316-.035V39.301l-2.461.004h-2.461l-2.457.004h-2.461c-2.645.004-4.664.007-6.266.03-1.605.024-2.797.067-3.789.141-.992.079-1.789.192-2.598.356-.812.164-1.64.383-2.703.668a23.531 23.531 0 0 1-1.203.3c-.16.036-.289.06-.383.075-.093.016-.148.02-.156.008a29.962 29.962 0 0 1-.355-.672c-.102-.2-.22-.434-.348-.692a79.19 79.19 0 0 1-.418-.828c-.45-.902-.785-1.578-1.168-2.234-.379-.66-.805-1.297-1.422-2.117-.617-.817-1.433-1.82-2.594-3.203-1.16-1.387-2.671-3.153-4.68-5.508-1.398-1.64-2.53-2.961-3.44-4.02a272.265 272.265 0 0 0-2.122-2.441c-.523-.59-.875-.973-1.11-1.211-.237-.234-.355-.324-.402-.32-.015 0-.07.047-.156.132-.086.086-.199.207-.34.356-.136.148-.296.328-.472.523-.172.2-.364.414-.555.641m7.059 11.504a151.52 151.52 0 0 1 3.582 4.336 58.05 58.05 0 0 1 2.488 3.336c.66.965 1.16 1.793 1.516 2.515.355.72.57 1.332.66 1.868.023.14.039.25.031.347a.526.526 0 0 1-.09.262 1.205 1.205 0 0 1-.266.262c-.12.093-.285.199-.492.332-.332.21-.773.554-1.265.976-.493.426-1.043.934-1.594 1.473a43.455 43.455 0 0 0-1.625 1.672 25.487 25.487 0 0 0-1.348 1.574c-.398.512-.812 1.09-1.222 1.703a39.76 39.76 0 0 0-1.204 1.91 39.73 39.73 0 0 0-1.085 1.946c-.329.636-.622 1.25-.86 1.812-.34.809-.672 1.727-.976 2.688-.305.96-.582 1.964-.817 2.945-.234.984-.43 1.945-.562 2.816-.137.871-.215 1.653-.215 2.282-.004.609-.024 1.054-.055 1.332-.035.277-.086.386-.152.328-.067-.055-.149-.278-.246-.664a26.572 26.572 0 0 1-.336-1.66 76.29 76.29 0 0 0-.54-2.758 81.86 81.86 0 0 0-.624-2.66c-.211-.844-.43-1.637-.645-2.34a22.878 22.878 0 0 0-.617-1.801 24.472 24.472 0 0 0-.742-1.66 48.94 48.94 0 0 0-2.047-3.746c-.36-.59-.707-1.13-1.027-1.582a21.393 21.393 0 0 0-1.153-1.446 44.776 44.776 0 0 0-1.558-1.71 47.283 47.283 0 0 0-1.657-1.657c-.539-.512-1.043-.96-1.468-1.3-.172-.141-.34-.278-.489-.41a8.144 8.144 0 0 1-.402-.376 3.846 3.846 0 0 1-.27-.293c-.066-.082-.101-.144-.101-.176 0-.105.098-.378.262-.753.16-.372.386-.848.644-1.356.258-.508.547-1.05.828-1.562a24.735 24.735 0 0 1 1.582-2.508c.262-.371.543-.746.871-1.16.329-.418.7-.871 1.149-1.407.45-.535.973-1.144 1.601-1.87.235-.27.536-.614.875-1.005.336-.394.715-.832 1.114-1.293.394-.46.808-.937 1.215-1.41.402-.472.8-.933 1.168-1.363l.668-.777.668-.774.667-.777.665-.778.117.118.113.12.117.118.113.117a110.75 110.75 0 0 1 1.668 1.914l1.555 1.809c.57.664 1.184 1.383 1.813 2.12M51.227 44.149c.425.09.867.2 1.304.317.434.117.864.242 1.254.37.395.13.754.259 1.055.38.297.12.535.234.687.332.051.035.09.094.11.191.02.098.023.239.011.442-.015.199-.046.457-.097.793-.055.336-.125.75-.215 1.257-.094.524-.172.989-.23 1.446-.06.457-.106.91-.137 1.41a32.68 32.68 0 0 0-.067 1.7c-.011.648-.015 1.401-.015 2.312 0 .98.004 1.761.015 2.414.012.648.035 1.172.07 1.644.04.473.09.89.165 1.336.07.446.164.918.285 1.488.074.348.156.72.242 1.094.082.375.168.754.254 1.11.086.359.168.695.242.992.074.3.14.554.195.75.055.195.102.383.149.554.043.172.082.329.113.461.031.13.059.239.07.317.016.078.02.125.012.133a.942.942 0 0 1-.183-.079 35.955 35.955 0 0 1-1.148-.629c-.255-.144-.532-.304-.821-.472a95.651 95.651 0 0 0-2.031-1.152 44.616 44.616 0 0 0-1.723-.899 34 34 0 0 0-1.633-.75 44.224 44.224 0 0 0-1.762-.715 50.86 50.86 0 0 0-2.855-1.004 45.68 45.68 0 0 0-2.8-.793 39.106 39.106 0 0 0-2.653-.562 26.924 26.924 0 0 0-2.406-.309l-.426-.03-.426-.036-.426-.031-.426-.035V43.758h7.215c1.578.004 2.832.008 3.852.015 1.02.012 1.8.028 2.437.055a20.37 20.37 0 0 1 1.547.117c.43.051.797.117 1.196.203m64.886 7.493c0 1.23-.008 2.34-.015 3.312-.008.977-.02 1.817-.04 2.504-.015.691-.038 1.23-.062 1.602-.023.367-.05.57-.082.59a1.259 1.259 0 0 1-.281.07c-.153.031-.367.062-.617.101-.254.035-.547.078-.868.117-.32.043-.664.083-1.02.122-.765.086-1.538.199-2.323.343-.79.141-1.59.313-2.407.516-.816.203-1.652.434-2.503.7-.856.26-1.73.558-2.625.882-.735.266-1.305.477-1.801.672-.496.195-.918.375-1.348.578-.43.203-.867.43-1.398.723-.528.289-1.149.644-1.946 1.101a34.54 34.54 0 0 1-1.644.895 9.035 9.035 0 0 1-.528.242c-.128.055-.21.074-.226.059-.016-.016-.02-.082-.012-.184a5.49 5.49 0 0 1 .055-.422c.031-.172.066-.371.113-.59.043-.219.098-.457.156-.699.258-1.082.454-1.906.602-2.613.152-.703.258-1.282.332-1.867.078-.583.125-1.172.156-1.895.035-.723.059-1.578.086-2.695.024-.98.04-1.77.043-2.434.004-.66-.004-1.2-.027-1.684a17.76 17.76 0 0 0-.113-1.355 29.95 29.95 0 0 0-.223-1.445c-.152-.887-.27-1.543-.336-2.035-.066-.493-.086-.825-.04-1.059a.664.664 0 0 1 .333-.492c.18-.117.437-.207.781-.336.692-.266 1.29-.469 1.926-.63.637-.16 1.309-.276 2.152-.358.84-.082 1.852-.133 3.164-.16 1.309-.032 2.922-.044 4.965-.047l3.813-.008h1.902l1.906-.004v7.883m-25.05-2.368c.195 1.02.343 1.977.437 2.91.098.934.14 1.837.133 2.75a25.621 25.621 0 0 1-.18 2.797c-.11.961-.273 1.961-.488 3.036a39.395 39.395 0 0 1-.746 3.12 31.161 31.161 0 0 1-.946 2.829c-.355.906-.75 1.781-1.187 2.64a30.9 30.9 0 0 1-1.473 2.555c-.215.34-.597.86-1.074 1.469a76.18 76.18 0 0 1-1.625 2.012 79.82 79.82 0 0 1-1.73 2.011 30.987 30.987 0 0 1-1.387 1.489l-.258.25-.262.254-.257.253-.262.254.02-1.62.023-1.622.02-1.617.019-1.621c.02-1.414.035-2.543.058-3.465.02-.922.047-1.637.082-2.227.036-.59.082-1.054.141-1.472.059-.422.133-.797.227-1.211a38.117 38.117 0 0 1 1.086-3.91c.418-1.235.89-2.403 1.433-3.524a28.68 28.68 0 0 1 1.82-3.222 31.184 31.184 0 0 1 2.258-3.012 18.08 18.08 0 0 1 1.012-1.086c.367-.363.746-.715 1.106-1.023.355-.31.69-.575.964-.762.27-.188.48-.297.59-.297.035 0 .07.031.11.086.039.05.078.129.12.226a4.214 4.214 0 0 1 .216.75m-28.895.91c.914.915 1.738 1.86 2.488 2.86a25.52 25.52 0 0 1 2.028 3.187 30.027 30.027 0 0 1 1.636 3.645 42.64 42.64 0 0 1 1.32 4.23c.122.485.22.872.294 1.274.074.406.125.832.164 1.387.043.554.07 1.242.09 2.171.023.934.039 2.11.058 3.645.02 1.441.035 2.566.04 3.438.003.87 0 1.488-.016 1.921-.016.434-.043.68-.086.813-.04.129-.094.14-.16.101-.106-.058-.376-.324-.743-.722-.367-.399-.84-.926-1.34-1.512a82.643 82.643 0 0 1-1.539-1.832 48.185 48.185 0 0 1-1.34-1.695c-.34-.45-.722-1.031-1.117-1.688a40.534 40.534 0 0 1-1.183-2.125 43.623 43.623 0 0 1-1.075-2.207 21.82 21.82 0 0 1-.773-1.933c-.07-.215-.152-.477-.238-.762-.082-.29-.172-.602-.258-.922a49.961 49.961 0 0 1-.461-1.844c-.187-.86-.316-2.113-.395-3.508a62.606 62.606 0 0 1-.066-4.378c.027-1.434.106-2.762.227-3.735.12-.969.285-1.578.492-1.578.023 0 .097.05.21.14.11.09.259.22.438.38a44.358 44.358 0 0 1 1.305 1.25m53.23 15.39a24.897 24.897 0 0 1-.965 4.492 26.72 26.72 0 0 1-.824 2.25 33.11 33.11 0 0 1-1.058 2.305c-.344.676-.66 1.262-.98 1.805-.321.543-.641 1.035-.997 1.523-.351.485-.734.961-1.18 1.473-.445.508-.953 1.05-1.542 1.66a35.204 35.204 0 0 1-1.579 1.54c-.496.448-.976.847-1.468 1.21-.493.367-1 .703-1.551 1.031-.55.328-1.145.649-1.817.989-.84.421-1.624.761-2.445 1.03a15.58 15.58 0 0 1-2.683.626c-1.004.152-2.145.25-3.532.308-1.382.063-3.011.082-4.98.082H82.18l.03-.113.036-.113.031-.113.035-.114c.055-.199.243-.582.516-1.074.274-.496.633-1.101 1.027-1.746.399-.645.836-1.324 1.266-1.969.43-.644.852-1.25 1.219-1.746a44.604 44.604 0 0 1 5.883-6.445 41.569 41.569 0 0 1 6.812-4.977 38.048 38.048 0 0 1 7.477-3.36 34.711 34.711 0 0 1 7.886-1.585c.11-.008.22-.02.325-.027.105-.008.203-.02.293-.028.09-.008.164-.02.226-.023.063-.008.106-.016.13-.02.023-.004.038.024.05.078a.934.934 0 0 1 .023.239c.004.101 0 .226-.007.363-.008.137-.02.29-.04.45M30.934 66.89c.242 1.234.562 2.488.945 3.738a41.182 41.182 0 0 0 1.32 3.68 37.438 37.438 0 0 0 1.61 3.425 27.185 27.185 0 0 0 1.816 2.961c.45.633.992 1.313 1.594 2.004a38.232 38.232 0 0 0 1.949 2.074c.687.68 1.395 1.34 2.098 1.942.699.597 1.39 1.144 2.03 1.597.298.208.575.407.825.59.25.184.469.352.649.496.18.141.32.258.41.344.09.082.129.133.105.14-.066.028-.328-.038-.71-.167-.384-.13-.891-.324-1.458-.555a48.612 48.612 0 0 1-1.812-.777 38.066 38.066 0 0 1-7.352-4.297 42.01 42.01 0 0 1-5.043-4.422 44.733 44.733 0 0 1-4.37-5.254 45.026 45.026 0 0 1-3.575-5.941c-.125-.258-.25-.504-.356-.735-.109-.226-.207-.433-.285-.609-.078-.176-.14-.32-.18-.422-.042-.101-.058-.164-.05-.172.008-.008.062-.031.148-.066.09-.035.211-.082.36-.137.144-.05.32-.113.507-.18l.614-.21c.433-.145.988-.297 1.593-.446a39.578 39.578 0 0 1 3.805-.73c.574-.078 1.07-.125 1.434-.133l.23-.004.235-.004.23-.004.234-.004.114.57.109.57.113.567.114.57m8.199-1.87c1.383.238 2.8.59 4.226 1.039 1.426.449 2.856 1 4.27 1.636a42.064 42.064 0 0 1 4.16 2.164c1.348.801 2.648 1.68 3.879 2.621.41.317.95.778 1.547 1.32a69.069 69.069 0 0 1 1.914 1.805c.652.641 1.3 1.293 1.871 1.899a31.34 31.34 0 0 1 1.422 1.586 46.416 46.416 0 0 1 1.726 2.27c.57.796 1.125 1.613 1.622 2.39.5.781.94 1.52 1.285 2.152.343.637.593 1.172.71 1.543l.032.114.035.113.04.113.03.113h-5.511c-1.918 0-3.48-.02-4.801-.078-1.324-.058-2.41-.156-3.371-.312a15.68 15.68 0 0 1-2.63-.653c-.831-.289-1.651-.652-2.581-1.109a20.527 20.527 0 0 1-3.137-1.926 24.776 24.776 0 0 1-2.902-2.523 26.07 26.07 0 0 1-2.528-2.988 24.005 24.005 0 0 1-2.011-3.305 35.404 35.404 0 0 1-1.192-2.649 38.321 38.321 0 0 1-.968-2.66 25.394 25.394 0 0 1-.645-2.39c-.156-.72-.238-1.348-.238-1.832 0-.211 0-.371.011-.489.012-.12.032-.203.079-.257.043-.055.105-.082.203-.098.093-.016.222-.016.39-.016.094 0 .25.012.453.032.204.023.454.05.73.09.278.035.583.078.903.128.32.047.653.102.977.157m84.953.085c.336.06.809.168 1.336.297.523.13 1.101.282 1.64.434.543.152 1.051.305 1.43.43.387.125.649.222.7.273.027.023-.028.184-.149.45-.121.265-.3.632-.527 1.062-.223.433-.493.93-.79 1.457a56.9 56.9 0 0 1-.937 1.633 44.31 44.31 0 0 1-3.473 5.027 46.345 46.345 0 0 1-4.12 4.531 43.203 43.203 0 0 1-4.571 3.848 34.726 34.726 0 0 1-4.82 2.969 42.898 42.898 0 0 1-3.02 1.367c-.469.191-.89.351-1.207.457-.32.105-.535.156-.598.137-.027-.012.004-.055.079-.133.074-.074.195-.18.351-.309.153-.129.348-.281.563-.445.218-.164.465-.344.722-.531a31.987 31.987 0 0 0 3.067-2.473 30.025 30.025 0 0 0 4.992-5.887 32.018 32.018 0 0 0 1.953-3.441c.398-.809.75-1.57 1.059-2.309a30.121 30.121 0 0 0 1.48-4.39c.188-.758.363-1.547.52-2.391l.109-.59.113-.586.11-.59.109-.586h1.133c.156 0 .347.008.566.024.215.012.457.035.703.062a20.21 20.21 0 0 1 1.477.203m-79.191 55.711c.363.23.671.555.917.934.247.379.426.816.536 1.273.109.457.148.938.105 1.407a3.61 3.61 0 0 1-.371 1.336c-.156.304-.332.57-.539.808a3.303 3.303 0 0 1-1.512.996 4.104 4.104 0 0 1-.965.184 4.468 4.468 0 0 1-1.03-.043 3.427 3.427 0 0 1-1.719-.805 4.434 4.434 0 0 1-.696-.77 3.378 3.378 0 0 1-.555-1.284 4.203 4.203 0 0 1-.046-1.434c.066-.48.21-.945.43-1.36.214-.413.507-.78.87-1.058a3.654 3.654 0 0 1 1.059-.555c.383-.132.789-.207 1.2-.222.41-.02.82.023 1.214.12.39.102.766.259 1.102.473m64.375-.195c.175.086.37.23.574.406.199.176.402.38.586.598.187.215.36.438.492.652.133.211.226.407.266.567.019.07.035.168.042.285.012.113.02.25.024.398.004.145 0 .301-.004.457a8.875 8.875 0 0 1-.023.461 3.545 3.545 0 0 1-.774 1.953 3.866 3.866 0 0 1-3.625 1.368 3.584 3.584 0 0 1-1.883-.95 4.289 4.289 0 0 1-.55-.609 2.827 2.827 0 0 1-.352-.637 3.475 3.475 0 0 1-.188-.746 6.793 6.793 0 0 1-.054-.941c0-.352.027-.672.082-.961.05-.293.137-.555.25-.797.117-.242.265-.465.449-.676.188-.21.406-.41.668-.601.25-.188.547-.328.879-.434a4.168 4.168 0 0 1 1.05-.187c.364-.024.735 0 1.09.066.36.062.7.176 1 .328m-31.93.473c.177.125.368.328.556.57.183.242.367.531.527.824.16.293.297.598.394.88a2.5 2.5 0 0 1 .16.737c0 .258-.074.567-.206.895a5.551 5.551 0 0 1-.54.996 6 6 0 0 1-.742.906c-.265.27-.547.489-.816.63a2.93 2.93 0 0 1-1.024.3 3.709 3.709 0 0 1-1.117-.047 3.928 3.928 0 0 1-1.066-.37 3.194 3.194 0 0 1-.871-.669 4.034 4.034 0 0 1-.68-1.012 4.028 4.028 0 0 1-.355-1.12 3.802 3.802 0 0 1-.012-1.153 3.5 3.5 0 0 1 .344-1.094c.187-.363.375-.664.586-.91.21-.242.441-.43.71-.57.266-.14.57-.23.922-.282a6.496 6.496 0 0 1 1.239-.046c.254.011.472.027.664.046.195.024.363.055.515.098a2.284 2.284 0 0 1 .813.39" id="path6"/>%0A</svg>';
33
-
34
- // src/primitives/Dialog.tsx
35
- var import_dialog = require("@ark-ui/react/dialog");
36
- var import_portal = require("@ark-ui/react/portal");
37
- var import_react = require("react");
38
+ // src/modules/auth/AuthModal.tsx
39
+ var import_react3 = require("react");
38
40
 
39
41
  // src/lib/cn.ts
40
42
  var import_clsx = require("clsx");
@@ -44,12 +46,319 @@ function cn(...inputs) {
44
46
  return twMerge((0, import_clsx.clsx)(...inputs));
45
47
  }
46
48
 
47
- // src/primitives/Dialog.tsx
49
+ // src/primitives/icons/index.tsx
48
50
  var import_jsx_runtime = require("react/jsx-runtime");
51
+ var strokeProps = {
52
+ fill: "none",
53
+ stroke: "currentColor",
54
+ strokeWidth: 2,
55
+ strokeLinecap: "round",
56
+ strokeLinejoin: "round"
57
+ };
58
+ function CheckIcon(props) {
59
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
60
+ "svg",
61
+ {
62
+ "aria-hidden": "true",
63
+ viewBox: "0 0 24 24",
64
+ ...strokeProps,
65
+ strokeWidth: 2.5,
66
+ ...props,
67
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("polyline", { points: "20 6 9 17 4 12" })
68
+ }
69
+ );
70
+ }
71
+ function ExternalLinkIcon(props) {
72
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", { "aria-hidden": "true", viewBox: "0 0 24 24", ...strokeProps, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M7 17 17 7M9 7h8v8" }) });
73
+ }
74
+ function GitHubIcon(props) {
75
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", { viewBox: "0 0 24 24", "aria-hidden": "true", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
76
+ "path",
77
+ {
78
+ fill: "currentColor",
79
+ d: "M12 .5A11.5 11.5 0 0 0 8.36 22.9c.58.11.79-.25.79-.56v-2.16c-3.21.7-3.89-1.38-3.89-1.38-.53-1.34-1.29-1.7-1.29-1.7-1.05-.72.08-.7.08-.7 1.16.08 1.77 1.19 1.77 1.19 1.04 1.76 2.71 1.25 3.37.96.11-.75.4-1.25.74-1.54-2.56-.29-5.26-1.28-5.26-5.7 0-1.26.45-2.29 1.19-3.1-.12-.29-.52-1.46.11-3.06 0 0 .97-.31 3.16 1.18a10.88 10.88 0 0 1 5.76 0c2.19-1.49 3.15-1.18 3.15-1.18.63 1.6.23 2.77.11 3.06.74.81 1.19 1.84 1.19 3.1 0 4.43-2.7 5.4-5.27 5.69.41.36.78 1.06.78 2.14v3.19c0 .31.21.68.8.56A11.5 11.5 0 0 0 12 .5Z"
80
+ }
81
+ ) });
82
+ }
83
+ function WarningIcon(props) {
84
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { "aria-hidden": "true", viewBox: "0 0 24 24", ...strokeProps, ...props, children: [
85
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M10.3 3.1 1.8 17a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.1a2 2 0 0 0-3.4 0Z" }),
86
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M12 9v4M12 17h.01" })
87
+ ] });
88
+ }
89
+ function SignOutIcon(props) {
90
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { "aria-hidden": "true", viewBox: "0 0 24 24", ...strokeProps, ...props, children: [
91
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4" }),
92
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "m16 17 5-5-5-5" }),
93
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M21 12H9" })
94
+ ] });
95
+ }
96
+ function RefreshIcon(props) {
97
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { "aria-hidden": "true", viewBox: "0 0 24 24", ...strokeProps, ...props, children: [
98
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M21 12a9 9 0 1 1-2.64-6.36" }),
99
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M21 3v6h-6" })
100
+ ] });
101
+ }
102
+
103
+ // src/primitives/Typography.tsx
104
+ var import_jsx_runtime2 = require("react/jsx-runtime");
105
+ var headingSizeClasses = {
106
+ display: "polli:font-heading polli:text-5xl polli:leading-none",
107
+ title: "polli:font-heading polli:text-4xl polli:leading-none",
108
+ section: "polli:font-subheading polli:text-2xl polli:leading-tight",
109
+ subsection: "polli:font-subheading polli:text-xl polli:leading-tight",
110
+ card: "polli:font-subheading polli:text-lg polli:leading-tight"
111
+ };
112
+ var textSizeClasses = {
113
+ body: "polli:text-base polli:leading-relaxed",
114
+ sm: "polli:text-sm polli:leading-6",
115
+ xs: "polli:text-xs polli:leading-normal",
116
+ micro: "polli:text-micro polli:leading-normal"
117
+ };
118
+ var textToneClasses = {
119
+ base: "polli:text-theme-text-base",
120
+ strong: "polli:text-theme-text-strong",
121
+ soft: "polli:text-theme-text-soft",
122
+ muted: "polli:text-theme-text-muted"
123
+ };
124
+ var textWeightClasses = {
125
+ normal: "polli:font-normal",
126
+ medium: "polli:font-medium",
127
+ semibold: "polli:font-semibold",
128
+ bold: "polli:font-bold"
129
+ };
130
+ function headingClassName(size, className) {
131
+ return cn(
132
+ "polli:break-words polli:text-theme-text-strong",
133
+ headingSizeClasses[size],
134
+ className
135
+ );
136
+ }
137
+ function textClassName({
138
+ size,
139
+ tone,
140
+ weight,
141
+ className
142
+ }) {
143
+ return cn(
144
+ "polli:break-words polli:font-body",
145
+ textSizeClasses[size],
146
+ textToneClasses[tone],
147
+ textWeightClasses[weight],
148
+ className
149
+ );
150
+ }
151
+ function Heading({
152
+ as,
153
+ size = "section",
154
+ className,
155
+ children,
156
+ ...rest
157
+ }) {
158
+ const Component = as || "h2";
159
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(Component, { ...rest, className: headingClassName(size, className), children });
160
+ }
161
+ function Text({
162
+ as,
163
+ size = "body",
164
+ tone = "base",
165
+ weight = "normal",
166
+ className,
167
+ children,
168
+ ...rest
169
+ }) {
170
+ const Component = as || "p";
171
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
172
+ Component,
173
+ {
174
+ ...rest,
175
+ className: textClassName({ size, tone, weight, className }),
176
+ children
177
+ }
178
+ );
179
+ }
180
+
181
+ // src/compositions/Alert.tsx
182
+ var import_jsx_runtime3 = require("react/jsx-runtime");
183
+ var intentClasses = {
184
+ info: "polli:bg-theme-bg-pale polli:text-theme-text-strong",
185
+ advisory: "polli:bg-intent-warning-bg-light/45 polli:text-theme-text-base",
186
+ warning: "polli:bg-intent-warning-bg-light polli:text-intent-warning-text",
187
+ danger: "polli:bg-intent-danger-bg-light polli:text-intent-danger-text"
188
+ };
189
+ var Alert = ({
190
+ intent = "info",
191
+ title,
192
+ className,
193
+ children,
194
+ ...rest
195
+ }) => /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
196
+ "div",
197
+ {
198
+ ...rest,
199
+ role: intent === "danger" ? "alert" : "status",
200
+ className: cn(
201
+ "polli:rounded-xl polli:px-3 polli:py-2 polli:text-sm",
202
+ intent === "advisory" && "polli:flex polli:items-start polli:gap-2",
203
+ intentClasses[intent],
204
+ className
205
+ ),
206
+ children: [
207
+ intent === "advisory" && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(WarningIcon, { className: "polli:mt-0.5 polli:h-4 polli:w-4 polli:shrink-0 polli:text-intent-warning-text" }),
208
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)("div", { className: "polli:min-w-0", children: [
209
+ title && (intent === "advisory" ? /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
210
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("strong", { className: "polli:font-semibold polli:text-theme-text-strong", children: title }),
211
+ " ",
212
+ "\u2014",
213
+ " "
214
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
215
+ Text,
216
+ {
217
+ as: "div",
218
+ size: "xs",
219
+ tone: "strong",
220
+ weight: "bold",
221
+ className: "polli:mb-1 polli:uppercase polli:tracking-wide",
222
+ children: title
223
+ }
224
+ )),
225
+ children
226
+ ] })
227
+ ]
228
+ }
229
+ );
230
+
231
+ // src/brand/lockup-horizontal.svg
232
+ var lockup_horizontal_default = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 858.891 105.6" fill="currentColor">%0A <g transform="translate(-13.81 -16.241) scale(0.921)"><path fill-rule="evenodd" d="M73.832 19.293a1893.685 1893.685 0 0 0-7.742 9.047c-1.93 2.273-3.274 3.898-4.266 5.156-.988 1.258-1.62 2.149-2.117 2.957-.5.805-.86 1.531-1.309 2.453-.14.285-.277.563-.402.813-.121.254-.238.48-.332.676a20.107 20.107 0 0 1-.34.652c-.008.008-.062 0-.156-.02s-.227-.047-.383-.09c-.16-.039-.351-.09-.558-.148-.207-.059-.43-.121-.668-.191-1.079-.32-1.895-.559-2.684-.743-.79-.18-1.55-.3-2.516-.382-.96-.082-2.129-.121-3.734-.145-1.602-.02-3.64-.023-6.348-.023H35.31l-2.485-.004H30.34v20.574l-.527.059-.524.058-1.055.117c-.59.067-1.203.157-1.84.274-.636.113-1.292.25-1.968.414-.676.16-1.371.348-2.086.555-.715.21-1.445.441-2.195.695-.47.16-1.024.36-1.594.574a64.38 64.38 0 0 0-1.684.649c-.523.207-.992.398-1.328.546-.336.149-.539.246-.539.274 0 .039.07.234.191.535.118.297.29.7.485 1.156.195.453.418.961.644 1.473.227.508.461 1.02.676 1.484a52.041 52.041 0 0 0 9.54 13.926 47.507 47.507 0 0 0 6.14 5.41c2.164 1.59 4.426 2.953 6.75 4.047a51.197 51.197 0 0 0 3.414 1.461c1.129.43 2.242.805 3.36 1.125 1.112.324 2.226.59 3.343.809a39.04 39.04 0 0 0 3.375.504c.84.085 1.781.136 2.777.156a51.632 51.632 0 0 0 6.203-.266 34.786 34.786 0 0 0 2.836-.394 59.177 59.177 0 0 1 2.633-.442c.149-.02.235-.023.246-.015.043.043-.02.195-.152.414a9.01 9.01 0 0 1-.582.812c-.242.313-.527.645-.813.965-.289.316-.582.617-.851.86-.57.519-1.168.968-1.809 1.355-.64.383-1.324.703-2.07.969-.746.261-1.555.464-2.441.617-.891.156-1.856.258-2.926.316-1.36.07-2.582.207-3.703.422-1.118.211-2.13.496-3.07.871-.938.375-1.801.84-2.618 1.403a15.82 15.82 0 0 0-2.351 2 14.205 14.205 0 0 0-1.489 1.765 13.256 13.256 0 0 0-1.148 1.945 15.518 15.518 0 0 0-.856 2.207 20.834 20.834 0 0 0-.59 2.543c-.058.348-.105.61-.156.817-.05.207-.105.36-.183.484a1.184 1.184 0 0 1-.325.332c-.144.106-.332.211-.578.356a9.157 9.157 0 0 0-2.543 2.183 8.797 8.797 0 0 0-1.52 2.813 8.33 8.33 0 0 0-.382 3.113 7.995 7.995 0 0 0 .852 3.098 7.95 7.95 0 0 0 1.574 2.117 9.294 9.294 0 0 0 2.168 1.566c.789.418 1.629.715 2.469.868.84.152 1.68.167 2.472.007a7.941 7.941 0 0 0 1.188-.336c.406-.144.82-.32 1.222-.515.399-.2.79-.418 1.149-.653.36-.234.691-.476.976-.73a6.93 6.93 0 0 0 1.473-1.86c.39-.71.68-1.492.855-2.308.176-.82.243-1.676.188-2.527a8.74 8.74 0 0 0-.531-2.516 5.919 5.919 0 0 0-.68-1.281c-.289-.43-.64-.856-1.031-1.258a10.34 10.34 0 0 0-1.262-1.11 8.299 8.299 0 0 0-1.379-.847c-.414-.2-.722-.352-.95-.492-.226-.137-.366-.27-.44-.43-.075-.16-.083-.352-.043-.613.039-.266.125-.598.242-1.043.226-.871.566-1.695 1.004-2.465a10.426 10.426 0 0 1 3.672-3.754c.77-.46 1.605-.836 2.492-1.102.152-.046.386-.093.675-.144a30.829 30.829 0 0 1 2.246-.273c.43-.043.876-.075 1.317-.102a41.754 41.754 0 0 0 2.773-.25 19.813 19.813 0 0 0 2.243-.406 13.283 13.283 0 0 0 1.918-.621c.609-.246 1.199-.536 1.804-.88a20.824 20.824 0 0 0 1.774-1.116c.539-.383 1.031-.786 1.511-1.227.48-.445.942-.934 1.415-1.488.468-.559.953-1.18 1.468-1.899l.309-.426.308-.43.313-.429.309-.426v19.633l-.399.262-.402.265-.797.532a11.66 11.66 0 0 0-1.567 1.21c-.44.41-.808.837-1.113 1.305-.305.465-.55.97-.746 1.535-.2.567-.351 1.192-.473 1.903a7.401 7.401 0 0 0 .024 2.574 8.502 8.502 0 0 0 2.441 4.543 7.787 7.787 0 0 0 2.157 1.496c.804.367 1.632.61 2.46.715.829.105 1.66.082 2.47-.07a7.963 7.963 0 0 0 2.343-.828 8.831 8.831 0 0 0 2.094-1.567c.406-.402.738-.789 1.011-1.18.27-.394.48-.796.641-1.234.156-.441.266-.918.336-1.473.07-.55.102-1.171.105-1.894 0-.524 0-.93-.011-1.266a6.504 6.504 0 0 0-.074-.836 3.967 3.967 0 0 0-.192-.683c-.09-.23-.207-.485-.355-.805a7.845 7.845 0 0 0-1.594-2.262 8.117 8.117 0 0 0-1.07-.879 9.342 9.342 0 0 0-1.254-.718l-.348-.164-.348-.16-.343-.165-.348-.164v-4.957l-.004-2.476v-2.48c0-1.36.004-2.657.012-3.833.008-1.176.02-2.23.035-3.11.016-.882.035-1.589.055-2.07.02-.48.043-.734.066-.707.02.028.074.102.156.208l.301.421c.121.168.258.364.406.575.145.207.305.433.461.664.38.543.735 1.027 1.09 1.468.352.438.703.832 1.063 1.2.363.367.742.707 1.148 1.039.406.328.844.652 1.332.98.777.528 1.5.965 2.223 1.328.718.364 1.437.657 2.203.89.765.235 1.582.411 2.496.544.914.137 1.93.23 3.094.3.433.024.867.055 1.289.087a40.742 40.742 0 0 1 2.148.215c.27.035.477.07.602.101.965.234 1.898.64 2.761 1.168a11.119 11.119 0 0 1 2.34 1.93 10.355 10.355 0 0 1 1.688 2.437c.43.867.707 1.781.805 2.695l.03.313.032.309.035.316.031.309-.27.14-.538.274-.274.136c-.828.426-1.558.922-2.183 1.493a7.954 7.954 0 0 0-1.54 1.91 7.731 7.731 0 0 0-.87 2.273 9.264 9.264 0 0 0-.172 2.594c.066.96.285 1.871.64 2.703a7.903 7.903 0 0 0 1.446 2.258 8.316 8.316 0 0 0 2.14 1.683c.817.45 1.727.782 2.715.98 1.309.255 2.617.126 3.836-.3a8.813 8.813 0 0 0 3.266-2.05 8.893 8.893 0 0 0 2.117-3.239c.453-1.21.613-2.527.387-3.848a9.06 9.06 0 0 0-1.504-3.644 9.344 9.344 0 0 0-1.301-1.477 8.97 8.97 0 0 0-1.61-1.16c-.18-.097-.347-.2-.507-.293-.16-.097-.305-.183-.434-.265-.125-.082-.23-.153-.312-.211a.573.573 0 0 1-.137-.121.813.813 0 0 1-.063-.184c-.027-.094-.058-.223-.097-.375a11.147 11.147 0 0 1-.11-.512c-.039-.187-.082-.39-.12-.594-.098-.5-.227-1.023-.383-1.554a19.7 19.7 0 0 0-.551-1.594c-.207-.527-.43-1.039-.668-1.512a12.868 12.868 0 0 0-.735-1.3 12.93 12.93 0 0 0-1.582-1.954 15.064 15.064 0 0 0-1.98-1.691 15.833 15.833 0 0 0-2.27-1.355 14.35 14.35 0 0 0-2.449-.934 9.33 9.33 0 0 0-.836-.188 25.72 25.72 0 0 0-1.094-.18 40.224 40.224 0 0 0-2.605-.269 51.614 51.614 0 0 1-1.281-.11 47.27 47.27 0 0 1-1.242-.128 37.65 37.65 0 0 1-1.067-.14 12.643 12.643 0 0 1-.746-.133 11.48 11.48 0 0 1-1.508-.458c-.5-.187-.996-.414-1.472-.668a12.371 12.371 0 0 1-2.606-1.847 16.117 16.117 0 0 1-1.676-1.836 5.604 5.604 0 0 1-.465-.707c-.097-.192-.125-.324-.074-.375.016-.016.117-.012.285.004.168.015.407.047.696.09.293.039.633.093 1.008.156.37.062.78.137 1.207.215a60.65 60.65 0 0 0 1.789.304c.527.079 1.011.133 1.535.172.523.04 1.09.063 1.777.078.692.016 1.504.02 2.527.024 1.22 0 2.204-.008 3.06-.031a27.474 27.474 0 0 0 2.257-.153 20.662 20.662 0 0 0 2.047-.336 48.885 48.885 0 0 0 2.426-.59 44.634 44.634 0 0 0 5.347-1.761 42.256 42.256 0 0 0 4.98-2.387 43.059 43.059 0 0 0 4.633-3.031 46.976 46.976 0 0 0 4.329-3.692 55.822 55.822 0 0 0 3.312-3.468 49.244 49.244 0 0 0 2.879-3.63 50.142 50.142 0 0 0 2.516-3.886 57.29 57.29 0 0 0 2.23-4.258c.375-.793.691-1.48.95-2.066.257-.59.46-1.078.613-1.473.144-.398.242-.7.285-.918.047-.219.039-.351-.016-.402-.078-.07-.41-.23-.902-.442a57.272 57.272 0 0 0-1.828-.73c-.692-.262-1.434-.535-2.121-.777a36.517 36.517 0 0 0-1.778-.586 54.289 54.289 0 0 0-3.531-.879 48.341 48.341 0 0 0-1.715-.332 23.874 23.874 0 0 0-1.465-.215l-.633-.07-.312-.04-.316-.035V39.301l-2.461.004h-2.461l-2.457.004h-2.461c-2.645.004-4.664.007-6.266.03-1.605.024-2.797.067-3.789.141-.992.079-1.789.192-2.598.356-.812.164-1.64.383-2.703.668a23.531 23.531 0 0 1-1.203.3c-.16.036-.289.06-.383.075-.093.016-.148.02-.156.008a29.962 29.962 0 0 1-.355-.672c-.102-.2-.22-.434-.348-.692a79.19 79.19 0 0 1-.418-.828c-.45-.902-.785-1.578-1.168-2.234-.379-.66-.805-1.297-1.422-2.117-.617-.817-1.433-1.82-2.594-3.203-1.16-1.387-2.671-3.153-4.68-5.508-1.398-1.64-2.53-2.961-3.44-4.02a272.265 272.265 0 0 0-2.122-2.441c-.523-.59-.875-.973-1.11-1.211-.237-.234-.355-.324-.402-.32-.015 0-.07.047-.156.132-.086.086-.199.207-.34.356-.136.148-.296.328-.472.523-.172.2-.364.414-.555.641m7.059 11.504a151.52 151.52 0 0 1 3.582 4.336 58.05 58.05 0 0 1 2.488 3.336c.66.965 1.16 1.793 1.516 2.515.355.72.57 1.332.66 1.868.023.14.039.25.031.347a.526.526 0 0 1-.09.262 1.205 1.205 0 0 1-.266.262c-.12.093-.285.199-.492.332-.332.21-.773.554-1.265.976-.493.426-1.043.934-1.594 1.473a43.455 43.455 0 0 0-1.625 1.672 25.487 25.487 0 0 0-1.348 1.574c-.398.512-.812 1.09-1.222 1.703a39.76 39.76 0 0 0-1.204 1.91 39.73 39.73 0 0 0-1.085 1.946c-.329.636-.622 1.25-.86 1.812-.34.809-.672 1.727-.976 2.688-.305.96-.582 1.964-.817 2.945-.234.984-.43 1.945-.562 2.816-.137.871-.215 1.653-.215 2.282-.004.609-.024 1.054-.055 1.332-.035.277-.086.386-.152.328-.067-.055-.149-.278-.246-.664a26.572 26.572 0 0 1-.336-1.66 76.29 76.29 0 0 0-.54-2.758 81.86 81.86 0 0 0-.624-2.66c-.211-.844-.43-1.637-.645-2.34a22.878 22.878 0 0 0-.617-1.801 24.472 24.472 0 0 0-.742-1.66 48.94 48.94 0 0 0-2.047-3.746c-.36-.59-.707-1.13-1.027-1.582a21.393 21.393 0 0 0-1.153-1.446 44.776 44.776 0 0 0-1.558-1.71 47.283 47.283 0 0 0-1.657-1.657c-.539-.512-1.043-.96-1.468-1.3-.172-.141-.34-.278-.489-.41a8.144 8.144 0 0 1-.402-.376 3.846 3.846 0 0 1-.27-.293c-.066-.082-.101-.144-.101-.176 0-.105.098-.378.262-.753.16-.372.386-.848.644-1.356.258-.508.547-1.05.828-1.562a24.735 24.735 0 0 1 1.582-2.508c.262-.371.543-.746.871-1.16.329-.418.7-.871 1.149-1.407.45-.535.973-1.144 1.601-1.87.235-.27.536-.614.875-1.005.336-.394.715-.832 1.114-1.293.394-.46.808-.937 1.215-1.41.402-.472.8-.933 1.168-1.363l.668-.777.668-.774.667-.777.665-.778.117.118.113.12.117.118.113.117a110.75 110.75 0 0 1 1.668 1.914l1.555 1.809c.57.664 1.184 1.383 1.813 2.12M51.227 44.149c.425.09.867.2 1.304.317.434.117.864.242 1.254.37.395.13.754.259 1.055.38.297.12.535.234.687.332.051.035.09.094.11.191.02.098.023.239.011.442-.015.199-.046.457-.097.793-.055.336-.125.75-.215 1.257-.094.524-.172.989-.23 1.446-.06.457-.106.91-.137 1.41a32.68 32.68 0 0 0-.067 1.7c-.011.648-.015 1.401-.015 2.312 0 .98.004 1.761.015 2.414.012.648.035 1.172.07 1.644.04.473.09.89.165 1.336.07.446.164.918.285 1.488.074.348.156.72.242 1.094.082.375.168.754.254 1.11.086.359.168.695.242.992.074.3.14.554.195.75.055.195.102.383.149.554.043.172.082.329.113.461.031.13.059.239.07.317.016.078.02.125.012.133a.942.942 0 0 1-.183-.079 35.955 35.955 0 0 1-1.148-.629c-.255-.144-.532-.304-.821-.472a95.651 95.651 0 0 0-2.031-1.152 44.616 44.616 0 0 0-1.723-.899 34 34 0 0 0-1.633-.75 44.224 44.224 0 0 0-1.762-.715 50.86 50.86 0 0 0-2.855-1.004 45.68 45.68 0 0 0-2.8-.793 39.106 39.106 0 0 0-2.653-.562 26.924 26.924 0 0 0-2.406-.309l-.426-.03-.426-.036-.426-.031-.426-.035V43.758h7.215c1.578.004 2.832.008 3.852.015 1.02.012 1.8.028 2.437.055a20.37 20.37 0 0 1 1.547.117c.43.051.797.117 1.196.203m64.886 7.493c0 1.23-.008 2.34-.015 3.312-.008.977-.02 1.817-.04 2.504-.015.691-.038 1.23-.062 1.602-.023.367-.05.57-.082.59a1.259 1.259 0 0 1-.281.07c-.153.031-.367.062-.617.101-.254.035-.547.078-.868.117-.32.043-.664.083-1.02.122-.765.086-1.538.199-2.323.343-.79.141-1.59.313-2.407.516-.816.203-1.652.434-2.503.7-.856.26-1.73.558-2.625.882-.735.266-1.305.477-1.801.672-.496.195-.918.375-1.348.578-.43.203-.867.43-1.398.723-.528.289-1.149.644-1.946 1.101a34.54 34.54 0 0 1-1.644.895 9.035 9.035 0 0 1-.528.242c-.128.055-.21.074-.226.059-.016-.016-.02-.082-.012-.184a5.49 5.49 0 0 1 .055-.422c.031-.172.066-.371.113-.59.043-.219.098-.457.156-.699.258-1.082.454-1.906.602-2.613.152-.703.258-1.282.332-1.867.078-.583.125-1.172.156-1.895.035-.723.059-1.578.086-2.695.024-.98.04-1.77.043-2.434.004-.66-.004-1.2-.027-1.684a17.76 17.76 0 0 0-.113-1.355 29.95 29.95 0 0 0-.223-1.445c-.152-.887-.27-1.543-.336-2.035-.066-.493-.086-.825-.04-1.059a.664.664 0 0 1 .333-.492c.18-.117.437-.207.781-.336.692-.266 1.29-.469 1.926-.63.637-.16 1.309-.276 2.152-.358.84-.082 1.852-.133 3.164-.16 1.309-.032 2.922-.044 4.965-.047l3.813-.008h1.902l1.906-.004v7.883m-25.05-2.368c.195 1.02.343 1.977.437 2.91.098.934.14 1.837.133 2.75a25.621 25.621 0 0 1-.18 2.797c-.11.961-.273 1.961-.488 3.036a39.395 39.395 0 0 1-.746 3.12 31.161 31.161 0 0 1-.946 2.829c-.355.906-.75 1.781-1.187 2.64a30.9 30.9 0 0 1-1.473 2.555c-.215.34-.597.86-1.074 1.469a76.18 76.18 0 0 1-1.625 2.012 79.82 79.82 0 0 1-1.73 2.011 30.987 30.987 0 0 1-1.387 1.489l-.258.25-.262.254-.257.253-.262.254.02-1.62.023-1.622.02-1.617.019-1.621c.02-1.414.035-2.543.058-3.465.02-.922.047-1.637.082-2.227.036-.59.082-1.054.141-1.472.059-.422.133-.797.227-1.211a38.117 38.117 0 0 1 1.086-3.91c.418-1.235.89-2.403 1.433-3.524a28.68 28.68 0 0 1 1.82-3.222 31.184 31.184 0 0 1 2.258-3.012 18.08 18.08 0 0 1 1.012-1.086c.367-.363.746-.715 1.106-1.023.355-.31.69-.575.964-.762.27-.188.48-.297.59-.297.035 0 .07.031.11.086.039.05.078.129.12.226a4.214 4.214 0 0 1 .216.75m-28.895.91c.914.915 1.738 1.86 2.488 2.86a25.52 25.52 0 0 1 2.028 3.187 30.027 30.027 0 0 1 1.636 3.645 42.64 42.64 0 0 1 1.32 4.23c.122.485.22.872.294 1.274.074.406.125.832.164 1.387.043.554.07 1.242.09 2.171.023.934.039 2.11.058 3.645.02 1.441.035 2.566.04 3.438.003.87 0 1.488-.016 1.921-.016.434-.043.68-.086.813-.04.129-.094.14-.16.101-.106-.058-.376-.324-.743-.722-.367-.399-.84-.926-1.34-1.512a82.643 82.643 0 0 1-1.539-1.832 48.185 48.185 0 0 1-1.34-1.695c-.34-.45-.722-1.031-1.117-1.688a40.534 40.534 0 0 1-1.183-2.125 43.623 43.623 0 0 1-1.075-2.207 21.82 21.82 0 0 1-.773-1.933c-.07-.215-.152-.477-.238-.762-.082-.29-.172-.602-.258-.922a49.961 49.961 0 0 1-.461-1.844c-.187-.86-.316-2.113-.395-3.508a62.606 62.606 0 0 1-.066-4.378c.027-1.434.106-2.762.227-3.735.12-.969.285-1.578.492-1.578.023 0 .097.05.21.14.11.09.259.22.438.38a44.358 44.358 0 0 1 1.305 1.25m53.23 15.39a24.897 24.897 0 0 1-.965 4.492 26.72 26.72 0 0 1-.824 2.25 33.11 33.11 0 0 1-1.058 2.305c-.344.676-.66 1.262-.98 1.805-.321.543-.641 1.035-.997 1.523-.351.485-.734.961-1.18 1.473-.445.508-.953 1.05-1.542 1.66a35.204 35.204 0 0 1-1.579 1.54c-.496.448-.976.847-1.468 1.21-.493.367-1 .703-1.551 1.031-.55.328-1.145.649-1.817.989-.84.421-1.624.761-2.445 1.03a15.58 15.58 0 0 1-2.683.626c-1.004.152-2.145.25-3.532.308-1.382.063-3.011.082-4.98.082H82.18l.03-.113.036-.113.031-.113.035-.114c.055-.199.243-.582.516-1.074.274-.496.633-1.101 1.027-1.746.399-.645.836-1.324 1.266-1.969.43-.644.852-1.25 1.219-1.746a44.604 44.604 0 0 1 5.883-6.445 41.569 41.569 0 0 1 6.812-4.977 38.048 38.048 0 0 1 7.477-3.36 34.711 34.711 0 0 1 7.886-1.585c.11-.008.22-.02.325-.027.105-.008.203-.02.293-.028.09-.008.164-.02.226-.023.063-.008.106-.016.13-.02.023-.004.038.024.05.078a.934.934 0 0 1 .023.239c.004.101 0 .226-.007.363-.008.137-.02.29-.04.45M30.934 66.89c.242 1.234.562 2.488.945 3.738a41.182 41.182 0 0 0 1.32 3.68 37.438 37.438 0 0 0 1.61 3.425 27.185 27.185 0 0 0 1.816 2.961c.45.633.992 1.313 1.594 2.004a38.232 38.232 0 0 0 1.949 2.074c.687.68 1.395 1.34 2.098 1.942.699.597 1.39 1.144 2.03 1.597.298.208.575.407.825.59.25.184.469.352.649.496.18.141.32.258.41.344.09.082.129.133.105.14-.066.028-.328-.038-.71-.167-.384-.13-.891-.324-1.458-.555a48.612 48.612 0 0 1-1.812-.777 38.066 38.066 0 0 1-7.352-4.297 42.01 42.01 0 0 1-5.043-4.422 44.733 44.733 0 0 1-4.37-5.254 45.026 45.026 0 0 1-3.575-5.941c-.125-.258-.25-.504-.356-.735-.109-.226-.207-.433-.285-.609-.078-.176-.14-.32-.18-.422-.042-.101-.058-.164-.05-.172.008-.008.062-.031.148-.066.09-.035.211-.082.36-.137.144-.05.32-.113.507-.18l.614-.21c.433-.145.988-.297 1.593-.446a39.578 39.578 0 0 1 3.805-.73c.574-.078 1.07-.125 1.434-.133l.23-.004.235-.004.23-.004.234-.004.114.57.109.57.113.567.114.57m8.199-1.87c1.383.238 2.8.59 4.226 1.039 1.426.449 2.856 1 4.27 1.636a42.064 42.064 0 0 1 4.16 2.164c1.348.801 2.648 1.68 3.879 2.621.41.317.95.778 1.547 1.32a69.069 69.069 0 0 1 1.914 1.805c.652.641 1.3 1.293 1.871 1.899a31.34 31.34 0 0 1 1.422 1.586 46.416 46.416 0 0 1 1.726 2.27c.57.796 1.125 1.613 1.622 2.39.5.781.94 1.52 1.285 2.152.343.637.593 1.172.71 1.543l.032.114.035.113.04.113.03.113h-5.511c-1.918 0-3.48-.02-4.801-.078-1.324-.058-2.41-.156-3.371-.312a15.68 15.68 0 0 1-2.63-.653c-.831-.289-1.651-.652-2.581-1.109a20.527 20.527 0 0 1-3.137-1.926 24.776 24.776 0 0 1-2.902-2.523 26.07 26.07 0 0 1-2.528-2.988 24.005 24.005 0 0 1-2.011-3.305 35.404 35.404 0 0 1-1.192-2.649 38.321 38.321 0 0 1-.968-2.66 25.394 25.394 0 0 1-.645-2.39c-.156-.72-.238-1.348-.238-1.832 0-.211 0-.371.011-.489.012-.12.032-.203.079-.257.043-.055.105-.082.203-.098.093-.016.222-.016.39-.016.094 0 .25.012.453.032.204.023.454.05.73.09.278.035.583.078.903.128.32.047.653.102.977.157m84.953.085c.336.06.809.168 1.336.297.523.13 1.101.282 1.64.434.543.152 1.051.305 1.43.43.387.125.649.222.7.273.027.023-.028.184-.149.45-.121.265-.3.632-.527 1.062-.223.433-.493.93-.79 1.457a56.9 56.9 0 0 1-.937 1.633 44.31 44.31 0 0 1-3.473 5.027 46.345 46.345 0 0 1-4.12 4.531 43.203 43.203 0 0 1-4.571 3.848 34.726 34.726 0 0 1-4.82 2.969 42.898 42.898 0 0 1-3.02 1.367c-.469.191-.89.351-1.207.457-.32.105-.535.156-.598.137-.027-.012.004-.055.079-.133.074-.074.195-.18.351-.309.153-.129.348-.281.563-.445.218-.164.465-.344.722-.531a31.987 31.987 0 0 0 3.067-2.473 30.025 30.025 0 0 0 4.992-5.887 32.018 32.018 0 0 0 1.953-3.441c.398-.809.75-1.57 1.059-2.309a30.121 30.121 0 0 0 1.48-4.39c.188-.758.363-1.547.52-2.391l.109-.59.113-.586.11-.59.109-.586h1.133c.156 0 .347.008.566.024.215.012.457.035.703.062a20.21 20.21 0 0 1 1.477.203m-79.191 55.711c.363.23.671.555.917.934.247.379.426.816.536 1.273.109.457.148.938.105 1.407a3.61 3.61 0 0 1-.371 1.336c-.156.304-.332.57-.539.808a3.303 3.303 0 0 1-1.512.996 4.104 4.104 0 0 1-.965.184 4.468 4.468 0 0 1-1.03-.043 3.427 3.427 0 0 1-1.719-.805 4.434 4.434 0 0 1-.696-.77 3.378 3.378 0 0 1-.555-1.284 4.203 4.203 0 0 1-.046-1.434c.066-.48.21-.945.43-1.36.214-.413.507-.78.87-1.058a3.654 3.654 0 0 1 1.059-.555c.383-.132.789-.207 1.2-.222.41-.02.82.023 1.214.12.39.102.766.259 1.102.473m64.375-.195c.175.086.37.23.574.406.199.176.402.38.586.598.187.215.36.438.492.652.133.211.226.407.266.567.019.07.035.168.042.285.012.113.02.25.024.398.004.145 0 .301-.004.457a8.875 8.875 0 0 1-.023.461 3.545 3.545 0 0 1-.774 1.953 3.866 3.866 0 0 1-3.625 1.368 3.584 3.584 0 0 1-1.883-.95 4.289 4.289 0 0 1-.55-.609 2.827 2.827 0 0 1-.352-.637 3.475 3.475 0 0 1-.188-.746 6.793 6.793 0 0 1-.054-.941c0-.352.027-.672.082-.961.05-.293.137-.555.25-.797.117-.242.265-.465.449-.676.188-.21.406-.41.668-.601.25-.188.547-.328.879-.434a4.168 4.168 0 0 1 1.05-.187c.364-.024.735 0 1.09.066.36.062.7.176 1 .328m-31.93.473c.177.125.368.328.556.57.183.242.367.531.527.824.16.293.297.598.394.88a2.5 2.5 0 0 1 .16.737c0 .258-.074.567-.206.895a5.551 5.551 0 0 1-.54.996 6 6 0 0 1-.742.906c-.265.27-.547.489-.816.63a2.93 2.93 0 0 1-1.024.3 3.709 3.709 0 0 1-1.117-.047 3.928 3.928 0 0 1-1.066-.37 3.194 3.194 0 0 1-.871-.669 4.034 4.034 0 0 1-.68-1.012 4.028 4.028 0 0 1-.355-1.12 3.802 3.802 0 0 1-.012-1.153 3.5 3.5 0 0 1 .344-1.094c.187-.363.375-.664.586-.91.21-.242.441-.43.71-.57.266-.14.57-.23.922-.282a6.496 6.496 0 0 1 1.239-.046c.254.011.472.027.664.046.195.024.363.055.515.098a2.284 2.284 0 0 1 .813.39"/></g>%0A <g transform="translate(-68.454 -154.133) scale(4.051)"><path d="M82.117 39.523c-.152.172-.191 2.747-.172 9.192l.059 8.945h4.773l.059-9.039c.039-7.113 0-9.078-.191-9.21-.438-.266-4.278-.192-4.528.112m7.621.117c-.21.4-.265 16.895-.054 17.696.093.398.187.418 2.441.418 1.969 0 2.371-.059 2.465-.305.21-.535.133-17.43-.074-17.828-.192-.324-.422-.363-2.391-.363-1.965 0-2.195.039-2.387.383m7.774-.27c-.075.078-.133.992-.133 2.024v1.867h4.793l-.055-1.965-.058-1.945-2.215-.055c-1.203-.02-2.254.02-2.332.074m50.312.152c-.156.172-.21.88-.172 1.965l.055 1.68h4.777l.055-1.793c.04-1.316-.02-1.852-.191-1.965-.133-.074-1.164-.152-2.27-.152-1.512 0-2.101.078-2.254.265m76.512-.152c-.074.078-.133.992-.133 2.024v1.867h4.793l-.055-1.965-.058-1.945-2.215-.055c-1.203-.02-2.254.02-2.332.074m-86.539 1.527c-.059.172-.117 1.145-.117 2.192v1.887h-.84c-.973 0-1.07.136-1.07 1.601 0 1.184.21 1.45 1.183 1.45h.727v2.042c0 1.145.058 2.899.132 3.907l.118 1.87h1.832l.058.895.055.918h5.54l.058-1.316c.039-.934-.02-1.375-.192-1.469-.133-.098-.781-.172-1.449-.172h-1.187l.039-3.3.058-3.278 1.336-.098 1.336-.093v-2.86l-1.336-.097-1.336-.094-.058-2.156-.055-2.133h-2.352c-1.984 0-2.386.054-2.48.304m-88.414 4.215c-.078.055-.137 4.04-.137 8.848 0 8.14.02 8.75.344 8.883.172.097 1.3.133 2.484.097l2.14-.058v-5.13h3.532c2.695 0 3.535-.058 3.555-.245.02-.117.035-.535.054-.899.02-.668.02-.668 1.032-.722l.996-.059v-8.906l-.594-.113a7.4 7.4 0 0 0-1.05-.114c-.419 0-.458-.078-.458-.86v-.858H55.38l-.059.707c-.054.726-.054.726-.953.78l-.918.06v-1.547h-1.97c-1.085 0-2.042.058-2.097.136m9.031 6.235v3.336l-2.023.058c-1.11.035-2.063.02-2.102-.02-.039-.038-.074-1.562-.074-3.394v-3.3h4.2Zm9.32-5.473c-.054.875-.074.914-.629.875a5.6 5.6 0 0 0-.992.059l-.441.078v8.941l1.012.059.996.054.054.918.059.895 4.91-.04 4.906-.054.059-.918.059-.894h2.082v-4.461c0-4.328-.02-4.485-.383-4.598-.211-.074-.668-.094-1.012-.055-.594.055-.613.036-.707-.8l-.098-.86-4.906-.058-4.91-.04Zm6.914 5.492v3.336h-4.007v-6.676h4.007Zm22.864-6.254c-.075.055-.133 2.934-.133 6.387v6.273l2.351-.058 2.329-.055.058-6.351.035-6.332h-2.25c-1.242 0-2.332.058-2.39.136m6.972 6.196.059 6.351h4.773l.059-4.824.04-4.809h4.007l.039 4.809.059 4.824h4.773l.059-5.379.039-5.379-.996-.054-1.012-.059-.055-.914-.058-.898-3.094.039-3.094.058-.059.703-.058.727h-1.89v-1.527h-3.63Zm17-4.864.055 1.489 3.785.058 3.781.035-.058.918-.059.895-3.148.097-3.153.094-.019.762v.766l-.973.054c-.824.04-.996.133-1.09.477-.152.555-.152 1.773 0 2.879l.133.879h1.832l.059.894.058.918 2.922.055 2.903.058v-1.562l.918.055c.898.058.898.058.953.761l.058.727h3.61V46.922l-.574-.133c-.305-.074-.649-.074-.743-.02-.441.29-.785-.132-.785-.953v-.84h-10.523Zm7.602 7.399v.86h-3.629v-1.716h3.629Zm18.621-8.637c-.055.133-.074 2.992-.055 6.352l.055 6.101h4.777V45.074l-2.351-.058c-1.778-.04-2.367.02-2.426.191m9.168 0a5.3 5.3 0 0 0-.133.914c-.058.668-.058.668-1.07.727l-.992.054.039 4.426.054 4.422.997.059.992.058.058.895.055.898 4.93.055 4.906.039v-1.906h2.101v-8.961h-.742c-1.207 0-1.36-.137-1.36-1.07v-.84h-4.866c-3.746 0-4.91.058-4.969.23m6.973 6.16v3.336h-4.012v-6.676h4.012Zm7.179-6.234c-.054.113-.035 8.406.059 11.894l.02.727h2.367c1.988 0 2.386-.059 2.484-.305.059-.172.113-2.347.113-4.863v-4.574l1.97.054 1.948.059.094 4.766.098 4.77h4.773V46.98l-.957-.094-.953-.098-.094-.855-.097-.86-3.094-.058-3.113-.04v1.528h-1.91v-1.527h-1.798c-.992 0-1.851.078-1.91.156m18.321.075a5 5 0 0 0-.137.914c-.055.668-.055.668-1.05.727l-1.013.054v1.891c0 1.027.059 2 .118 2.172.074.23.379.305 1.03.305h.934l.06.8.058.82 2.73.06 2.711.058v1.695h-3.57c-1.989 0-3.707.074-3.84.172-.172.094-.23.535-.191 1.469l.058 1.316h10.313l.058-.898.055-.895.996-.058.992-.059.059-1.617c.074-2.367.035-2.48-1.11-2.48h-.937l-.055-.821-.058-.8-2.77-.094-2.77-.098v-1.715l3.516-.059c1.95-.02 3.61-.113 3.723-.207.133-.117.191-.726.152-1.527l-.074-1.355h-4.95c-3.8 0-4.984.058-5.038.23m19.902 0c-.04.133-.04.8.035 1.488l.117 1.239 3.684.058 3.668.035v1.91h-6.3v1.715h-2.102v4.176l1.011.059.992.054.06.918.054.914 2.906-.058 2.902-.055.059-.726c.055-.707.074-.707.894-.707.825 0 .844 0 .899.707l.059.726 1.87.055 1.852.058V52.32c0-4.215-.055-5.433-.226-5.453-.137-.02-.594-.039-1.012-.058-.766-.02-.766-.02-.863-.875l-.094-.86-5.176-.058c-4.05-.04-5.215 0-5.289.191m7.504 8.637v.879l-1.758-.059-1.773-.055-.059-.535c-.113-1.011 0-1.086 1.871-1.086h1.719Zm7.449-2.477v6.387h4.719l.113-2.156a67 67 0 0 0 0-8.293l-.113-2.328h-4.719Zm-22.137 2.27c-.152.172-.21.894-.171 2.133l.058 1.89 2.063.055 2.062.058-.058-2.156-.055-2.152-1.836-.059c-1.414-.039-1.89.02-2.063.23m0 0"/></g>%0A</svg>%0A';
233
+
234
+ // src/brand/mark.svg
235
+ var mark_default = 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="15 17.6409 119.9998 114.7498" fill="currentColor"><path fill-rule="evenodd" d="M73.832 19.293a1893.685 1893.685 0 0 0-7.742 9.047c-1.93 2.273-3.274 3.898-4.266 5.156-.988 1.258-1.62 2.149-2.117 2.957-.5.805-.86 1.531-1.309 2.453-.14.285-.277.563-.402.813-.121.254-.238.48-.332.676a20.107 20.107 0 0 1-.34.652c-.008.008-.062 0-.156-.02s-.227-.047-.383-.09c-.16-.039-.351-.09-.558-.148-.207-.059-.43-.121-.668-.191-1.079-.32-1.895-.559-2.684-.743-.79-.18-1.55-.3-2.516-.382-.96-.082-2.129-.121-3.734-.145-1.602-.02-3.64-.023-6.348-.023H35.31l-2.485-.004H30.34v20.574l-.527.059-.524.058-1.055.117c-.59.067-1.203.157-1.84.274-.636.113-1.292.25-1.968.414-.676.16-1.371.348-2.086.555-.715.21-1.445.441-2.195.695-.47.16-1.024.36-1.594.574a64.38 64.38 0 0 0-1.684.649c-.523.207-.992.398-1.328.546-.336.149-.539.246-.539.274 0 .039.07.234.191.535.118.297.29.7.485 1.156.195.453.418.961.644 1.473.227.508.461 1.02.676 1.484a52.041 52.041 0 0 0 9.54 13.926 47.507 47.507 0 0 0 6.14 5.41c2.164 1.59 4.426 2.953 6.75 4.047a51.197 51.197 0 0 0 3.414 1.461c1.129.43 2.242.805 3.36 1.125 1.112.324 2.226.59 3.343.809a39.04 39.04 0 0 0 3.375.504c.84.085 1.781.136 2.777.156a51.632 51.632 0 0 0 6.203-.266 34.786 34.786 0 0 0 2.836-.394 59.177 59.177 0 0 1 2.633-.442c.149-.02.235-.023.246-.015.043.043-.02.195-.152.414a9.01 9.01 0 0 1-.582.812c-.242.313-.527.645-.813.965-.289.316-.582.617-.851.86-.57.519-1.168.968-1.809 1.355-.64.383-1.324.703-2.07.969-.746.261-1.555.464-2.441.617-.891.156-1.856.258-2.926.316-1.36.07-2.582.207-3.703.422-1.118.211-2.13.496-3.07.871-.938.375-1.801.84-2.618 1.403a15.82 15.82 0 0 0-2.351 2 14.205 14.205 0 0 0-1.489 1.765 13.256 13.256 0 0 0-1.148 1.945 15.518 15.518 0 0 0-.856 2.207 20.834 20.834 0 0 0-.59 2.543c-.058.348-.105.61-.156.817-.05.207-.105.36-.183.484a1.184 1.184 0 0 1-.325.332c-.144.106-.332.211-.578.356a9.157 9.157 0 0 0-2.543 2.183 8.797 8.797 0 0 0-1.52 2.813 8.33 8.33 0 0 0-.382 3.113 7.995 7.995 0 0 0 .852 3.098 7.95 7.95 0 0 0 1.574 2.117 9.294 9.294 0 0 0 2.168 1.566c.789.418 1.629.715 2.469.868.84.152 1.68.167 2.472.007a7.941 7.941 0 0 0 1.188-.336c.406-.144.82-.32 1.222-.515.399-.2.79-.418 1.149-.653.36-.234.691-.476.976-.73a6.93 6.93 0 0 0 1.473-1.86c.39-.71.68-1.492.855-2.308.176-.82.243-1.676.188-2.527a8.74 8.74 0 0 0-.531-2.516 5.919 5.919 0 0 0-.68-1.281c-.289-.43-.64-.856-1.031-1.258a10.34 10.34 0 0 0-1.262-1.11 8.299 8.299 0 0 0-1.379-.847c-.414-.2-.722-.352-.95-.492-.226-.137-.366-.27-.44-.43-.075-.16-.083-.352-.043-.613.039-.266.125-.598.242-1.043.226-.871.566-1.695 1.004-2.465a10.426 10.426 0 0 1 3.672-3.754c.77-.46 1.605-.836 2.492-1.102.152-.046.386-.093.675-.144a30.829 30.829 0 0 1 2.246-.273c.43-.043.876-.075 1.317-.102a41.754 41.754 0 0 0 2.773-.25 19.813 19.813 0 0 0 2.243-.406 13.283 13.283 0 0 0 1.918-.621c.609-.246 1.199-.536 1.804-.88a20.824 20.824 0 0 0 1.774-1.116c.539-.383 1.031-.786 1.511-1.227.48-.445.942-.934 1.415-1.488.468-.559.953-1.18 1.468-1.899l.309-.426.308-.43.313-.429.309-.426v19.633l-.399.262-.402.265-.797.532a11.66 11.66 0 0 0-1.567 1.21c-.44.41-.808.837-1.113 1.305-.305.465-.55.97-.746 1.535-.2.567-.351 1.192-.473 1.903a7.401 7.401 0 0 0 .024 2.574 8.502 8.502 0 0 0 2.441 4.543 7.787 7.787 0 0 0 2.157 1.496c.804.367 1.632.61 2.46.715.829.105 1.66.082 2.47-.07a7.963 7.963 0 0 0 2.343-.828 8.831 8.831 0 0 0 2.094-1.567c.406-.402.738-.789 1.011-1.18.27-.394.48-.796.641-1.234.156-.441.266-.918.336-1.473.07-.55.102-1.171.105-1.894 0-.524 0-.93-.011-1.266a6.504 6.504 0 0 0-.074-.836 3.967 3.967 0 0 0-.192-.683c-.09-.23-.207-.485-.355-.805a7.845 7.845 0 0 0-1.594-2.262 8.117 8.117 0 0 0-1.07-.879 9.342 9.342 0 0 0-1.254-.718l-.348-.164-.348-.16-.343-.165-.348-.164v-4.957l-.004-2.476v-2.48c0-1.36.004-2.657.012-3.833.008-1.176.02-2.23.035-3.11.016-.882.035-1.589.055-2.07.02-.48.043-.734.066-.707.02.028.074.102.156.208l.301.421c.121.168.258.364.406.575.145.207.305.433.461.664.38.543.735 1.027 1.09 1.468.352.438.703.832 1.063 1.2.363.367.742.707 1.148 1.039.406.328.844.652 1.332.98.777.528 1.5.965 2.223 1.328.718.364 1.437.657 2.203.89.765.235 1.582.411 2.496.544.914.137 1.93.23 3.094.3.433.024.867.055 1.289.087a40.742 40.742 0 0 1 2.148.215c.27.035.477.07.602.101.965.234 1.898.64 2.761 1.168a11.119 11.119 0 0 1 2.34 1.93 10.355 10.355 0 0 1 1.688 2.437c.43.867.707 1.781.805 2.695l.03.313.032.309.035.316.031.309-.27.14-.538.274-.274.136c-.828.426-1.558.922-2.183 1.493a7.954 7.954 0 0 0-1.54 1.91 7.731 7.731 0 0 0-.87 2.273 9.264 9.264 0 0 0-.172 2.594c.066.96.285 1.871.64 2.703a7.903 7.903 0 0 0 1.446 2.258 8.316 8.316 0 0 0 2.14 1.683c.817.45 1.727.782 2.715.98 1.309.255 2.617.126 3.836-.3a8.813 8.813 0 0 0 3.266-2.05 8.893 8.893 0 0 0 2.117-3.239c.453-1.21.613-2.527.387-3.848a9.06 9.06 0 0 0-1.504-3.644 9.344 9.344 0 0 0-1.301-1.477 8.97 8.97 0 0 0-1.61-1.16c-.18-.097-.347-.2-.507-.293-.16-.097-.305-.183-.434-.265-.125-.082-.23-.153-.312-.211a.573.573 0 0 1-.137-.121.813.813 0 0 1-.063-.184c-.027-.094-.058-.223-.097-.375a11.147 11.147 0 0 1-.11-.512c-.039-.187-.082-.39-.12-.594-.098-.5-.227-1.023-.383-1.554a19.7 19.7 0 0 0-.551-1.594c-.207-.527-.43-1.039-.668-1.512a12.868 12.868 0 0 0-.735-1.3 12.93 12.93 0 0 0-1.582-1.954 15.064 15.064 0 0 0-1.98-1.691 15.833 15.833 0 0 0-2.27-1.355 14.35 14.35 0 0 0-2.449-.934 9.33 9.33 0 0 0-.836-.188 25.72 25.72 0 0 0-1.094-.18 40.224 40.224 0 0 0-2.605-.269 51.614 51.614 0 0 1-1.281-.11 47.27 47.27 0 0 1-1.242-.128 37.65 37.65 0 0 1-1.067-.14 12.643 12.643 0 0 1-.746-.133 11.48 11.48 0 0 1-1.508-.458c-.5-.187-.996-.414-1.472-.668a12.371 12.371 0 0 1-2.606-1.847 16.117 16.117 0 0 1-1.676-1.836 5.604 5.604 0 0 1-.465-.707c-.097-.192-.125-.324-.074-.375.016-.016.117-.012.285.004.168.015.407.047.696.09.293.039.633.093 1.008.156.37.062.78.137 1.207.215a60.65 60.65 0 0 0 1.789.304c.527.079 1.011.133 1.535.172.523.04 1.09.063 1.777.078.692.016 1.504.02 2.527.024 1.22 0 2.204-.008 3.06-.031a27.474 27.474 0 0 0 2.257-.153 20.662 20.662 0 0 0 2.047-.336 48.885 48.885 0 0 0 2.426-.59 44.634 44.634 0 0 0 5.347-1.761 42.256 42.256 0 0 0 4.98-2.387 43.059 43.059 0 0 0 4.633-3.031 46.976 46.976 0 0 0 4.329-3.692 55.822 55.822 0 0 0 3.312-3.468 49.244 49.244 0 0 0 2.879-3.63 50.142 50.142 0 0 0 2.516-3.886 57.29 57.29 0 0 0 2.23-4.258c.375-.793.691-1.48.95-2.066.257-.59.46-1.078.613-1.473.144-.398.242-.7.285-.918.047-.219.039-.351-.016-.402-.078-.07-.41-.23-.902-.442a57.272 57.272 0 0 0-1.828-.73c-.692-.262-1.434-.535-2.121-.777a36.517 36.517 0 0 0-1.778-.586 54.289 54.289 0 0 0-3.531-.879 48.341 48.341 0 0 0-1.715-.332 23.874 23.874 0 0 0-1.465-.215l-.633-.07-.312-.04-.316-.035V39.301l-2.461.004h-2.461l-2.457.004h-2.461c-2.645.004-4.664.007-6.266.03-1.605.024-2.797.067-3.789.141-.992.079-1.789.192-2.598.356-.812.164-1.64.383-2.703.668a23.531 23.531 0 0 1-1.203.3c-.16.036-.289.06-.383.075-.093.016-.148.02-.156.008a29.962 29.962 0 0 1-.355-.672c-.102-.2-.22-.434-.348-.692a79.19 79.19 0 0 1-.418-.828c-.45-.902-.785-1.578-1.168-2.234-.379-.66-.805-1.297-1.422-2.117-.617-.817-1.433-1.82-2.594-3.203-1.16-1.387-2.671-3.153-4.68-5.508-1.398-1.64-2.53-2.961-3.44-4.02a272.265 272.265 0 0 0-2.122-2.441c-.523-.59-.875-.973-1.11-1.211-.237-.234-.355-.324-.402-.32-.015 0-.07.047-.156.132-.086.086-.199.207-.34.356-.136.148-.296.328-.472.523-.172.2-.364.414-.555.641m7.059 11.504a151.52 151.52 0 0 1 3.582 4.336 58.05 58.05 0 0 1 2.488 3.336c.66.965 1.16 1.793 1.516 2.515.355.72.57 1.332.66 1.868.023.14.039.25.031.347a.526.526 0 0 1-.09.262 1.205 1.205 0 0 1-.266.262c-.12.093-.285.199-.492.332-.332.21-.773.554-1.265.976-.493.426-1.043.934-1.594 1.473a43.455 43.455 0 0 0-1.625 1.672 25.487 25.487 0 0 0-1.348 1.574c-.398.512-.812 1.09-1.222 1.703a39.76 39.76 0 0 0-1.204 1.91 39.73 39.73 0 0 0-1.085 1.946c-.329.636-.622 1.25-.86 1.812-.34.809-.672 1.727-.976 2.688-.305.96-.582 1.964-.817 2.945-.234.984-.43 1.945-.562 2.816-.137.871-.215 1.653-.215 2.282-.004.609-.024 1.054-.055 1.332-.035.277-.086.386-.152.328-.067-.055-.149-.278-.246-.664a26.572 26.572 0 0 1-.336-1.66 76.29 76.29 0 0 0-.54-2.758 81.86 81.86 0 0 0-.624-2.66c-.211-.844-.43-1.637-.645-2.34a22.878 22.878 0 0 0-.617-1.801 24.472 24.472 0 0 0-.742-1.66 48.94 48.94 0 0 0-2.047-3.746c-.36-.59-.707-1.13-1.027-1.582a21.393 21.393 0 0 0-1.153-1.446 44.776 44.776 0 0 0-1.558-1.71 47.283 47.283 0 0 0-1.657-1.657c-.539-.512-1.043-.96-1.468-1.3-.172-.141-.34-.278-.489-.41a8.144 8.144 0 0 1-.402-.376 3.846 3.846 0 0 1-.27-.293c-.066-.082-.101-.144-.101-.176 0-.105.098-.378.262-.753.16-.372.386-.848.644-1.356.258-.508.547-1.05.828-1.562a24.735 24.735 0 0 1 1.582-2.508c.262-.371.543-.746.871-1.16.329-.418.7-.871 1.149-1.407.45-.535.973-1.144 1.601-1.87.235-.27.536-.614.875-1.005.336-.394.715-.832 1.114-1.293.394-.46.808-.937 1.215-1.41.402-.472.8-.933 1.168-1.363l.668-.777.668-.774.667-.777.665-.778.117.118.113.12.117.118.113.117a110.75 110.75 0 0 1 1.668 1.914l1.555 1.809c.57.664 1.184 1.383 1.813 2.12M51.227 44.149c.425.09.867.2 1.304.317.434.117.864.242 1.254.37.395.13.754.259 1.055.38.297.12.535.234.687.332.051.035.09.094.11.191.02.098.023.239.011.442-.015.199-.046.457-.097.793-.055.336-.125.75-.215 1.257-.094.524-.172.989-.23 1.446-.06.457-.106.91-.137 1.41a32.68 32.68 0 0 0-.067 1.7c-.011.648-.015 1.401-.015 2.312 0 .98.004 1.761.015 2.414.012.648.035 1.172.07 1.644.04.473.09.89.165 1.336.07.446.164.918.285 1.488.074.348.156.72.242 1.094.082.375.168.754.254 1.11.086.359.168.695.242.992.074.3.14.554.195.75.055.195.102.383.149.554.043.172.082.329.113.461.031.13.059.239.07.317.016.078.02.125.012.133a.942.942 0 0 1-.183-.079 35.955 35.955 0 0 1-1.148-.629c-.255-.144-.532-.304-.821-.472a95.651 95.651 0 0 0-2.031-1.152 44.616 44.616 0 0 0-1.723-.899 34 34 0 0 0-1.633-.75 44.224 44.224 0 0 0-1.762-.715 50.86 50.86 0 0 0-2.855-1.004 45.68 45.68 0 0 0-2.8-.793 39.106 39.106 0 0 0-2.653-.562 26.924 26.924 0 0 0-2.406-.309l-.426-.03-.426-.036-.426-.031-.426-.035V43.758h7.215c1.578.004 2.832.008 3.852.015 1.02.012 1.8.028 2.437.055a20.37 20.37 0 0 1 1.547.117c.43.051.797.117 1.196.203m64.886 7.493c0 1.23-.008 2.34-.015 3.312-.008.977-.02 1.817-.04 2.504-.015.691-.038 1.23-.062 1.602-.023.367-.05.57-.082.59a1.259 1.259 0 0 1-.281.07c-.153.031-.367.062-.617.101-.254.035-.547.078-.868.117-.32.043-.664.083-1.02.122-.765.086-1.538.199-2.323.343-.79.141-1.59.313-2.407.516-.816.203-1.652.434-2.503.7-.856.26-1.73.558-2.625.882-.735.266-1.305.477-1.801.672-.496.195-.918.375-1.348.578-.43.203-.867.43-1.398.723-.528.289-1.149.644-1.946 1.101a34.54 34.54 0 0 1-1.644.895 9.035 9.035 0 0 1-.528.242c-.128.055-.21.074-.226.059-.016-.016-.02-.082-.012-.184a5.49 5.49 0 0 1 .055-.422c.031-.172.066-.371.113-.59.043-.219.098-.457.156-.699.258-1.082.454-1.906.602-2.613.152-.703.258-1.282.332-1.867.078-.583.125-1.172.156-1.895.035-.723.059-1.578.086-2.695.024-.98.04-1.77.043-2.434.004-.66-.004-1.2-.027-1.684a17.76 17.76 0 0 0-.113-1.355 29.95 29.95 0 0 0-.223-1.445c-.152-.887-.27-1.543-.336-2.035-.066-.493-.086-.825-.04-1.059a.664.664 0 0 1 .333-.492c.18-.117.437-.207.781-.336.692-.266 1.29-.469 1.926-.63.637-.16 1.309-.276 2.152-.358.84-.082 1.852-.133 3.164-.16 1.309-.032 2.922-.044 4.965-.047l3.813-.008h1.902l1.906-.004v7.883m-25.05-2.368c.195 1.02.343 1.977.437 2.91.098.934.14 1.837.133 2.75a25.621 25.621 0 0 1-.18 2.797c-.11.961-.273 1.961-.488 3.036a39.395 39.395 0 0 1-.746 3.12 31.161 31.161 0 0 1-.946 2.829c-.355.906-.75 1.781-1.187 2.64a30.9 30.9 0 0 1-1.473 2.555c-.215.34-.597.86-1.074 1.469a76.18 76.18 0 0 1-1.625 2.012 79.82 79.82 0 0 1-1.73 2.011 30.987 30.987 0 0 1-1.387 1.489l-.258.25-.262.254-.257.253-.262.254.02-1.62.023-1.622.02-1.617.019-1.621c.02-1.414.035-2.543.058-3.465.02-.922.047-1.637.082-2.227.036-.59.082-1.054.141-1.472.059-.422.133-.797.227-1.211a38.117 38.117 0 0 1 1.086-3.91c.418-1.235.89-2.403 1.433-3.524a28.68 28.68 0 0 1 1.82-3.222 31.184 31.184 0 0 1 2.258-3.012 18.08 18.08 0 0 1 1.012-1.086c.367-.363.746-.715 1.106-1.023.355-.31.69-.575.964-.762.27-.188.48-.297.59-.297.035 0 .07.031.11.086.039.05.078.129.12.226a4.214 4.214 0 0 1 .216.75m-28.895.91c.914.915 1.738 1.86 2.488 2.86a25.52 25.52 0 0 1 2.028 3.187 30.027 30.027 0 0 1 1.636 3.645 42.64 42.64 0 0 1 1.32 4.23c.122.485.22.872.294 1.274.074.406.125.832.164 1.387.043.554.07 1.242.09 2.171.023.934.039 2.11.058 3.645.02 1.441.035 2.566.04 3.438.003.87 0 1.488-.016 1.921-.016.434-.043.68-.086.813-.04.129-.094.14-.16.101-.106-.058-.376-.324-.743-.722-.367-.399-.84-.926-1.34-1.512a82.643 82.643 0 0 1-1.539-1.832 48.185 48.185 0 0 1-1.34-1.695c-.34-.45-.722-1.031-1.117-1.688a40.534 40.534 0 0 1-1.183-2.125 43.623 43.623 0 0 1-1.075-2.207 21.82 21.82 0 0 1-.773-1.933c-.07-.215-.152-.477-.238-.762-.082-.29-.172-.602-.258-.922a49.961 49.961 0 0 1-.461-1.844c-.187-.86-.316-2.113-.395-3.508a62.606 62.606 0 0 1-.066-4.378c.027-1.434.106-2.762.227-3.735.12-.969.285-1.578.492-1.578.023 0 .097.05.21.14.11.09.259.22.438.38a44.358 44.358 0 0 1 1.305 1.25m53.23 15.39a24.897 24.897 0 0 1-.965 4.492 26.72 26.72 0 0 1-.824 2.25 33.11 33.11 0 0 1-1.058 2.305c-.344.676-.66 1.262-.98 1.805-.321.543-.641 1.035-.997 1.523-.351.485-.734.961-1.18 1.473-.445.508-.953 1.05-1.542 1.66a35.204 35.204 0 0 1-1.579 1.54c-.496.448-.976.847-1.468 1.21-.493.367-1 .703-1.551 1.031-.55.328-1.145.649-1.817.989-.84.421-1.624.761-2.445 1.03a15.58 15.58 0 0 1-2.683.626c-1.004.152-2.145.25-3.532.308-1.382.063-3.011.082-4.98.082H82.18l.03-.113.036-.113.031-.113.035-.114c.055-.199.243-.582.516-1.074.274-.496.633-1.101 1.027-1.746.399-.645.836-1.324 1.266-1.969.43-.644.852-1.25 1.219-1.746a44.604 44.604 0 0 1 5.883-6.445 41.569 41.569 0 0 1 6.812-4.977 38.048 38.048 0 0 1 7.477-3.36 34.711 34.711 0 0 1 7.886-1.585c.11-.008.22-.02.325-.027.105-.008.203-.02.293-.028.09-.008.164-.02.226-.023.063-.008.106-.016.13-.02.023-.004.038.024.05.078a.934.934 0 0 1 .023.239c.004.101 0 .226-.007.363-.008.137-.02.29-.04.45M30.934 66.89c.242 1.234.562 2.488.945 3.738a41.182 41.182 0 0 0 1.32 3.68 37.438 37.438 0 0 0 1.61 3.425 27.185 27.185 0 0 0 1.816 2.961c.45.633.992 1.313 1.594 2.004a38.232 38.232 0 0 0 1.949 2.074c.687.68 1.395 1.34 2.098 1.942.699.597 1.39 1.144 2.03 1.597.298.208.575.407.825.59.25.184.469.352.649.496.18.141.32.258.41.344.09.082.129.133.105.14-.066.028-.328-.038-.71-.167-.384-.13-.891-.324-1.458-.555a48.612 48.612 0 0 1-1.812-.777 38.066 38.066 0 0 1-7.352-4.297 42.01 42.01 0 0 1-5.043-4.422 44.733 44.733 0 0 1-4.37-5.254 45.026 45.026 0 0 1-3.575-5.941c-.125-.258-.25-.504-.356-.735-.109-.226-.207-.433-.285-.609-.078-.176-.14-.32-.18-.422-.042-.101-.058-.164-.05-.172.008-.008.062-.031.148-.066.09-.035.211-.082.36-.137.144-.05.32-.113.507-.18l.614-.21c.433-.145.988-.297 1.593-.446a39.578 39.578 0 0 1 3.805-.73c.574-.078 1.07-.125 1.434-.133l.23-.004.235-.004.23-.004.234-.004.114.57.109.57.113.567.114.57m8.199-1.87c1.383.238 2.8.59 4.226 1.039 1.426.449 2.856 1 4.27 1.636a42.064 42.064 0 0 1 4.16 2.164c1.348.801 2.648 1.68 3.879 2.621.41.317.95.778 1.547 1.32a69.069 69.069 0 0 1 1.914 1.805c.652.641 1.3 1.293 1.871 1.899a31.34 31.34 0 0 1 1.422 1.586 46.416 46.416 0 0 1 1.726 2.27c.57.796 1.125 1.613 1.622 2.39.5.781.94 1.52 1.285 2.152.343.637.593 1.172.71 1.543l.032.114.035.113.04.113.03.113h-5.511c-1.918 0-3.48-.02-4.801-.078-1.324-.058-2.41-.156-3.371-.312a15.68 15.68 0 0 1-2.63-.653c-.831-.289-1.651-.652-2.581-1.109a20.527 20.527 0 0 1-3.137-1.926 24.776 24.776 0 0 1-2.902-2.523 26.07 26.07 0 0 1-2.528-2.988 24.005 24.005 0 0 1-2.011-3.305 35.404 35.404 0 0 1-1.192-2.649 38.321 38.321 0 0 1-.968-2.66 25.394 25.394 0 0 1-.645-2.39c-.156-.72-.238-1.348-.238-1.832 0-.211 0-.371.011-.489.012-.12.032-.203.079-.257.043-.055.105-.082.203-.098.093-.016.222-.016.39-.016.094 0 .25.012.453.032.204.023.454.05.73.09.278.035.583.078.903.128.32.047.653.102.977.157m84.953.085c.336.06.809.168 1.336.297.523.13 1.101.282 1.64.434.543.152 1.051.305 1.43.43.387.125.649.222.7.273.027.023-.028.184-.149.45-.121.265-.3.632-.527 1.062-.223.433-.493.93-.79 1.457a56.9 56.9 0 0 1-.937 1.633 44.31 44.31 0 0 1-3.473 5.027 46.345 46.345 0 0 1-4.12 4.531 43.203 43.203 0 0 1-4.571 3.848 34.726 34.726 0 0 1-4.82 2.969 42.898 42.898 0 0 1-3.02 1.367c-.469.191-.89.351-1.207.457-.32.105-.535.156-.598.137-.027-.012.004-.055.079-.133.074-.074.195-.18.351-.309.153-.129.348-.281.563-.445.218-.164.465-.344.722-.531a31.987 31.987 0 0 0 3.067-2.473 30.025 30.025 0 0 0 4.992-5.887 32.018 32.018 0 0 0 1.953-3.441c.398-.809.75-1.57 1.059-2.309a30.121 30.121 0 0 0 1.48-4.39c.188-.758.363-1.547.52-2.391l.109-.59.113-.586.11-.59.109-.586h1.133c.156 0 .347.008.566.024.215.012.457.035.703.062a20.21 20.21 0 0 1 1.477.203m-79.191 55.711c.363.23.671.555.917.934.247.379.426.816.536 1.273.109.457.148.938.105 1.407a3.61 3.61 0 0 1-.371 1.336c-.156.304-.332.57-.539.808a3.303 3.303 0 0 1-1.512.996 4.104 4.104 0 0 1-.965.184 4.468 4.468 0 0 1-1.03-.043 3.427 3.427 0 0 1-1.719-.805 4.434 4.434 0 0 1-.696-.77 3.378 3.378 0 0 1-.555-1.284 4.203 4.203 0 0 1-.046-1.434c.066-.48.21-.945.43-1.36.214-.413.507-.78.87-1.058a3.654 3.654 0 0 1 1.059-.555c.383-.132.789-.207 1.2-.222.41-.02.82.023 1.214.12.39.102.766.259 1.102.473m64.375-.195c.175.086.37.23.574.406.199.176.402.38.586.598.187.215.36.438.492.652.133.211.226.407.266.567.019.07.035.168.042.285.012.113.02.25.024.398.004.145 0 .301-.004.457a8.875 8.875 0 0 1-.023.461 3.545 3.545 0 0 1-.774 1.953 3.866 3.866 0 0 1-3.625 1.368 3.584 3.584 0 0 1-1.883-.95 4.289 4.289 0 0 1-.55-.609 2.827 2.827 0 0 1-.352-.637 3.475 3.475 0 0 1-.188-.746 6.793 6.793 0 0 1-.054-.941c0-.352.027-.672.082-.961.05-.293.137-.555.25-.797.117-.242.265-.465.449-.676.188-.21.406-.41.668-.601.25-.188.547-.328.879-.434a4.168 4.168 0 0 1 1.05-.187c.364-.024.735 0 1.09.066.36.062.7.176 1 .328m-31.93.473c.177.125.368.328.556.57.183.242.367.531.527.824.16.293.297.598.394.88a2.5 2.5 0 0 1 .16.737c0 .258-.074.567-.206.895a5.551 5.551 0 0 1-.54.996 6 6 0 0 1-.742.906c-.265.27-.547.489-.816.63a2.93 2.93 0 0 1-1.024.3 3.709 3.709 0 0 1-1.117-.047 3.928 3.928 0 0 1-1.066-.37 3.194 3.194 0 0 1-.871-.669 4.034 4.034 0 0 1-.68-1.012 4.028 4.028 0 0 1-.355-1.12 3.802 3.802 0 0 1-.012-1.153 3.5 3.5 0 0 1 .344-1.094c.187-.363.375-.664.586-.91.21-.242.441-.43.71-.57.266-.14.57-.23.922-.282a6.496 6.496 0 0 1 1.239-.046c.254.011.472.027.664.046.195.024.363.055.515.098a2.284 2.284 0 0 1 .813.39"/></svg>%0A';
236
+
237
+ // src/primitives/BrandMark.tsx
238
+ var import_jsx_runtime4 = require("react/jsx-runtime");
239
+ var mask = (url) => ({
240
+ WebkitMask: `url('${url}') center / contain no-repeat`,
241
+ mask: `url('${url}') center / contain no-repeat`
242
+ });
243
+ var MASKS = { mark: mask(mark_default), lockup: mask(lockup_horizontal_default) };
244
+ function BrandMark({ variant = "mark", className }) {
245
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
246
+ "span",
247
+ {
248
+ "aria-hidden": "true",
249
+ className: cn(
250
+ "polli:block polli:shrink-0 polli:bg-current",
251
+ className
252
+ ),
253
+ style: MASKS[variant]
254
+ }
255
+ );
256
+ }
257
+
258
+ // src/primitives/Dialog.tsx
259
+ var import_dialog = require("@ark-ui/react/dialog");
260
+ var import_portal = require("@ark-ui/react/portal");
261
+ var import_react2 = require("react");
262
+
263
+ // src/primitives/ScrollArea.tsx
264
+ var import_react = require("react");
265
+ var import_jsx_runtime5 = require("react/jsx-runtime");
266
+ var axisClasses = {
267
+ y: "polli:overflow-y-auto polli:overflow-x-hidden",
268
+ x: "polli:overflow-x-auto polli:overflow-y-hidden",
269
+ both: "polli:overflow-auto"
270
+ };
271
+ function assignRef(ref, value) {
272
+ if (typeof ref === "function") ref(value);
273
+ else if (ref) ref.current = value;
274
+ }
275
+ var ScrollArea = (0, import_react.forwardRef)(
276
+ ({ axis = "y", scrollbar = "subtle", className, children, ...rest }, externalRef) => {
277
+ const innerRef = (0, import_react.useRef)(null);
278
+ const setRef = (0, import_react.useCallback)(
279
+ (node) => {
280
+ innerRef.current = node;
281
+ assignRef(externalRef, node);
282
+ },
283
+ [externalRef]
284
+ );
285
+ (0, import_react.useEffect)(() => {
286
+ if (scrollbar === "native") return;
287
+ const element = innerRef.current;
288
+ if (!element) return;
289
+ let hideTimer = null;
290
+ const clearHideTimer = () => {
291
+ if (hideTimer !== null) {
292
+ window.clearTimeout(hideTimer);
293
+ hideTimer = null;
294
+ }
295
+ };
296
+ const show = () => {
297
+ element.dataset.scrollbarActive = "true";
298
+ clearHideTimer();
299
+ };
300
+ const hide = () => {
301
+ element.dataset.scrollbarActive = "false";
302
+ clearHideTimer();
303
+ };
304
+ const scheduleHide = () => {
305
+ clearHideTimer();
306
+ hideTimer = window.setTimeout(hide, 2e3);
307
+ };
308
+ const handleInteraction = () => {
309
+ show();
310
+ scheduleHide();
311
+ };
312
+ hide();
313
+ element.addEventListener("scroll", handleInteraction, {
314
+ passive: true
315
+ });
316
+ element.addEventListener("wheel", handleInteraction, {
317
+ passive: true
318
+ });
319
+ element.addEventListener("touchstart", handleInteraction, {
320
+ passive: true
321
+ });
322
+ element.addEventListener("pointerdown", handleInteraction);
323
+ element.addEventListener("keydown", handleInteraction);
324
+ element.addEventListener("focusin", handleInteraction);
325
+ element.addEventListener("focusout", scheduleHide);
326
+ return () => {
327
+ clearHideTimer();
328
+ element.removeEventListener("scroll", handleInteraction);
329
+ element.removeEventListener("wheel", handleInteraction);
330
+ element.removeEventListener("touchstart", handleInteraction);
331
+ element.removeEventListener("pointerdown", handleInteraction);
332
+ element.removeEventListener("keydown", handleInteraction);
333
+ element.removeEventListener("focusin", handleInteraction);
334
+ element.removeEventListener("focusout", scheduleHide);
335
+ };
336
+ }, [scrollbar]);
337
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
338
+ "div",
339
+ {
340
+ ...rest,
341
+ ref: setRef,
342
+ className: cn(
343
+ scrollbar === "subtle" && "polli-scrollbar-subtle",
344
+ "polli:min-w-0 polli:max-w-full",
345
+ axisClasses[axis],
346
+ className
347
+ ),
348
+ children
349
+ }
350
+ );
351
+ }
352
+ );
353
+ ScrollArea.displayName = "ScrollArea";
354
+
355
+ // src/primitives/Dialog.tsx
356
+ var import_jsx_runtime6 = require("react/jsx-runtime");
49
357
  var sizeClasses = {
50
358
  sm: "polli:max-w-md",
51
359
  md: "polli:max-w-xl",
52
- lg: "polli:max-w-2xl"
360
+ lg: "polli:max-w-[800px]",
361
+ xl: "polli:max-w-6xl"
53
362
  };
54
363
  var Dialog = ({
55
364
  open,
@@ -58,26 +367,24 @@ var Dialog = ({
58
367
  triggerAsChild = false,
59
368
  triggerClassName,
60
369
  title,
61
- titleClassName,
62
370
  ariaLabel,
63
371
  labelledBy,
64
- theme = "blue",
65
372
  size = "md",
66
373
  showBackdrop = true,
67
- backdropClassName,
374
+ backdropBlur = true,
68
375
  positionerClassName,
69
376
  contentClassName,
70
377
  children
71
378
  }) => {
72
- const contentRef = (0, import_react.useRef)(null);
73
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
379
+ const contentRef = (0, import_react2.useRef)(null);
380
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
74
381
  import_dialog.Dialog.Root,
75
382
  {
76
383
  open,
77
384
  initialFocusEl: () => contentRef.current,
78
385
  onOpenChange: (details) => onOpenChange?.(details.open),
79
386
  children: [
80
- trigger && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
387
+ trigger && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
81
388
  import_dialog.Dialog.Trigger,
82
389
  {
83
390
  asChild: triggerAsChild,
@@ -85,47 +392,38 @@ var Dialog = ({
85
392
  children: trigger
86
393
  }
87
394
  ),
88
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_portal.Portal, { children: [
89
- showBackdrop && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
395
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_portal.Portal, { children: [
396
+ showBackdrop && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
90
397
  import_dialog.Dialog.Backdrop,
91
398
  {
92
399
  className: cn(
93
- "polli:fixed polli:inset-0 polli:z-[100] polli:bg-ink-950/50",
94
- backdropClassName
400
+ "polli:fixed polli:inset-0 polli:z-[calc(100_+_var(--layer-index,0)_*_20)] polli:bg-[#000]/50",
401
+ backdropBlur && "polli:backdrop-blur-sm"
95
402
  )
96
403
  }
97
404
  ),
98
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
405
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
99
406
  import_dialog.Dialog.Positioner,
100
407
  {
101
- "data-theme": theme,
102
408
  className: cn(
103
- "polli:fixed polli:inset-0 polli:z-[110] polli:flex polli:h-dvh polli:items-start polli:justify-center polli:overflow-hidden polli:p-4",
409
+ "polli:fixed polli:inset-0 polli:z-[calc(110_+_var(--layer-index,0)_*_20)] polli:flex polli:max-h-dvh polli:items-start polli:justify-center polli:overflow-hidden polli:p-4",
410
+ "polli-dialog-mobile-positioner",
104
411
  positionerClassName
105
412
  ),
106
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
413
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
107
414
  import_dialog.Dialog.Content,
108
415
  {
109
416
  ref: contentRef,
110
- "data-theme": theme,
111
417
  "aria-label": ariaLabel,
112
418
  "aria-labelledby": labelledBy,
113
419
  className: cn(
114
- "polli:my-auto polli:w-full polli:overflow-hidden polli:rounded-lg polli:border-2 polli:border-theme-border polli:bg-surface-opaque polli:shadow-lg polli:outline-none polli:focus:outline-none polli:focus-visible:outline-none",
420
+ "polli:my-auto polli:flex polli:h-auto polli:max-h-full polli:w-full polli:flex-col polli:overflow-y-auto polli:rounded-block polli:bg-surface-block polli:outline-none polli:focus:outline-none polli:focus-visible:outline-none",
421
+ "polli-dialog-mobile-page",
115
422
  sizeClasses[size],
116
423
  contentClassName
117
424
  ),
118
425
  children: [
119
- title && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
120
- DialogTitle,
121
- {
122
- className: cn(
123
- "polli:px-6 polli:pt-6 polli:font-subheading polli:text-xl polli:text-theme-text-strong",
124
- titleClassName
125
- ),
126
- children: title
127
- }
128
- ),
426
+ title && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DialogHeader, { title }),
129
427
  children
130
428
  ]
131
429
  }
@@ -138,95 +436,1077 @@ var Dialog = ({
138
436
  );
139
437
  };
140
438
  var DialogTitle = import_dialog.Dialog.Title;
439
+ var DialogDescription = import_dialog.Dialog.Description;
440
+ var DialogHeader = ({
441
+ title,
442
+ description,
443
+ children,
444
+ inBody = false,
445
+ className,
446
+ titleClassName,
447
+ descriptionClassName,
448
+ ...props
449
+ }) => {
450
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
451
+ "div",
452
+ {
453
+ className: cn(
454
+ inBody ? "polli:shrink-0 polli:pt-2 polli:pb-4" : "polli:shrink-0 polli:px-(--polli-dialog-gutter) polli:pt-6 polli:pb-4",
455
+ className
456
+ ),
457
+ ...props,
458
+ children: [
459
+ title && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
460
+ DialogTitle,
461
+ {
462
+ className: cn(headingClassName("section"), titleClassName),
463
+ children: title
464
+ }
465
+ ),
466
+ description && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
467
+ DialogDescription,
468
+ {
469
+ className: cn(
470
+ "polli:mt-1 polli:font-body polli:text-sm polli:font-normal polli:leading-5 polli:text-theme-text-base",
471
+ descriptionClassName
472
+ ),
473
+ children: description
474
+ }
475
+ ),
476
+ children
477
+ ]
478
+ }
479
+ );
480
+ };
481
+ function DialogBody({
482
+ children,
483
+ actions,
484
+ footnote,
485
+ bodyClassName,
486
+ className,
487
+ ...props
488
+ }) {
489
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
490
+ ScrollArea,
491
+ {
492
+ ...props,
493
+ className: cn(
494
+ "polli:flex polli:min-h-0 polli:flex-1 polli:flex-col polli:overscroll-contain",
495
+ className
496
+ ),
497
+ children: [
498
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
499
+ "div",
500
+ {
501
+ className: cn(
502
+ "polli:space-y-3 polli:px-(--polli-dialog-gutter) polli:py-4",
503
+ bodyClassName
504
+ ),
505
+ children
506
+ }
507
+ ),
508
+ (actions || footnote) && // The size container lets the footer follow the dialog's width.
509
+ // It sits on the footer alone so pickers and tooltips in the
510
+ // body keep their positioning.
511
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "polli-dialog-floating-controls polli:@container polli:pointer-events-none polli:sticky polli:bottom-0 polli:z-10", children: [
512
+ actions && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DialogFooter, { className: "polli:pointer-events-auto", children: actions }),
513
+ footnote && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: "polli:pointer-events-auto", children: footnote })
514
+ ] })
515
+ ]
516
+ }
517
+ );
518
+ }
519
+ var DialogFooter = ({
520
+ children,
521
+ className,
522
+ ...props
523
+ }) => {
524
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
525
+ "div",
526
+ {
527
+ className: cn(
528
+ "polli:flex polli:shrink-0 polli:flex-wrap polli:items-center polli:justify-end polli:gap-3 polli:bg-transparent polli:px-(--polli-dialog-gutter) polli:pt-4 polli:pb-6",
529
+ // Actions are the screen's main controls: touch-sized, sharing
530
+ // the row in a narrow dialog (below 36rem, phones included), and
531
+ // spanning it when there is only one.
532
+ "polli:[&>.polli-control]:min-h-12 polli:[&>.polli-control]:text-base polli:@max-xl:[&>.polli-control]:flex-auto polli:[&>.polli-control:only-child]:flex-auto",
533
+ className
534
+ ),
535
+ ...props,
536
+ children
537
+ }
538
+ );
539
+ };
141
540
 
142
- // src/modules/auth/AuthModal.tsx
143
- var import_jsx_runtime2 = require("react/jsx-runtime");
144
- var authLogoMaskUrl = `url('${logo_default}')`;
145
- var authLogoMask = {
146
- WebkitMaskImage: authLogoMaskUrl,
147
- WebkitMaskPosition: "center",
148
- WebkitMaskRepeat: "no-repeat",
149
- WebkitMaskSize: "contain",
150
- maskImage: authLogoMaskUrl,
151
- maskPosition: "center",
152
- maskRepeat: "no-repeat",
153
- maskSize: "contain"
154
- };
155
- function AuthModal({
541
+ // src/lib/link.ts
542
+ function isExternalHref(href, origin = globalThis.location?.origin) {
543
+ if (typeof href !== "string" || !/^(https?:)?\/\//i.test(href))
544
+ return false;
545
+ if (!origin) return true;
546
+ try {
547
+ return new URL(href, origin).origin !== origin;
548
+ } catch {
549
+ return false;
550
+ }
551
+ }
552
+
553
+ // src/primitives/InlineLink.tsx
554
+ var import_jsx_runtime7 = require("react/jsx-runtime");
555
+ function InlineLink({
556
+ as,
557
+ external,
558
+ showIcon = true,
559
+ size = "inherit",
560
+ tone = "accent",
561
+ className,
156
562
  children,
157
- dialog,
158
- tone = "default"
563
+ ...linkProps
159
564
  }) {
160
- const borderClass = tone === "error" ? "polli:border-intent-danger-border" : "polli:border-theme-border";
161
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
565
+ const Component = as || "a";
566
+ const isExternal = external ?? isExternalHref(linkProps.href);
567
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
568
+ Component,
569
+ {
570
+ target: isExternal && as !== "button" ? "_blank" : void 0,
571
+ rel: isExternal && as !== "button" ? "noopener noreferrer" : void 0,
572
+ className: ["polli-link", className].filter(Boolean).join(" "),
573
+ "data-size": size,
574
+ "data-tone": tone,
575
+ ...linkProps,
576
+ children: [
577
+ children,
578
+ showIcon && isExternal && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
579
+ ExternalLinkIcon,
580
+ {
581
+ "aria-hidden": "true",
582
+ className: "polli-link-external-icon"
583
+ }
584
+ )
585
+ ]
586
+ }
587
+ );
588
+ }
589
+
590
+ // src/primitives/LoadingStatus.tsx
591
+ var import_jsx_runtime8 = require("react/jsx-runtime");
592
+ function LoadingStatus({ children }) {
593
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("output", { className: "polli:flex polli:items-center polli:gap-2 polli:font-body polli:text-sm polli:text-theme-text-muted", children: [
594
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
595
+ "span",
596
+ {
597
+ "aria-hidden": "true",
598
+ className: "polli:h-4 polli:w-4 polli:shrink-0 polli:animate-spin polli:motion-reduce:animate-none polli:rounded-full polli:border-2 polli:border-current polli:border-r-transparent"
599
+ }
600
+ ),
601
+ children
602
+ ] });
603
+ }
604
+
605
+ // src/primitives/Surface.tsx
606
+ var import_jsx_runtime9 = require("react/jsx-runtime");
607
+ var variantClasses = {
608
+ // Phones get tighter padding (and a matching radius) so nested cards keep
609
+ // their width; from `sm` up the page has room for the full spacing.
610
+ panel: "polli:rounded-3xl polli:bg-surface-block polli:p-4 polli:sm:rounded-block polli:sm:p-7",
611
+ card: "polli-surface-card polli:rounded-card polli:bg-surface-opaque polli:p-3.5 polli:sm:p-4",
612
+ "card-themed": "polli:rounded-card polli:bg-theme-bg-pale polli:p-3.5 polli:sm:p-4"
613
+ };
614
+ function Surface({
615
+ as,
616
+ variant = "card",
617
+ className,
618
+ children,
619
+ ...rest
620
+ }) {
621
+ const Component = as || "div";
622
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
623
+ Component,
624
+ {
625
+ ...rest,
626
+ className: cn("polli:min-w-0", variantClasses[variant], className),
627
+ children
628
+ }
629
+ );
630
+ }
631
+
632
+ // src/modules/auth/AuthModal.tsx
633
+ var import_jsx_runtime10 = require("react/jsx-runtime");
634
+ function AuthModal({ children, size, dialog, onClose }) {
635
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
162
636
  Dialog,
163
637
  {
164
638
  open: true,
165
- theme: "amber",
639
+ onOpenChange: (open) => !open && onClose?.(),
166
640
  showBackdrop: false,
167
641
  ariaLabel: dialog?.label,
168
642
  labelledBy: dialog?.labelledBy,
169
- positionerClassName: "polli:items-start polli:overflow-y-auto polli:bg-theme-bg-pale",
170
- contentClassName: `polli:bg-surface-white polli:border-2 ${borderClass} polli:rounded-lg polli:shadow-lg polli:max-w-xl polli:w-full polli:my-auto`,
643
+ positionerClassName: "polli:bg-app-bg",
644
+ contentClassName: "polli:overflow-hidden",
645
+ size,
646
+ children
647
+ }
648
+ );
649
+ }
650
+ var legalFootnote = /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(import_jsx_runtime10.Fragment, { children: [
651
+ "By continuing, you agree to the",
652
+ " ",
653
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
654
+ InlineLink,
655
+ {
656
+ href: "https://pollinations.ai/terms",
657
+ tone: "quiet",
658
+ showIcon: false,
659
+ children: "Terms"
660
+ }
661
+ ),
662
+ " ",
663
+ "and acknowledge the",
664
+ " ",
665
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
666
+ InlineLink,
667
+ {
668
+ href: "https://pollinations.ai/privacy",
669
+ tone: "quiet",
670
+ showIcon: false,
671
+ children: "Privacy Policy"
672
+ }
673
+ ),
674
+ "."
675
+ ] });
676
+ function AuthFlowLayout({
677
+ children,
678
+ title,
679
+ subject,
680
+ description,
681
+ error,
682
+ titleId,
683
+ headerAction,
684
+ actions,
685
+ footnote = legalFootnote,
686
+ dialog,
687
+ // Most auth steps are a title, a line and one action; busy steps opt into more width.
688
+ size = "sm",
689
+ onClose
690
+ }) {
691
+ const generatedId = (0, import_react3.useId)();
692
+ const headingId = titleId ?? generatedId;
693
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
694
+ AuthModal,
695
+ {
696
+ dialog: dialog ?? (title ? { labelledBy: headingId } : void 0),
697
+ size,
698
+ onClose,
699
+ children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
700
+ DialogBody,
701
+ {
702
+ actions,
703
+ footnote: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(AuthModalFootnote, { children: footnote }),
704
+ bodyClassName: "polli:space-y-0 polli:p-0",
705
+ children: [
706
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(AuthModalHeader, { children: headerAction }),
707
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "polli:space-y-3 polli:px-(--polli-dialog-gutter) polli:py-4", children: [
708
+ title && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "polli:space-y-3", children: [
709
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Heading, { as: "h1", size: "section", id: headingId, children: title }),
710
+ subject,
711
+ description && // The step instruction: body tone, so it reads as
712
+ // the sentence's second half rather than a caption.
713
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
714
+ Text,
715
+ {
716
+ size: "body",
717
+ tone: "base",
718
+ className: "polli:text-pretty",
719
+ children: description
720
+ }
721
+ ),
722
+ error && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(ErrorBanner, { children: error })
723
+ ] }),
724
+ children
725
+ ] })
726
+ ]
727
+ }
728
+ )
729
+ }
730
+ );
731
+ }
732
+ function AuthModalFootnote({ children }) {
733
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
734
+ Text,
735
+ {
736
+ size: "xs",
737
+ tone: "muted",
738
+ className: "polli:shrink-0 polli:px-(--polli-dialog-gutter) polli:pb-5 polli:text-center polli:text-[13px] polli:text-balance",
171
739
  children
172
740
  }
173
741
  );
174
742
  }
175
743
  function AuthModalHeader({ children }) {
176
- const logo = /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
744
+ const logo = /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
177
745
  "a",
178
746
  {
179
747
  href: "https://pollinations.ai",
180
748
  target: "_blank",
181
749
  rel: "noopener noreferrer",
182
- tabIndex: -1,
183
- className: "polli:block polli:shrink-0 polli:text-theme-text-strong polli:focus:outline-none",
750
+ className: "polli:block polli:shrink-0 polli:text-theme-text-muted polli:transition-colors polli:hover:text-theme-text-strong polli:focus-visible:outline-2 polli:focus-visible:outline-offset-4",
184
751
  "aria-label": "pollinations.ai",
185
752
  children: [
186
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { className: "polli:sr-only", children: "pollinations.ai" }),
187
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
188
- "span",
753
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "polli:sr-only", children: "pollinations.ai" }),
754
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(BrandMark, { className: "polli:h-8 polli:w-8" })
755
+ ]
756
+ }
757
+ );
758
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "polli:shrink-0 polli:px-(--polli-dialog-gutter) polli:pt-4 polli:pb-4 polli:sm:pt-6", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "polli:flex polli:min-h-10 polli:items-start polli:justify-between polli:gap-3", children: [
759
+ logo,
760
+ children
761
+ ] }) });
762
+ }
763
+ function AuthModalLoading({
764
+ title,
765
+ subject,
766
+ message = "Loading\u2026"
767
+ }) {
768
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(AuthFlowLayout, { title, subject, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "polli:flex polli:justify-center polli:py-10", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(LoadingStatus, { children: message }) }) });
769
+ }
770
+ function ErrorBanner({ children }) {
771
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Alert, { intent: "danger", children });
772
+ }
773
+ function AuthInfoCard({ title, children }) {
774
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Surface, { className: "polli:space-y-3 polli:font-body", children: [
775
+ title != null && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("p", { className: "polli:font-body polli:text-sm polli:font-semibold polli:leading-5 polli:text-theme-text-strong", children: title }),
776
+ children
777
+ ] });
778
+ }
779
+ function AuthAccessItem({
780
+ children,
781
+ control,
782
+ details,
783
+ info,
784
+ icon,
785
+ checked = false,
786
+ onChange,
787
+ ariaLabel,
788
+ disabled = false
789
+ }) {
790
+ const Row = icon != null ? "div" : "label";
791
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
792
+ "li",
793
+ {
794
+ className: cn(
795
+ info != null && "polli:flex polli:flex-wrap polli:items-center"
796
+ ),
797
+ children: [
798
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
799
+ Row,
189
800
  {
190
- "aria-hidden": "true",
191
- className: "polli:block polli:h-8 polli:w-8 polli:bg-current",
192
- style: authLogoMask
801
+ className: cn(
802
+ "polli:flex polli:min-h-8 polli:items-center polli:gap-3 polli:font-body polli:text-sm polli:font-semibold polli:leading-5",
803
+ info != null && "polli:min-w-0",
804
+ onChange && (disabled ? "polli:cursor-not-allowed" : "polli:cursor-pointer")
805
+ ),
806
+ children: [
807
+ icon != null ? /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
808
+ "span",
809
+ {
810
+ "aria-hidden": "true",
811
+ className: "polli:flex polli:h-5 polli:w-5 polli:shrink-0 polli:items-center polli:justify-center polli:text-theme-text-strong polli:[&>svg]:h-4 polli:[&>svg]:w-4",
812
+ children: icon
813
+ }
814
+ ) : /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("span", { className: "polli:relative polli:flex polli:h-5 polli:w-5 polli:shrink-0", children: [
815
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
816
+ "input",
817
+ {
818
+ type: "checkbox",
819
+ "aria-label": ariaLabel,
820
+ checked,
821
+ disabled: disabled || !onChange,
822
+ onChange: (event) => onChange?.(event.target.checked),
823
+ className: "polli:peer polli:sr-only"
824
+ }
825
+ ),
826
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
827
+ "span",
828
+ {
829
+ "aria-hidden": "true",
830
+ className: "polli:flex polli:h-5 polli:w-5 polli:items-center polli:justify-center polli:rounded polli:border polli:border-theme-text-muted/50 polli:bg-transparent polli:transition-colors polli:peer-checked:border-theme-bg-active polli:peer-checked:bg-theme-bg-active polli:peer-checked:text-theme-text-strong polli:peer-focus-visible:outline-2 polli:peer-focus-visible:outline-offset-2 polli:peer-focus-visible:outline-theme-text-soft polli:peer-disabled:opacity-50",
831
+ children: checked && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(CheckIcon, { className: "polli:h-3.5 polli:w-3.5" })
832
+ }
833
+ )
834
+ ] }),
835
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
836
+ "span",
837
+ {
838
+ className: cn(
839
+ "polli:min-w-0 polli:flex-1 polli:transition-opacity",
840
+ !!onChange && !checked && "polli:opacity-60"
841
+ ),
842
+ children
843
+ }
844
+ ),
845
+ control != null && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "polli:shrink-0", children: control })
846
+ ]
847
+ }
848
+ ),
849
+ info,
850
+ details && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
851
+ "div",
852
+ {
853
+ className: cn(
854
+ "polli:pl-8 polli:font-body polli:text-xs polli:font-normal polli:leading-normal polli:text-theme-text-muted",
855
+ info != null && "polli:basis-full"
856
+ ),
857
+ children: details
193
858
  }
194
859
  )
195
860
  ]
196
861
  }
197
862
  );
198
- if (!children) {
199
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "polli:flex polli:justify-start polli:px-6 polli:pt-6", children: logo });
863
+ }
864
+
865
+ // src/modules/auth/DashboardAccountMenu.tsx
866
+ var import_react6 = require("react");
867
+
868
+ // src/compositions/AccountIdentity.tsx
869
+ var import_react5 = require("react");
870
+
871
+ // src/primitives/ChevronIcon.tsx
872
+ var import_jsx_runtime11 = require("react/jsx-runtime");
873
+ var ChevronIcon = ({ expanded, className }) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
874
+ "svg",
875
+ {
876
+ "aria-hidden": "true",
877
+ width: "12",
878
+ height: "12",
879
+ viewBox: "0 0 12 12",
880
+ className: cn(
881
+ "polli:shrink-0 polli:transition-transform polli:duration-200 polli:ease-out",
882
+ expanded && "polli:rotate-180",
883
+ className
884
+ ),
885
+ children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
886
+ "path",
887
+ {
888
+ d: "M3 4.5 6 7.5l3-3",
889
+ fill: "none",
890
+ stroke: "currentColor",
891
+ strokeLinecap: "round",
892
+ strokeLinejoin: "round",
893
+ strokeWidth: "1.5"
894
+ }
895
+ )
200
896
  }
201
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "polli:px-6 polli:pt-6 polli:pb-2", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "polli:flex polli:items-center polli:justify-between polli:gap-3", children: [
202
- logo,
203
- children
204
- ] }) });
897
+ );
898
+
899
+ // src/primitives/Dropdown.tsx
900
+ var import_popover = require("@ark-ui/react/popover");
901
+ var import_portal2 = require("@ark-ui/react/portal");
902
+ var import_react4 = require("react");
903
+ var import_jsx_runtime12 = require("react/jsx-runtime");
904
+ var DEFAULT_PANEL = "polli:rounded-lg polli:bg-surface-menu polli:shadow-lg";
905
+ var Dropdown = ({
906
+ trigger,
907
+ children,
908
+ align = "start",
909
+ side = "bottom",
910
+ open: openProp,
911
+ portalled = true,
912
+ onOpenChange,
913
+ className,
914
+ panelStyle
915
+ }) => {
916
+ const triggerId = (0, import_react4.useId)();
917
+ const [internalOpen, setInternalOpen] = (0, import_react4.useState)(false);
918
+ const isControlled = openProp !== void 0;
919
+ const open = isControlled ? openProp : internalOpen;
920
+ const setOpen = (next) => {
921
+ if (!isControlled) setInternalOpen(next);
922
+ onOpenChange?.(next);
923
+ };
924
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
925
+ import_popover.Popover.Root,
926
+ {
927
+ ids: { trigger: triggerId },
928
+ open,
929
+ portalled,
930
+ onOpenChange: (details) => setOpen(details.open),
931
+ positioning: {
932
+ placement: `${side}-${align}`,
933
+ strategy: portalled ? "absolute" : "fixed"
934
+ },
935
+ children: [
936
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_popover.Popover.Trigger, { asChild: true, children: trigger(open) }),
937
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_portal2.Portal, { disabled: !portalled, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_popover.Popover.Positioner, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
938
+ import_popover.Popover.Content,
939
+ {
940
+ "aria-labelledby": triggerId,
941
+ style: panelStyle,
942
+ className: cn(
943
+ "polli:z-[120] polli:overflow-hidden polli:focus:outline-none",
944
+ DEFAULT_PANEL,
945
+ className
946
+ ),
947
+ children: typeof children === "function" ? children(() => setOpen(false)) : children
948
+ }
949
+ ) }) })
950
+ ]
951
+ }
952
+ );
953
+ };
954
+
955
+ // src/compositions/AccountIdentity.tsx
956
+ var import_jsx_runtime13 = require("react/jsx-runtime");
957
+ function initials(name) {
958
+ const parts = name.trim().split(/\s+/).filter(Boolean);
959
+ if (parts.length === 0) return "?";
960
+ if (parts.length === 1) return parts[0].slice(0, 2).toUpperCase();
961
+ return `${parts[0][0] ?? ""}${parts.at(-1)?.[0] ?? ""}`.toUpperCase();
205
962
  }
206
- function AuthModalLoading() {
207
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(AuthModal, { children: [
208
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(AuthModalHeader, {}),
209
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "polli:px-8 polli:pt-2 polli:pb-8 polli:text-center", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", { className: "polli:text-theme-text-strong", children: "Loading..." }) })
963
+ function AccountAvatar({
964
+ name,
965
+ avatarUrl,
966
+ secondaryContent,
967
+ dashboardHref,
968
+ inline = false
969
+ }) {
970
+ const size = inline ? "polli:h-6 polli:w-6" : secondaryContent != null ? "polli:h-11 polli:w-11" : "polli:h-8 polli:w-8";
971
+ const className = cn(
972
+ size,
973
+ inline && "polli:transition-transform polli:group-hover:scale-110 polli:group-hover:brightness-110 polli:motion-reduce:transition-none polli:motion-reduce:group-hover:scale-100"
974
+ );
975
+ const avatar = avatarUrl ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
976
+ "img",
977
+ {
978
+ src: avatarUrl,
979
+ alt: "",
980
+ className: cn(
981
+ className,
982
+ "polli:shrink-0 polli:rounded-full polli:object-cover"
983
+ )
984
+ }
985
+ ) : /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
986
+ "span",
987
+ {
988
+ role: "img",
989
+ "aria-label": `${name} avatar`,
990
+ className: cn(
991
+ className,
992
+ "polli:flex polli:shrink-0 polli:items-center polli:justify-center polli:rounded-full polli:bg-theme-bg-pale polli:text-xs polli:font-semibold polli:text-theme-text-strong"
993
+ ),
994
+ children: initials(name)
995
+ }
996
+ );
997
+ return dashboardHref ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
998
+ "a",
999
+ {
1000
+ href: dashboardHref,
1001
+ target: "_blank",
1002
+ rel: "noopener noreferrer",
1003
+ "aria-label": "Open dashboard",
1004
+ title: "Open dashboard",
1005
+ className: "polli:shrink-0 polli:rounded-full polli:cursor-pointer polli:transition-transform polli:hover:scale-105 polli:hover:brightness-110 polli:focus-visible:outline-2 polli:focus-visible:outline-offset-2 polli:focus-visible:outline-current polli:motion-reduce:transition-none polli:motion-reduce:hover:scale-100",
1006
+ children: avatar
1007
+ }
1008
+ ) : avatar;
1009
+ }
1010
+ function AccountDetails({
1011
+ name,
1012
+ secondaryContent,
1013
+ secondaryId
1014
+ }) {
1015
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("span", { className: "polli:flex polli:min-w-0 polli:flex-col polli:items-start polli:text-left", children: [
1016
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1017
+ "span",
1018
+ {
1019
+ title: name,
1020
+ className: "polli:max-w-full polli:truncate polli:text-sm polli:font-medium polli:leading-5 polli:text-theme-text-strong",
1021
+ children: name
1022
+ }
1023
+ ),
1024
+ secondaryContent != null && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1025
+ "span",
1026
+ {
1027
+ id: secondaryId,
1028
+ className: "polli:inline-flex polli:min-h-5 polli:items-center polli:whitespace-nowrap polli:text-xs polli:leading-4 polli:text-theme-text-base",
1029
+ children: secondaryContent
1030
+ }
1031
+ )
210
1032
  ] });
211
1033
  }
212
- function ErrorBanner({ children }) {
213
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "polli:rounded-lg polli:border-2 polli:border-intent-danger-border polli:bg-intent-danger-bg-light polli:p-4", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", { className: "polli:text-sm polli:text-intent-danger-text", children }) });
1034
+ function AccountMenu({
1035
+ name,
1036
+ avatarUrl,
1037
+ dashboardHref,
1038
+ secondaryContent,
1039
+ children,
1040
+ className,
1041
+ menuClassName,
1042
+ side = "bottom",
1043
+ menuLabel = `Account menu for ${name}`
1044
+ }) {
1045
+ const statusId = (0, import_react5.useId)();
1046
+ const avatar = /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1047
+ AccountAvatar,
1048
+ {
1049
+ name,
1050
+ avatarUrl,
1051
+ dashboardHref,
1052
+ secondaryContent
1053
+ }
1054
+ );
1055
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
1056
+ "div",
1057
+ {
1058
+ "data-theme": "accent",
1059
+ className: cn(
1060
+ "polli:flex polli:min-w-0 polli:items-center polli:gap-2 polli:rounded-full polli:bg-theme-bg-active polli:p-1 polli:pr-3 polli:text-theme-text-strong polli:transition-colors polli:hover:bg-theme-bg-hover",
1061
+ className
1062
+ ),
1063
+ children: [
1064
+ dashboardHref && avatar,
1065
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1066
+ Dropdown,
1067
+ {
1068
+ align: "end",
1069
+ side,
1070
+ className: cn(
1071
+ "polli:w-max polli:min-w-[var(--reference-width)] polli:p-1",
1072
+ menuClassName
1073
+ ),
1074
+ trigger: (open) => /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
1075
+ "button",
1076
+ {
1077
+ type: "button",
1078
+ "aria-label": menuLabel,
1079
+ "aria-describedby": secondaryContent != null ? statusId : void 0,
1080
+ className: "polli-control polli:flex polli:min-w-0 polli:flex-1 polli:items-center polli:gap-2 polli:self-stretch polli:rounded-full polli:text-theme-text-strong",
1081
+ children: [
1082
+ !dashboardHref && avatar,
1083
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1084
+ AccountDetails,
1085
+ {
1086
+ name,
1087
+ secondaryContent,
1088
+ secondaryId: statusId
1089
+ }
1090
+ ),
1091
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
1092
+ ChevronIcon,
1093
+ {
1094
+ expanded: open,
1095
+ className: "polli:ml-auto polli:h-4 polli:w-4 polli:text-theme-text-strong"
1096
+ }
1097
+ )
1098
+ ]
1099
+ }
1100
+ ),
1101
+ children
1102
+ }
1103
+ )
1104
+ ]
1105
+ }
1106
+ );
214
1107
  }
215
- function AuthInfoCard({
216
- title = "Authorize",
217
- children
1108
+
1109
+ // src/primitives/DropdownItem.tsx
1110
+ var import_jsx_runtime14 = require("react/jsx-runtime");
1111
+ function DropdownItem({
1112
+ as,
1113
+ className,
1114
+ children,
1115
+ ...rest
218
1116
  }) {
219
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "polli:rounded-lg polli:border-2 polli:border-theme-border polli:bg-theme-bg-pale polli:p-4", children: [
220
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", { className: "polli:mb-2 polli:font-body polli:text-xs polli:font-semibold polli:tracking-wide polli:text-theme-text-soft", children: title }),
221
- children
1117
+ const Component = as || "button";
1118
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1119
+ Component,
1120
+ {
1121
+ ...Component === "button" ? { type: "button" } : void 0,
1122
+ ...rest,
1123
+ className: cn(
1124
+ "polli-control polli:flex polli:w-full polli:cursor-pointer polli:items-center polli:gap-2 polli:rounded-lg polli:bg-transparent polli:px-3 polli:py-2 polli:text-left polli:text-sm polli:font-medium polli:text-theme-text-base polli:no-underline polli:transition-colors polli:hover:bg-theme-bg-hover polli:hover:text-theme-text-hover polli:focus-visible:bg-theme-bg-hover",
1125
+ className
1126
+ ),
1127
+ children
1128
+ }
1129
+ );
1130
+ }
1131
+
1132
+ // src/modules/auth/DashboardAccountMenu.tsx
1133
+ var import_jsx_runtime15 = require("react/jsx-runtime");
1134
+ function DashboardAccountMenu({
1135
+ user,
1136
+ onSignOut,
1137
+ className,
1138
+ side
1139
+ }) {
1140
+ const [error, setError] = (0, import_react6.useState)(null);
1141
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_jsx_runtime15.Fragment, { children: [
1142
+ error && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Alert, { children: error }),
1143
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1144
+ AccountMenu,
1145
+ {
1146
+ name: user.name || user.preferred_username || user.email,
1147
+ avatarUrl: user.picture,
1148
+ className,
1149
+ side,
1150
+ children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1151
+ DropdownItem,
1152
+ {
1153
+ onClick: () => {
1154
+ setError(null);
1155
+ Promise.resolve().then(onSignOut).catch(
1156
+ () => setError(
1157
+ "Could not sign out. Please try again."
1158
+ )
1159
+ );
1160
+ },
1161
+ children: [
1162
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1163
+ SignOutIcon,
1164
+ {
1165
+ "aria-hidden": "true",
1166
+ className: "polli:h-4 polli:w-4 polli:shrink-0"
1167
+ }
1168
+ ),
1169
+ "Sign out"
1170
+ ]
1171
+ }
1172
+ )
1173
+ }
1174
+ )
222
1175
  ] });
223
1176
  }
1177
+
1178
+ // src/primitives/Button.tsx
1179
+ var import_jsx_runtime16 = require("react/jsx-runtime");
1180
+ var pillSizes = {
1181
+ icon: "polli:h-12 polli:w-12 polli:p-0",
1182
+ xs: "polli:h-5 polli:px-1.5 polli:py-0 polli:text-[11px] polli:leading-none",
1183
+ sm: "polli:min-h-7 polli:px-2 polli:pt-0.5 polli:pb-1",
1184
+ md: "polli:min-h-9 polli:px-4 polli:pt-1.5 polli:pb-2",
1185
+ lg: "polli:min-h-12 polli:px-6 polli:py-3 polli:text-base"
1186
+ };
1187
+ var raisedSizes = {
1188
+ icon: "polli:h-12 polli:w-12 polli:p-0",
1189
+ xs: "polli:px-2 polli:py-1 polli:text-xs",
1190
+ sm: "polli:px-4 polli:py-2 polli:text-sm",
1191
+ md: "polli:px-7 polli:py-3.5 polli:text-base",
1192
+ lg: "polli:px-8 polli:py-4 polli:text-lg"
1193
+ };
1194
+ var appearanceClasses = {
1195
+ pill: "polli:rounded-full",
1196
+ raised: "polli:rounded-xl polli:border-r-[3px] polli:border-b-[3px] polli:border-solid polli:border-theme-text-strong/20 polli:hover:border-theme-text-strong/45"
1197
+ };
1198
+ var themeClasses = "polli:bg-theme-bg-active polli:text-theme-text-strong polli:hover:bg-theme-bg-hover polli:hover:text-theme-text-hover polli:transition-colors";
1199
+ var outlined = "polli:border polli:border-theme-text-soft polli:bg-theme-bg-active/30 polli:text-theme-text-strong polli:transition-colors polli:[.dark_&]:bg-transparent";
1200
+ var intentClasses2 = {
1201
+ brand: `${outlined} polli:hover:bg-theme-bg-active/50 polli:[.dark_&]:hover:bg-theme-text-soft/10`,
1202
+ commit: `${outlined} polli:hover:border-theme-bg-active polli:hover:bg-theme-bg-active polli:focus-visible:border-theme-bg-active polli:focus-visible:bg-theme-bg-active polli:[.dark_&]:hover:bg-theme-bg-active polli:[.dark_&]:focus-visible:bg-theme-bg-active`,
1203
+ danger: "polli:border polli:border-intent-danger-text polli:bg-intent-danger-bg-light polli:text-intent-danger-text polli:hover:bg-intent-danger-bg-hover polli:focus-visible:bg-intent-danger-bg-hover polli:transition-colors polli:[.dark_&]:bg-transparent polli:[.dark_&]:hover:bg-intent-danger-bg-hover polli:[.dark_&]:focus-visible:bg-intent-danger-bg-hover",
1204
+ info: "polli:bg-intent-info-bg-light polli:text-intent-info-text polli:hover:bg-intent-info-bg-hover polli:transition-colors",
1205
+ // Secondary actions never take the accent: one step stronger grey on hover.
1206
+ neutral: "polli:bg-theme-bg-subtle polli:text-theme-text-base polli:hover:bg-theme-text-muted/25 polli:hover:text-theme-text-strong polli:transition-colors"
1207
+ };
1208
+ var buttonClasses = ({
1209
+ intent,
1210
+ appearance = "pill",
1211
+ size,
1212
+ className,
1213
+ disabled,
1214
+ busy
1215
+ }) => {
1216
+ const colorClasses = intent ? intentClasses2[intent] : themeClasses;
1217
+ const sizeClasses2 = appearance === "raised" ? raisedSizes : pillSizes;
1218
+ return cn(
1219
+ "polli-control polli:inline-flex polli:items-center polli:justify-center polli:self-center polli:font-body polli:text-sm polli:font-medium polli:leading-normal polli:box-border polli:border polli:border-transparent",
1220
+ // A busy button is working, not unavailable: it keeps its strength.
1221
+ busy ? "polli:cursor-progress" : disabled ? "polli:opacity-50 polli:cursor-not-allowed" : "polli:hover:filter polli:hover:brightness-105 polli:cursor-pointer",
1222
+ colorClasses,
1223
+ appearanceClasses[appearance],
1224
+ sizeClasses2[size || "md"],
1225
+ className
1226
+ );
1227
+ };
1228
+ function Button({
1229
+ as,
1230
+ children,
1231
+ icon,
1232
+ intent,
1233
+ appearance,
1234
+ size,
1235
+ className,
1236
+ disabled,
1237
+ ...buttonProps
1238
+ }) {
1239
+ const Component = as || "button";
1240
+ const isButton = Component === "button";
1241
+ const isAnchor = Component === "a";
1242
+ const buttonType = buttonProps.type;
1243
+ const onClick = buttonProps.onClick;
1244
+ const ariaBusy = buttonProps["aria-busy"];
1245
+ const busy = ariaBusy === true || ariaBusy === "true";
1246
+ const handleClick = disabled ? (event) => {
1247
+ event.preventDefault();
1248
+ event.stopPropagation();
1249
+ } : onClick;
1250
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1251
+ Component,
1252
+ {
1253
+ ...buttonProps,
1254
+ "data-intent": intent,
1255
+ ...isButton ? { type: buttonType ?? "button", disabled } : {},
1256
+ ...!isButton && disabled ? { "aria-disabled": true, tabIndex: -1 } : {},
1257
+ ...isAnchor && disabled ? { href: void 0 } : {},
1258
+ onClick: handleClick,
1259
+ className: buttonClasses({
1260
+ intent,
1261
+ appearance,
1262
+ size,
1263
+ className,
1264
+ disabled,
1265
+ busy
1266
+ }),
1267
+ children: [
1268
+ icon && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1269
+ "span",
1270
+ {
1271
+ "aria-hidden": "true",
1272
+ className: "polli:mr-2 polli:flex polli:size-4 polli:shrink-0 polli:[&>svg]:size-full",
1273
+ children: busy ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "polli:block polli:size-full polli:animate-spin polli:rounded-full polli:border-2 polli:border-current polli:border-r-transparent polli:motion-reduce:animate-none" }) : icon
1274
+ }
1275
+ ),
1276
+ children
1277
+ ]
1278
+ }
1279
+ );
1280
+ }
1281
+
1282
+ // src/primitives/ColorModeToggle.tsx
1283
+ var import_react7 = require("react");
1284
+ var import_jsx_runtime17 = require("react/jsx-runtime");
1285
+ var STORAGE_KEY = "polli-color-mode";
1286
+ function readStored() {
1287
+ try {
1288
+ const value = localStorage.getItem(STORAGE_KEY);
1289
+ return value === "light" || value === "dark" ? value : null;
1290
+ } catch {
1291
+ return null;
1292
+ }
1293
+ }
1294
+ function systemMode() {
1295
+ return typeof window !== "undefined" && window.matchMedia?.("(prefers-color-scheme: dark)").matches === true ? "dark" : "light";
1296
+ }
1297
+ var current = readStored() ?? systemMode();
1298
+ var listeners = /* @__PURE__ */ new Set();
1299
+ function apply() {
1300
+ if (typeof document === "undefined") return;
1301
+ document.documentElement.classList.toggle("dark", current === "dark");
1302
+ syncThemeColor();
1303
+ }
1304
+ function syncThemeColor() {
1305
+ if (typeof document === "undefined") return;
1306
+ const appBg = getComputedStyle(document.documentElement).getPropertyValue("--polli-color-app-bg").trim();
1307
+ if (!appBg) return;
1308
+ let meta = document.querySelector('meta[name="theme-color"]');
1309
+ if (!meta) {
1310
+ meta = document.createElement("meta");
1311
+ meta.setAttribute("name", "theme-color");
1312
+ document.head.appendChild(meta);
1313
+ }
1314
+ meta.setAttribute("content", appBg);
1315
+ }
1316
+ function emit() {
1317
+ for (const listener of listeners) listener();
1318
+ }
1319
+ function handleStorage(event) {
1320
+ if (event.key !== STORAGE_KEY) return;
1321
+ const next = readStored() ?? systemMode();
1322
+ if (next === current) return;
1323
+ current = next;
1324
+ apply();
1325
+ emit();
1326
+ }
1327
+ function subscribe(listener) {
1328
+ if (listeners.size === 0 && typeof window !== "undefined") {
1329
+ apply();
1330
+ window.addEventListener("storage", handleStorage);
1331
+ }
1332
+ listeners.add(listener);
1333
+ return () => {
1334
+ listeners.delete(listener);
1335
+ if (listeners.size === 0 && typeof window !== "undefined") {
1336
+ window.removeEventListener("storage", handleStorage);
1337
+ }
1338
+ };
1339
+ }
1340
+ function getSnapshot() {
1341
+ return current;
1342
+ }
1343
+ function getServerSnapshot() {
1344
+ return "light";
1345
+ }
1346
+ function setColorMode(mode) {
1347
+ if (mode === current) return;
1348
+ current = mode;
1349
+ apply();
1350
+ try {
1351
+ if (mode === systemMode()) localStorage.removeItem(STORAGE_KEY);
1352
+ else localStorage.setItem(STORAGE_KEY, mode);
1353
+ } catch {
1354
+ }
1355
+ emit();
1356
+ }
1357
+ function useColorMode() {
1358
+ const mode = (0, import_react7.useSyncExternalStore)(
1359
+ subscribe,
1360
+ getSnapshot,
1361
+ getServerSnapshot
1362
+ );
1363
+ return {
1364
+ mode,
1365
+ isDark: mode === "dark",
1366
+ toggle: () => setColorMode(mode === "dark" ? "light" : "dark")
1367
+ };
1368
+ }
1369
+
1370
+ // src/modules/auth/ProviderSignInButton.tsx
1371
+ var import_jsx_runtime18 = require("react/jsx-runtime");
1372
+ function ProviderSignInButton({
1373
+ icon,
1374
+ className,
1375
+ children,
1376
+ type = "button",
1377
+ ...props
1378
+ }) {
1379
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1380
+ Button,
1381
+ {
1382
+ ...props,
1383
+ type,
1384
+ intent: "brand",
1385
+ "data-theme": "accent",
1386
+ className: cn("polli:gap-2 polli:whitespace-nowrap", className),
1387
+ children: [
1388
+ props["aria-busy"] === true ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1389
+ "span",
1390
+ {
1391
+ "aria-hidden": "true",
1392
+ className: "polli:h-5 polli:w-5 polli:shrink-0 polli:animate-spin polli:rounded-full polli:border-2 polli:border-current polli:border-r-transparent polli:motion-reduce:animate-none"
1393
+ }
1394
+ ) : icon,
1395
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { children })
1396
+ ]
1397
+ }
1398
+ );
1399
+ }
1400
+
1401
+ // src/modules/auth/PollinationsSignInButton.tsx
1402
+ var import_jsx_runtime19 = require("react/jsx-runtime");
1403
+ function PollinationsSignInButton({
1404
+ className,
1405
+ children,
1406
+ type = "button",
1407
+ isPending = false,
1408
+ disabled,
1409
+ ...props
1410
+ }) {
1411
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
1412
+ ProviderSignInButton,
1413
+ {
1414
+ type,
1415
+ ...props,
1416
+ disabled: disabled || isPending,
1417
+ "aria-busy": isPending,
1418
+ className,
1419
+ icon: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(BrandMark, { className: "polli:h-5 polli:w-5" }),
1420
+ children: children ?? "Connect with Pollinations"
1421
+ }
1422
+ );
1423
+ }
1424
+
1425
+ // src/modules/auth/DashboardSignIn.tsx
1426
+ var import_jsx_runtime20 = require("react/jsx-runtime");
1427
+ var signInErrors = {
1428
+ admin_required: {
1429
+ title: "Admin access required",
1430
+ message: "Your Pollinations account does not have admin access. Switch accounts on Pollinations, then try again."
1431
+ },
1432
+ cancelled: {
1433
+ title: "Sign-in cancelled",
1434
+ message: "Sign-in was cancelled. You can try again."
1435
+ },
1436
+ invalid_state: {
1437
+ title: "Sign-in link expired",
1438
+ message: "Your Pollinations sign-in link expired. Please try again."
1439
+ },
1440
+ unavailable: {
1441
+ title: "Couldn\u2019t sign in",
1442
+ message: "Couldn\u2019t complete your Pollinations sign-in. Please try again."
1443
+ }
1444
+ };
1445
+ function DashboardSignIn({
1446
+ appName,
1447
+ onSignIn,
1448
+ isPending = false,
1449
+ sessionError
1450
+ }) {
1451
+ useColorMode();
1452
+ const code = typeof window === "undefined" ? null : new URLSearchParams(window.location.search).get("auth_error");
1453
+ const error = sessionError ? { title: "Couldn\u2019t check your session", message: sessionError } : code && Object.hasOwn(signInErrors, code) ? signInErrors[code] : null;
1454
+ const shownError = isPending ? null : error;
1455
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1456
+ AuthFlowLayout,
1457
+ {
1458
+ title: shownError ? shownError.title : `Sign in to ${appName}`,
1459
+ description: shownError ? void 0 : "Use your Pollinations admin account.",
1460
+ error: shownError?.message,
1461
+ actions: isPending ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(PollinationsSignInButton, { isPending: true, children: "Checking sign-in\u2026" }) : sessionError ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1462
+ Button,
1463
+ {
1464
+ icon: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(RefreshIcon, {}),
1465
+ onClick: () => window.location.reload(),
1466
+ children: "Reload"
1467
+ }
1468
+ ) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(PollinationsSignInButton, { onClick: onSignIn, children: error ? "Try again" : "Sign in with Pollinations" })
1469
+ }
1470
+ );
1471
+ }
1472
+
1473
+ // src/modules/auth/GitHubSignInButton.tsx
1474
+ var import_jsx_runtime21 = require("react/jsx-runtime");
1475
+ function GitHubSignInButton({
1476
+ isSigningIn = false,
1477
+ disabled,
1478
+ ...props
1479
+ }) {
1480
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1481
+ ProviderSignInButton,
1482
+ {
1483
+ ...props,
1484
+ disabled: disabled || isSigningIn,
1485
+ "aria-busy": isSigningIn,
1486
+ icon: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1487
+ GitHubIcon,
1488
+ {
1489
+ "aria-hidden": "true",
1490
+ className: "polli:h-5 polli:w-5 polli:shrink-0"
1491
+ }
1492
+ ),
1493
+ children: isSigningIn ? "Signing in\u2026" : "Sign in with GitHub"
1494
+ }
1495
+ );
1496
+ }
224
1497
  // Annotate the CommonJS export names for ESM import in node:
225
1498
  0 && (module.exports = {
1499
+ AuthAccessItem,
1500
+ AuthFlowLayout,
226
1501
  AuthInfoCard,
227
1502
  AuthModal,
1503
+ AuthModalFootnote,
228
1504
  AuthModalHeader,
229
1505
  AuthModalLoading,
230
- ErrorBanner
1506
+ DashboardAccountMenu,
1507
+ DashboardSignIn,
1508
+ ErrorBanner,
1509
+ GitHubSignInButton,
1510
+ PollinationsSignInButton
231
1511
  });
232
1512
  //# sourceMappingURL=index.cjs.map