@smileid/web-components 11.5.0 → 11.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/dist/esm/DocumentCaptureScreens-DjSTdVP-.js +5398 -0
  2. package/dist/esm/DocumentCaptureScreens-DjSTdVP-.js.map +1 -0
  3. package/dist/esm/{Navigation-Xg565kcu.js → Navigation-6DH3vF4-.js} +2 -2
  4. package/dist/esm/{Navigation-Xg565kcu.js.map → Navigation-6DH3vF4-.js.map} +1 -1
  5. package/dist/esm/{PoweredBySmileId-CxbaihMu.js → PoweredBySmileId-DoKwoPUd.js} +424 -6
  6. package/dist/esm/PoweredBySmileId-DoKwoPUd.js.map +1 -0
  7. package/dist/esm/{SelfieCaptureScreens-D3KuMzZA.js → SelfieCaptureScreens-CtX-4Tco.js} +5 -6
  8. package/dist/esm/SelfieCaptureScreens-CtX-4Tco.js.map +1 -0
  9. package/dist/esm/combobox.js +1 -1
  10. package/dist/esm/document.js +1 -1
  11. package/dist/esm/end-user-consent.js +713 -2
  12. package/dist/esm/end-user-consent.js.map +1 -1
  13. package/dist/esm/index-BqyuTk9f.js +1366 -0
  14. package/dist/esm/{index-CUwa6MPI.js.map → index-BqyuTk9f.js.map} +1 -1
  15. package/dist/esm/localisation.js +1 -1
  16. package/dist/esm/main.js +14 -14
  17. package/dist/esm/navigation.js +1 -1
  18. package/dist/esm/{package-BmVbDNny.js → package-CjZI-cNQ.js} +177 -172
  19. package/dist/esm/{package-BmVbDNny.js.map → package-CjZI-cNQ.js.map} +1 -1
  20. package/dist/esm/selfie.js +1 -1
  21. package/dist/esm/smart-camera-web.js +32 -18
  22. package/dist/esm/smart-camera-web.js.map +1 -1
  23. package/dist/esm/totp-consent.js +731 -2
  24. package/dist/esm/totp-consent.js.map +1 -1
  25. package/dist/esm/validate.js +31 -0
  26. package/dist/esm/validate.js.map +1 -0
  27. package/dist/smart-camera-web.js +696 -321
  28. package/dist/smart-camera-web.js.map +1 -1
  29. package/dist/types/main.d.ts +7 -1
  30. package/dist/types/validate.d.ts +21 -0
  31. package/lib/components/document/src/DocumentCaptureScreens.js +97 -18
  32. package/lib/components/document/src/assets/lottie.d.ts +12 -0
  33. package/lib/components/document/src/assets/svg-inline.d.ts +8 -0
  34. package/lib/components/document/src/document-auto-capture/DocumentAutoCapture.stories.js +75 -0
  35. package/lib/components/document/src/document-auto-capture/DocumentAutoCapture.tsx +1458 -0
  36. package/lib/components/document/src/document-auto-capture/README.md +73 -0
  37. package/lib/components/document/src/document-auto-capture/assets/Greenbook_Shimmer.svg +42 -0
  38. package/lib/components/document/src/document-auto-capture/assets/ID_Back_Shimmer.svg +8 -0
  39. package/lib/components/document/src/document-auto-capture/assets/ID_Front_Shimmer.svg +20 -0
  40. package/lib/components/document/src/document-auto-capture/assets/Passport-Shimmer.svg +143 -0
  41. package/lib/components/document/src/document-auto-capture/assets/shimmers.ts +21 -0
  42. package/lib/components/document/src/document-auto-capture/assets/svg-raw.d.ts +4 -0
  43. package/lib/components/document/src/document-auto-capture/components/CaptureButton.tsx +122 -0
  44. package/lib/components/document/src/document-auto-capture/components/Overlay.tsx +167 -0
  45. package/lib/components/document/src/document-auto-capture/components/TuningPanel.tsx +856 -0
  46. package/lib/components/document/src/document-auto-capture/constants/captureLayout.ts +58 -0
  47. package/lib/components/document/src/document-auto-capture/detection/cvErrorRecovery.ts +40 -0
  48. package/lib/components/document/src/document-auto-capture/detection/documentAspect.ts +20 -0
  49. package/lib/components/document/src/document-auto-capture/detection/qualityScoring.ts +35 -0
  50. package/lib/components/document/src/document-auto-capture/detection/seamRejection.ts +209 -0
  51. package/lib/components/document/src/document-auto-capture/detection/synthesisTiming.ts +10 -0
  52. package/lib/components/document/src/document-auto-capture/hooks/useCamera.ts +117 -0
  53. package/lib/components/document/src/document-auto-capture/hooks/useCardDetection.ts +3059 -0
  54. package/lib/components/document/src/document-auto-capture/index.ts +4 -0
  55. package/lib/components/document/src/document-auto-capture/theme.ts +40 -0
  56. package/lib/components/document/src/document-auto-capture/utils/debug.ts +25 -0
  57. package/lib/components/document/src/document-auto-capture/utils/opencvLoader.ts +86 -0
  58. package/lib/components/document/src/document-capture-instructions/DocumentCaptureInstructions.tsx +327 -244
  59. package/lib/components/document/src/document-capture-review/DocumentCaptureReview.js +153 -189
  60. package/lib/components/document/src/document-capture-submission/DocumentCaptureSubmission.tsx +432 -0
  61. package/lib/components/document/src/document-capture-submission/index.js +3 -0
  62. package/lib/components/selfie/README.md +13 -0
  63. package/lib/components/signature-pad/package.json +1 -1
  64. package/lib/components/smart-camera-web/src/README.md +11 -0
  65. package/lib/components/smart-camera-web/src/SmartCameraWeb.js +25 -1
  66. package/lib/components/totp-consent/src/TotpConsent.js +1 -1
  67. package/package.json +8 -4
  68. package/dist/esm/DocumentCaptureScreens-ucJDu5nH.js +0 -2232
  69. package/dist/esm/DocumentCaptureScreens-ucJDu5nH.js.map +0 -1
  70. package/dist/esm/EndUserConsent-CsiwoThZ.js +0 -717
  71. package/dist/esm/EndUserConsent-CsiwoThZ.js.map +0 -1
  72. package/dist/esm/PoweredBySmileId-CxbaihMu.js.map +0 -1
  73. package/dist/esm/SelfieCaptureScreens-D3KuMzZA.js.map +0 -1
  74. package/dist/esm/TotpConsent-CRtmtudl.js +0 -734
  75. package/dist/esm/TotpConsent-CRtmtudl.js.map +0 -1
  76. package/dist/esm/index-CUwa6MPI.js +0 -1363
  77. package/dist/esm/styles-BTEClL7R.js +0 -419
  78. package/dist/esm/styles-BTEClL7R.js.map +0 -1
  79. /package/lib/components/document/src/assets/lottie/{taking photo of green book passport.lottie → greenbook.lottie} +0 -0
  80. /package/lib/components/document/src/assets/lottie/{taking photo of ID FLIP 2D.lottie → id-card-flip.lottie} +0 -0
  81. /package/lib/components/document/src/assets/lottie/{taking photo of ID.lottie → id-card.lottie} +0 -0
  82. /package/lib/components/document/src/assets/lottie/{taking photo of passport 2.lottie → passport.lottie} +0 -0
@@ -0,0 +1,73 @@
1
+ # `<document-auto-capture>`
2
+
3
+ Auto-capture document scanner. Designed as a drop-in replacement for the
4
+ legacy `<document-capture>` element. Both elements coexist in the bundle
5
+ until cutover (the same staged rollout used for `SmartSelfieCapture`).
6
+
7
+ ## Usage
8
+
9
+ ```html
10
+ <document-auto-capture
11
+ document-type="id-card"
12
+ auto-capture="autoCapture"
13
+ side-of-id="Front"
14
+ show-navigation
15
+ ></document-auto-capture>
16
+ ```
17
+
18
+ Listen for the publish event on the host element:
19
+
20
+ ```js
21
+ document
22
+ .querySelector('document-auto-capture')
23
+ .addEventListener('document-capture.publish', (e) => {
24
+ const { image, side, captureOrigin } = e.detail;
25
+ // image — base64 JPEG (encoded at JPEG_QUALITY)
26
+ // side — 'Front' | 'Back'
27
+ // captureOrigin — 'camera_auto_capture' | 'camera_manual_capture' | 'gallery'
28
+ });
29
+ ```
30
+
31
+ ## Attributes
32
+
33
+ | Attribute | Default | Description |
34
+ | ---------------------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
35
+ | `document-type` | _(auto-detect)_ | `id-card`, `passport`, or `greenbook`. When omitted the element auto-classifies from contour aspect ratio. |
36
+ | `auto-capture` | `autoCapture` | Matches the mobile SDKs: `autoCapture` (auto with a manual-capture fallback button after the `auto-capture-timeout`, default 20s), `autoCaptureOnly` (no manual button), `manualCaptureOnly` (no auto trigger). |
37
+ | `auto-capture-timeout` | `20000` | Milliseconds before the manual fallback button is surfaced in `autoCapture` mode. Clamped to the 3000–30000ms range. |
38
+ | `side-of-id` | `Front` | Echoed into the publish event so consumers can wire front/back flows. |
39
+ | `show-navigation` | `false` | Embed the shared `<smileid-navigation>` header. |
40
+ | `hide-attribution` | `false` | Hide the "Powered by Smile ID" footer. |
41
+ | `allow-gallery-upload` | `true` | Show a gallery-pick button alongside the capture controls. |
42
+ | `sync-roi-to-guide` | `true` | When `true` (default), the detection ROI matches the visible guide-box width (`100% − 16rem` rotated, `100% − 4rem` otherwise, capped at 600px). When `false`, ROI uses the legacy `min(displayW × 0.90, 600px)` and is wider than the visible guide. Provided as an A/B switch — see the repository-root `AGENTS.md`. |
43
+ | `title` | _(none)_ | Optional title overlay rendered at the top of the camera viewport. |
44
+
45
+ ## Events
46
+
47
+ Dispatched by the element (bubbling, composed):
48
+
49
+ | Event | Detail | Notes |
50
+ | ---------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
51
+ | `document-capture.publish` | `{ image, previewImage, originalWidth, originalHeight, side, captureOrigin }` | Fired once per session when an image is captured. Payload is JPEG base64 encoded at the package's `JPEG_QUALITY`. |
52
+ | `document-capture.cancelled` | — | Forwarded from `<smileid-navigation>`'s back button when `show-navigation` is set. |
53
+ | `document-capture.close` | — | Forwarded from `<smileid-navigation>`'s close button or the in-camera close icon. |
54
+
55
+ Dispatched on `<smart-camera-web>` (matching `SmartSelfieCapture`):
56
+
57
+ - `metadata.document-capture-start` / `metadata.document-capture-end`
58
+
59
+ ## OpenCV runtime
60
+
61
+ Auto-capture relies on OpenCV.js. The element loads
62
+ `https://web-models.smileidentity.com/open-cv/4.8.0-opencv.min.js` lazily on
63
+ mount unless the page already includes it. Hosts with strict CSP must either
64
+ allow that origin (`script-src https://web-models.smileidentity.com`) or
65
+ self-host the file and inject a `<script>` tag before the element is mounted.
66
+
67
+ If the runtime is not ready within 20 seconds the element surfaces a manual
68
+ capture button (or, in `autoCaptureOnly` mode, an error message).
69
+
70
+ ## Debug mode
71
+
72
+ Append `?debug` to the page URL to reveal the in-component tuning panel
73
+ (thresholds for blur, glare, edge density, stability frames, etc.).
@@ -0,0 +1,42 @@
1
+ <svg width="308" height="374" viewBox="0 0 308 374" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <rect x="0.5" y="0.5" width="307" height="372.603" stroke="white" stroke-opacity="0.6"/>
3
+ <path d="M299.106 13.8989V72.2744H8.89697V13.8989H299.106Z" fill="white" fill-opacity="0.6"/>
4
+ <path d="M298.606 14.3989V71.7739H9.39697V14.3989H298.606Z" stroke="white" stroke-opacity="0.6"/>
5
+ <path d="M299.106 13.8989V72.2744H8.89697V13.8989H299.106Z" stroke="white" stroke-opacity="0.6"/>
6
+ <path d="M20.017 57.541H242.4" stroke="white" stroke-opacity="0.6" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/>
7
+ <path d="M20.017 41.9746H166.234" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
8
+ <path d="M20.017 28.2142L131.208 28.0752" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
9
+ <path d="M8.89697 100.072H106.745" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
10
+ <path d="M8.89697 118.418H173.46" stroke="white" stroke-opacity="0.6" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/>
11
+ <path d="M8.89697 153.166H106.745" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
12
+ <path d="M8.89697 171.513H173.46" stroke="white" stroke-opacity="0.6" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/>
13
+ <path d="M125.648 266.581H223.497" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
14
+ <path d="M125.648 287.151H223.497" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
15
+ <path d="M125.648 246.011H290.211" stroke="white" stroke-opacity="0.6" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/>
16
+ <path d="M125.648 329.404H223.497" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
17
+ <path d="M125.648 349.975H223.497" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
18
+ <path d="M125.648 308.835H290.211" stroke="white" stroke-opacity="0.6" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/>
19
+ <path d="M8.89697 206.26H106.745" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
20
+ <path d="M8.89697 224.606H111.749" stroke="white" stroke-opacity="0.6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
21
+ <path d="M106.114 242.285V357.241C106.114 358.878 104.785 360.207 103.147 360.207H18.5998C16.9625 360.207 15.6332 358.878 15.6332 357.241V242.285C15.6332 240.648 16.9625 239.319 18.5998 239.319H103.147C104.785 239.319 106.114 240.648 106.114 242.285Z" stroke="white" stroke-opacity="0.6" stroke-width="4.002"/>
22
+ <mask id="mask0_3659_6009" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="13" y="237" width="96" height="126">
23
+ <path d="M106.115 242.285V357.241C106.115 358.878 104.785 360.207 103.148 360.207H18.6003C16.9631 360.207 15.6337 358.878 15.6337 357.241V242.285C15.6337 240.648 16.9631 239.319 18.6003 239.319H103.148C104.785 239.319 106.115 240.648 106.115 242.285Z" fill="#FFFBFA"/>
24
+ <path d="M18.6005 240.653H103.148C104.049 240.653 104.78 241.385 104.78 242.286V357.241C104.78 358.141 104.049 358.873 103.148 358.874H18.6005C17.7001 358.874 16.9678 358.141 16.9677 357.241V242.286C16.9677 241.385 17.7 240.653 18.6005 240.653Z" stroke="white" stroke-opacity="0.5" stroke-width="2.668"/>
25
+ <path d="M106.115 242.285V357.241C106.115 358.878 104.785 360.207 103.148 360.207H18.6003C16.9631 360.207 15.6337 358.878 15.6337 357.241V242.285C15.6337 240.648 16.9631 239.319 18.6003 239.319H103.148C104.785 239.319 106.115 240.648 106.115 242.285Z" stroke="white" stroke-opacity="0.5" stroke-width="4.002"/>
26
+ </mask>
27
+ <g mask="url(#mask0_3659_6009)">
28
+ <path d="M35.4509 281.118C33.5061 279.671 30.0419 282.496 29.8858 288.646C29.7413 294.346 32.7765 297.572 35.5226 297.572C38.2687 297.572 37.9067 282.945 35.4509 281.118Z" fill="#FFFBFA" fill-opacity="0.6"/>
29
+ <path d="M34.1748 282.316C34.3622 282.267 34.4513 282.303 34.5273 282.36C34.4941 282.335 34.636 282.446 34.8438 282.945C35.0322 283.397 35.2126 284.015 35.3691 284.773C35.6813 286.284 35.8646 288.183 35.8906 290.052C35.9168 291.931 35.782 293.683 35.5049 294.919C35.3922 295.422 35.2694 295.769 35.165 295.987C33.6554 295.692 31.3083 293.591 31.4326 288.685C31.5041 285.871 32.3306 284.006 33.1641 283.05C33.5827 282.57 33.9502 282.375 34.1748 282.316Z" stroke="white" stroke-opacity="0.6" stroke-width="3.09488"/>
30
+ <path d="M35.4509 281.118C33.5061 279.671 30.0419 282.496 29.8858 288.646C29.7413 294.346 32.7765 297.572 35.5226 297.572C38.2687 297.572 37.9067 282.945 35.4509 281.118Z" stroke="white" stroke-opacity="0.6" stroke-width="4.02334"/>
31
+ <path d="M85.2532 281.118C87.0268 279.671 90.186 282.496 90.3284 288.646C90.4602 294.346 87.6922 297.572 85.1878 297.572C82.6834 297.572 83.0134 282.945 85.2532 281.118Z" fill="#FFFBFA" fill-opacity="0.6"/>
32
+ <path d="M86.2411 282.31C86.242 282.315 86.12 282.455 85.951 282.899C85.7765 283.358 85.6104 283.984 85.4667 284.747C85.1802 286.267 85.013 288.175 84.9891 290.05C84.9652 291.935 85.0872 293.698 85.3427 294.948C85.435 295.399 85.5361 295.73 85.6259 295.956C86.1603 295.8 86.8313 295.354 87.4501 294.403C88.2366 293.194 88.8413 291.284 88.7811 288.681C88.7152 285.836 87.952 283.953 87.1913 282.997C86.8077 282.514 86.493 282.348 86.3466 282.306C86.2686 282.284 86.2611 282.292 86.2411 282.31Z" stroke="white" stroke-opacity="0.6" stroke-width="3.09488"/>
33
+ <path d="M85.2532 281.118C87.0268 279.671 90.186 282.496 90.3284 288.646C90.4602 294.346 87.6922 297.572 85.1878 297.572C82.6834 297.572 83.0134 282.945 85.2532 281.118Z" stroke="white" stroke-opacity="0.6" stroke-width="4.02334"/>
34
+ <path d="M73.8115 318.77L46.5341 318.77C46.5341 318.77 45.698 328.435 43.3321 333.167C40.9663 337.898 13.125 349.449 8.59629 359.669C0.638425 377.627 46.0628 374.974 59.7296 374.892C72.3538 374.814 123.124 374.678 111.725 357.042C107.699 350.813 79.6802 336.178 77.5277 333.167C75.377 330.156 73.8115 318.77 73.8115 318.77Z" fill="#FFFBFA" fill-opacity="0.6"/>
35
+ <path d="M72.4802 320.318C72.5058 320.481 72.5321 320.657 72.5623 320.843C72.7449 321.972 73.0117 323.511 73.3474 325.15C73.6822 326.784 74.0902 328.54 74.5583 330.093C75.0109 331.595 75.5701 333.088 76.2683 334.066L76.2693 334.067C76.5197 334.417 76.8764 334.751 77.2234 335.044C77.592 335.356 78.0428 335.697 78.5505 336.06C79.5668 336.787 80.8828 337.649 82.3855 338.599C85.3829 340.495 89.2481 342.823 93.1091 345.213C96.9937 347.618 100.905 350.103 104.089 352.368C105.681 353.5 107.071 354.563 108.175 355.52C109.3 356.496 110.043 357.291 110.426 357.882C111.713 359.874 111.986 361.401 111.761 362.58C111.536 363.765 110.748 364.914 109.261 366.019C106.223 368.278 100.871 369.906 94.4695 371.027C81.7738 373.249 66.0573 373.305 59.7205 373.344C52.7845 373.386 38.1859 374.064 26.2537 372.511C20.2515 371.73 15.2074 370.412 12.1755 368.355C10.692 367.348 9.79979 366.238 9.42651 365.027C9.05685 363.827 9.12545 362.296 10.0115 360.296C10.9817 358.107 13.3104 355.664 16.5613 353.096C19.7676 350.564 23.6789 348.054 27.5789 345.682C31.4325 343.339 35.35 341.087 38.3708 339.174C39.8923 338.211 41.246 337.298 42.3064 336.458C43.3125 335.662 44.2544 334.783 44.7166 333.859C46.0124 331.267 46.8407 327.463 47.3464 324.45C47.604 322.915 47.7856 321.533 47.9031 320.535C47.9118 320.46 47.9185 320.388 47.9265 320.318H72.4802Z" stroke="white" stroke-opacity="0.6" stroke-width="3.09488"/>
36
+ <path d="M74.8812 318.235L47.069 318.235C47.069 318.235 45.698 328.435 43.3321 333.167C40.9663 337.899 13.125 349.449 8.59629 359.67C0.638425 377.628 46.0628 374.974 59.7296 374.892C72.3538 374.814 123.124 374.678 111.725 357.042C107.699 350.813 79.6802 336.178 77.5277 333.167C75.377 330.156 74.8812 318.235 74.8812 318.235Z" stroke="white" stroke-opacity="0.6" stroke-width="4.02334"/>
37
+ <path d="M84.3043 278.215V298.217C84.3043 311.571 73.462 322.413 60.1081 322.413C46.7542 322.413 35.9119 311.571 35.9119 298.217V278.215C35.9119 264.861 46.7542 254.019 60.1081 254.019C73.462 254.019 84.3043 264.861 84.3043 278.215Z" fill="#FFFBFA" fill-opacity="0.6"/>
38
+ <path d="M60.1082 255.566C72.6074 255.566 82.7566 265.716 82.7566 278.215V298.217C82.7566 310.716 72.6074 320.866 60.1082 320.866C47.6089 320.866 37.4597 310.716 37.4597 298.217V278.215C37.4597 265.716 47.6089 255.566 60.1082 255.566Z" stroke="white" stroke-opacity="0.6" stroke-width="3.09488"/>
39
+ <path d="M84.3043 278.215V298.217C84.3043 311.571 73.462 322.413 60.1081 322.413C46.7542 322.413 35.9119 311.571 35.9119 298.217V278.215C35.9119 264.861 46.7542 254.019 60.1081 254.019C73.462 254.019 84.3043 264.861 84.3043 278.215Z" stroke="white" stroke-opacity="0.6" stroke-width="4.02334"/>
40
+ </g>
41
+ <path d="M106.114 242.285V357.241C106.114 358.878 104.785 360.207 103.147 360.207H18.5998C16.9625 360.207 15.6332 358.878 15.6332 357.241V242.285C15.6332 240.648 16.9625 239.319 18.5998 239.319H103.147C104.785 239.319 106.114 240.648 106.114 242.285Z" stroke="white" stroke-opacity="0.6" stroke-width="4.002"/>
42
+ </svg>
@@ -0,0 +1,8 @@
1
+ <svg width="438" height="278" viewBox="0 0 438 278" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M401.215 3L36.7854 3C18.1262 3 3 18.1755 3 36.8954L3 241.105C3 259.825 18.1262 275 36.7854 275L401.215 275C419.874 275 435 259.825 435 241.105L435 36.8954C435 18.1755 419.874 3 401.215 3Z" stroke="white" stroke-opacity="0.6" stroke-width="6" stroke-miterlimit="10"/>
3
+ <path d="M45.8555 66.2363L327.172 66.2363" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
4
+ <path d="M45.8555 99.3798L327.172 99.3798" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
5
+ <path d="M45.8555 132.523L327.172 132.523" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
6
+ <path d="M45.8555 165.667L209.957 165.667" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
7
+ <path d="M45.8555 198.81L167.333 198.81" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
8
+ </svg>
@@ -0,0 +1,20 @@
1
+ <svg width="432" height="272" viewBox="0 0 432 272" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_3659_4843)">
3
+ <path d="M395.735 2.92474L36.2644 2.92474C17.8591 2.92474 2.93872 17.7739 2.93872 36.0912L2.93872 235.909C2.93872 254.226 17.8591 269.075 36.2644 269.075L395.735 269.075C414.141 269.075 429.061 254.226 429.061 235.909L429.061 36.0912C429.061 17.7739 414.141 2.92474 395.735 2.92474Z" stroke="white" stroke-opacity="0.6" stroke-width="6" stroke-miterlimit="10"/>
4
+ <path d="M135.007 161.942C135.527 172.169 136.457 182.513 138.103 185.087C140.875 189.425 165.845 205.921 184.144 217.688C185.255 214.79 185.823 211.713 185.819 208.611L185.819 54.0393C185.801 47.2211 183.075 40.6865 178.236 35.8598C173.398 31.0331 166.838 28.3058 159.987 28.2724L58.6873 28.2724C51.828 28.293 45.2556 31.0146 40.4062 35.8427C35.5568 40.6707 32.8246 47.2127 32.8065 54.0393L32.8065 208.631C32.805 211.887 33.4302 215.114 34.6482 218.136C48.8131 209.148 78.1126 190.302 81.3257 186.354C83.4808 183.712 84.862 171.643 85.7045 160.363" stroke="white" stroke-opacity="0.6" stroke-width="5" stroke-miterlimit="10"/>
5
+ <path d="M159.987 28.2724L58.6971 28.2724C44.3981 28.2724 32.8065 39.8086 32.8065 54.0393L32.8065 208.602C32.8065 222.832 44.3981 234.368 58.6971 234.368L159.987 234.368C174.286 234.368 185.878 222.832 185.878 208.602L185.878 54.0393C185.878 39.8086 174.286 28.2724 159.987 28.2724Z" stroke="white" stroke-opacity="0.6" stroke-width="6" stroke-miterlimit="10"/>
6
+ <path d="M151.611 100.474V128.064C154.817 127.424 157.702 125.701 159.778 123.187C161.854 120.673 162.994 117.523 163.004 114.269C162.994 111.015 161.854 107.865 159.778 105.351C157.702 102.838 154.817 101.115 151.611 100.474Z" stroke="white" stroke-opacity="0.6" stroke-width="5" stroke-miterlimit="10"/>
7
+ <path d="M72.1176 100.474C68.9138 101.117 66.0313 102.84 63.9572 105.354C61.8832 107.867 60.7448 111.017 60.7347 114.269C60.7458 117.524 61.8869 120.676 63.9648 123.19C66.0427 125.704 68.9298 127.426 72.1372 128.064L72.1176 100.474Z" stroke="white" stroke-opacity="0.6" stroke-width="5" stroke-miterlimit="10"/>
8
+ <path d="M112.967 53.6591H110.762C89.4195 53.6591 72.1176 70.8783 72.1176 92.1193L72.1176 130.199C72.1176 151.44 89.4195 168.659 110.762 168.659H112.967C134.31 168.659 151.611 151.44 151.611 130.199V92.1193C151.611 70.8783 134.31 53.6591 112.967 53.6591Z" stroke="white" stroke-opacity="0.6" stroke-width="5" stroke-miterlimit="10"/>
9
+ <path d="M213.385 65.1143L386.606 65.1143" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
10
+ <path d="M213.385 97.3838L386.606 97.3838" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
11
+ <path d="M213.385 129.663L386.606 129.663" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
12
+ <path d="M213.385 161.942L313.842 161.942" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
13
+ <path d="M213.385 194.212H288.167" stroke="white" stroke-opacity="0.6" stroke-width="7" stroke-miterlimit="10" stroke-linecap="round"/>
14
+ </g>
15
+ <defs>
16
+ <clipPath id="clip0_3659_4843">
17
+ <rect width="432" height="272" fill="white"/>
18
+ </clipPath>
19
+ </defs>
20
+ </svg>
@@ -0,0 +1,143 @@
1
+ <svg width="356" height="274" viewBox="0 0 356 274" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M6.66016 1.25C6.66016 1.25 6.66016 254.867 6.66016 257.888C6.66016 260.91 9.10521 268.73 17.0272 268.73C24.9492 268.73 332.439 268.73 340.557 268.73C348.674 268.73 351.511 262.509 351.511 257.888C351.511 253.267 351.706 1.25 351.706 1.25" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M6.66016 1.25C6.66016 1.25 6.66016 254.867 6.66016 257.888C6.66016 260.91 9.10521 268.73 17.0272 268.73C24.9492 268.73 332.439 268.73 340.557 268.73C348.674 268.73 351.511 262.509 351.511 257.888C351.511 253.267 351.706 1.25 351.706 1.25" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
4
+ <path d="M7.0498 28.6196H351.118" stroke="white" stroke-opacity="0.3"/>
5
+ <mask id="mask0_3659_5705" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="28" width="356" height="246">
6
+ <path d="M0 28.9111H356V273.25H0V28.9111Z" fill="white"/>
7
+ </mask>
8
+ <g mask="url(#mask0_3659_5705)">
9
+ <path d="M128.766 82.948V198.263C128.766 199.905 127.298 201.239 125.49 201.239H32.1473C30.3397 201.239 28.8721 199.905 28.8721 198.263V82.948C28.8721 81.3057 30.3397 79.9722 32.1473 79.9722H125.49C127.298 79.9722 128.766 81.3057 128.766 82.948Z" stroke="white" stroke-opacity="0.6" stroke-width="3.1395"/>
10
+ <mask id="mask1_3659_5705" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="27" y="78" width="104" height="125">
11
+ <path d="M128.766 82.948V198.263C128.766 199.905 127.298 201.239 125.49 201.239H32.1473C30.3397 201.239 28.8721 199.905 28.8721 198.263V82.948C28.8721 81.3057 30.3397 79.9722 32.1473 79.9722H125.49C127.298 79.9722 128.766 81.3057 128.766 82.948Z" fill="#FFFBFA"/>
12
+ <path d="M128.766 82.948V198.263C128.766 199.905 127.298 201.239 125.49 201.239H32.1473C30.3397 201.239 28.8721 199.905 28.8721 198.263V82.948C28.8721 81.3057 30.3397 79.9722 32.1473 79.9722H125.49C127.298 79.9722 128.766 81.3057 128.766 82.948Z" stroke="#0F0F0F" stroke-width="3.1395"/>
13
+ </mask>
14
+ <g mask="url(#mask1_3659_5705)">
15
+ <path d="M50.0451 121.902C48.1441 120.451 44.7581 123.285 44.6056 129.454C44.4643 135.172 47.431 138.408 50.1151 138.408C52.7993 138.408 52.4455 123.735 50.0451 121.902Z" fill="white" fill-opacity="0.6"/>
16
+ <path d="M48.7296 122.775C48.9828 122.707 49.1568 122.751 49.3087 122.867C49.3097 122.867 49.3236 122.879 49.3488 122.908C49.3751 122.938 49.4088 122.983 49.4493 123.046C49.5318 123.175 49.6254 123.354 49.7228 123.594C49.9185 124.076 50.1002 124.721 50.256 125.495C50.5667 127.038 50.7469 128.967 50.7726 130.859C50.7984 132.759 50.6672 134.549 50.3878 135.828C50.2458 136.477 50.0834 136.91 49.9396 137.15C49.932 137.162 49.9228 137.173 49.9161 137.183C49.108 137.108 48.1268 136.574 47.298 135.382C46.4107 134.106 45.7541 132.132 45.8195 129.484C45.8909 126.597 46.7174 124.638 47.5948 123.606C48.035 123.088 48.4433 122.852 48.7296 122.775Z" stroke="white" stroke-opacity="0.6" stroke-width="2.42788"/>
17
+ <path d="M50.0451 121.902C48.1441 120.451 44.7581 123.285 44.6056 129.454C44.4643 135.172 47.431 138.408 50.1151 138.408C52.7993 138.408 52.4455 123.735 50.0451 121.902Z" stroke="white" stroke-opacity="0.6" stroke-width="3.64182"/>
18
+ <path d="M106.568 121.902C108.235 120.451 111.204 123.285 111.338 129.454C111.462 135.172 108.86 138.408 106.507 138.408C104.153 138.408 104.463 123.735 106.568 121.902Z" fill="white" fill-opacity="0.6"/>
19
+ <path d="M107.642 122.763C107.515 122.724 107.456 122.739 107.366 122.818C107.36 122.824 107.318 122.869 107.252 122.986C107.179 123.117 107.095 123.301 107.008 123.545C106.834 124.035 106.672 124.687 106.535 125.465C106.26 127.019 106.102 128.958 106.079 130.857C106.057 132.763 106.172 134.565 106.419 135.858C106.538 136.476 106.676 136.904 106.8 137.161C107.38 137.04 108.135 136.558 108.815 135.443C109.598 134.157 110.182 132.159 110.124 129.48C110.061 126.561 109.326 124.581 108.554 123.545C108.165 123.023 107.829 122.821 107.642 122.763Z" stroke="white" stroke-opacity="0.6" stroke-width="2.42788"/>
20
+ <path d="M106.568 121.902C108.235 120.451 111.204 123.285 111.338 129.454C111.462 135.172 108.86 138.408 106.507 138.408C104.153 138.408 104.463 123.735 106.568 121.902Z" stroke="white" stroke-opacity="0.6" stroke-width="3.64182"/>
21
+ <path d="M90.3233 160.88H66.0906C66.0906 160.88 62.1141 176.518 59.5109 180.536C56.9077 184.554 26.2735 194.363 21.2905 203.043C12.5344 218.293 62.5154 216.04 77.5533 215.97C91.4439 215.904 147.307 215.789 134.765 200.812C130.334 195.522 99.5052 183.093 97.1368 180.536C94.7703 177.979 90.3233 160.88 90.3233 160.88Z" fill="white" fill-opacity="0.6"/>
22
+ <path d="M89.3899 162.094C89.514 162.557 89.6816 163.179 89.885 163.916C90.3408 165.565 90.9738 167.794 91.6819 170.105C92.3889 172.413 93.1758 174.82 93.9397 176.82C94.3213 177.819 94.7034 178.733 95.0735 179.491C95.3855 180.129 95.7246 180.732 96.0881 181.179L96.2463 181.361C96.5019 181.637 96.8676 181.903 97.2375 182.144C97.6294 182.4 98.1131 182.683 98.6653 182.988C99.7708 183.598 101.209 184.324 102.86 185.13C106.156 186.74 110.396 188.71 114.655 190.745C118.93 192.787 123.247 194.904 126.765 196.835C128.524 197.801 130.068 198.712 131.298 199.536C132.551 200.374 133.397 201.069 133.834 201.591C135.276 203.313 135.522 204.562 135.298 205.469C135.061 206.429 134.2 207.441 132.466 208.436C129.001 210.424 122.974 211.825 115.908 212.78C101.866 214.677 84.5075 214.722 77.5471 214.755C69.9657 214.791 53.8169 215.369 40.6204 214.043C33.9909 213.377 28.301 212.246 24.8362 210.431C23.1088 209.526 22.1083 208.541 21.7043 207.53C21.3236 206.576 21.3722 205.338 22.343 203.647C23.4198 201.771 26.0198 199.667 29.6301 197.466C33.1841 195.3 37.5122 193.157 41.8088 191.14C46.0708 189.14 50.3529 187.241 53.6741 185.619C55.3419 184.804 56.8126 184.037 57.9583 183.337C58.5311 182.987 59.0426 182.642 59.4651 182.304C59.8753 181.976 60.2636 181.606 60.5295 181.196C61.2629 180.064 62.039 178.215 62.7776 176.185C63.5278 174.123 64.2767 171.766 64.9397 169.549C65.6034 167.33 66.1855 165.239 66.6008 163.704C66.775 163.06 66.9187 162.512 67.0286 162.094H89.3899Z" stroke="white" stroke-opacity="0.6" stroke-width="2.42788"/>
23
+ <path d="M89.8825 161.681H66.5311C66.5311 161.681 62.114 177.65 59.5108 181.553C56.9076 185.457 26.2734 194.985 21.2904 203.417C12.5342 218.231 62.5153 216.042 77.5532 215.974C91.4438 215.91 147.307 215.798 134.765 201.249C130.334 196.111 99.5051 184.037 97.1367 181.553C94.7702 179.069 89.8825 161.681 89.8825 161.681Z" stroke="white" stroke-opacity="0.6" stroke-width="3.64182"/>
24
+ <path d="M104.687 118.99V139.054C104.687 152.45 92.7168 163.326 77.9737 163.326C63.2306 163.326 51.2604 152.45 51.2604 139.054V118.99C51.2604 105.594 63.2306 94.7178 77.9737 94.7178C92.7168 94.7178 104.687 105.594 104.687 118.99Z" fill="white" fill-opacity="0.6"/>
25
+ <path d="M77.9733 95.9316C92.1579 95.9316 103.473 106.371 103.473 118.989V139.055C103.473 151.673 92.1579 162.112 77.9733 162.112C63.7888 162.112 52.4744 151.673 52.4742 139.055V118.989C52.4745 106.371 63.7889 95.9319 77.9733 95.9316Z" stroke="white" stroke-opacity="0.6" stroke-width="2.42788"/>
26
+ <path d="M104.687 118.99V139.054C104.687 152.45 92.7168 163.326 77.9737 163.326C63.2306 163.326 51.2604 152.45 51.2604 139.054V118.99C51.2604 105.594 63.2306 94.7178 77.9737 94.7178C92.7168 94.7178 104.687 105.594 104.687 118.99Z" stroke="white" stroke-opacity="0.6" stroke-width="3.64182"/>
27
+ </g>
28
+ <path d="M128.766 82.948V198.263C128.766 199.905 127.298 201.239 125.49 201.239H32.1473C30.3397 201.239 28.8721 199.905 28.8721 198.263V82.948C28.8721 81.3057 30.3397 79.9722 32.1473 79.9722H125.49C127.298 79.9722 128.766 81.3057 128.766 82.948Z" stroke="white" stroke-opacity="0.6" stroke-width="3.1395"/>
29
+ </g>
30
+ <path d="M21.1331 47.1025H334.1" stroke="white" stroke-opacity="0.3" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
31
+ <path d="M57.7121 57.207V71.9584H26.8066V57.207H57.7121Z" fill="white" fill-opacity="0.3"/>
32
+ <path d="M26.8818 64.752H57.8116" stroke="white" stroke-opacity="0.3" stroke-width="1.5"/>
33
+ <path d="M42.4544 59.6953C45.3692 59.6953 47.7357 61.8456 47.7357 64.4939C47.7357 67.1423 45.3692 69.2926 42.4544 69.2926C39.5397 69.2926 37.1731 67.1423 37.1731 64.4939C37.1731 61.8456 39.5397 59.6953 42.4544 59.6953Z" stroke="white" stroke-opacity="0.3" stroke-width="1.5"/>
34
+ <path d="M128.253 68.8128H129.88V62.1018H132.785V60.8506H125.349V62.1018H128.253V68.8128Z" fill="white" fill-opacity="0.3"/>
35
+ <path d="M123.146 63.6828C123.146 64.1911 122.963 64.5836 122.596 64.8601C122.228 65.1367 121.69 65.2753 120.981 65.2753H119.078V62.1018H120.981C121.69 62.1018 122.228 62.2383 122.596 62.5113C122.963 62.7843 123.146 63.1745 123.146 63.6828ZM124.937 68.8128L122.921 66.1966C123.522 65.9841 123.983 65.662 124.304 65.2298C124.626 64.7976 124.786 64.2821 124.786 63.6828C124.786 63.0992 124.636 62.5944 124.336 62.17C124.035 61.7456 123.603 61.4193 123.04 61.1918C122.477 60.9643 121.815 60.8506 121.056 60.8506H117.45V68.8128H119.078V66.4924H121.056C121.206 66.4924 121.319 66.4888 121.394 66.481L123.184 68.8128H124.937Z" fill="white" fill-opacity="0.3"/>
36
+ <path d="M111.005 67.6303C110.42 67.6303 109.894 67.5108 109.427 67.272C108.96 67.0331 108.593 66.6997 108.326 66.271C108.059 65.8423 107.925 65.3632 107.925 64.8321C107.925 64.3011 108.059 63.8219 108.326 63.3933C108.593 62.9646 108.96 62.6312 109.427 62.3923C109.894 62.1534 110.42 62.034 111.005 62.034C111.589 62.034 112.114 62.1534 112.582 62.3923C113.049 62.6312 113.417 62.9646 113.684 63.3933C113.951 63.8219 114.084 64.3011 114.084 64.8321C114.084 65.3632 113.951 65.8423 113.684 66.271C113.417 66.6997 113.049 67.0331 112.582 67.272C112.114 67.5108 111.589 67.6303 111.005 67.6303ZM111.005 68.927C111.897 68.927 112.703 68.7507 113.421 68.3981C114.138 68.0454 114.702 67.5585 115.111 66.9364C115.52 66.3144 115.724 65.6134 115.724 64.8321C115.724 64.0509 115.52 63.3499 115.111 62.7278C114.702 62.1058 114.138 61.6188 113.421 61.2662C112.703 60.9136 111.897 60.7373 111.005 60.7373C110.112 60.7373 109.306 60.9136 108.589 61.2662C107.87 61.6188 107.308 62.1079 106.899 62.7335C106.489 63.3591 106.285 64.0587 106.285 64.8321C106.285 65.6056 106.489 66.3051 106.899 66.9307C107.308 67.5563 107.87 68.0454 108.589 68.3981C109.306 68.7507 110.112 68.927 111.005 68.927Z" fill="white" fill-opacity="0.3"/>
37
+ <path d="M101.352 65.2639H99.4487V62.1018H101.352C102.061 62.1018 102.6 62.2383 102.966 62.5113C103.333 62.7843 103.517 63.1745 103.517 63.6828C103.517 64.1911 103.333 64.5814 102.966 64.8544C102.6 65.1274 102.061 65.2639 101.352 65.2639ZM101.427 60.8506H97.8213V68.8128H99.4487V66.5151H101.427C102.186 66.5151 102.848 66.4014 103.411 66.1739C103.974 65.9464 104.406 65.6187 104.707 65.19C105.007 64.7613 105.157 64.2594 105.157 63.6828C105.157 63.0992 105.007 62.5944 104.707 62.17C104.406 61.7456 103.974 61.4193 103.411 61.1918C102.848 60.9643 102.186 60.8506 101.427 60.8506Z" fill="white" fill-opacity="0.3"/>
38
+ <path d="M92.6632 68.927C93.4307 68.927 94.0817 68.8211 94.6161 68.6085C95.1497 68.3959 95.5487 68.1116 95.8116 67.7554C96.0745 67.3992 96.206 67.0011 96.206 66.5611C96.206 66.0457 96.0573 65.6362 95.7615 65.3326C95.465 65.0291 95.1082 64.8037 94.6912 64.6558C94.2742 64.508 93.7398 64.3658 93.0888 64.2293C92.6131 64.1234 92.2375 64.0281 91.9621 63.9449C91.6867 63.8617 91.459 63.748 91.2798 63.6037C91.1007 63.4594 91.0107 63.2738 91.0107 63.0463C91.0107 62.72 91.1672 62.4584 91.4801 62.2615C91.7931 62.0646 92.2704 61.9658 92.9135 61.9658C93.3055 61.9658 93.71 62.0191 94.1278 62.125C94.5449 62.2309 94.9455 62.3866 95.3296 62.5914L95.8429 61.4425C95.4673 61.215 95.0206 61.0409 94.5034 60.9193C93.9862 60.7977 93.4597 60.7373 92.9261 60.7373C92.1585 60.7373 91.5091 60.8432 90.9794 61.0558C90.4489 61.2684 90.053 61.5541 89.7901 61.9146C89.5272 62.275 89.3958 62.6745 89.3958 63.1146C89.3958 63.6378 89.5437 64.053 89.8402 64.3601C90.1367 64.6672 90.4912 64.8926 90.9043 65.0369C91.3174 65.1812 91.8573 65.3248 92.5255 65.4691C93.0012 65.575 93.3767 65.6703 93.6521 65.7535C93.9275 65.8367 94.1545 65.9525 94.3344 66.1004C94.5136 66.2483 94.6036 66.436 94.6036 66.6634C94.6036 66.9741 94.4424 67.2243 94.1216 67.4142C93.8 67.604 93.3141 67.6985 92.6632 67.6985C92.1374 67.6985 91.6132 67.6168 91.0921 67.454C90.5702 67.2912 90.1297 67.0807 89.7713 66.8227L89.208 67.9715C89.575 68.2594 90.0741 68.4912 90.704 68.6654C91.3338 68.8395 91.9872 68.927 92.6632 68.927Z" fill="white" fill-opacity="0.3"/>
39
+ <path d="M84.7879 68.927C85.5555 68.927 86.2064 68.8211 86.7408 68.6085C87.2752 68.3959 87.6735 68.1116 87.9364 67.7554C88.1993 67.3992 88.3307 67.0011 88.3307 66.5611C88.3307 66.0457 88.1828 65.6362 87.8863 65.3326C87.5898 65.0291 87.233 64.8037 86.8159 64.6558C86.3989 64.508 85.8645 64.3658 85.2136 64.2293C84.7378 64.1234 84.3623 64.0281 84.0869 63.9449C83.8115 63.8617 83.5838 63.748 83.4046 63.6037C83.2254 63.4594 83.1355 63.2738 83.1355 63.0463C83.1355 62.72 83.2919 62.4584 83.6049 62.2615C83.9179 62.0646 84.3959 61.9658 85.0383 61.9658C85.4303 61.9658 85.8356 62.0191 86.2526 62.125C86.6696 62.2309 87.0702 62.3866 87.4544 62.5914L87.9677 61.4425C87.5921 61.215 87.1453 61.0409 86.6282 60.9193C86.111 60.7977 85.5852 60.7373 85.0508 60.7373C84.2833 60.7373 83.6339 60.8432 83.1042 61.0558C82.5745 61.2684 82.1778 61.5541 81.9149 61.9146C81.652 62.275 81.5205 62.6745 81.5205 63.1146C81.5205 63.6378 81.6684 64.053 81.965 64.3601C82.2615 64.6672 82.6159 64.8926 83.029 65.0369C83.4422 65.1812 83.9828 65.3248 84.6502 65.4691C85.1259 65.575 85.5015 65.6703 85.7769 65.7535C86.0523 65.8367 86.28 65.9525 86.4592 66.1004C86.6383 66.2483 86.7283 66.436 86.7283 66.6634C86.7283 66.9741 86.5679 67.2243 86.2463 67.4142C85.9248 67.604 85.4389 67.6985 84.7879 67.6985C84.2621 67.6985 83.7387 67.6168 83.2168 67.454C82.695 67.2912 82.2552 67.0807 81.8961 66.8227L81.3328 67.9715C81.6997 68.2594 82.1989 68.4912 82.8287 68.6654C83.4586 68.8395 84.1119 68.927 84.7879 68.927Z" fill="white" fill-opacity="0.3"/>
40
+ <path d="M74.5472 65.8099L76.1871 62.3293L77.8396 65.8099H74.5472ZM79.2542 68.8128H80.9568L77.0009 60.8506H75.3985L71.4551 68.8128H73.1326L73.9964 66.9701H78.3779L79.2542 68.8128Z" fill="white" fill-opacity="0.3"/>
41
+ <path d="M67.7002 65.2639H65.7974V62.1018H67.7002C68.4098 62.1018 68.9481 62.2383 69.3151 62.5113C69.6821 62.7843 69.8659 63.1745 69.8659 63.6828C69.8659 64.1911 69.6821 64.5814 69.3151 64.8544C68.9481 65.1274 68.4098 65.2639 67.7002 65.2639ZM67.7753 60.8506H64.1699V68.8128H65.7974V66.5151H67.7753C68.535 66.5151 69.1962 66.4014 69.7595 66.1739C70.3229 65.9464 70.7547 65.6187 71.0552 65.19C71.3556 64.7613 71.5059 64.2594 71.5059 63.6828C71.5059 63.0992 71.3556 62.5944 71.0552 62.17C70.7547 61.7456 70.3229 61.4193 69.7595 61.1918C69.1962 60.9643 68.535 60.8506 67.7753 60.8506Z" fill="white" fill-opacity="0.3"/>
42
+ <path d="M150.82 58.1235H164.317" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
43
+ <path d="M150.82 78.917H179.574" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
44
+ <path d="M150.82 87.6255H176.053" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
45
+ <path d="M150.82 99.5337H176.053" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
46
+ <path d="M150.82 107.886H176.053" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
47
+ <path d="M150.82 119.971H190.332" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
48
+ <path d="M150.82 128.147H179.183" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
49
+ <path d="M150.82 140.766H195.222" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
50
+ <path d="M150.82 149.119H190.919" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
51
+ <path d="M150.82 161.56H161.187" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
52
+ <path d="M150.82 169.647H159.916" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
53
+ <path d="M150.82 181.91H194.538" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
54
+ <path d="M150.82 190.263H191.017" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
55
+ <path d="M203.242 58.3003H249.992" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
56
+ <path d="M203.242 66.6533H220.847" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
57
+ <path d="M228.084 161.56H275.811" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
58
+ <path d="M228.084 169.913H256.447" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
59
+ <path d="M271.703 182.176H307.89" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
60
+ <path d="M271.703 189.997H293.22" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
61
+ <path d="M281.681 58.1235H323.736" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
62
+ <path d="M281.681 67.1865H320.41" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
63
+ <path d="M271.9 141.655H308.282" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
64
+ <path d="M271.9 150.186H327.256" stroke="white" stroke-opacity="0.3" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
65
+ <path d="M351.315 218.433H6.75758L6.95318 248.113C6.95318 248.113 5.03391 261.587 9.12909 265.308C14.4433 270.136 21.7706 268.552 21.7706 268.552H329.994C329.994 268.552 343.034 269.789 348.087 266.241C352.391 263.22 351.706 252.201 351.706 252.201L351.315 218.433Z" fill="#ECECF0" fill-opacity="0.4"/>
66
+ <path d="M6.41406 28.9111C6.41406 28.9111 6.41406 256.709 6.41406 259.422C6.41406 262.136 8.86084 269.16 16.7884 269.16C24.716 269.16 332.423 269.16 340.547 269.16C348.67 269.16 351.508 263.573 351.508 259.422C351.508 255.272 351.704 28.9111 351.704 28.9111" stroke="white" stroke-opacity="0.3" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
67
+ <path d="M320.127 253.979V253.268H319.345V252.557H318.562V251.846H317.78V251.135H316.998V250.424H316.215V249.713H316.998V249.002H317.78V248.291H318.562V247.581H319.345V246.87H320.127V246.159H319.345H318.562V246.87H317.78V247.581H316.998V248.291H316.215V249.002H315.433V249.713H314.65V250.424H315.433V251.135H316.215V251.846H316.998V252.557H317.78V253.268H318.562V253.979H319.345H320.127Z" fill="white"/>
68
+ <path d="M309.737 253.979V253.268H308.954V252.557H308.172V251.846H307.389V251.135H306.607V250.424H305.825V249.713H306.607V249.002H307.389V248.291H308.172V247.581H308.954V246.87H309.737V246.159H308.954H308.172V246.87H307.389V247.581H306.607V248.291H305.825V249.002H305.042V249.713H304.26V250.424H305.042V251.135H305.825V251.846H306.607V252.557H307.389V253.268H308.172V253.979H308.954H309.737Z" fill="white"/>
69
+ <path d="M299.346 253.979V253.268H298.564V252.557H297.781V251.846H296.999V251.135H296.216V250.424H295.434V249.713H296.216V249.002H296.999V248.291H297.781V247.581H298.564V246.87H299.346V246.159H298.564H297.781V246.87H296.999V247.581H296.216V248.291H295.434V249.002H294.652V249.713H293.869V250.424H294.652V251.135H295.434V251.846H296.216V252.557H296.999V253.268H297.781V253.979H298.564H299.346Z" fill="white"/>
70
+ <path d="M288.956 253.979V253.268H288.174V252.557H287.392V251.846H286.609V251.135H285.827V250.424H285.044V249.713H285.827V249.002H286.609V248.291H287.392V247.581H288.174V246.87H288.956V246.159H288.174H287.392V246.87H286.609V247.581H285.827V248.291H285.044V249.002H284.262V249.713H283.479V250.424H284.262V251.135H285.044V251.846H285.827V252.557H286.609V253.268H287.392V253.979H288.174H288.956Z" fill="white"/>
71
+ <path d="M278.565 253.979V253.268H277.783V252.557H277V251.846H276.218V251.135H275.436V250.424H274.653V249.713H275.436V249.002H276.218V248.291H277V247.581H277.783V246.87H278.565V246.159H277.783H277V246.87H276.218V247.581H275.436V248.291H274.653V249.002H273.871V249.713H273.088V250.424H273.871V251.135H274.653V251.846H275.436V252.557H276.218V253.268H277V253.979H277.783H278.565Z" fill="white"/>
72
+ <path d="M268.175 253.979V253.268H267.393V252.557H266.61V251.846H265.828V251.135H265.045V250.424H264.263V249.713H265.045V249.002H265.828V248.291H266.61V247.581H267.393V246.87H268.175V246.159H267.393H266.61V246.87H265.828V247.581H265.045V248.291H264.263V249.002H263.481V249.713H262.698V250.424H263.481V251.135H264.263V251.846H265.045V252.557H265.828V253.268H266.61V253.979H267.393H268.175Z" fill="white"/>
73
+ <path d="M257.783 253.979V253.268H257.001V252.557H256.218V251.846H255.436V251.135H254.654V250.424H253.871V249.713H254.654V249.002H255.436V248.291H256.218V247.581H257.001V246.87H257.783V246.159H257.001H256.218V246.87H255.436V247.581H254.654V248.291H253.871V249.002H253.089V249.713H252.306V250.424H253.089V251.135H253.871V251.846H254.654V252.557H255.436V253.268H256.218V253.979H257.001H257.783Z" fill="white"/>
74
+ <path d="M247.394 253.979V253.268H246.611V252.557H245.829V251.846H245.047V251.135H244.264V250.424H243.482V249.713H244.264V249.002H245.047V248.291H245.829V247.581H246.611V246.87H247.394V246.159H246.611H245.829V246.87H245.047V247.581H244.264V248.291H243.482V249.002H242.699V249.713H241.917V250.424H242.699V251.135H243.482V251.846H244.264V252.557H245.047V253.268H245.829V253.979H246.611H247.394Z" fill="white"/>
75
+ <path d="M237.003 253.979V253.268H236.221V252.557H235.439V251.846H234.656V251.135H233.874V250.424H233.091V249.713H233.874V249.002H234.656V248.291H235.439V247.581H236.221V246.87H237.003V246.159H236.221H235.439V246.87H234.656V247.581H233.874V248.291H233.091V249.002H232.309V249.713H231.526V250.424H232.309V251.135H233.091V251.846H233.874V252.557H234.656V253.268H235.439V253.979H236.221H237.003Z" fill="white"/>
76
+ <path d="M226.613 253.979V253.268H225.831V252.557H225.048V251.846H224.266V251.135H223.483V250.424H222.701V249.713H223.483V249.002H224.266V248.291H225.048V247.581H225.831V246.87H226.613V246.159H225.831H225.048V246.87H224.266V247.581H223.483V248.291H222.701V249.002H221.919V249.713H221.136V250.424H221.919V251.135H222.701V251.846H223.483V252.557H224.266V253.268H225.048V253.979H225.831H226.613Z" fill="white"/>
77
+ <path d="M216.223 253.979V253.268H215.441V252.557H214.658V251.846H213.876V251.135H213.093V250.424H212.311V249.713H213.093V249.002H213.876V248.291H214.658V247.581H215.441V246.87H216.223V246.159H215.441H214.658V246.87H213.876V247.581H213.093V248.291H212.311V249.002H211.529V249.713H210.746V250.424H211.529V251.135H212.311V251.846H213.093V252.557H213.876V253.268H214.658V253.979H215.441H216.223Z" fill="white"/>
78
+ <path d="M205.831 253.979V253.268H205.049V252.557H204.267V251.846H203.484V251.135H202.702V250.424H201.919V249.713H202.702V249.002H203.484V248.291H204.267V247.581H205.049V246.87H205.831V246.159H205.049H204.267V246.87H203.484V247.581H202.702V248.291H201.919V249.002H201.137V249.713H200.354V250.424H201.137V251.135H201.919V251.846H202.702V252.557H203.484V253.268H204.267V253.979H205.049H205.831Z" fill="white"/>
79
+ <path d="M195.442 253.979V253.268H194.659V252.557H193.877V251.846H193.094V251.135H192.312V250.424H191.529V249.713H192.312V249.002H193.094V248.291H193.877V247.581H194.659V246.87H195.442V246.159H194.659H193.877V246.87H193.094V247.581H192.312V248.291H191.529V249.002H190.747V249.713H189.965V250.424H190.747V251.135H191.529V251.846H192.312V252.557H193.094V253.268H193.877V253.979H194.659H195.442Z" fill="white"/>
80
+ <path d="M185.05 253.979V253.268H184.268V252.557H183.486V251.846H182.703V251.135H181.921V250.424H181.138V249.713H181.921V249.002H182.703V248.291H183.486V247.581H184.268V246.87H185.05V246.159H184.268H183.486V246.87H182.703V247.581H181.921V248.291H181.138V249.002H180.356V249.713H179.573V250.424H180.356V251.135H181.138V251.846H181.921V252.557H182.703V253.268H183.486V253.979H184.268H185.05Z" fill="white"/>
81
+ <path d="M174.661 253.979V253.268H173.878V252.557H173.096V251.846H172.313V251.135H171.531V250.424H170.748V249.713H171.531V249.002H172.313V248.291H173.096V247.581H173.878V246.87H174.661V246.159H173.878H173.096V246.87H172.313V247.581H171.531V248.291H170.748V249.002H169.966V249.713H169.184V250.424H169.966V251.135H170.748V251.846H171.531V252.557H172.313V253.268H173.096V253.979H173.878H174.661Z" fill="white"/>
82
+ <path d="M164.27 253.979V253.268H163.487V252.557H162.705V251.846H161.923V251.135H161.14V250.424H160.358V249.713H161.14V249.002H161.923V248.291H162.705V247.581H163.487V246.87H164.27V246.159H163.487H162.705V246.87H161.923V247.581H161.14V248.291H160.358V249.002H159.575V249.713H158.793V250.424H159.575V251.135H160.358V251.846H161.14V252.557H161.923V253.268H162.705V253.979H163.487H164.27Z" fill="white"/>
83
+ <path d="M153.879 253.979V253.268H153.097V252.557H152.314V251.846H151.532V251.135H150.749V250.424H149.967V249.713H150.749V249.002H151.532V248.291H152.314V247.581H153.097V246.87H153.879V246.159H153.097H152.314V246.87H151.532V247.581H150.749V248.291H149.967V249.002H149.185V249.713H148.402V250.424H149.185V251.135H149.967V251.846H150.749V252.557H151.532V253.268H152.314V253.979H153.097H153.879Z" fill="white"/>
84
+ <path d="M143.488 253.979V253.268H142.705V252.557H141.923V251.846H141.14V251.135H140.358V250.424H139.576V249.713H140.358V249.002H141.14V248.291H141.923V247.581H142.705V246.87H143.488V246.159H142.705H141.923V246.87H141.14V247.581H140.358V248.291H139.576V249.002H138.793V249.713H138.011V250.424H138.793V251.135H139.576V251.846H140.358V252.557H141.14V253.268H141.923V253.979H142.705H143.488Z" fill="white"/>
85
+ <path d="M320.127 253.979V253.268H319.345V252.557H318.562V251.846H317.78V251.135H316.998V250.424H316.215V249.713H316.998V249.002H317.78V248.291H318.562V247.581H319.345V246.87H320.127V246.159H319.345H318.562V246.87H317.78V247.581H316.998V248.291H316.215V249.002H315.433V249.713H314.65V250.424H315.433V251.135H316.215V251.846H316.998V252.557H317.78V253.268H318.562V253.979H319.345H320.127Z" fill="white"/>
86
+ <path d="M327.892 254.331V253.62H327.11V252.909H326.327V252.198H325.545V251.487H324.762V250.776H323.98V250.065H324.762V249.354H325.545V248.643H326.327V247.933H327.11V247.222H327.892V246.511H327.11H326.327V247.222H325.545V247.933H324.762V248.643H323.98V249.354H323.198V250.065H322.415V250.776H323.198V251.487H323.98V252.198H324.762V252.909H325.545V253.62H326.327V254.331H327.11H327.892Z" fill="white"/>
87
+ <path d="M309.737 253.979V253.268H308.954V252.557H308.172V251.846H307.389V251.135H306.607V250.424H305.825V249.713H306.607V249.002H307.389V248.291H308.172V247.581H308.954V246.87H309.737V246.159H308.954H308.172V246.87H307.389V247.581H306.607V248.291H305.825V249.002H305.042V249.713H304.26V250.424H305.042V251.135H305.825V251.846H306.607V252.557H307.389V253.268H308.172V253.979H308.954H309.737Z" fill="white"/>
88
+ <path d="M299.346 253.979V253.268H298.564V252.557H297.781V251.846H296.999V251.135H296.216V250.424H295.434V249.713H296.216V249.002H296.999V248.291H297.781V247.581H298.564V246.87H299.346V246.159H298.564H297.781V246.87H296.999V247.581H296.216V248.291H295.434V249.002H294.652V249.713H293.869V250.424H294.652V251.135H295.434V251.846H296.216V252.557H296.999V253.268H297.781V253.979H298.564H299.346Z" fill="white"/>
89
+ <path d="M288.956 253.979V253.268H288.174V252.557H287.392V251.846H286.609V251.135H285.827V250.424H285.044V249.713H285.827V249.002H286.609V248.291H287.392V247.581H288.174V246.87H288.956V246.159H288.174H287.392V246.87H286.609V247.581H285.827V248.291H285.044V249.002H284.262V249.713H283.479V250.424H284.262V251.135H285.044V251.846H285.827V252.557H286.609V253.268H287.392V253.979H288.174H288.956Z" fill="white"/>
90
+ <path d="M278.565 253.979V253.268H277.783V252.557H277V251.846H276.218V251.135H275.436V250.424H274.653V249.713H275.436V249.002H276.218V248.291H277V247.581H277.783V246.87H278.565V246.159H277.783H277V246.87H276.218V247.581H275.436V248.291H274.653V249.002H273.871V249.713H273.088V250.424H273.871V251.135H274.653V251.846H275.436V252.557H276.218V253.268H277V253.979H277.783H278.565Z" fill="white"/>
91
+ <path d="M268.175 253.979V253.268H267.393V252.557H266.61V251.846H265.828V251.135H265.045V250.424H264.263V249.713H265.045V249.002H265.828V248.291H266.61V247.581H267.393V246.87H268.175V246.159H267.393H266.61V246.87H265.828V247.581H265.045V248.291H264.263V249.002H263.481V249.713H262.698V250.424H263.481V251.135H264.263V251.846H265.045V252.557H265.828V253.268H266.61V253.979H267.393H268.175Z" fill="white"/>
92
+ <path d="M257.783 253.979V253.268H257.001V252.557H256.218V251.846H255.436V251.135H254.654V250.424H253.871V249.713H254.654V249.002H255.436V248.291H256.218V247.581H257.001V246.87H257.783V246.159H257.001H256.218V246.87H255.436V247.581H254.654V248.291H253.871V249.002H253.089V249.713H252.306V250.424H253.089V251.135H253.871V251.846H254.654V252.557H255.436V253.268H256.218V253.979H257.001H257.783Z" fill="white"/>
93
+ <path d="M247.394 253.979V253.268H246.611V252.557H245.829V251.846H245.047V251.135H244.264V250.424H243.482V249.713H244.264V249.002H245.047V248.291H245.829V247.581H246.611V246.87H247.394V246.159H246.611H245.829V246.87H245.047V247.581H244.264V248.291H243.482V249.002H242.699V249.713H241.917V250.424H242.699V251.135H243.482V251.846H244.264V252.557H245.047V253.268H245.829V253.979H246.611H247.394Z" fill="white"/>
94
+ <path d="M237.003 253.979V253.268H236.221V252.557H235.439V251.846H234.656V251.135H233.874V250.424H233.091V249.713H233.874V249.002H234.656V248.291H235.439V247.581H236.221V246.87H237.003V246.159H236.221H235.439V246.87H234.656V247.581H233.874V248.291H233.091V249.002H232.309V249.713H231.526V250.424H232.309V251.135H233.091V251.846H233.874V252.557H234.656V253.268H235.439V253.979H236.221H237.003Z" fill="white"/>
95
+ <path d="M226.613 253.979V253.268H225.831V252.557H225.048V251.846H224.266V251.135H223.483V250.424H222.701V249.713H223.483V249.002H224.266V248.291H225.048V247.581H225.831V246.87H226.613V246.159H225.831H225.048V246.87H224.266V247.581H223.483V248.291H222.701V249.002H221.919V249.713H221.136V250.424H221.919V251.135H222.701V251.846H223.483V252.557H224.266V253.268H225.048V253.979H225.831H226.613Z" fill="white"/>
96
+ <path d="M216.223 253.979V253.268H215.441V252.557H214.658V251.846H213.876V251.135H213.093V250.424H212.311V249.713H213.093V249.002H213.876V248.291H214.658V247.581H215.441V246.87H216.223V246.159H215.441H214.658V246.87H213.876V247.581H213.093V248.291H212.311V249.002H211.529V249.713H210.746V250.424H211.529V251.135H212.311V251.846H213.093V252.557H213.876V253.268H214.658V253.979H215.441H216.223Z" fill="white"/>
97
+ <path d="M205.831 253.979V253.268H205.049V252.557H204.267V251.846H203.484V251.135H202.702V250.424H201.919V249.713H202.702V249.002H203.484V248.291H204.267V247.581H205.049V246.87H205.831V246.159H205.049H204.267V246.87H203.484V247.581H202.702V248.291H201.919V249.002H201.137V249.713H200.354V250.424H201.137V251.135H201.919V251.846H202.702V252.557H203.484V253.268H204.267V253.979H205.049H205.831Z" fill="white"/>
98
+ <path d="M195.442 253.979V253.268H194.659V252.557H193.877V251.846H193.094V251.135H192.312V250.424H191.529V249.713H192.312V249.002H193.094V248.291H193.877V247.581H194.659V246.87H195.442V246.159H194.659H193.877V246.87H193.094V247.581H192.312V248.291H191.529V249.002H190.747V249.713H189.965V250.424H190.747V251.135H191.529V251.846H192.312V252.557H193.094V253.268H193.877V253.979H194.659H195.442Z" fill="white"/>
99
+ <path d="M185.05 253.979V253.268H184.268V252.557H183.486V251.846H182.703V251.135H181.921V250.424H181.138V249.713H181.921V249.002H182.703V248.291H183.486V247.581H184.268V246.87H185.05V246.159H184.268H183.486V246.87H182.703V247.581H181.921V248.291H181.138V249.002H180.356V249.713H179.573V250.424H180.356V251.135H181.138V251.846H181.921V252.557H182.703V253.268H183.486V253.979H184.268H185.05Z" fill="white"/>
100
+ <path d="M174.661 253.979V253.268H173.878V252.557H173.096V251.846H172.313V251.135H171.531V250.424H170.748V249.713H171.531V249.002H172.313V248.291H173.096V247.581H173.878V246.87H174.661V246.159H173.878H173.096V246.87H172.313V247.581H171.531V248.291H170.748V249.002H169.966V249.713H169.184V250.424H169.966V251.135H170.748V251.846H171.531V252.557H172.313V253.268H173.096V253.979H173.878H174.661Z" fill="white"/>
101
+ <path d="M164.27 253.979V253.268H163.487V252.557H162.705V251.846H161.923V251.135H161.14V250.424H160.358V249.713H161.14V249.002H161.923V248.291H162.705V247.581H163.487V246.87H164.27V246.159H163.487H162.705V246.87H161.923V247.581H161.14V248.291H160.358V249.002H159.575V249.713H158.793V250.424H159.575V251.135H160.358V251.846H161.14V252.557H161.923V253.268H162.705V253.979H163.487H164.27Z" fill="white"/>
102
+ <path d="M153.879 253.979V253.268H153.097V252.557H152.314V251.846H151.532V251.135H150.749V250.424H149.967V249.713H150.749V249.002H151.532V248.291H152.314V247.581H153.097V246.87H153.879V246.159H153.097H152.314V246.87H151.532V247.581H150.749V248.291H149.967V249.002H149.185V249.713H148.402V250.424H149.185V251.135H149.967V251.846H150.749V252.557H151.532V253.268H152.314V253.979H153.097H153.879Z" fill="white"/>
103
+ <path d="M143.488 253.979V253.268H142.705V252.557H141.923V251.846H141.14V251.135H140.358V250.424H139.576V249.713H140.358V249.002H141.14V248.291H141.923V247.581H142.705V246.87H143.488V246.159H142.705H141.923V246.87H141.14V247.581H140.358V248.291H139.576V249.002H138.793V249.713H138.011V250.424H138.793V251.135H139.576V251.846H140.358V252.557H141.14V253.268H141.923V253.979H142.705H143.488Z" fill="white"/>
104
+ <path d="M131.619 253.909V253.198H130.836V252.488H130.054V251.777H129.272V251.066H128.489V250.355H127.707V249.644H128.489V248.933H129.272V248.222H130.054V247.511H130.836V246.8H131.619V246.089H130.836H130.054V246.8H129.272V247.511H128.489V248.222H127.707V248.933H126.924V249.644H126.142V250.355H126.924V251.066H127.707V251.777H128.489V252.488H129.272V253.198H130.054V253.909H130.836H131.619Z" fill="white"/>
105
+ <path d="M121.228 253.909V253.198H120.445V252.488H119.663V251.777H118.88V251.066H118.098V250.355H117.316V249.644H118.098V248.933H118.88V248.222H119.663V247.511H120.445V246.8H121.228V246.089H120.445H119.663V246.8H118.88V247.511H118.098V248.222H117.316V248.933H116.533V249.644H115.751V250.355H116.533V251.066H117.316V251.777H118.098V252.488H118.88V253.198H119.663V253.909H120.445H121.228Z" fill="white"/>
106
+ <path d="M110.836 253.909V253.198H110.053V252.488H109.271V251.777H108.488V251.066H107.706V250.355H106.923V249.644H107.706V248.933H108.488V248.222H109.271V247.511H110.053V246.8H110.836V246.089H110.053H109.271V246.8H108.488V247.511H107.706V248.222H106.923V248.933H106.141V249.644H105.359V250.355H106.141V251.066H106.923V251.777H107.706V252.488H108.488V253.198H109.271V253.909H110.053H110.836Z" fill="white"/>
107
+ <path d="M100.447 253.909V253.198H99.6641V252.488H98.8817V251.777H98.0993V251.066H97.3169V250.355H96.5344V249.644H97.3169V248.933H98.0993V248.222H98.8817V247.511H99.6641V246.8H100.447V246.089H99.6641H98.8817V246.8H98.0993V247.511H97.3169V248.222H96.5344V248.933H95.752V249.644H94.9696V250.355H95.752V251.066H96.5344V251.777H97.3169V252.488H98.0993V253.198H98.8817V253.909H99.6641H100.447Z" fill="white"/>
108
+ <path d="M90.055 253.909V253.198H89.2726V252.488H88.4902V251.777H87.7078V251.066H86.9254V250.355H86.143V249.644H86.9254V248.933H87.7078V248.222H88.4902V247.511H89.2726V246.8H90.055V246.089H89.2726H88.4902V246.8H87.7078V247.511H86.9254V248.222H86.143V248.933H85.3605V249.644H84.5781V250.355H85.3605V251.066H86.143V251.777H86.9254V252.488H87.7078V253.198H88.4902V253.909H89.2726H90.055Z" fill="white"/>
109
+ <path d="M79.6656 253.909V253.198H78.8832V252.488H78.1008V251.777H77.3184V251.066H76.536V250.355H75.7536V249.644H76.536V248.933H77.3184V248.222H78.1008V247.511H78.8832V246.8H79.6656V246.089H78.8832H78.1008V246.8H77.3184V247.511H76.536V248.222H75.7536V248.933H74.9711V249.644H74.1887V250.355H74.9711V251.066H75.7536V251.777H76.536V252.488H77.3184V253.198H78.1008V253.909H78.8832H79.6656Z" fill="white"/>
110
+ <path d="M69.2738 253.909V253.198H68.4914V252.488H67.709V251.777H66.9265V251.066H66.1441V250.355H65.3617V249.644H66.1441V248.933H66.9265V248.222H67.709V247.511H68.4914V246.8H69.2738V246.089H68.4914H67.709V246.8H66.9265V247.511H66.1441V248.222H65.3617V248.933H64.5793V249.644H63.7969V250.355H64.5793V251.066H65.3617V251.777H66.1441V252.488H66.9265V253.198H67.709V253.909H68.4914H69.2738Z" fill="white"/>
111
+ <path d="M58.8852 253.909V253.198H58.1028V252.488H57.3204V251.777H56.538V251.066H55.7556V250.355H54.9732V249.644H55.7556V248.933H56.538V248.222H57.3204V247.511H58.1028V246.8H58.8852V246.089H58.1028H57.3204V246.8H56.538V247.511H55.7556V248.222H54.9732V248.933H54.1907V249.644H53.4083V250.355H54.1907V251.066H54.9732V251.777H55.7556V252.488H56.538V253.198H57.3204V253.909H58.1028H58.8852Z" fill="white"/>
112
+ <path d="M48.4932 253.909V253.198H47.7107V252.488H46.9283V251.777H46.1459V251.066H45.3635V250.355H44.5811V249.644H45.3635V248.933H46.1459V248.222H46.9283V247.511H47.7107V246.8H48.4932V246.089H47.7107H46.9283V246.8H46.1459V247.511H45.3635V248.222H44.5811V248.933H43.7987V249.644H43.0162V250.355H43.7987V251.066H44.5811V251.777H45.3635V252.488H46.1459V253.198H46.9283V253.909H47.7107H48.4932Z" fill="white"/>
113
+ <path d="M38.1009 253.909V253.198H37.3185V252.488H36.5361V251.777H35.7537V251.066H34.9713V250.355H34.1889V249.644H34.9713V248.933H35.7537V248.222H36.5361V247.511H37.3185V246.8H38.1009V246.089H37.3185H36.5361V246.8H35.7537V247.511H34.9713V248.222H34.1889V248.933H33.4064V249.644H32.624V250.355H33.4064V251.066H34.1889V251.777H34.9713V252.488H35.7537V253.198H36.5361V253.909H37.3185H38.1009Z" fill="white"/>
114
+ <path d="M328.031 237.984V237.273H327.248V236.562H326.466V235.851H325.684V235.14H324.901V234.43H324.119V233.719H324.901V233.008H325.684V232.297H326.466V231.586H327.248V230.875H328.031V230.164H327.248H326.466V230.875H325.684V231.586H324.901V232.297H324.119V233.008H323.336V233.719H322.554V234.43H323.336V235.14H324.119V235.851H324.901V236.562H325.684V237.273H326.466V237.984H327.248H328.031Z" fill="white"/>
115
+ <path d="M317.639 237.984V237.273H316.856V236.562H316.074V235.851H315.292V235.14H314.509V234.43H313.727V233.719H314.509V233.008H315.292V232.297H316.074V231.586H316.856V230.875H317.639V230.164H316.856H316.074V230.875H315.292V231.586H314.509V232.297H313.727V233.008H312.944V233.719H312.162V234.43H312.944V235.14H313.727V235.851H314.509V236.562H315.292V237.273H316.074V237.984H316.856H317.639Z" fill="white"/>
116
+ <path d="M307.25 237.984V237.273H306.467V236.562H305.685V235.851H304.902V235.14H304.12V234.43H303.338V233.719H304.12V233.008H304.902V232.297H305.685V231.586H306.467V230.875H307.25V230.164H306.467H305.685V230.875H304.902V231.586H304.12V232.297H303.338V233.008H302.555V233.719H301.773V234.43H302.555V235.14H303.338V235.851H304.12V236.562H304.902V237.273H305.685V237.984H306.467H307.25Z" fill="white"/>
117
+ <path d="M296.859 237.984V237.273H296.077V236.562H295.294V235.851H294.512V235.14H293.729V234.43H292.947V233.719H293.729V233.008H294.512V232.297H295.294V231.586H296.077V230.875H296.859V230.164H296.077H295.294V230.875H294.512V231.586H293.729V232.297H292.947V233.008H292.164V233.719H291.382V234.43H292.164V235.14H292.947V235.851H293.729V236.562H294.512V237.273H295.294V237.984H296.077H296.859Z" fill="white"/>
118
+ <path d="M286.469 237.984V237.273H285.687V236.562H284.905V235.851H284.122V235.14H283.34V234.43H282.557V233.719H283.34V233.008H284.122V232.297H284.905V231.586H285.687V230.875H286.469V230.164H285.687H284.905V230.875H284.122V231.586H283.34V232.297H282.557V233.008H281.775V233.719H280.992V234.43H281.775V235.14H282.557V235.851H283.34V236.562H284.122V237.273H284.905V237.984H285.687H286.469Z" fill="white"/>
119
+ <path d="M276.078 237.984V237.273H275.296V236.562H274.513V235.851H273.731V235.14H272.949V234.43H272.166V233.719H272.949V233.008H273.731V232.297H274.513V231.586H275.296V230.875H276.078V230.164H275.296H274.513V230.875H273.731V231.586H272.949V232.297H272.166V233.008H271.384V233.719H270.601V234.43H271.384V235.14H272.166V235.851H272.949V236.562H273.731V237.273H274.513V237.984H275.296H276.078Z" fill="white"/>
120
+ <path d="M265.69 237.984V237.273H264.908V236.562H264.125V235.851H263.343V235.14H262.56V234.43H261.778V233.719H262.56V233.008H263.343V232.297H264.125V231.586H264.908V230.875H265.69V230.164H264.908H264.125V230.875H263.343V231.586H262.56V232.297H261.778V233.008H260.996V233.719H260.213V234.43H260.996V235.14H261.778V235.851H262.56V236.562H263.343V237.273H264.125V237.984H264.908H265.69Z" fill="white"/>
121
+ <path d="M255.297 237.984V237.273H254.514V236.562H253.732V235.851H252.949V235.14H252.167V234.43H251.384V233.719H252.167V233.008H252.949V232.297H253.732V231.586H254.514V230.875H255.297V230.164H254.514H253.732V230.875H252.949V231.586H252.167V232.297H251.384V233.008H250.602V233.719H249.82V234.43H250.602V235.14H251.384V235.851H252.167V236.562H252.949V237.273H253.732V237.984H254.514H255.297Z" fill="white"/>
122
+ <path d="M244.907 237.984V237.273H244.124V236.562H243.342V235.851H242.559V235.14H241.777V234.43H240.995V233.719H241.777V233.008H242.559V232.297H243.342V231.586H244.124V230.875H244.907V230.164H244.124H243.342V230.875H242.559V231.586H241.777V232.297H240.995V233.008H240.212V233.719H239.43V234.43H240.212V235.14H240.995V235.851H241.777V236.562H242.559V237.273H243.342V237.984H244.124H244.907Z" fill="white"/>
123
+ <path d="M234.516 237.984V237.273H233.734V236.562H232.951V235.851H232.169V235.14H231.387V234.43H230.604V233.719H231.387V233.008H232.169V232.297H232.951V231.586H233.734V230.875H234.516V230.164H233.734H232.951V230.875H232.169V231.586H231.387V232.297H230.604V233.008H229.822V233.719H229.039V234.43H229.822V235.14H230.604V235.851H231.387V236.562H232.169V237.273H232.951V237.984H233.734H234.516Z" fill="white"/>
124
+ <path d="M224.126 237.984V237.273H223.343V236.562H222.561V235.851H221.779V235.14H220.996V234.43H220.214V233.719H220.996V233.008H221.779V232.297H222.561V231.586H223.343V230.875H224.126V230.164H223.343H222.561V230.875H221.779V231.586H220.996V232.297H220.214V233.008H219.431V233.719H218.649V234.43H219.431V235.14H220.214V235.851H220.996V236.562H221.779V237.273H222.561V237.984H223.343H224.126Z" fill="white"/>
125
+ <path d="M213.736 237.984V237.273H212.953V236.562H212.171V235.851H211.389V235.14H210.606V234.43H209.824V233.719H210.606V233.008H211.389V232.297H212.171V231.586H212.953V230.875H213.736V230.164H212.953H212.171V230.875H211.389V231.586H210.606V232.297H209.824V233.008H209.041V233.719H208.259V234.43H209.041V235.14H209.824V235.851H210.606V236.562H211.389V237.273H212.171V237.984H212.953H213.736Z" fill="white"/>
126
+ <path d="M203.343 237.984V237.273H202.561V236.562H201.779V235.851H200.996V235.14H200.214V234.43H199.431V233.719H200.214V233.008H200.996V232.297H201.779V231.586H202.561V230.875H203.343V230.164H202.561H201.779V230.875H200.996V231.586H200.214V232.297H199.431V233.008H198.649V233.719H197.866V234.43H198.649V235.14H199.431V235.851H200.214V236.562H200.996V237.273H201.779V237.984H202.561H203.343Z" fill="white"/>
127
+ <path d="M192.954 237.984V237.273H192.171V236.562H191.389V235.851H190.606V235.14H189.824V234.43H189.042V233.719H189.824V233.008H190.606V232.297H191.389V231.586H192.171V230.875H192.954V230.164H192.171H191.389V230.875H190.606V231.586H189.824V232.297H189.042V233.008H188.259V233.719H187.477V234.43H188.259V235.14H189.042V235.851H189.824V236.562H190.606V237.273H191.389V237.984H192.171H192.954Z" fill="white"/>
128
+ <path d="M182.564 237.984V237.273H181.782V236.562H180.999V235.851H180.217V235.14H179.434V234.43H178.652V233.719H179.434V233.008H180.217V232.297H180.999V231.586H181.782V230.875H182.564V230.164H181.782H180.999V230.875H180.217V231.586H179.434V232.297H178.652V233.008H177.87V233.719H177.087V234.43H177.87V235.14H178.652V235.851H179.434V236.562H180.217V237.273H180.999V237.984H181.782H182.564Z" fill="white"/>
129
+ <path d="M172.174 237.984V237.273H171.392V236.562H170.609V235.851H169.827V235.14H169.044V234.43H168.262V233.719H169.044V233.008H169.827V232.297H170.609V231.586H171.392V230.875H172.174V230.164H171.392H170.609V230.875H169.827V231.586H169.044V232.297H168.262V233.008H167.479V233.719H166.697V234.43H167.479V235.14H168.262V235.851H169.044V236.562H169.827V237.273H170.609V237.984H171.392H172.174Z" fill="white"/>
130
+ <path d="M162.026 237.984V237.273H161.243V236.562H160.461V235.851H159.678V235.14H158.896V234.43H158.113V233.719H158.896V233.008H159.678V232.297H160.461V231.586H161.243V230.875H162.026V230.164H161.243H160.461V230.875H159.678V231.586H158.896V232.297H158.113V233.008H157.331V233.719H156.549V234.43H157.331V235.14H158.113V235.851H158.896V236.562H159.678V237.273H160.461V237.984H161.243H162.026Z" fill="white"/>
131
+ <path d="M151.634 237.984V237.273H150.852V236.562H150.069V235.851H149.287V235.14H148.504V234.43H147.722V233.719H148.504V233.008H149.287V232.297H150.069V231.586H150.852V230.875H151.634V230.164H150.852H150.069V230.875H149.287V231.586H148.504V232.297H147.722V233.008H146.94V233.719H146.157V234.43H146.94V235.14H147.722V235.851H148.504V236.562H149.287V237.273H150.069V237.984H150.852H151.634Z" fill="white"/>
132
+ <path d="M141.242 237.984V237.273H140.46V236.562H139.677V235.851H138.895V235.14H138.113V234.43H137.33V233.719H138.113V233.008H138.895V232.297H139.677V231.586H140.46V230.875H141.242V230.164H140.46H139.677V230.875H138.895V231.586H138.113V232.297H137.33V233.008H136.548V233.719H135.765V234.43H136.548V235.14H137.33V235.851H138.113V236.562H138.895V237.273H139.677V237.984H140.46H141.242Z" fill="white"/>
133
+ <path d="M130.853 237.984V237.273H130.07V236.562H129.288V235.851H128.506V235.14H127.723V234.43H126.941V233.719H127.723V233.008H128.506V232.297H129.288V231.586H130.07V230.875H130.853V230.164H130.07H129.288V230.875H128.506V231.586H127.723V232.297H126.941V233.008H126.158V233.719H125.376V234.43H126.158V235.14H126.941V235.851H127.723V236.562H128.506V237.273H129.288V237.984H130.07H130.853Z" fill="white"/>
134
+ <path d="M120.464 237.984V237.273H119.681V236.562H118.899V235.851H118.116V235.14H117.334V234.43H116.552V233.719H117.334V233.008H118.116V232.297H118.899V231.586H119.681V230.875H120.464V230.164H119.681H118.899V230.875H118.116V231.586H117.334V232.297H116.552V233.008H115.769V233.719H114.987V234.43H115.769V235.14H116.552V235.851H117.334V236.562H118.116V237.273H118.899V237.984H119.681H120.464Z" fill="white"/>
135
+ <path d="M110.072 237.984V237.273H109.29V236.562H108.508V235.851H107.725V235.14H106.943V234.43H106.16V233.719H106.943V233.008H107.725V232.297H108.508V231.586H109.29V230.875H110.072V230.164H109.29H108.508V230.875H107.725V231.586H106.943V232.297H106.16V233.008H105.378V233.719H104.595V234.43H105.378V235.14H106.16V235.851H106.943V236.562H107.725V237.273H108.508V237.984H109.29H110.072Z" fill="white"/>
136
+ <path d="M99.683 237.984V237.273H98.9006V236.562H98.1181V235.851H97.3357V235.14H96.5533V234.43H95.7709V233.719H96.5533V233.008H97.3357V232.297H98.1181V231.586H98.9006V230.875H99.683V230.164H98.9006H98.1181V230.875H97.3357V231.586H96.5533V232.297H95.7709V233.008H94.9885V233.719H94.2061V234.43H94.9885V235.14H95.7709V235.851H96.5533V236.562H97.3357V237.273H98.1181V237.984H98.9006H99.683Z" fill="white"/>
137
+ <path d="M89.2924 237.984V237.273H88.5099V236.562H87.7275V235.851H86.9451V235.14H86.1627V234.43H85.3803V233.719H86.1627V233.008H86.9451V232.297H87.7275V231.586H88.5099V230.875H89.2924V230.164H88.5099H87.7275V230.875H86.9451V231.586H86.1627V232.297H85.3803V233.008H84.5978V233.719H83.8154V234.43H84.5978V235.14H85.3803V235.851H86.1627V236.562H86.9451V237.273H87.7275V237.984H88.5099H89.2924Z" fill="white"/>
138
+ <path d="M78.8998 237.984V237.273H78.1174V236.562H77.3349V235.851H76.5525V235.14H75.7701V234.43H74.9877V233.719H75.7701V233.008H76.5525V232.297H77.3349V231.586H78.1174V230.875H78.8998V230.164H78.1174H77.3349V230.875H76.5525V231.586H75.7701V232.297H74.9877V233.008H74.2053V233.719H73.4229V234.43H74.2053V235.14H74.9877V235.851H75.7701V236.562H76.5525V237.273H77.3349V237.984H78.1174H78.8998Z" fill="white"/>
139
+ <path d="M68.5093 237.984V237.273H67.7269V236.562H66.9444V235.851H66.162V235.14H65.3796V234.43H64.5972V233.719H65.3796V233.008H66.162V232.297H66.9444V231.586H67.7269V230.875H68.5093V230.164H67.7269H66.9444V230.875H66.162V231.586H65.3796V232.297H64.5972V233.008H63.8148V233.719H63.0323V234.43H63.8148V235.14H64.5972V235.851H65.3796V236.562H66.162V237.273H66.9444V237.984H67.7269H68.5093Z" fill="white"/>
140
+ <path d="M58.1205 237.984V237.273H57.3381V236.562H56.5556V235.851H55.7732V235.14H54.9908V234.43H54.2084V233.719H54.9908V233.008H55.7732V232.297H56.5556V231.586H57.3381V230.875H58.1205V230.164H57.3381H56.5556V230.875H55.7732V231.586H54.9908V232.297H54.2084V233.008H53.426V233.719H52.6436V234.43H53.426V235.14H54.2084V235.851H54.9908V236.562H55.7732V237.273H56.5556V237.984H57.3381H58.1205Z" fill="white"/>
141
+ <path d="M47.7289 237.984V237.273H46.9465V236.562H46.164V235.851H45.3816V235.14H44.5992V234.43H43.8168V233.719H44.5992V233.008H45.3816V232.297H46.164V231.586H46.9465V230.875H47.7289V230.164H46.9465H46.164V230.875H45.3816V231.586H44.5992V232.297H43.8168V233.008H43.0344V233.719H42.252V234.43H43.0344V235.14H43.8168V235.851H44.5992V236.562H45.3816V237.273H46.164V237.984H46.9465H47.7289Z" fill="white"/>
142
+ <path d="M37.3392 237.984V237.273H36.5568V236.562H35.7744V235.851H34.992V235.14H34.2096V234.43H33.4271V233.719H34.2096V233.008H34.992V232.297H35.7744V231.586H36.5568V230.875H37.3392V230.164H36.5568H35.7744V230.875H34.992V231.586H34.2096V232.297H33.4271V233.008H32.6447V233.719H31.8623V234.43H32.6447V235.14H33.4271V235.851H34.2096V236.562H34.992V237.273H35.7744V237.984H36.5568H37.3392Z" fill="white"/>
143
+ </svg>
@@ -0,0 +1,21 @@
1
+ // Shimmer SVG markup imported as raw strings via Vite's ?raw query.
2
+ // Returned by getShimmerSvg() based on documentType + sideOfId so the
3
+ // guide-box overlay shows a contextual silhouette of the expected document.
4
+ import passportShimmer from './Passport-Shimmer.svg?raw';
5
+ import greenbookShimmer from './Greenbook_Shimmer.svg?raw';
6
+ import idFrontShimmer from './ID_Front_Shimmer.svg?raw';
7
+ import idBackShimmer from './ID_Back_Shimmer.svg?raw';
8
+
9
+ export type ShimmerDocType = 'id-card' | 'passport' | 'greenbook' | null;
10
+ export type ShimmerSide = 'Front' | 'Back' | string | undefined;
11
+
12
+ export function getShimmerSvg(
13
+ docType: ShimmerDocType,
14
+ side: ShimmerSide,
15
+ ): string {
16
+ if (docType === 'passport') return passportShimmer;
17
+ if (docType === 'greenbook') return greenbookShimmer;
18
+ // Default (including null/unknown) to the ID-card silhouette so the guide
19
+ // is always visible before detection has classified the document.
20
+ return String(side).toLowerCase() === 'back' ? idBackShimmer : idFrontShimmer;
21
+ }
@@ -0,0 +1,4 @@
1
+ declare module '*.svg?raw' {
2
+ const content: string;
3
+ export default content;
4
+ }
@@ -0,0 +1,122 @@
1
+ import type { FunctionComponent } from 'preact';
2
+ import { theme } from '../theme';
3
+
4
+ interface CaptureButtonProps {
5
+ /** 0–100 auto-capture progress (0 = idle, animates the ring). */
6
+ progress?: number;
7
+ disabled?: boolean;
8
+ onClick?: () => void;
9
+ /**
10
+ * Kept for API compat. The new icon is self-styled, so this only
11
+ * affects the background ring colour.
12
+ */
13
+ appearance?: 'dark' | 'light';
14
+ }
15
+
16
+ /**
17
+ * CaptureButton — circular shutter button with progress ring.
18
+ */
19
+ export const CaptureButton: FunctionComponent<CaptureButtonProps> = ({
20
+ progress = 0,
21
+ disabled = false,
22
+ onClick,
23
+ appearance = 'dark',
24
+ }) => {
25
+ const size = 72;
26
+ const strokeWidth = 4;
27
+ const radius = (size - strokeWidth) / 2;
28
+ const circumference = 2 * Math.PI * radius;
29
+ const offset = circumference - (progress / 100) * circumference;
30
+
31
+ const isActive = progress > 0 && progress < 100;
32
+ const isLight = appearance === 'light';
33
+
34
+ const backgroundRingColor = isLight
35
+ ? 'rgba(255,255,255,0.7)'
36
+ : theme.colors.border;
37
+
38
+ return (
39
+ <button
40
+ onClick={onClick}
41
+ disabled={disabled}
42
+ style={{
43
+ width: `${size}px`,
44
+ height: `${size}px`,
45
+ borderRadius: '50%',
46
+ border: 'none',
47
+ background: 'transparent',
48
+ cursor: disabled ? 'not-allowed' : 'pointer',
49
+ position: 'relative',
50
+ padding: 0,
51
+ opacity: disabled ? 0.4 : 1,
52
+ transition: 'opacity 0.2s ease',
53
+ WebkitTapHighlightColor: 'transparent',
54
+ }}
55
+ aria-label="Capture photo"
56
+ >
57
+ {/* Outer progress ring — sits on top of the SVG's white outer stroke. */}
58
+ <svg
59
+ width={size}
60
+ height={size}
61
+ style={{ position: 'absolute', top: 0, left: 0, pointerEvents: 'none' }}
62
+ >
63
+ {/* Background ring */}
64
+ <circle
65
+ cx={size / 2}
66
+ cy={size / 2}
67
+ r={radius}
68
+ fill="none"
69
+ stroke={backgroundRingColor}
70
+ strokeWidth={strokeWidth}
71
+ />
72
+ {/* Progress ring */}
73
+ {isActive && (
74
+ <circle
75
+ cx={size / 2}
76
+ cy={size / 2}
77
+ r={radius}
78
+ fill="none"
79
+ stroke={theme.colors.success}
80
+ strokeWidth={strokeWidth}
81
+ strokeDasharray={circumference}
82
+ strokeDashoffset={offset}
83
+ strokeLinecap="round"
84
+ transform={`rotate(-90 ${size / 2} ${size / 2})`}
85
+ style={{ transition: 'stroke-dashoffset 0.3s ease' }}
86
+ />
87
+ )}
88
+ </svg>
89
+ {/* Shutter face: white circle + navy camera icon */}
90
+ <svg
91
+ width={size}
92
+ height={size}
93
+ viewBox="0 0 68 68"
94
+ fill="none"
95
+ xmlns="http://www.w3.org/2000/svg"
96
+ style={{ position: 'absolute', top: 0, left: 0, pointerEvents: 'none' }}
97
+ aria-hidden="true"
98
+ >
99
+ <circle
100
+ cx="33.829"
101
+ cy="33.8288"
102
+ r="27.387"
103
+ fill="white"
104
+ stroke="white"
105
+ strokeWidth="0.91441"
106
+ />
107
+ <path
108
+ d="M33.6426 40.9145C32.3841 40.9145 31.1539 40.5413 30.1076 39.8422C29.0612 39.143 28.2457 38.1493 27.7641 36.9867C27.2825 35.824 27.1565 34.5447 27.402 33.3104C27.6476 32.0762 28.2536 30.9424 29.1434 30.0526C30.0333 29.1627 31.167 28.5567 32.4012 28.3112C33.6355 28.0657 34.9148 28.1917 36.0775 28.6733C37.2401 29.1549 38.2339 29.9704 38.933 31.0168C39.6322 32.0631 40.0053 33.2933 40.0053 34.5517C40.0053 36.2393 39.335 37.8577 38.1417 39.0509C36.9485 40.2442 35.3301 40.9145 33.6426 40.9145ZM33.6426 30.0069C32.7437 30.0069 31.865 30.2735 31.1176 30.7728C30.3702 31.2722 29.7877 31.982 29.4437 32.8125C29.0997 33.643 29.0097 34.5568 29.1851 35.4384C29.3604 36.32 29.7933 37.1298 30.4289 37.7654C31.0645 38.401 31.8743 38.8339 32.7559 39.0093C33.6375 39.1846 34.5513 39.0946 35.3818 38.7506C36.2123 38.4066 36.9221 37.8241 37.4215 37.0767C37.9209 36.3293 38.1874 35.4506 38.1874 34.5517C38.1874 33.3464 37.7086 32.1904 36.8562 31.3381C36.0039 30.4857 34.8479 30.0069 33.6426 30.0069Z"
109
+ fill="#151F72"
110
+ />
111
+ <path
112
+ d="M41.8235 31.8248C42.3255 31.8248 42.7325 31.4178 42.7325 30.9158C42.7325 30.4138 42.3255 30.0068 41.8235 30.0068C41.3215 30.0068 40.9146 30.4138 40.9146 30.9158C40.9146 31.4178 41.3215 31.8248 41.8235 31.8248Z"
113
+ fill="#151F72"
114
+ />
115
+ <path
116
+ d="M41.8233 44.5503H25.4618C24.2565 44.5503 23.1005 44.0715 22.2481 43.2192C21.3958 42.3669 20.917 41.2109 20.917 40.0055V30.9158C20.917 29.7105 21.3958 28.5545 22.2481 27.7021C23.1005 26.8498 24.2565 26.371 25.4618 26.371H26.1526C26.322 26.3722 26.4884 26.326 26.633 26.2376C26.7775 26.1493 26.8945 26.0223 26.9707 25.871L27.2798 25.2439C27.6576 24.4899 28.2377 23.8559 28.9553 23.4129C29.6728 22.9698 30.4995 22.7351 31.3429 22.7351H35.9422C36.7856 22.7351 37.6122 22.9698 38.3298 23.4129C39.0474 23.8559 39.6275 24.4899 40.0053 25.2439L40.3144 25.871C40.3906 26.0223 40.5076 26.1493 40.6521 26.2376C40.7967 26.326 40.963 26.3722 41.1324 26.371H41.8233C43.0286 26.371 44.1846 26.8498 45.0369 27.7021C45.8893 28.5545 46.3681 29.7105 46.3681 30.9158V40.0055C46.3681 41.2109 45.8893 42.3669 45.0369 43.2192C44.1846 44.0715 43.0286 44.5503 41.8233 44.5503ZM25.4618 28.1889C24.7386 28.1889 24.045 28.4762 23.5336 28.9876C23.0222 29.499 22.7349 30.1926 22.7349 30.9158V40.0055C22.7349 40.7287 23.0222 41.4223 23.5336 41.9337C24.045 42.4451 24.7386 42.7324 25.4618 42.7324H41.8233C42.5465 42.7324 43.2401 42.4451 43.7515 41.9337C44.2629 41.4223 44.5502 40.7287 44.5502 40.0055V30.9158C44.5502 30.1926 44.2629 29.499 43.7515 28.9876C43.2401 28.4762 42.5465 28.1889 41.8233 28.1889H41.1324C40.6248 28.1899 40.127 28.0492 39.695 27.7826C39.263 27.5161 38.914 27.1342 38.6873 26.68L38.3783 26.0619C38.1522 25.6091 37.8046 25.2282 37.3744 24.9617C36.9442 24.6952 36.4483 24.5537 35.9422 24.553H31.3429C30.8368 24.5537 30.3409 24.6952 29.9107 24.9617C29.4804 25.2282 29.1329 25.6091 28.9068 26.0619L28.5978 26.68C28.371 27.1342 28.022 27.5161 27.5901 27.7826C27.1581 28.0492 26.6603 28.1899 26.1526 28.1889H25.4618Z"
117
+ fill="#151F72"
118
+ />
119
+ </svg>
120
+ </button>
121
+ );
122
+ };